CN113259093B - 基于身份基加密的层级签名加密***与构建方法 - Google Patents
基于身份基加密的层级签名加密***与构建方法 Download PDFInfo
- Publication number
- CN113259093B CN113259093B CN202110430499.XA CN202110430499A CN113259093B CN 113259093 B CN113259093 B CN 113259093B CN 202110430499 A CN202110430499 A CN 202110430499A CN 113259093 B CN113259093 B CN 113259093B
- Authority
- CN
- China
- Prior art keywords
- identity
- signature
- private key
- encryption
- ciphertext
- 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
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/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- 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/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/72—Signcrypting, i.e. digital signing and encrypting simultaneously
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供了一种基于身份基加密的层级签名加密***与构建方法,本发明可部署于需要企业级的内部协同办公平台如Slack或者隐私保护的区块链平台上;在提供可认证机密通信服务的同时支持个体解密私钥托管;从而允许解密服务外包或机密信息的监管。
Description
技术领域
本发明属于加密技术领域,具体涉及一种基于身份基加密的层级签名加密***与构建方法。
背景技术
本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。
在很多实际应用场景,需要部署签名加密***,即同时提供数字签名算法和公钥加密算法。一个重要且实用的性质是密钥具有层级结构,即***具有惟一公钥,签名私钥作为主密钥,可以向下单向派生出解密私钥,且即使在解密私钥完全暴露的情形下签名的安全性仍得以保持。支持私钥分层的签名加密***相比普通的签名加密***具有以下优势:(1)即同一公钥既可用来加密消息也可用来验证签名,可显著降低系公钥证书使用和公钥存储的开销;(2)天然支持个体私钥的安全托管,使得其在机密信息***的合规性审计和代理计算中有着重要的应用。
据发明人了解,目前尚无支持私钥分层的签名加密***,该课题是应用密码学领域的空白。已有的相关方案或不支持公钥重用,或不支持私钥分层。
发明内容
本发明为了解决上述问题,提出一种基于身份基加密的层级签名加密***与构建方法,本发明可部署于需要企业级的内部协同办公平台如Slack或者隐私保护的区块链平台上;在提供可认证机密通信服务的同时支持个体解密私钥托管;从而允许解密服务外包或机密信息的监管。
根据一些实施例,本发明采用如下技术方案:
一种基于身份基的层级签名加密方法,包括以下步骤:
配置底层身份基的身份空间,***参数和身份id*,基于***参数和身份id*确定公共参数;
生成主公钥和主私钥,将主公钥作为公钥,主私钥作为签名私钥,计算解密私钥;
密文发送方将接收方公钥pk作为主公钥,利用身份基加密的加密算法在身份id*下加密待加密消息m得到密文c;
密文接收方以解密私钥dk解析为身份id*的私钥,利用身份基加密的解密算法对密文c进行解密得到消息m;
签名方将签名私钥sk解析为主私钥msk,利用身份基加密的私钥抽取算法计算签名身份id的私钥sk_id作为消息m的签名sigma;
验证方在签名身份id下加密随机明文得到密文c,以签名作为私钥进行解密,确定签名是否正确。
作为可选择的实施方式,所述接收方公钥pk和签名私钥sk的确定过程包括:基于身份基加密生成主公钥mpk和主私钥msk,确定主公钥mpk为公钥pk,主私钥msk作为签名私钥sk。
作为可选择的实施方式,以签名私钥sk为主私钥计算身份id*的私钥sk_id*作为解密私钥dk。
作为可选择的实施方式,所述身份id*为1{n+1},身份基加密的身份空间为{0,1}{n+1}。
作为可选择的实施方式,所述签名身份id=0||m。
作为可选择的实施方式,如果解密结果与明文相同则反馈签名正确信息;否则反馈签名错误信息。
在本发明中,签名方、验证方、密文发送方和密文接收方都可以使用自己的签名私钥对消息进行签名;其他用户可以使用该用户的公钥加密明文,该用户利用自己的解密私钥对密文进行解密。因此,每个用户都可以扮演多种角色,例如某方可以是签名方的同时,也作为密文发送方。
一种基于身份基的层级签名加密***,包括:
参数配置模块,用于配置底层身份基的身份空间,***参数和身份id*,基于***参数和身份id*确定公共参数;
密钥生成模块,用于生成主公钥和主私钥,将主公钥作为公钥,主私钥作为签名私钥,计算解密私钥;
若干移动终端,其中:
作为密文发送方的终端,用于将接收方公钥pk作为主公钥,利用身份基加密的加密算法在身份id*下加密待加密消息m得到密文c;
作为密文接收方的终端,用于以解密私钥dk解析为身份id*的私钥,利用身份基加密的解密算法对密文c进行解密得到消息m;
作为签名方的终端,用于将签名私钥sk解析为主私钥msk,利用身份基加密的私钥抽取算法计算签名身份id的私钥sk_id作为消息m的签名sigma;
作为验证方的终端,用于在签名身份id下加密随机明文得到密文c,以签名作为私钥进行解密,确定签名是否正确。
所述移动终端可以同时为密文发送方、密文接收方中的一个,以及签名方、验证方中一个。
一种计算机可读存储介质,其中存储有多条指令,所述指令适于由终端设备的处理器加载并执行上述一种基于身份基的层级签名加密方法的步骤。
一种终端设备,包括处理器和计算机可读存储介质,处理器用于实现各指令;计算机可读存储介质用于存储多条指令,所述指令适于由处理器加载并执行上述一种基于身份基的层级签名加密方法的步骤。
与现有技术相比,本发明的有益效果为:
本发明支持私钥分层的签名加密,且既可以支持公钥重用,同时也支持私钥分层。可部署于需要企业级的内部协同办公平台如Slack或者隐私保护的区块链平台上;在提供可认证机密通信服务的同时支持个体解密私钥托管;从而允许解密服务外包或机密信息的监管和审计。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,作详细说明如下。
具体实施方式:
下面利用实施例对本发明作进一步说明。
应该指出,以下详细说明都是例示性的,旨在对本发明提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本发明所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本发明的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
一种层级签名加密方法,包括以下步骤:
令底层IBE的身份空间为{0,1}{n+1};
1.***参数生成Setup
***建立方运行IBE的***参数生成算法得到pp_ibe;令id*=1{n+1};输出公共参数pp=(pp_ibe;id*)。
2.用户密钥生成KeyGen
用户运行IBE的密钥生成算法;生成主公钥mpk和主私钥msk;输出mpk作为公钥pk;msk作为签名私钥sk。
3.解密私钥导出Derive
用户运行IBE的私钥抽取算法;以签名私钥sk为主私钥计算id*的私钥sk_id*作为解密私钥dk。
4.加密Encrypt
该算法由密文发送方运行;以待加密消息m和接收方公钥pk为输入;将pk作为主公钥;运行底层IBE的加密算法在身份id*下加密消息m得到密文c。
5.解密Decrypt
该算法由密文接收方运行;以解密私钥dk和密文c为输入;将dk解析为id*的私钥;运行底层IBE的解密算法对c进行解密得到消息m。
6.签名算法Sign
该算法由签名方运行;以签名私钥sk和待签名消息m∈{0,1}n为输入;令id=0||m;将sk解析为主私钥msk;运行底层IBE的私钥抽取算法计算id的私钥sk_id作为消息m的签名sigma。
7.验证算法Verify
该算法由验证方运行;以公钥pk和待签名消息m∈{0,1}n和签名sigma为输入;令id=0||m;在id下加密随机明文得到密文c;并以签名作为私钥进行解密;如果解密结果与明文相同则输出1表示签名正确;否则输出0表示签名错误。
在本实施例中,以Boneh-FranklinIBE方案为起点;应用上述转换给出了一个具体的层级签名加密方案设计。以下令e是G1×G2→Gt的双线性映射;其中G1、G2和Gt均为阶为素数p的循环群。
1.***参数生成Setup
随机选取G1的生成元记作g1;令id*=1{n+1};选取哈希函数H:{0,1}{n+1}→G2;输出***公开参数pp=(g1;id*;H)。
2.用户密钥生成KeyGen
用户随机选取Zp中的随机元素作为签名私钥sk;计算pk=g1 sk∈G1;输出密钥对(pk;sk)。
3.解密私钥导出Derive
用户以签名私钥sk为输入;输出解密私钥dk=H(id*)sk∈G2
4.加密Encrypt
密文发送方以接收方公钥pk和待加密明文M为输入;随机选取Zp中的随机元素r;计算c1=g1 r∈G1;c2=e(pk;H(id*))r×M∈Gt;输出密文c=(c1;c2)。
5.解密Decrypt
密文接收方以解密私钥dk和密文c为输入;输出明文M=c2/e(c1;dk)。
6.签名Sign
签名方以签名私钥sk和待签名消息m为输入;输出签名sigma=H(0||m)sk∈G2。
7.验证Verify
验证方以公钥pk;消息m和签名sigma为输入;验证e(pk;H(0||m))是否与e(g1;sigma)相等;如果相等则输出1;否则输出0。
上述方案基于双线性群中的判定性Diffie-Hellman困难性假设满足不可区分选择明文安全性。
利用软件编程实现了上述具体方案;在128比特安全强度下;性能测试数据如表1和表2所示。
表1.计算效率(单位:毫秒ms)
方案 | 密钥生成 | 解密私钥导出 | 加密 | 解密 | 签名 | 验签 |
本实施例 | 0.057 | 0.148 | 0.569 | 0.364 | 0.148 | 0.733 |
表2.存储效率(单位:比特bit)
方案 | 公钥 | 签名私钥 | 解密私钥 | 密文 | 签名 |
本实施例 | 381 | 256 | 256 | 1905 | 762 |
可以看出,本发明的具体实例方案高效,各项密码操作均在毫秒级以下,密钥尺寸紧致,密文和签名的带宽开销较小,因此发明可部署于需要企业级的内部协同办公平台如Slack或者隐私保护的区块链平台上;在提供可认证机密通信服务的同时支持个体解密私钥托管;从而允许解密服务外包或机密信息的监管审计。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
上述虽然结合实施例对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
Claims (6)
1.一种基于身份基的层级签名加密方法,其特征是:包括以下步骤:
***建立方运行IBE的***参数生成算法得到参数pp_ibe;令id* = 1{n+1};输出公共参数pp=(pp_ibe;id*);
基于身份基加密生成主公钥mpk和主私钥msk,确定主公钥mpk为公钥pk,主私钥msk作为签名私钥sk,计算身份id*的私钥作为解密私钥;
密文发送方以待加密消息m和接收方公钥pk为输入,将接收方公钥pk作为主公钥,利用身份基加密的加密算法在身份id*下加密待加密消息m得到密文c;
密文接收方以解密私钥dk和密文c为输入,将解密私钥dk解析为身份id*的私钥,利用身份基加密的解密算法对密文c进行解密得到消息m;
签名方将签名私钥sk解析为主私钥msk,利用身份基加密的私钥抽取算法计算签名身份id的私钥sk_id作为消息m的签名sigma;
验证方在签名身份id下加密随机明文得到密文c,以签名作为私钥进行解密,确定签名是否正确。
2.如权利要求1所述的一种基于身份基的层级签名加密方法,其特征是:所述身份id*为1{n+1},身份基加密的身份空间为{0,1}{n+1}。
3.如权利要求1所述的一种基于身份基的层级签名加密方法,其特征是:所述签名身份id=0||m。
4.如权利要求1所述的一种基于身份基的层级签名加密方法,其特征是:解密结果与明文相同则反馈签名正确信息;否则反馈签名错误信息。
5.一种计算机可读存储介质,其特征是:其中存储有多条指令,所述指令适于由终端设备的处理器加载并执行权利要求1-4中任一项所述的一种基于身份基的层级签名加密方法的步骤。
6.一种终端设备,其特征是:包括处理器和计算机可读存储介质,处理器用于实现各指令;计算机可读存储介质用于存储多条指令,所述指令适于由处理器加载并执行权利要求1-4中任一项所述的一种基于身份基的层级签名加密方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110430499.XA CN113259093B (zh) | 2021-04-21 | 2021-04-21 | 基于身份基加密的层级签名加密***与构建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110430499.XA CN113259093B (zh) | 2021-04-21 | 2021-04-21 | 基于身份基加密的层级签名加密***与构建方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113259093A CN113259093A (zh) | 2021-08-13 |
CN113259093B true CN113259093B (zh) | 2022-03-25 |
Family
ID=77221971
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110430499.XA Active CN113259093B (zh) | 2021-04-21 | 2021-04-21 | 基于身份基加密的层级签名加密***与构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113259093B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1633774A (zh) * | 2002-03-21 | 2005-06-29 | 美国多科摩通讯研究所股份有限公司 | 基于身份的分级加密与签名方案 |
CN103354498A (zh) * | 2013-05-31 | 2013-10-16 | 北京鹏宇成软件技术有限公司 | 一种基于身份的文件加密传输方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1262087C (zh) * | 2005-01-14 | 2006-06-28 | 南相浩 | 基于标识的密钥产生方法 |
CN104796260B (zh) * | 2015-04-03 | 2018-03-02 | 北京航空航天大学 | 一种满足前向安全的短密文身份基加密方法 |
CN110572268B (zh) * | 2019-09-12 | 2021-06-15 | 腾讯科技(深圳)有限公司 | 一种匿名认证方法和装置 |
CN112436942A (zh) * | 2020-07-08 | 2021-03-02 | 电子科技大学 | 一种属性基/身份基异构的可撤销签密方法 |
-
2021
- 2021-04-21 CN CN202110430499.XA patent/CN113259093B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1633774A (zh) * | 2002-03-21 | 2005-06-29 | 美国多科摩通讯研究所股份有限公司 | 基于身份的分级加密与签名方案 |
CN103354498A (zh) * | 2013-05-31 | 2013-10-16 | 北京鹏宇成软件技术有限公司 | 一种基于身份的文件加密传输方法 |
Non-Patent Citations (4)
Title |
---|
Chosen-ciphertext security from identity based Encryption;Dan Boneh etal.;《SIAM Journal on Computing》;20030613;第36卷(第5期);正文第3-7节 * |
On the joint security of encryption and signature, revisited;Kenneth G. Paterson etal.;《ASIACRYPT 2011:Advances in Cryptology》;20110912;正文第2-7节以及附录内容 * |
Programmable Hash Functions from Lattices:Short Signatures and IBEs with Small Key Sizes;Jiang Zhang etal.;《CRYPTO 2016 Advances in Cryptology – CRYPTO 2016》;20160721;全文 * |
双重***加密研究:获得完全安全的IBE及其扩展;罗颂 等;《国防科技大学学报》;20120430;第34卷(第2期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113259093A (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111740828B (zh) | 一种密钥生成方法以及装置、设备、加解密方法 | |
US8429408B2 (en) | Masking the output of random number generators in key generation protocols | |
US10673625B1 (en) | Efficient identity-based and certificateless cryptosystems | |
CN110830236B (zh) | 基于全域哈希的身份基加密方法 | |
US11870891B2 (en) | Certificateless public key encryption using pairings | |
CN108173639A (zh) | 一种基于sm9签名算法的两方合作签名方法 | |
CN111314089A (zh) | 一种基于sm2的两方协同签名方法及解密方法 | |
Seo et al. | Revocable identity-based cryptosystem revisited: Security models and constructions | |
US20150043735A1 (en) | Re-encrypted data verification program, re-encryption apparatus and re-encryption system | |
US9813386B2 (en) | Cooperation service providing system and server apparatus | |
CN104767612A (zh) | 一种从无证书环境到公钥基础设施环境的签密方法 | |
CN110535626B (zh) | 基于身份的量子通信服务站保密通信方法和*** | |
CN113271209B (zh) | 一种基于非交互式零知识证明的可托管公钥加密***及方法 | |
US20180278417A1 (en) | Apparatus and method for generating key, and apparatus and method for encryption | |
Hasan et al. | Secure lightweight ECC-based protocol for multi-agent IoT systems | |
EP3232603B1 (en) | Key-exchange method, key-exchange system, terminal device, and program | |
CN106850233B (zh) | 一种多机构可外包的电子合同签署和管理方法 | |
CN113468582A (zh) | 一种抗量子计算加密通信方法 | |
CN107682158B (zh) | 一种可托管的认证加密方法 | |
CN113645235A (zh) | 分布式数据加解密***及加解密方法 | |
GB2543359A (en) | Methods and apparatus for secure communication | |
CA2742530C (en) | Masking the output of random number generators in key generation protocols | |
CN110401524B (zh) | 一种借助同态加密的包含秘密的数的协同生成方法及*** | |
WO2020115266A1 (en) | Methods and devices for secured identity-based encryption systems with two trusted centers | |
CN113259093B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |