CN112804257B - 用于分布式密码密钥的方法和系统 - Google Patents

用于分布式密码密钥的方法和系统 Download PDF

Info

Publication number
CN112804257B
CN112804257B CN202110185222.5A CN202110185222A CN112804257B CN 112804257 B CN112804257 B CN 112804257B CN 202110185222 A CN202110185222 A CN 202110185222A CN 112804257 B CN112804257 B CN 112804257B
Authority
CN
China
Prior art keywords
key
processing server
private key
access
data signal
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
CN202110185222.5A
Other languages
English (en)
Other versions
CN112804257A (zh
Inventor
S·C·戴维斯
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.)
Mastercard International Inc
Original Assignee
Mastercard International Inc
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 Mastercard International Inc filed Critical Mastercard International Inc
Priority to CN202110185222.5A priority Critical patent/CN112804257B/zh
Publication of CN112804257A publication Critical patent/CN112804257A/zh
Application granted granted Critical
Publication of CN112804257B publication Critical patent/CN112804257B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • 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/045Network 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 hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • 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/0838Key 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
    • H04L9/0841Key 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 involving Diffie-Hellman or related key agreement 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Algebra (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Heterocyclic Carbon Compounds Containing A Hetero Ring Having Oxygen Or Sulfur (AREA)
  • Polyesters Or Polycarbonates (AREA)
  • Medicines That Contain Protein Lipid Enzymes And Other Medicines (AREA)

Abstract

一种用于分布用于访问数据的多个密码密钥的方法包括:接收叠加有访问密钥请求的数据信号,其中该访问密钥请求至少包括大于1的数量为n的所请求密钥;使用密钥对生成算法生成n个密钥对,其中每个密钥对包括私钥和公钥;通过将包含在所述n个密钥对中的每一个中的私钥应用于密钥导出算法来导出访问私钥;使用密钥对生成算法来生成与所导出的访问私钥相对应的访问公钥;以及针对n个密钥对中的每一个以电子方式发送叠加有包含在n个密钥对中的一个密钥对中的私钥的数据信号。

Description

用于分布式密码密钥的方法和系统
本申请是申请号为201780006747.X、申请日为2017年1月6日、发明名称为“用于通过椭圆曲线密码学进行分布式密码密钥配置和存储的方法和系统”的发明专利申请的分案申请。
相关申请的交叉引用
本申请要求2016年1月20日提交的美国专利申请第15/001,775号的申请日的优先权和权益,其全部内容通过引用合并于此。
技术领域
本公开涉及用于访问数据的多个密码密钥的分布,特别地说,使用椭圆曲线密码学来安全地分布多个密码密钥,该多个密码密钥被用于导出单个密钥以便密码密钥接收者访问需要协商数据所有权的数据。
背景技术
在计算设备数量为数十亿的世界中,数据不断被传输。数据可以从一个计算设备传输到另一个计算设备,从一个计算设备传输到许多其他计算设备,或从许多计算设备传输到单个计算设备。在许多情况下,数据传输的安全性可能与数据传输的位置同等重要。例如,如果数据得到适当保护,使得只有预定方能够查看数据,则可以使数据公开地可获得,以便更容易被预定方访问。具有高度安全性,即使公众可以访问,数据也可以免受除预定方以外的任何实体危害。因此,确保通过公共信道传输数据的安全性可能非常重要。
然而,在数据要提供给一组预定实体的情况下,这样的预期可能会非常困难。例如,如果一方想要使得公开地可获得的数据让一组四个不同的人可访问,则该方可以加密该数据并为四个不同的人中的每一个人提供适合访问数据的密钥。在这种情况下,四个密钥中任何一个的泄露都可能会泄露正在传输的数据,从而导致安全状况明显降低。为了保持最高级别的安全性,只分布单个密钥来访问数据可能符合该方的最佳利益。然而,该四个人的组可能无法识别哪个人将接收单个密钥,或者这样的识别可能耗时或者对于该方不方便。
因此,需要一种通过使用单个访问密钥实现多个实体的可访问性的用于传输数据的技术解决方案。此外,需要一种技术解决方案,其中传输方可以向多个实体中的每一个提供数据以供实体进行所有权的协商,而无需传输方参与。在这样的情况下,数据可以被安全传输,被泄露的可能性最小,并且只有单个实体可以访问,该实体可以在多个实体中选择,而无需传输方的额外参与。
发明内容
本公开提供了用于分布要在访问数据中使用的多个密钥密钥的系统和方法的描述。
一种用于分布用于访问数据的多个密码密钥的方法包括:由处理服务器的接收设备接收叠加有访问密钥请求的数据信号,其中访问密钥请求至少包括大于1的数量为n的所请求密钥;由处理服务器的生成模块使用密钥对生成算法生成n个密钥对,其中每个密钥对包括私钥和公钥;所述处理服务器的导出模块通过将所述n个密钥对中的每个密钥对中包含的私钥应用于密钥导出算法来导出访问私钥;由所述处理服务器的生成模块使用所述密钥对生成算法生成与所述导出的访问私钥对应的访问公钥;以及通过所述处理服务器的发送设备针对n个密钥对中的每个密钥对以电子方式发送叠加有包含在所述n个密钥对中的每一个中的私钥的数据信号。
一种用于分布用于访问数据的多个密码密钥的系统包括:处理服务器的发送设备;所述处理服务器的接收设备,被配置为接收叠加有访问密钥请求的数据信号,其中所述访问密钥请求至少包括数量为n个的所请求密钥;所述处理服务器的生成模块,被配置为使用密钥对生成算法来生成n个密钥对,其中每个密钥对包括私钥和公钥;以及所述处理服务器的导出模块,被配置为通过将包含在所述n个密钥对中的每一个中的私钥应用于密钥导出算法来导出访问私钥。处理服务器的生成模块还被配置为使用密钥对生成算法来生成与所导出的访问私钥对应的访问公钥。处理服务器的发送设备被配置为针对n个密钥对中的每一个以电子方式发送叠加有包含在n个密钥对中的一个密钥对中的私钥的数据信号。
附图说明
结合附图阅读下面对示例性实施例的详细描述,可以最好地理解本公开的范围。附图中包含以下图:
图1是示出根据示例性实施例的用于将密钥分布到多个实体以协商奖励所有权的高级别系统体系结构的框图。
图2是示出根据示例性实施例的图1的处理服务器的框图,该处理服务器用于将密码密钥分布到多个实体用于协商奖励所有权。
图3是示出根据示例性实施例的图2的处理服务器生成访问密钥以用于保护由多个实体协商所有权的数据的流程图。
图4是示出根据示例性实施例的使用椭圆曲线密码学来传输访问密钥的处理流程的流程图。
图5是示出根据示例性实施例的用于分布用于访问数据的多个密码密钥的示例性方法的流程图。
图6是示出根据示例性实施例的计算机系统体系结构的框图。
根据下文提供的详细描述,本公开的进一步应用领域将变得显而易见。应该理解的是,示例性实施例的详细描述仅用于说明目的,因此不打算限制本公开的范围。
具体实施方式
术语表
区块链-符合与区块链相关的一个或多个标准或惯例的所有交易的分类账。一个或多个计算设备可以包括区块链网络,区块链网络可以被配置为处理和记录交易,作为区块链中的区块的一部分。一旦区块完成,该区块就将添加到区块链中,并由此更新交易记录。在许多情况下,区块链可以是按时间顺序的交易的分类账,或者可以以适合区块链网络使用的任何其他顺序呈现。在一些情况下,可以捕获附加信息,例如源地址、时间戳等。在一些实施例中,区块链还可以由区块链网络通过工作证明和/或与之相关的任何其他合适的验证技术来确认和验证的附加数据并且在一些情况下是任意数据构成。在某些情况下,此类数据可以作为交易的一部分包含在区块链中,例如包含在附加到交易数据的附加数据中。在某些情况下,将这些数据纳入区块链可能构成交易。在这种情况下,区块链可能不会与特定的数字、虚拟、法定或其他类型的货币直接相关联。区块链可以是私密的,其中只有授权的系统或设备可以访问区块链,或者可以是公开的,区块链可以由任何设备或系统访问。无论哪种情况,设备或系统向区块链添加交易的能力都可能受到限制。
用于经由椭圆曲线密码学的密码密钥分布的系统
图1示出了用于使用椭圆曲线密码学来传输密码密钥以用于数据的安全传输的系统100。
系统100可以包括处理服务器102。下面更详细讨论的处理服务器102可以被配置为生成用于使用椭圆曲线密码学分布的多个密码密钥,所述多个密码密钥在多个计算设备104a、104b和104c对数据的可访问性中使用。这是以需要在计算机上的处理的方式完成的,该计算机专门编程为执行这里公开的功能,这些功能不能在通用计算机上执行,并且不能通过脑力过程或铅笔和纸以现实的方式完成,并且从而提供技术解决方案来在数据的安全传输中协商奖励所有权(reward ownership)。处理服务器102可以接收访问密钥请求,该访问密钥请求可以请求多个密钥以分布到计算设备104a、104b和104c以用于访问数据。访问密钥请求可以从诸如另一个计算设备或系统的外部设备接收,诸如使用合适的通信网络(例如,局域网、广域网、无线电频率、蓝牙、近场通信、因特网等)从这样的设备或系统经由以电子发送来接收,或者可以经由与处理服务器102连接的一个或多个输入设备(例如可以由处理服务器102的用户访问)来接收。访问密钥请求可以指定针对其请求访问密钥的计算设备的数量n。在图1所示的例子中,访问密钥请求可以针对三个访问密钥。
处理服务器102然后可以生成所请求数量的n个密钥对。每个密钥对可以包括私钥和公钥,这里称为“奖励”密钥对,包括“奖励”私钥和公钥。处理服务器102可以在生成所请求数量的密钥对中使用合适的密钥对生成算法。在示例性实施例中,密钥对生成算法可以是椭圆曲线密钥协定方案(elliptic curve key agreement scheme)。在另一个实施例中,如本领域技术人员可以理解的,椭圆曲线迪菲-赫尔曼(elliptic curve Diffie-Hellman,ECDH)密钥协定协议可以用于产生n个密钥对中的每一个。在任何情况下,密钥对生成算法可以是适于使用共享秘密的密钥对生成算法,这在下面更详细地讨论。
一旦生成了n个奖励密钥对,处理服务器102就可以通过将来自n个奖励密钥对中的每一个的奖励私钥应用于密钥导出算法来导出访问私钥。在一些实施例中,密钥导出算法可以包括使用XOR逻辑运算。在示例性实施例中,密钥导出算法可以使得在导出访问私钥中奖励私钥的定序(ordering)或排序(sequencing)中的变化可以导致相同的访问私钥。在这样的实施例中,拥有每个奖励私钥并且知道所使用的密钥导出算法的任何实体可以能够再现访问私钥,而不管奖励私钥的定序或排序如何。
处理服务器102还可以被配置为生成与导出访问相对应的访问公钥。访问公钥可以通过使用密钥对生成算法来生成,该算法可以是用于生成奖励密钥对的相同的密钥对生成算法。例如,在示例性实施例中,处理服务器102可以使用ECDH密钥协定协议来生成访问公钥,作为具有导出访问私钥的密钥对的一部分。
处理服务器102可以使用导出的访问私钥来限制对数据的访问。可以使用用于使用私钥限制对数据的访问的任何合适的方法。例如,在一个示例中,可以使用访问私钥和合适的加密算法来对数据进行加密。
一旦处理服务器102使用访问私钥限制了对期望数据的访问,处理服务器102就可以将奖励私钥以电子方式发送给每个计算设备104a、104b和104c,使得每个计算设备104接收不同的奖励私钥。例如,在图1所示的例子中,处理服务器102可以生成奖励私钥Ka,Kb和Kc,奖励私钥Ka,Kb和Kc可分别以电子方式发送到计算设备104a,104b和104c。在一些实施例中,可以使用因特网或另一合适的通信网络将奖励私钥叠加在以电子方式发送到相应计算设备104a、104b和104c的数据信号中。
在示例性实施例中,奖励私钥可以在使用共享秘密进行传输之前被加密。在这样的实施例中,处理服务器102和每个计算设备104a、104b和104c可以生成密钥对以用于通过共享秘密进行奖励私钥的传输,加密和解密。处理服务器102和计算设备104a、104b和104c可以分别使用相同的密钥对生成算法来生成密钥对,该密钥对生成算法可以是ECDH密钥协定协议或适用于与共享秘密结合使用的其它算法。使用密钥对生成算法,处理服务器102可以生成在此被称为包括“传输”私钥和公钥的“传输”密钥对的密钥对。每个计算设备104a、104b和104c可以使用在此被称为包括“设备”私钥和公钥的“设备”密钥对的密钥对生成算法来生成密钥对。每个计算设备104a、104b和104c可以使用合适的通信方法将其相关联的设备公钥以电子方式发送到处理服务器102。处理服务器102还可以将传输公钥以电子方式传输到计算设备104a、104b和104c中的每一个。在一些情况下,传输公钥可以与加密的奖励私钥一起发送(例如,在相同或伴随的传输中)。
在处理服务器102已经从计算设备104a、104b和104c接收到设备公钥之后,处理服务器102可以生成共享秘密。共享秘密可以使用传输私钥和设备公钥与在生成各个密钥中使用的密钥对生成算法相结合来生成。共享秘密可以是当使用第一密钥对的私钥和第二密钥对的公钥生成时或者当使用第一密钥对的公钥和第二密钥对的私钥生成时等效的秘密。例如,在所示示例中,处理服务器102可以使用由处理服务器102生成的传输私钥和从处理服务器102接收的设备公钥来生成用于将奖励私钥Ka传送给计算设备104a的共享秘密。计算设备104a可以使用从处理服务器102接收到的传输公钥和由计算设备104a生成的设备私钥来生成等同的共享秘密。
一旦处理服务器102已经生成了与计算设备104a、104b和104c相关联的共享秘密(例如,使用该特定计算设备的设备公钥),处理服务器102可以使用关联的共享秘密来对正被传送给该计算设备104a、104b和104c的奖励私钥进行加密。可以使用任何合适的加密算法,例如AES256加密算法。随后可以使用任何合适的通信方法将加密的奖励私钥以电子方式发送到关联的计算设备104a、104b和104c。在一些情况下,处理服务器102可以在用于传送已加密奖励私钥的电子通信中包括传输公钥。
每个计算设备104a、104b和104c可以生成用于解密接收到的已加密奖励私钥的共享秘密。可以使用由处理服务器102以电子方式发送的传输公钥和计算设备的所生成的设备私钥来生成共享秘密。共享秘密可以使用计算设备104a、104b和104c和处理服务器102在生成相应密钥对中所使用的密钥对生成算法来生成。计算设备104a、104b和104c可以使用共享秘密来使用由处理服务器102使用的适当的加密算法来解密奖励私钥。例如,计算设备104a、104b和104c可以使用AES256算法来利用共享秘密解密奖励私钥。
一旦每个计算设备104a、104b和104c已经接收并解密(如果适用的话)其相应的奖励私钥,计算设备104a、104b和104c可以协商每个奖励私钥的拥有。在一些情况下,与计算设备104a、104b或104c相关联的用户可以在不使用计算设备104a、104b和104c的情况下协商奖励私钥的拥有。例如,在所示示例中,计算设备104a、104b和104c的三个用户可以离线协商以协定计算设备104a的用户将收集每个奖励私钥。在这种情况下,计算设备104b和104c可以使用合适的通信方法将他们的奖励私钥以电子方式发送到计算设备104a。
在一些实施例中,奖励私钥可以使用共享秘密在计算设备104a、104b和104c之间传输。在这样的实施例中,计算设备104a、104b和104c可以交换其相关联的设备公钥以用于生成用于加密奖励私钥以便传输的共享秘密。例如,计算设备104b可以使用由计算设备104b生成的设备私钥和由计算设备104a生成的设备公钥来生成用于对奖励私钥Kb加密的共享秘密,并且用共享秘密对奖励私钥Kb进行加密。计算设备104b可以使用合适的通信方法将加密的奖励私钥Kb以电子方式发送到计算设备104a。计算设备104a可以使用由计算设备104a生成的设备私钥和由计算设备104b生成的设备公钥来生成共享秘密,并且解密奖励私钥Kb。计算设备104a和104c可以重复计算设备104a接收和解密奖励私钥Kc的过程。
一旦计算设备104a、104b或104c拥有每个奖励私钥,计算设备104a、104b或104c就可以使用由处理服务器102在其导出中使用的密钥导出算法导出访问私钥。计算设备104a、104b和104c可以使用访问私钥来访问正在传输的数据。
本文讨论的方法和系统可以实现能够使用必须经由分布到多个实体的多个密钥来导出的单个私钥来访问数据的传输。通过使用分布到多个实体的密钥,数据可以保持安全,直到由多个实体进行协商,而不需要传输方的参与。另外,因为访问密钥是使用分布到每个实体的密钥导出的,所以与使用单个密钥相比,数据可以具有显著更高的安全级别,这可以为数据提供更大的保护,特别是当数据可以公开可获得但是不可访问的情况下,例如在区块链网络106中。椭圆曲线密码学的使用可以提供更大的保护,因为即使奖励私钥也可以在其传输中具有增强的保护级别。这样,这里讨论的方法和系统可以在数据的传输和在传输的数据的访问中使用的密钥的传输方面提供更好的保护。
本文讨论的方法和系统的使用在用于访问安全数据的密码密钥的存储方面也可能是有益的。例如,实体可以使数据安全地存储,并且可以使用这里讨论的方法来生成单个私钥来加密数据,其中用于导出单个私钥的奖励私钥被分布到多个不同的计算系统,并且单个私钥被丢弃。在这种情况下,如果用于计算系统之一的密码密钥存储库泄露,则数据可能仍然是安全的,因为获得对奖励私钥的访问权的实体将不能导出用于加密数据的单个私钥。可以将泄露私钥提供给其他计算系统,并从中导出单个私钥并重复该过程以生成新的一组奖励私钥。在这种情况下,在任何加密密钥存储库泄露的任何时候时,数据都可以保持安全。如此,这里讨论的方法可能有益于提供安全的分布式密码密钥存储。
处理服务器
图2示出了系统100的处理服务器102的实施例。对于相关领域的技术人员来说显而易见的是,图2中所示的处理服务器102的实施例仅作为说明提供,并且可能不是穷尽于处理服务器102适合于执行在此讨论的功能的所有可能的配置。例如,图6中所示并且在下面更详细讨论的计算机系统可以是处理服务器102的合适配置。
处理服务器102可以包括接收设备202。接收设备202可以被配置为经由一个或多个网络协议在一个或多个网络上接收数据。在一些情况下,接收设备202还可以被配置为经由合适的通信网络(诸如局域网、广域网、射频网络、因特网)从计算设备104a、104b和104c、区块链网络106和其他实体接收数据。在一些实施例中,接收设备202可以由多个设备组成,诸如用于通过不同网络接收数据的不同接收设备,诸如用于通过近场通信接收数据的第一接收设备和用于通过因特网接收数据的第二接收设备。接收设备202可以接收以电子方式发送的数据信号,其中数据可以被叠加在数据信号上并且通过被接收设备202接收数据信号而被解码,解析,读取或以其他方式获得。在一些情况下,接收设备202可以包括用于解析接收到的数据信号以获得叠加在其上的数据的解析模块。例如,接收设备202可以包括解析器程序,该解析器程序被配置为接收并且将接收到的数据信号变换成用于由处理设备执行以执行这里描述的方法和系统的功能的可用输入。
接收设备202可以被配置为接收由计算设备104a、104b和104c以电子方式发送的数据信号,以用于执行本文所讨论的功能。由计算设备104a、104b或104c以电子方式发送的数据信号可以与设备公钥叠加,例如用于生成共享秘密。接收设备202还可以接收来自附加设备和系统的数据信号,例如来自区块链网络106和/或与其相关联的节点,以用于经由区块链网络106传输数据,并且诸如提交访问密钥请求的外部计算设备。在一些情况下,接收设备202可以接收叠加有针对n个奖励私钥的访问密钥请求的数据信号,用于访问来自计算设备104a、104b和104c的数据以接收奖励私钥之一。
处理服务器102还可以包括通信模块204。通信模块204可以被配置为在处理服务器102的模块、引擎、数据库、存储器和其他组件之间传输数据以用于执行本文所讨论的功能。通信模块204可以由一个或多个通信类型组成并且利用各种通信方法用于计算设备内的通信。例如,通信模块204可以包括总线、接触引脚连接器、导线等。在一些实施例中,通信模块204还可以被配置为在处理服务器102的内部组件和处理服务器102的外部组件之间进行通信,诸如外部连接的数据库、显示设备、输入设备等。处理服务器102还可以包括处理设备。处理设备可以被配置为执行在此讨论的处理服务器102的功能,这对于相关领域的技术人员来说是显而易见的。在一些实施例中,处理设备可以包括专门配置成执行处理设备的一个或多个功能的多个引擎和/或模块和/或由其组成,诸如查询模块218、生成模块206、导出模块208、加密模块210、解密模块212等。如本文所使用的,术语“模块”可以是特别被编程为接收输入,使用输入执行一个或多个处理并提供输出的软件或硬件。基于本公开内容,由各种模块执行的输入、输出和处理对于本领域技术人员将是显而易见的。
处理服务器102可以包括查询模块218。查询模块218可以被配置为对数据库执行查询以识别信息。查询模块218可以接收一个或多个数据值或查询字符串,并且可以在指示的数据库(例如存储器216)上基于一个或多个数据值或查询字符串执行查询字符串以识别存储在其中的信息。查询模块218然后可以根据需要将识别的信息输出到处理服务器102的适当引擎或模块。查询模块218可以例如在存储器216上执行查询以识别从计算设备104a、104b和104c接收的或者由处理服务器102生成的用于在此讨论的方法中使用的一个或多个密钥。
处理服务器102可以包括生成模块206。生成模块206可以被配置为生成密钥对和共享秘密。生成模块206可以接收作为输入的请求,该请求可以请求生成密钥对或共享秘密,并且可以包括与之一起使用的信息。生成模块206可以执行所请求的功能并且可以输出所请求的数据以供处理服务器102的另一个模块或引擎使用。例如,生成模块206可以被配置为使用在请求中包括或另外指示(例如,并且经由查询模块218在存储器216中识别)的密钥对生成算法来生成诸如奖励密钥对的密钥对。生成模块206还可以被配置为使用来自两个不同密钥对的公钥和私钥来生成共享秘密,这可以利用相同的密钥对生成算法。在一些情况下,生成模块206还可以被配置为使用密钥对生成算法生成对应于私钥的公钥。在示例性实施例中,生成模块206可以使用ECDH密钥协定协议。
处理服务器102还可以包括导出模块208。导出模块208可以被配置为导出公钥和/或私钥。导出模块208可以接收一个或多个密钥以及密钥导出算法或其指示作为输入,可以导出所请求的一个或多个密钥,并且可以输出所请求的一个或多个密钥以供处理服务器102的另一个模块或引擎使用。例如,导出模块208可以接收由生成模块206生成的多个奖励私钥,并且可以使用合适的密钥导出算法基于多个奖励私钥导出相应的访问私钥。在一些实施例中,导出模块208可以使用算法,使得奖励私钥的定序或排序可以是无关紧要的,因为在导出中对奖励私钥的使用顺序的变化可导致相同的访问私钥。在这样的实施例中,密钥导出算法可以包括使用XOR逻辑运算。
处理服务器102还可以包括加密模块210。加密模块210可以被配置为使用合适的加密算法(诸如AES256算法)来加密数据。加密模块210可以接收待加密的数据和其使用的密钥作为输入,可以使用合适的算法加密数据,并且可以将加密的数据输出到处理服务器102的另一个模块或引擎以供其使用。在一些情况下,加密模块210可以接收加密算法或其指示作为输入。在其他情况下,加密模块210可以识别要使用的加密算法。例如,加密模块210可以使用与其关联产生的共享秘密来加密奖励私钥。
处理服务器102还可以包括解密模块212。解密模块212可以被配置为使用合适的加密算法(诸如AES256算法)来解密数据。解密模块212可以接收待解密的数据和其使用的密钥作为输入,可以使用合适的算法解密数据,并且可以将解密的数据输出到处理服务器102的另一个模块或引擎以供其使用。提供给解密模块212的输入可以包括要使用的加密算法,或者可以包括其指示,诸如用于经由查询模块218识别存储在存储器216中的加密算法的指示。解密模块212可以例如使用相关联的共享秘密对由计算设备104a、104b和104c提供的密钥进行解密。
在一些实施例中,处理服务器102可以包括用于执行本文讨论的功能的附加模块或引擎。例如,处理服务器102可以包括用于结合区块链网络106使用的附加模块。在一些情况下,图2中所示并且在此讨论的处理服务器102的模块可以被配置为与其相关联地执行附加功能。例如,生成模块206可以被配置为使用访问公钥来生成区块链目的地地址。
处理服务器102还可以包括发送设备214。发送设备214可以被配置为经由一个或多个网络协议在一个或多个网络上发送数据。在一些情况下,发送设备214可以被配置为经由合适的通信网络(诸如局域网、广域网、射频网络、因特网)向计算设备104a、104b和104c、区块链网络106和其他实体发送数据。在一些实施例中,发送设备214可以包括多个设备,诸如用于通过不同网络发送数据的不同发送设备,诸如用于通过近场通信发送数据的第一发送设备和用于通过因特网发送数据的第二发送设备。发送设备214可以以电子方式发送具有可以由接收计算设备解析的叠加有数据的数据信号。在一些情况下,发送设备214可以包括用于将数据叠加,编码或以其他方式格式化为适合于传输的数据信号的一个或多个模块。
发送设备214可以被配置为以电子方式向计算设备104a、104b和104c发送与公钥和/或私钥叠加的数据信号,这些公钥和/或私钥可以在一些情况下使用共享秘密进行加密。例如,发送设备214可以被配置为将与加密的奖励私钥叠加的数据信号发送到计算设备104a、104b和104c,加密的奖励私钥还可以与传输公钥叠加以供计算设备104a、104b和104c在生成共享秘密中使用。
处理服务器102还可以包括存储器216。存储器216可以被配置为存储供处理服务器102用于执行在此讨论的功能的数据。存储器216可以被配置为使用合适的数据格式化方法和模式来存储数据,并且可以是任何适当类型的存储器,诸如只读存储器、随机存取存储器等。存储器216可以包括例如加密密钥和算法、通信协议和标准、数据格式化标准和协议、用于处理设备的模块和应用程序的程序代码以及可能适合于由处理服务器102在执行本文公开的功能时使用的其他数据,这对于相关领域的技术人员来说是显而易见的。存储器216可以被配置为存储用于执行在此讨论的处理服务器102的功能的密钥对生成算法、密钥导出算法和加密算法。
访问私钥的导出
图3示出了用于导出访问私钥以用于经由生成用于分布到多个计算设备104a、104b和104c的多个密码密钥来访问数据的过程300。
在步骤302中,处理服务器102的生成模块206可以使用合适的密钥对生成算法来生成多个奖励密钥对304a、304b和304c,该密钥对生成算法可以是椭圆曲线密钥协定方案,诸如ECDH密钥协定协议。由生成模块206生成的奖励密钥对的数量可以基于由处理服务器102的接收设备202或者与处理服务器102接口连接的一个或多个输入设备所接收的访问密钥请求。
在图3所示的例子中,生成模块206可以生成三个奖励密钥对304a、304b和304c,图3所示为密钥对1 304a,密钥对2 304b和密钥对3 304c。每个奖励密钥对304a、304b和304c可以包括奖励私钥和相应的奖励公钥。在步骤306中,处理服务器102的导出模块208可以使用与来自每个奖励密钥对304a、304b和304c的奖励私钥的XOR逻辑运算来导出访问私钥308。通过使用XOR逻辑运算,用于导出访问私钥308的操作的顺序对于导出的访问私钥可能是不重要的。例如,在图3所示的过程300中,密钥对304a、304b和304c可以包括三个奖励私钥R1,R2和R3。通过XOR(R1,XOR(R2,R3))使用所有三个密钥的XOR逻辑运算导出的访问私钥308可以等同于经由运算XOR(R2,XOR(R1,R3))和XOR(R3,XOR(R1,R2))导出的访问私钥308。
处理服务器102随后可以使用所得到的访问私钥308来限制对数据的访问。例如,访问私钥308可以用于加密数据。包括在每个奖励密钥对304a、304b和304c中的奖励私钥可以分布在计算设备104a、104b和104c中作为用于提供对受限数据的访问的手段。对于分布式密码密钥存储,实体可以使用访问私钥308来加密或以其他方式限制对数据的访问,可以丢弃访问私钥308,并且然后可以将每个奖励密钥对304a、304b和304c中的奖励私钥分布到计算设备104,计算设备a、104b和104c104可以是实体的一部分(例如,附属或受控计算系统)或者可以是关联的可信实体。在这种情况下,如果任何计算设备104a、104b和104c的密钥存储泄露,则数据可以保持安全。
用于通过椭圆曲线密码学传输密钥进行数据访问的过程
图4示出了经由椭圆曲线密码学分布私钥的过程,例如用于使用图3所示的过程300生成的、用于导出用于访问数据的访问私钥的奖励私钥的分布。
在步骤402中,处理服务器102可以生成多个奖励密钥对并从中导出访问私钥,诸如使用图3所示并在上面讨论的过程300。在步骤404中,处理服务器102和计算设备104a、104b和104c可以交换公钥以用于生成共享秘密。计算设备104a、104b和104c可以使用诸如ECDH密钥协定协议的密钥对生成算法来生成设备密钥对,设备密钥对可以包括设备私钥和设备公钥。处理服务器102的生成模块206可以使用相同的密钥对生成算法来生成传输密钥对,从而得到传输私钥和传输公钥。公钥的交换可以包括设备公钥从计算设备104a、104b和104c到处理服务器102的电子通信以及传输公钥从处理服务器102(例如,经由发送设备214)到计算设备104a、104b和104c的电子通信。
在步骤406中,处理服务器102的生成模块206可以生成共享秘密。可以使用相同的密钥对生成算法(诸如ECDH密钥协定协议),使用由生成模块206生成的传输私钥和从计算设备104a、104b和104c接收的设备公钥来生成共享秘密。在步骤406中,计算设备104a、104b和104c可以使用先前由计算设备104a、104b或104c生成的设备私钥和从处理服务器102接收到的传输公钥来使用相同的密钥对生成算法生成等同的共享秘密。
在步骤410中,处理服务器的加密模块210可以对在步骤402中生成的奖励私钥进行加密,并且将其用于通过合适的加密算法使用共享秘密来导出访问私钥。加密算法可以是例如AES256算法。在步骤412中,处理服务器102的发送设备214可以使用合适的通信网络和协议以电子方式将叠加有加密的奖励私钥的数据信号发送到计算设备104a、104b和104c。
在步骤414中,计算设备104a、104b和104c可以接收数据信号并且可以从中解析加密的奖励私钥。在步骤416中,计算设备104a、104b或104c可以解密奖励私钥。奖励私钥可以使用由处理服务器102使用共享秘密使用的相同加密算法来解密。当解密的奖励私钥与其他奖励私钥(例如,从其他计算设备104a、104b或104c接收的)使用适当的密钥导出算法组合时可用于导出访问私钥。
分布用于访问数据的多个密码密钥的示例性方法
图5示出了用于将多个密码密钥分布到多个计算设备的方法500,多个密码密钥可用于导出用于访问数据的访问密钥。
在步骤502中,叠加有访问密钥请求的数据信号可以由处理服务器(例如,处理服务器102)的接收设备(例如,接收设备202)接收,其中访问密钥请求至少包括大于1的数量为n的请求密钥。在步骤504中,可以由处理服务器的生成模块(例如,生成模块206)使用密钥对生成算法来生成n个密钥对,其中每个密钥对包括私钥和公钥。
在步骤506中,通过将包含在n个密钥对中的每一个中的私钥应用于密钥导出算法,可以由处理服务器的导出模块(例如,导出模块208)导出访问私钥。在步骤508中,可以由处理服务器的生成模块使用密钥对生成算法来生成与所导出的访问私钥对应的访问公钥。在步骤510中,与n个密钥对中的一个密钥对中包含的私钥叠加的数据信号可以由处理服务器的发送设备(例如,发送设备214)针对n个密钥对中的每一个以电子方式发送。
在一个实施例中,方法500还可以包括:在处理服务器的存储器(例如,存储器216)中存储包括传输公钥和传输私钥的传输密钥对;由处理服务器的接收设备从n个计算设备(例如,计算设备104a、104b或104c)中的每一个接收叠加有共享公钥的数据信号;由所述处理服务器的生成模块生成n个共享秘密,其中,每个共享秘密使用所述n个共享公钥中的共享公钥以及所述传输私钥和所述密钥对生成算法来生成;并且由处理服务器的加密模块(例如,加密模块210)使用加密算法用n个共享秘密中的一个共享秘密对n个密钥对中的每一个中包含的私钥进行加密,其中叠加包括在以电子方式发送的数据信号中的私钥是相应的已加密私钥。在进一步的实施例中,方法500可以进一步包括通过处理服务器的发送设备将叠加有传输公钥的数据信号以电子方式发送到n个计算设备。
在又一个实施例中,叠加有传输公钥的数据信号可以在接收到叠加有共享公钥的数据信号之前被以电子方式发送到n个计算设备。在另一个更进一步的实施例中,叠加有传输公钥的每个数据信号可以是与已加密的私钥叠加的每个数据信号相同的数据信号。在又一个实施例中,传输的数据信号可以以电子方式发送到区块链网络(例如,区块链网络106)中的节点,并且其中加密的私钥包括在交易请求中,该交易请求还包括对应于各自的共享公钥的目的地地址。
在一些实施例中,密钥对生成算法可以是椭圆曲线密钥协定方案。在进一步的实施例中,椭圆曲线密钥协定方案可以是椭圆曲线Diffie-Hellman密钥协定协议。在一个实施例中,密钥导出算法可以包括使用XOR逻辑运算。在一些实施例中,方法500可以进一步包括通过处理服务器的发送设备以电子方式将叠加有交易请求的数据信号发送到区块链网络中的节点,其中交易请求至少包括使用导出的访问私钥签名的目的地地址。
计算机系统体系结构
图6示出了计算机系统600,其中本公开的实施例或其部分可以被实现为计算机可读代码。例如,图1的处理服务器102可以使用硬件、软件、固件、其上存储有指令的非暂时性计算机可读介质或其组合来在计算机系统600中实施,并且可以在一个或多个计算机系统或其他处理系统中实施。硬件、软件或其任何组合可以体现用于实现图3-5的方法的模块和组件。
如果使用可编程逻辑,则这样的逻辑可以在市场上可买到的处理平台或专用设备上执行。本领域的普通技术人员可以理解,可以使用各种计算机系统配置来实践所公开的主题的实施例,包括多核多处理器系统、小型计算机、大型计算机、与分布式功能链接或集群的计算机,以及几乎可以嵌入到任何设备中的普通或微型计算机。例如,可以使用至少一个处理器设备和存储器来实现上述实施例。
这里讨论的处理器单元或设备可以是单个处理器、多个处理器或其组合。处理器设备可具有一个或多个处理器“核心”。如本文讨论的术语“计算机程序介质”、“非暂时性计算机可读介质”和“计算机可用介质”通常用于指代有形介质,例如可移动存储单元618、可移动存储单元622以及安装在硬盘驱动器612中的硬盘。
根据该示例性计算机系统600描述本公开的各种实施例。在阅读本说明书之后,相关领域的技术人员将明白如何使用其他计算机系统和/或计算机体系结构来实现本公开。尽管操作可以被描述为顺序过程,但是一些操作实际上可以并行地,并发地和/或在分布式环境中执行,并且程序代码可以本地或远程存储以供单个或多个处理器机器访问。另外,在一些实施例中,可以对操作的顺序重新排布而不脱离所公开的主题的精神。
处理器设备604可以是专门配置为执行本文讨论的功能的专用或通用处理器设备。处理器设备604可以连接到通信基础设施606,诸如总线、消息队列、网络、多核消息传递方案等。网络可以是适合于执行本文公开的功能的任何网络,并且可以包括局域网(LAN)、广域网(WAN)、无线网络(例如WiFi)、移动通信网络、卫星网络、因特网、光纤、同轴电缆、红外线、射频(RF)或其任何组合。其他合适的网络类型和配置对于相关领域的技术人员将是显而易见的。计算机系统600还可以包括主存储器608(例如,随机存取存储器、只读存储器等),并且还可以包括辅助存储器610。辅助存储器610可以包括硬盘驱动器612和可移动存储驱动器614,诸如软盘驱动器、磁带驱动器、光盘驱动器、闪存等。
可移动存储驱动器614可以以公知的方式从可移动存储单元618读取和/或写入可移动存储单元618。可移动存储单元618可以包括可移动存储驱动器614可以读取和写入的可移动存储介质。例如,如果可移动存储驱动器614是软盘驱动器或通用串行总线端口,则可移动存储单元618可以分别是软盘或便携式快闪驱动器。在一个实施例中,可移动存储单元618可以是非暂时性计算机可读记录介质。
在一些实施例中,辅助存储器610可以包括用于允许计算机程序或其他指令被加载到计算机系统600中的替代装置,例如可移动存储单元622和接口620。这种装置的示例可以包括程序盒和盒接口(例如,如视频游戏系统中所见)、可移动存储器芯片(例如,EEPROM、PROM等)和相关联的插座,以及其他可移动存储单元622和接口620,这对于相关领域技术人员而言是显而易见的。
存储在计算机系统600中(例如,在主存储器608和/或辅助存储器610中)的数据可以存储在任何类型的合适的计算机可读介质上,诸如光学存储装置(例如,紧凑式盘、数字多功能盘、蓝光盘等)或磁带存储器(例如,硬盘驱动器)。可以以任何类型的合适的数据库配置来配置数据,诸如关系数据库、结构化查询语言(SQL)数据库、分布式数据库、对象数据库等。合适的配置和存储类型对于相关领域技术人员而言是显而易见的。
计算机系统600还可以包括通信接口624。通信接口624可以被配置为允许软件和数据在计算机系统600和外部设备之间传输。示例性通信接口624可以包括调制解调器、网络接口(例如,以太网卡)、通信端口、PCMCIA插槽和卡等。经由通信接口624传输的软件和数据可以是信号的形式,其可以是电子、电磁、光学或其他信号,这对相关领域的技术人员来说是显而易见的。信号可以经由通信路径626行进,通信路径626可以被配置为承载信号并且可以使用电线、电缆、光纤、电话线、蜂窝电话链路、射频链路等来实现。
计算机系统600还可以包括显示器接口602。显示器接口602可以被配置为允许数据在计算机系统600和外部显示器630之间传输。示例性显示器接口602可以包括高清晰度多媒体接口(HDMI)、数字视频接口(DVI)、视频图形阵列(VGA)等。显示器630可以是用于显示经由计算机系统600的显示器接口602发送的数据的任何适当类型的显示器,包括阴极射线管(CRT)显示器、液晶显示器(LCD)、发光二极管(LED)显示器、电容式触摸显示器、薄膜晶体管(TFT)显示器等。
计算机程序介质和计算机可用介质可以指存储器,诸如主存储器608和辅助存储器610,其可以是存储器半导体(例如,DRAM等)。这些计算机程序产品可以是用于向计算机系统600提供软件的装置。计算机程序(例如,计算机控制逻辑)可以存储在主存储器608和/或辅助存储器610中。计算机程序也可以经由通信接口624接收。这些计算机程序在被执行时可以使得计算机系统600能够实现本文所讨论的本方法。特别地,计算机程序在被执行时可以使得处理器设备604能够实现图3-5所示的方法。如在此讨论的那样。因此,这样的计算机程序可以表示计算机系统600的控制器。在使用软件实现本公开的情况下,可以将软件存储在计算机程序产品中,并且使用可移动存储驱动器614、接口620和硬盘驱动器612或通信接口624将软件加载到计算机系统600中。
处理器设备604可以包括被配置为执行计算机系统600的功能的一个或多个模块或引擎。每个模块或引擎可以使用硬件来实现,并且在一些情况下也可以使用软件,诸如对应于程序代码和/或存储在主存储器608或辅助存储器610中的程序。在这种情况下,在由计算机系统600的硬件执行之前,程序代码可以由处理器设备604(例如,通过编译模块或引擎)编译。例如,程序代码可以是以编程语言编写的源代码,其被转换成诸如汇编语言或机器代码之类的较低级别的语言以供处理器设备604和/或计算机系统600的任何附加硬件组件来执行。编译过程可以包括使用词法分析、预处理、解析、语义分析、语法指导转换、代码生成、代码优化以及可适用于将程序代码转换成适合于控制计算机系统600执行本文公开的功能的较低级别语言的任何其他技术。相关领域的技术人员将明白,这样的过程导致计算机系统600是专门编程为执行上述功能的专门配置的计算机系统600。
与本公开一致的技术提供了用于分布用于访问数据的多个密码密钥的系统和方法以及其他特征。虽然以上已经描述了所公开的系统和方法的各种示例性实施例,但应当理解,它们仅仅是为了示例的目的而提供的,而不是限制。这并非详尽无遗,并且不会将披露内容限制于所披露的确切形式。鉴于上述教导,修改和变化是可能的,或者可以从本公开的实践中获得,而不背离广度或范围。

Claims (20)

1.一种用于分布用于访问数据的多个密码密钥的方法,包括:
由处理服务器的接收设备接收叠加有访问密钥请求的数据信号,其中,所述访问密钥请求至少包括大于1的数量为n的所请求密钥;
由所述处理服务器的生成模块使用密钥对生成算法生成n个密钥对,其中,每个密钥对包括私钥和公钥;
由所述处理服务器的导出模块通过将所述n个密钥对中的每个密钥对中包含的私钥应用于密钥导出算法来导出访问私钥;
由所述处理服务器的所述生成模块使用所述密钥对生成算法生成与导出的访问私钥对应的访问公钥;以及
由所述处理服务器的发送设备针对所述n个密钥对中的每个密钥对以电子方式发送数据信号到多个计算设备的每一个,该数据信号叠加有所述n个密钥对中的一个密钥对中包含的私钥,使得所述多个计算设备的每一个具有不同的私钥;
其中,所述访问私钥能够被用作签名来访问被传送到使用所述访问公钥生成的目的地地址的区块链。
2.根据权利要求1所述的方法,还包括:
在所述处理服务器的存储器中存储包括传输公钥和传输私钥的传输密钥对;
由所述处理服务器的所述接收设备从n个计算设备中的每一个接收叠加有共享公钥的数据信号;
由所述处理服务器的所述生成模块生成n个共享秘密,其中,每个共享秘密使用所述n个共享公钥中的共享公钥以及所述传输私钥和所述密钥对生成算法来生成;以及
由所述处理服务器的加密模块使用加密算法将所述n个密钥对中的每个密钥对中包含的私钥用所述n个共享秘密中的一个共享秘密进行加密,其中,
叠加包含在以电子方式发送的数据信号中的私钥是相应的已加密私钥。
3.根据权利要求2所述的方法,还包括:
由所述处理服务器的所述发送设备以电子方式将叠加有所述传输公钥的数据信号发送到n个计算设备。
4.根据权利要求3所述的方法,其中,在接收叠加有所述共享公钥的所述数据信号之前,将叠加有所述传输公钥的所述数据信号以电子方式发送到所述n个计算设备。
5.根据权利要求3所述的方法,其中,叠加有所述传输公钥的每个数据信号是与叠加有已加密私钥的每个数据信号相同的数据信号。
6.根据权利要求2所述的方法,其中,所发送的数据信号以电子方式被发送到区块链网络中的节点,并且其中,所述已加密私钥被包括在交易请求中,所述交易请求还包括与相应的共享公钥对应的目的地地址。
7.根据权利要求1所述的方法,其中,所述密钥对生成算法是椭圆曲线密钥协定方案。
8.根据权利要求7所述的方法,其中,所述椭圆曲线密钥协定方案是椭圆曲线迪菲-赫尔曼密钥协定协议。
9.根据权利要求1所述的方法,其中,所述密钥导出算法包括使用XOR逻辑运算。
10.根据权利要求1所述的方法,还包括:
由所述处理服务器的所述发送设备以电子方式将叠加有交易请求的数据信号发送到区块链网络中的节点,其中,所述交易请求至少包括使用所导出的访问私钥签名的目的地地址。
11.一种用于分布用于访问数据的多个密码密钥的系统,包括:
处理服务器的发送设备;
所述处理服务器的接收设备,被配置为接收叠加有访问密钥请求的数据信号,其中,所述访问密钥请求至少包括数量为n的所请求密钥;
所述处理服务器的生成模块,被配置为使用密钥对生成算法来生成n个密钥对,其中,每个密钥对包括私钥和公钥;以及
所述处理服务器的导出模块,被配置为通过将包含在所述n个密钥对中的每个密钥对中的私钥应用于密钥导出算法来导出访问私钥,其中,
所述处理服务器的所述生成模块进一步被配置为使用所述密钥对生成算法生成与所导出的访问私钥对应的访问公钥,并且
所述处理服务器的所述发送设备被配置为针对所述n个密钥对中的每个密钥对以电子方式向多个计算设备的每一个发送叠加有n个密钥对中的一个密钥对中包含的私钥的数据信号,使得所述多个计算设备的每一个具有不同的私钥;
其中,所述访问私钥能够被用作签名来访问被传送到使用所述访问公钥生成的目的地地址的区块链。
12.根据权利要求11所述的系统,还包括:
所述处理服务器的加密模块;以及
所述处理服务器的存储器,被配置为存储包括传输公钥和传输私钥的传输密钥对,其中,
所述处理服务器的所述接收设备还被配置为从n个计算设备中的每一个接收叠加有共享公钥的数据信号,
所述处理服务器的所述生成模块还被配置为生成n个共享秘密,其中,每个共享秘密使用所述n个共享公钥中的共享公钥以及所述传输私钥和所述密钥对生成算法来生成,
所述处理服务器的所述加密模块被配置为使用加密算法用所述n个共享秘密中的一个共享秘密对所述n个密钥对中的每个密钥对中包含的私钥进行加密,并且
叠加包含在以电子方式发送的数据信号中的私钥是相应的已加密私钥。
13.根据权利要求12所述的系统,其中,所述处理服务器的所述发送设备还被配置为以电子方式将叠加有所述传输公钥的数据信号发送到所述n个计算设备。
14.根据权利要求13所述的系统,其中,在接收叠加有所述共享公钥的所述数据信号之前,以电子方式将叠加有所述传输公钥的所述数据信号发送到所述n个计算设备。
15.根据权利要求13所述的系统,其中,叠加有所述传输公钥的每个数据信号是与叠加有已加密私钥的每个数据信号相同的数据信号。
16.根据权利要求12所述的系统,其中,所发送的数据信号以电子方式被发送到区块链网络中的节点,并且其中,所述已加密私钥被包括在交易请求中,所述交易请求还包括与相应的共享公钥对应的目的地地址。
17.根据权利要求11所述的系统,其中,所述密钥对生成算法是椭圆曲线密钥协定方案。
18.根据权利要求17所述的系统,其中,所述椭圆曲线密钥协定方案是椭圆曲线迪菲-赫尔曼密钥协定协议。
19.根据权利要求11所述的系统,其中,所述密钥导出算法包括使用XOR逻辑运算。
20.根据权利要求11所述的系统,其中,所述处理服务器的所述发送设备进一步被配置为以电子方式将叠加有交易请求的数据信号发送到区块链网络中的节点,其中,所述交易请求至少包含使用所导出的访问私钥签名的目的地地址。
CN202110185222.5A 2016-01-20 2017-01-06 用于分布式密码密钥的方法和系统 Active CN112804257B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110185222.5A CN112804257B (zh) 2016-01-20 2017-01-06 用于分布式密码密钥的方法和系统

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US15/001,775 2016-01-20
US15/001,775 US10103885B2 (en) 2016-01-20 2016-01-20 Method and system for distributed cryptographic key provisioning and storage via elliptic curve cryptography
PCT/US2017/012437 WO2017127238A1 (en) 2016-01-20 2017-01-06 Method and system for distributed cryptographic key provisioning and storage via elliptic curve cryptography
CN202110185222.5A CN112804257B (zh) 2016-01-20 2017-01-06 用于分布式密码密钥的方法和系统
CN201780006747.XA CN108463983B (zh) 2016-01-20 2017-01-06 用于分布式密码密钥的方法和系统

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201780006747.XA Division CN108463983B (zh) 2016-01-20 2017-01-06 用于分布式密码密钥的方法和系统

Publications (2)

Publication Number Publication Date
CN112804257A CN112804257A (zh) 2021-05-14
CN112804257B true CN112804257B (zh) 2023-07-11

Family

ID=57868395

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201780006747.XA Active CN108463983B (zh) 2016-01-20 2017-01-06 用于分布式密码密钥的方法和系统
CN202110185222.5A Active CN112804257B (zh) 2016-01-20 2017-01-06 用于分布式密码密钥的方法和系统

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201780006747.XA Active CN108463983B (zh) 2016-01-20 2017-01-06 用于分布式密码密钥的方法和系统

Country Status (13)

Country Link
US (4) US10103885B2 (zh)
EP (2) EP3668049B1 (zh)
JP (2) JP7045997B2 (zh)
CN (2) CN108463983B (zh)
AU (2) AU2017208878B2 (zh)
BR (1) BR112018011353B1 (zh)
CA (1) CA3009338C (zh)
DK (1) DK3381172T3 (zh)
ES (1) ES2781091T3 (zh)
HK (1) HK1259028A1 (zh)
MX (2) MX2018007856A (zh)
SG (2) SG10202002256UA (zh)
WO (1) WO2017127238A1 (zh)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8874477B2 (en) 2005-10-04 2014-10-28 Steven Mark Hoffberg Multifactorial optimization system and method
US10103885B2 (en) 2016-01-20 2018-10-16 Mastercard International Incorporated Method and system for distributed cryptographic key provisioning and storage via elliptic curve cryptography
DE102016103498A1 (de) * 2016-02-26 2017-08-31 Infineon Technologies Ag Ein Verfahren zum Übermitteln von Daten von einem Sensorbauelement an eine elektronische Steuereinheit, ein Sensorbauelement und eine elektronische Steuereinheit
US10341309B1 (en) 2016-06-13 2019-07-02 Allstate Insurance Company Cryptographically protecting data transferred between spatially distributed computing devices using an intermediary database
US10067810B2 (en) * 2016-07-28 2018-09-04 Cisco Technology, Inc. Performing transactions between application containers
EP3497614B1 (en) * 2016-08-10 2022-01-05 Nextlabs, Inc. Sharing encrypted documents within and outside an organization
US20210279723A1 (en) 2017-01-25 2021-09-09 State Farm Mutual Automobile Insurance Company Systems and methods for industry reporting via blockchain
US11025596B1 (en) * 2017-03-02 2021-06-01 Apple Inc. Cloud messaging system
US11128452B2 (en) * 2017-03-25 2021-09-21 AVAST Software s.r.o. Encrypted data sharing with a hierarchical key structure
US10749670B2 (en) * 2017-05-18 2020-08-18 Bank Of America Corporation Block chain decoding with fair delay for distributed network devices
WO2018216749A1 (ja) * 2017-05-25 2018-11-29 Necネットワーク・センサ株式会社 暗号通信方法、情報処理装置及びプログラム
EP3644548B1 (en) * 2017-06-21 2023-07-26 Nippon Telegraph And Telephone Corporation Key exchange system and key exchange method
US20180373882A1 (en) * 2017-06-23 2018-12-27 Thijs Veugen Privacy preserving computation protocol for data analytics
US11132451B2 (en) * 2017-08-31 2021-09-28 Parity Technologies Ltd. Secret data access control systems and methods
US10929823B2 (en) 2017-09-12 2021-02-23 Northwestern University Peer auditing in a blockchain distribution network
SG11202003508SA (en) 2017-10-19 2020-05-28 Autnhive Corp System and method for generating and depositing keys for multi-point authentication
US11488433B2 (en) 2018-01-11 2022-11-01 Mastercard International Incorporated Method and system for public elections on a moderated blockchain
EP3794766A1 (en) * 2018-05-14 2021-03-24 Nchain Holdings Limited Computer-implemented systems and methods for using a blockchain to perform an atomic swap
CN110493168A (zh) * 2018-07-19 2019-11-22 江苏恒宝智能系统技术有限公司 基于非对称加密技术的医药疗效监控共享方法
CN109104419B (zh) * 2018-07-27 2021-06-01 苏州朗润创新知识产权运营有限公司 一种区块链账号的生成方法及系统
US10764039B2 (en) 2018-08-01 2020-09-01 The Toronto-Dominion Bank Dynamic generation and management of asymmetric cryptographic keys using distributed ledgers
US10491404B1 (en) * 2018-09-12 2019-11-26 Hotpyp, Inc. Systems and methods for cryptographic key generation and authentication
KR20200034020A (ko) 2018-09-12 2020-03-31 삼성전자주식회사 전자 장치 및 그의 제어 방법
WO2020076720A1 (en) * 2018-10-12 2020-04-16 Medici Ventures, Inc. Doubly-encrypted secret parts allowing for assembly of a secret using a subset of the doubly-encrypted secret parts
GB201817507D0 (en) * 2018-10-27 2018-12-12 Nchain Holdings Ltd Computer implemented system and method
EP3652884B1 (en) 2018-11-27 2022-01-19 Advanced New Technologies Co., Ltd. Asymmetric key management in consortium blockchain networks
WO2020109912A1 (en) * 2018-11-27 2020-06-04 nChain Holdings Limited Computer implemented system and method for storing data on a blockchain
US11349653B2 (en) 2018-12-18 2022-05-31 Hewlett Packard Enterprise Development Lp Multiple-site private network secured by IPsec using blockchain network for key exchange
US10937339B2 (en) 2019-01-10 2021-03-02 Bank Of America Corporation Digital cryptosystem with re-derivable hybrid keys
CN109921900A (zh) * 2019-02-18 2019-06-21 深圳市优学链科技有限公司 一种分布式密钥生成的算法
US11245516B2 (en) * 2019-04-24 2022-02-08 Veridify Security Inc. Shared secret data production with use of concealed cloaking elements
KR102625088B1 (ko) * 2019-05-08 2024-01-16 삼성에스디에스 주식회사 데이터 공유 장치 및 방법
US20200358604A1 (en) * 2019-05-08 2020-11-12 Samsung Sds Co., Ltd. Apparatus and method for sharing data
EP3754896A1 (en) * 2019-06-18 2020-12-23 Koninklijke Philips N.V. Authenticated key agreement
US10839060B1 (en) * 2019-08-27 2020-11-17 Capital One Services, Llc Techniques for multi-voice speech recognition commands
US11516147B2 (en) * 2019-10-02 2022-11-29 Red Hat, Inc. Blockchain-based dynamic storage provisioner
WO2021150082A1 (ko) * 2020-01-23 2021-07-29 주식회사 피에스디엘 보안 장치 및 보안 프로그램
KR20230024279A (ko) * 2020-05-11 2023-02-20 오튼하이브 코퍼레이션 컴퓨터 네트워크에서 제어된 손상을 이용하여 키를 생성하는 방법
TWI776416B (zh) * 2021-03-08 2022-09-01 英屬開曼群島商現代財富控股有限公司 分層確定性錢包的門檻式簽章系統及其方法
TWI759138B (zh) * 2021-03-15 2022-03-21 英屬開曼群島商現代財富控股有限公司 基於輸入密碼的門檻式簽章系統及其方法
CN113364769B (zh) * 2021-06-03 2022-04-15 浙江大学 一种区块链网络中的隐蔽信道构造方法

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6850252B1 (en) * 1999-10-05 2005-02-01 Steven M. Hoffberg Intelligent electronic appliance system and method
US6330671B1 (en) * 1997-06-23 2001-12-11 Sun Microsystems, Inc. Method and system for secure distribution of cryptographic keys on multicast networks
JPH11239124A (ja) * 1998-02-23 1999-08-31 Nippon Telegr & Teleph Corp <Ntt> 秘密鍵回復方法および装置
JP3331327B2 (ja) * 1998-12-09 2002-10-07 日本電信電話株式会社 鍵管理方法及びプログラム記録媒体
WO2000049768A1 (en) * 1999-02-17 2000-08-24 Thomas Mittelholzer Method for signature splitting to protect private keys
SE9902339L (sv) 1999-06-21 2001-02-20 Ericsson Telefon Ab L M Anordning omfattande en kapacitiv närhetsavkännande sensor
US6834112B1 (en) * 2000-04-21 2004-12-21 Intel Corporation Secure distribution of private keys to multiple clients
US7181017B1 (en) * 2001-03-23 2007-02-20 David Felsher System and method for secure three-party communications
JP2004048479A (ja) * 2002-07-12 2004-02-12 Kddi Corp 共有化された暗号化情報の暗号鍵管理方法
US6931133B2 (en) 2002-09-03 2005-08-16 Verisign, Inc. Method and system of securely escrowing private keys in a public key infrastructure
WO2006054843A1 (en) * 2004-11-17 2006-05-26 Samsung Electronics Co., Ltd. Method for transmitting content in home network using user-binding
ES2376883T3 (es) * 2006-02-07 2012-03-20 Nextenders (India) Private Limited Sistema de gestión de seguridad de documentos
JP2008021164A (ja) * 2006-07-13 2008-01-31 Konica Minolta Holdings Inc 情報処理装置、データの管理方法、およびコンピュータプログラム
US8254579B1 (en) * 2007-01-31 2012-08-28 Hewlett-Packard Development Company, L.P. Cryptographic key distribution using a trusted computing platform
CN101459505B (zh) * 2007-12-14 2011-09-14 华为技术有限公司 生成用户私钥的方法、系统及用户设备、密钥生成中心
WO2010067433A1 (ja) * 2008-12-11 2010-06-17 三菱電機株式会社 自己認証通信機器、自己認証検証通信機器、機器認証システム、機器認証システムの機器認証方法、自己認証通信プログラムおよび自己認証検証通信プログラム
CN101917403B (zh) * 2010-07-23 2013-06-05 华中科技大学 一种用于密文存储的分布式密钥管理方法
IL213662A0 (en) * 2011-06-20 2011-11-30 Eliphaz Hibshoosh Key generation using multiple sets of secret shares
IL216162A0 (en) * 2011-11-06 2012-02-29 Nds Ltd Electronic content distribution based on secret sharing
US9053329B2 (en) * 2012-05-24 2015-06-09 Lockbox Llc Systems and methods for validated secure data access
US9705854B2 (en) * 2012-07-09 2017-07-11 Massachusetts Institute Of Technology Cryptography and key management device and architecture
US9350536B2 (en) * 2012-08-16 2016-05-24 Digicert, Inc. Cloud key management system
US9311500B2 (en) * 2013-09-25 2016-04-12 Amazon Technologies, Inc. Data security using request-supplied keys
CN103560882B (zh) * 2013-10-29 2016-08-17 武汉理工大学 一种基于标识的椭圆曲线密码系统
JP2015099961A (ja) * 2013-11-18 2015-05-28 三菱電機株式会社 情報配信システム、サーバ装置、情報生成装置、端末装置、情報配信方法及びプログラム
US10700856B2 (en) * 2013-11-19 2020-06-30 Network-1 Technologies, Inc. Key derivation for a module using an embedded universal integrated circuit card
US9280678B2 (en) * 2013-12-02 2016-03-08 Fortinet, Inc. Secure cloud storage distribution and aggregation
US20150213433A1 (en) * 2014-01-28 2015-07-30 Apple Inc. Secure provisioning of credentials on an electronic device using elliptic curve cryptography
US20150254640A1 (en) * 2014-03-05 2015-09-10 Cryptographi, Inc. Method and apparatus for digital currency paper wallet
US10796302B2 (en) * 2014-04-23 2020-10-06 Minkasu, Inc. Securely storing and using sensitive information for making payments using a wallet application
US9576149B2 (en) * 2014-06-13 2017-02-21 BicDroid Inc. Methods, systems and computer program product for providing verification code recovery and remote authentication
US20160191470A1 (en) * 2014-08-07 2016-06-30 Ajay Movalia Method and apparatus for securely transmitting communication between multiple users
US9813245B2 (en) * 2014-08-29 2017-11-07 Visa International Service Association Methods for secure cryptogram generation
CN104717297A (zh) * 2015-03-30 2015-06-17 上海交通大学 一种安全云存储方法及系统
US20170132626A1 (en) * 2015-11-05 2017-05-11 Mastercard International Incorporated Method and system for processing of a blockchain transaction in a transaction processing network
US9832024B2 (en) * 2015-11-13 2017-11-28 Visa International Service Association Methods and systems for PKI-based authentication
US10103885B2 (en) 2016-01-20 2018-10-16 Mastercard International Incorporated Method and system for distributed cryptographic key provisioning and storage via elliptic curve cryptography

Also Published As

Publication number Publication date
US10103885B2 (en) 2018-10-16
JP2022046643A (ja) 2022-03-23
US10848308B2 (en) 2020-11-24
CN112804257A (zh) 2021-05-14
US20190028275A1 (en) 2019-01-24
EP3668049A1 (en) 2020-06-17
CN108463983A (zh) 2018-08-28
BR112018011353B1 (pt) 2020-03-17
AU2017208878B2 (en) 2019-07-11
US20210044437A1 (en) 2021-02-11
ES2781091T3 (es) 2020-08-28
AU2019246903B2 (en) 2021-08-12
WO2017127238A1 (en) 2017-07-27
CN108463983B (zh) 2021-02-12
US10396988B2 (en) 2019-08-27
MX2018007856A (es) 2018-08-01
HK1259028A1 (zh) 2019-11-22
SG10202002256UA (en) 2020-04-29
US20190342094A1 (en) 2019-11-07
EP3381172B1 (en) 2020-02-26
CA3009338A1 (en) 2017-07-27
JP7045997B2 (ja) 2022-04-01
SG11201804697PA (en) 2018-07-30
JP2019507539A (ja) 2019-03-14
CA3009338C (en) 2020-10-27
US11664990B2 (en) 2023-05-30
AU2019246903A1 (en) 2019-10-31
AU2017208878A1 (en) 2018-06-07
JP7370371B2 (ja) 2023-10-27
EP3668049B1 (en) 2022-07-13
US20170207917A1 (en) 2017-07-20
EP3381172A1 (en) 2018-10-03
BR112018011353A2 (pt) 2018-12-04
MX2022003019A (es) 2022-04-07
DK3381172T3 (da) 2020-04-27

Similar Documents

Publication Publication Date Title
CN112804257B (zh) 用于分布式密码密钥的方法和系统
CN117278224A (zh) 用于验证身份属性信息的方法和系统
US11924185B2 (en) Method and system for general data protection compliance via blockchain
CN110381012B (zh) 用于促进加密数据的广播的方法和系统
US20210117938A1 (en) Method and system for control of pii through limiting transfers on blockchain
US20230283453A1 (en) Method and system for the atomic exchange of blockchain assets using transient key pairs
US20230196346A1 (en) Method and system of providing for offline transactions in digital currencies
CN116112268A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40049900

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant