CN107276749A - 一种代理重指定验证者签密方法 - Google Patents
一种代理重指定验证者签密方法 Download PDFInfo
- Publication number
- CN107276749A CN107276749A CN201710407787.7A CN201710407787A CN107276749A CN 107276749 A CN107276749 A CN 107276749A CN 201710407787 A CN201710407787 A CN 201710407787A CN 107276749 A CN107276749 A CN 107276749A
- Authority
- CN
- China
- Prior art keywords
- content
- label
- ciphertext
- key
- consumption side
- 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 26
- 230000009897 systematic effect Effects 0.000 claims abstract description 8
- 238000012795 verification Methods 0.000 claims abstract description 8
- 238000004422 calculation algorithm Methods 0.000 claims description 16
- 238000013507 mapping Methods 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000012790 confirmation Methods 0.000 claims description 3
- 238000010200 validation analysis Methods 0.000 claims description 3
- 125000004122 cyclic group Chemical group 0.000 claims description 2
- 239000000203 mixture Substances 0.000 claims description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000004088 simulation 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0435—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0478—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0884—Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- 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)
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及一种代理重指定验证者签密方法,其实现步骤包括:生成系统参数和签密密钥对;内容提供方对内容进行对称加密,再对内容和对称加密密钥进行签密,生成第一级别签密密文,并把此签密密文与对称加密密文上传到服务提供方;内容消费方同内容提供方交互,内容提供方对内容消费方进行授权;内容消费方向服务提供方请求指定的内容,服务提供方把指定内容进行代理重签密,生成第二级别签密密文,并把对称加密密文和第二级别签密密文提供给内容消费方,内容消费方再对第二级别签密密文进行解密和完整性验证,并把对称加密密文进行解密,得到原文;内容消费方可以使用其签密私钥单独生成关于所获取内容的可验证的第二级别签密密文。
Description
技术领域
本发明涉及信息安全领域,特别是涉及一种代理重指定验证者签密方法。
背景技术
Jakobsson在1996年提出了指定验证者签名的概念。指定验证者签名除了一般的签名算法和验证算法之外,还包括有一个模拟算法。指定的验证者通过模拟算法可以模拟一个数字签名,这个模拟的数字签名也可以通过验证算法的验证。这意味者除了指定的验证者之外,其它任何实体即使能够通过验证算法验证一个数字签名,也无法确认这个数字签名是由签名者生成的,还是由指定验证者生成的。
指定验证者签名,在提出之后受到了很大的关注,并发展出了强指定验证者签名,多指定验证者签名等概念,满足不同的应用环境。然而,随着云计算技术的发展,软件的发行商可以利用云存储服务,把软件放在云服务器上。购买者只需要获得授权,就可以获取软件发行商存储在云服务器中的软件。在这种情况下,软件发行商如果希望使用指定验证者签名技术,就需要为每一个购买软件的购买者计算一次指定验证者签名,然后上传到云服务器,每一个购买者下载软件和对应的指定验证者签名。然而这种方法显然效率比较低,没有利用到云计算的优势。理想的情况应该是一份软件只有一个签名,在需要时由云服务器生成指定验证者签名,提供给购买者。但是目前并没有这样的方法。
另外,考虑到云计算中的终端大都是智能手机,能量有限,所以希望能够将签名方案与代理重加密方案结合,设计出具有实际应用价值的签密方案,在效率上力求改进。
由此我们得出结论,虽然指定验证者签名和代理重加密是一个比较早的概念,并且受到了很多关注,但是适应于云环境的指定验证者签密尚不存在。
发明内容
本发明的目的在于提供一种代理重指定验证者签密方法,解决背景技术中不存在适用于云环境的指定验证者签密的问题。
本发明提出一种代理重指定验证者签密方法,该方法涉及内容提供方、内容消费方、服务提供方三个主体组成的系统,其特征在于包括以下步骤:
S1、生成系统参数和签密密钥对;
S2、内容提供方对内容进行对称加密,再对内容和对称加密密钥进行签密,生成第一级别签密密文,并把对称加密密文和第一级别签密密文上传到服务提供方;
S3、内容消费方同内容提供方交互,内容提供方对内容消费方进行授权;
S4、内容消费方向服务提供方请求指定的内容,服务提供方把指定内容进行代理重签密,生成第二级别签密密文,并把对称加密密文和第二级别签密密文提供给内容消费方,内容消费方再使用内容提供方的签密公钥对第二级别签密密文进行解密和完整性验证,并把对称加密密文进行解密,得到原文;
S5、内容消费方使用其签密私钥单独生成关于所获取内容的可验证的第二级别签密密文。
步骤S1具体包括:
(1a)服务提供方选择有效的双线性对映射其中和是阶数为素数q的循环群,的生成元为g;
(1b)服务提供方选择对称加密体制,包括密钥生成算法Gen、加密算法E′和解密算法E′-1;
(1c)服务提供方选择对称加密算法E和解密算法E-1,确保其明文空间和密文空间都在群中,密钥空间为所述为正整数集合{1,2,3,,,q-1};
(1d)服务提供方选择四个哈希函数 其中{0,1}*是任意长0、1比特串的输入,{0,1}256是256比特的0、1比特串的输出;
(1e)内容提供方从中选择一个随机元素作为自身的签密私钥;
(1f)内容提供方计算并将yS作为自身的签密公钥;
(1g)内容消费方从中选择一个随机元素作为自身的签密私钥;
(1h)内容消费方计算并将yV作为自身的签密公钥。
步骤S2具体包括:
(2a)内容提供方生成内容m的元数据m_desc,作为内容m的描述字段;
(2b)内容提供方采用密钥生成算法Gen生成对称加密密钥sk;
(2c)内容提供方计算对称加密密文C=E′sk(m),其中E′sk(m)指采用加密算法E',以sk为密钥,对内容m进行对称加密;
(2d)内容提供方从中选择三个随机元素
(2e)内容提供方计算M=(m,sk),其中(m,sk)指m与sk的连接;
(2f)内容提供方计算t1=gr,t3=e(g,g)t,t4=e(g,g)k,其中e(g,g)是指采用双线性对映射将群中的两个元素g映射到群中的值,H4(t4)是指采用哈希函数H4对输入的内容t4进行哈希变换所得到的哈希值;
(2g)内容提供方把第一级别的加密密文设置为c1=(t2,t5);
(2h)内容提供方计算t6=H2(M,ys,t3),tk=H3(M,t6);
(2i)内容提供方计算δ2=t1H1(t3),
(2j)内容提供方把第一级别的数字签名设置为δI=(δ1,δ2,δ3,δ4),把第一级别的签密密文设置为S1=(c1,δI),并把内容m的元数据m-desc、对称加密密文C、内容提供方的公钥yS信息、第一级别的签密密文S1,上传到服务提供方。
步骤S3具体包括:
(3a)内容消费方获得内容提供方的公开密钥yS;
(3b)内容消费方计算自身私钥的逆元
(3c)内容消费方计算并把发送给内容提供方;
(3d)内容提供方验证等式是否成立,如果不成立就停止执行协议,否则计算其中是内容提供方自身私钥的逆元;
(3e)内容提供方设置重签密密钥为并上传内容消费方公钥yV的信息、内容提供方公钥yS的信息和重签密密钥给服务提供方。
步骤S4具体包括:
(4a)内容消费方向服务提供方指定需要获取内容的元数据m_desc和自身公钥yV的信息;
(4b)服务提供方用公钥yV的信息检索内容提供方公钥yS的信息和重签密密钥再使用内容提供方公钥yS的信息检索内容的元数据m_desc,如果能检索到,则确认拥有该内容消费方关于指定内容的重签密密钥,算法继续执行,否则终止操作;
(4c)服务提供方从中选择一个随机元素
(4d)服务提供方找到指定内容的第一级别的签密密文S1,解析为(c1,δI),并把第一级别的加密密文c1解析为(t2,t5),第一级别的签名δI解析为(δ1,δ2,δ3,δ4);
(4e)服务提供方计算t′2=e(t2,yR),生成第二级别的加密密文c2=(t′2,t5);
(4f)服务提供方计算δ′1=e(yR,δ1),
(4g)服务提供方生成第二级别的数字签名δII=(δ′1,δ2,δ31,δ32,δ33,δ4);
(4h)服务提供方把第二级别的签密密文设置为S2=(c2,δII),并把对称加密密文C和第二级别的签密密文S2提供给内容消费方;
(4i)内容消费方收到对称加密密文C和第二级别的签密密文S2,把S2解析为(c2,δII),把c2解析为(t′2,t5),把δII解析为(δ′1,δ2,δ31,δ32,δ33,δ4);
(4j)内容消费方使用自身私钥的逆元计算
(4k)内容消费方解密对称加密密文
(4l)内容消费方计算M′=(m′,sk′);
(4m)内容消费方使用自身私钥的逆元计算t6=H2(M′,ys,t3),tk=H3(M′,t6),t1=δ2(H1(t3))-1;
(4n)内容消费方验证三个等式,e(g,δ4)=e(ys,t6(Etk(t1))-1)、e(δ31,g)=e(δ32,t1)和e(δ32,g)=e(yv,δ33),如果三个等式都成立,则验证第二级别签密密文通过,内容消费方认为对称加密密文C来自内容提供方且解密正确,否则第二级别签密密文验证失败,内容消费方认为对称加密密文C不完整或者解密错误或者不是来自于自己希望的内容提供方。
步骤S5具体包括:
(5a)内容消费方采用密钥生成算法Gen生成对称加密密钥sk′;
(5b)内容消费方计算M′=(m′,sk′),其中m′是内容消费方所获取的内容;
(5c)内容消费方从中选择四个随机元素
(5d)内容消费方计算t3=e(g,g)t,t4=e(g,g)k,
(5e)内容消费方设置第二级别的加密密文为c′2=(t2,t5);
(5f)内容消费方计算t6=H2(M′,ys,t3),tk=H3(M′,t6),
(5g)内容消费方计算δ2=t1H1(t3),
(5h)内容消费方设置第二级别的数字签名为δ′II=(δ1,δ2,δ31,δ32,δ33,δ4),设置第二级别的签密密文为S2=(c′2,δ′II),该签密密文按照步骤S4进行解密和完整性验证。
特别地,本专利中所应用的数学表达式中的运算符号均具有本领域公知的含义,书写形式相同的的数学表达式具有同样的运算方法,不会造成理解错误。
本发明具有以下优点:
首先,内容提供方只需要向服务提供方提交一份对称加密后的内容密文和一个第一级别的签密密文,不同的内容消费者却可以获得不同的第二级别签密密文;其次,不同的内容消费者都可以模拟一个有效的第二级别的签密密文,因而该签密方案确实是指定验证者签密,得到了适合云计算技术的指定验证者签密方法;再次,内容消费方需要先向内容提供方申请,才可能获得有第二级别签密密文的内容,对内容提供方而言增加了一次验证内容消费者的机会,可以根据不同的内容消费者采取不同的措施;再次,内容提供方向服务提供方上传的是对称加密后的密文而非直接上传内容本身,服务提供方无法获取内容原文,增加了安全性;最后,本签密方案可一次性实现对机密性和完整性的双重保证,提高了运算效率。总的来看,本发明提供了一种有效灵活的代理重指定验证者签密方法。
本发明所提供的代理重指定验证者签密方法,可以用于基于云中心的内容分享或者内容分发场景,保护分发人的隐私,同时保证内容的机密性和完整性以及对特定分享或分发对象的可验证性。
附图说明
图1一种代理重指定验证者签密方法框架;
具体实施方式
该方法包括内容提供方、服务提供方和内容消费方这样三个部分。具体实施时首先服务提供方生成公开参数,内容提供方和消费方向服务提供方注册时获得该服务的公开参数,分别生成自己的公私钥对,公钥公开,私钥妥善保存。之后内容提供方运行对称加密体制的密钥生成算法生成对称加密密钥,将特定内容进行对称加密,并生成第一级别的签密密文,随对称加密密文上传到服务提供方。当内容消费方向对某个内容感兴趣时,会通过电子邮件或者即时通讯等方式向内容提供方发起请求;内容提供方验证内容消费方,生成重签密密钥,把重签密密钥上传到服务提供方,并返回响应消息给内容消费方。内容消费方向服务提供方请求内容,服务提供方检查授权情况,允许的话就生成第二级别的签密密文,并返回给内容消费者;最后内容消费者可以对第二级别的签密密文进行解密和完整性验证。下面以云存储平台作为服务提供方,Alice作为内容提供方,Bob作为内容消费方,来说明具体实施过程。
实施例1
1、生成系统参数和签密密钥对的步骤包括:
1)云存储平台选择PBC软件库附带提供的A类型参数,其中素数阶q的取值为8780710799663312522437781984754049815806883199414208211028653399266475630880222957078625179422662221423155858769582317459277713367317481324925129998224791,生成元g是群中的随机元素,对运算由PBC库所提供的“pairing”运算提供;
2)云存储平台选择AES作为内容的对称加密体制,包括密钥生成算法Gen、加密算法E′和解密算法E′-1,其对称加密密钥为256比特的随机0,1比特串;
3)云存储平台选择Tian等人在ACISP 2012年论文“A short non-delegatablestrong designated verifier signature”中附录部分所披露的方法设置明文空间和密文空间都在群中的对称加密运算和解密运算;
4)云存储平台选择SHA-256算法做哈希函数,设置H1函数的初始消息为“functionone”,H2函数的初始消息为“function two”,H3函数的初始消息为“function three”,H4函数的初始消息为“function four”,所有涉及到的群元素统一按照其二进制表示作为0、1字符串输入哈希函数中;
5)Alice向云存储平台注册,获得云存储平台的系统参数;
6)Alice从中选择一个随机元素作为自身的签密私钥;
7)Alice计算并将yS作为自身的签密公钥。Alice可以把公钥发布到某个证书中心的数据库中,或者通过PGP的方式发布到某个公开服务器中,或者直接发布到该云存储平台关于该用户的个人信息表中;
8)Bob向云存储平台注册,获得云存储平台的系统参数;
9)Bob从中选择一个随机元素作为自身的签密私钥;
10)Bob计算并将yV作为自身的签密公钥。Bob可以把公钥发布到某个证书中心的数据库中,或者通过PGP的方式发布到某个公开服务器中,或者直接发布到该云存储平台关于该用户的个人信息表中。
2、Alice对内容进行对称加密,再对内容和对称加密密钥进行签密,生成第一级别签密密文,并把对称加密密文和第一级别签密密文上传到云存储平台的步骤包括:
1)Alice生成内容m的元数据m_desc,作为内容m的描述字段;
2)Alice采用密钥生成算法Gen生成对称加密密钥sk;
3)Alice计算对称加密密文C=E′sk(m),其中Es'k(m)指采用加密算法E',以sk为密钥,对内容m进行对称加密;
4)Alice从中选择三个随机元素
5)Alice计算计算M=(m,sk),其中(m,sk)指m与sk的连接;
6)Alice计算t1=gr,t3=e(g,g)t,t4=e(g,g)k,其中e(g,g)是指采用双线性对映射将群中的两个元素g映射到群中的值,H4(t4)是指采用哈希函数H4对输入的内容t4进行哈希变换所得到的哈希值;
7)Alice把第一级别的加密密文设置为c1=(t2,t5);
8)Alice计算t6=H2(M,ys,t3),tk=H3(M,t6);
9)Alice计算δ2=t1H1(t3),
10)Alice把第一级别的数字签名设置为δI=(δ1,δ2,δ3,δ4),把第一级别的签密密文设置为S1=(c1,δI),并把内容m的元数据m_desc、对称加密密文C、内容提供方的公钥yS信息、第一级别的签密密文S1,通过互联网,上传到云储存平台。
3、Bob同Alice交互,Alice对Bob进行授权的步骤包括:
1)Bob获得Alice真实的公开密钥yS,这可以通过CA中心获得,也可以通过云存储平台关于个人公开信息字段中的公钥字段获得,也可以通过某个公开的pgp服务器获得,例如MIT PGP密钥服务器;
2)Bob计算自身私钥的逆元
3)Bob计算并把发送给Alice;
4)Alice验证等式是否成立,如果不成立就停止执行协议,否则计算其中是Alice自身私钥的逆元;
5)Alice设置重签密密钥为计算Bob公钥yV的SHA256杂凑值作为该公钥的信息,计算Alice公钥yS的SHA256杂凑值作为该公钥的信息,并将这两个杂凑值和重签密密钥通过互联网,上传到云储存平台。之后Alice向Bob发送确认消息。
4、Bob向云存储平台请求指定的内容,云存储平台确认拥有Bob关于指定内容的重签密密钥,就把指定内容进行代理重签密,生成第二级别的签密密文,并把对称加密密文和第二级别签密密文提供给Bob,Bob再使用Alice的签密公钥对第二级别签密密文进行解密和完整性验证,并把对称加密密文进行解密,得到原文的步骤包括:
1)Bob向云存储平台指定需要获取内容的元数据m_desc和自身公钥yV的SHA256杂凑值;
2)云存储平台用杂凑值检索内容提供方公钥的杂凑值和重签密密钥之后使用内容提供方公钥的杂凑值检索内容的元数据m_desc,如果能检索到,则确认拥有Bob关于指定内容的重签密密钥,算法继续执行,否则终止操作;
3)云存储平台从中选择一个随机元素
4)云存储平台找到指定内容的第一级别的签密密文S1,解析为(c1,δI),并把第一级别的加密密文c1解析为(t2,t5),第一级别的签名δI解析为(δ1,δ2,δ3,δ4);
5)云存储平台计算t′2=e(t2,yR),生成第二级别的加密密文c2=(t′2,t5);
6)云存储平台计算δ′1=e(yR,δ1),
7)云存储平台生成第二级别的数字签名δII=(δ′1,δ2,δ31,δ32,δ33,δ4);
8)云存储平台把第二级别的签密密文设置为S2=(c2,δII),并把对称加密密文C和第二级别的签密密文S2提供给Bob;
9)Bob收到对称加密密文C和第二级别的签密密文S2,把S2解析为(c2,δII),把c2解析为(t′2,t5),把δII解析为(δ′1,δ2,δ31,δ32,δ33,δ4);
10)Bob使用自身私钥的逆元计算
11)Bob解密对称加密密文
12)Bob计算M′=(m′,sk′);
13)Bob使用自身私钥的逆元计算t6=H2(M′,ys,t3),tk=H3(M′,t6),t1=δ2(H1(t3))-1;
14)Bob验证三个等式,e(g,δ4)=e(ys,t6(Etk(t1))-1)、e(δ31,g)=e(δ32,t1)和e(δ32,g)=e(yv,δ33),如果三个等式都成立,则验证第二级别签密密文通过,Bob认为对称加密密文C来自Alice且解密正确,否则第二级别签密密文验证失败,Bob认为对称加密密文C不完整或者解密错误或者不是来自于Alice。
5、Bob可以使用其签密私钥单独生成关于所获取内容的可验证的第二级别签密密文的步骤包括:
1)Bob采用密钥生成算法Gen生成对称加密密钥sk′;
2)Bob计算M′=(m′,sk′),其中m′是Bob所获取的内容;
3)Bob从中选择四个随机元素
4)Bob计算t3=e(g,g)t,t4=e(g,g)k,
5)Bob设置第二级别的加密密文为c′2=(t2,t5);
6)Bob计算t6=H2(M′,ys,t3),tk=H3(M′,t6),
7)Bob计算δ2=t1H1(t3),δ33=gt′;
8)Bob设置第二级别的数字签名为δ′II=(δ1,δ2,δ31,δ32,δ33,δ4),设置第二级别的签密密文为S2=(c′2,δ′II)。
实施例2
实施例2与实施例1相同,除了系统参数采取了其它有效的双线性对映射,例如PBC库中其它类型的参数。
实施例3
实施例3与实施例1相同,除了系统参数采取了其它有效的哈希函数,例如SHA384等。
Claims (6)
1.一种代理重指定验证者签密方法,该方法涉及内容提供方、内容消费方、服务提供方三个主体组成的系统,其特征在于包括以下步骤:
(S1)生成系统参数和签密密钥对;
(S2)内容提供方对内容进行对称加密,再对内容和对称加密密钥进行签密,生成第一级别签密密文,并把对称加密密文和第一级别签密密文上传到服务提供方;
(S3)内容消费方同内容提供方交互,内容提供方对内容消费方进行授权;
(S4)内容消费方向服务提供方请求指定的内容,服务提供方把指定内容进行代理重签密,生成第二级别签密密文,并把对称加密密文和第二级别签密密文提供给内容消费方,内容消费方再使用内容提供方的签密公钥对第二级别签密密文进行解密和完整性验证,并把对称加密密文进行解密,得到原文;
(S5)内容消费方使用其签密私钥单独生成关于所获取内容的可验证的第二级别签密密文。
2.根据权利要求1所述的一种代理重指定验证者签密方法,其特征在于,所述的步骤(S1)具体包括:
(1a)服务提供方选择有效的双线性对映射其中和是阶数为素数q的循环群,的生成元为g;
(1b)服务提供方选择对称加密体制,包括密钥生成算法Gen、加密算法E′和解密算法E′-1;
(1c)服务提供方选择对称加密算法E和解密算法E-1,确保其明文空间和密文空间都在群中,密钥空间为所述为正整数集合{1,2,3,,,q-1};
(1d)服务提供方选择四个哈希函数 其中{0,1}*是任意长0、1比特串的输入,{0,1}256是256比特的0、1比特串的输出;
(1e)内容提供方从中选择一个随机元素作为自身的签密私钥;
(1f)内容提供方计算并将yS作为自身的签密公钥;
(1g)内容消费方从中选择一个随机元素作为自身的签密私钥;
(1h)内容消费方计算并将yV作为自身的签密公钥。
3.根据权利要求1所述的一种代理重指定验证者签密方法,其特征在于,所述步骤(S2)具体包括:
(2a)内容提供方生成内容m的元数据m_desc,作为内容m的描述字段;
(2b)内容提供方采用密钥生成算法Gen生成对称加密密钥sk;
(2c)内容提供方计算对称加密密文C=E′sk(m),其中E′sk(m)指采用加密算法E',以sk为密钥,对内容m进行对称加密;
(2d)内容提供方从中选择三个随机元素
(2e)内容提供方计算M=(m,sk),其中(m,sk)指m与sk的连接;
(2f)内容提供方计算t1=gr,t3=e(g,g)t,t4=e(g,g)k,其中e(g,g)是指采用双线性对映射将群中的两个元素g映射到群中的值,H4(t4)是指采用哈希函数H4对输入的内容t4进行哈希变换所得到的哈希值;
(2g)内容提供方把第一级别的加密密文设置为c1=(t2,t5);
(2h)内容提供方计算t6=H2(M,ys,t3),tk=H3(M,t6);
(2i)内容提供方计算δ2=t1H1(t3),
(2j)内容提供方把第一级别的数字签名设置为δI=(δ1,δ2,δ3,δ4),把第一级别的签密密文设置为S1=(c1,δI),并把内容m的元数据m-desc、对称加密密文C、内容提供方的公钥yS信息、第一级别的签密密文S1,上传到服务提供方。
4.根据权利要求1所述的一种代理重指定验证者签密方法,其特征在于,所述的步骤(S3)包括:
(3a)内容消费方获得内容提供方的公开密钥yS;
(3b)内容消费方计算自身私钥的逆元
(3c)内容消费方计算并把发送给内容提供方;
(3d)内容提供方验证等式是否成立,如果不成立就停止执行协议,否则计算其中是内容提供方自身私钥的逆元;
(3e)内容提供方设置重签密密钥为并上传内容消费方公钥yV的信息、内容提供方公钥yS的信息和重签密密钥给服务提供方。
5.根据权利要求1所述的一种代理重指定验证者签密方法,其特征在于,所述的步骤(S4)包括:
(4a)内容消费方向服务提供方指定需要获取内容的元数据m_desc和自身公钥yV的信息;
(4b)服务提供方用公钥yV的信息检索内容提供方公钥yS的信息和重签密密钥再使用内容提供方公钥yS的信息检索内容的元数据m_desc,如果能检索到,则确认拥有该内容消费方关于指定内容的重签密密钥,算法继续执行,否则终止操作;
(4c)服务提供方从中选择一个随机元素
(4d)服务提供方找到指定内容的第一级别的签密密文S1,解析为(c1,δI),并把第一级别的加密密文c1解析为(t2,t5),第一级别的签名δI解析为(δ1,δ2,δ3,δ4);
(4e)服务提供方计算t′2=e(t2,yR),生成第二级别的加密密文c2=(t′2,t5);
(4f)服务提供方计算δ′1=e(yR,δ1),
(4g)服务提供方生成第二级别的数字签名δII=(δ′1,δ2,δ31,δ32,δ33,δ4);
(4h)服务提供方把第二级别的签密密文设置为S2=(c2,δII),并把对称加密密文C和第二级别的签密密文S2提供给内容消费方;
(4i)内容消费方收到对称加密密文C和第二级别的签密密文S2,把S2解析为(c2,δII),把c2解析为(t′2,t5),把δII解析为(δ′1,δ2,δ31,δ32,δ33,δ4);
(4j)内容消费方使用自身私钥的逆元计算
(4k)内容消费方解密对称加密密文
(4l)内容消费方计算M′=(m′,sk′);
(4m)内容消费方使用自身私钥的逆元计算t6=H2(M′,ys,t3),tk=H3(M′,t6),t1=δ2(H1(t3))-1;
(4n)内容消费方验证三个等式,e(g,δ4)=e(ys,t6(Etk(t1))-1)、e(δ31,g)=e(δ32,t1)和e(δ32,g)=e(yv,δ33),如果三个等式都成立,则验证第二级别签密密文通过,内容消费方认为对称加密密文C来自内容提供方且解密正确,否则第二级别签密密文验证失败,内容消费方认为对称加密密文C不完整或者解密错误或者不是来自于自己希望的内容提供方。
6.根据权利要求1所述的一种代理重指定验证者签名方法,其特征在于,所述的步骤(S5)包括:
(5a)内容消费方采用密钥生成算法Gen生成对称加密密钥sk′;
(5b)内容消费方计算M′=(m′,sk′),其中m′是内容消费方所获取的内容;
(5c)内容消费方从中选择四个随机元素
(5d)内容消费方计算t3=e(g,g)t,t4=e(g,g)k,
(5e)内容消费方设置第二级别的加密密文为c′2=(t2,t5);
(5f)内容消费方计算t6=H2(M′,ys,t3),tk=H3(M′,t6),
(5g)内容消费方计算δ2=t1H1(t3),δ33=gt′;
(5h)内容消费方设置第二级别的数字签名为δ′II=(δ1,δ2,δ31,δ32,δ33,δ4),设置第二级别的签密密文为S2=(c′2,δ′II),该签密密文按照步骤(S4)进行解密和完整性验证。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710407787.7A CN107276749A (zh) | 2017-06-02 | 2017-06-02 | 一种代理重指定验证者签密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710407787.7A CN107276749A (zh) | 2017-06-02 | 2017-06-02 | 一种代理重指定验证者签密方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107276749A true CN107276749A (zh) | 2017-10-20 |
Family
ID=60064887
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710407787.7A Pending CN107276749A (zh) | 2017-06-02 | 2017-06-02 | 一种代理重指定验证者签密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107276749A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110958116A (zh) * | 2019-12-06 | 2020-04-03 | 中山大学 | 一种基于格签名的多副本云数据完整性审计方法 |
CN111600700A (zh) * | 2020-04-03 | 2020-08-28 | 中电科鹏跃电子科技有限公司 | 一种基于随机函数的非线性映射保序加密方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102685148A (zh) * | 2012-05-31 | 2012-09-19 | 清华大学 | 一种云存储环境下的安全网盘系统的实现方法 |
CN103888249A (zh) * | 2013-12-04 | 2014-06-25 | 中国人民武装警察部队工程大学 | 组播通信用代理重加密方法 |
US9137222B2 (en) * | 2012-10-31 | 2015-09-15 | Vmware, Inc. | Crypto proxy for cloud storage services |
CN104966198A (zh) * | 2015-07-10 | 2015-10-07 | 苏州海博智能系统有限公司 | 一种授权消费方法及系统 |
CN105471918A (zh) * | 2016-01-13 | 2016-04-06 | 中山大学 | 一种代理重指定验证者签名方法 |
-
2017
- 2017-06-02 CN CN201710407787.7A patent/CN107276749A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102685148A (zh) * | 2012-05-31 | 2012-09-19 | 清华大学 | 一种云存储环境下的安全网盘系统的实现方法 |
US9137222B2 (en) * | 2012-10-31 | 2015-09-15 | Vmware, Inc. | Crypto proxy for cloud storage services |
CN103888249A (zh) * | 2013-12-04 | 2014-06-25 | 中国人民武装警察部队工程大学 | 组播通信用代理重加密方法 |
CN104966198A (zh) * | 2015-07-10 | 2015-10-07 | 苏州海博智能系统有限公司 | 一种授权消费方法及系统 |
CN105471918A (zh) * | 2016-01-13 | 2016-04-06 | 中山大学 | 一种代理重指定验证者签名方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110958116A (zh) * | 2019-12-06 | 2020-04-03 | 中山大学 | 一种基于格签名的多副本云数据完整性审计方法 |
CN110958116B (zh) * | 2019-12-06 | 2021-02-26 | 中山大学 | 一种基于格签名的多副本云数据完整性审计方法 |
CN111600700A (zh) * | 2020-04-03 | 2020-08-28 | 中电科鹏跃电子科技有限公司 | 一种基于随机函数的非线性映射保序加密方法 |
CN111600700B (zh) * | 2020-04-03 | 2023-07-14 | 中电科鹏跃电子科技有限公司 | 一种基于随机函数的非线性映射保序加密方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104753917B (zh) | 基于id的密钥管理系统及方法 | |
CN105812141B (zh) | 一种面向外包加密数据的可验证交集运算方法及系统 | |
CN104539423B (zh) | 一种无双线性对运算的无证书公钥密码体制的实现方法 | |
CN113014392B (zh) | 基于区块链的数字证书管理方法及系统、设备、存储介质 | |
US7634085B1 (en) | Identity-based-encryption system with partial attribute matching | |
JP5293745B2 (ja) | データ参照システム、データベース提示分散システム、及びデータ参照方法 | |
CN109831430B (zh) | 一种云计算环境下的安全可控高效的数据共享方法及系统 | |
EP2285040A1 (en) | Two-factor combined public key generation and authentication method | |
CN104320393B (zh) | 重加密可控的高效属性基代理重加密方法 | |
CN101166088A (zh) | 基于用户身份标识的加解密方法 | |
US20120314856A1 (en) | Implicitly certified public keys | |
CN104767612A (zh) | 一种从无证书环境到公钥基础设施环境的签密方法 | |
US20130276084A1 (en) | Anonymous access to a service by means of aggregated certificates | |
CN105471918B (zh) | 一种代理重指定验证者签名方法 | |
US20040165728A1 (en) | Limiting service provision to group members | |
CN111415718A (zh) | 一种基于区块链和条件代理重加密的电子处方共享方法 | |
WO2011148902A1 (ja) | 匿名認証システム、ユーザ装置、検証装置、匿名認証方法および匿名認証プログラム | |
CN101471776A (zh) | 基于用户身份标识防止pkg伪造签名的方法 | |
CN107659395A (zh) | 一种多服务器环境下基于身份的分布式认证方法及系统 | |
CN102957538A (zh) | 信息处理设备和信息处理方法 | |
CN114095181B (zh) | 一种基于国密算法的门限环签名方法及系统 | |
CN104767611A (zh) | 一种从公钥基础设施环境到无证书环境的签密方法 | |
CN103988466A (zh) | 群加密方法及设备 | |
CN103297230B (zh) | 信息加解密方法、装置及系统 | |
CN108199844A (zh) | 一种支持离线sm9算法密钥首次申请下载方法 |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20171020 |