The invention provides an application authentication system and an authentication method. The authentication system includes an authentication terminal and an application authentication module. The application authentication module includes a first true random number generation module to generate the first true random number, and a first authentication key generation module to generate the first authentication key based on the first true random number and the second true random number obtained from the authentication terminal. An authentication sub-module comparing the first authentication key with the second authentication key obtained from the authentication terminal. Authentication terminal includes: generating the second true random number generating module; authenticating the number of times an application is used to compare with the upper limit of the preset number of times; generating the second authenticated key generating module of the second authenticated key according to the first true random number and the second true random number. The technical scheme provided by the invention ensures the security of the application scope and the controllability of the number of times of use provided by the application developer.
【技术实现步骤摘要】
一种应用程序认证系统及认证方法
本专利技术涉及应用程序认证,具体涉及一种应用程序认证系统及认证方法。
技术介绍
COS为ChipOperatingSystem,称作片内操作系统。随着内部带有微处理器的智能卡与安全芯片的出现,使得管理卡片本身这种复杂的工作的实现成为了现实。COS的出现不仅大大地改善了卡片与读写器的交互,使用更安全,而且使得智能卡本身向着个人计算机化的方向迈进了一大步。COS的主要功能是控制智能卡与外界的信息交换,管理卡内的存储器并在卡内部完成各种命令的处理。装载以汇编语言、C语言等本地语言开发COS的卡称为Native卡,在Native卡中,COS平台和应用一般不会分开开发。同一个厂家,既进行COS平台的开发,又进行应用的开发。装载JavaCard平台的卡称为Java卡,Java卡是Java技术与智能卡技术相结合的产物,是一种新型的智能卡系统。它将Java语言的面向对象、跨平台以及高安全性等特性引入到智能卡中。Java卡引入统一标准的应用编程接口(ApplicationProcessingInterface,API),使得Java卡平台和应用开发可以分离。Java卡API是Java卡运行环境的重要组成部分之一,它提供了一套统一的用于应用开发的编程接口,包括IO接口、异常管理、安全管理等接口,使得应用开发与平台开发可以完全分离。Java卡上的应用可以使用标准的API进行编程和调试,生成可下载文件(CAP文件)。在卡片发行后,可以再进行应用的下载、安装和删除等应用管理。当应用和平台开发分离后,任何一家调用标准API开发的应用都能装载到另一家提供 ...
【技术保护点】
1.一种应用程序认证模块,其特征在于,包括:第一真随机数生成模块,用于生成第一真随机数;第一认证密钥生成模块,用于根据第一真随机数和从认证终端获取的第二真随机数生成第一认证密钥;鉴定子模块,用于比较第一认证密钥与从认证终端获取的第二认证密钥是否一致,若一致则应用程序的功能允许被外部设备调用;否则不允许被调用。
【技术特征摘要】
1.一种应用程序认证模块,其特征在于,包括:第一真随机数生成模块,用于生成第一真随机数;第一认证密钥生成模块,用于根据第一真随机数和从认证终端获取的第二真随机数生成第一认证密钥;鉴定子模块,用于比较第一认证密钥与从认证终端获取的第二认证密钥是否一致,若一致则应用程序的功能允许被外部设备调用;否则不允许被调用。2.如权利要求1所述的应用程序认证模块,其特征在于,第一认证密钥生成模块包括:第一过程密钥生成子模块,用于根据应用程序认证模块存储的固定密钥和从认证终端获取的第二真随机数生成第一过程密钥;第一认证密钥生成子模块,用于根据第一真随机数和第一过程密钥生成第一认证密钥。3.一种认证终端,其特征在于,包括:第二真随机数生成模块,用于生成第二真随机数;认证次数鉴定模块,用于从应用程序认证模块获取第一真随机数,并对应用程序的被使用次数与预设次数上限进行比较,若被使用次数加1后未超出预设次数上限,则通过第二认证密钥生成模块生成第二认证密钥;否则将第一真随机数退回应用程序认证模块;第二认证密钥生成模块,用于根据第一真随机数和第二真随机数生成第二认证密钥。4.如权利要求3所述的认证终端,其特征在于,所述第二认证密钥生成模块包括:第二过程密钥生成子模块,用于根据认证终端存储的固定密钥和第二真随机数生成第二过程密钥;第二认证密钥生成子模块,用于根据第一真随机数和第二过程密钥生成第二认证密钥。5.如权利要求4所述的认证终端,其特征在于,所述认证终端还包括:存储模块,用于存储应用程序的被使用次数和预设次数上限,以及固定密钥。6.一种应用程序认证系统,其特征在于,包括:如权利要求1或2所述的应用程序认证模块,以及如权利要求3-5任一所述的认证终端。7.一种应用程序认证方法,其特征在于,包括:应用程序认证模块将生成的第一真随机数发送至认证终端;所述认证终端对应用程序的被使用次数与预设次数上限进行比较,若被使用次数加1后未超过预设次数上限,则所述认证终端根据第一真随机数和认证终端产生的第二真随机数生成第二认证密钥并发送至所述应用程序认证模块;否则将第一真随时数退回应用程序认证模块;所述应用程序认证模块根据第一真随机数和从认证终端获取的第二认证密钥中的第二真随机数生成第一认证密钥,并比较所述第一认证密钥与第二认证密钥是否一致,若一致则应用程序的功能允许被外部设备调用;否则不允许被调用。8.如权利要求7所述的认证方法,其特征在于,所述认证终端根据第一真随机数和认证终端产生的第二真随机数生成第二认证密钥包括:所述认证终端生成第二真随机数;所述认证终端对其存储的固定密钥和第二真随机数加密生成第二过程密钥;所述认证终端对第一真随机数和第二过程密钥加密生成第二认证密钥。9.如权利要求8所述的认证方法,其特征在于,所述应用程序认证模块根据第一真随机数和从认证终端获取的第二认证密钥中的第二真随机数生成第一认证密钥包括:所述应用程序认证模块对其存储的固定密钥和从认证终端获取的第二认证密钥中的第二真随机数加密生成第一过程密钥;所述应用程序认证模块对第一真随机数和第一过程密钥加密生成第一认证密钥。10.如权利要求9所述的认证方...
【专利技术属性】
技术研发人员:盛万兴,李二霞,史常凯,李玉凌,孟晓丽,许保平,刘海涛,张波,常方圆,何连杰,
申请(专利权)人:中国电力科学研究院,国家电网公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。