CN108616352B - 基于安全元件的动态口令生成方法和系统 - Google Patents
基于安全元件的动态口令生成方法和系统 Download PDFInfo
- Publication number
- CN108616352B CN108616352B CN201810331429.7A CN201810331429A CN108616352B CN 108616352 B CN108616352 B CN 108616352B CN 201810331429 A CN201810331429 A CN 201810331429A CN 108616352 B CN108616352 B CN 108616352B
- Authority
- CN
- China
- Prior art keywords
- otp
- password
- applet
- dynamic password
- server
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本发明实施例公开了一种基于安全元件的动态口令生成方法和系统,其中的方法包括:运行在REE中的OTP CA向运行在TEE中的OTP TA发送动态口令生成申请;OTP TA通过TUI接收OTP许可口令,通过运行在SE模块中的Applet对OTP许可口令进行验证,如果通过验证,则通过Applet生成OTP动态口令,并通过TUI进行显示。本发明的方法、系统,提供基于TEE的移动终端的OTP安全方案,在移动终端上的REE环境中发起生成OTP动态口令并进入TEE,生成口令所需的信息在SE中解密获得,生成口令在SE中实现,而且通过TUI与用户交互,保证了业务数据的安全性。
Description
技术领域
本发明涉及信息安全技术领域,尤其涉及一种基于安全元件的动态口令生成方法和系统。
背景技术
移动互联网技术飞速发展,给人们带来方便、便捷的同时,也伴随着诸多安全隐患。开发式的手机操作系统容易受到恶意的软件,用户的隐私和财产得不到保障。国际标准组织GP(Global Platform)制定了TEE(Trusted Execution Environment)的标准,TEE是一个移动设备上的主处理器上一块封闭式的安全区域,确保敏感数据的存储、处理和保护安全可靠。TEE的软件体系结构目标是使可使得TA(Trusted Applications)为服务提供商们提供隔离和可信能力,通过中间的CA(Client Applications)来使用TA的功能。
OTP(One-time Password,动态口令)是一种安全快捷的账号防盗技术,可以有效保护交易和登陆的认证安全。OTP可根据专门的算法每60秒生成一个时间相关、不可预测的随机数字串,只能用一次。OTP算法有2个输入因子:密钥和动态因子。目前,最为普遍的OTP包括刮刮卡、短信验证码、动态令牌(包括硬件令牌和软件令牌)等。手机令牌、短信验证码都在开放式环境下生成、获取、显示和输入,安全等级并不高,易受到木马拦截、网络钓鱼、电信诈骗、信道窃听等攻击。动态硬件令牌,需使用独立的硬件设备。目前市场上提出一些在移动终端的OTP方案,来替代硬件令牌,如短信验证码、软件手机令牌等。但移动终端的OTP方案存在一定的安全风险,OTP动态口令的生成和显示暴露在开放的执行环境下,十分容易被黑客获取。口令在动态口令系统中生成后,发送给移动终端,发送口令之后,信道传输、移动终端接收、显示OTP动态口令时的安全风险都没有解决。因此,需要一种新的基于安全元件的动态口令生成的技术方案。
发明内容
有鉴于此,本发明要解决的一个技术问题是提供一种基于安全元件的动态口令生成方法和系统。
根据本发明的一个方面,提供一种基于安全元件的基于安全元件的动态口令生成方法,包括:运行在富执行环境REE中的动态口令客户应用OTP CA向运行在可信执行环境TEE中的动态口令可信应用OTP TA发送动态口令生成申请;所述OTP TA通过可信用户接口TUI接收OTP许可口令;所述OTP TA通过运行在安全元件SE模块中的Applet对所述OTP许可口令进行验证,如果通过验证,则通过所述Applet生成OTP动态口令,并通过所述TUI进行显示。
可选地,所述通过所述Applet生成OTP动态口令包括:如果所述OTP许可口令通过验证,则所述OTP TA通过所述TUI接收OTP挑战码;所述OTPTA生成Applet指令并通过所述Applet指令发送OTP挑战码至所述SE模块;所述Applet使用OTP挑战码并基于OTP动态口令算法、密钥生成所述OTP动态口令。
可选地,所述通过所述Applet生成OTP动态口令包括:动态口令OTP服务器和所述TEE建立安全通道;如果所述OTP许可口令通过验证,所述OTP服务器通过所述安全通道向所述OTP TA发送用于生成OTP动态口令的口令定制信息或所述OTP动态口令;如果接收到口令定制信息,则所述OTP TA生成Applet指令并通过所述Applet指令发送所述口令定制信息至所述SE模块;所述Applet基于此口令定制信息生成所述OTP动态口令。
可选地,如果所述OTP许可口令通过验证,则所述OTP CA向所述OTP服务器发送用户请求信息;所述OTP服务器对所述用户请求信息验证成功后,通过所述安全通道并经由所述OTP CA向所述OTP TA发送所述口令定制信息以及定制类型;所述OTP TA生成Applet指令并通过所述Applet指令发送所述口令定制信息以及定制类型至所述SE模块;所述Applet根据所述口令定制信息以及定制类型并使用口令算法、密钥生成所述OTP动态口令。
可选地,所述OTP服务器对所述用户请求信息验证成功后,生成所述OTP动态口令;所述OTP服务器通过所述安全通道并经由所述OTP CA向所述OTPTA发送经过加密的所述OTP动态口令,通过所述Applet对经过加密的所述OTP动态口令进行解密。
可选地,如果所述OTP许可口令通过验证,则所述OTP CA向所述OTP服务器发送用户请求信息以及公钥证书;所述OTP服务器验证所述公钥证书,如果验证成功,则使用所述公钥证书中的公钥加密所述口令定制信息以及定制类型,并将加密后的所述口令定制信息以及定制类型通过所述OTP CA发送至所述OTP TA;所述OTP TA生成Applet指令并通过所述Applet指令发送加密后的所述口令定制信息以及定制类型至所述SE模块;所述Applet使用与所述公钥证书中的公钥相对应的私钥对加密后的所述口令定制信息以及定制类型进行解密处理。
可选地,所述Applet通过所述OTP TA接收到TSM服务器发送的密钥生成指令;所述Applet生成公、私密钥对,将公、私密钥对的公钥通过所述OTP TA发送至所述TSM服务器并请求获得数字证书;所述TSM服务器将包含有所述公钥的证书下发请求发送给信任根服务器;所述信任根服务器基于所述公钥生成证书并通过TSM服务器下发给OTP TA;所述OTP TA生成Applet指令并通过所述Applet指令发送所述证书至所述SE模块;所述Applet存储公、私密钥对的私钥以及所述证书。
可选地,所述OTP CA通过所述OTP TA向所述Applet发送REE系统时间;所述Applet计算APPLET时间和REE系统时间的时间差值并存储;当生成OTP动态口令时,所述Applet获得当前APPLET时间,基于当前APPLET时间和所述时间偏移获得当前REE系统时间,作为时间因子。
可选地,所述口令定制信息包括:挑战码、挑战码与OTP动态口令密钥、加密算法中的至少一项。
可选地,所述SE模块包括:eSE模块、inSE模块。
根据本发明的另一方面,提供一种基于安全元件的基于安全元件的动态口令生成系统,包括:运行在富执行环境REE中的动态口令客户应用OTP CA、运行在可信执行环境TEE中的动态口令可信应用OTP TA和运行在安全元件SE模块中的Applet;所述OTP CA,用于向所述OTP TA发送动态口令生成申请;所述OTP TA,用于通过可信用户接口TUI接收OTP许可口令,通过所述Applet对所述OTP许可口令进行验证,如果通过验证,则通过所述Applet生成OTP动态口令,并通过所述TUI进行显示。
可选地,所述OTP TA,用于如果所述OTP许可口令通过验证,则通过所述TUI接收OTP挑战码;生成Applet指令并通过所述Applet指令发送OTP挑战码至所述SE模块;所述Applet,用于使用OTP挑战码并基于OTP动态口令算法、密钥生成所述OTP动态口令。
可选地,所述OTP服务器,用于和所述TEE建立安全通道;如果所述OTP许可口令通过验证,通过所述安全通道向所述OTP TA发送用于生成OTP动态口令的口令定制信息或所述OTP动态口令;所述OTP TA,用于如果接收到口令定制信息,则生成Applet指令并通过所述Applet指令发送所述口令定制信息至所述SE模块;所述Applet,用于基于此口令定制信息生成所述OTP动态口令。
可选地,所述OTP CA,用于如果所述OTP许可口令通过验证,则向所述OTP服务器发送用户请求信息;所述OTP服务器,用于对所述用户请求信息验证成功后,通过所述安全通道并经由所述OTP CA向所述OTP TA发送所述口令定制信息以及定制类型;所述OTP TA,用于生成Applet指令并通过所述Applet指令发送所述口令定制信息以及定制类型至所述SE模块;所述Applet,用于根据所述口令定制信息以及定制类型并使用口令算法、密钥生成所述OTP动态口令。
可选地,所述OTP服务器,用于对所述用户请求信息验证成功后,生成所述OTP动态口令;通过所述安全通道并经由所述OTP CA向所述OTP TA发送所述OTP动态口令。
可选地,所述OTP CA,用于如果所述OTP许可口令通过验证,则向所述OTP服务器发送用户请求信息以及所述公钥证书;所述OTP服务器,用于验证所述公钥证书,如果验证成功,则使用所述公钥证书中的公钥加密所述口令定制信息以及定制类型,并将加密后的所述口令定制信息以及定制类型通过所述OTP CA发送至所述OTP TA;所述OTP TA,用于生成Applet指令并通过所述Applet指令发送加密后的所述口令定制信息以及定制类型至所述SE模块;所述Applet,用于使用与所述公钥证书中的公钥相对应的私钥对加密后的所述口令定制信息以及定制类型进行解密处理。
可选地,还包括:TSM服务器和信任根服务器;所述Applet,用于通过所述OTP TA接收所述TSM服务器发送的密钥生成指令;生成公、私密钥对,将公、私密钥对的公钥通过所述OTP TA发送至所述TSM服务器并请求获得数字证书;所述TSM服务器,用于将包含有所述公钥的证书下发请求发送给信任根服务器;所述信任根服务器,用于基于所述公钥生成证书并通过TSM服务器下发给OTP TA;所述OTP TA,用于生成Applet指令并通过所述Applet指令发送所述证书至所述SE模块;所述Applet,还用于存储公、私密钥对的私钥以及所述证书。
可选地,所述OTP CA,用于通过所述OTP TA向所述Applet发送REE系统时间;所述Applet,用于计算APPLET时间和REE系统时间的时间差值并存储;当生成OTP动态口令时,获得当前APPLET时间,基于当前APPLET时间和所述时间偏移获得当前REE系统时间,作为时间因子。
可选地,所述口令定制信息包括:挑战码、挑战码与OTP动态口令密钥、加密算法中的至少一项。
可选地,所述SE模块包括:eSE模块、inSE模块。
根据本发明的又一方面,提供一种基于安全元件的动态口令生成系统,包括:存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如上所述的方法。
根据本发明的再一方面,提供一种计算机可读存储介质,其上存储有计算机程序指令,该指令被一个或多个处理器执行时实现如上所述的方法的步骤。
本发明的基于安全元件的动态口令生成方法和系统,OTP CA向OTP TA发送动态口令生成申请,OTP TA通过TUI接收OTP许可口令,通过运行在SE模块中的Applet对OTP许可口令进行验证,如果通过验证,则通过Applet生成OTP动态口令,并通过TUI进行显示;提供基于TEE的移动终端的OTP安全方案,在移动终端上的REE环境中发起生成OTP动态口令并进入TEE,生成口令所需的信息在SE中解密获得,生成口令在SE中实现,而且通过TUI与用户交互,保证了业务数据的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为根据本发明的基于安全元件的动态口令生成方法的一个实施例的流程示意图;
图2为根据本发明的基于安全元件的动态口令生成方法的一个实施例中的OTP基于安全元件的动态口令生成过程中的信息交互示意图;
图3为根据本发明的基于安全元件的动态口令生成方法的另一个实施例中的OTP基于安全元件的动态口令生成过程中的信息交互示意图;
图4为根据本发明的基于安全元件的动态口令生成方法的又一个实施例中的OTP基于安全元件的动态口令生成过程中的信息交互示意图;
图5为根据本发明的基于安全元件的动态口令生成系统的一个实施例的模块示意图;
图6为根据本发明的基于安全元件的动态口令生成系统的另一个实施例的模块示意图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本发明实施例可以应用于计算机系统/服务器,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与计算机系统/服务器一起使用的众所周知的计算系统、环境和/或配置的例子包括但不限于:智能手机、个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
计算机系统/服务器可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
图1为根据本发明的基于安全元件的动态口令生成方法的一个实施例的流程示意图,如图1所示:
步骤101,运行在富执行环境REE中的动态口令客户应用OTP CA向运行在可信执行环境TEE中的动态口令可信应用OTP TA发送动态口令生成申请。
富执行环境REE(rich execution environment)是由富操作系统管理和控制的环境,与TEE对应,富执行环境、以及运行在其内的应用具有不安全、不可信的特点。可信执行环境TEE(trusted execution environment)是存在于移动终端设备内,与富执行环境相分离的安全区域。它与富执行环境以及富执行环境上面的应用相分离,确保各种敏感数据在一个可信环境中被存储、处理和受到保护,同时可信执行环境为装载在其中的可信应用提供一个安全的执行环境。
CA运行在REE普通应用,通过调用TEE提供的Client API可请求运行在TEE内的TA安全服务。TA为运行在TEE内的应用,通过调用TEE提供的API访问TEE控制的硬件资源。可信用户接口TUI(trusted user interface)为由TEE控制的TA应用,提供用户信息显示,与REE隔离的用户界面。需要用户登录后,才可以选择生成OTP基于安全元件的动态口令生成申请。
步骤102,OTP TA通过可信用户接口TUI接收OTP许可口令。
TUI运行在可信执行环境,TUI中也可以提供多种虚拟键盘配置,如数字键盘、字母键盘、符号键盘等。
步骤103,OTP TA通过运行在安全元件SE模块中的Applet对OTP许可口令进行验证。
步骤104,如果通过验证,则通过Applet生成OTP动态口令,并通过TUI进行显示。
安全元件SE可以是软硬件及相关协议结合的安全模块,可嵌入使用的智能卡级应用程序,SE模块包括eSE模块、inSE模块等。Applet是一种运行在SE中的程序。
上述实施例中的基于安全元件的动态口令生成方法,提供基于TEE的移动终端的OTP安全方案,在移动终端上的REE环境中发起生成OTP动态口令,TEE环境中的OTP TA发送指令给对应的SE模块中的Applet生成OTP口令,之后将口令送回给TEE,在TUI下显示。
在一个实施例中,如果OTP许可口令通过验证,则OTP TA通过TUI接收OTP挑战码。OTP TA生成Applet指令并通过Applet指令发送OTP挑战码至SE模块;Applet使用OTP挑战码并基于OTP动态口令算法、密钥生成OTP动态口令。Applet指令可以为APDU命令等。
动态口令OTP服务器和TEE可以建立安全通道。如果OTP许可口令通过验证,OTP服务器通过安全通道向OTP TA发送用于生成OTP动态口令的口令定制信息或OTP动态口令。如果接收到口令定制信息,则OTP TA生成Applet指令并通过Applet指令发送口令定制信息至SE模块。Applet基于此口令定制信息生成OTP动态口令。
传统挑战/应答式OTP,用户输入挑战码至令牌上,用户输完之后,单击生成动态密码按钮,即可得到OTP动态口令。令牌可以是硬件形式,也可以是软件形式。在生成口令的过程中,口令不会在网络传输中被截取。硬件令牌安全风险低,但需携带相应的令牌设备,较为不便。软件形式的挑战/应答式OTP令牌,安装在移动终端即可,安全级别较低。本发明提供的挑战/应答式TEE方案与软件令牌方式相比,在安全性上进行了增强,用户在封闭的环境TEE的TUI中输入挑战码,进入SE中生成口令,回到TEE,TUI屏显示口令。对应的OTP SE中的Applet中已知了OTP算法密钥、口令算法等信息。
如图2所示,移动终端CA代理发起OTP口令请求,CA代理即为OTP CA。OTP口令请求进入TEE中,弹出TUI屏,提示输入生成OTP许可口令。OTP TA组装Applet指令,进入SE模块中验证许可口令,验证许可口令正确后弹出TUI屏,提示输入挑战码,验证失败则返回CA代理。OTP TA组装Applet指令并发送挑战码给SE模块,Applet使用挑战码、OTP算法密钥、口令算法等生成OTP口令,返回给OTP TA。OTP TA获得口令后,弹出TUI屏,将OTP口令显示在TUI中。
在一个实施例中,如果OTP许可口令通过验证,则OTP CA向OTP服务器发送用户请求信息。OTP服务器对用户请求信息验证成功后,通过安全通道并经由OTP CA向OTP TA发送口令定制信息以及定制类型。OTP TA生成Applet指令并通过Applet指令发送口令定制信息以及定制类型至SE模块。Applet根据口令定制信息以及定制类型并使用口令算法、密钥生成OTP动态口令。
OTP服务器对用户请求信息验证成功后,生成OTP动态口令。OTP服务器通过安全通道并经由OTP CA向OTP TA发送经过加密的OTP动态口令,通过Applet对经过加密的OTP动态口令进行解密。
OTP服务器可以选择多种定制的信息进行传输。例如,如果OTP服务器生成了OTP动态口令,则直接发送OTP动态口令,Applet无需生成OTP动态口令,进行解密后直接在TUI屏幕中安全显示OTP动态口令。OTP服务器可以发送挑战码、发送挑战码和OTP动态口令密钥、发送挑战码和OTP动态口令密钥以及加密算法等,由Applet基于预先设置的信息生成OTP动态口令。
如图3所示,OTP服务器收到请求,验证用户身份。通过安全通道发送口令定制信息以及定制类型(可选)给移动终端CA代理,转发给TEE中的OTP TA。OTP服务器会将口令定制信息和用户信息存储在本地。OTP TA组装Applet指令,将信息传入SE模块。生成OTP口令:Applet获得生成口令所需信息(如果是密文,需先解密),根据定制的信息类型,以及Applet中已有信息,使用口令算法计算生成OTP口令,返回给OTP TA。OTP TA从返回指令中获得OTP口令后,显示在TUI屏中。
如果OTP许可口令通过验证,则OTP CA向OTP服务器发送用户请求信息以及公钥证书。OTP服务器验证公钥证书,如果验证成功,则使用公钥证书中的公钥加密口令定制信息以及定制类型,并将加密后的口令定制信息以及定制类型通过OTP CA发送至OTP TA。OTPTA生成Applet指令并通过Applet指令发送加密后的口令定制信息以及定制类型至SE模块。Applet使用与公钥证书中的公钥相对应的私钥对加密后的口令定制信息以及定制类型进行解密处理。
Applet通过OTP TA接收到TSM服务器发送的密钥生成指令。Applet生成公、私密钥对,将公、私密钥对的公钥通过OTP TA发送至TSM服务器并请求获得数字证书。TSM服务器将包含有公钥的证书下发请求发送给信任根服务器;信任根服务器基于公钥生成证书并通过TSM服务器下发给OTP TA。OTPTA生成Applet指令并通过Applet指令发送证书至SE模块;Applet存储公、私密钥对的私钥以及证书。
在安装完TA后,OTP TA对应的Applet下到SE模块后,需做个人化过程,准备私钥和证书。TA做为TSM服务器和SE模块的中转功能模块。TSM服务器发送生成密钥对的APDU指令给SE模块,Applet收到后,内部生成公私钥对,并将私钥存储在Applet内部。公钥通过APDU命令返回给TA,TA应用将公钥数据及签名数据返回至TSM服务器中。TSM组织证书请求发送给信任根服务器,获得公钥证书,发送回给TA。
如图4所示,准备好私钥和证书之后、注册好用户信息、并设置了OTP许可口令。移动终端CA代理发起OTP口令请求并进入TEE中,弹出TUI屏,提示输入生成OTP许可口令。OTPTA组装Applet指令,进入SE模块中验证许可口令,输入正确后,才会允许CA代理提交用户请求信息、公钥证书等给服务器。
OTP服务器向信任根服务器验证证书,合法则随机生成和发送口令所需信息,使用证书中的公钥加密发送给移动端OTP CA代理。OTP CA代理转发给OTP TA,OTP TA转发密文给SE模块中指定的Applet,Applet使用对应的私钥解密数据,获得明文,再用口令算法生成OTP口令,返回给TA。
在一个实施例中,OTP CA通过OTP TA向Applet发送REE系统时间。Applet计算APPLET时间和REE系统时间的时间差值并存储。当生成OTP动态口令时,Applet获得当前APPLET时间,基于当前APPLET时间和时间偏移获得当前REE系统时间,作为时间因子。
目前市场上的时间同步软件令牌,移动终端和OTP服务器不需要交互,密钥写入到了软件令牌内,通过手机内置时钟进行时间同步,获得时间因子。密钥存储在开放式环境中,安全级别较低。时间因子和密钥因子都在SE模块中获取。
在本发明的实施例中,OTP CA给SE中的Applet发送命令,传入REE系统时间,Applet计算时间差=Applet时间-REE系统时间,存储在SE中;每次时间差的误差忽略不计。当TEE中的OTP TA进行OTP口令计算时,首先获得当前Applet时间,由于时间偏移=当前Applet时间-当前REE时间,从而当前REE时间=当前Applet时间-时间偏移,即时间因子。
移动终端的CA代理发送命令1给OTP TA,先进入TEE中,弹出TUI屏,提示输入生成OTP许可口令。OTP TA组装Applet指令发给SE,SE中验证口令,返回验证结果给OTP TA。验证口令成功,CA代理发送命令2,传入REE系统时间,请求生成OTP口令。OTP TA转发组装Applet指令给Applet,Applet计算好时间偏移,存储。SE中准备好其他输入因子后,再计算获取REE当前时间(即时间因子),开始使用OTP算法计算出OTP口令。成功生成口令后,弹出TUI屏,将OTP口令显示在TUI中。
在一个实施例中,如图5所示,本发明提供一种基于安全元件的基于安全元件的动态口令生成系统,包括:运行在富执行环境REE中的动态口令客户应用OTP CA 51、运行在可信执行环境TEE中的动态口令可信应用OTP TA 52和运行在安全元件SE模块中的Applet53,以及OTP服务器54、TSM服务器55、TAM服务器56和信任根服务器57。
OTP CA 51向OTP TA 52发送OTP基于安全元件的动态口令生成申请。OTP TA 52通过可信用户接口TUI接收OTP许可口令,通过Applet 53对OTP许可口令进行验证,如果通过验证,则通过Applet 53生成OTP动态口令,并通过TUI进行显示。
在一个实施例中,如果OTP许可口令通过验证,则OTP TA 52通过TUI接收OTP挑战码,生成Applet指令并通过Applet指令发送OTP挑战码至SE模块。Applet 53使用OTP挑战码并基于OTP动态口令算法、密钥生成OTP动态口令。
OTP服务器54和TEE建立安全通道,如果OTP许可口令通过验证,通过安全通道向OTP TA 52发送用于生成OTP动态口令的口令定制信息或OTP动态口令。如果接收到口令定制信息,则OTP TA 52生成Applet指令并通过Applet指令发送口令定制信息至SE模块。Applet 53基于此口令定制信息生成OTP动态口令。
如果OTP许可口令通过验证,则OTP CA 51向OTP服务器54发送用户请求信息。OTP服务器54对用户请求信息验证成功后,通过安全通道并经由OTP CA 51向OTP TA 52发送口令定制信息以及定制类型。OTP TA 52生成Applet指令并通过Applet指令发送口令定制信息以及定制类型至SE模块。Applet 53根据口令定制信息以及定制类型并使用口令算法、密钥生成OTP动态口令。OTP服务器54对用户请求信息验证成功后,可以生成OTP动态口令;通过安全通道并经由OTP CA 51向OTP TA 52发送OTP动态口令。
如果OTP许可口令通过验证,则OTP CA 51向OTP服务器54发送用户请求信息以及公钥证书。OTP服务器54验证公钥证书,如果验证成功,则使用公钥证书中的公钥加密口令定制信息以及定制类型,并将加密后的口令定制信息以及定制类型通过OTP CA 51发送至OTP TA 52。OTP TA 52生成Applet指令并通过Applet指令发送加密后的口令定制信息以及定制类型至SE模块。Applet 53使用与公钥证书中的公钥相对应的私钥对加密后的口令定制信息以及定制类型进行解密处理。
Applet 53通过OTP TA 52接收TSM服务器发送的密钥生成指令,生成公、私密钥对,将公、私密钥对的公钥通过OTP TA 52发送至TSM服务器并请求获得数字证书。TSM服务器55将包含有公钥的证书下发请求发送给信任根服务器57。信任根服务器57基于公钥生成证书并通过TSM服务器55下发给OTP TA 52。OTP TA 52生成Applet指令并通过Applet指令发送证书至SE模块。Applet 53存储公、私密钥对的私钥以及证书。
OTP CA 51通过OTP TA 52向Applet 53发送REE系统时间。Applet 53计算APPLET时间和REE系统时间的时间差值并存储,当生成OTP动态口令时,获得当前APPLET时间,基于当前APPLET时间和时间偏移获得当前REE系统时间,作为时间因子。
图6为根据本发明公开的基于安全元件的动态口令生成系统的另一个实施例的模块示意图。如图6所示,该装置可包括存储器61、处理器62、通信接口63。存储器61用于存储指令,处理器62耦合到存储器61,处理器62被配置为基于存储器61存储的指令执行实现上述的方法。
存储器61可以为高速RAM存储器、非易失性存储器(NoN-volatile memory)等,存储器61也可以是存储器阵列。处理器62可以为中央处理器CPU,或专用集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本发明公开的方法的一个或多个集成电路。
在一个实施例中,本公开还提供一种计算机可读存储介质,其中计算机可读存储介质存储有计算机指令,指令被处理器执行时实现如上任一实施例涉及的方法。本领域内的技术人员应明白,本公开的实施例可提供为方法、装置、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本公开实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
上述实施例中提供的基于安全元件的动态口令生成方法和系统,运行在REE中的OTP CA向运行在TEE中的OTP TA发送动态口令生成申请;OTP TA通过TUI接收OTP许可口令,通过运行在SE模块中的Applet对OTP许可口令进行验证,如果通过验证,则通过Applet生成OTP动态口令,并通过TUI进行显示;提供基于TEE的移动终端的OTP安全方案,在移动终端上的REE环境中发起生成OTP动态口令并进入TEE,生成口令所需的信息在SE中解密获得,生成口令在SE中实现,而且通过TUI与用户交互,保证了业务数据的安全性。
可能以许多方式来实现本发明的方法和系统。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和系统。用于方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (12)
1.一种基于安全元件的动态口令生成方法,其特征在于,包括:
运行在富执行环境REE中的动态口令客户应用OTP CA向运行在可信执行环境TEE中的动态口令可信应用OTP TA发送动态口令生成申请;
OTP TA通过可信用户接口TUI接收OTP许可口令;
所述OTP TA通过运行在安全元件SE模块中的Applet对所述OTP许可口令进行验证,如果通过验证,则通过所述Applet生成OTP动态口令,并通过所述TUI进行显示,所述SE模块包括:eSE模块、inSE模块;
所述可信用户接口TUI为由TEE控制,提供用户信息显示,与REE隔离的用户界面;
所述通过所述Applet生成OTP动态口令包括:
动态口令OTP服务器和所述TEE建立安全通道,如果所述OTP许可口令通过验证,则所述OTP CA向OTP服务器发送用户请求信息以及公钥证书;
所述OTP服务器验证所述公钥证书,如果验证成功,则使用所述公钥证书中的公钥加密所述口令定制信息以及定制类型,并将加密后的所述口令定制信息以及定制类型通过所述OTP CA发送至所述OTP TA;
所述OTP TA生成Applet指令并通过所述Applet指令发送加密后的所述口令定制信息以及定制类型至所述SE模块;
所述Applet使用与所述公钥证书中的公钥相对应的私钥对加密后的所述口令定制信息以及定制类型进行解密处理;
其中,所述公钥私钥产生方法包括:所述Applet通过所述OTP TA接收到TSM服务器发送的密钥生成指令;所述Applet生成公、私密钥对,将公、私密钥对的公钥通过所述OTP TA发送至所述TSM服务器并请求获得数字证书;所述TSM服务器将包含有所述公钥的证书下发请求发送给信任根服务器,所述信任根服务器基于所述公钥生成证书并通过TSM服务器下发给OTP TA;所述OTP TA生成Applet指令并通过所述Applet指令发送所述证书至所述SE模块;所述Applet存储公、私密钥对的私钥以及所述证书。
2.如权利要求1所述的方法,其特征在于,所述通过所述Applet生成OTP动态口令包括:
如果所述OTP许可口令通过验证,则所述OTP TA通过所述TUI接收OTP挑战码;
所述OTP TA生成Applet指令并通过所述Applet指令发送OTP挑战码至所述SE模块;
所述Applet使用OTP挑战码并基于OTP动态口令算法、密钥生成所述OTP动态口令。
3.如权利要求1所述的方法,其特征在于,所述通过所述Applet生成OTP动态口令包括:
动态口令OTP服务器和所述TEE建立安全通道;
如果所述OTP许可口令通过验证,所述OTP服务器通过所述安全通道向所述OTP TA发送用于生成OTP动态口令的口令定制信息;
如果接收到口令定制信息,则所述OTP TA生成Applet指令并通过所述Applet指令发送所述口令定制信息至所述SE模块;
所述Applet基于此口令定制信息生成所述OTP动态口令;
所述口令定制信息包括:挑战码、挑战码与OTP动态口令密钥、加密算法中的至少一项;
所述OTP CA通过所述OTP TA向所述Applet发送REE系统时间;
所述Applet计算APPLET时间和REE系统时间的时间差值并存储;
当生成OTP动态口令时,所述Applet获得当前APPLET时间,基于当前APPLET时间和所述时间偏移获得当前REE系统时间,作为时间因子。
4.如权利要求1所述的方法,其特征在于,还包括:
动态口令OTP服务器和所述TEE建立安全通道;
如果所述OTP许可口令通过验证,则所述OTP CA向OTP服务器发送用户请求信息;
所述OTP服务器对所述用户请求信息验证成功后,通过所述安全通道并经由所述OTPCA向所述OTP TA发送口令定制信息以及定制类型,所述OTP TA生成Applet指令并通过所述Applet指令发送所述口令定制信息以及定制类型至所述SE模块,所述Applet根据所述口令定制信息以及定制类型并使用口令算法、密钥生成所述OTP动态口令。
5.如权利要求1所述的方法,其特征在于,还包括:
动态口令OTP服务器和所述TEE建立安全通道;
如果所述OTP许可口令通过验证,则所述OTP CA向OTP服务器发送用户请求信息;
所述OTP服务器对所述用户请求信息验证成功后,生成所述OTP动态口令,所述OTP服务器通过所述安全通道并经由所述OTP CA向所述OTP TA发送经过加密的所述OTP动态口令,通过所述Applet对经过加密的所述OTP动态口令进行解密。
6.一种基于安全元件的基于安全元件的动态口令生成系统,其特征在于,包括:
运行在富执行环境REE中的动态口令客户应用OTP CA、运行在可信执行环境TEE中的动态口令可信应用OTP TA和运行在安全元件SE模块中的Applet,所述SE模块包括:eSE模块、inSE模块;
所述OTP CA,用于向所述OTP TA发送动态口令生成申请;
所述OTP TA,用于通过可信用户接口TUI接收OTP许可口令,通过所述Applet对所述OTP许可口令进行验证,如果通过验证,则通过所述Applet生成OTP动态口令,并通过所述TUI进行显示;
所述OTP CA,用于如果所述OTP许可口令通过验证,则向所述OTP服务器发送用户请求信息以及公钥证书;
所述OTP服务器,动态口令OTP服务器和所述TEE建立安全通道,用于验证所述公钥证书,如果验证成功,则使用所述公钥证书中的公钥加密所述口令定制信息以及定制类型,并将加密后的所述口令定制信息以及定制类型通过所述OTP CA发送至所述OTP TA;
所述OTP TA,用于生成Applet指令并通过所述Applet指令发送所述证书至所述SE模块,还用于生成Applet指令并通过所述Applet指令发送加密后的所述口令定制信息以及定制类型至所述SE模块;
所述Applet,用于通过所述OTP TA接收TSM服务器发送的密钥生成指令;生成公、私密钥对,将公、私密钥对的公钥通过所述OTP TA发送至所述TSM服务器并请求获得数字证书,还用于使用与所述公钥证书中的公钥相对应的私钥对加密后的所述口令定制信息以及定制类型进行解密处理,还用于存储公、私密钥对的私钥以及所述证书;
所述TSM服务器,用于将包含有所述公钥的证书下发请求发送给信任根服务器;
所述信任根服务器,用于基于所述公钥生成证书并通过TSM服务器下发给OTP TA。
7.如权利要求6所述的系统,其特征在于,
所述OTP TA,用于如果所述OTP许可口令通过验证,则通过所述TUI接收OTP挑战码;生成Applet指令并通过所述Applet指令发送OTP挑战码至所述SE模块;
所述Applet,用于使用OTP挑战码并基于OTP动态口令算法、密钥生成所述OTP动态口令。
8.如权利要求6所述的系统,其特征在于,还包括:动态口令OTP服务器;
所述OTP服务器,用于和所述TEE建立安全通道;如果所述OTP许可口令通过验证,通过所述安全通道向所述OTP TA发送用于生成OTP动态口令的口令定制信息;
所述OTP TA,用于如果接收到口令定制信息,则生成Applet指令并通过所述Applet指令发送所述口令定制信息至所述SE模块,还用于通过所述OTP TA向所述Applet发送REE系统时间;
所述Applet,用于基于此口令定制信息生成所述OTP动态口令,还用于计算APPLET时间和REE系统时间的时间差值并存储;当生成OTP动态口令时,获得当前APPLET时间,基于当前APPLET时间和所述时间偏移获得当前REE系统时间,作为时间因子;
所述口令定制信息包括:挑战码、挑战码与OTP动态口令密钥、加密算法中的至少一项。
9.如权利要求6所述的系统,其特征在于,
所述OTP CA,用于如果所述OTP许可口令通过验证,则向OTP服务器发送用户请求信息;
所述OTP服务器,动态口令OTP服务器和所述TEE建立安全通道,用于对所述用户请求信息验证成功后,所述安全通道并经由所述OTP CA向所述OTP TA发送所述口令定制信息以及定制类型;
所述OTP TA,用于生成Applet指令并通过所述Applet指令发送所述口令定制信息以及定制类型至所述SE模块;
所述Applet,用于根据所述口令定制信息以及定制类型并使用口令算法、密钥生成所述OTP动态口令。
10.如权利要求6所述的系统,其特征在于,
所述OTP CA,用于如果所述OTP许可口令通过验证,则向OTP服务器发送用户请求信息;
所述OTP服务器,动态口令OTP服务器和所述TEE建立安全通道,用于对所述用户请求信息验证成功后,生成所述OTP动态口令;所述安全通道并经由所述OTP CA向所述OTP TA发送所述OTP动态口令。
11.一种基于安全元件的基于安全元件的动态口令生成系统,其特征在于,包括:
存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如权利要求1至5中任一项所述的方法。
12.一种计算机可读存储介质,其上存储有计算机程序指令,该指令被一个或多个处理器执行时实现权利要求1至5任意一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810331429.7A CN108616352B (zh) | 2018-04-13 | 2018-04-13 | 基于安全元件的动态口令生成方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810331429.7A CN108616352B (zh) | 2018-04-13 | 2018-04-13 | 基于安全元件的动态口令生成方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108616352A CN108616352A (zh) | 2018-10-02 |
CN108616352B true CN108616352B (zh) | 2022-01-18 |
Family
ID=63660092
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810331429.7A Active CN108616352B (zh) | 2018-04-13 | 2018-04-13 | 基于安全元件的动态口令生成方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108616352B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111046383B (zh) * | 2018-10-12 | 2023-10-13 | 华为技术有限公司 | 终端攻击防御方法、装置、终端及云服务器 |
CN109657764B (zh) * | 2018-10-22 | 2024-04-02 | 北京握奇智能科技有限公司 | 一种tee环境下生成二维码的方法及系统 |
CN109766152B (zh) * | 2018-11-01 | 2022-07-12 | 华为终端有限公司 | 一种交互方法及装置 |
CN111177701B (zh) * | 2019-12-11 | 2022-09-13 | 北京握奇智能科技有限公司 | 基于可信执行环境和安全芯片的密码功能服务实现方法和设备 |
CN114125828A (zh) * | 2021-12-02 | 2022-03-01 | 展讯通信(上海)有限公司 | 一种近场通信的移动终端、处理方法、设备及介质 |
CN114222292A (zh) * | 2021-12-28 | 2022-03-22 | 展讯通信(上海)有限公司 | 加密通话方法、系统、存储介质及终端 |
CN118041691A (zh) * | 2024-04-10 | 2024-05-14 | 河北省气象服务中心(河北省气象影视中心) | 一种气象数据采集和传输系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105516104A (zh) * | 2015-12-01 | 2016-04-20 | 神州融安科技(北京)有限公司 | 一种基于tee的动态口令的身份验证方法及系统 |
CN106506472A (zh) * | 2016-11-01 | 2017-03-15 | 黄付营 | 一种安全的移动终端电子认证方法及系统 |
CN106650461A (zh) * | 2016-11-23 | 2017-05-10 | 北京握奇智能科技有限公司 | 移动终端和基于该移动终端的嵌入式安全模块的访问方法 |
CN106789067A (zh) * | 2016-12-13 | 2017-05-31 | 北京握奇智能科技有限公司 | 一种基于TEE和可穿戴设备的手机网银Key方法及系统 |
CN106878231A (zh) * | 2015-12-10 | 2017-06-20 | 中国电信股份有限公司 | 用于实现用户数据安全传输的方法、用户终端和系统 |
CN106936774A (zh) * | 2015-12-29 | 2017-07-07 | 中国电信股份有限公司 | 可信执行环境中的认证方法和系统 |
CN107305607A (zh) * | 2016-04-18 | 2017-10-31 | 大唐半导体设计有限公司 | 一种防止后台恶意程序独立运行的方法和装置 |
CN107615294A (zh) * | 2016-03-04 | 2018-01-19 | 华为技术有限公司 | 一种验证码短信显示方法及移动终端 |
CN107786951A (zh) * | 2016-08-24 | 2018-03-09 | 中国移动通信有限公司研究院 | 一种信息处理方法及终端设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106940776A (zh) * | 2016-01-04 | 2017-07-11 | 中国移动通信集团公司 | 一种敏感数据操作方法和移动终端 |
US20170289185A1 (en) * | 2016-03-31 | 2017-10-05 | Qualcomm Incorporated | Device assisted traffic anomaly detection |
KR102425368B1 (ko) * | 2016-05-02 | 2022-07-27 | 삼성전자주식회사 | 가상 sim 운용 방법 및 그 장치 |
US10402566B2 (en) * | 2016-08-01 | 2019-09-03 | The Aerospace Corporation | High assurance configuration security processor (HACSP) for computing devices |
CN106980793B (zh) * | 2017-04-01 | 2020-05-15 | 北京元心科技有限公司 | 基于TrustZone的通用口令存储及读取方法、装置及终端设备 |
-
2018
- 2018-04-13 CN CN201810331429.7A patent/CN108616352B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105516104A (zh) * | 2015-12-01 | 2016-04-20 | 神州融安科技(北京)有限公司 | 一种基于tee的动态口令的身份验证方法及系统 |
CN106878231A (zh) * | 2015-12-10 | 2017-06-20 | 中国电信股份有限公司 | 用于实现用户数据安全传输的方法、用户终端和系统 |
CN106936774A (zh) * | 2015-12-29 | 2017-07-07 | 中国电信股份有限公司 | 可信执行环境中的认证方法和系统 |
CN107615294A (zh) * | 2016-03-04 | 2018-01-19 | 华为技术有限公司 | 一种验证码短信显示方法及移动终端 |
CN107305607A (zh) * | 2016-04-18 | 2017-10-31 | 大唐半导体设计有限公司 | 一种防止后台恶意程序独立运行的方法和装置 |
CN107786951A (zh) * | 2016-08-24 | 2018-03-09 | 中国移动通信有限公司研究院 | 一种信息处理方法及终端设备 |
CN106506472A (zh) * | 2016-11-01 | 2017-03-15 | 黄付营 | 一种安全的移动终端电子认证方法及系统 |
CN106650461A (zh) * | 2016-11-23 | 2017-05-10 | 北京握奇智能科技有限公司 | 移动终端和基于该移动终端的嵌入式安全模块的访问方法 |
CN106789067A (zh) * | 2016-12-13 | 2017-05-31 | 北京握奇智能科技有限公司 | 一种基于TEE和可穿戴设备的手机网银Key方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108616352A (zh) | 2018-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10904234B2 (en) | Systems and methods of device based customer authentication and authorization | |
CN108616352B (zh) | 基于安全元件的动态口令生成方法和系统 | |
US11501294B2 (en) | Method and device for providing and obtaining graphic code information, and terminal | |
US11258777B2 (en) | Method for carrying out a two-factor authentication | |
US9838205B2 (en) | Network authentication method for secure electronic transactions | |
US9231925B1 (en) | Network authentication method for secure electronic transactions | |
US9325708B2 (en) | Secure access to data in a device | |
JP5066827B2 (ja) | 移動装置を用いる認証サービスのための方法及び装置 | |
US10045210B2 (en) | Method, server and system for authentication of a person | |
US10848304B2 (en) | Public-private key pair protected password manager | |
US20150310427A1 (en) | Method, apparatus, and system for generating transaction-signing one-time password | |
US20070245148A1 (en) | System and method for securing a credential via user and server verification | |
US9674166B2 (en) | Method for securing a request for executing a first application, by a second application | |
CN108768655B (zh) | 动态口令生成方法和系统 | |
WO2021216003A1 (en) | Authentication and validation procedure for improved security in communications systems | |
JP6059788B2 (ja) | カード装置を用いたネットワーク認証方法 | |
US20240113898A1 (en) | Secure Module and Method for App-to-App Mutual Trust Through App-Based Identity | |
KR102445379B1 (ko) | 서버 장치의 동작 방법, 단말의 동작 방법 및 서버 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |