CN114915411A - 一种基于密钥协商方式实现u盾访问控制的方法 - Google Patents
一种基于密钥协商方式实现u盾访问控制的方法 Download PDFInfo
- Publication number
- CN114915411A CN114915411A CN202210321016.7A CN202210321016A CN114915411A CN 114915411 A CN114915411 A CN 114915411A CN 202210321016 A CN202210321016 A CN 202210321016A CN 114915411 A CN114915411 A CN 114915411A
- Authority
- CN
- China
- Prior art keywords
- terminal
- shield
- random number
- ciphertext
- authorization code
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 18
- 238000013475 authorization Methods 0.000 claims description 75
- 238000005516 engineering process Methods 0.000 description 4
- 230000002085 persistent effect Effects 0.000 description 4
- 230000002411 adverse Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- 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/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- 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/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
- H04L9/0897—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
Abstract
本公开揭示基于密钥协商方式实现U盾访问控制的方法,包括如下步骤:S100、调用者使用终端对U盾发起访问请求;S200、终端接收到所述请求后,进行调用服务初始化,检查终端内是否存在终端的密钥对,若不存在,生成密钥对并保存,若已存在则继续;S300、终端生成第一随机数,连同终端的公钥发送给U盾;S400、U盾检查自身内部是否存在与终端匹配的公钥,若存在,则反馈一信号给终端,并等待来自终端的后续访问U盾的任何指令请求;S500、若不存在,则说明终端与U盾两者并未绑定,并缓存终端的公钥,将执行U盾与终端的绑定。如此,本公开能够提供不同于传统Slave模式且更安全的U盾访问控制方案。
Description
技术领域
本公开属于信息安全领域,特别涉及一种基于密钥协商方式实现 U盾访问控制的方法。
背景技术
以硬件实体盾而言,即常见的金融领域采用的U盾而言,由于其便于使用而被广泛使用。硬件U盾往往采用USB接口,目前也出现了采用蓝牙或音频接口的产品。此类U盾的访问控制,遵循Slave 被动模式,通常都是被动接收处理外部的命令,但对于调用方的善恶意图无法有效甄别,因此当被恶意利用时将产生不良后果。
然而,随着数字世界的不断演化,U盾的广泛使用将带来潜在的安全风险。如何不断提高U盾的安全性,始终是亟待解决的问题。
发明内容
鉴于此,本公开揭示了一种基于密钥协商方式实现U盾访问控制的方法,包括如下步骤:
S100、调用者使用终端对U盾发起访问请求;
S200、终端接收到所述请求后,进行调用服务初始化,检查终端内是否存在终端的密钥对,若不存在,生成密钥对并保存,若已存在则继续;
S300、终端生成第一随机数,连同终端的公钥发送给U盾;
S400、U盾检查自身内部是否存在与终端匹配的公钥,若存在,则反馈一信号给终端,并等待来自终端的后续访问U盾的任何指令请求;
S500、若不存在,则说明终端与U盾两者并未绑定,并缓存终端的公钥,将执行U盾与终端的绑定。
优选的,所述步骤S500按照如下步骤执行U盾与终端的绑定:
S501、U盾生成第一授权码,并使用所述终端的公钥分别对所述第一随机数和第一授权码加密,以生成第一授权码密文和第一随机数密文;
S502、U盾将第一授权码密文、第一随机数密文及U盾的公钥发送给终端;
S503、终端收到后,使用终端的私钥对第一授权码密文、第一随机数密文解密,得到第二授权码和第二随机数;并将第二随机数与第一随机数比较:
i.若不相同,则重新开始执行步骤S200至S500;
ii.若相同,则:
使用U盾的公钥对第二授权码加密生成第二授权码密文,同时,
使用终端自身的私钥与U盾公钥以计算第一中间值,和,
使用第二授权码、终端的公钥、U盾的公钥计算得到第一哈希值,以及,
使用第一中间值对第一哈希值进行加密计算,得到第一中间密文;
然后将第一中间密文和第二授权码密文发送给U盾;
S504、U盾收到后,使用U盾自身的私钥解密第二授权码密文得到第三授权码,并将第三授权码与第一授权码比较:
a.若不相同,说明计算错误或中间人攻击,访问终止,并将结果反馈至终端;
b.若相同,则:
使用U盾自身的私钥与终端的公钥计算第二中间值,同时,
使用第一授权码、终端的公钥、U盾的公钥计算得到第二哈希值,和,
使用第二中间值与第二哈希值进行加密计算,得到第二中间密文,并将第一中间密文与第二中间密文进行比较,若相同,则持久化存储终端的公钥,完成二者绑定;若不相同,则说明计算错误或中间人攻击,访问终止,并将结果反馈至终端。
此外,本公开还揭示了一种将U盾与终端进行绑定的方法,包括如下步骤:
S10、终端生成第一随机数,连同终端的公钥发送给U盾;
S20、U盾检查自身内部是否存在与终端匹配的公钥,若存在,则反馈一信号给终端,并等待来自终端的后续访问U盾的任何指令请求;
S30、若不存在,则说明终端与U盾两者并未绑定,并缓存终端的公钥;
S40、U盾生成第一授权码,并使用所述终端的公钥分别对所述第一随机数和第一授权码加密,以生成第一授权码密文和第一随机数密文;
S50、U盾将第一授权码密文、第一随机数密文及U盾的公钥发送给终端;
S60、终端收到后,使用终端的私钥对第一授权码密文、第一随机数密文解密,得到第二授权码和第二随机数;并将第二随机数与第一随机数比较:
i.若不相同,则重新执行步骤S10至S30;
ii.若相同,则:
使用U盾的公钥对第二授权码加密生成第二授权码密文,同时,
使用终端自身的私钥与U盾公钥以计算第一中间值,和,
使用第二授权码、终端的公钥、U盾的公钥计算得到第一哈希值,以及,
使用第一中间值对第一哈希值进行加密计算,得到第一中间密文;
然后将第一中间密文和第二授权码密文发送给U盾;
S70、U盾收到后,使用U盾自身的私钥解密第二授权码密文得到第三授权码,并将第三授权码与第一授权码比较:
a.若不相同,说明计算错误或中间人攻击,访问终止,并将结果反馈至终端;
b.若相同,则:
使用U盾自身的私钥与终端的公钥计算第二中间值,同时,
使用第一授权码、终端的公钥、U盾的公钥计算得到第二哈希值,和,
使用第二中间值与第二哈希值进行加密计算,得到第二中间密文,并将第一中间密文与第二中间密文进行比较,若相同,则持久化存储终端的公钥,完成二者绑定;若不相同,则说明计算错误或中间人攻击,访问终止,并将结果反馈至终端。
优选的,
所述U盾可以时实体盾,也可以数字软件盾。
通过上述技术方案,本公开实现了一种新的U盾访问控制的方案,其基于创新性的密钥协商而非传统的U盾所采用的Slave被动模式,提高了U盾访问控制的安全性。
具体实施方式
为了使本领域技术人员理解本公开所披露的技术方案,下面将结合实施例,对各个实施例的技术方案进行描述,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。本公开所采用的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,“包括”和“具有”以及它们的任何变形,意图在于覆盖且不排他的包含。例如包含了一系列步骤或单元的过程、或方法、或系统、或产品或设备没有限定于已列出的步骤或单元,而是可选的还包括没有列出的步骤或单元,或可选的还包括对于这些过程、方法、系统、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本公开的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其他实施例互斥的独立的或备选的实施例。本领域技术人员可以理解的是,本文所描述的实施例可以与其他实施例相结合。
在一个实施例中,本公开揭示了一种基于密钥协商方式实现U盾访问控制的方法,包括如下步骤:
S100、调用者使用终端对U盾发起访问请求;
S200、终端接收到所述请求后,进行调用服务初始化,检查终端内是否存在终端的密钥对,若不存在,生成密钥对并保存,若已存在则继续;
S300、终端生成第一随机数,连同终端的公钥发送给U盾;
S400、U盾检查自身内部是否存在与终端匹配的公钥,若存在,则反馈一信号给终端,并等待来自终端的后续访问U盾的任何指令请求;
S500、若不存在,则说明终端与U盾两者并未绑定,并缓存终端的公钥,将执行U盾与终端的绑定。
通过上述技术方案,本公开实现了一种新的U盾访问控制的方案,其基于创新性的密钥协商而非传统的U盾所采用的Slave被动模式,提高了U盾访问控制的安全性。能够理解,这建立在U盾与终端是否存在绑定关系,而这是由密钥确认的。
在另一个实施例中,
所述U盾可以是硬件实体盾,也可以数字软件盾。
当其为软件数字盾时,所述数字盾至少包括一个或多个接口以便与数字盾之外的系统或接口(例如与本公开中的终端)进行交互。
能够理解,典型的,硬件实体盾可以是各种具备硬件接口的产品,例如U盘形式的硬件实体盾,或者带USB接口的卡片类一证通,抑或者具有蓝牙接口或音频接口的硬件实体盾。然而,更加需要说明的是,软件数字盾可以是各种格式的数字文件,至于其接口则是采取读写文件的数字接口或其他合适的API技术来实现,从而通过对此类数字文件的访问,实现该软件数字盾与数字盾之外的系统或接口的交互、包括只读、读写等不同访问。显而易见的,硬件实体盾一般比软件数字盾具备更高的安全性,但是,这不妨碍本公开采用现有的数字加密技术或监控技术或其他数字安全技术以提高软件数字盾的安全性。显而易见的,本公开所称的U盾更加泛指,其涵盖了传统的硬件U盾,也纳入了新的内涵:数字盾。事实上,U盾已经成为一种产品名称,不再采用USB接口的蓝牙盾,人们依然习惯称其为U盾。类似的,本公开的终端也可以是虚拟的终端。
在另一个实施例中,所述步骤S500按照如下步骤执行U盾与终端的绑定:
S501、U盾生成第一授权码,并使用所述终端的公钥分别对所述第一随机数和第一授权码加密,以生成第一授权码密文和第一随机数密文;
S502、U盾将第一授权码密文、第一随机数密文及U盾的公钥发送给终端;
S503、终端收到后,使用终端的私钥对第一授权码密文、第一随机数密文解密,得到第二授权码和第二随机数;并将第二随机数与第一随机数比较:
i.若不相同,则重新开始执行步骤S200至S500;
ii.若相同,则:
使用U盾的公钥对第二授权码加密生成第二授权码密文,同时,
使用终端自身的私钥与U盾公钥以计算第一中间值,和,
使用第二授权码、终端的公钥、U盾的公钥计算得到第一哈希值,以及,
使用第一中间值对第一哈希值进行加密计算,得到第一中间密文;
然后将第一中间密文和第二授权码密文发送给U盾;
S504、U盾收到后,使用U盾自身的私钥解密第二授权码密文得到第三授权码,并将第三授权码与第一授权码比较:
a.若不相同,说明计算错误或中间人攻击,访问终止,并将结果反馈至终端;
b.若相同,则:
使用U盾自身的私钥与终端的公钥计算第二中间值,同时,
使用第一授权码、终端的公钥、U盾的公钥计算得到第二哈希值,和,
使用第二中间值与第二哈希值进行加密计算,得到第二中间密文,并将第一中间密文与第二中间密文进行比较,若相同,则持久化存储终端的公钥,完成二者绑定;若不相同,则说明计算错误或中间人攻击,访问终止,并将结果反馈至终端。
能够理解,上述实施例给出了详细的将本公开所称的U盾与终端进行绑定的方案,并考虑到了足够多的情形。
进一步的,在另一个实施例中,本公开还揭示了一种将U盾与终端进行绑定的方法,包括如下步骤:
S10、终端生成第一随机数,连同终端的公钥发送给U盾;
S20、U盾检查自身内部是否存在与终端匹配的公钥,若存在,则反馈一信号给终端,并等待来自终端的后续访问U盾的任何指令请求;
S30、若不存在,则说明终端与U盾两者并未绑定,并缓存终端的公钥;
S40、U盾生成第一授权码,并使用所述终端的公钥分别对所述第一随机数和第一授权码加密,以生成第一授权码密文和第一随机数密文;
S50、U盾将第一授权码密文、第一随机数密文及U盾的公钥发送给终端;
S60、终端收到后,使用终端的私钥对第一授权码密文、第一随机数密文解密,得到第二授权码和第二随机数;并将第二随机数与第一随机数比较:
i.若不相同,则重新执行步骤S10至S30;
ii.若相同,则:
使用U盾的公钥对第二授权码加密生成第二授权码密文,同时,
使用终端自身的私钥与U盾公钥以计算第一中间值,和,
使用第二授权码、终端的公钥、U盾的公钥计算得到第一哈希值,以及,
使用第一中间值对第一哈希值进行加密计算,得到第一中间密文;
然后将第一中间密文和第二授权码密文发送给U盾;
S70、U盾收到后,使用U盾自身的私钥解密第二授权码密文得到第三授权码,并将第三授权码与第一授权码比较:
a.若不相同,说明计算错误或中间人攻击,访问终止,并将结果反馈至终端;
b.若相同,则:
使用U盾自身的私钥与终端的公钥计算第二中间值,同时,
使用第一授权码、终端的公钥、U盾的公钥计算得到第二哈希值,和,
使用第二中间值与第二哈希值进行加密计算,得到第二中间密文,并将第一中间密文与第二中间密文进行比较,若相同,则持久化存储终端的公钥,完成二者绑定;若不相同,则说明计算错误或中间人攻击,访问终止,并将结果反馈至终端。
本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作、模块、单元并不一定是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本公开所提供的几个实施例中,应该理解到,所揭露的技术方案,可实现为对应的功能单元、处理器乃至系统,其中所述系统的各部分既可以位于一个地方,也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,各功能单元可以集成在一个处理单元中,也可以是各个单元单独存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为智能手机、个人数字助理、可穿戴设备、笔记本电脑、平板电脑)执行本公开的各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储单元(ROM,Read-0nly Memory)、随机存取存储单元(RAM,Random AccessMemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质,且不限于USB、蓝牙或音频等不同的接口或传输方式。
以上所述,以上实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述实施例对本公开进行了详细的说明,本领域技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开的各实施例技术方案的范围。
Claims (2)
1.一种基于密钥协商方式实现U盾访问控制的方法,包括如下步骤:
调用者使用终端对U盾发起访问请求;
终端检查终端内是否存在终端的密钥对,若不存在,生成密钥对并保存,若已存在则继续;
终端生成第一随机数,连同终端的公钥发送给U盾;
U盾检查自身内部是否存在与终端匹配的公钥,若存在,则反馈一信号给终端,并等待来自终端的后续访问U盾的任何指令请求;若不存在,则说明终端与U盾两者并未绑定,并缓存终端的公钥,将执行U盾与终端的绑定。
2.如权利要求1所述的方法,其中,优选的,按照如下步骤执行U盾与终端的绑定:
U盾生成第一授权码,并使用所述终端的公钥分别对所述第一随机数和第一授权码加密,以生成第一授权码密文和第一随机数密文;
U盾将第一授权码密文、第一随机数密文及U盾的公钥发送给终端;
终端收到后,使用终端的私钥对第一授权码密文、第一随机数密文解密,得到第二授权码和第二随机数;并将第二随机数与第一随机数比较。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110337186 | 2021-03-29 | ||
CN202110337186X | 2021-03-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114915411A true CN114915411A (zh) | 2022-08-16 |
Family
ID=82763460
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210321016.7A Pending CN114915411A (zh) | 2021-03-29 | 2022-03-28 | 一种基于密钥协商方式实现u盾访问控制的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114915411A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101124767A (zh) * | 2004-12-22 | 2008-02-13 | 皇家飞利浦电子股份有限公司 | 密钥生成以及证明真实性的方法和设备 |
CN102904719A (zh) * | 2011-07-27 | 2013-01-30 | 国民技术股份有限公司 | 一种USB-key的使用方法及USB-key |
US20170161699A1 (en) * | 2014-07-16 | 2017-06-08 | Zte Corporation | Method and Device for Achieving Remote Payment |
CN112073967A (zh) * | 2020-08-14 | 2020-12-11 | 中信银行股份有限公司 | 一种手机盾设备身份证书下载的方法、装置和电子设备 |
-
2022
- 2022-03-28 CN CN202210321016.7A patent/CN114915411A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101124767A (zh) * | 2004-12-22 | 2008-02-13 | 皇家飞利浦电子股份有限公司 | 密钥生成以及证明真实性的方法和设备 |
CN102904719A (zh) * | 2011-07-27 | 2013-01-30 | 国民技术股份有限公司 | 一种USB-key的使用方法及USB-key |
US20170161699A1 (en) * | 2014-07-16 | 2017-06-08 | Zte Corporation | Method and Device for Achieving Remote Payment |
CN112073967A (zh) * | 2020-08-14 | 2020-12-11 | 中信银行股份有限公司 | 一种手机盾设备身份证书下载的方法、装置和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11831630B2 (en) | Using keys with targeted access to the blockchain to verify and authenticate identity | |
EP3400550B1 (en) | Methods and systems for securing data in the public cloud | |
US10250613B2 (en) | Data access method based on cloud computing platform, and user terminal | |
CN109995781B (zh) | 数据的传输方法、装置、介质以及设备 | |
US8885833B2 (en) | One-time recovery credentials for encrypted data access | |
JP2022536645A (ja) | 暗号化された秘密シェアを使用した鍵の回復 | |
CN103942896A (zh) | 一种在atm机上实现无卡取款的系统 | |
CN112507296B (zh) | 一种基于区块链的用户登录验证方法及系统 | |
CN112866228A (zh) | 一种控制web系统越权访问的方法和装置 | |
CN111104691A (zh) | 敏感信息的处理方法、装置、存储介质及设备 | |
CN108574567A (zh) | 隐私文件保护和加密密钥管理系统及方法、信息处理终端 | |
WO2022020686A1 (en) | Master key escrow process | |
CN114996666A (zh) | 加解密神经网络模型的方法、电子设备及存储介质 | |
CN103634789A (zh) | 移动终端和方法 | |
CN103136126A (zh) | 一种可保障数据安全性的数据安全存储设备的实现方法 | |
US20210250175A1 (en) | Methods and apparatuses for storing or invoking blockchain account private keys | |
CN107342862B (zh) | 一种云加端三权分立实现密钥生成和保护的方法及系统 | |
CN107733936A (zh) | 一种移动数据的加密方法 | |
CN108550035B (zh) | 一种跨境网银交易方法及跨境网银系统 | |
WO2023168938A1 (zh) | 支付方法、终端设备、服务器、系统及介质 | |
US20220138760A1 (en) | Dynamic Ledger Address Masking | |
CN114915411A (zh) | 一种基于密钥协商方式实现u盾访问控制的方法 | |
US8826028B1 (en) | Cryptography secure input device | |
KR20230139647A (ko) | 데이터 암호화 및 복호화 시스템, 방법 | |
CN114329390A (zh) | 一种金融机构数据库访问密码保护方法及系统 |
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 |