CN112559979B - 一种pos机上通过硬件安全芯片保护软件库授权使用的方法 - Google Patents

一种pos机上通过硬件安全芯片保护软件库授权使用的方法 Download PDF

Info

Publication number
CN112559979B
CN112559979B CN202011523248.8A CN202011523248A CN112559979B CN 112559979 B CN112559979 B CN 112559979B CN 202011523248 A CN202011523248 A CN 202011523248A CN 112559979 B CN112559979 B CN 112559979B
Authority
CN
China
Prior art keywords
security chip
certificate
chip
authorization certificate
main control
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
CN202011523248.8A
Other languages
English (en)
Other versions
CN112559979A (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.)
Fujian Newland Payment Technology Co ltd
Original Assignee
Fujian Newland Payment Technology 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 Fujian Newland Payment Technology Co ltd filed Critical Fujian Newland Payment Technology Co ltd
Priority to CN202011523248.8A priority Critical patent/CN112559979B/zh
Publication of CN112559979A publication Critical patent/CN112559979A/zh
Application granted granted Critical
Publication of CN112559979B publication Critical patent/CN112559979B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/105Arrangements for software license management or administration, e.g. for managing licenses at corporate level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/107License processing; Key processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及POS机技术领域,特别涉及一种POS机上二维码软解码库授权使用的保护措施,其包括:当设备第一次访问解码功能时,将license授权证书发送给安全芯片;安全芯片使用CA验签公钥校验license授权证书的签名,并将license授权证书主体信息与安全芯片的唯一序列号做比较,若信息一致,则判定为验证通过;之后安全芯片与主控芯片握手生成会话密钥,用于保护后续的的解码运算指令;本发明通过下载license授权证书文件的方式对设备进行授权,通过非对称加密算法来进行认证,确保了只有拥有合法license授权证书文件的设备能够使用二维码解码库的功能,极大提升了安全性。

Description

