CN111262825B - 在包括多个节点的通信系统中处理用户公钥的装置和方法 - Google Patents

在包括多个节点的通信系统中处理用户公钥的装置和方法 Download PDF

Info

Publication number
CN111262825B
CN111262825B CN201911126875.5A CN201911126875A CN111262825B CN 111262825 B CN111262825 B CN 111262825B CN 201911126875 A CN201911126875 A CN 201911126875A CN 111262825 B CN111262825 B CN 111262825B
Authority
CN
China
Prior art keywords
user
public key
nodes
account information
correct
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
CN201911126875.5A
Other languages
English (en)
Other versions
CN111262825A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of CN111262825A publication Critical patent/CN111262825A/zh
Application granted granted Critical
Publication of CN111262825B publication Critical patent/CN111262825B/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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • 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/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0884Network 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • 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
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • 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

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)
  • Computer And Data Communications (AREA)

Abstract

在包括多个节点的通信系统中处理用户公钥的装置和方法。一种在包括多个节点的通信系统中使用的通信方法。所述多个节点当中的两个或更多个认证节点分别从用户接收所述用户的账户信息以及所述用户的公钥。当判定所述账户信息正确时,所述两个或更多个认证节点分别向所述多个节点发送指示所述账户信息正确的消息以及所述用户的所述公钥。当根据从其它节点接收的消息检测到指定数量或更多个认证节点已判定所述账户信息正确时,所述多个节点中的每一个将所述用户的所述公钥登记在公钥列表中,所述公钥列表存储有已被允许参与所述通信系统的用户的公钥。

Description

在包括多个节点的通信系统中处理用户公钥的装置和方法
技术领域
本文讨论的实施方式涉及在包括多个节点的通信系统中处理用户公钥的装置和方法。
背景技术
近年来,区块链技术作为实现虚拟货币的基础已引起关注。已经考虑将区块链技术应用于虚拟货币以外的领域。例如,关注的案例可能是使用区块链以在公司或组织之间共享信息的案例。
已知只有有限用户参与的数据分发市场是使用区块链技术的一种服务类型。数据分发市场的参与者可以向市场提供他/她拥有的数据。参与者可以获取或购买已被提供给市场的数据。将区块链技术应用于只有有限用户参与的系统的模式可以被称为联盟区块链(consortium block chain)。
在联盟区块链系统中,作为认证站进行操作的参与节点对用户进行认证。在这种情况下,认证站通过使用例如电子证书来对用户进行认证。
例如,希望参与系统的新用户可以向认证站发送账户信息。账户信息包括用户所属公司的名称以及联系信息(例如,地址、电话号码、电子邮件地址)。认证站核对账户信息的细节是否正确。在这种情况下,例如,认证站可以执行以下核对任务:
(1)参考第三方的数据库,并核对公司是否实际存在。
(2)拨打公司的主电话号码,并核对账户信息的申请细节。
(3)向公司发送邮件,并从该公司收到回复。
当账户信息的细节正确时,认证站发出电子证书。
针对分布式文件共享系统提出的一种方法是其中区块链应用执行用户/组认证或确保内容的唯一性的方法(例如,日本公开专利公报No.2018-081464)。还已提出了用于执行简单且快速的电子认证的技术(例如,国际公布单行本No.WO 2018/088475)。
一旦用于对互联网世界中的认证站进行管理的公司失去信誉,则这样的公司将很难继续该业务。因此,这种认证站尽可能严格地对用户进行检查。相比之下,在只有有限用户参与的联盟系统中,认证站可以轻易地进行违禁行为。例如,恶意参与节点可能会充当认证节点并颁发电子证书。
当多个参与节点中的一个或几个作为认证节点进行操作时,将给这些参与节点施加很大的负荷。例如,诸如上文所描述的对账户信息进行核对的任务可能给作为认证站进行操作的参与节点的管理员带来沉重的负担。
本发明的一个方面的目的是提供借助于参与系统的多个节点来对用户进行认证的方法和配置。
发明内容
根据实施方式的一个方面,在包括多个节点的通信系统中使用一种通信方法。所述多个节点当中的两个或更多个认证节点分别从用户接收所述用户的账户信息以及所述用户的公钥。当判定所述账户信息正确时,所述两个或更多个认证节点分别向所述多个节点发送指示所述账户信息正确的消息以及所述用户的所述公钥。当根据从其它节点接收的消息检测到指定数量或更多个认证节点已判定所述账户信息正确时,所述多个节点中的每一个将所述用户的所述公钥登记在公钥列表中,所述公钥列表存储有已被允许参与所述通信系统的用户的公钥。
附图说明
图1示出了根据本发明的实施方式的通信系统的示例;
图2至图4示出了用户注册过程的示例;
图5示出了用户认证过程的示例;
图6示出了用户注册和用户认证的次序的示例;
图7示出了由单个认证站管理的用户注册和用户认证的次序的示例;
图8示出了从用户注册延伸到执行交易的次序的示例;
图9示出了用户认证失败的情况下的次序的示例;
图10是指示用户注册处理的示例的流程图;
图11是指示用户认证处理的示例的流程图;
图12示出了在各个节点中实现的计算机的硬件配置的示例;
图13和图14示出了根据另一实施方式的用户注册过程的示例;以及
图15是指示在未作为认证节点进行操作的对等方处执行的用户注册处理的示例的流程图。
具体实施方式
图1示出了根据本发明的实施方式的通信系统的示例。在该示例中,通信系统100包括多个节点。各个节点设置有通信装置。通信系统100提供例如数据分发服务。在这种情况下,各个节点设置有用于已参与数据分发服务的用户的通信装置。
各个通信装置可以与其它任意通信装置进行通信。因此,为各个节点提供的通信装置在下文中可以被称为“对等方(peer)”。在图1描绘的示例中,通信系统100包括对等方A、B和C。对等方A是用户A使用的通信装置。对等方B是用户B使用的通信装置。对等方C是用户C使用的通信装置。
对等方A-C中的各个对等方生成一对私钥和公钥,以执行加密通信。在加密通信中,例如,使用私钥加密的数据可以使用对应的公钥解密。另选地,使用公钥加密的数据可以使用对应的私钥解密。因此,对等方A-C中的每一个提前获取其它用户的公钥。对等方A-C中的各个对等方拥有其私钥。
如图1所描绘的,对等方A-C中的每一个包括公钥列表。已被允许参与通信系统100的用户的公钥被登记在公钥列表中。因此,用户B的公钥PBb以及用户C的公钥PBc被登记在对等方A的公钥列表中。用户A的公钥PBa以及用户C的公钥PBc被登记在对等方B的公钥列表中。用户A的公钥PBa以及用户B的公钥PBb被登记在对等方C的公钥列表中。在图1所描绘的示例中,各个对等方的公钥也被登记在该对等方的公钥列表中。
例如,通信系统100可以提供由区块链支持的数据分发服务。在这种情况下,在通信系统100中建立共识之后,执行从用户或对等方请求的交易。
用户X请求许可,以参与由通信系统100提供的服务。通信系统100执行用于注册用户X的过程。
图2至图4示出了用户注册过程的示例。在该示例中,用户X请求许可,以参与通信系统100。“用户X”可以指示用户X使用的通信装置。
用户X生成一对私钥和公钥,以与已参与通信系统100的对等方进行加密通信。然后,用户X保留所生成的一对私钥和公钥。
接下来,如图2所描绘的,用户X向已经参与通信系统100的各个对等方发送申请注册信息。具体地,将申请注册信息从用户X发送给对等方A-C中的每一个。申请注册信息包括用户X的账户信息以及用户X的公钥。例如,账户信息可以包括用户X所属的公司的名称以及用户X的联系信息(例如,地址、电话号码、电子邮件地址)。
一旦从新用户(即,用户X)接收到申请注册信息,则对等方A-C中的每一个作为认证站(或认证节点)进行操作。具体地,对等方A-C中的每一个核对被包括在所接收到的申请注册信息中的账户信息是否正确。因此,对等方A-C中的每一个根据账户信息判定用户X是否是授权用户。在下文中,该核对任务可以被称为“存在核对”。
例如,存在核对可以由对等方A-C的用户中的每一个(或者由对等方A-C的管理员)执行。在这种情况下,存在核对例如包括以下任务中的一项或更多项:
(1)参考第三方的数据库,并核对账户信息描述的公司是否实际存在。
(2)拨打账户信息描述的公司的主电话号码,并核对账户信息描述的细节。
(3)向账户信息描述的公司发送邮件,并从该公司收到回复。
如图3所描绘的,对等方A-C中的每一个向其它对等方中的所有对等方报告存在核对的结果(在下文中被称为检查结果)。具体地,对等方A-C中的每一个向其它对等方中的所有对等方发送指示账户信息是否正确的消息。例如,由对等方A提供的检查结果可以发送给对等方B和C,由对等方B提供的检查结果可以发送给对等方A和C,并且由对等方C提供的检查结果可以发送给对等方A和B。检查结果指示用户X的账户信息是否正确。
当在由对等方执行的存在核对中确认用户X的账户信息正确时,对等方A-C中的每一个将用户X的公钥与检查结果一起发送给其它对等方。在这种情况下,对等方A-C中的每一个将电子签名附加到用户X的公钥。例如,对等方A可以通过使用对等方A的私钥来创建电子签名。具体地,例如,对等方A计算用户X的公钥的哈希值并通过利用对等方A的私钥对哈希值进行加密来创建电子签名。对等方A将用户X的已附加有电子签名的公钥发送给对等方B和C。类似地,对等方B将使用对等方B的私钥创建的电子签名附加到用户X的公钥并将电子签名和公钥发送给对等方A和C。对等方C将使用对等方C的私钥创建的电子签名附加到用户X的公钥并将电子签名和公钥发送给对等方A和B。
当在由对等方执行的存在核对中确认用户X的账户信息不正确时,对等方A-C中的每一个不将用户X的公钥发送给其它对等方。在这种情况下,仅发送指示账户信息不正确的检查结果。
对等方A-C中的每一个根据其自身提供的检查结果以及从其它对等方接收的检查结果,建立关于是否允许用户X参与通信系统100的共识。例如,对等方A可以根据由节点A提供的检查结果以及从对等方B和C接收的检查结果来判定是否允许用户X参与通信系统100。
共识建立是根据通信系统100中提前确定的共识策略执行的。以下是共识策略的示例:
(1)当指定数量或更多个对等方已判定账户信息正确时,判定账户信息正确。
(2)当已判定账户信息正确的对等方的数量至少占参与共识建立的对等方的总数的指定比例时(例如,多数判定),判定账户信息正确。
(3)当参与共识建立的对等方中的所有对等方已判定账户信息正确时,判定账户信息正确。
在共识策略1和2中,在计数对等方的数量时,对等方本身被计数在内。共识策略2中的“参与共识建立的对等方的总数”是已知数,并因此,指定比例唯一地与已判定账户信息正确的对等方的数量相对应。因此,共识策略2实质上是共识策略1的示例。当共识策略3中的“参与共识建立的对等方中的所有对等方”的数量被视为共识策略1中的“指定数量”时,策略3实质上也是共识策略1的示例。
下列描述基于以下假设:对等方A-C中的每一个已判定用户X的账户信息正确。假设对等方A-C中的每一个使用共识策略1,并且共识策略1中的指定数量为“2”。
如图4所描绘的,对等方A判定是否已关于参与通信系统100的用户X建立了共识。在该示例中,对等方A-C中的所有对等方已判定用户X的账户信息正确。即,三个对等方已判定用户X的账户信息正确。因此,根据共识策略1,对等方A允许用户X参与通信系统100。然后,对等方A将用户X的公钥PKx登记在对等方A的公钥列表中。类似地,对等方B和C分别将用户X的公钥PKx登记在其公钥列表中。
为了提高用户注册的可靠性,对等方A-C中的每一个可以执行关于用户X的公钥是否已被伪造的检查。例如,如图3所描绘的,对等方A从对等方B接收用户X的已附加有对等方B的电子签名的公钥PKx。通过利用对等方B的私钥对针对公钥PKx计算的哈希值进行加密来创建该电子签名。因此,通过利用对等方B的公钥来解密对等方B的电子签名,对等方A可以核对从对等方B接收的公钥PBx未被伪造。类似地,通过利用对等方C的公钥来解密对等方C的电子签名,对等方A可以核对从对等方C接收的公钥PBx未被伪造。然后,当从用户X接收的公钥PBx、从对等方B接收的公钥PBx以及从对等方C接收的公钥PBx相同时,对等方A将公钥PKx登记在其公钥列表中。使用类似的过程,对等方B和C分别将公钥PKx登记在其公钥列表中。
如上所述,在根据本发明的实施方式的通信方法中,允许根据多个对等方之间的共识来注册新用户。因此,减少了与新用户的注册有关的违禁行为。
图5示出了用户认证过程的示例。在该示例中,已经完成了图2至图4所描绘的用户注册过程。因此,用户X的公钥PBx已被登记在对等方A-C中的每一个的公钥列表中。
为了使用通信系统100执行通信,需要通信系统100的对等方(即,对等方A-C)对用户X进行认证。因此,用户X将用户X的ID信息以及用户X的电子签名发送给对等方A-C。例如,电子签名可以包括伪随机数和加密伪随机数。在这种情况下,由用户X生成伪随机数。通过利用用户X的私钥对针对伪随机数计算的哈希值进行加密来生成加密伪随机数。
对等方A-C中的每一个对从用户X接收的电子签名进行检查。例如,对等方A可以根据与电子签名一起接收到的ID信息来确定电子签名的来源是用户X。随后,对等方A从对等方A的公钥列表中获得用户X的公钥PBx。对等方A通过利用用户X的公钥PBx对被包括在电子签名中的加密伪随机数进行解密来对用户X进行认证。具体地,当被包括在电子签名中的伪随机数的哈希值与利用用户X的公钥PBx对被包括在电子签名中的加密伪随机数进行解密的结果相匹配时,确定用户X是授权参与者。使用类似的过程,对等方B和C分别对用户X进行认证。
图6示出了用户注册和用户认证的次序的示例。如图1所描绘的,通信系统100包括对等方A-C。
在S1中,用户X将申请注册信息发送给对等方A-C。如上所述,申请注册信息包括用户X的账户信息以及用户X的公钥。
在S2中,对等方A-C中的每一个对用户X执行存在核对。具体地,对等方A-C中的每一个核对从用户X接收的账户信息是否正确。
在S3中,对等方A-C中的每一个向其它对等方发送指示存在核对结果的消息。在这种情况下,对等方A-C中的每一个可以将其电子签名附加到用户X的公钥,并将这些电子签名和公钥与消息一起发送给其它对等方。
在S4中,对等方A-C中的每一个根据提前确定的共识策略来判定用户X的账户信息是否正确。在关于用户X参与通信系统100建立共识之后,对等方A-C中的每一个将用户X的公钥PBx登记在其自己的公钥列表中。因此,完成了在通信系统100(即,对等方A-C)中的用户注册。
在S11中,用户X通过使用用户X的私钥来创建电子签名。然后,用户X将所创建的电子签名发送给对等方A-C。
在S12中,对等方A-C中的每一个通过检查从用户X接收的电子签名来执行用户X的ID核对。在这种情况下,对等方A-C中的每一个通过使用用户X的在用户注册中获得的公钥PBx来检查电子签名。以这种方式,完成了由对等方A-C中的每一个执行的用户认证。
图7示出了由单个认证站管理的用户注册和用户认证的次序的示例。在这种情况下,用户X将申请注册信息发送给认证站CA。申请注册信息包括用户X的账户信息,但是不一定需要包括用户X的公钥。认证站CA对用户X进行存在核对,然后向用户X颁发并发送用户证书。在像该示例中的由单个认证站管理的用户注册的系统中,认证站CA可能违禁地执行用户注册。在本发明的实施方式中,由于如图6所描绘的根据多个对等方之间的共识来执行用户注册,因此将难以违禁地执行用户注册。
当在图7所描绘的示例中执行用户认证时,用户X将认证站CA颁发的用户证书发送给对等方A-C。响应于此,对等方A-C中的每一个请求认证站CA检查用户证书。在像该示例中的由单个认证站管理用户注册的系统中,将向认证站CA施加较大的负荷。
图8示出了从用户注册延伸到执行交易的次序的示例。图8的示例中的用户注册过程与图6的示例中的用户注册过程基本相同,并且本文省略了其说明。
在S11中,用户X将电子签名和交易发送给对等方A-C。该交易指示要执行的通信处理的细节。
在S12中,对等方A-C中的每一个对从用户X接收的电子签名进行检查。在该示例中,对等方A-C中的每一个已通过S1至S4将用户X注册为授权用户。具体地,对等方A-C中的每一个成功地对用户X进行了认证。因此,在S13中,对等方A-C中的每一个执行从用户X接收的交易。当关于执行交易的结果建立共识时,在S14中确定(settle)交易的结果。
图9示出了用户认证失败的情况下的次序的示例。在该示例中,对等方A作为违禁认证节点进行操作。用户X与对等方A合作地尝试参与通信系统100。
在S1中,用户X将申请注册信息发送给对等方A-C。然而,账户信息包括不正确的信息。
在S2至S3中,对等方A-C中的每一个对用户X执行存在核对。由于账户信息包括不正确的信息,所以由对等方B和C执行的存在核对失败。因此,对等方B和C分别向其它对等方发送指示账户信息不正确的消息。同时,尽管账户信息不正确,但是对等方A向对等方B和C发送指示该账户信息正确的消息。
在S4中,对等方A-C中的每一个根据共识策略判定是否注册用户X。在该示例中,仅一个检查结果指示账户信息正确。因此,对等方B和C均未注册用户X。同时,尽管检查结果不满足共识策略,但是对等方A违禁地注册了用户X。
在S11中,用户X将电子签名和交易发送给对等方A-C。在S12中,对等方A-C中的每一个对从用户X接收的电子签名进行检查。对等方A已注册了用户X。因此,在S13中,对等方A执行从用户X接收的交易。相比之下,对等方B和C均未注册用户X。因此,对等方B和C均未执行从用户X接收的交易。
如上所述,从用户X发送的交易由对等方A执行,而不由其它对等方执行。因此,未关于执行交易的结果建立共识,并且未确定执行交易的结果。因此,防止了执行从违禁用户发送的交易。
图10是示出了由各个对等方执行的用户注册处理的示例的流程图。在图2至图4所描绘的示例中,由对等方A-C中的每一个执行该流程图的处理。下列描述基于以下假设:为各个节点提供的通信装置执行用户注册处理。
在S21中,通信装置等待来自新用户的注册申请。当接收到注册申请时,在S22至S23中执行关于新用户的账户信息是否正确的检查。例如,S22至S23的处理可以由人来执行。在这种情况下,检查结果被提供给通信装置。
当账户信息正确时,在S24中,通信装置向其它节点发送指示批准注册的消息。在这种情况下,通信装置可以将新用户的附加有电子签名的公钥与消息一起发送给其它通信装置。当账户信息不正确时,在S25中,通信装置向其它节点发送指示反对注册的消息。在S24和S25中发送的消息与图3所描绘的检查结果相对应。在S26中,通信装置等待要从其它通信装置发送的消息。
当已接收到指定数量或更多个消息时,在S27中,通信装置判定是否注册新用户。指定数量指示用于判定是否注册新用户的足够数量。是否注册新用户取决于提前确定的共识策略。当注册新用户时,在S28中,通信装置将新用户的公钥登记在该通信装置的公钥列表中。
图11是示出了由各个对等方执行的用户认证处理的示例的流程图。下列描述基于以下假设:用户X向各个通信装置发送电子签名和交易。
在S31中,通信装置从用户X接收电子签名和交易。在S32中,通信装置判定电子签名来源(即,用户X)的公钥是否被登记在该通信装置的公钥列表中。
当用户X的公钥被登记在公钥列表中时,在S33至S34中,通信装置利用用户X的公钥对接收到的电子签名进行检查。当电子签名的检查成功时,在S35中,通信装置执行从用户X接收的交易。当用户X的公钥未被登记在公钥列表中时或者当电子签名的检查失败时,通信装置不执行从用户X接收的交易。
图12示出了在各个节点中实现的计算机的硬件配置的示例。计算机300包括处理器301、存储器302、存储装置303、I/O装置304、记录介质装置305和通信接口306。各个对等方可以由图12描绘的计算机实现。
处理器301可以通过执行存储在存储装置303中的通信程序来实现用户注册和用户认证。为了执行用户注册,处理器301执行对图10所描绘的流程图的处理进行描述的通信程序。为了执行用户认证,处理器301执行对图11所描绘的流程图的处理进行描述的通信程序。
存储器302例如是半导体存储器,并且用作处理器301的工作区域。存储装置303可以在计算机300中实现或者可以连接到计算机300。公钥列表存储在存储器302或存储装置303中。I/O装置304接受来自用户或网络管理员的指令输入。I/O装置304可以输出由处理器301执行的处理的结果。记录介质装置305读取记录在可移除记录介质307中的信号。上述通信程序可以被记录在可移除记录介质307中。通信接口306提供用于与网络的连接的接口。
尽管在附图中未示出以简化描述,但是当允许用户X参与通信系统100时,用户A-C以及用户X的公钥被登记在用户X的节点(对等方)的公钥列表中。当对等方A-C的用户进行通信时,用户X可以充当认证站中的一个认证站。
另一实施方式
图13和图14示出了根据本发明的另一实施方式的用户注册过程的示例。在该示例中,通信系统200包括对等方A-E。如在图2至图4所描绘的示例中,用户X请求许可,以参与通信系统200。
在图2至图4所描绘的示例中,参与通信系统100的所有对等方作为认证节点进行操作。相比之下,在图13至图14所描绘的实施方式中,参与通信系统200的对等方中的一些对等方作为认证节点进行操作。在该示例中,对等方A-E当中的对等方A-C作为认证节点进行操作。
如图13所描绘的,用户X将申请注册信息发送给作为认证节点进行操作的对等方A-C。即,从用户X向对等方A-C中的每一个发送申请注册信息。
在从新用户(即,用户X)接收申请注册信息之后,对等方A-C中的每一个作为认证节点进行操作。因此,对等方A-C中的每一个执行存在核对。具体地,对等方A-C中的每一个核对被包括在所接收的申请注册信息中的账户信息是否正确。在该示例中,对等方A和B分别判定用户X的账户信息正确,并且对等方C判定用户X的账户信息不正确。
对等方A-C中的各个对等方向所有节点发送指示用户X的账户信息的检查结果的消息。如上所述,检查结果指示用户X的账户信息是否正确。在账户信息正确时发送的检查结果在下文中可以被称为“注册OK消息”,并且在账户信息不正确时发送的检查结果在下文中可以被称为“注册NG消息”。
对等方A向对等方B、C、D和E发送注册OK消息。对等方B向对等方A、C、D和E发送注册OK消息。对等方C向对等方A、B、D和E发送注册NG消息。在图14中,实线箭头指示注册OK消息的发送,并且虚线指示注册NG消息的发送。
当对等方判定用户X的账户信息正确时,对等方将注册OK消息以及用户X的申请注册信息(即,用户X的账户信息和公钥)发送给所有节点。在图14所描绘的示例中,对等方A和B分别向所有节点发送注册OK消息以及用户X的申请注册信息。
在这种情况下,电子签名被附加到申请注册信息。例如,对等方A可以对申请注册信息的哈希值进行计算,并通过利用对等方A的私钥对该哈希值进行加密来创建电子签名。然后,对等方A将电子签名附加到申请注册信息并将具有附件的申请注册信息发送给所有节点。类似地,对等方B将使用对等方B的私钥创建的电子签名附加到申请注册信息并将具有附件的申请注册信息发送给所有节点。
如在图2至图4所描绘的示例中,根据提前确定的共识策略,对等方A-E中的每一个判定是否允许用户X参与通信系统200。在该示例中,使用指示“当两个或更多个对等方已判定用户X的账户信息正确时,允许用户X参与通信系统200”的共识策略。
对等方A已判定用户X的账户信息正确。此外,对等方A已从对等方B接收注册OK消息。因此,两个对等方已判定用户X的账户信息正确。因此,对等方A允许用户X参与通信系统200并将用户X的公钥登记在对等方A的公钥列表中。
对等方B已判定用户X的账户信息正确。此外,对等方B已从对等方A接收注册OK消息。因此,两个对等方已判定用户X的账户信息正确。因此,对等方B也允许用户X参与通信系统200并将用户X的公钥登记在对等方B的公钥列表中。
对等方C已判定用户X的账户信息不正确。然而,对等方C已从对等方A和B接收注册OK消息。因此,两个对等方已判定用户X的账户信息正确。因此,对等方C也允许用户X参与通信系统200并将用户X的公钥登记在对等方C的公钥列表中。
对等方D和E已分别从对等方A和B接收注册OK消息。因此,对等方D和E分别允许用户X参与通信系统200。在这种情况下,对等方D和E分别对从对等方A或B接收的申请注册信息进行核对。
例如,对等方D可以对从对等方A接收的申请注册信息进行核对。对等方A的电子签名已被附加到从对等方A接收的申请注册信息。通过利用对等方A的私钥对申请注册信息的哈希值进行加密来创建对等方A的电子签名。因此,对等方D计算接收到的申请注册信息的哈希值。对等方D还利用对等方A的公钥对接收到的电子签名进行解密。当申请注册信息的哈希值与解密电子签名的结果相匹配时,对等方D判定从对等方A接收的申请注册信息未被伪造。
在确认用户X的申请注册信息未被伪造之后,对等方D和E中的每一个将被包括在申请注册信息中的用户X的公钥登记在该对等方的公钥列表中。因此,用户X的公钥被登记在对等方D和E的公钥列表中。
在图13至图14所描绘的示例中,对等方C已判定用户X的账户信息不正确。因此,对等方C可以忽略共识策略并且不允许用户X参与通信系统200。在这种情况下,对等方C拒绝对用户X进行认证的请求。然而,在根据多个参与者(例如,区块链网络)之间的共识执行或确定交易的系统中,即使对等方C拒绝对用户X进行认证,但当其它对等方中的许多对等方已对用户X进行了认证时,可以执行用户X已请求执行的交易。
图15是指示在未作为认证节点进行操作的对等方处执行的用户注册处理的示例的流程图。在图13至图14所描绘的示例中,该流程图的处理由对等方D和E执行。
在S26至S27中,作为认证节点进行操作的对等方以及不作为认证节点进行操作的对等方执行基本相同的处理。具体地,不作为认证节点进行操作的通信装置也判定是否注册新用户。同时,在判定新用户的账户信息正确时,作为认证节点进行操作的通信装置发送注册OK消息以及该新用户的申请注册信息。电子签名已被附加到申请注册信息。
当判定注册新用户时,在S41至S42中,通信装置核对所接收到的申请注册信息是否已被伪造。当所接收到的申请注册信息未被伪造时,在S28中,通信装置将新用户的公钥登记在该通信装置的公钥列表中。
用户认证与图5和图11描绘的过程中的任一个过程基本相同。因此,当用户X使用通信系统200时,用户X将电子签名发送给对等方A-E。对等方A-E中的每一个利用用户X的登记在对等方的公钥列表中的公钥来检查电子签名。当电子签名的检查成功(即,用户X的公钥被登记在公钥列表中)时,将执行从用户X请求的交易。

Claims (7)

1.一种针对形成通信系统的多个节点中的一个节点设置的通信装置,该通信装置包括:
处理器,所述处理器被配置为:
从用户接收所述用户的账户信息以及所述用户的公钥,
当判定所述账户信息正确时,将指示所述账户信息正确的消息以及所述用户的所述公钥发送给所述多个节点,并且
当分别从指定数量或更多个认证节点接收到指示所述账户信息正确的所述指定数量或更多个消息时,将所述用户的所述公钥登记在公钥列表中,所述公钥列表存储有已被允许参与所述通信系统的用户的公钥,所述指定数量大于2,并且
其中,所述认证节点中的每一个执行以下操作:
当判定所述账户信息正确时,针对所述用户的所述公钥,通过使用所述认证节点的私钥来创建电子签名,并且
将指示所述账户信息正确的消息、所述用户的所述公钥以及所述电子签名发送给所述多个节点。
2.一种在包括多个节点的通信系统中使用的通信方法,其中,
所述多个节点当中的两个或更多个认证节点分别从用户接收所述用户的账户信息以及所述用户的公钥,
当判定所述账户信息正确时,所述两个或更多个认证节点分别向所述多个节点发送指示所述账户信息正确的消息以及所述用户的所述公钥,并且
当分别从指定数量或更多个认证节点接收到指示所述账户信息正确的所述指定数量或更多个消息时,所述多个节点中的每一个将所述用户的所述公钥登记在公钥列表中,所述公钥列表存储有已被允许参与所述通信系统的用户的公钥,所述指定数量大于2,并且
其中,所述认证节点中的每一个执行以下操作:
当判定所述账户信息正确时,针对所述用户的所述公钥,通过使用所述认证节点的私钥来创建电子签名,并且
将指示所述账户信息正确的消息、所述用户的所述公钥以及所述电子签名发送给所述多个节点。
3.一种在包括多个节点的通信系统中使用的通信方法,其中,
所述多个节点当中的两个或更多个认证节点分别从用户接收所述用户的账户信息以及所述用户的公钥,
当判定所述账户信息正确时,所述两个或更多个认证节点分别向所述多个节点发送指示所述账户信息正确的消息以及所述用户的所述公钥,并且
当分别从指定数量或更多个认证节点接收到指示所述账户信息正确的所述指定数量或更多个消息时,所述多个节点中的每一个将所述用户的所述公钥登记在公钥列表中,所述公钥列表存储有已被允许参与所述通信系统的用户的公钥,所述指定数量大于2,并且其中,
所述认证节点中的每一个执行以下操作:
当判定所述账户信息正确时,针对所述用户的所述账户信息和所述公钥,通过使用所述认证节点的私钥来创建电子签名,并且
将指示所述账户信息正确的消息、所述用户的所述账户信息和所述公钥以及所述电子签名发送给所述多个节点。
4.根据权利要求2或 3中的一项所述的通信方法,其中,
所述多个节点中的除了所述认证节点以外的每一个节点执行以下操作:
利用作为所述电子签名的来源的节点的公钥对所述电子签名进行检查,并且
在确认所述用户的所述公钥未被伪造之后,将所述用户的所述公钥登记在所述公钥列表中。
5.根据权利要求2或 3中的一项所述的通信方法,其中,
所述节点中的每一个执行以下操作:
当从所述用户接收使用所述用户的私钥创建的电子签名时,通过使用所述用户的被登记在所述公钥列表中的所述公钥来对所述电子签名进行检查,并且
当确认了所述电子签名时,对所述用户进行认证。
6.根据权利要求4所述的通信方法,其中,
所述节点中的每一个执行以下操作:
当从所述用户接收使用所述用户的私钥创建的电子签名时,通过使用所述用户的被登记在所述公钥列表中的所述公钥来对所述电子签名进行检查,并且
当确认了所述电子签名时,对所述用户进行认证。
7.一种由通信系统中的多个节点中的每一个使用的通信方法,所述通信方法包括以下步骤:
从用户接收所述用户的账户信息以及所述用户的公钥;
当判定所述账户信息正确时,将指示所述账户信息正确的消息发送给所有其它节点,并且
当分别从指定数量或更多个节点接收到指示所述账户信息正确的所述指定数量或更多个消息时,将所述用户的所述公钥登记在公钥列表中,所述公钥列表存储有已被允许参与所述通信系统的用户的公钥,所述指定数量大于2,并且
其中,所述节点中的每一个执行以下操作:
当判定所述账户信息正确时,针对所述用户的所述公钥,通过使用所述节点的私钥来创建电子签名,并且
将指示所述账户信息正确的消息、所述用户的所述公钥以及所述电子签名发送给所述多个节点。
CN201911126875.5A 2018-12-03 2019-11-18 在包括多个节点的通信系统中处理用户公钥的装置和方法 Active CN111262825B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018226341A JP7209518B2 (ja) 2018-12-03 2018-12-03 通信装置、通信方法、および通信プログラム
JP2018-226341 2018-12-03

Publications (2)

Publication Number Publication Date
CN111262825A CN111262825A (zh) 2020-06-09
CN111262825B true CN111262825B (zh) 2022-09-09

Family

ID=68470349

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911126875.5A Active CN111262825B (zh) 2018-12-03 2019-11-18 在包括多个节点的通信系统中处理用户公钥的装置和方法

Country Status (4)

Country Link
US (1) US11469905B2 (zh)
EP (1) EP3664363B1 (zh)
JP (1) JP7209518B2 (zh)
CN (1) CN111262825B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112668053B (zh) * 2021-01-05 2024-05-03 上海零数众合信息科技有限公司 一种区块链基于伪随机公钥的加密方法
CN112749409B (zh) * 2021-01-06 2024-03-08 上海零数众合信息科技有限公司 一种区块链中基于随机数的加密方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107135209A (zh) * 2017-04-21 2017-09-05 天津理工大学 一种基于区块链的数据共享方法
CN107171829A (zh) * 2017-04-24 2017-09-15 杭州趣链科技有限公司 一种基于bft共识算法实现的动态节点管理方法
CN108712423A (zh) * 2018-05-18 2018-10-26 北京三六五八网络科技有限公司 权限管理方法及装置
CN108768966A (zh) * 2018-05-14 2018-11-06 北京邮电大学 注册节点和成员节点以及节点注册、离开、身份认证方法
CN108921694A (zh) * 2018-06-21 2018-11-30 北京京东尚科信息技术有限公司 区块链管理方法和区块链节点以及计算机可读存储介质

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002014613A (ja) 2000-06-28 2002-01-18 Baltimore Technologies Japan Co Ltd 証明書発行システム、証明書発行方法及び記録媒体
US8832138B2 (en) * 2004-06-17 2014-09-09 Nokia Corporation System and method for social network search operations
MY159232A (en) 2009-05-18 2016-12-30 Mikoh Corp Biometric identification method
US20110270761A1 (en) * 2010-04-30 2011-11-03 Tobsc Inc. Methods and apparatus for a financial document clearinghouse and secure delivery network
US9003196B2 (en) * 2013-05-13 2015-04-07 Hoyos Labs Corp. System and method for authorizing access to access-controlled environments
DE102014113430A1 (de) * 2014-09-17 2016-03-17 Bundesdruckerei Gmbh Verteilte Datenspeicherung mittels Berechtigungstoken
US10411905B2 (en) 2016-07-01 2019-09-10 Intel Corporation Public key infrastructure using blockchains
WO2018043599A1 (ja) 2016-08-30 2018-03-08 ソラミツ株式会社 情報共有システム
US10360191B2 (en) 2016-10-07 2019-07-23 International Business Machines Corporation Establishing overlay trust consensus for blockchain trust validation system
WO2018088475A1 (ja) 2016-11-09 2018-05-17 ソラミツ株式会社 電子認証方法及びプログラム
JP6533771B2 (ja) 2016-11-15 2019-06-19 富士通株式会社 通信方法、装置、及びプログラム
JP6827327B2 (ja) 2017-01-05 2021-02-10 株式会社日立製作所 分散コンピューティングシステム
CN110392888A (zh) * 2017-01-16 2019-10-29 E·马伊姆 用于在安全环境中执行智能合约的方法和系统
JP6826290B2 (ja) 2017-01-19 2021-02-03 富士通株式会社 証明書配付システム、証明書配付方法、および証明書配付プログラム
US10356102B2 (en) * 2017-02-24 2019-07-16 Verizon Patent And Licensing Inc. Permissions using blockchain
US10984134B2 (en) * 2017-07-14 2021-04-20 Microsoft Technology Licensing, Llc Blockchain system for leveraging member nodes to achieve consensus
CN107360001B (zh) 2017-07-26 2021-12-14 创新先进技术有限公司 一种数字证书管理方法、装置和系统
CN108108487B (zh) 2018-01-10 2019-11-22 杭州复杂美科技有限公司 一种区块链的共识方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107135209A (zh) * 2017-04-21 2017-09-05 天津理工大学 一种基于区块链的数据共享方法
CN107171829A (zh) * 2017-04-24 2017-09-15 杭州趣链科技有限公司 一种基于bft共识算法实现的动态节点管理方法
CN108768966A (zh) * 2018-05-14 2018-11-06 北京邮电大学 注册节点和成员节点以及节点注册、离开、身份认证方法
CN108712423A (zh) * 2018-05-18 2018-10-26 北京三六五八网络科技有限公司 权限管理方法及装置
CN108921694A (zh) * 2018-06-21 2018-11-30 北京京东尚科信息技术有限公司 区块链管理方法和区块链节点以及计算机可读存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
A Decentralized Public Key Infrastructure with Identity Retention;Conner Fromknecht;《eprint.IACR.org》;20141111;全文 *

Also Published As

Publication number Publication date
US11469905B2 (en) 2022-10-11
CN111262825A (zh) 2020-06-09
JP2020092287A (ja) 2020-06-11
EP3664363B1 (en) 2021-05-19
JP7209518B2 (ja) 2023-01-20
US20200177394A1 (en) 2020-06-04
EP3664363A1 (en) 2020-06-10

Similar Documents

Publication Publication Date Title
CN109756485B (zh) 电子合同签署方法、装置、计算机设备及存储介质
CN109714167B (zh) 适用于移动应用签名的身份认证与密钥协商方法及设备
CN113194469B (zh) 基于区块链的5g无人机跨域身份认证方法、系统及终端
EP2639997B1 (en) Method and system for secure access of a first computer to a second computer
JP4639084B2 (ja) セキュア認証の暗号方法および暗号装置
CN1701561B (zh) 基于地址的验证系统及其装置和程序
CN111431713B (zh) 一种私钥存储方法、装置和相关设备
CN109741068B (zh) 网银跨行签约方法、装置及系统
CN101883100B (zh) 一种数字内容分布式授权方法
JP2020501425A (ja) 情報保護のシステム及び方法
CN112994892A (zh) 跨链交互方法、装置、系统和电子设备
CN109102404B (zh) 区块链实名通信的隐私保护方法和系统
US20210241270A1 (en) System and method of blockchain transaction verification
CN114565386A (zh) 多方协同隐私保护的区块链托管交易方法及系统
CN111355591A (zh) 一种基于实名认证技术的区块链账号安全的管理方法
CN111262825B (zh) 在包括多个节点的通信系统中处理用户公钥的装置和方法
CN109740319A (zh) 数字身份验证方法及服务器
CN102208980A (zh) 一种通信方法及系统
US20230188345A1 (en) System and methods for interactive document sharing and authentication with privacy guarantee
CN107682380A (zh) 一种交叉认证的方法及装置
Carbunar et al. Conditional payments for computing markets
WO2017114914A1 (en) Peer-to-peer transaction authorization
JP4547233B2 (ja) コミュニケーションシステム、コミュニケーション方法およびそのプログラム
CN108550036A (zh) 一种建立安全基础设施的方法、终端及装置
CN116743377B (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