Patent Publication Number: US-11652645-B2

Title: Storage medium, communication method, and communication device

Description:
CROSS-REFERENCE TO RELATED APPLICATION 
     This application is based upon and claims the benefit of priority of the prior Japanese Patent Application No. 2019-105844, filed on Jun. 6, 2019, the entire contents of which are incorporated herein by reference. 
     FIELD 
     The present invention is related to a storage medium, a communication method and a communication device. 
     BACKGROUND 
     When using various services such as online shopping, application for issuing a credit card, and opening a bank account, a service user may present a digital certificate to a service provider. A digital certificate may be issued by a certificate authority. In this case, the certificate authority performs identity confirmation and the like for a user and issues a certificate based on the result. The user presents the obtained digital certificate to the service provider, Since the service provider previously stores the format of the certificate, the service provider may acquire information certified by the digital certificate. 
     In recent years, a distributed ledger technology that has emerged as a platform for realizing virtual currency has attracted attention. The use of a distributed ledger may suppress information from being tampered with without the presence of a central administrator of the system, and application to areas other than virtual currency is also being studied. 
     As a related technique, for example, Japanese National Publication of International Patent Application No. 2011-525028 discloses a method for obtaining a token for accessing a service of a relying party from an identity provider. 
     As a related technique, for example, Japanese Laid-open Patent Publication No. 2008-71226 discloses a system in which a device belonging to a first security domain stores a credential B corresponding to a second security domain and a credential A in a system of the first security domain in association with each other. In this system, the device belonging to the first security domain acquires the credential B from a repository server by using the credential A and transmits the credential B to a communication destination device in the second security domain. 
     SUMMARY 
     According to an aspect of the embodiments, a non-transitory computer-readable storage medium storing a communication program causing a communication device to execute a process, the process includes acquiring a digital certificate including information associated with a first attribute from a first device coupled to any of a plurality of devices sharing a distributed ledger having recorded therein a correspondence between an attribute of user information included in the digital certificate and a definition of the attribute, upon receiving a request for information associated with a second attribute from a second device coupled to any of the plurality of devices, acquiring a first definition associated with the first attribute, and a second definition associated with the second attribute from any of the plurality of devices, and when the first definition and the second definition match, transmitting a digital certificate including information associated with the first attribute to the second device together with a message notifying that the first attribute and the second attribute have the same definition. 
     The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims. 
     It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention. 
    
    
     
       BRIEF DESCRIPTION OF DRAWINGS 
         FIG.  1    is a diagram illustrating an example of a communication method according to an embodiment; 
         FIG.  2    is a diagram illustrating an example of a configuration of a communication device; 
         FIG.  3    is a diagram illustrating an example of a hardware configuration of the communication device; 
         FIG.  4    is a diagram illustrating an example of information shared by using a distributed ledger; 
         FIG.  5    is a diagram illustrating an example of a credential format; 
         FIG.  6    is a diagram illustrating an example of a network; 
         FIG.  7    is a diagram illustrating an example of processing performed for transmitting a credential; 
         FIG.  8    is a diagram illustrating an example of an attribute correspondence table; 
         FIG.  9    is a diagram illustrating an example of an attribute correspondence message; 
         FIG.  10    is a flowchart illustrating an example of processing performed by the communication device requested for information; 
         FIG.  11    is a flowchart illustrating an example of processing performed by the communication device that has received the attribute correspondence message; 
         FIG.  12    is a flowchart illustrating an example of verification processing performed by the communication device; 
         FIG.  13    is a diagram illustrating an example of communication performed in a second embodiment; 
         FIG.  14    is a diagram illustrating an example of an attribute definition shared by each consortium; 
         FIG.  15    is a diagram illustrating an example of the attribute correspondence table; 
         FIG.  16    is a diagram illustrating an example of the attribute correspondence message; 
         FIG.  17    is a diagram illustrating an example of processing performed in the second embodiment; 
         FIG.  18    is a diagram illustrating an example of processing performed in the second embodiment; 
         FIG.  19    is a diagram illustrating an example of credential transmission processing; 
         FIG.  20    is a flowchart illustrating an example of processing performed in the second embodiment; and 
         FIG.  21    is a flowchart illustrating an example of processing performed in the second embodiment. 
     
    
    
     DESCRIPTION OF EMBODIMENTS 
     In a system without a central administrator, there is a possibility that issuance of a certificate or the like is performed by a device other than a specific certificate authority. For example, a system may be designed in which any device in the system may issue a digital certificate. However, when a digital certificate is issued by a device other than a specific device, the name indicating the type of information certified by the digital certificate may be different depending on the device that issues the certificate. Different names may be used for the same information between the provider requesting the digital certificate and the device that issuing the digital certificate. In this case, even if the user sends a digital certificate including the information requested from the provider device to the provider device, since the name associated with the requested information is different from the name used by the provider, the provider device does not recognize the information in the certificate, and the verification fails. If the verification of the information using the digital certificate fails, since the provider accepts a self-report from the user for the information requested by the user and separately verifies whether the report from the user is correct, the cost and time are wasted, and the efficiency of the verification processing is reduced. 
     An object of the present invention is to suppress a reduction in efficiency of verification processing as one aspect. 
     A reduction in the efficiency of the verification processing may be suppressed. 
       FIG.  1    is a diagram illustrating an example of a communication method according to an embodiment. In  FIG.  1   , an issuer  2  issues a digital certificate (credential). It is assumed that a holder  3  requests the issuer  2  for a digital certificate that certifies information about the holder  3 . The holder  3  has information on various attributes such as a name and an address. The holder  3  may be an individual user or an organization. The verifier  4  requests the holder  3  to certify information about the holder  3  as appropriate. The issuer  2  uses a communication device  20   a . Similarly, it is assumed that the holder  3  uses a communication device  20   b  and a verifier  4  uses a communication device  20   c.    
     A network contains one or more consortia (clusters). Each consortium is a cluster of any type that may share a distributed ledger  15  and may be, for example, a consortium in blockchain technology. 
     A plurality of nodes  10  ( 10   a  to  10   c ) participating in a consortium  1  share the distributed ledger  15 . Although three nodes  10  are illustrated in the example of  FIG.  1   , the number of nodes  10  included in the consortium  1  may be randomly changed according to the implementation. The distributed ledger  15  includes an attribute definition  16  and may optionally include verification public key information  17 . The attribute definition  16  is a correspondence between a name (attribute) representing the type of user information certified by the digital certificate and the definition of the attribute. For example, the attribute definition  16  may include that the attribute “name” is a character string representing the user&#39;s last name in Chinese characters. A plurality of attributes may be associated with one definition. For example, in the attribute definition  16 , the fact that the attribute “full name” is a character string representing the user&#39;s last name in Chinese characters may also be recorded. In the following description, it is assumed that identification information for identifying the attribute is assigned to each of the attributes. In the example of  FIG.  1   , it is assumed that the identification information of A 1  is assigned to an attribute of “name” and A 10  is assigned to an attribute of “full name”. The verification public key information  17  includes information such as a public key paired with a secret key that may be used by each communication device  20  for encryption. 
     Each of the nodes  10  may specify the definition of the information associated with each attribute by referring to the attribute definition  16  in the distributed ledger  15 , Since the communication device  20   a  is coupled to the node  10   a , the contents of the definition associated with the attribute and the public key for decrypting the information encrypted by the other communication device  20  may be obtained from the node  10   a  as appropriate. Similarly, the communication device  20   b  acquires information such as the association between the attribute and the definition and the public key from the node  10   b , and the communication device  20   c  acquires information such as the association between the attribute and the definition and the public key from the node  10   c.    
     For example, it is assumed that holder  3  requests proof of his or her name from the issuer  2 . The issuer  2  issues a certificate for the holder  3  by using the communication device  20   a . At this time, the communication device  20   a  generates a digital certificate including an attribute of “name” (A 1 ) and transmits the digital certificate to the communication device  20   b  (step S 1 ). 
     On the other hand, it is assumed that the communication device  20   b  of the holder  3  receives a request for the information of the attribute (A 10 ) called “full name” from the communication device  20   c  of the verifier  4 . The communication device  20   b  acquires a definition for the attribute “full name” (A 10 ) and a definition for the attribute “name” (A 1 ) from the node  10   b  and compares the two. Both “full name” and “name” are associated with a character string representing the user&#39;s last name in Chinese characters. Therefore, the communication device  20   b  notifies the communication device  20   c  that the definition for the attribute “full name” (A 10 ) and the definition for the attribute “name” (A 1 ) are the same. The communication device  20   b  transmits the digital certificate acquired from the communication device  20   a  to the communication device  20   c  (step S 2 ). 
     It is assumed that the communication device  20   c  appropriately acquires information recorded in the attribute definition  16  from the node  10   c  to determine that the definition is the same for the attribute=A 10  (full name) and the attribute=A 1  (name) The communication device  20   c  replaces the attribute=A 1  (name) information in the digital certificate received from the communication device  20   b  with the attribute=A 10  (full name) information and succeeds in the verification processing by using the digital certificate. For this reason, the communication device  20   c  may provide a service to the communication device  20   b  and the like. 
     Even if a plurality of communication devices  20  in the network use different attributes, if the definitions of the information associated with the attributes are the same, all the attributes represent the same information. The communication device  20  according to the embodiment may perform the verification processing by using the information associated with the attribute in the digital certificate with the same definition as the attribute of the requested information by acquiring the attribute definition  16  from the node  10  sharing the distributed ledger  15  including the attribute definition  16 . For this reason, even if the communication device  20  that issues a certificate and the communication device  20  that verifies the certificate use different attribute definitions, the verification using a digital certificate may be performed. 
       FIG.  1    is an example, and modifications according to the implementation may be made. For example, the number of nodes  10  and communication devices  20  in the network may be randomly changed. The communication device  20  may perform encryption processing using a secret key as appropriate at the time of communication between the communication devices  20 . When the received information is encrypted, the communication device  20  may perform verification processing or the like after decryption processing using a public key associated with the communication device  20  as a transmission source. Each of the issuer  2 , the holder  3 , and the verifier  4  may operate the communication device  20 , or may control the communication device  20  via a terminal for operating the communication device  20 . 
     Any of the communication devices  20  may issue, acquire, and verify a digital certificate. For example, the processing performed by each of the communication devices  20   a  to  20   c  may be performed by any communication device  20 . 
     &lt;Device Configuration&gt; 
       FIG.  2    is a diagram illustrating an example of a configuration of the communication device  20 . The communication device  20  includes a communication unit  30 , a control unit  40 , and a storage unit  50 , The communication unit  30  includes a reception unit  31  and a transmission unit  32 . The reception unit  31  receives a packet from the node  10 , a terminal, another communication device  20 , or the like. The transmission unit  32  transmits a packet to the node  10 , the terminal, another communication device  20 , and the like. 
     The control unit  40  includes an acquisition unit  41 , a determination unit  42 , a generation unit  43 , and an application processing unit  44 , The acquisition unit  41  acquires from the node  10  the attribute included in the credential (digital certificate) and the definition of the attribute associated with the information requested from the other communication device  20 . The determination unit  42  uses the information acquired from the node  10  to determine whether the definitions match among a plurality of attributes. When the determination unit  42  determines that the definitions match among the plurality of attributes, the generation unit  43  generates a message (attribute correspondence message) for associating the attributes determined to have matching definitions. The application processing unit  44  issues a credential and verifies the credential by using the application. 
     The storage unit  50  has an attribute correspondence table  51  and a secret key  52 . The attribute correspondence table  51  records the determination result acquired by the determination unit  42 . The secret key  52  is used for encryption when the communication device  20  transmits a credential or the like to another communication device  20 , 
       FIG.  3    is a diagram illustrating an example of a hardware configuration of the communication device  20 , The communication device  20  includes a processor  101 , a memory  102 , a bus  105 , and a network interface  109 . The communication device  20  may include one or more of an input device  103 , an output device  104 , a storage device  106 , and a portable storage medium driving device  107 . 
     The processor  101  is any processing circuit, and may be, for example, a central processing unit (CPU). The processor  101  operates as the control unit  40 . The processor  101  may execute a program stored in the memory  102  or the storage device  106 , for example. The memory  102  appropriately stores data acquired by the operation of the processor  101  and data used for the processing of the processor  101 . The storage device  106  stores programs, data, and the like, and provides the stored information to the processor  101  or the like, as appropriate. The memory  102  and the storage device  106  operate as the storage unit  50  in the communication device  20 . 
     The bus  105  couples the processor  101 , the memory  102 , the input device  103 , the output device  104 , the storage device  106 , the portable storage medium driving device  107 , and the network interface  109  to each other so that the data is able to be transmitted and received to and from each other. The input device  103  is any device used to input information, such as a keyboard, a mouse, a microphone, or a camera, and the output device  104  is any device used to output data, such as a display. The portable storage medium driving device  107  is able to output data in the memory  102 , the storage device  106 , and the like to a portable storage medium  108  and is able to read out programs, data, and the like from the portable storage medium  108 . The portable storage medium  108  may be any portable storage medium including a compact disc recordable (CD-R) and a digital versatile disk recordable (DVD-R). The network interface  109  performs processing for the communication device  20  to communicate with another device as appropriate. The network interface  109  operates as the communication unit  30 . 
     First Embodiment 
     Hereinafter, the first embodiment, an example of information shared by using the distributed ledger  15 , acquisition of credentials, use of the acquired credentials, the processing in the communication device  20  that has received an attribute correspondence message, and the processing in the communication device  20  that has received the credentials will be described separately. In the following description, in order to clarify the communication device  20  that is performing the processing, the alphabet at the end of the code of the communication device  20  that is performing the processing may be added at the end of the code of the portion of the communication device  20 . For example, a reception unit  31   a  is the reception unit  31  of the communication device  20   a , and an acquisition unit  41   b  is the acquisition unit  41  of the communication device  20   b.    
     (1) Example of Information Shared by Using the Distributed Ledger  15   
       FIG.  4    is a diagram illustrating an example of information shared by using the distributed ledger  15 . The distributed ledger  15  includes the attribute definition  16  and the verification public key information  17 . The attribute definition  16  includes an attribute definition ID, an attribute, and an attribute definition. The attribute definition  16  records, for all the attributes used by the communication device  20  coupled to any of the nodes  10  sharing the distributed ledger  15 , the definition and information for identifying the attribute. Here, the attribute definition ID is identification information for identifying an attribute. The attribute definition is a definition of information represented by each attribute. For example, the attribute with the attribute definition ID=A 1  is “name”, and the last name is written in Chinese characters. Similarly, the attribute with the attribute definition ID=A 2  is “issuer”, and the identification information (Agent ID) assigned to the communication device  20  operating as a credential issuer is represented by a numeral. Attribute definition IDs and attribute definitions are similarly associated with other attributes. 
     In the example of  FIG.  4   , the last name may be represented by one of the attribute definition IDs=A 1 , A 10 , and A 11 . The attribute with the attribute definition ID=A 1  is “name”, the attribute with the attribute definition ID=A 10  is “full name”, and in each case, the attribute definition is associated with a last name in Chinese characters. Therefore, the information corresponding to the attribute definition ID=A 1  and the information corresponding to the attribute definition ID=A 10  have different attribute names, but may be used as compatible information for the same user or the like. On the other hand, the attribute with both the attribute definition ID=A 1  and the attribute definition ID=A 11  is “name”, but the attribute definition associated with the attribute definition ID=A 11  is a last name in Roman characters, Therefore, the information corresponding to the attribute definition ID=A 1  and the information corresponding to the attribute definition ID=A 11  have the same attribute name, but are not compatible with each other. The determination unit  42  of each communication device  20  may determine whether there is compatibility between the two attributes by appropriately comparing the attribute definitions of the plurality of attributes as described with reference to  FIG.  4   . 
     The verification public key information  17  is associated with a communication device, an Agent ID, a public key, and an address. Agent ID is identification information assigned to the communication device  20  in the entry. The public key is a public key that is a pair of the secret key used for encryption by the communication device  20  in the entry. The address is an address assigned to the communication device  20  in the entry. For example, Agent ID=3 and address=IPa are assigned to the communication device  20   a , and the public key that is a pair of the secret key used by the communication device  20   a  is KeyB. Agent ID=1 and address=IPb are assigned to the communication device  20   b , and the public key that is a pair of the secret key used by the communication device  20   b  is KeyD. Similarly, Agent ID=2 and address=IPc are assigned to the communication device  20   c , and the public key that is a pair of the secret key used by the communication device  20   c  is KeyF. 
     The distributed ledger  15  may include information other than the attribute definition  16  and the verification public key information  17 . Since the distributed ledger  15  is shared between the nodes  10  participating in the consortium  1 , each of the communication devices  20  may acquire information in the distributed ledger  15  via the node  10  to which the communication device  20  is coupled. 
     (2) Acquisition of a Credential 
     Hereinafter, an example of credential acquisition processing in a case where the information illustrated in  FIG.  4    is shared by using the distributed ledger  15  between the nodes  10  in the consortium  1  will be described. In the following description, it is assumed that the secret key used by the communication device  20   a  is KeyA, and the public key forming a pair with KeyA is KeyB. Similarly, it is assumed that the secret key used by the communication device  20   b  is KeyC, and the public key forming a pair with KeyC is KeyD. It is assumed that the secret key used by the communication device  20   c  is KeyE, and the public key forming a pair with KeyE is KeyF. 
     A schema definition  18  in  FIG.  5    is an example of a credential format. The schema definition  18  records a schema ID and identification information of an attribute indicating a type of each information included in a credential. The schema ID is identification information for identifying the schema definition  18 . In the example of  FIG.  5   , the schema ID is SC_ 1 . The schema definition  18  identified by SC_ 1  also includes A 2  and A 1  as attribute identification information. 
     CL in  FIG.  5    is an example of a credential generated by using the schema definition  18 . The credential illustrated in the CL includes information such as schema ID=SC_ 1 , A 2 =3, and A 1 =Suzuki. Therefore, the credential illustrated in the CL records that the credential is generated by the communication device  20   a  to which Agent ID=3 is assigned, by using the schema definition  18  with schema ID=SC_ 1  and that the last name of the user is “Suzuki”. In addition to the credentials, identification information (credential ID) for identifying the credentials is also included in the credentials CL. CL in  FIG.  5    is a credential having a credential ID=CID_ 1 . 
     The schema definition  18  may be shared between the nodes  10  by using the distributed ledger  15 . Each communication device  20  may previously store the schema definition  18  used when the own device issues a credential. 
       FIG.  6    is a diagram illustrating an example of a network. In the example of  FIG.  6   , the node  10   a , the node  10   b , and the node  10   c  participate in the consortium  1 . The communication device  20   a  is coupled to the node  10   a , and the terminal  5   a  is coupled to the communication device  20   a . In the following description, it is assumed that the terminal  5   a  is a terminal operated by the credential issuer  2 . The communication device  20   b  is coupled to the node  10   b , and the terminal  5   b  is coupled to the communication device  20   b . In the following description, it is assumed that the terminal  5   b  is a terminal operated by the credential holder  3 . The communication device  20   c  is coupled to the node  10   c , and the terminal  5   c  is coupled to the communication device  20   c . In the following description, it is assumed that the terminal  5   c  is a terminal operated by the credential verifier  4 .  FIG.  6    is an example of a network, and the number and coupling relationship of the nodes  10 , the communication devices  20 , and the terminals  5  may be changed to any form in which each of the communication devices  20  may be coupled to any of the nodes  10 . For example, all three of the communication devices  20   a  to  20   c  may be coupled to the node  10   b.    
     An example of processing performed when the holder  3  acquires a credential from the issuer  2  in the network of  FIG.  6    will be described. First, the issuer  2  is notified that the holder  3  acquire a credential. This notification may be performed via the communication device  20  or the terminal  5 , or may be performed by direct communication between the terminal  5   b  and the terminal  5   a . Since any method by which the issuer  2  may recognize the target for issuing a credential may be used, for example, an application by email or mail from the holder  3  to the issuer  2  may be performed. 
     When recognizing that the holder  3  has requested the issuance of the credential, the issuer  2  transmits data (certification data) including the information certified by the credential from the terminal  5   a  to the communication device  20   a  (step S 11 ). The terminal  5   a  transmits the address of the communication device  20   b  and the like to the communication device  20   a  together with the certification data as information about the transmission destination of the credential. 
     When receiving the certification data, the reception unit  31   a  of the communication device  20   a  outputs the data to an application processing unit  44   a . The application processing unit  44   a  generates a credential according to the credential format. It is assumed that the communication device  20   a  stores the schema definition  18  illustrated in  FIG.  5    in a storage unit  50   a  in advance. In this example, it is assumed that the application processing unit  44   a  has generated the credential illustrated in CL in  FIG.  5   . The application processing unit  44   a  encrypts the generated credential with the secret key  52   a  (KeyA). The transmission unit  32   a  transmits the encrypted credential to the communication device  20   b  (step S 12 ). 
     The reception unit  31   b  of the communication device  20   b  outputs the received credential to an application processing unit  44   b . Since the credential has been encrypted, the acquisition unit  41   b  requests the node  10   b  for the public key associated with the communication device  20   a  (step S 13 ). The node  10   b  transmits the public key (KeyB) associated with the communication device  20   a  in response to the request from the acquisition unit  41   b  (step S 14 ). For this reason, the application processing unit  44   b  may decrypt the credential by using the acquired public key. 
     (3) Use of the Acquired Credential 
     Hereinafter, an example of processing performed when the acquired credential is used will be described, by using a case where the holder  3  presents the credential acquired from the issuer  2  to the verifier  4  as an example. In the following example, it is assumed that the credential presented by the holder  3  to the verifier  4  is the credential CL illustrated in  FIG.  5   . 
       FIG.  7    is a diagram illustrating an example of processing performed for transmitting a credential. By using the terminal  5   b , the holder  3  who intends to present the credential notifies the terminal  5   c  used by the verifier  4  of information notifying that the communication device  20  communicating with terminal  5   b  is the communication device  20   b  (step S 21 ). The terminal  5   c  recognizes, based on the information received from the terminal  5   b , that the user using the terminal  5   b  intends to present the credential through the communication device  20   b . The terminal  5   c  notifies the communication device  20   c  that the information of the user to be acquired is the full name of the user and that the request destination of the information is the communication device  20   b  (step S 22 ). 
     When receiving the request from the terminal  5   c , the reception unit  31   c  of the communication device  20   c  outputs the request to an application processing unit  44   c . The application processing unit  44   c  specifies the attribute definition ID of the requested information and the address of the request destination. It is assumed that the application processing unit  44   c  stores in advance an attribute definition ID associated with an attribute of information acquired by the terminal  5   c  coupled to the communication device  20   c . In this example, the application processing unit  44   c  assumes that the attribute definition ID for identifying the attribute “full name” requested by the terminal  5   c  is A 10 , When the address of the communication device  20   b  which is the request destination of the information is not stored in the storage unit  50 , the application processing unit  44   c  requests the address of the communication device  20   b  from the node  10   c . The node  10   c  returns the address assigned to the communication device  20   b  by referring to the verification public key information  17  in the distributed ledger  15 . When the attribute definition ID corresponding to the requested information and the address of the request destination may be specified, the application processing unit  44   c  performs processing for presenting the attribute definition ID to the communication device  20  of the request destination of the information to request the information. In the example of  FIG.  7   , the application processing unit  44   c  transmits a request for information of the attribute definition ID=A 10  to the communication device  20   b  via the transmission unit  32   c  (step S 23 ). 
     The application processing unit  44   b  of the communication device  20   b  acquires the request for information of the attribute definition ID=A 10  via the reception unit  31   b . It is assumed that the attribute definition ID=A 10  is not an attribute used in the terminal  5   b , and is not used in the credentials received by the communication device  20   b  so far. The application processing unit  44   b  determines whether the requested attribute definition ID is associated with another attribute definition ID in the attribute correspondence table  51   b . It is assumed that the attribute definition ID=A 10  is not recorded in the attribute correspondence table  51   b . The application processing unit  44   b  notifies the acquisition unit  41   b  and a determination unit  42   b  that the definition associated with the attribute definition ID=A 10  is unknown. 
     The acquisition unit  41   b  requests the node  10   b  for the attribute definition associated with the attribute definition ID of the attribute included in the acquired credential, and the attribute definition associated with the attribute definition ID notified that the definition is unknown (step S 24 ). In this example, the definition associated with the attribute definition ID=A 10  is unknown. The communication device  20   b  has acquired the information of the attribute definition ID=A 2  and A 1  included in the credential CL ( FIG.  5   ). The acquisition unit  41  requests the node  10  for the attribute definition for each of the attribute definition IDs=A 1 , A 2 , and A 10 . 
     When the requested attribute definition is specified by referring to the attribute definition  16  ( FIG.  4   ) in the distributed ledger  15 , the node  10   b  notifies the specified result to the acquisition unit  41   b  (step S 15 ). In this example, the following three pieces of definition information are notified to the acquisition unit  41   b.    
     Definition Information  1   
     Attribute definition ID=A 1   
     Attribute=name 
     Attribute definition=last name, Chinese characters 
     Definition Information  2   
     Attribute definition ID=A 2   
     Attribute=issuer 
     Attribute definition=Agent ID, numeral 
     Definition Information  3   
     Attribute definition ID=A 10   
     Attribute=full name 
     Attribute definition=last name, Chinese characters 
     The acquisition unit  41   b  outputs information acquired from the node  10   b  to the determination unit  42   b.    
     The determination unit  42   b  compares the attribute definitions in the input information. Since the attribute definition ID of the attribute notified from the application processing unit  44   b  that the definition is unknown is A 10 , the determination unit  42  determines whether there is an attribute definition ID associated with the same attribute definition, by using the attribute definition associated with the attribute definition ID=A 10  as a key. Since the attribute definition associated with the attribute definition ID=A 10  is the notation of the last name in Chinese characters, the determination unit  42   b  determines that the attribute definition matches between the attribute definition ID=A 10  and the attribute definition ID=A 1 . The determination unit  42   b  records the determination result in the attribute correspondence table  51   b.    
       FIG.  8    is an example of the attribute correspondence table  51  generated when it is determined that the attribute definition matches between the attribute definition ID=A 10  and the attribute definition ID=A 1 . The attribute correspondence table  51  associates combinations of two attributes having the same attribute definition. The two attributes having the same attribute definition are a combination of attributes that may be requested to be replaced for the communication device  20  that has requested the presentation of the information. Therefore, it may be said that the attribute correspondence table  51  records a combination of attributes that may be requested to be replaced for the communication device  20  that is the destination of the credential. Information on one of the combinations of the two attributes having the same attribute definition is recorded in the column of an attribute  1 , and information about the other of the combinations of the two attributes having the same attribute definition is recorded in the column of an attribute  2 . For each attribute, the attribute definition ID and the attribute are recorded. In  FIG.  8   , information of attribute definition ID=A 1  is recorded in the column of the attribute  1 . The attribute with the attribute definition ID=A 1  is “name”. On the other hand, the attribute with the attribute definition ID=A 10  recorded in the column of the attribute  2  is “full name”. 
       FIG.  9    is a diagram illustrating an example of an attribute correspondence message. When the determination in the determination unit  42   b  and the update of the attribute correspondence table  51   b  are performed, the generation unit  43   b  generates an attribute correspondence message for notifying another communication device  20  coupled to the node  10  belonging to the same consortium  1  of the determination result of the determination unit  42   b . F 1  in  FIG.  9    is an example of information included in the attribute correspondence message. The attribute correspondence message includes a combination of a message creator ID and a corresponding attribute. The message creator ID is an Agent ID assigned to the communication device  20  that has generated the attribute correspondence message. The corresponding attribute is a combination of the attribute definition IDs determined by the determination unit  42  to have the same attribute definition, F 1  is an example of information included in the attribute correspondence message, and the information in the attribute correspondence message may be changed depending on the implementation. When transmitting and receiving the attribute correspondence message, a header may be appropriately added to the payload including the information illustrated in F 1 . 
     F 2  in  FIG.  9    is an example of the attribute correspondence message generated by the generation unit  43   b  of the communication device  20   b  in the example described with reference to  FIGS.  4  to  8   . Since Agent ID=1 is assigned to the communication device  20   b , the message creator ID is 1. Since it is determined that the attribute definition matches between the attribute definition ID=A 10  and the attribute definition ID=A 1 , A 1 =A 10  is recorded in the corresponding attribute. 
     The transmission unit  32   b  transmits the attribute correspondence message generated by the generation unit  43   b  to all the communication devices  20  whose coupling destination node  10  belonging to the same consortium  1  (step S 26  in  FIG.  7   ). When the address used to transmit the attribute correspondence message to all the communication devices  20  coupled to the node  10  belonging to the same consortium  1  is not stored in the storage unit  50   b , the acquisition unit  41   b  acquires an address used for transmitting the attribute correspondence message from the node  10   b . The node  10   b  may notify the acquisition unit  41   b  of the address used for transmitting the attribute correspondence message by appropriately referring to the verification public key information  17  ( FIG.  4   ). A multicast address may be set for all the communication devices  20  whose coupling destination node  10  belonging to the same consortium  1  as destinations. In this case, each node  10  may notify the communication device  20  of the multicast address as the address used for transmitting the attribute correspondence message. 
     The application processing unit  44   b  determines that the credential CL ( FIG.  5   ) including the attribute with the attribute definition ID=A 1  may be used as the credential including the information of the attribute (attribute definition ID=A 10 ) requested from the communication device  20   c . After transmitting the attribute correspondence message, the application processing unit  44   b  transmits the credential CL via the transmission unit  32   b  (step S 27  in  FIG.  7   ). The application processing unit  44   b  also notifies the communication device  20   c  that the credential CL has been acquired from the communication device  20   a . Since the application processing unit  44   b  transmits the credential CL received from the communication device  20   a , the credential CL is encrypted with the secret key  52  (KeyA) of the communication device  20   a.    
       FIG.  10    is a flowchart illustrating an example of processing performed by the communication device  20  that has been requested for information.  FIG.  10    is an example of the processing, and the procedure of the processing may be changed according to the implementation. For example, the order of the processing in steps S 37  and S 38  may be changed with each other. 
     The reception unit  31  waits until an information request is received (No in step S 31 ). When the reception unit  31  receives the information request, the application processing unit  44  determines whether there is a credential including the attribute definition ID notified in the request (Yes in step S 31 , step S 32 ). If the credential including the attribute definition ID notified in the request is already acquired, the application processing unit  44  performs processing for transmitting the credential including the notified attribute definition ID to a request source (Yes in step S 32 , step S 33 ). 
     On the other hand, if there is no credential including the attribute definition ID notified in the request, the application processing unit  44  determines whether the notified attribute definition ID is in the attribute correspondence table  51  (No in step S 32 , step S 34 ). If the notified attribute definition ID is not in the attribute correspondence table  51 , the communication device  20  is in a state of not knowing an attribute representing the same information as the attribute to which the notified attribute definition ID is assigned (No in step S 34 ), The acquisition unit  41  acquires the attribute definition from the node  10  with respect to the notified attribute definition ID and the attribute definition ID included in the credential acquired by the communication device  20  (step S 35 ). By using the information acquired from the node  10 , the determination unit  42  determines whether there is an attribute definition ID with the same definition as the attribute definition ID notified in the request (step S 36 ). In the following description, an attribute definition ID with the same attribute definition as the attribute definition ID notified in the request may be described as “alternative attribute definition ID”. 
     When there is an attribute definition ID whose definition is equal to the attribute definition ID notified in the request, the determination unit  42  updates the attribute correspondence table  51  (Yes in step S 36 , step S 37 ). For this reason, the attribute definition ID and the alternative attribute definition ID notified by the request are recorded in association with the updated attribute correspondence table  51 . The attribute identified by the alternative attribute definition ID may be used as an alternative for the attribute identified by the attribute definition ID notified in the request during credential verification. The generation unit  43  transmits an attribute correspondence message in which the attribute definition ID notified in the request and the alternative attribute definition ID are associated (step S 38 ). Thereafter, the application processing unit  44  transmits the credential including the alternative attribute definition ID of the attribute definition ID notified in the request to the request source (step S 39 ). 
     On the other hand, if there is no attribute definition ID with the same definition as the attribute definition ID notified in the request, the determination unit  42  performs processing for notifying the terminal  5  that there is no credential that may be transmitted (No in step S 36 , step S 41 ). For this reason, the user of the terminal  5  that has been notified that there is no credential that may be transmitted may appropriately acquire a new credential. 
     There is no credential including the attribute definition ID notified in the request, but when the notified attribute definition ID is in the attribute correspondence table  51 , the communication device  20  may specify an attribute representing the same information as the attribute to which the notified attribute definition ID is assigned (Yes in step S 34 ). The application processing unit  44  determines whether there is a credential including an alternative attribute definition ID of the attribute definition ID notified in the request (step S 40 ). When there is no credential including the alternative attribute definition ID of the attribute definition ID notified in the request, the application processing unit  44  performs the processing of step S 41  (No in step S 40 ). When there is a credential including the alternative attribute definition ID of the attribute definition ID notified in the request, the application processing unit  44  performs the processing of step S 39  (Yes in step S 40 ). 
     (4) Processing in the Communication Device  20  that has Received the Attribute Correspondence Message 
       FIG.  11    is a flowchart illustrating an example of processing performed by the communication device  20  that has received the attribute correspondence message. Hereinafter, an example of processing performed by the communication device  20   a  that has received the attribute correspondence message in step S 26  of  FIG.  7    will be described with reference to  FIG.  11   . 
     The reception unit  31   a  receives the attribute correspondence message (step S 51 ). The storage unit  50  stores the attribute correspondence message (step S 52 ). In the example described with reference to  FIG.  7   , the storage unit  50   a  stores an attribute correspondence message indicating that the attribute definitions match between the attribute definition ID=A 10  and the attribute definition ID=A 1 . 
     The acquisition unit  41   a  acquires the attribute definition from the node  10  for each of the attribute definition IDs included in the attribute correspondence message (step S 53 ). For this reason, in the example illustrated in  FIG.  7   , the acquisition unit  41   a  acquires the following two pieces of definition information. 
     Definition Information  1   
     Attribute definition ID=A 1   
     Attribute=name 
     Attribute definition=last name, Chinese characters 
     Definition Information  2   
     Attribute definition ID=A 10   
     Attribute=full name 
     Attribute definition=last name, Chinese characters 
     A determination unit  42   a  determines whether the correspondence notified by the attribute correspondence message is correct (step S 54 ). In the example illustrated in  FIG.  7   , in each of the attribute definition IDs included in the attribute correspondence message, the attribute definition is a notation of a last name in Chinese characters. Therefore, the correspondence notified by the attribute correspondence message is correct (Yes in step S 54 ). For this reason, the determination unit  42   a  updates the attribute correspondence table  51   a  by using the information notified by the attribute correspondence message (step S 55 ). Therefore, the following information is recorded in the attribute correspondence table  51   a  by the processing of step S 55 . 
     Attribute  1   
     Attribute definition ID=A 1   
     Attribute=name 
     Attribute  2   
     Attribute definition ID=A 10   
     Attribute=full name 
     On the other hand, when it is determined that the correspondence notified by the attribute correspondence message is not correct, the determination unit  42  counts the number of times of processing without updating the attribute correspondence table  51  (No in step S 54 ). 
     The above processing is performed in all the communication devices  20  that have received the attribute correspondence message. Therefore, in the example of  FIG.  7   , the communication device  20   c  performs the same processing as that of the communication device  20   a  by receiving the attribute correspondence message. 
     (5) Processing of the Communication Device  20  Receiving a Credential 
       FIG.  12    is a flowchart illustrating an example of verification processing performed by the communication device  20 . Hereinafter, an example of processing performed by the communication device  20   c  that has received the credentials in step S 27  of  FIG.  7    will be described with reference to  FIG.  12   . At the time when the processing in  FIG.  12    is performed, it is assumed that the fact that the attribute definition matches between the attribute definition ID=A 10  and the attribute definition ID=A 1  is recorded in the attribute correspondence table  51   c.    
     The reception unit  31   c  waits until receiving a credential (No in step S 61 ). When the reception unit  31   c  receives a credential, the application processing unit  44   c  performs decryption processing on the received credential (step S 62 ). In the decryption processing, the acquisition unit  41   c  may acquire the public key KeyB associated with the communication device  20   a  that has generated the credential CL from the node  10   c  and may output the public key to the application processing unit  44   c , The application processing unit  44   c  determines whether the attribute definition ID notified to the request destination of the information is included in the decrypted credential CL (step S 63 ). If the attribute definition ID notified to the request destination of the information is included in the decrypted credential CL, the application processing unit  44   c  acquires information associated with the attribute definition ID notified to the request destination of the information (Yes in step S 63 , step S 64 ). 
     If the attribute definition ID notified to the request destination of the information is not included in the decrypted credential CL, the application processing unit  44   c  determines whether the alternative attribute definition ID of the notified attribute definition ID is included in the credential (No in step S 63 , step S 65 ). The alternative attribute definition ID is an attribute definition ID associated with the notified attribute definition ID in the attribute correspondence table  51   c . When the alternative attribute definition ID of the notified attribute definition ID is included in the credential, the application processing unit  44   c  acquires information associated with the alternative attribute definition ID (Yes in step S 65 , step S 67 ). 
     In the example described with reference to  FIG.  7   , the communication device  20   c  requests the information of the attribute definition ID=A 10  from the communication device  20   b , but the credential received from the communication device  20   b  does not include the attribute definition ID=A 10 , but includes the attribute definition ID=A 1 . Since the matching attribute definition between the attribute definition ID=A 10  and the attribute definition ID=A 1  is recorded in the attribute correspondence table  51   c , A 1  is an alternative attribute definition ID of A 10 . The application processing unit  44   c  acquires the information “Suzuki” associated with A 1  of the credential CL ( FIG.  5   ) as the “full name” of the user. 
     On the other hand, if neither the attribute definition ID notified to the request destination of the information nor the alternative attribute definition ID of the notified attribute definition ID is included in the credential, the application processing unit  44  determines that the requested information has not been notified (No in step S 65 ). In this case, the application processing unit  44   c  notifies the transmission source of the credential of the verification failure (Step S 66 ). 
     As described above, in the first embodiment, attribute replacement using the attribute correspondence table  51  is performed. For this reason, even if the attributes used for processing are different between the communication device  20  that has issued the credential and the communication device  20  that performs the verification, the attribute is replaced by using the attribute correspondence table  51 , and the information in the received credential may be used for the verification processing. Therefore, the failure of the verification processing may be easily suppressed, the holder  3  may easily use the acquired credentials, and the verification processing is performed more efficiently. 
     According to the first embodiment, the communication device  20  that has specified that the attribute definitions are the same notifies another communication device  20  of the combination of attributes with the same attribute definition by using an attribute correspondence message. In each of the communication devices  20  that have received the attribute correspondence message, if the attribute correspondence message is confirmed to be correct by using the information in the distributed ledger  15 , the attributes notified by the attribute correspondence message are associated with each other. For this reason, between the communication devices  20  coupled to the node  10  belonging to the same consortium  1 , for the combination of the attributes notified by the attribute correspondence message, the attributes may be replaced by using the attribute correspondence table  51 . 
     Second Embodiment 
     In a second embodiment, a case will be described in which the communication device  20  that has issued a credential and the communication device  20  that verifies the credential are coupled to the node  10  belonging to consortia different from each other. 
       FIG.  13    is a diagram illustrating an example of communication performed in a second embodiment. The network illustrated in  FIG.  13    includes a consortium  1   a  and a consortium  1   b . ID=C 1  is assigned to the consortium  1   a , and ID=C 2  is assigned to the consortium  1   b . A node  10   d , a node  10   e , and a node  10   g  participate in the consortium  1   a . A node  10   f , a node  10   h , and a node  10   i  participate in the consortium  1   b .  FIG.  13    illustrates a part of the nodes  10  participating in each consortium  1 , and nodes  10  other than those illustrated are participating in all consortia  1 . 
     A communication device  20   d  is coupled to the node  10   d  and a terminal  5   d . The communication device  20   g  is coupled to the node  10   i  and a terminal  5   g . A communication device  20   e  is coupled to the node  10   e , the node  10   f , and a terminal  5   e . A communication device  20   f  is coupled to the node  10   g , the node  10   h , and a terminal  5   f . The communication device  20   e  and the communication device  20   f  are both coupled to both the node  10  participating in the consortium  1   a  and the node  10  participating in the consortium  1   b . Therefore, the communication device  20   e  and the communication device  20   f  may acquire both an attribute definition  16   a  shared by the consortium  1   a  and an attribute definition  16   b  shared by the consortium  1   b . On the other hand, the communication device  20   d  does not refer to the information of the attribute definition  16   b , and the communication device  20   g  does not refer to the information of the attribute definition  16   a.    
       FIG.  14    is a diagram illustrating an example of the attribute definition  16  shared by each consortium  1 . Also in the second embodiment, the nodes  10  participating in each consortium  1  share the attribute definition  16  and the verification public key information  17  by using the distributed ledger  15 . In the following description, it is assumed that the attribute definition  16   a  is shared between the nodes  10  participating in the consortium  1   a , and the attribute definition  16   b  is shared between the nodes  10  participating in the consortium  1   b . For this reason, in the consortium  1   a , the attribute with the attribute definition ID=A 1  is “name”, and the attribute definition is a notation of a last name in Chinese characters. On the other hand, in the consortium  1   b , the attribute in which a notation of a last name in Chinese characters is defined as the attribute definition is “full name”, and the attribute definition ID is A 2 . Attribute=attribute definition of the issuer is expressed in numerical notation of Agent ID in both attribute definition  16   a  and attribute definition  16   b , but the attribute definition ID differs between the consortia  1 . 
     Hereinafter, it is assumed that the issuer  2  uses the terminal  5   d , the holder  3  uses the terminal  5   e , and the verifier  4  uses the terminal  5   g  in the network of  FIG.  13   , It is assumed that the holder  3  has acquired a credential CL 1  from the issuer  2 , but does not have the credential generated based on the attribute definition  16   b  shared by the consortium  1   b . The credential acquisition processing in the consortium  1  is as described in the first embodiment. Since the credential CL 1  is generated according to the attribute definition  16   a , the notation of the last name of the holder  3  in Chinese characters is recorded in association with the attribute definition ID=A 1  (attribute=name). In the second embodiment, it is assumed that each communication device  20  includes the IDs of the consortia  1  sharing the attribute definition  16  used by the own device, in the credential. In the example of  FIG.  13   , since the communication device  20   d  uses the attribute definition  16   a , the credential CL 1  includes information of consortium ID=C 1 . 
     The case where the holder  3  using the terminal Se is requested from the verifier  4  using the terminal  5   g  for information about the attribute definition ID=A 2  (attribute=full name) will be described as an example. Communication between the terminal Se and the terminal  5   g  and a request or an information element from the communication device  20   g  to which the terminal  5   g  is coupled are performed in the same manner as in the first embodiment. For example, the terminal Se notifies the terminal  5   g  that the communication device  20   e  is being used, and the terminal  5   g  requests the communication device  20   g  to acquire information about “full name” from the communication device  20   e.    
     In the attribute definition  16   b  ( FIG.  14   ), since the attribute “full name” is associated with the attribute definition ID=A 2 , the application processing unit  44   g  of the communication device  209  determines to request the information of the attribute definition ID=A 2 . At this time, the application processing unit  44   g  notifies the communication device  20   e  of the ID of the consortium  1   b  together, Therefore, the application processing unit  44   g  performs processing for transmitting a request including the following information to the communication device  20   e.    
     Transmission source: communication device  20   g    
     Destination: communication device  20   e    
     Attribute definition ID of the requested attribute: A 2   
     ID of the consortium that defined the attribute: C 2   
     An application processing unit  44   e  of the communication device  20   e  acquires a request for information of the attribute definition ID=A 2  in the consortium  1   b  (ID=C 2 ) via the reception unit  31   e . The holder  3  using the terminal  5   e  does not have the credential generated based on the attribute definition  16   b  shared by the consortium  1   b . Therefore, the communication device  20   e  does not have the credential including the consortium ID=C 2 . The application processing unit  44   e  determines whether the requested attribute definition ID is associated with another attribute definition ID in an attribute correspondence table  51   e . It is assumed that attribute information corresponding to a combination of consortium ID=C 2  and attribute definition ID=A 2  is not recorded in the attribute correspondence table  51   e , The application processing unit  44   e  notifies an acquisition unit  41   e  and a determination unit  42   e  that the definition associated with the combination of the consortium ID=C 2  and the attribute definition ID=A 2  is unknown. 
     The acquisition unit  41   e  inquires of the node  10   e  belonging to the consortium  1   a  about the attribute definition associated with the attribute definition ID included in the acquired credential CL 1  (step S 71 ). The acquisition unit  41   e  requests the node  10   f  included in the consortium  1   b  associated with the attribute definition ID, for the attribute definition associated with the attribute definition ID=A 2  notified that the definition is unknown (step S 72 ). 
     When specifying the requested attribute definition by referring to the attribute definition  16   a  ( FIG.  14   ) in the distributed ledger  15   a , the node  10   e  notifies the acquisition unit  41   e  of the specified result (step S 73 ). At this time, the node  10   e  also notifies the ID of the consortium  1  to which the node  10   e  belongs. Therefore, in this example, the following definition information is notified from the node  10   e  to the acquisition unit  41   e.    
     Definition Information  1   
     Consortium ID=C 1   
     Attribute definition ID=A 1   
     Attribute=name 
     Attribute definition=last name, Chinese characters 
     Similarly, the node  10   f  specifies the requested attribute definition by referring to the attribute definition  16   b  ( FIG.  14   ) in the distributed ledger  15   b  and notifies the acquisition unit  41   e  of the specified result (step S 74 ). In this example, the following definition information is notified from the node  10   f  to the acquisition unit  41   e.    
     Definition Information  1   
     Consortium ID=C 2   
     Attribute definition ID=A 2   
     Attribute=full name 
     Attribute definition=last name, Chinese characters 
     The acquisition unit  41   e  outputs information acquired from each of the nodes  10   e  and  10   f  to the determination unit  42   e.    
     The determination unit  42   e  compares the attribute definition associated with the attribute definition ID=A 2  of the consortium ID=C 2  notified that the definition is unknown with the attribute definition associated with the attribute definition ID=A 1  of the consortium ID=C 1 . In this example, the notation of the last name of any attribute definition in Chinese characters is used. The determination unit  42   e  determines that the attribute definition in the attribute definition ID=A 2  of the consortium ID=C 2  matches the attribute definition in the attribute definition. ID=A 1  of the consortium ID=C 1 . The determination unit  42   e  records the determination result in the attribute correspondence table  51   e.    
       FIG.  15    is a diagram illustrating an example of an attribute correspondence table used in the second embodiment. Also in the second embodiment, the attribute correspondence table  51  associates combinations of two attributes having the same attribute definition with each other, but for each attribute, the ID of the consortium  1  in which the attribute is used is also recorded. For example, in the attribute correspondence table  51 , the ID of the consortium, the attribute definition ID, and the attribute are recorded for each attribute. In  FIG.  15   , information of the attribute definition ID=A 1  used in the consortium  1   a  with the consortium ID=C 1  is recorded in the column of the attribute  1 . The attribute with the attribute definition ID=A 1  is “name”. On the other hand, in the column of the attribute  2 , information of the attribute definition ID=A 2  used in the consortium  1   b  of the consortium ID=C 2  is recorded. The attribute with the attribute definition ID=A 2  in the consortium ID=C 2  is “full name”. 
     On the other hand, the generation unit  43   e  generates an attribute correspondence message M 1  for notifying another communication device  20  of the determination result of the determination unit  42   e . The generation unit  43   e  performs processing for transmitting the attribute correspondence message M 1  to another communication device  20  coupled to the node  10  belonging to the consortium  1   a  and to another communication device  20  coupled to the node  10  belonging to the consortium  1   b  (step S 75  in  FIG.  13   ). The acquisition of the address information used when transmitting the attribute correspondence message M 1  is performed in the same manner as in the first embodiment. The attribute correspondence message is transmitted to both the communication device  20  that may access the attribute definition  16  shared by one consortium  1  and the communication device  20  that may access a plurality of attribute definitions  16  shared by each of a plurality of consortia  1 . Therefore, by the processing of step S 75 , all of the communication devices  20   d ,  20   f , and  20   g  in  FIG.  13    receive the attribute correspondence message M 1 . 
       FIG.  16    is a diagram illustrating an example of an attribute correspondence message used in the second embodiment.  FIG.  16    illustrates an example of information included in the attribute correspondence message M 1  transmitted in  FIG.  13   . The attribute correspondence message includes information indicating that the message type is an attribute correspondence message, a sender ID, information about the attribute  1 , and information about the attribute  2 . The attribute  1  and the attribute  2  are either of the two attributes determined to have the same attribute definition. Each of the attribute  1  and the attribute  2  includes the ID of the consortium  1  that defines the attribute, the attribute definition ID associated with the attribute, and the name of the attribute.  FIG.  16    illustrates an example of the attribute correspondence message in the case where the attribute  1  is the attribute definition ID=A 1  of the consortium ID=C 1 , and the attribute  2  is the attribute definition ID=A 2  of the consortium ID=C 2 . 
       FIG.  17    is a diagram illustrating an example of processing performed in the second embodiment.  FIG.  17    omits some of the devices in the network of  FIG.  13    to make the drawing easier to see. The acquisition unit  41  of each communication device  20  that has received the attribute correspondence message M 1  determines whether the own device may acquire the attribute definition  16  used in each of the two consortia ( 1   a  and  1   b ) whose ID is included in the attribute correspondence message M 1 . 
     If the communication device  20  does not refer to both information pieces of the attribute definitions  16  used in each of the two consortia ( 1   a  and  1   b ) identified by the ID in the attribute correspondence message M 1 , the communication device  20  does not determine whether the content of the received attribute correspondence message M 1  is correct. The communication device  20  that does not refer to both the attribute definitions  16  used in each of the two consortia identified by the ID in the attribute correspondence message M 1  counts the number of times of reception of the information for the correspondence notified by the attribute correspondence message. For example, the determination unit  42  of the communication device  20   d  and the communication device  20   g  does not determine whether the content of the attribute correspondence message M 1  is correct, but counts the number of received pieces of information for each content of the attribute correspondence message. Therefore, upon receiving the attribute correspondence message M 1 , a determination unit  42   g  stores the following information. 
     Correspondence  1   
     ID of consortium that defined attribute  1 =C 1   
     Attribute definition ID of attribute  1 =A 1   
     ID of consortium that defined attribute  2 =C 2   
     Attribute definition ID of attribute  2 =A 2   
     Number of received pieces of information about correspondence  1 : 1 
     The communication device  20   d  performs the same processing as the communication device  20   g.    
     On the other hand, when the attribute definition  16  used in each of the two consortia ( 1   a  and  1   b ) identified by the ID in the attribute correspondence message M 1  may be acquired, the communication device  20  performs processing of determining whether the content of the attribute correspondence message M 1  is correct. For example, the communication device  20   f  may acquire the attribute definition  16  used in each of the two consortia ( 1   a  and  1   b ) identified by the ID in the attribute correspondence message M 1 . An acquisition unit  41   f  of the communication device  20   f  requests the node  10   g  participating in the consortium  1   a  for the attribute definition and the attribute of the attribute definition ID=A 1 . The acquisition unit  411  requests the node  10   h  participating in the consortium  1   b  for the attribute definition and the attribute of the attribute definition ID=A 2 . 
     The node  10   g  specifies the requested attribute definition by referring to the attribute definition  16   a  ( FIG.  14   ) in the distributed ledger  15   a  and notifies the acquisition unit  41   f  of the specified result. Therefore, the following definition information is notified from the node  10   g  to the acquisition unit  41   f.    
     Definition Information  1   
     Consortium ID=C 1   
     Attribute definition ID=A 1   
     Attribute=name 
     Attribute definition=last name, Chinese characters 
     Similarly, the node  10   h  specifies the requested attribute definition by referring to the attribute definition  16   b  ( FIG.  14   ) in the distributed ledger  15   b  and notifies the acquisition unit  41   f  of the specified result. In this example, the following definition information is notified from the node  10   h  to the acquisition unit  41   f.    
     Definition Information  1   
     Consortium ID=C 2   
     Attribute definition ID=A 2   
     Attribute=full name 
     Attribute definition=last name, Chinese characters 
     The acquisition unit  41   f  outputs information acquired from each of the nodes  10   g  and  10   h  to a determination unit  42   f . For this reason, the determination unit  42   f  determines that the attribute definition in the attribute definition ID=A 2  of the consortium ID=C 2  matches the attribute definition in the attribute definition ID=A 1  of the consortium ID=C 1 . If the determination result is not recorded in the attribute correspondence table  51   f , since the determination unit  42   f  records the determination result in the attribute correspondence table  51   f , the information illustrated in  FIG.  15    is added to the attribute correspondence table  51   f . The generation unit  43   f  generates an attribute correspondence message M 2  for the two attributes included in the attribute correspondence message M 1 . The generation unit  431  performs processing for transmitting the attribute correspondence message M 2  to another communication device  20  coupled to the node  10  belonging to the consortium  1   a  and to another communication device  20  coupled to the node  10  belonging to the consortium  1   b  (step S 76 ). In order to avoid network congestion, when a message having the same content as the attribute correspondence message M 2  has been transmitted within a predetermined period, the generation unit  43   f  does not transmit the attribute correspondence message M 2 . 
     When the determination unit  42  determines that the attribute definitions do not match, the generation unit  43  generates an attribute non-correspondence message. The attribute non-correspondence message is the same as in  FIG.  16   , but the message type is set to an attribute non-correspondence message. The attribute non-correspondence message is also transmitted to another communication device  20  coupled to the node  10  belonging to the consortium  1   a  and to another communication device  20  coupled to the node  10  belonging to the consortium  1   b.    
     When the attribute correspondence message M 2  is transmitted as illustrated in step S 76 , the communication devices  20  such as the communication device  20   e , the communication device  20   g , and the communication device  20   d  receive the attribute correspondence message M 2 . The attribute correspondence message M 2  is processed in each communication device  20  in the same manner as the attribute correspondence message M 1 . Therefore, in the communication device  20  that may acquire both the information of the attribute definition  16   a  and the attribute definition  16   b , it is determined whether the information of the attribute correspondence message M 2  is correct. Among the communication devices  20  that have determined whether the information of the attribute correspondence message M 2  is correct, the communication device  20  that has not transmitted an attribute correspondence message having the same content as the attribute correspondence message M 2  within a predetermined period transmit the attribute correspondence message. On the other hand, in the communication device  20   d  and the communication device  20   g , the attribute correspondence message M 2  is processed in the same manner as the attribute correspondence message M 1 . Therefore, upon receiving the attribute correspondence message M 2 , the determination unit  42   g  in the communication device  20   g  updates the stored number of received pieces of information as follows, 
     Correspondence  1   
     ID of consortium that defined attribute  1  C 1   
     Attribute definition ID of attribute  1 =A 1   
     ID of consortium that defined attribute  2 =C 2   
     Attribute definition ID of attribute  2 =A 2   
     Number of received pieces of information about correspondence  1 : 2 
       FIG.  18    is a diagram illustrating an example of processing performed in the second embodiment Each communication device  20  compares the number of received pieces of information about the correspondence of the attributes notified by the attribute correspondence message with a threshold Th 1 . The processing described with reference to  FIG.  17    is performed by each communication device  20 , and when the number of received pieces of information about the correspondence becomes equal to or greater than the threshold Th 1 , the number of communication devices  20  equal to or greater than the threshold Th 1  has determined that the content of the attribute correspondence message is correct. When the number of received pieces of information for the correspondence is equal to or greater than the threshold Th 1 , the determination unit  42  of the device that does not determine whether the information notified by the attribute correspondence message is correct in the own device determines that the correspondence is correct, and updates the attribute correspondence table  51 . 
     In the example of  FIG.  18   , it is assumed that the threshold Th 1 =3. It is assumed that the communication device  20   g  has received the attribute correspondence messages M 1  to M 3  indicating that the attribute definition in the attribute definition ID=A 2  of the consortium ID=C 2  matches the attribute definition in the attribute definition ID=A 1  of the consortium ID=C 1 . The information notified by the attribute correspondence messages M 1  to M 3  is recorded in the attribute correspondence table  51   g . In  FIG.  18   , a part of the information of the attribute correspondence table  51   g  is illustrated because of space limitation, but the attribute correspondence table  51   g  also has the same format as that of  FIG.  15   . 
       FIG.  19    is a diagram illustrating an example of credential transmission processing.  FIG.  19    also illustrates some devices included in the network illustrated in  FIG.  13   . Before performing the processing described with reference to  FIGS.  13  to  18   , the communication device  20   e  has previously received the credential CL 1  from the communication device  20   d  (step S 70 ). It is assumed that the credential CL 1  records that the information of the attribute definition ID=A 1  is “Suzuki”. 
     It is assumed that the fact that the attribute definition in the attribute definition ID=A 2  of the consortium ID=C 2  matches the attribute definition the attribute definition ID=A 1  of the consortium ID=C 1  is recorded in the attribute correspondence table  51   g  of the communication device  20   g  by the processing described with reference to  FIGS.  13  to  18   . 
     Thereafter, the application processing unit  44   e  of the communication device  20   e  transmits the credential al to the communication device  20   g  via a transmission unit  32   e  (step S 77 ). At the time of step S 77 , since the attribute correspondence table  51   g  has been updated, the application processing unit  44   g  may recognize that the definition with the attribute definition ID=A 1  in the consortium ID=C 1  is the same as the definition with the attribute definition ID=A 2  in the consortium ID=C 2 . The attribute definition ID=A 1  (name) in the credential CL 1  is replaced as the attribute definition ID=A 2  (full name) in the consortium ID=C 2  and processed. For this reason, the attribute and the attribute definition ID are different between the consortium  1   a  and the consortium  1   b , but the communication device  20   g  succeeds in acquiring the information using the credential CL 1 . 
     As described above, in the second embodiment, even if the credential issuer and the verification device use different attribute definitions  16 , the attribute using the attribute correspondence table  51  is replaced. Therefore, the failure of the verification processing may be easily suppressed, the holder  3  may easily use the acquired credentials, and the verification processing is performed more efficiently. 
       FIG.  20    is a flowchart illustrating an example of processing performed in the second embodiment.  FIG.  20    is an example of processing performed by the communication device  20  that may acquire two attribute definitions  16  including definitions for each of two attributes to be compared. 
     The reception unit  31  waits until an attribute correspondence message or an attribute non-correspondence message is received (No in step S 81 ). Upon receiving the attribute correspondence message or the attribute non-correspondence message, the determination unit  42  determines whether the definitions of the two attributes described in the received message are the same (Yes in step S 81 , step S 82 ). If the definitions corresponding to the two attributes in the message are the same, the determination unit  42  determines whether the same definition corresponding to the two attribute IDs in the received message has been registered in the attribute correspondence table  51  (Yes in step S 82 , step S 83 ). If the same definition corresponding to the two attributes in the received message is not registered in the attribute correspondence table  51 , the determination unit  42  updates the attribute correspondence table  51  (No in step S 83 , step S 84 ). Thereafter, the generation unit  43  determines whether an attribute correspondence message for the combination of the same attribute definition IDs has been transmitted (step S 85 ). If an attribute correspondence message for the combination of the same attribute definition IDs is not transmitted, an attribute correspondence message including a combination of attribute definition IDs determined to have the same definition is transmitted (No in step S 85 , step S 86 ). 
     On the other hand, when the attribute correspondence message for the combination with the same attribute definition ID is transmitted, the process returns to step S 81  (No in step S 85 ). In step S 83 , if it is determined that a combination of attribute definition IDs determined to have the same definition is already registered in the attribute correspondence table  51  (Yes in step S 83 ), the generation unit  43  performs the processing of step S 85  and thereafter. 
     In step S 82 , the determination unit  42  determines that the definitions corresponding to the two attributes described in the received message are different (No in step S 82 ). In this case, the generation unit  43  determines whether an attribute non-correspondence message for the combination of the same attribute definition IDs has been transmitted (step S 87 ). If an attribute non-correspondence message for the combination of the same attribute definition IDs has been transmitted, the process returns to step S 81  (Yes in step S 87 ). If an attribute non-correspondence message for the combination of the same attribute definition IDs is not transmitted, the generation unit  43  transmits an attribute non-correspondence message including a combination of attribute definition. IDs determined to have different definitions (No in step S 87 , step S 88 ). 
       FIG.  21    is an example of processing performed by the communication device  20  that may acquire one of the two attribute definitions  16  including the definition for each of the two attributes to be compared but does not acquire the other. In the example of  FIG.  21   , each communication device  20  stores, in addition to the threshold Th 1 , a threshold Th 2  for comparing with the number of received attribute non-correspondence messages. The threshold Th 2  may be different from the threshold Th 1 , or may be the same as the threshold Th 1 . It is assumed that the number of received attribute non-correspondence messages being equal to or greater than the threshold Th 2  is stored in the communication device  20  as a deletion condition. 
     The acquisition unit  41  determines whether an attribute correspondence message has been received (step S 91 ). When receiving the attribute correspondence message, the determination unit  42  stores the attribute correspondence message (Yes in step S 91 , step S 92 ). The determination unit  42  determines whether the combination of the same attribute definition IDs as the received attribute correspondence message does not exist in the attribute correspondence table  51  and satisfies a registration condition (step S 93 ). The registration condition is that the number of received attribute correspondence messages including the combination of the same attribute definition IDs as the received attribute correspondence message is equal to or greater than the threshold Th 1 . When the combination of the attribute definition IDs does not exist in the attribute correspondence table  51  and satisfies the registration condition, the determination unit  42  registers the combination of the same attribute definition IDs as the received attribute correspondence message in the attribute correspondence table  51  (Yes in step S 93 , step S 94 ). Thereafter, the processing of step S 91  and thereafter is repeated. If the combination of the attribute definition IDs exists in the attribute correspondence table  51  or does not satisfy the registration condition, the processing of step S 91  and thereafter is repeated (No in step S 93 ). 
     On the other hand, when it is determined that an attribute correspondence message has not been received, the acquisition unit  41  determines whether an attribute non-correspondence message has been received (No in step S 91 , step S 95 ). If an attribute non-correspondence message has not been received, the processing of step S 91  and thereafter is repeated (No in step S 95 ). When an attribute non-correspondence message is received, the determination unit  42  stores the attribute non-correspondence message (Yes in step S 95 , step S 96 ). 
     The determination unit  42  determines whether the combination of the same attribute definition IDs as the received attribute non-correspondence message has been registered in the attribute correspondence table  51  and satisfies the deletion condition (step S 97 ). If the combination of the attribute definition IDs is registered in the attribute correspondence table  51  and satisfies the deletion condition, the determination unit  42  deletes the combination of the same attribute definition IDs as the received attribute non-correspondence message from the attribute correspondence table  51  (Yes in step S 97 , step S 98 ). Thereafter, the processing of step S 91  and thereafter is repeated. If the combination of the attribute definition IDs is not registered in the attribute correspondence table  51  or does not satisfy the deletion condition, the processing of step S 91  and thereafter is repeated (No in step S 97 ). 
     As described above, in the second embodiment, even if the credential issuer and the verification device use different attribute definitions  16 , the attribute using the attribute correspondence table  51  is replaced. For this reason, even if the definitions of the attributes are different between the communication device  20  that has issued the credential and the communication device  20  that performs the verification, the attribute is replaced by using the attribute correspondence table  51 , and the information in the received credential may be used for the verification processing. Therefore, the failure of the verification processing may be easily suppressed, the holder  3  may easily use the acquired credentials, and the verification processing is performed more efficiently. 
     &lt;Others&gt; 
     The embodiment is not limited to the above, and may be variously modified. Some examples thereof will be described below. 
     The trigger for the determination unit  42  to determine whether the two attributes have the same definition is not limited to the reception of a request for information from another communication device  20  or the reception of an attribute correspondence message or an attribute non-correspondence message. For example, when the application processing unit  44  has acquired a plurality of credentials, the determination unit  42  may be triggered to perform comparison processing between the information in the credentials and the attributes. 
     For example, in the first embodiment, it is assumed that the application processing unit  44   a  of the communication device  20   a  has acquired an address certification credential including the following information from a communication device  20   m  used in a city hall. 
     Credential ID=CID_ 2   
     Schema ID: SC_ 2   
     A 1 : Suzuki 
     A 5 : Kawasaki City, Kanagawa Prefecture 
     Thereafter, it is assumed that the application processing unit  44   a  of the communication device  20   a  acquires a credential including the following information from a communication device  20   n  used in a driver&#39;s license center. 
     Credential ID=CID_ 3   
     Schema ID: SC_ 3   
     A 4 : Suzuki 
     A 6 : Kawasaki City, Kanagawa Prefecture 
     The determination unit  42   a  compares a CID_ 2  credential with a CID_ 3  credential. Then, each credential has information of “Suzuki” and information of “Kawasaki City, Kanagawa Prefecture”. The information “Suzuki” is associated with the attribute definition ID=A 1  in the CID_ 2  credential, and is associated with the attribute definition ID=A 4  in the CID_ 3  credential. The determination unit  42   a  determines that the attribute definition ID=A 1  and the attribute definition ID=A 4  are the same, and updates the attribute correspondence table  51   a  and transmits an attribute correspondence message. Similarly, the information “Kawasaki City, Kanagawa Prefecture” is associated with the attribute definition ID=A 5  in the CID_ 2  credential, and is associated with the attribute definition ID=A 6  in the CID_ 3  credential. The determination unit  42   a  determines that the attribute definition ID=A 5  and the attribute definition ID=A 6  are the same, and updates the attribute correspondence table  51   a  and transmits an attribute correspondence message. 
     Updating of the attribute correspondence table  51  and transmission of an attribute correspondence message by comparing a plurality of credentials may be performed in a system including a plurality of consortia  1  as in the second embodiment. In this case, since the attribute correspondence message includes the identification information of the consortium  1  where each attribute is used, the generation unit  43  generates an attribute correspondence message as illustrated in  FIG.  16   . 
     The formats of the tables, messages, credentials, and the like described above are only examples, and may be changed depending on the implementation. For example, tables, messages, and credentials may include information elements other than the information elements described above, and may not include some of the illustrated information elements. 
     In the above description, the processing performed by the communication device  20  is described separately for easy understanding, but any communication device  20  may issue, transmit, and verify a credential. In the second embodiment, any communication device  20  may issue, transmit, and verify a credential, create an attribute correspondence message or an attribute non-correspondence message, and update the attribute correspondence table  51 . 
     The network used in the above description is an example, and the number of consortia  1  (clusters) in the network is any. Depending on the combination of the attribute definitions  16  to be compared, even the communication device  20  that may acquire the attribute definitions  16  in the plurality of consortia  1  may perform the processing illustrated in  FIG.  21   . For example, it is assumed that a communication device  20   x  is coupled to nodes  10   x  and  10   y , the node  10   x  participates in a consortium  1   x , and the node  10   y  participates in a consortium  1   y . In this case, it is assumed that an attribute correspondence message is transmitted for a combination of the definition in an attribute definition  16   z  used in a consortium  1   z  and the definition in an attribute definition  16   x  used in the consortium  1   x . Since the communication device  20   x  is not coupled to the node  10  sharing the attribute definition  16   z , it is not a communication device  20  that may acquire the attribute definition  16   z . At the time of processing this attribute correspondence message, the processing illustrated in  FIG.  21    is performed. 
     All examples and conditional language provided herein are intended for the pedagogical purposes of aiding the reader in understanding the invention and the concepts contributed by the inventor to further the art, and are not to be construed as limitations to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although one or more embodiments of the present invention have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.