一种POS机上通过硬件安全芯片保护软件库授权使用的方法
技术领域
本发明涉及POS机技术领域,特别涉及一种POS机上二维码软解码库授权使用的保护措施。
背景技术
随着国内二维码支付越来越普及,各POS终端设备都集成了二维码识读功能。根据解码识读实现方式的不同,可分为通过专门的硬件模块实现的硬解码和通过摄像头采集图像由软件进图像分析的软解码两种。其中软解码方式使用的软解码库多为第三方公司开发,有偿授权给终端厂商使用。
为了保护解码库不被未授权的非法使用,软解码库开发公司多要求终端厂商提供安全可靠的认证方案,确认解码库只在经过授权的设备上能够正常使用。目前的认证方式多在通过纯软件实现,由于库和授权信息均保存在主控芯片CPU端的开源系统上,容易被破解或绕过,安全性有限。
发明内容
本发明设计了一种通过单独的硬件安全芯片来与二维码解码库进行认证的方法,通过下载license授权证书文件的方式对设备进行授权,通过非对称加密算法来进行认证,确保了只有拥有合法license授权证书文件的设备能够使用二维码解码库的功能,极大提升了安全性。
本发明通过以下技术方案予以实现:
一种POS机上通过硬件安全芯片保护软件库授权使用的方法,所述POS机包括终端主控芯片与安全芯片,其中终端主控芯片中存储有license授权证书以及授权证书对应的私钥;安全芯片中固化有CA验签公钥,用于实现对license授权证书的校验;该方法包括:
当设备第一次访问解码功能时,将license授权证书发送给安全芯片;
安全芯片使用CA验签公钥校验license授权证书的签名,并将license授权证书主体信息与安全芯片的唯一序列号做比较,若信息一致,则判定为验证通过;之后安全芯片与主控芯片握手生成会话密钥,用于保护后续的的解码运算指令。
进一步的,具体包括以下步骤:
A)设备进行解码库初始化时,主控芯片向安全芯片发起认证请求,将本地的license授权证书文件发送给安全芯片端;
B)安全芯片端使用预置的CA公钥校验license证书签名,并比较证书主体信息是否与芯片序列号一致;
C)安全芯片校验证书合法后,生成一组随机的16字节TDES算法会话密钥,并将会话密钥用license证书公钥加密后返回给主控芯片端;
D)主控芯片收到密文的会话密钥,使用本地存储的对应私钥解密还原出会话密钥明文。
E)后续解码过程中,主控芯片与安全芯片间交互的数据均通过这个会话密钥进行加密保护。
进一步的,license授权证书的生成步骤如下:
a)初始化阶段,主控芯片获取硬件安全芯片的唯一序列号;
b)终端主控芯片将硬件安全芯片的唯一序列号作为license授权证书请求文件(.CSR)的证书持有者主体信息,生成CSR证书请求和对应私钥;
c)终端主控芯片将步骤b)生成的CSR证书请求发送给CA签名设备请求签发;
d)CA管理员确认签发,将CSR证书请求签发为标准X509格式的license授权证书(.CRT);
e)终端将授权证书和对应私钥保存在文件系统上。
进一步的,安全芯片序列号为安全芯片出厂时烧有的唯一的芯片序列号。
与现有技术相比,本发明具有以下有益效果:
防破解
软件库拆分出关键步骤放在安全级别更高的硬件安全芯片上执行,即使主控芯片端的软件库被获取、反编译,也会因无法获取到硬件安全芯片端的关键环节,而无法使用完整功能。
高安全性
基于非对称算法设计的终端授权方案,对授权信息的校验步骤均在硬件安全芯片上执行,攻击者无法从主控芯片发起攻击,无法绕过或破解授权步骤。
一机一授权
授权信息跟终端安全芯片的唯一序列号绑定,攻击者无法通过获取某台设备的授权信息对其他设备进行非法授权,授权可控可追溯。
附图说明
图1是本发明方案的流程示意图;
图2是license授权证书生成的步骤流程图。
具体实施方式
为使本发明实施方式的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。因此,以下对在附图中提供的本发明的实施方式的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施方式。基于本发明中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
下面结合附图和具体实施方式对本发明作进一步说明。
参照附图1-2所示,一种POS机上通过硬件安全芯片保护软件库授权使用的方法,由终端安全芯片以及运行在主控芯片上的二维码解码库共同完成授权认证流程。POS机包括终端主控芯片与安全芯片,其中终端主控芯片中存储有license授权证书以及授权证书对应的私钥;安全芯片中固化有CA验签公钥,用于实现对license授权证书的校验;认证握手成功之后,使能解码库功能,并且双方会协商出一组会话密钥用于保护后续的交互数据。该方法包括:
当设备第一次访问解码功能时,将license授权证书发送给安全芯片;
安全芯片使用CA验签公钥校验license授权证书的签名,并将license授权证书主体信息与安全芯片的唯一序列号做比较,若信息一致,则判定为验证通过;之后安全芯片与主控芯片握手生成会话密钥,用于保护后续的的解码运算指令。
在设备首次访问二维码解码库功能时将通过存放在设备端的license授权证书文件发送给硬件安全芯片进行验证,验证通过,设备才能够正常使用二维码解码功能,而license授权证书包含硬件安全芯片的序列号信息,保证一机一授权。
每颗安全芯片在出厂时都烧有的唯一的芯片序列号,这个序列号作为license证书请求(.CSR)的主体信息,lincense证书请求由解码库开发公司持有的CA私钥签发出指定的license授权证书,再下载到终端上,这种方式保证了每个license授权证书文件(.CRT)都是唯一的且与终端设备一一对应。
在设备出厂时通过专门的CA签名设备将终端上送的license证书请求文件签发成证书,再注入到终端设备中。
POS机上通过硬件安全芯片保护软件库授权使用的方法,具体包括以下步骤:
A)设备进行解码库初始化时,主控芯片向安全芯片发起认证请求,将本地的license授权证书文件发送给安全芯片端;
B)安全芯片端使用预置的CA公钥校验license证书签名,并比较证书主体信息是否与芯片序列号一致;
C)安全芯片校验证书合法后,生成一组随机的16字节TDES算法会话密钥,并将会话密钥用license证书公钥加密后返回给主控芯片端;
D)主控芯片收到密文的会话密钥,使用本地存储的对应私钥解密还原出会话密钥明文。
E)后续解码过程中,主控芯片与安全芯片间交互的数据均通过这个会话密钥进行加密保护。
进一步的,终端设备license授权证书的生成步骤如下:
a)初始化阶段,主控芯片获取硬件安全芯片的唯一序列号;
b)终端主控芯片将硬件安全芯片的唯一序列号作为license授权证书请求文件(.CSR)的证书持有者主体信息,生成CSR证书请求和对应私钥;
c)终端主控芯片将步骤b)生成的CSR证书请求发送给CA签名设备请求签发;
d)CA管理员确认签发,将CSR证书请求签发为标准X509格式的license授权证书(.CRT);
e)终端将授权证书和对应私钥保存在文件系统上。
本发明将解码算法过程中的验证步骤移植到设备的安全芯片上实现,同时安全芯片在返回的验证数据时需要多加一层加密保护,解码库端收到验证数据密文,先使用会话密钥先执行解密,再进行验证。而其余大部分解码流程仍在设备主控芯片端执行,即主控芯片端运行的二维码解码库需要与硬件安全芯片端运行的固件代码协同才能完成一次完整的二维码图片解码操作,提升了其安全性。
以上所述仅为本发明的优选实施方式而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (3)

1.一种POS机上通过硬件安全芯片保护软件库授权使用的方法,其特征在于,所述POS机包括终端主控芯片与安全芯片,其中终端主控芯片中存储有license授权证书以及授权证书对应的私钥;安全芯片中固化有CA验签公钥,用于实现对license授权证书的校验;该方法包括:
当设备第一次访问解码功能时,将license授权证书发送给安全芯片;
安全芯片使用CA验签公钥校验license授权证书的签名,并将license授权证书主体信息与安全芯片的唯一序列号做比较,若信息一致,则判定为验证通过;之后安全芯片与主控芯片握手生成会话密钥,用于保护后续的解码运算指令;
具体包括以下步骤:
A)设备进行解码库初始化时,主控芯片向安全芯片发起认证请求,将本地的license授权证书文件发送给安全芯片端;
B)安全芯片端使用预置的CA公钥校验license证书签名,并比较证书主体信息是否与芯片序列号一致;
C)安全芯片校验证书合法后,生成一组随机的16字节TDES算法会话密钥,并将会话密钥用license证书公钥加密后返回给主控芯片端;
D)主控芯片收到密文的会话密钥,使用本地存储的对应私钥解密还原出会话密钥明文;
E)后续解码过程中,主控芯片与安全芯片间交互的数据均通过这个会话密钥进行加密保护。
2.根据权利要求1所述的一种POS机上通过硬件安全芯片保护软件库授权使用的方法,其特征在于,license授权证书的生成步骤如下:
a)初始化阶段,主控芯片获取硬件安全芯片的唯一序列号;
b)终端主控芯片将硬件安全芯片的唯一序列号作为license授权证书请求文件(.CSR)的证书持有者主体信息,生成CSR证书请求和对应私钥;
c)终端主控芯片将步骤b)生成的CSR证书请求发送给CA签名设备请求签发;
d)CA管理员确认签发,将CSR证书请求签发为标准X509格式的license授权证书(.CRT);
e)终端将授权证书和对应私钥保存在文件系统上。
3.根据权利要求1-2任意一项所述的一种POS机上通过硬件安全芯片保护软件库授权使用的方法,其特征在于,安全芯片序列号为安全芯片出厂时烧有的唯一的芯片序列号。
CN202011523248.8A 2020-12-21 2020-12-21 一种pos机上通过硬件安全芯片保护软件库授权使用的方法 Active CN112559979B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011523248.8A CN112559979B (zh) 2020-12-21 2020-12-21 一种pos机上通过硬件安全芯片保护软件库授权使用的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011523248.8A CN112559979B (zh) 2020-12-21 2020-12-21 一种pos机上通过硬件安全芯片保护软件库授权使用的方法

Publications (2)

Publication Number Publication Date
CN112559979A CN112559979A (zh) 2021-03-26
CN112559979B true CN112559979B (zh) 2022-08-30

Family

ID=75030736

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011523248.8A Active CN112559979B (zh) 2020-12-21 2020-12-21 一种pos机上通过硬件安全芯片保护软件库授权使用的方法

Country Status (1)

Country Link
CN (1) CN112559979B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113901402A (zh) * 2021-09-16 2022-01-07 北京中电华大电子设计有限责任公司 一种芯片授权生产方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101236591B (zh) * 2007-01-31 2011-08-24 联想(北京)有限公司 保证关键数据安全的方法、终端和安全芯片
JP5136012B2 (ja) * 2007-11-16 2013-02-06 富士通株式会社 データ送付方法
CN108243410A (zh) * 2016-12-26 2018-07-03 福建新大陆自动识别技术有限公司 一种外接条码解码加密模块的解码系统的应用方法

Also Published As

Publication number Publication date
CN112559979A (zh) 2021-03-26

Similar Documents

Publication Publication Date Title
CN101350723B (zh) 一种USB Key设备及其实现验证的方法
JP3614057B2 (ja) アクセス資格認証方法および装置ならびに証明用補助情報作成方法および装置
CN110519309B (zh) 数据传输方法、装置、终端、服务器及存储介质
CN109361668A (zh) 一种数据可信传输方法
CN109035519B (zh) 一种生物特征识别装置及方法
CN102217277A (zh) 基于令牌进行认证的方法和系统
CN107733636B (zh) 认证方法以及认证系统
CN111401901B (zh) 生物支付设备的认证方法、装置、计算机设备和存储介质
CN110855426B (zh) 一种用于软件使用授权的方法
CN109598104B (zh) 基于时间戳和秘密鉴权文件的软件授权保护系统及其方法
CN111224784B (zh) 一种基于硬件可信根的角色分离的分布式认证授权方法
US20090119505A1 (en) Transaction method and verification method
JP3580333B2 (ja) 暗号認証機能の装備方法
CN113472793A (zh) 一种基于硬件密码设备的个人数据保护系统
JP6387908B2 (ja) 認証システム
CN110401613A (zh) 一种认证管理方法和相关设备
JP2005157930A (ja) 機密情報処理システムおよびlsi
CN111540093A (zh) 一种门禁控制系统及其控制方法
CN111614684B (zh) 工业设备安全终端认证系统和认证方法
CN112241527A (zh) 密钥生成方法、系统及电子设备
JP3985461B2 (ja) 認証方法、コンテンツ送信側機器、コンテンツ受信側機器、認証システム
JP6581611B2 (ja) 認証鍵共有システムおよび認証鍵共有方法
CN112559979B (zh) 一种pos机上通过硬件安全芯片保护软件库授权使用的方法
KR20070059891A (ko) 어플리케이션 인증 보안 시스템 및 그 인증 보안 방법
CN105933117A (zh) 一种基于tpm秘钥安全存储的数据加解密装置和方法

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