CN117040936B - 数据共享方法、装置、电子设备及介质 - Google Patents

数据共享方法、装置、电子设备及介质 Download PDF

Info

Publication number
CN117040936B
CN117040936B CN202311302641.8A CN202311302641A CN117040936B CN 117040936 B CN117040936 B CN 117040936B CN 202311302641 A CN202311302641 A CN 202311302641A CN 117040936 B CN117040936 B CN 117040936B
Authority
CN
China
Prior art keywords
key
ciphertext
encrypted
encryption
fragment
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
CN202311302641.8A
Other languages
English (en)
Other versions
CN117040936A (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.)
Research Center of Information Technology of Beijing Academy of Agriculture and Forestry Sciences
Original Assignee
Research Center of Information Technology of Beijing Academy of Agriculture and Forestry Sciences
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 Research Center of Information Technology of Beijing Academy of Agriculture and Forestry Sciences filed Critical Research Center of Information Technology of Beijing Academy of Agriculture and Forestry Sciences
Priority to CN202311302641.8A priority Critical patent/CN117040936B/zh
Publication of CN117040936A publication Critical patent/CN117040936A/zh
Application granted granted Critical
Publication of CN117040936B publication Critical patent/CN117040936B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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/0442Network 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 asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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/0471Network 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 encryption by an intermediary, e.g. receiving clear information at the intermediary and encrypting the received information at the intermediary before forwarding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/76Proxy, i.e. using intermediary entity to perform cryptographic operations

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

