CN102737184B - 一种安全显示自定义信息的方法 - Google Patents

一种安全显示自定义信息的方法 Download PDF

Info

Publication number
CN102737184B
CN102737184B CN201210192907.3A CN201210192907A CN102737184B CN 102737184 B CN102737184 B CN 102737184B CN 201210192907 A CN201210192907 A CN 201210192907A CN 102737184 B CN102737184 B CN 102737184B
Authority
CN
China
Prior art keywords
signal language
preset
order
value
coding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210192907.3A
Other languages
English (en)
Other versions
CN102737184A (zh
Inventor
陆舟
于华章
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Feitian Technologies Co Ltd
Original Assignee
Feitian Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Feitian Technologies Co Ltd filed Critical Feitian Technologies Co Ltd
Priority to CN201210192907.3A priority Critical patent/CN102737184B/zh
Publication of CN102737184A publication Critical patent/CN102737184A/zh
Application granted granted Critical
Publication of CN102737184B publication Critical patent/CN102737184B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开了一种安全显示自定义信息的方法,属于信息安全领域,该方法包括以下步骤:接收主机发送的命令,获取与所述命令相匹配的预置命令,判断第一状态标识是否已置位,若所述第一状态标识已置位,则根据提示语编码获取提示语内容并显示,执行所述命令;若所述第一状态标识未置位,则设置第一状态标识的状态,并获取所述命令数据域中的内容,执行所述命令。本发明通过在不同的命令中设置不同的状态对自定义信息进行显示,能够有效的解决自定义显示信息的安全问题。

Description

一种安全显示自定义信息的方法
技术领域
本发明涉及信息安全领域,特别涉及一种安全显示自定义信息的方法。
背景技术
USB Key是一种USB接口的硬件设备,内置单片机或智能卡芯片,有一定的存储空间,可以存储用户的私钥以及数字证书,利用USB Key内置的公钥算法实现对用户的身份验证,以保护电子支付和结算、交易安全等。
在进行身份认证、电子支付和结算、交易等过程中,在操作过程中会需要显示提示操作信息、反馈执行状态信息和执行结果信息,当操作过程中需要显示信息时,通过外部PC机或服务器后台传输的数据信息,进而进行显示。
发明人在实现本发明的过程中,发现现有技术至少存在以下缺陷:
显示数据信息在传输过程中容易被黑客攻击,会更改显示数据信息,对网银的安全造成了威胁。因此,现有的显示自定义信息的方法安全性太低,无法保障网银系统的安全。
发明内容
本发明提供了安全显示自定义信息的方法,在产品的生产阶段将需要使用的提示语信息设计成数据结构格式固化在产品中,用于提高网上身份认证和交易的安全性。
为达到上述目的,本发明实施例采用的技术方案如下:
一种安全显示自定义信息的方法,具体包括:
①、接收主机发送的命令,遍历预置命令序列表并从中获取与所述命令相匹配的预置命令;
②、判断第一状态标识是否已置位,如果所述第一状态标识未置位,执行步骤③;如果所述第一状态标识已置位,执行步骤④;
③、判断所述命令是否为显示自定义信息命令,如果所述命令为所述显示自定义信息命令,将所述第一状态标识置位,从所述命令中获取下一条命令的提示语编码存入第一缓存区并替换所述第一缓存区中已存的提示语编码,并返回步骤①;如果所述命令不为所述显示自定义信息命令,执行所述命令,并返回步骤①;
④、从所述命令中获取提示语编码并判断所述提示语编码与所述第一缓存区中的内容是否相同,如果相同,根据所述提示语编码获取提示语内容,判断所述提示语内容是否获取成功,是则根据提示语内容进行操作,返回步骤①;如果不同,返回错误信息,返回步骤①。
从所述命令中获取下一条命令的提示语编码,具体包括:
从所述命令头中获取所述提示语编码;
或,
从所述命令的数据域中获取所述提示语编码。
所述遍历预置命令序列表并从中获取与所述命令相匹配的预置命令,具体包括:
根据提示语标识的第一变量值遍历预置命令序列表,找到与所述提示语标识的第一变量值相对应的第一预置命令,再从所述第一预置命令中获取与所述提示语标识的第二变量值相对应的第二预置命令,再从所述第二预置命令中获取与所述提示语标识的第三变量值相对应的第三预置命令,再从所述第三预置命令中获取与所述提示语标识的第四变量值相对应的第四预置命令,所述第四预置命令即为与当前命令相匹配的所述预置命令;
或者,
根据所述提示语编码从所述预置命令序列表中直接获取与所述提示语编码相对应的所述预置命令。
所述根据所述提示语编码获取提示语内容,具体包括:
S1:遍历提示语相关信息的内容,从预置缓存区中获取预置提示语编码;
S2:判断所述预置提示语编码与从所述命令中获取的提示语编码是否相同,如果所述预置提示语编码与从所述命令中获取的提示语编码相同,则根据所述预置提示语编码获取相应的提示语内容;如果所述预置提示语编码与从所述命令中获取的提示语编码不相同,执行S3;
S3:判断所述预置提示语编码是否为最后一个提示语编码,若不是最后一个提示语编码,则返回遍历所述提示语相关信息的内容,从所述预置缓存区中获取下一个预置提示语编码,返回S2,若是最后一个提示语编码,则返回错误信息。
所述根据提示语内容进行操作,具体包括:
显示所述提示语内容,将所述第一状态标识复位,执行所述命令,结束显示所述提示语内容。
所述结束显示所述提示语内容,具体为:
当检测到定时器中断触发时结束显示所述提示语内容;
和/或,
当接收到下一条命令时结束显示所述提示语内容;
和/或,
当检测到按键确认触发时结束显示所述提示语内容。
一种安全显示自定义信息的方法,具体包括:
①、接收主机发送的命令,遍历预置命令序列表并从中获取所述命令相匹配的预置命令;
②、对所述命令的类型标识进行检测,如果所述类型标识与第一预设值相符,执行步骤③;如果所述类型标识与第二预设值相符,执行步骤④;如果所述类型标识与第三预设值相符,执行步骤⑤;
③、从所述命令中获取自定义显示信息开关标识的值,根据所述自定义显示信息开关标识的值修改所述第二状态标识的取值,返回步骤①;
④、判断所述第二状态标识的取值,如果所述第二状态标识的取值为第四预设值,则从所述命令中获取提示语编码,根据所述提示语编码获取提示语内容,并判断所述提示语内容是否获取成功,如果成功,则显示所述提示语内容,执行所述命令,结束显示所述提示语内容,并返回步骤①,如果不成功,则返回错误信息,并返回步骤①;如果所述第二状态标识的取值为第五预设值,则执行所述命令,返回步骤①;如果所述第二状态标识的取值为其他值,则返回错误信息,返回步骤①;
⑤、判断所述命令中是否包含需要显示的提示语信息,若包含所述需要显示的提示语信息,则解析所述命令中的提示语信息,提取提示语内容并显示,执行所述命令,结束显示所述提示语内容,并返回步骤①;若不包含所述需要显示的提示语信息,从所述命令中获取提示语编码,根据所述提示语编码获取所述提示语内容,判断所述提示语内容是否获取成功,如果成功,则显示所述提示语内容,执行所述命令,结束显示所述提示语内容,并返回步骤①,如果不成功,则返回错误信息,并返回步骤①。
所述从所述命令中获取所述提示语编码,具体包括:
从所述命令头中获取所述提示语编码;
或,
从所述命令的数据域中获取所述提示语编码。
所述遍历预置命令序列表并从中获取与所述命令相匹配的预置命令,具体包括:
根据提示语标识的第一变量值遍历预置命令序列表,找到与所述提示语标识的第一变量值相对应的第一预置命令,再从所述第一预置命令中获取与所述提示语标识的第二变量值相对应的第二预置命令,再从所述第二预置命令中获取与所述提示语标识的第三变量值相对应的第三预置命令,再从所述第三预置命令中获取与所述提示语标识的第四变量值相对应的第四预置命令,所述第四预置命令即为与当前命令相匹配的所述预置命令;
或者,
根据所述提示语编码从所述预置命令序列表中直接获取与所述提示语编码相对应的所述预置命令。
所述根据所述提示语编码获取提示语内容,具体包括:
S1:遍历提示语相关信息的内容,从预置缓存区中获取预置提示语编码;
S2:判断所述预置提示语编码与从所述命令中获取的提示语编码是否相同,如果所述预置提示语编码与从所述命令中获取的提示语编码相同,则根据所述预置提示语编码获取相应的提示语内容;如果所述预置提示语编码与从所述命令中获取的提示语编码不相同,执行S3;
S3:判断所述预置提示语编码是否为最后一个提示语编码,若不是最后一个提示语编码,则返回遍历所述提示语相关信息的内容,从所述预置缓存区中获取下一个预置提示语编码,返回S2,若是最后一个提示语编码,则返回错误信息。
所述结束显示提示语内容,具体为:
接检测到定时器中断触发结束显示所述提示语内容;
和/或,
当接收到下一条命令时结束显示所述提示语内容;
和/或,
当检测到按键确认触发时结束显示所述提示语内容。
所述解析所述命令中的提示语信息,具体包括:
解析所述命令中的提示语信息,判断所述提示语信息是否解析成功,如果解析成功,则显示解析得到的提示语内容;如果解析不成功,则根据所述命令相对应的所述提示语编码获取解析错误的提示语内容并显示。
一种安全显示自定义信息的方法,包括:
①、接收主机发送的命令,根据所述命令获取显示参数并从所述命令中获取提示语编码和;
②、对所述显示参数进行判断,如果所述显示参数的值为第六预设值,则执行步骤③;如果所述显示参数的值为第七预设值,则执行步骤⑥;如果所述显示参数的值为其他值,则返回错误信息,并返回步骤①;
③、从所述命令中获取命令操作类型标识的取值,判断所述操作类型标识的取值,如果所述操作类型状态标识的取值为第八预设值,执行步骤④;如果所述操作类型状态标识的取值为第九预设值,则执行步骤⑤;如果所述操作类型状态标识的取值为其他值,则返回错误信息,并返回步骤①;
④、根据所述提示语编码获取提示语内容并显示,执行所述命令,结束显示提示语内容,返回步骤①;
⑤、从所述命令中获取结束显示标识并修改结束显示状态标识的取值,获取第三状态标识的取值根据不同的取值执行相应的操作,返回步骤①;
⑥、执行所述命令,返回步骤①。
根据所述命令获取所述显示参数,具体包括:
从所述命令中获取数据结构标识,判断所述数据结构标识是否为显示标签,如果所述数据结构标识为所述显示标签,再从与数据结构标识相对应的数据结构中获取所述显示参数的值,如果所述数据结构标识不为所述显示标签,则返回错误信息;
或,
根据所述命令中显示参数标识直接获取所述显示参数的值。
从所述命令中获取所述提示语编码,具体包括:
从所述命令头中获取所述提示语编码;
或,
从所述命令的数据域中获取所述提示语编码。
所述根据所述提示语编码获取提示语内容,具体包括:
S1:遍历提示语相关信息的内容,从预置缓存区中获取预置提示语编码;
S2:判断所述预置提示语编码与从所述命令中获取的提示语编码是否相同,如果从所述预置提示语编码与所述命令中获取的提示语编码相同,则根据所述预置提示语编码获取相应的提示语内容;如果所述预置提示语编码与从所述命令中获取的提示语编码不相同,执行S3;
S3:判断所述预置提示语编码是否为最后一个提示语编码,若不是最后一个提示语编码,则返回遍历所述提示语相关信息的内容,从所述预置缓存区中获取下一个预置提示语编码,返回S2,若为最后一个提示语编码,则返回错误信息。
所述获取第三状态标识的取值根据不同的取值执行相应的操作,具体包括:
获取所述第三状态标识,判断所述第三状态标识的取值,如果所述第三状态标识的取值为第十预设值,则从所述命令中获取相应的提示语内容并显示,判断所述结束显示标识的取值,如果所述结束显示状态标识的取值为第十二预设值,则执行所述命令,结束显示所述提示语内容,如果所述结束显示状态标识的取值为第十三预设值,则执行所述命令,如果所述结束显示状态标识的取值为其他值,则返回错误信息;如果所述第三状态标识的取值为第十一预设值,则执行所述命令;如果所述第三状态标识的取值为其他值,则返回错误信息。
所述结束显示提示语内容,具体为:
接检测到定时器中断触发结束显示所述提示语内容;
和/或,
当接收到下一条命令时结束显示所述提示语内容;
和/或,
当检测到按键确认触发时结束显示所述提示语内容。
本发明的有益效果为:通过本发明提供的一种安全显示自定义显示信息的方法,能够有效的防止黑客更改显示数据信息解决网银系统的安全问题。
附图说明
图1为本发明实施例一提供的一种安全显示自定义信息的方法;
图2为本发明实施例二提供的一种安全显示自定义信息的方法;
图3为本发明实施例三提供的一种安全显示自定义信息的方法。
具体实施方式
本发明实施例提供了一种安全显示自定义信息的方法,下面结合附图对本发明实施例进行详细介绍。
实施例一
本发明实施例一提供了一种安全显示自定义信息的方法,下面结合图1对所述方法进行介绍。
如图1所示,一种安全自定义显示信息的方法,具体包括以下步骤:
步骤101:等待接收APDU命令;
步骤102:遍历APDU命令序列表,从所述预置APDU命令序列表中获取与当前APDU命令相匹配的预置APDU命令;
在本实施例中,所述预置APDU命令序列表中包含所有的预置APDU命令;
具体地,从所述预置APDU命令序列表中获取与所述APDU命令相匹配的预置APDU命令,包括:
根据CLA的值遍历预置APDU命令序列表,找到CLA的值相同的预置APDU命令,再根据INS的值遍历预置APDU命令序列表,找到INS的值相同的预置APDU命令,再从INS的值相同的预置APDU命令中获取P1相同的预置APDU命令,再从满足上述条件中的预置APDU命令中获取P2的值相同的预置APDU命令;
根据所述提示语编码遍历预置APDU命令序列表索引到与当前APDU命令相匹配的预置APDU命令的方法还包括:从预置APDU命令序列表中直接获取CLA+INS+P1+P2的值相同的预置APDU命令;需要说明的是,从所述预置APDU命令序列表中获取与当前APDU命令相匹配的预置APDU命令不成功,则返回错误信息,并返回步骤101;
步骤103:接收并读取当前APDU命令,根据当前APDU命令获取当前APDU命令的提示语编码;
其中,在本实施例中,根据ISO7816规范APDU命令由必备的四字节首标(CLA  INS P1  P2)和有条件可变长度主体组成;
具体地,获取所述提示语编码包括:从当前APDU命令的命令头中提取第二、三、四字节的内容或从当前APDU命令的数据域中提取所述提示语编码;
步骤104:判断与当前APDU命令相匹配的所述预置APDU命令是否获取成功,如果获取成功则执行步骤105;否则返回错误信息;
步骤105:判断第一状态标识是否置位;是则执行步骤109;否则执行步骤106;
具体地,在本实施例中,所述第一状态标识的置位时,第一预设值为0;当所述第一状态标识置位时,表示当前状态为显示自定义信息状态;
步骤106:判断当前APDU命令是否为显示自定义信息命令,是则执行步骤107;否则执行当前APDU命令,返回步骤101;
步骤107:将所述第一状态标识置位;
步骤108:从当前APDU命令中获取下一条APDU命令的提示语编码写入ID缓存区并替换ID缓存区中的已存的提示语编码,并返回步骤101;
其中,所述ID缓存区中只存储一条提示语编码;
步骤109:判断与当前APDU命令相匹配的预置ADPU命令的提示语编码与所述ID缓存区中的提示语编码是否相同,是则执行步骤110;否则返回错误信息,返回步骤101;
具体地,在本实施例中,每一条需要显示提示语的APDU命令执行前需要一条自定义显示APDU指令,所述自定义显示APDU命令包含提示语编码,将所述提示语编码存入所述ID缓存区;
步骤110:根据所述提示语编码获取提示语内容;
其中,所述提示语按TLV结构存储,所述TLV结构中的T中存储提示语标识,表示当前TLV结构存储的是提示语,L中存储数据V的长度;V中存储提示语的相关信息;进一步的,所述V中存储的提示语相关信息采用多个小tlv结构存储;小tlv中的t表示提示语编码,l表示提示语的长度,v表示提示语内容,其中t的长度为3个字节,l为1个字节;
具体地,根据提示语编码获取提示语内容的过程包括:获取提示语标识并读取L,根据L设置计数器的值,并遍历小tlv并更新计数器的值,计数器为0时表示遍历完全部提示语信息;
进一步地,所述遍历小tlv具体为:读取t和l并判断当前提示语编码与t中存储的提示语是否相同,若相同则从v中提取提示语内容,完成遍历;若不相同则遍历下一个tlv并更新计数器的值;更新计数器的值具体为将当前计数器的值减去小tlv的长度;
步骤111:显示提示语内容;
步骤112:将第一状态标识复位;
步骤113:执行当前APDU命令,结束显示所述提示语内容,返回步骤101;
其中,结束显示所述提示语内容,可以通过定时器中断触发、下一条APDU命令触发、按键确认触发等方式结束,所述定时器中断触发,具体为:开始显示时,打开定时器显示定时器预设时间并开始递减计时,当所述定时器的计时为0时,触发中断,关闭显示提示语内容;所述下一条APDU命令触发,具体为:接收到下一条APDU命令时关闭显示提示语内容;所述按键确认触发,具体为:按键确认后,关闭显示提示语内容;
需要说明的是,所述结束显示提示语内容的方式可以同时使用,也可以只使用其中任意一种或多种;
本发明实施例一中先判断自定义命令显示状态,如果当前状态为自定义命令显示状态,显示当前命令对应的提示语内容,如果当前状态不为自定义命令显示状态,再判断当前APDU命令是否为自定义显示命令,如果为当前APDU命令为自定义显示命令,则将自定义命令显示状态修改为显示状态。在本发明其他实施例中,也可以通过两条APDU命令设置自定义显示状态开关标识,当自定义显示状态标识显示开时,显示当前命令对应的提示语内容,当自定义显示状态标识显示关时,不显示当前命令对应的提示语内容,具体流程见实施例二。
实施例二
本发明实施例二提供了一种安全显示自定义信息的方法,下面结合图2对所述方法进行介绍。
如图2所示,一种安全自定义显示信息的方法,具体包括以下步骤:
步骤201:等待接收APDU命令;
步骤202:接收并读取APDU命令,根据当前APDU命令获取当前APDU命令的提示语编码;
其中,在本实施例中,根据ISO7816规范APDU命令由必备的四字节首标(CLA  INS P1  P2)和有条件可变长度主体组成;提示语编码具体地,可以从当前APDU命令的命令头中提取第二、三、四字节内容,得到当前APDU命令的提示语编码;
需要说明的是,还可以从当前APDU命令的数据域中提取提示语编码;
步骤203:遍历预置APDU命令序列表,根据所述提示语编码从所述预置APDU命令序列表中获取与当前APDU命令相匹配的预置APDU命令;
在本实施例中,所述预置APDU命令序列表中包含所有的预置APDU命令;
具体地,根据所述提示语编码遍历所述预置APDU命令序列表索引到与当前APDU命令相匹配的预置APDU命令的方法包括:根据CLA的值遍历预置AUDU命令序列表,找到与CLA的值对应的预置APDU命令,再根据INS的值遍历预置APDU命令序列表,找到与INS的值对应的预置APDU命令,再从INS的值对应的预置APDU命令中获取P1相同的预置APDU命令,再从满足上述条件中的预置APDU命令中获取P2的值相同的预置APDU命令;
根据所述提示语编码遍历预置APDU命令序列表索引到与当前APDU命令相匹配的预置APDU命令的方法还可以为:从预置APDU命令序列表中直接获取CLA+INS+P1+P2的值相同的预置APDU命令;
需要说明的是,从所述预置APDU命令序列表中获取与当前APDU命令相匹配的预置APDU命令不成功,则返回错误信息,并返回步骤101;步骤204:判断与当前APDU命令相匹配的所述预置APDU命令是否获取成功,如果获取成功则执行步骤205;否则返回错误信息,返回步骤201;
步骤205:判断当前APDU命令的类型;
在本实施例中,APDU命令的类型包括:第一类APDU命令、第二类APDU命令、第三类APDU命令;
第一类APDU命令为自定义显示命令,第二类APDU命令为普通命令,第三类APDU命令为特殊命令,无论第二状态是否处于显示自定义信息状态,所述特殊命令都显示提示语信息;
当前APDU命令类型为第一类命令时,执行步骤206-207,当前APDU命令类型为第二类命令时,执行步骤208-211,;当前APDU命令类型为第三类命令时,执行步骤212-220;
其中,当前APDU命令类型为第一类命令时,命令类型标识的取值为第一预设值,当前APDU命令类型为第二类命令时,所述命令类型标识的取值为第二预设值,当前APDU命令类型为第三类命令时,所述命令类型标识的取值为第三预设值;
步骤206:从当前APDU命令中获取自定义显示信息开关标识的值;
具体地,在本实施例中,所述自定义显示信息命令中的数据的第一位的值表示自定义显示信息开关标识;所述自定义显示信息开关标识的取值包含0和1,当所述自定义显示信息开关标识的取值为0时,表示关闭自定义显示信息开关;当所述自定义显示信息开关标识的取值为1时,表示打开自定义显示信息开关;
步骤207:根据自定义显示信息开关标识的值修改第二状态标识的取值,返回步骤201;
所述第二状态标识用于标识当前自定义显示信息的状态;所述第二状态标识的取值包括第四预设值和第五预设值;当所述第二状态标识的取值为第四预设值时,表示当前状态下显示自定义显示信息;当所述第二状态标识的取值为第五预设值时,表示当前状态下不显示自定义信息;
优选地,所述第四预设值为1,第五预设值为0;
步骤208:判断所述第二状态标识的取值是否为第四预设值,是则执行步骤209;否则执行步骤210;
步骤209:根据所述提示语编码获取提示语内容;
其中,所述提示语按TLV结构存储,所述TLV结构中的T中存储提示语标识,表示当前TLV结构存储的是提示语,L中存储数据V的长度;V中存储提示语的相关信息;进一步的,所述V中存储的提示语相关信息采用多个小tlv结构存储;小tlv中的t表示提示语编码,l表示提示语的长度,v表示提示语内容,其中t的长度为3个字节,l为1个字节;
具体地,根据提示语编码获取提示语内容的过程包括:获取提示语标识并读取L,根据L设置计数器的值,并遍历小tlv并更新计数器的值,计数器为0时表示遍历完全部提示语信息;进一步地,所述遍历小tlv具体为:读取t和l并判断当前提示语编码与t中存储的提示语是否相同,若相同则从v中提取提示语内容并显示,完成遍历;若不相同则遍历下一个tlv并更新计数器的值;更新计数器的值具体为将当前计数器的值减去小tlv的长度;
需要说明的是,从所述预置APDU命令序列表中获取与当前APDU命令相匹配的预置APDU命令不成功,则返回错误信息,并返回步骤101;
步骤210:显示所述提示语内容;
步骤211:执行当前APDU命令,结束显示所述提示语内容,返回步骤201;
其中,结束显示提示语内容,可以通过定时器中断触发、下一条APDU命令触发、按键确认触发等方式结束,所述定时器中断触发,具体为:开始显示时,打开定时器显示定时器预设时间并开始递减计时,当所述定时器的计时为0时,触发中断,关闭显示提示语内容;所述下一条APDU命令触发,具体为:接收到下一条APDU命令时关闭显示提示语内容;所述按键确认触发,具体为:按键确认后,关闭显示提示语内容;
需要说明的是,所述结束显示提示语内容的方式可以同时使用,也可以只使用其中任意一种或多种;
步骤212:判断当前APDU命令中是否包含显示提示语信息,是则执行步骤213;否则执行步骤218;
在本实施例中,所述特殊命令无论第二状态是否处于显示自定义信息状态,都需要显示提示语信息,所述特殊命令包括:包含显示提示语信息的APDU命令和不包含提示语信息的APDU命令;
步骤213:解析当前APDU命令中的自定义显示信息,并提取提示语内容;
步骤214:判断解析当前APDU命令的自定义显示信息是否成功,是则执行步骤215;否则执行步骤216;
步骤215:显示提示语内容,执行当前APDU命令,结束显示所述提示语内容,返回步骤201;
步骤216:根据当前APDU命令相对应的提示语编码获取提示语内容,返回步骤201;
需要说明的是,在本实施例中,根据当前APDU命令相对应的提示语编码获取提示语内容,
其中,所述提示语按TLV结构存储,所述TLV结构中的T中存储提示语标识,表示当前TLV结构存储的提示语,L中存储数据V的长度;V中存储提示语的相关信息;进一步的,所述V中存储的提示语相关信息采用多个小tlv结构存储;小tlv中的t表示提示语编码,l表示提示语的长度,v表示提示语内容,其中t的长度为3个字节,l为1个字节;
在本实施例中,根据提示语编码获取提示语内容的过程包括:获取提示语标识并读取L,根据L设置计数器的值,并遍历小tlv并更新计数器的值,计数器为0时表示遍历完全部提示语信息;进一步地,所述遍历小tlv具体为:读取t和l并判断当前提示语编码与t中存储的提示语是否相同,若相同则从v中提取提示语内容并显示,完成遍历;若不相同则遍历下一个tlv并更新计数器的值;更新计数器的值具体为将当前计数器的值减去小tlv的长度;
需要说明的是,从所述预置APDU命令序列表中获取与当前APDU命令相匹配的预置APDU命令不成功,则返回错误信息,并返回步骤101;
步骤217:显示当前提示语编码所对应的提示语内容;
具体地,在本实施例中,当前APDU命令相对应的提示语编码的提示语内容为解析错误提示信息;
其中,显示提示语内容,通过中断显示方式中断显示提示语内容,所述结束显示的方式参见步骤210,在此不再赘述;
步骤218:根据所述提示语编码获取提示语内容,;
其中,所述提示语按TLV结构存储,所述TLV结构中的T中存储提示语标识,表示当前TLV结构存储的是提示语,L中存储数据V的长度;V中存储提示语的相关信息;进一步的,所述V中存储的提示语相关信息采用多个小tlv结构存储;小tlv中t表示提示语编码,l表示提示语的长度,v表示提示语内容,其中t的长度为3个字节,l为1个字节;
具体地,根据提示语编码获取提示语内容的过程包括:获取提示语标识并读取L,根据L设置计数器的值,并遍历小tlv并更新计数器的值,计数器为0时表示遍历完全部提示语信息;进一步地,所述遍历小tlv具体为:读取t和l并判断当前提示语编码与t中存储的提示语是否相同,若相同则提取提示语内容并显示,完成遍历;若不相同则遍历下一个tlv并更新计数器的值;更新计数器的值具体为将当前计数器的值减去小tlv的长度;
需要说明的是,从所述预置APDU命令序列表中获取与当前APDU命令相匹配的预置APDU命令不成功,则返回错误信息,并返回步骤101;
步骤219:显示所述提示语内容;
其中,显示提示语内容,通过中断显示方式中断显示提示语内容,所述中断显示方式参见步骤210,在此不再赘述;
步骤220:执行当前APDU命令,结束显示所述提示语内容,返回步骤201;
在本实施例中,通过设置自定义信息开关控制APDU命令,控制APDU命令的显示状态,并且根据当前APDU命令的不同类型执行相应的操作;
结束显示所述提示语内容的实现方式可参考上述方式,在此不再赘述;
在本发明的其他实施方式中,可以通过从当前APDU命令中的参数确定执行当前APDU命令是否需要显示自定义信息,具体流程参见实施例三。
实施例三
本发明实施例三提供了一种安全显示自定义信息的方法,下面结合图3对所述方法进行介绍。
如图3所示,一种安全自定义显示信息的方法,具体包括以下步骤:
步骤301:等待接收APDU命令;
步骤302:接收并读取当前APDU命令,根据所述APDU命令获取自定义显示参数并从所述命令中获取提示语编码;
优选地,在本实施例中,每条 APDU命令数据域的开头为特殊的数据结构,所述特殊的数据结构为显示参数数据结构,包括显示标签和显示参数,所述显示标签用于标识从当前APDU命令中提取的数据结构为显示参数数据结构,所述显示参数的取值可以为第六预设值和第七预设值,所述第六预设值具体为0,所述第七预设值具体为1;
其中,所述提示语编码的格式为CLA+INS+P1+P2;具体地,提取当前APDU命令头中的第二、三、四字节内容,得到当前APDU命令的提示语编码;
步骤303:判断所述显示参数的值是否为第六预设值,如果所述显示参数的值为第六预设值,则顺序执行步骤304;如果所述显示参数为第七预设值,则执行步骤314;
步骤304:从所述APDU命令中获取命令操作类型标识的取值,设置操作类型状态标识并判断所述操作类型的标识的取值,如果所述操作类型状态标识的取值为第八预设值,执行步骤305;如果所述操作类型状态标识的取值为第九预设值,执行步骤308;
步骤305:根据所述提示语编码获取提示语内容;
其中,所述提示语按TLV结构存储,所述TLV结构中的T中存储提示语标识,表示当前TLV结构存储的是提示语,L中存储数据V的长度;V中存储提示语的相关信息;进一步的,所述V中存储的提示语相关信息采用多个小tlv结构存储;小tlv中的t表示提示语编码,l表示提示语的长度,v表示提示语内容,其中t的长度为3个字节,l为1个字节;
具体地,根据提示语编码获取提示语内容的过程包括:获取提示语标识并读取L,根据L设置计数器的值,并遍历小tlv并更新计数器的值,计数器为0时表示遍历完全部提示语信息;
进一步地,所述遍历小tlv具体为:读取t和l并判断当前提示语编码与t中存储的提示语是否相同,若相同则从v中提取提示语内容,完成遍历;若不相同则遍历下一个tlv并更新计数器的值;更新计数器的值具体为将当前计数器的值减去小tlv的长度;
需要说明的是,从所述预置APDU命令序列表中获取与当前APDU命令相匹配的预置APDU命令不成功,则返回错误信息,并返回步骤101;
步骤306:显示获取的提示语内容;
步骤307:执行当前APDU命令,结束显示提示语内容,返回步骤301;
其中,结束显示提示语内容,可以通过定时器中断触发、下一条APDU命令触发、按键确认触发等方式结束,所述定时器中断触发,具体为:开始显示时,打开定时器显示定时器预设时间并开始递减计时,当所述定时器的计时为0时,触发中断,关闭显示提示语内容;所述下一条APDU命令触发,具体为:接收到下一条APDU命令时关闭显示提示语内容;所述按键确认触发,具体为:按键确认后,关闭显示提示语内容;
需要说明的是,所述结束显示提示语内容的方式可以同时使用,也可以只使用其中任意一种或多种;
步骤308:从所述APDU命令中获取结束显示标识的值并修改结束显示状态标识的取值;
在本实施例中,所述结束状态标识,用于结束显示提示语的内容;所述结束显示标识的取值包括第十二预设值和第十三预设值;例如,在签名流程过程中,取签名结果命令中获取结束显示标识,表示结束显示提示语的内容;
步骤309:从所述APDU命令中获取第三状态标识的取值,并判断第三状态标识的取值,如果第三状态标识的取值为第十预设值,则执行步骤310;如果第三状态标识的取值为第十一预设值,则执行步骤313;
步骤310:获取所述APDU命令相应的提示语内容并显示;
在本实施例中,获取所述提示语内容的过程见步骤305,在此不再赘述;
步骤311:判断所述结束显示状态标识的取值,如果所述结束显示状态标识的取值为第十二预设值,则执行步骤312;如果所述结束显示状态标识的取值为第十三预设值,否则执行步骤313;
步骤312:执行所述APDU命令,结束显示所述提示语内容,返回步骤301;
步骤313:执行所述APDU命令,返回步骤301;
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (18)

1.一种安全显示自定义信息的方法,其特征在于,具体包括:
①、接收主机发送的命令,遍历预置命令序列表并从中获取与所述命令相匹配的预置命令;
②、判断第一状态标识是否已置位,如果所述第一状态标识未置位,执行步骤③;如果所述第一状态标识已置位,执行步骤④;
③、判断所述命令是否为显示自定义信息命令,如果所述命令为所述显示自定义信息命令,将所述第一状态标识置位,从所述命令中获取下一条命令的提示语编码存入第一缓存区并替换所述第一缓存区中已存的提示语编码,并返回步骤①;如果所述命令不为所述显示自定义信息命令,执行所述命令,并返回步骤①;
④、从所述命令中获取提示语编码并判断所述提示语编码与所述第一缓存区中的内容是否相同,如果相同,根据所述提示语编码获取提示语内容,判断所述提示语内容是否获取成功,是则根据提示语内容进行操作,返回步骤①;如果不同,返回错误信息,返回步骤①。
2.如权利要求1所述的方法,其特征在于,从所述命令中获取下一条命令的提示语编码,具体包括:
从所述命令头中获取所述提示语编码;
或,
从所述命令的数据域中获取所述提示语编码。
3.如权利要求1所述的方法,其特征在于,所述遍历预置命令序列表并从中获取与所述命令相匹配的预置命令,具体包括:
根据提示语标识的第一变量值遍历预置命令序列表,找到与所述提示语标识的第一变量值相对应的第一预置命令,再从所述第一预置命令中获取与所述提示语标识的第二变量值相对应的第二预置命令,再从所述第二预置命令中获取与所述提示语标识的第三变量值相对应的第三预置命令,再从所述第三预置命令中获取与所述提示语标识的第四变量值相对应的第四预置命令,所述第四预置命令即为与当前命令相匹配的所述预置命令;
或者,
根据所述提示语编码从所述预置命令序列表中直接获取与所述提示语编码相对应的所述预置命令。
4.如权利要求1所述的方法,其特征在于,所述根据所述提示语编码获取提示语内容,具体包括:
S1:遍历提示语相关信息的内容,从预置缓存区中获取预置提示语编码;
S2:判断所述预置提示语编码与从所述命令中获取的提示语编码是否相同,如果所述预置提示语编码与从所述命令中获取的提示语编码相同,则根据所述预置提示语编码获取相应的提示语内容;如果所述预置提示语编码与从所述命令中获取的提示语编码不相同,执行S3;
S3:判断所述预置提示语编码是否为最后一个提示语编码,若不是最后一个提示语编码,则返回遍历所述提示语相关信息的内容,从所述预置缓存区中获取下一个预置提示语编码,返回S2,若是最后一个提示语编码,则返回错误信息。
5.如权利要求1所述的方法,其特征在于,所述根据提示语内容进行操作,具体包括:
显示所述提示语内容,将所述第一状态标识复位,执行所述命令,结束显示所述提示语内容。
6.如权利要求5所述的方法,其特征在于,所述结束显示所述提示语内容,具体为:
当检测到定时器中断触发时结束显示所述提示语内容;
和/或,
当接收到下一条命令时结束显示所述提示语内容;
和/或,
当检测到按键确认触发时结束显示所述提示语内容。
7.一种安全显示自定义信息的方法,其特征在于,包括步骤:
①、接收主机发送的命令,遍历预置命令序列表并从中获取所述命令相匹配的预置命令;
②、对所述命令的类型标识进行检测,如果所述类型标识与第一预设值相符,执行步骤③;如果所述类型标识与第二预设值相符,执行步骤④;如果所述类型标识与第三预设值相符,执行步骤⑤;
③、从所述命令中获取自定义显示信息开关标识的值,根据所述自定义显示信息开关标识的值修改第二状态标识的取值,返回步骤①;
④、判断所述第二状态标识的取值,如果所述第二状态标识的取值为第四预设值,则从所述命令中获取提示语编码,根据所述提示语编码获取提示语内容,并判断所述提示语内容是否获取成功,如果成功,则显示所述提示语内容,执行所述命令,结束显示所述提示语内容,并返回步骤①,如果不成功,则返回错误信息,并返回步骤①;如果所述第二状态标识的取值为第五预设值,则执行所述命令,返回步骤①;如果所述第二状态标识的取值为其他值,则返回错误信息,返回步骤①;
⑤、判断所述命令中是否包含需要显示的提示语信息,若包含所述需要显示的提示语信息,则解析所述命令中的提示语信息,提取提示语内容并显示,执行所述命令,结束显示所述提示语内容,并返回步骤①;若不包含所述需要显示的提示语信息,从所述命令中获取提示语编码,根据所述提示语编码获取所述提示语内容,判断所述提示语内容是否获取成功,如果成功,则显示所述提示语内容,执行所述命令,结束显示所述提示语内容,并返回步骤①,如果不成功,则返回错误信息,并返回步骤①。
8.如权利要求7所述的方法,其特征在于,所述从所述命令中获取所述提示语编码,具体包括:
从所述命令头中获取所述提示语编码;
或,
从所述命令的数据域中获取所述提示语编码。
9.如权利要求7所述的方法,其特征在于,所述遍历预置命令序列表并从中获取与所述命令相匹配的预置命令,具体包括:
根据提示语标识的第一变量值遍历预置命令序列表,找到与所述提示语标识的第一变量值相对应的第一预置命令,再从所述第一预置命令中获取与所述提示语标识的第二变量值相对应的第二预置命令,再从所述第二预置命令中获取与所述提示语标识的第三变量值相对应的第三预置命令,再从所述第三预置命令中获取与所述提示语标识的第四变量值相对应的第四预置命令,所述第四预置命令即为与当前命令相匹配的所述预置命令;
或者,
根据所述提示语编码从所述预置命令序列表中直接获取与所述提示语编码相对应的所述预置命令。
10.如权利要求7所述的方法,其特征在于,所述根据所述提示语编码获取提示语内容,具体包括:
S1:遍历提示语相关信息的内容,从预置缓存区中获取预置提示语编码;
S2:判断所述预置提示语编码与从所述命令中获取的提示语编码是否相同,如果所述预置提示语编码与从所述命令中获取的提示语编码相同,则根据所述预置提示语编码获取相应的提示语内容;如果所述预置提示语编码与从所述命令中获取的提示语编码不相同,执行S3;
S3:判断所述预置提示语编码是否为最后一个提示语编码,若不是最后一个提示语编码,则返回遍历所述提示语相关信息的内容,从所述预置缓存区中获取下一个预置提示语编码,返回S2,若是最后一个提示语编码,则返回错误信息。
11.如权利要求7所述的方法,其特征在于,所述结束显示提示语内容,具体为:
接检测到定时器中断触发结束显示所述提示语内容;
和/或,
当接收到下一条命令时结束显示所述提示语内容;
和/或,
当检测到按键确认触发时结束显示所述提示语内容。
12.如权利要求7所述的方法,其特征在于,所述解析所述命令中的提示语信息,具体包括:
解析所述命令中的提示语信息,判断所述提示语信息是否解析成功,如果解析成功,则显示解析得到的提示语内容;如果解析不成功,则根据所述命令相对应的所述提示语编码获取解析错误的提示语内容并显示。
13.一种安全显示自定义信息的方法,其特征在于,包括:
①、接收主机发送的命令,根据所述命令获取显示参数并从所述命令中获取提示语编码和;
②、对所述显示参数进行判断,如果所述显示参数的值为第六预设值,则执行步骤③;如果所述显示参数的值为第七预设值,则执行步骤⑥;如果所述显示参数的值为其他值,则返回错误信息,并返回步骤①;
③、从所述命令中获取命令操作类型标识的取值,判断所述操作类型标识的取值,如果所述操作类型状态标识的取值为第八预设值,执行步骤④;如果所述操作类型状态标识的取值为第九预设值,则执行步骤⑤;如果所述操作类型状态标识的取值为其他值,则返回错误信息,并返回步骤①;
④、根据所述提示语编码获取提示语内容并显示,执行所述命令,结束显示提示语内容,返回步骤①;
⑤、从所述命令中获取结束显示标识并修改结束显示状态标识的取值,获取第三状态标识的取值根据不同的取值执行相应的操作,返回步骤①;
⑥、执行所述命令,返回步骤①。
14.如权利要求13所述的方法,其特征在于,根据所述命令获取所述显示参数,具体包括:
从所述命令中获取数据结构标识,判断所述数据结构标识是否为显示标签,如果所述数据结构标识为所述显示标签,再从与数据结构标识相对应的数据结构中获取所述显示参数的值,如果所述数据结构标识不为所述显示标签,则返回错误信息;
或,
根据所述命令中显示参数标识直接获取所述显示参数的值。
15.如权利要求13所述的方法,其特征在于,从所述命令中获取所述提示语编码,具体包括:
从所述命令头中获取所述提示语编码;
或,
从所述命令的数据域中获取所述提示语编码。
16.如权利要求13所述的方法,其特征在于,所述根据所述提示语编码获取提示语内容,具体包括:
S1:遍历提示语相关信息的内容,从预置缓存区中获取预置提示语编码;
S2:判断所述预置提示语编码与从所述命令中获取的提示语编码是否相同,如果从所述预置提示语编码与所述命令中获取的提示语编码相同,则根据所述预置提示语编码获取相应的提示语内容;如果所述预置提示语编码与从所述命令中获取的提示语编码不相同,执行S3;
S3:判断所述预置提示语编码是否为最后一个提示语编码,若不是最后一个提示语编码,则返回遍历所述提示语相关信息的内容,从所述预置缓存区中获取下一个预置提示语编码,返回S2,若为最后一个提示语编码,则返回错误信息。
17.如权利要求13所述的方法,其特征在于,所述获取第三状态标识的取值根据不同的取值执行相应的操作,具体包括:
获取所述第三状态标识,判断所述第三状态标识的取值,如果所述第三状态标识的取值为第十预设值,则从所述命令中获取相应的提示语内容并显示,判断所述结束显示标识的取值,如果所述结束显示状态标识的取值为第十二预设值,则执行所述命令,结束显示所述提示语内容,如果所述结束显示状态标识的取值为第十三预设值,则执行所述命令,如果所述结束显示状态标识的取值为其他值,则返回错误信息;如果所述第三状态标识的取值为第十一预设值,则执行所述命令;如果所述第三状态标识的取值为其他值,则返回错误信息。
18.如权利要求13所述的方法,其特征在于,所述结束显示提示语内容,具体为:
接检测到定时器中断触发结束显示所述提示语内容;
和/或,
当接收到下一条命令时结束显示所述提示语内容;
和/或,
当检测到按键确认触发时结束显示所述提示语内容。
CN201210192907.3A 2012-06-12 2012-06-12 一种安全显示自定义信息的方法 Active CN102737184B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210192907.3A CN102737184B (zh) 2012-06-12 2012-06-12 一种安全显示自定义信息的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210192907.3A CN102737184B (zh) 2012-06-12 2012-06-12 一种安全显示自定义信息的方法

Publications (2)

Publication Number Publication Date
CN102737184A CN102737184A (zh) 2012-10-17
CN102737184B true CN102737184B (zh) 2014-12-10

Family

ID=46992671

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210192907.3A Active CN102737184B (zh) 2012-06-12 2012-06-12 一种安全显示自定义信息的方法

Country Status (1)

Country Link
CN (1) CN102737184B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103067175B (zh) * 2012-12-27 2015-04-15 飞天诚信科技股份有限公司 一种对显示信息进行筛选的方法
CN110493173A (zh) * 2019-06-26 2019-11-22 中电万维信息技术有限责任公司 一种处理校验结果的方法及服务器
CN111026646B (zh) * 2019-11-21 2023-06-30 中国航空工业集团公司西安航空计算技术研究所 一种基于SystemVerilog的图形命令预译码方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1366232A (zh) * 2001-01-19 2002-08-28 松下电器产业株式会社 信息终端装置以及在其上执行的程序
CN1534460A (zh) * 2003-03-28 2004-10-06 烽火通信科技股份有限公司 一种嵌入式系统中具有实时帮助功能的命令行管理方法
CN101252439A (zh) * 2008-04-10 2008-08-27 北京飞天诚信科技有限公司 一种增强信息安全设备安全性的系统及方法
CN101493900A (zh) * 2009-03-02 2009-07-29 北京飞天诚信科技有限公司 一种智能卡的操作方法及系统
WO2010048218A1 (en) * 2008-10-21 2010-04-29 Flexilis Inc. Security status and information display system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080049971A (ko) * 2006-12-01 2008-06-05 주식회사 어가람닷컴 택시기사별 평가 및 브랜드화를 위한 시스템과 그 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1366232A (zh) * 2001-01-19 2002-08-28 松下电器产业株式会社 信息终端装置以及在其上执行的程序
CN1534460A (zh) * 2003-03-28 2004-10-06 烽火通信科技股份有限公司 一种嵌入式系统中具有实时帮助功能的命令行管理方法
CN101252439A (zh) * 2008-04-10 2008-08-27 北京飞天诚信科技有限公司 一种增强信息安全设备安全性的系统及方法
WO2010048218A1 (en) * 2008-10-21 2010-04-29 Flexilis Inc. Security status and information display system
CN101493900A (zh) * 2009-03-02 2009-07-29 北京飞天诚信科技有限公司 一种智能卡的操作方法及系统

Also Published As

Publication number Publication date
CN102737184A (zh) 2012-10-17

Similar Documents

Publication Publication Date Title
CN101326492B (zh) 用于更新包括压缩版本的内容的方法和系统
CN102737184B (zh) 一种安全显示自定义信息的方法
CN105069617B (zh) 一种恢复不完整交易的方法和装置
CN103577213B (zh) 一种智能终端触摸屏固件的升级方法
CN205788363U (zh) 一种多重认证智能家居门禁系统
CN104951684A (zh) 一种指纹加密、解密的方法及终端
CN102790621B (zh) 红外数据处理存储方法及红外遥控器
CN101896916A (zh) 在安全环境和非安全环境之间的交互
CN106682553A (zh) 一种磁条卡软件解码方法
CN106445616B (zh) 终端设备从多系统至单系统的升级方法及装置
CN104063698A (zh) 指纹注册方法、指纹识别方法、指纹识别装置及终端设备
CN109977976A (zh) 可执行文件相似度的检测方法、装置和计算机设备
CN103606086A (zh) 移动智能终端的防伪方法
CN102799931A (zh) 射频智能卡保护数据的方法
CN105005724A (zh) 一种基于密码的解锁屏方法及通讯终端
CN113361293A (zh) 刷卡方法、卡控制器、电子设备及存储介质
CN102930204B (zh) 基于软件保护装置的软件加壳方法、系统及软件保护方法
CN106022443B (zh) 一种智能卡及其状态指示方法
CN102831362B (zh) 一种安全生产智能密钥设备的方法及装置
CN102682237A (zh) 针对网络下载文件的判毒方法及系统
KR100716039B1 (ko) 통신 장치의 방법 및 시스템과 보호된 데이터 전송을 위한장치
CN104571962B (zh) 一种适合批量生产的usbkey设备内固件的实现方法
CN108427700B (zh) 电子装置、用户分群的方法及计算机可读存储介质
CN104133698A (zh) 一种智能仪器的软件在线升级方法
CN105049562A (zh) 一种用户识别卡的解锁方法及通讯终端

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address

Address after: 17th floor, building B, Huizhi building, No.9, Xueqing Road, Haidian District, Beijing 100085

Patentee after: Feitian Technologies Co.,Ltd.

Country or region after: China

Address before: 100085 17th floor, block B, Huizhi building, No.9 Xueqing Road, Haidian District, Beijing

Patentee before: Feitian Technologies Co.,Ltd.

Country or region before: China

CP03 Change of name, title or address