数据共享方法、装置、电子设备及介质
技术领域
本发明涉及数据共享技术领域,尤其涉及一种数据共享方法、装置、电子设备及介质。
背景技术
在涉及多方参与的生产活动中,为提升整个生产活动的效率,各方之间的数据共享是必不可少的一环。例如,在预制食品产业中,多方合作和供应链的动态变化是非常常见的情况,预制食品的生产通常涉及多个参与方,包括食品生产商、原材料供应商、配送商、零售商等。这些参与方之间需要共享数据和信息,包括食谱秘方、供应链信息、销售数据等。由于食谱秘方和其他供应链数据可能涉及商业机密和知识产权,确保数据的隐私和安全性尤为重要。
然而,现有数据共享加密算法中,通常都是采用单一代理加密操作的模式,这在安全性上存在较大风险,容易受到单点故障或遭受攻击的威胁,从而导致数据泄露和机密性丧失。另外,传统采用集中式的管理方式,在受到单点故障或恶意行为的影响下还会阻断数据共享进程,数据访问方无法及时获取共享数据,影响了数据共享的效率,整个系统的稳定性与安全性都有待于提高。
因此,如何更好地实现数据共享已成为业界亟待解决的技术问题。
发明内容
本发明提供一种数据共享方法、装置、电子设备及介质,用以更好地实现数据共享。
本发明提供一种数据共享方法,包括:
获取本地的第一公钥和本地的第一私钥,并将所述第一公钥加密为对称密钥和胶囊;所述胶囊包含用于获取所述对称密钥的信息;
基于所述对称密钥和所述胶囊对待共享明文数据进行加密处理,确定所述待共享明文数据对应的加密密文,并基于所述第一私钥和第二终端的第二公钥,生成多个重加密密钥碎片;
基于所述加密密文和各个所述重加密密钥碎片进行重加密,得到多个重加密密文碎片,并将各个所述重加密密文碎片上传至区块链,以供所述第二终端从所述区块链获取所述重加密密文碎片,并在确定获取的所述重加密密文碎片的数量达到预设门限阈值的情况下,对所述重加密密文碎片进行解密,得到所述待共享明文数据。
根据本发明提供的一种数据共享方法,所述基于所述对称密钥和所述胶囊对待共享明文数据进行加密处理,确定所述待共享明文数据对应的加密密文,包括:
利用所述对称密钥对所述待共享明文数据进行加密,得到所述待共享明文数据对应的密文;
将所述密文和所述胶囊进行组合,得到所述待共享明文数据对应的加密密文。
根据本发明提供的一种数据共享方法,所述基于所述第一私钥和第二终端的第二公钥,生成多个重加密密钥碎片,包括:
将所述第一私钥和所述第二公钥进行重加密,得到重加密密钥;
按照预设分片数,将所述重加密密钥进行分片,得到多个所述重加密密钥碎片。
根据本发明提供的一种数据共享方法,在所述基于所述第一私钥和第二终端的第二公钥,生成多个重加密密钥碎片之后,所述方法还包括:
将所述加密密文和各个所述重加密密钥碎片上传至所述区块链,以使每个预设代理服务器从所述区块链获取所述加密密文和对应的重加密密钥碎片,并将取所述加密密文和对应的重加密密钥碎片加密为所述重加密密文碎片,并将所述重加密密文碎片返回给所述区块链,以供所述第二终端从所述区块链获取所述重加密密文碎片进行解密,共享所述待共享明文数据。
本发明还提供一种数据共享方法,包括:
获取本地的第二公钥和本地的第二私钥,并将所述第二公钥发送给第一终端,以供所述第一终端基于自己的第一私钥和所述第二公钥,生成多个重加密密钥碎片,并基于加密密文和各个所述重加密密钥碎片进行重加密,得到多个重加密密文碎片,以将各个所述重加密密文碎片存储至区块链;
所述加密密文是所述第一终端基于对称密钥和胶囊对待共享明文数据进行加密得到的;所述对称密钥和所述胶囊是基于所述第一终端对自己的第一公钥加密得到的;
从所述区块链上获取所述重加密密文碎片;
在确定获取的所述重加密密文碎片的数量达到预设门限阈值的情况下,利用所述第二私钥对所述重加密密文碎片进行解密,得到所述待共享明文数据。
根据本发明提供的一种数据共享方法,所述利用所述第二私钥对所述重加密密文碎片进行解密,得到所述待共享明文数据,包括:
利用所述第二私钥对所述重加密密文碎片进行解密,得到所述密文、所述胶囊和所述对称密钥;
利用所述胶囊和所述对称密钥对所述密文进行解密,得到所述待共享明文数据。
本发明还提供一种数据共享装置,包括:
第一加密模块,用于获取本地的第一公钥和本地的第一私钥,并将所述第一公钥加密为对称密钥和胶囊;所述胶囊包含用于获取所述对称密钥的信息;
第二加密模块,用于基于所述对称密钥和所述胶囊对待共享明文数据进行加密处理,确定所述待共享明文数据对应的加密密文,并基于所述第一私钥和第二终端的第二公钥,生成多个重加密密钥碎片;
第三加密模块,用于基于所述加密密文和各个所述重加密密钥碎片进行重加密,得到多个重加密密文碎片,并将各个所述重加密密文碎片上传至区块链,以供所述第二终端从所述区块链获取所述重加密密文碎片,并在确定获取的所述重加密密文碎片的数量达到预设门限阈值的情况下,对所述重加密密文碎片进行解密,得到所述待共享明文数据。
本发明还提供一种数据共享装置,包括:
第一获取模块,用于获取本地的第二公钥和本地的第二私钥,并将所述第二公钥发送给第一终端,以供所述第一终端基于自己的第一私钥和所述第二公钥,生成多个重加密密钥碎片,并基于加密密文和各个所述重加密密钥碎片进行重加密,得到多个重加密密文碎片,以将各个所述重加密密文碎片存储至区块链;所述加密密文是所述第一终端基于对称密钥和胶囊对待共享明文数据进行加密得到的;所述对称密钥和所述胶囊是基于所述第一终端对自己的第一公钥加密得到的;
第二获取模块,用于从所述区块链上获取所述重加密密文碎片;
第一解密模块,用于在确定获取的所述重加密密文碎片的数量达到预设门限阈值的情况下,利用所述第二私钥对所述重加密密文碎片进行解密,得到所述待共享明文数据。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述数据共享方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述数据共享方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述数据共享方法。
本发明提供的数据共享方法、装置、电子设备及介质,通过数据拥有者的第一终端对本地设定好的第一公钥加密为对称密钥和胶囊,进而利用对称密钥和胶囊对待共享明文数据进行加密,得到待共享明文数据对应的加密密文,并利用第一私钥和获取的第二终端的第二公钥,生成多个重加密密钥碎片,进而可以对加密密文和各个重加密密钥碎片进行重加密,得到多个重加密密文碎片,利用区块链对各个重加密密文碎片进行可靠存储,这样,数据访问者的第二终端可以从区块链上获取重加密密文碎片,并在确定获取的重加密密文碎片的数量达到预设门限阈值时,可以利用自己的私钥对重加密密文碎片进行解密,共享得到待共享明文数据,通过将门限阈值代理重加密方式与区块链相结合,可以适应不断变化的多方合作关系,并要求多个代理协同参与解密过程,即使某些代理受到攻击或被损害,只要确定达到预设的门限阈值条件下,数据就能成功解密,有效降低了数据泄露的风险,从而有效提高了数据共享过程中的数据隐私性和数据安全性。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的数据共享方法的流程示意图之一;
图2是本发明提供的数据共享方法的流程示意图之二;
图3是本发明提供的数据共享方法的流程示意图之三;
图4是本发明提供的数据共享装置的结构示意图之一;
图5是本发明提供的数据共享装置的结构示意图之二;
图6是本发明提供的电子设备的实体结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合图1-图6描述本发明的数据共享方法、装置、电子设备及介质。
图1是本发明提供的数据共享方法的流程示意图之一,如图1所示,可以理解的是,该方法的执行主体为数据拥有者一侧的终端,该方法包括:步骤110,步骤120和步骤130。
步骤110,获取本地的第一公钥和本地的第一私钥,并将第一公钥加密为对称密钥和胶囊;胶囊包含用于获取对称密钥的信息;
步骤120,基于对称密钥和胶囊对待共享明文数据进行加密处理,确定待共享明文数据对应的加密密文,并基于第一私钥和第二终端的第二公钥,生成多个重加密密钥碎片;
步骤130,基于加密密文和各个重加密密钥碎片进行重加密,得到多个重加密密文碎片,并将各个重加密密文碎片上传至区块链,以供第二终端从区块链获取重加密密文碎片,并在确定获取的重加密密文碎片的数量达到预设门限阈值的情况下,对重加密密文碎片进行解密,得到待共享明文数据。
具体地,本发明实施例所描述的第一公钥和第一私钥指的是数据拥有者通过本地终端利用公开密钥加密(Public-Key Cryptography,PKE)公钥系统获取的公钥和私钥。
本发明实施例所描述的第二终端指的是数据访问者所使用的用户终端。
本发明实施例所描述的待共享明文数据指的是预先设置好的用于共享的明文数据,例如食谱、秘方等明文数据。
需要说明的是,区块链技术是一种分布式、去中心化的数据存储和交易系统,通过链接按时间顺序排列的数据块来确保数据的完整性和不可篡改性。其特点包括去中心化、安全性、不可篡改性、透明性、快速高效和去信任化。区块链技术在数字货币、智能合约、供应链管理、物联网、医疗保健等领域得到广泛应用,被认为是颠覆性技术,有望改变传统产业并提升信息管理效率和安全性。
门限阈值代理重加密技术是一种结合门限密码学和代理重加密特点的加密方法,它可以实现安全的数据共享和授权访问。数据持有者将数据加密,并将解密权授予给多个代理者,只有达到规定的门限阈值时,数据才能被成功解密。这样,可以定制化地控制数据访问权限,保护用户隐私。
门限阈值代理重加密具备更强的灵活性和可扩展性。相对于传统代理重加密需要事先指定特定代理的限制,门限阈值方案允许动态地添加或移除代理,更好地适应了不断变化的应用需求和场景,从而提高了系统的适应性。
在本发明的实施例中,步骤110中,数据拥有者所使用的用户终端,其可以描述为第一终端,首先通过PKE公钥系统获取本地的第一公钥A和本地的第一私钥a,并通过使用Encrypt()加密函数,可以将第一公钥A加密为对称密钥K和胶囊(Capsule)。其中,该胶囊中包含用于获取对称密钥的摘要等信息。
同时,数据访问者一端,即第二终端,也可以通过PKE公钥系统获得自己本地的第二公钥B和第二私钥b。
需要说明的是,对称密钥加密又叫专用密钥加密,或共享密钥加密,即发送和接收数据的双方必使用相同的密钥对明文进行加密和解密运算。
进一步地,在本发明的实施例中,步骤120中,利用前述生成的对称密钥K和胶囊对待共享明文数据进行加密处理,得到待共享明文数据对应的加密密文,并利用第一终端的第一私钥a和第二终端的第二公钥B,进行密钥碎片化处理,生成多个重加密密钥碎片。
基于上述实施例的内容,作为一种可选的实施例,基于对称密钥和胶囊对待共享明文数据进行加密处理,确定待共享明文数据对应的加密密文,包括:
利用对称密钥对待共享明文数据进行加密,得到待共享明文数据对应的密文;
将密文和胶囊进行组合,得到待共享明文数据对应的加密密文。
具体地,在本发明的实施例中,采用对称密钥加密算法,数据拥有者一端使用与数据访问者一端事先商定好的加密函数,利用对称密钥K对待共享明文数据进行加密,获取到待共享明文数据对应的密文。
进一步地,在本发明的实施例中,第一终端侧继续将加密好的待共享明文数据对应密文与胶囊进行组合,生成待共享明文数据对应的加密密文C。
本发明实施例的方法,通过采用对称密钥加密算法和胶囊对待共享明文数据进行多重加密,增强共享数据的机密性,可以有效降低共享数据泄露的风险。
基于上述实施例的内容,作为一种可选的实施例,基于第一私钥和第二终端的第二公钥,生成多个重加密密钥碎片,包括:
将第一私钥和第二公钥进行重加密,得到重加密密钥;
按照预设分片数,将重加密密钥进行分片,得到多个重加密密钥碎片。
具体地,本发明实施例所描述的第二公钥指的是数据访问者所处的第二终端通过PKE公钥系统获取的公钥B。
本发明实施例所描述的预设分片数指的是数据拥有者一端利用门限阈值代理重加密算法所需设置的分片数参数,其用于指示算法将加密数据进行分片处理,并将加密数据划分为预设分片数量的数据碎片。
在本发明的实施例中,在数据拥有者的第一终端侧,利用第一私钥a和获取的第二终端的第二公钥B,生成多个重加密密钥碎片。具体来说,第一终端首先利用重加密密钥生成算法ReKeyGen,通过ReKeyGen()重加密操作,将自己的第一私钥a和第二终端的第二公钥B进行重加密,输出重加密密钥。
进一步地,在本发明的实施例中,在数据拥有者侧的第一终端,通过利用门限阈值代理重加密算法,设置分片数以及预设门限阈值,将上述得到的重加密密钥进行密钥分片处理,从而得到多个重加密密钥碎片,由此为后续密文碎片的生成提供了密钥碎片数据。
本发明实施例的方法,通过采用门限阈值代理重加密方式进行密钥分片,实现了分布式的密钥管理与解密操作,并且通过多个代理共同参与密钥管理和解密过程,可以有效避免单一中心化实体带来的单点故障风险,有效增强系统的稳定性和可靠性。
进一步地,在本发明的实施例中,在生成多个重加密密钥碎片之后,步骤130中,再一次对加密密文C和各个重加密密钥碎片进行重加密,将加密密文C分别与每个重加密密钥碎片进行重加密,通过ReEncapsulation()重加密操作,将加密密文C加密为重加密密文碎片C',并将各个重加密密文碎片C'上传至区块链中的多个代理节点。
这样,数据访问者侧的第二终端可以从区块链中获取到各个重加密密文碎片C',按照门限阈值代理重加密算法,在确定第二终端获取的重加密密文碎片C'的数量达到预设门限阈值的情况下,允许第二终端对重加密密文碎片进行解密,从而获取到待共享明文数据。
即使某些代理受到攻击或被损害,只要确定第二终端获取的重加密密文碎片C'的数量达到预设的门限阈值条件下,待共享明文数据就能成功被第二终端解密得到。
本发明实施例的数据共享方法,通过数据拥有者的第一终端对本地设定好的第一公钥加密为对称密钥和胶囊,进而利用对称密钥和胶囊对待共享明文数据进行加密,得到待共享明文数据对应的加密密文,并利用第一私钥和获取的第二终端的第二公钥,生成多个重加密密钥碎片,进而可以对加密密文和各个重加密密钥碎片进行重加密,得到多个重加密密文碎片,利用区块链对各个重加密密文碎片进行可靠存储,这样,数据访问者的第二终端可以从区块链上获取重加密密文碎片,并在确定获取的重加密密文碎片的数量达到预设门限阈值时,可以利用自己的私钥对重加密密文碎片进行解密,共享得到待共享明文数据,通过将门限阈值代理重加密方式与区块链相结合,可以适应不断变化的多方合作关系,并要求多个代理协同参与解密过程,即使某些代理受到攻击或被损害,只要确定达到预设的门限阈值条件下,数据就能成功解密,有效降低了数据泄露的风险,从而有效提高了数据共享过程中的数据隐私性和数据安全性。
基于上述实施例的内容,作为一种可选的实施例,在基于第一私钥和第二终端的第二公钥,生成多个重加密密钥碎片之后,该方法还包括:
将加密密文和各个重加密密钥碎片上传至区块链,以使每个预设代理服务器从区块链获取加密密文和对应的重加密密钥碎片,并将获取的加密密文和对应的重加密密钥碎片加密为重加密密文碎片,并将重加密密文碎片返回给区块链,以供第二终端从区块链获取重加密密文碎片进行解密,共享待共享明文数据。
具体地,在本发明的实施例中,为减轻数据拥有者侧第一终端的数据存储和计算压力,还可以引入第三方代理服务器集群,如可以采用半诚实代理服务器。
在本发明的实施例中,在第一终端基于第一私钥和第二终端的第二公钥,生成多个重加密密钥碎片之后,直接可以将加密密文和各个重加密密钥碎片上传至区块链。
这样,引入的各个第三方半诚实代理节点服务器可以从区块链上获得加密密文C以及对应的重加密密钥碎片,通过ReEncapsulation()重加密操作,再将加密密文C重加密为重加密密文碎片C`,并上传至区块链中,以供第二终端从区块链获取重加密密文碎片C`进行解密,共享得到待共享明文数据。
本发明实施例的方法,通过引入第三方代理服务器集群组织进行代理重加密中的重加密环节,可以有效减轻数据拥有者的数据存储和计算压力,同时通过分布式代理设计,可以有效提升共享数据加密处理效率,并增加了数据存储的安全性。
图2是本发明提供的数据共享方法的流程示意图之二,如图2所示,可以理解的是,该方法的执行主体为数据访问者一侧的第二终端,该方法包括:步骤210,步骤220和步骤230。
步骤210,获取本地的第二公钥和本地的第二私钥,并将第二公钥发送给第一终端,以供第一终端基于自己的第一私钥和第二公钥,生成多个重加密密钥碎片,并基于加密密文和各个重加密密钥碎片进行重加密,得到多个重加密密文碎片,以将各个重加密密文碎片存储至区块链;
加密密文是第一终端基于对称密钥和胶囊对待共享明文数据进行加密得到的;对称密钥和胶囊是基于第一终端对自己的第一公钥加密得到的;
步骤220,从区块链上获取重加密密文碎片;
步骤230,在确定获取的重加密密文碎片的数量达到预设门限阈值的情况下,利用第二私钥对重加密密文碎片进行解密,得到待共享明文数据。
具体地,基于上述实施例的内容,在本发明的实施例中,第二终端可以通过PKE公钥系统,获取本地的第二公钥B和本地的第二私钥b,并将第二公钥B发送给第一终端。
进一步地,在本实施例中,一方面,数据拥有者侧的第一终端将自己的第一公钥A加密为对称密钥K和胶囊,并利用生成的对称密钥K和胶囊对待共享明文数据进行加密处理,获取待共享明文数据对应的加密密文C。
另一方面,第一终端还可以将自己的第一私钥a和第二终端的第二公钥B进行重加密处理,首先,利用重加密密钥生成算法ReKeyGen,通过ReKeyGen()重加密操作,生成重加密密钥。进而,通过门限阈值代理重加密算法,将得到的重加密密钥进行密钥分片处理,由此得到多个重加密密钥碎片。
进而,第一终端可以基于加密密文C和各个重加密密钥碎片进行重加密,得到多个重加密密文碎片C`,从而将各个重加密密文碎片C`存储至区块链中。
或者,第一终端可以将加密密文C和各个重加密密钥碎片直接上传至区块链中,供引入的各个第三方半诚实代理服务器从区块链上获得加密密文C以及重加密密钥碎片,将加密密文C重加密为重加密密文碎片C`,并上传至区块链中。
进一步地,在本发明的实施例中,步骤220中,第二终端可以从区块链上获取到重加密密文碎片C`。
可以理解的是,这些重加密密文碎片C`可以是数据拥有者一侧的第一终端上传至区块链中的碎片数据;或者,这些重加密密文碎片C`可以是第三方半诚实代理服务器上传至区块链中的碎片数据。
在本发明的实施例中,步骤230,在确定获取的重加密密文碎片C`的数量达到预设门限阈值的情况下,第二终端可以利用自己的第二私钥b对重加密密文碎片C`进行解密,得到待共享明文数据。
本发明实施例的数据共享方法,通过数据拥有者的第一终端对本地设定好的第一公钥加密为对称密钥和胶囊,进而利用对称密钥和胶囊对待共享明文数据进行加密,得到待共享明文数据对应的加密密文,并利用第一私钥和获取的第二终端的第二公钥,生成多个重加密密钥碎片,进而可以对加密密文和各个重加密密钥碎片进行重加密,得到多个重加密密文碎片,利用区块链对各个重加密密文碎片进行可靠存储,这样,数据访问者的第二终端可以从区块链上获取重加密密文碎片,并在确定获取的重加密密文碎片的数量达到预设门限阈值时,可以利用自己的私钥对重加密密文碎片进行解密,共享得到待共享明文数据,通过将门限阈值代理重加密方式与区块链相结合,可以适应不断变化的多方合作关系,并要求多个代理协同参与解密过程,即使某些代理受到攻击或被损害,只要确定达到预设的门限阈值条件下,数据就能成功解密,有效降低了数据泄露的风险,从而有效提高了数据共享过程中的数据隐私性和数据安全性。
基于上述实施例的内容,作为一种可选的实施例,利用第二私钥对重加密密文碎片进行解密,获取待共享明文数据,包括:
利用第二私钥对重加密密文碎片进行解密,得到密文、胶囊和对称密钥;
利用胶囊和对称密钥对密文进行解密,得到待共享明文数据。
具体地,在本发明的实施例中,第二终端可以通过DecapsulateFrags()解密操作,传入自己的私钥b后,利用自己的第二私钥b对重加密密文碎片C`进行解密,得到密文、胶囊和对称密钥K,按照胶囊的信息提示,利用对称密钥K对密文进行解密,最终得到待共享明文数据。
本发明实施例的方法,通过采用对称密钥加密算法,数据访问者在获取到对称密钥后,可以有效对数据拥有者加密的密文进行解密,确保共享数据的安全性和机密性的同时,可以方便数据访问者快速解密访问,提升共享数据访问效率。
在本发明的一个具体实施例中,还提供了一种预制食品溯源方法,该方法采用本发明上述区块链与门限阈值代理重加密结合技术进行数据存储和隐私数据共享,能够有效的解决预制食品产业供应链在实现区块链溯源的同时保障食品配方和秘方信息、个人隐私信息的真实性和安全性问题。
首先,采用区块链记录预制食品全链条生产过程中的数据,对检测信息,商品生产相关信息进行真实的记录,且记录不可篡改、可追溯,解决预制食品溯源工作中信息不透明,数据难追溯的问题。
其次,采用区块链和门限阈值代理重加密对食谱、秘方等隐私数据存储并进行加密处理,保障数据安全共享。
具体来说,本发明实施例中,将供应链分为了预制食品原材料提供商、中央厨房(初加工环节、烹饪环节、包装环节)、物流公司、经销商、监管机构、食品研发团队、第三方机构七个环节部门。其中,原材料供应商、初加工、烹饪、包装、物流企业、经销商六个节点上传相关环节公开生产运输信息;中央厨房的包装环节进行门限阈值代理重加密上传加密后的食谱、秘方等隐私数据,便于供应链上隐私数据共享;服务器组织进行代理重加密中的重加密环节。
更具体地,在本实施例中,中央厨房根据市场及自身技术优势确定预制食品类型并通过研发部门进行食谱的制作。预制食品食谱研发成功过后,中央厨房保存隐私数据,随后会通过线下方式与上游原材料供应商进行合作,通过区块链代理重加密将食谱、秘方等隐私数据传递给原材料供应商。原材料供应商收到食谱、秘方等隐私数据后,根据前期商定和食谱数据将中央厨房所需原材料运输到中央厨房企业。在此期间,上游原材料供应商会将本公司信息、原材料产地等非隐私数据上传至区块链中。
中游(中央厨房)预处理节点接收到合格的原材料后会根据中央厨房中的研发团队由区块链代理重加密共享的食谱、秘方的要求进行预处理即洗、切等操作。处理完成后,预处理节点将预处理生产线编号转化为生产批号。预处理节点把生产批号、供货商相关信息、进货日期、抽检人员、抽检日期、抽检方法、抽检结果相关信息上传至区块链中。
中游(中央厨房)烹饪节点在收到食谱等隐私数据后,根据食谱要求进行烹饪即蒸、煮、炒等操作。制作完成后,烹饪节点会将烹饪环节生产线编号加入生产批号中,同时把加工工艺参数、加工日期、车间操作人员、抽检人员、抽检日期、抽检方法、抽检结果相关信息上传至区块链中。
中游(中央厨房)包装节点会根据共享的食谱要求进行包装,并将包装环节生产线编号加入生产批号中。至此,预制食品已经制作完成,并且由预处理、烹饪、包装三环节生产线完成分批次编号。包装环节结束时,包装节点会将生产批号、包装工艺参数、包装日期、车间操作人员、抽检人员、抽检日期、抽检方法、抽检结果、食品生产厂家名称相关信息上传至区块链。
加工完成后,预制食品会通过物流公司运输至各地经销商并上传冷链运输信息,包括冷链运输企业名称、生产批号、运输方式、环境条件、运输人员、出发时间、到达时间。
经销商收到产品后会将经销商企业名称、生产批号、出厂产品名称、产品规格数量、生产日期、检验合格单等相关信息上传至区块链。
在本发明的实施例中,关于信息溯源,溯源信息主要分为生产销售公开溯源信息和食谱、秘方等隐私信息。
公开生产销售溯源信息主要为监管部门和消费者提供预制食品供应链全链条可追溯生产销售信息,通过生产批号可以定位同一批次产品达到信息全链条信息溯源要求。食谱、秘方等隐私信息主要是食品生产商需要与原材料供应商合作,以获取所需的食材,经销商需要与食品生产商合作,以供应和销售产品。其次,行业组织、学术机构或政府部门可以访问食谱和秘方,以进行行业研究、食品安全监测和政策制定。
本发明实施例的方法,通过引入区块链技术,可以解决预制食品供应链溯源中的可信度和透明度问题。通过在区块链上记录每个环节的信息,包括生产、加工、运输等,消费者和监管部门可以追溯食品的来源和历史记录,从而确保食品的质量和安全,有利于解决信息上传和处理的中心化、追溯系统的反应速度可能较慢、难以快速追溯食品问题源头的问题。
同时,通过调用上述门限阈值代理重加密方法,可以有效解决预制食品供应链多节点动态的安全的共享食谱、秘方等隐私数据的目的。将上述门限阈值代理重加密技术应用于预制食品供应链溯源中,可以提高数据隐私性、数据安全性和追溯效率。预制食品产业链中的供应链和合作关系可能会频繁地发生变化。新的供应商可能加入,某些供应商可能退出,销售渠道可能发生变动等。门限阈值代理重加密技术满足动态变化要求数据共享方案所具备的灵活性和可适应性,可以适应不断变化的合作关系。
下面对本发明提供的数据共享装置进行描述,下文描述的数据共享装置与上文描述的数据共享方法可相互对应参照。
图3是本发明提供的数据共享方法的流程示意图之三,如图3所示,该方法包括四个实施环节,即数据拥有者加密自验证环节、数据拥有者加密密文、密钥环节、半诚实代理节点重加密环节和数据访问者解密环节。
其中,在数据拥有者加密自验证环节中,数据拥有者侧的终端根据Encrypt()加密函数生成对称密钥K和胶囊后,会进行自验证自身私钥a与胶囊通过Decapsulate()算法是否可以成功解密生成初始明文,用以验证初始加密的正确性。
具体算法步骤为:在输入私钥a(skA)和加密密文C=[胶囊,密文)时,Decapsulate算法解密计算对称密钥K=Decapsulate(skA,capsule),并使用以对称密钥K和胶囊作为关联数据的AEAD解密功能解密密文数据,如果解密正确,则得到待共享的明文数据M。
在数据拥有者加密密文、密钥环节,数据拥有者侧通过PKE公钥系统获取自身的公钥A和私钥a,并将公钥A加密为对称密钥K和胶囊,进而利用对称密钥K对待共享的明文数据进行加密,获取到待共享明文数据对应的密文,并将密文和胶囊进行组合,得到加密密文C。另外,数据拥有者还会将私钥a和数据访问者的公钥B进行重加密,得到重加密密钥;按照预设分片数(N)和预设门限阈值T,将重加密密钥进行分片,得到多个重加密密钥碎片t,最后将加密密文C和各个重加密密钥碎片t上传至区块链存储。
在半诚实代理节点重加密环节,各个第三方半诚实代理节点服务器从区块链上获得加密密文C以及对应的重加密密钥碎片t,并将获取的加密密文C和对应的重加密密钥碎片t加密为重加密密文碎片C`,并将重加密密文碎片C`上传至区块链中。
在数据访问者解密环节,数据访问者侧的终端从区块链中获取重加密密文碎片C`,在确定获取的重加密密文碎片C`的数量达到预设门限阈值T的情况下,利用自身私钥b对重加密密文碎片C`进行解密,得到密文、胶囊和对称密钥K,并可以按照胶囊的信息提示,利用对称密钥K对密文进行解密,最终得到待共享的明文数据,实现对数据拥有者侧上传的私密数据的共享。
图4是本发明提供的数据共享装置的结构示意图之一,如图4所示,包括:
第一加密模块410,用于获取本地的第一公钥和本地的第一私钥,并将第一公钥加密为对称密钥和胶囊;胶囊包含用于获取对称密钥的信息;
第二加密模块420,用于基于对称密钥和胶囊对待共享明文数据进行加密处理,确定待共享明文数据对应的加密密文,并基于第一私钥和第二终端的第二公钥,生成多个重加密密钥碎片;
第三加密模块430,用于基于加密密文和各个重加密密钥碎片进行重加密,得到多个重加密密文碎片,并将各个重加密密文碎片上传至区块链,以供第二终端从区块链获取重加密密文碎片,并在确定获取的重加密密文碎片的数量达到预设门限阈值的情况下,对重加密密文碎片进行解密,得到待共享明文数据。
本实施例所述的数据共享装置可以用于执行上述数据拥有者一端的数据共享方法实施例,其原理和技术效果类似,此处不再赘述。
图5是本发明提供的数据共享装置的结构示意图之二,如图5所示,包括:
第一获取模块510,用于获取本地的第二公钥和本地的第二私钥,并将第二公钥发送给第一终端,以供第一终端基于自己的第一私钥和第二公钥,生成多个重加密密钥碎片,并基于加密密文和各个重加密密钥碎片进行重加密,得到多个重加密密文碎片,以将各个重加密密文碎片存储至区块链;加密密文是第一终端基于对称密钥和胶囊对待共享明文数据进行加密得到的;对称密钥和胶囊是基于第一终端对自己的第一公钥加密得到的;
第二获取模块520,用于从区块链上获取重加密密文碎片;
第一解密模块530,用于在确定获取的重加密密文碎片的数量达到预设门限阈值的情况下,利用第二私钥对重加密密文碎片进行解密,获取待共享明文数据。
本实施例所述的数据共享装置可以用于执行上述数据访问者一端的数据共享方法实施例,其原理和技术效果类似,此处不再赘述。
本发明实施例的数据共享装置,通过数据拥有者的第一终端对本地设定好的第一公钥加密为对称密钥和胶囊,进而利用对称密钥和胶囊对待共享明文数据进行加密,得到待共享明文数据对应的加密密文,并利用第一私钥和获取的第二终端的第二公钥,生成多个重加密密钥碎片,进而可以对加密密文和各个重加密密钥碎片进行重加密,得到多个重加密密文碎片,利用区块链对各个重加密密文碎片进行可靠存储,这样,数据访问者的第二终端可以从区块链上获取重加密密文碎片,并在确定获取的重加密密文碎片的数量达到预设门限阈值时,可以利用自己的私钥对重加密密文碎片进行解密,共享得到待共享明文数据,通过将门限阈值代理重加密方式与区块链相结合,可以适应不断变化的多方合作关系,并要求多个代理协同参与解密过程,即使某些代理受到攻击或被损害,只要确定达到预设的门限阈值条件下,数据就能成功解密,有效降低了数据泄露的风险,从而有效提高了数据共享过程中的数据隐私性和数据安全性。
图6是本发明提供的电子设备的实体结构示意图,如图6所示,该电子设备可以包括:处理器(processor)610、通信接口(Communications Interface)620、存储器(memory)630和通信总线640,其中,处理器610,通信接口620,存储器630通过通信总线640完成相互间的通信。处理器610可以调用存储器630中的逻辑指令,以执行上述各方法所提供的数据共享方法,该方法包括:获取本地的第一公钥和本地的第一私钥,并将所述第一公钥加密为对称密钥和胶囊;所述胶囊包含用于获取所述对称密钥的信息;基于所述对称密钥和所述胶囊对待共享明文数据进行加密处理,确定所述待共享明文数据对应的加密密文,并基于所述第一私钥和第二终端的第二公钥,生成多个重加密密钥碎片;基于所述加密密文和各个所述重加密密钥碎片进行重加密,得到多个重加密密文碎片,并将各个所述重加密密文碎片上传至区块链,以供所述第二终端从所述区块链获取所述重加密密文碎片,并在确定获取的所述重加密密文碎片的数量达到预设门限阈值的情况下,对所述重加密密文碎片进行解密,得到所述待共享明文数据。
或者,该方法包括:获取本地的第二公钥和本地的第二私钥,并将所述第二公钥发送给第一终端,以供所述第一终端基于自己的第一私钥和所述第二公钥,生成多个重加密密钥碎片,并基于加密密文和各个所述重加密密钥碎片进行重加密,得到多个重加密密文碎片,以将各个所述重加密密文碎片存储至区块链;所述加密密文是所述第一终端基于对称密钥和胶囊对待共享明文数据进行加密得到的;所述对称密钥和所述胶囊是基于所述第一终端对自己的第一公钥加密得到的;从所述区块链上获取所述重加密密文碎片;在确定获取的所述重加密密文碎片的数量达到预设门限阈值的情况下,利用所述第二私钥对所述重加密密文碎片进行解密,得到所述待共享明文数据。
此外,上述的存储器630中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的数据共享方法,该方法包括:获取本地的第一公钥和本地的第一私钥,并将所述第一公钥加密为对称密钥和胶囊;所述胶囊包含用于获取所述对称密钥的信息;基于所述对称密钥和所述胶囊对待共享明文数据进行加密处理,确定所述待共享明文数据对应的加密密文,并基于所述第一私钥和第二终端的第二公钥,生成多个重加密密钥碎片;基于所述加密密文和各个所述重加密密钥碎片进行重加密,得到多个重加密密文碎片,并将各个所述重加密密文碎片上传至区块链,以供所述第二终端从所述区块链获取所述重加密密文碎片,并在确定获取的所述重加密密文碎片的数量达到预设门限阈值的情况下,对所述重加密密文碎片进行解密,得到所述待共享明文数据。
或者,该方法包括:获取本地的第二公钥和本地的第二私钥,并将所述第二公钥发送给第一终端,以供所述第一终端基于自己的第一私钥和所述第二公钥,生成多个重加密密钥碎片,并基于加密密文和各个所述重加密密钥碎片进行重加密,得到多个重加密密文碎片,以将各个所述重加密密文碎片存储至区块链;所述加密密文是所述第一终端基于对称密钥和胶囊对待共享明文数据进行加密得到的;所述对称密钥和所述胶囊是基于所述第一终端对自己的第一公钥加密得到的;从所述区块链上获取所述重加密密文碎片;在确定获取的所述重加密密文碎片的数量达到预设门限阈值的情况下,利用所述第二私钥对所述重加密密文碎片进行解密,得到所述待共享明文数据。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的数据共享方法,该方法包括:获取本地的第一公钥和本地的第一私钥,并将所述第一公钥加密为对称密钥和胶囊;所述胶囊包含用于获取所述对称密钥的信息;基于所述对称密钥和所述胶囊对待共享明文数据进行加密处理,确定所述待共享明文数据对应的加密密文,并基于所述第一私钥和第二终端的第二公钥,生成多个重加密密钥碎片;基于所述加密密文和各个所述重加密密钥碎片进行重加密,得到多个重加密密文碎片,并将各个所述重加密密文碎片上传至区块链,以供所述第二终端从所述区块链获取所述重加密密文碎片,并在确定获取的所述重加密密文碎片的数量达到预设门限阈值的情况下,对所述重加密密文碎片进行解密,得到所述待共享明文数据。
或者,该方法包括:获取本地的第二公钥和本地的第二私钥,并将所述第二公钥发送给第一终端,以供所述第一终端基于自己的第一私钥和所述第二公钥,生成多个重加密密钥碎片,并基于加密密文和各个所述重加密密钥碎片进行重加密,得到多个重加密密文碎片,以将各个所述重加密密文碎片存储至区块链;所述加密密文是所述第一终端基于对称密钥和胶囊对待共享明文数据进行加密得到的;所述对称密钥和所述胶囊是基于所述第一终端对自己的第一公钥加密得到的;从所述区块链上获取所述重加密密文碎片;在确定获取的所述重加密密文碎片的数量达到预设门限阈值的情况下,利用所述第二私钥对所述重加密密文碎片进行解密,得到所述待共享明文数据。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (7)

1.一种数据共享方法,其特征在于,包括:
获取本地的第一公钥和本地的第一私钥,并将所述第一公钥加密为对称密钥和胶囊;所述胶囊包含用于获取所述对称密钥的信息;
基于所述对称密钥和所述胶囊对待共享明文数据进行加密处理,确定所述待共享明文数据对应的加密密文,并基于所述第一私钥和第二终端的第二公钥,生成多个重加密密钥碎片;
基于所述加密密文和各个所述重加密密钥碎片进行重加密,得到多个重加密密文碎片,并将各个所述重加密密文碎片上传至区块链,以供所述第二终端从所述区块链获取所述重加密密文碎片,并在确定获取的所述重加密密文碎片的数量达到预设门限阈值的情况下,对所述重加密密文碎片进行解密,得到所述待共享明文数据;
其中,所述基于所述对称密钥和所述胶囊对待共享明文数据进行加密处理,确定所述待共享明文数据对应的加密密文,包括:
利用所述对称密钥对所述待共享明文数据进行加密,得到所述待共享明文数据对应的密文;
将所述密文和所述胶囊进行组合,得到所述待共享明文数据对应的加密密文;
其中,在所述基于所述第一私钥和第二终端的第二公钥,生成多个重加密密钥碎片之后,所述方法还包括:
将所述加密密文和各个所述重加密密钥碎片上传至所述区块链,以使每个预设代理服务器从所述区块链获取所述加密密文和对应的重加密密钥碎片,并将取所述加密密文和对应的重加密密钥碎片加密为所述重加密密文碎片,并将所述重加密密文碎片返回给所述区块链,以供所述第二终端从所述区块链获取所述重加密密文碎片进行解密,共享所述待共享明文数据。
2.根据权利要求1所述的数据共享方法,其特征在于,所述基于所述第一私钥和第二终端的第二公钥,生成多个重加密密钥碎片,包括:
将所述第一私钥和所述第二公钥进行重加密,得到重加密密钥;
按照预设分片数,将所述重加密密钥进行分片,得到多个所述重加密密钥碎片。
3.一种数据共享方法,其特征在于,包括:
获取本地的第二公钥和本地的第二私钥,并将所述第二公钥发送给第一终端,以供所述第一终端基于自己的第一私钥和所述第二公钥,生成多个重加密密钥碎片,将加密密文和各个所述重加密密钥碎片上传至区块链中,以供引入的各个第三方半诚实代理服务器从所述区块链上获得所述加密密文以及重加密密钥碎片,并基于所述加密密文和各个所述重加密密钥碎片进行重加密,得到多个重加密密文碎片,以将各个所述重加密密文碎片存储至区块链;
所述加密密文是所述第一终端基于对称密钥和胶囊对待共享明文数据进行加密得到的;所述对称密钥和所述胶囊是基于所述第一终端对自己的第一公钥加密得到的;
从所述区块链上获取所述重加密密文碎片;
在确定获取的所述重加密密文碎片的数量达到预设门限阈值的情况下,利用所述第二私钥对所述重加密密文碎片进行解密,得到所述待共享明文数据;
其中,所述利用所述第二私钥对所述重加密密文碎片进行解密,得到所述待共享明文数据,包括:
利用所述第二私钥对所述重加密密文碎片进行解密,得到所述密文、所述胶囊和所述对称密钥;
利用所述胶囊和所述对称密钥对所述密文进行解密,得到所述待共享明文数据。
4.一种数据共享装置,其特征在于,包括:
第一加密模块,用于获取本地的第一公钥和本地的第一私钥,并将所述第一公钥加密为对称密钥和胶囊;所述胶囊包含用于获取所述对称密钥的信息;
第二加密模块,用于基于所述对称密钥和所述胶囊对待共享明文数据进行加密处理,确定所述待共享明文数据对应的加密密文,并基于所述第一私钥和第二终端的第二公钥,生成多个重加密密钥碎片;
第三加密模块,用于基于所述加密密文和各个所述重加密密钥碎片进行重加密,得到多个重加密密文碎片,并将各个所述重加密密文碎片上传至区块链,以供所述第二终端从所述区块链获取所述重加密密文碎片,并在确定获取的所述重加密密文碎片的数量达到预设门限阈值的情况下,对所述重加密密文碎片进行解密,得到所述待共享明文数据;
其中,所述第二加密模块具体用于:
利用所述对称密钥对所述待共享明文数据进行加密,得到所述待共享明文数据对应的密文;
将所述密文和所述胶囊进行组合,得到所述待共享明文数据对应的加密密文;
其中,所述装置具体还用于:
将所述加密密文和各个所述重加密密钥碎片上传至所述区块链,以使每个预设代理服务器从所述区块链获取所述加密密文和对应的重加密密钥碎片,并将取所述加密密文和对应的重加密密钥碎片加密为所述重加密密文碎片,并将所述重加密密文碎片返回给所述区块链,以供所述第二终端从所述区块链获取所述重加密密文碎片进行解密,共享所述待共享明文数据。
5.一种数据共享装置,其特征在于,包括:
第一获取模块,用于获取本地的第二公钥和本地的第二私钥,并将所述第二公钥发送给第一终端,以供所述第一终端基于自己的第一私钥和所述第二公钥,生成多个重加密密钥碎片,将加密密文和各个所述重加密密钥碎片上传至区块链中,以供引入的各个第三方半诚实代理服务器从所述区块链上获得所述加密密文以及重加密密钥碎片,并基于所述加密密文和各个所述重加密密钥碎片进行重加密,得到多个重加密密文碎片,以将各个所述重加密密文碎片存储至区块链;所述加密密文是所述第一终端基于对称密钥和胶囊对待共享明文数据进行加密得到的;所述对称密钥和所述胶囊是基于所述第一终端对自己的第一公钥加密得到的;
第二获取模块,用于从所述区块链上获取所述重加密密文碎片;
第一解密模块,用于在确定获取的所述重加密密文碎片的数量达到预设门限阈值的情况下,利用所述第二私钥对所述重加密密文碎片进行解密,得到所述待共享明文数据;
所述第一解密模块具体用于:
利用所述第二私钥对所述重加密密文碎片进行解密,得到所述密文、所述胶囊和所述对称密钥;
利用所述胶囊和所述对称密钥对所述密文进行解密,得到所述待共享明文数据。
6.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至3任一项所述数据共享方法。
7.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3任一项所述数据共享方法。
CN202311302641.8A 2023-10-10 2023-10-10 数据共享方法、装置、电子设备及介质 Active CN117040936B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311302641.8A CN117040936B (zh) 2023-10-10 2023-10-10 数据共享方法、装置、电子设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311302641.8A CN117040936B (zh) 2023-10-10 2023-10-10 数据共享方法、装置、电子设备及介质

Publications (2)

Publication Number Publication Date
CN117040936A CN117040936A (zh) 2023-11-10
CN117040936B true CN117040936B (zh) 2024-02-02

Family

ID=88602751

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311302641.8A Active CN117040936B (zh) 2023-10-10 2023-10-10 数据共享方法、装置、电子设备及介质

Country Status (1)

Country Link
CN (1) CN117040936B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103595793A (zh) * 2013-11-13 2014-02-19 华中科技大学 一种无需可信第三方支持的云端数据安全删除系统与方法
CN106548345A (zh) * 2016-12-07 2017-03-29 北京信任度科技有限公司 基于密钥分割实现区块链私钥保护的方法及系统
EP3780553A1 (en) * 2018-08-31 2021-02-17 Advanced New Technologies Co., Ltd. Blockchain-based transaction consensus processing method and apparatus, and electrical device
CN112818061A (zh) * 2021-02-02 2021-05-18 中国工商银行股份有限公司 非结构化数据存储方法及区块链系统
CN113434905A (zh) * 2021-07-05 2021-09-24 网易(杭州)网络有限公司 数据共享方法、装置、计算机设备及存储介质
CN113595971A (zh) * 2021-06-02 2021-11-02 云南财经大学 一种基于区块链的分布式数据安全共享方法、系统和计算机可读介质
CN116405320A (zh) * 2023-05-31 2023-07-07 北京电科智芯科技有限公司 数据传输方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11431691B2 (en) * 2019-02-13 2022-08-30 Jpmorgan Chase Bank, N.A. Systems and methods for blockchain-based secure storage
US20220069986A1 (en) * 2020-08-25 2022-03-03 Fujitsu Limited Multi-party computation for time-released blockchain

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103595793A (zh) * 2013-11-13 2014-02-19 华中科技大学 一种无需可信第三方支持的云端数据安全删除系统与方法
CN106548345A (zh) * 2016-12-07 2017-03-29 北京信任度科技有限公司 基于密钥分割实现区块链私钥保护的方法及系统
EP3780553A1 (en) * 2018-08-31 2021-02-17 Advanced New Technologies Co., Ltd. Blockchain-based transaction consensus processing method and apparatus, and electrical device
CN112818061A (zh) * 2021-02-02 2021-05-18 中国工商银行股份有限公司 非结构化数据存储方法及区块链系统
CN113595971A (zh) * 2021-06-02 2021-11-02 云南财经大学 一种基于区块链的分布式数据安全共享方法、系统和计算机可读介质
CN113434905A (zh) * 2021-07-05 2021-09-24 网易(杭州)网络有限公司 数据共享方法、装置、计算机设备及存储介质
CN116405320A (zh) * 2023-05-31 2023-07-07 北京电科智芯科技有限公司 数据传输方法及装置

Also Published As

Publication number Publication date
CN117040936A (zh) 2023-11-10

Similar Documents

Publication Publication Date Title
EP3725023B1 (en) Method for faster secure multiparty inner product with spdz
US11201734B2 (en) Method and system for fault tolerant and secure multiparty computation with SPDZ
CN106603233B (zh) 远程开标型招投标系统用的加解密方法
CN110944011B (zh) 一种基于树模型的联合预测方法和系统
CN113424185A (zh) 快速不经意传输
CN111371545B (zh) 一种基于隐私保护的加密方法和系统
EP2228942A1 (en) Securing communications sent by a first user to a second user
US10680799B2 (en) Secure remote aggregation
CN108521393A (zh) 数据交互方法、装置、系统、计算机设备和存储介质
CN109891423A (zh) 使用多个控制机构的数据加密控制
CN108768643A (zh) 一种隐私数据保护方法及系统
CN111783129A (zh) 一种保护隐私的数据处理方法及系统
CN111367903A (zh) 一种基于区块链的征信报告生成方法以及相关系统
US20200202018A1 (en) Smart privacy and controlled exposure on blockchains
CN110999200A (zh) 监测函数的评估
Cha et al. Blockchain based sensitive data management by using key escrow encryption system from the perspective of supply chain
CN114363013B (zh) 监管友好的区块链内容隐私保护系统、消息发送以及查询方法
Olumide et al. A hybrid encryption model for secure cloud computing
CN111008400A (zh) 数据处理方法、装置及系统
CN117040936B (zh) 数据共享方法、装置、电子设备及介质
CN114465708A (zh) 隐私数据处理方法及装置、系统、电子设备、存储介质
EP3119031A1 (en) Encryption scheme using multiple parties
CN114205155B (zh) 一种基于安全多方计算的供应商风险评估系统及方法
CN117254913B (zh) 交互数据的识别方法及装置
CN117254911B (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