JP7273148B2 - デジタル証明書の発行方法、デジタル証明書発行センター、記憶媒体およびコンピュータプログラム - Google Patents

デジタル証明書の発行方法、デジタル証明書発行センター、記憶媒体およびコンピュータプログラム Download PDF

Info

Publication number
JP7273148B2
JP7273148B2 JP2021518941A JP2021518941A JP7273148B2 JP 7273148 B2 JP7273148 B2 JP 7273148B2 JP 2021518941 A JP2021518941 A JP 2021518941A JP 2021518941 A JP2021518941 A JP 2021518941A JP 7273148 B2 JP7273148 B2 JP 7273148B2
Authority
JP
Japan
Prior art keywords
node
private key
digital certificate
authentication
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021518941A
Other languages
English (en)
Other versions
JP2022504420A (ja
Inventor
ザン,ジュン
ジャン,ジアンジュン
ジョン,ルオハイ
シ,ジュンジエ
チェン,フゥジィア
タン,ズチャオ
ツァイ,イゲ
チン,チン
ダイ,チョアンビン
ラン,フゥ
チェン,ジンロォン
Original Assignee
テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド filed Critical テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド
Publication of JP2022504420A publication Critical patent/JP2022504420A/ja
Application granted granted Critical
Publication of JP7273148B2 publication Critical patent/JP7273148B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/045Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1073Registration or de-registration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Description

[関連出願への相互参照]
本開示は、2019年01月09日に中国特許庁へ提出した出願番号が201910020435.5であり、出願名称が「デジタル証明書の発行方法、デジタル証明書発行センターおよび媒体」である中国特許出願に基づいて優先権を要求し、その全ての内容は援用により本出願に組み込まれる。
[技術分野]
本開示は、ブロックチェーンの分野に関し、特に、ブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する技術に関する。
従来のブロックチェーンネットワークシステムでは、パブリック型ブロックチェーン、コンソーシアム型ブロックチェーンおよびプライベート型ブロックチェーンはいずれも技術の発展に伴って生成したものである。パブリック型ブロックチェーンは、高度な脱中心化を実現可能であるとともに信頼性および安全性が最も高いが、その取引速度が最も遅いものである。プライベート型ブロックチェーンは、実現可能な脱中心化の程度が低いが、その取引速度が速く、監督管理に最適するものである。また、コンソーシアム型ブロックチェーンは、部分的な脱中心化を実現可能であり、その脱中心化の程度がパブリック型ブロックチェーンとプライベート型ブロックチェーンとの間にあり、かつ、その取引速度が比較的に速く、監督管理の可能性も高いものである。この3種類のブロックチェーンは、その特徴が異なるので、適用可能な場面も異なる。
いずれのブロックチェーンネットワークシステムであっても、データブロックのブロックチェーンへの書込みおよびクエリーの過程では、例えば書き込み情報、クエリー要求などのようなデータをブロックチェーンネットワークシステムにおいて伝送する必要がある。安全性を向上させるために、通常、送信者がデータを伝送するときにデータに対してその鍵で署名し、受信者が署名とデータを受信したときに送信者の鍵で署名を検証する必要があるので、送信者の鍵の取得に関わっている。鍵の安全性や権威性を保障するために、発行した鍵が安全で権威的なものであることを証明するよう送信者に対してデジタル証明書を発行する必要がある。しかしながら、従来技術では、ノードに対するデジタル証明書の発行過程は孤立的であり、ノードが割り当てられた鍵を有するとともにデジタル証明書が発行されるが、従来のデジタル証明書の発行過程は、当該発行されたデジタル証明書が必ず当該鍵に対応していることを証明できないので、デジタル証明書の証明力が悪く、権威性も悪い。
本開示は、発行されたデジタル証明書の証明力を高めて、ブロックチェーンネットワークにおけるデータ交換の安全性を高めることができる、ブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行するための方法、デジタル証明書発行センターおよび媒体を提供することを目的とする。
本開示の実施例の一方面によれば、ブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法であって、前記方法がデジタル証明書発行センターにより実行され、前記デジタル証明書発行センターは公開/秘密鍵生成モジュールと認証モジュールとを含み、ブロックチェーンネットワークにおけるノードからの公開/秘密鍵要求に応じて、公開/秘密鍵生成モジュールによって、前記ノードに対して前記ノードの公開鍵および秘密鍵を生成して前記ノードに送信するステップと、認証モジュールによって、前記ノードの公開鍵および登録情報を受信するステップと、認証モジュールによって前記登録情報を認証するステップと、認証に成功すると、認証モジュールによって、平文情報と、認証モジュールの秘密鍵を用いて前記平文情報に対して形成した署名とを含む、前記ノードのデジタル証明書を生成して前記ノードに送信することによって、前記ノードが認証モジュールの公開鍵を用いて前記署名を検証するようにするステップであって、前記平文情報は前記ノードの公開鍵を含む、ステップと、を含むことを特徴とする方法が開示される。
本開示の実施例の一方面によれば、デジタル証明書発行センターであって、
ブロックチェーンネットワークにおけるノードからの公開/秘密鍵要求に応じて、前記ノードに対して前記ノードの公開鍵および秘密鍵を生成して、前記ノードに送信するための公開/秘密鍵生成モジュールと、認証モジュールであって、前記ノードの公開鍵および登録情報を受信して、前記登録情報を認証し、かつ、認証に成功すると、平文情報と、認証モジュールの秘密鍵を用いて前記平文情報に対して形成した署名とを含む、前記ノードのデジタル証明書を生成して前記ノードに送信することによって、前記ノードが認証モジュールの公開鍵を用いて前記署名を検証するようにするための、認証モジュールと、を含み、前記平文情報は、前記ノードの公開鍵を含むことを特徴とするデジタル証明書発行センターが開示される。
本開示の実施例の一方面によれば、コンピュータ読み取り可能な指令が記憶されるメモリと、メモリに記憶されるコンピュータ読み取り可能な指令を読み取って、上記の方法を実行するプロセッサと、を備えるデジタル証明書発行センターが開示される。
本開示の実施例の一方面によれば、コンピュータのプロセッサによって実行される場合、上記の方法をコンピュータに実行させるコンピュータ読み取り可能な指令を記憶するためのコンピュータプログラム媒体が開示される。
本開示の実施例の一方面によれば、コンピュータで動作することによって、上記の方法をコンピュータに実行させるための指令を含むコンピュータプログラムプロダクトが開示される。
従来技術では、デジタル証明書の発行は孤立的であるため、ノードの公開/秘密鍵の正当性に対する証明力が低い。本開示の実施例では、デジタル証明書発行センターは、公開/秘密鍵生成モジュールと認証モジュールとを含む。公開/秘密鍵生成モジュールによってノードに対して公開/秘密鍵を生成した後、ノードは、公開鍵と登録情報とを共に認証モジュールに送信して認証を行う。認証成功後に、ノードに返送されたデジタル証明書には、公開鍵が含まれる。これにより、発行された公開鍵に対するデジタル証明書の証明力が強くなる。そして、デジタル証明書には認証モジュールの秘密鍵による署名が含まれており、前記ノードに返送された後、前記ノードは、認証モジュールの公開鍵で当該署名に対して検証を行うことができる。このように、当該署名が検証可能なものであるので、当該デジタル証明書の証明力および信頼性が向上する。これにより、当該デジタル証明書で保証する公開/秘密鍵を用いてブロックチェーンネットワークにおいてデータを交換することにより、ブロックチェーンネットワークにおけるデータ交換の安全性が向上する。
本開示の他の特徴および利点は、以下の詳細な説明により明らかになり、または本開示の実践によって一部を習得することができる。
なお、以上の一般的な記載と以下の詳細な説明は、あくまでも例示に過ぎなく、本開示を限定するものではないと理解できろう。
以下、本開示の上記および他の目的、特徴および利点は、例示的な実施例を図面を参照しながら詳細に説明することによってより明らかとなろう。
本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法のシステムアーキテクチャを示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法のシステムアーキテクチャを示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法のシステムアーキテクチャを示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のアーキテクチャを示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法を示すフローチャートである。 本開示の一実施例に係るデジタル証明書発行センターにおける各モジュール同士および前記ノード同士のインタラクティブを示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法を示すフローチャートである。 本開示の一実施例に係るデジタル証明書発行センターにおける各モジュール同士および前記ノード同士のインタラクティブを示す図である。 本開示の一実施例に係るノードから送信された秘密鍵を受信する方法を示すフローチャートである。 本開示の一実施例に係るノードから送信された秘密鍵を受信する方法を示すフローチャートである。 本開示の一実施例に係るノードが秘密鍵管理モジュールに秘密鍵を寄託する際のインタラクティブのフローを示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法を示すフローチャートである。 本開示の一実施例に係る秘密鍵管理モジュールTPKI_pksがノードの秘密鍵をノードに送信する方法を示すフローチャートである。 本開示の一実施例に係るノードが秘密鍵管理モジュールから寄託された秘密鍵を取得する場合のインタラクティブのフローを示す図である。 本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法を示すフローチャートである。 本開示の一実施例に係るデジタル証明書発行センターの詳細を示すブロック図である。 本開示の一実施例に係るデジタル証明書発行センターが発行したデジタル証明書を示す図である。 本開示の一実施例に係るデジタル証明書発行センターが発行したデジタル証明書を示す図である。 本開示の一実施例に係るデジタル証明書発行センターのハードウェア構成を示す図である。
以下、本開示の実施例について図面を参照しながらより全面的に説明する。しかしながら、実施例は、ここで述べる例に限られたものではなく、多様な形態で実施可能であると理解するべきである。一方、これらの実施例を提供することにより、本開示の説明がより全面的かつ完全となり、かつ実施例の構想を全面的に当業者に伝送することができる。図面は、本開示を例示的に示すものに過ぎなく、必ずしも比例的に描かれていない。図中における同一の符号は、同一または類似する部分を示すため、重複する説明を省略する。
また、ここで説明した特徴、構造または特性は、1つ以上の実施例に任意の好適な形態で組み込まれ得る。以下の説明では、本開示の実施例を十分に理解できるように具体的な詳細を多く提供する。しかし、当業者であれば、本開示の技術方案を実現するために、特定の細部のうちの1つ以上を省略したり、他の方法、ユニット、ステップなどを採用したりすることができることを理解できろう。その他の場合に、本開示の各方面を不明瞭にさせないように、公知の構造、方法、実現または動作を詳細に例示または説明しない。
図面に示すいくつかのブロック図は、機能的エンティティであり、必ずしも物理的または論理的に独立したエンティティに対応する必要はない。これらの機能的エンティティは、ソフトウェアによって実現されてもよいし、1つまたは複数のハードウェアモジュールや集積回路において実現されてもよいし、異なるネットワークおよび/またはプロセッサ装置および/又はマイクロコントローラ装置において実現されてもよい。
本開示の実施例が提供する方法は、分散型データ記憶、P2P伝送、コンセンサス機制、暗号アルゴリズムなどのコンピュータ技術の新規の応用モードであるブロックチェーンに適用される。ブロックチェーン(Block chain)は、本質的に脱中心化されたデータベースであって、暗号学の方法で関連付けられて発生した一連のデータブロックであり、各データブロックのそれぞれに1ロットのネットワーク取引の情報が含まれ、その情報の有効性(偽造防止)の検証および次のブロックの生成に利用されるものである。ブロックチェーンは、ブロックチェーン下層プラットフォーム、プラットフォームプロダクトサービス層およびアプリケーションサービス層を含み得る。
ブロックチェーン下層プラットフォームは、ユーザ管理、基礎サービス、スマートコントラクトおよび運営監視等の処理モジュールを含み得る。ここで、ユーザ管理モジュールは、公開/秘密鍵の生成の保守(アカウント管理)、鍵管理およびユーザの真実な身分とブロックチェーンアドレスとの対応関係の保守(権限管理)等を含めてブロックチェーンの全ての参与者の身分情報管理を担当し、かつ、権限が授与される場合に、ある真実な身分の取引状況を監視および監査し、リスク制御のルールの設定(リスク制御監査)を提供する。基礎サービスモジュールは、ブロックチェーンにおける全てのノード装置に配置され、トラフィック要求の有効性を検証するとともに有効な要求に対して合意形成した後に記憶媒体に記録し、1つの新たなトラフィック要求に対して、先ずはインターフェース適応性に対する解析および認証処理(インターフェースアダプテーション)を施し、その後、合意アルゴリズムによってトラフィック情報を暗号化し(合意管理)、暗号化後に共有帳簿に完全に伝送して(ネットワーク通信)記録格納するものである。スマートコントラクトモジュールは、コントラクトの登録や発行およびコントラクトの触発と実行を担当し、開発者は、あるプログラミング言語によってコントラクト論理を定義してブロックチェーンに配信し(コントラクト登録)、コントラクト条款の論理に応じて、鍵またはその他のイベントトリガを呼び出して実行して、コントラクト論理を完了するとともに、コントラクトに対するアップグレードおよび取消の機能を提供する。
運営監視モジュールは、主に、例えばアラーム、ネットワーク状況の監視、ノード装置の健康状態の監視等のような、プロダクトの発表過程における部署、配置の修正、コントラクトの設定、クラウド対応およびプロダクトの動作中のリアルタイム状態の可視化出力等を担当する。
プラットフォームプロダクトサービス層は、代表的なアプリケーションの基本機能および実現フレームを提供するものであり、開発者は、これらの基本機能に基づいて、トラフィックの特性を重ね合わせることによって、トラフィック論理のブロックチェーンを実現することができる。アプリケーションサービス層は、ブロックチェーンに基づいたアプリケーションサービスをトラフィックの参与者に提供して使用するものである。
以下、本開示の実施例に適用されるシステムアーキテクチャおよび全体フローについて図1A-1Cを参照しながら説明する。
図1Aに、本開示の実施例に適用されるブロックチェーンネットワークのシステムアーキテクチャを示す。このシステムアーキテクチャは、複数の記帳ノード101を含む記帳ノードサブネットワーク100と、取引情報生成者ノード102と、デジタル証明書発行センター103とを含む。取引情報生成者ノード102と記帳ノード101は、ブロックチェーンのシステムアーキテクチャにおける権限が異なり、記帳ノード101は、記帳権利(データブロックを生成してブロックチェーンへ書き込む権利)を有するのに対して、取引情報生成者ノード102は、記帳権利を有せず、取引情報を生成して記帳を請求する権利のみを有し、そして、記帳ノード101による記帳が正確であるかをチェックできず、記帳ノード101による記帳を受動的に信頼することしかできない。各取引情報生成者ノード102のそれぞれは、対応する記帳ノード101を有する。取引情報生成者ノード102は、取引情報を生成すると、取引情報をその対応な記帳ノード101に送信して記帳を請求することにより、ブロックチェーンへの書き込みを完了することができる。
記帳ノードサブネットワーク100に含まれる記帳ノード101同士、および記帳ノード101と取引情報生成者ノード102との間は、上記のデータブロックのブロックチェーンへの書き込み過程において各種の情報を交換する必要がある。送信者は、交換する情報の安全性を保障するために、その秘密鍵を用いて情報に対して署名して情報とともに送信する必要がある。署名および情報を受信したノードは、この署名を当該送信者の公開鍵で検証することができる。公開/秘密鍵の存在により、デジタル証明書発行センター103の作用が表現され、デジタル証明書発行センター103は、公開/秘密鍵の正当性を確認することができる。
図1Bに、本開示の実施例に適用される別種のブロックチェーンネットワークのシステムアーキテクチャを示す。当該システムアーキテクチャは、記帳ノードサブネットワーク100と、トラフィックノードサブネットワーク104と、デジタル証明書発行センター103とを含む。当該システムアーキテクチャは、トラフィックノード102から構成されるトラフィックノードサブネットワーク104を含むという点で図1Aのシステムアーキテクチャと異なる。トラフィックノード102は、記帳が不可能であるが、記帳ノード101による記帳を検証可能であるという点で図1Aにおける取引情報生成者ノード102と異なる。記帳ノードサブネットワーク100とトラフィックノードサブネットワーク104とは、エージェントノード105を介して接続されている。エージェントノード105は、トラフィックノードサブネットワーク104に属する1つの特別なノードである。エージェントノード105によるデータの伝送方式は、双方向であり、記帳ノード101からトラフィックノード102へ伝送しようとする情報のトラフィックノード102への伝送だけではなく、トラフィックノード102が発生した取引情報を記帳ノード101へ送信してブロックチェーンへの書き込みを完了することもできる。トラフィックノード102は、ブロックチェーンへの書き込みを必要とする各種の取引情報を生成して、エージェントノード105を介して1つの記帳ノード101に伝送する。記帳ノード101は、全ての記帳ノード101から選択したリーダー記帳ノードによって、受信した複数の取引情報をパケット化してブロックチェーンへ書き込む。リーダー記帳ノードは、パケット化された複数の取引情報に対してサマリを生成して、リーダー記帳ノードの秘密鍵を用いて署名を生成し、サマリと署名とをブロックヘッダに加えてトラフィックノード102へ返送させる。トラフィックノード102は、この署名をリーダー記帳ノードの公開鍵で検証することができる。ここで、リーダー記帳ノードの公開鍵および秘密鍵に関わっているので、リーダー記帳ノードの公開鍵の正当性を保証するために、デジタル証明書発行センター103が発行したデジタル証明書が必要となる。
トラフィックノード102は、記帳ノード101から送信されたブロックヘッダのみを受信するが、ブロックにおける具体的な取引情報をクエリーしようとする場合、エージェントノード105へ取引情報のクエリー要求を送信する必要がある。クエリー要求が正当的なトラフィックノード102から送信されたものであることを検証するために、トラフィックノード102は、その秘密鍵でクエリー要求に対して署名を行う必要があり、エージェントノード105は、クエリー要求に対して当該トラフィックノード102の公開鍵で署名検証を行うことによって、クエリー要求がトラフィックノード102から送信されたものであるとともに伝送途中に損失が発生しなかったことを証明する。ここで、トラフィックノードの公開鍵および秘密鍵に関わっているので、トラフィックノードの公開鍵および秘密鍵の正当性を保証するために、デジタル証明書発行センター103が発行したデジタル証明書が必要となる。
図1Cに、本開示の実施例に適用される別種のブロックチェーンネットワークのシステムアーキテクチャを示す。当該システムアーキテクチャは、その記帳ノードサブネットワーク100が複数の分岐記帳ノードサブネットワークに分けられている点で図1Bにおけるシステムアーキテクチャと異なる。各分岐記帳ノードサブネットワークのそれぞれは、ある種類の取引情報の記録を担当することができる。例えば、分岐記帳ノードサブネットワークAにおける記帳ノードは、ブロックチェーンにおける金融取引情報の記録を担当し、分岐記帳ノードサブネットワークBにおける記帳ノードは、電子伝票の取引情報の記録を担当する。図1Cにおいても、リーダー記帳ノードの公開鍵および秘密鍵またはトラフィックノード102の公開鍵および秘密鍵を用いて署名および署名検証を行う必要があり、その過程が図1Bと類似する。
図2は、本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の場面に適用される場合のアーキテクチャを示す図である。
従来の方式では、いずれも中心化したデータベースによって電子伝票の発行などのトラフィックフローを完了させているが、ブロックチェーン技術の出現につれて、伝票のブロックチェーンへの書き込みでは、既に一定の応用上の成果を取得していた。このような電子伝票におけるブロックチェーンの適用場面では、従来の中心化した電子伝票のトラフィックフローにおける、例えば地方税務局から伝票発行企業への伝票の配布、伝票発行企業から伝票受領者への伝票の発行、および伝票受領者からその清算先への伝票の清算などの取引行為はいずれもブロックチェーンに書込み、すなわちブロックチェーンに記録する必要がある。
地方税務局から伝票発行企業への伝票の配布、伝票発行企業から伝票受領者への伝票の発行などのイベントでは、地方税務局端末や伝票発行先などのトラフィックノード102は、伝票の配布、発行などの取引情報を記帳ノードサブネットワーク100に送信してブロックチェーンに書き込ませる。リーダー記帳ノードがブロックチェーンへの書き込みを完了した後、図1Bを参照して述べたように、リーダー記帳ノードからトラフィックノード102へのブロックヘッダの送信過程、およびトラフィックノード102によるブロックにおける取引情報のクエリー過程では、それぞれリーダー記帳ノードの秘密鍵を用いてブロックに対して署名し、およびトラフィックノード102の秘密鍵を用いてクエリー要求に対して署名する必要がある。トラフィックノード102およびエージェントノード105に、それぞれリーダー記帳ノードの公開鍵とトラフィックノード102の公開鍵を用いて署名を検証する場合、それぞれリーダー記帳ノードの公開鍵とトラフィックノード102の公開鍵を使用する。従って、これらの公開/秘密鍵の正当性を保証するためにデジタル証明書を発行する必要があるので、本開示の実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が生じた。
図3A-3Kは、本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合の伝票発行端末ノードの表示画面を示す図であり、これらの画面図には、電子伝票の応用場面では図1Aに示したシステムアーキテクチャにおける記帳ノードサブネットワーク100以外の取引情報生成者ノード102によるデジタル証明書の申請と取引情報のブロックチェーンへの書き込みについての概略過程を示している。
図3Aに示すように、伝票発行先端末は、取引情報を記帳ノード101に伝送して記帳する過程で取引情報に対して署名する必要があるため、伝票発行の行為に先立って、公開鍵および秘密鍵を有しなければならない。従って、図3Aの画面では、「公開鍵および秘密鍵の発行を要求する」のような提示が表示され、「確定」をクリックすると、伝票発行先端末は、デジタル証明書発行センター103に公開鍵および秘密鍵の発行を要求する。
図3Bに示すように、デジタル証明書発行センター103は、伝票発行先端末の要求に応じて、一対の公開/秘密鍵ペアを生成して、伝票発行先端末へ公開/秘密鍵ペアを返送する。伝票発行先端末は、秘密鍵を自ら保存してもよいし、端末に故障が発生した場合に自己の端末に保存された秘密鍵が紛失するのを防止するように、秘密鍵をデジタル証明書発行センターに寄託してもよい。
そのため、図3Bの画面に示すように、公開/秘密鍵ペアを返送するときに、「秘密鍵を寄託するか」のような提示を表示することができ、寄託を選択すると、管理者は、図3Bに示す「はい」をクリックして、秘密鍵をデジタル証明書発行センター103に寄託させることができる。そして、図3Cに示すように、「秘密鍵の寄託に成功」のような提示を表示する。
この公開鍵および秘密鍵が正当的な機構から発行された統一的な公開鍵および秘密鍵であることを証明するために、デジタル証明書を申請して当該公開鍵および秘密鍵の正当性を証明する必要がある。従って、図3Dに示すように、伝票発行先端末に、会社名、納税者識別番号などの登録情報を記入する。管理者が「確定」をクリックすると、発行された公開鍵および登録情報をデジタル証明書発行センター103に送信する。
デジタル証明書発行センター103は、登録情報を受信すると、登録情報を認証し、認証に成功すると、デジタル証明書を発票発行先端末に発行する。デジタル証明書には、図3Eに示すバージョン番号、署名アルゴリズム、認証モジュールの公開鍵、伝票発行先の公開鍵などの平文情報と、認証モジュールの秘密鍵を用いて平文情報に対して行った署名が含まれている。このデジタル証明書に伝票発行先の公開鍵が含まれているため、公開鍵および秘密鍵とバインディング関係が形成され、当該発行された公開鍵および秘密鍵が正当的なものであることを証明できる。
伝票発行先端末がデジタル証明書を受信すると、管理者は、「検証」をクリックすることによって、認証モジュールの公開鍵を用いてデジタル証明書における署名を検証することができる。検証に成功すると、このデジタル証明書が正当的な機構により発行されたものであることを証明することができ、図3Fに示すデジタル証明書の検証に成功したような提示が表示される。
伝票発行先端末が伝票を発行した場合、伝票発行情報をブロックチェーンに書き込む必要がある。この場合、図3Gに示す画面に伝票発行先、伝票識別子などの取引情報を記入する。管理者は、「記帳ノードへ送信」をクリックすると、これらの取引情報を対応する記帳ノード101に送信するように指示する。
取引情報送信者の正当性および取引情報の伝送の完全性を保障するために、取引情報に対して署名する必要がある。署名には、伝票発行先端末の秘密鍵を用いる必要がある。この秘密鍵は、図3Bに示す画面において寄託が選択されるため、この場合、寄託された秘密鍵をデジタル証明書発行センター103から取得する必要がある。管理者は、図3Hに示す画面において「はい」を選択する。
寄託された秘密鍵をデジタル証明書発行センター103から取得すると、図3Iに示す提示画面が表示される。管理者が当該画面において「署名して送信」をクリックすると、伝票発行先端末の秘密鍵で取引情報に対して署名して、記帳ノード101に送信する。
記帳ノード101は、伝票発行先端末の署名を受信すると、伝票発行先端末の公開鍵でこの署名を検証する。検証に成功すると、検証に成功した旨を伝票発行先端末に通知する。伝票発行先端末には、図3Jに示す画面が表示される。
記帳ノード101は、取引情報をブロックチェーンに書き込む。ブロックチェーンへの書き込みが完了すると、ブロックチェーンへの書き込みが完了した旨を伝票発行先端末に通知する。伝票発行先端末には、図3Kに示す画面が表示される。
図4A-4Kは、本開示の一実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が電子伝票の応用場面に適用される場合のノードの表示画面を示す図であり、これらの画面図には、図1Bに示したシステムアーキテクチャにおいてトラフィックノードサブネットワーク104におけるトラフィックノード102が記帳ノードサブネットワーク100における記帳ノード101からブロックチェーンに書き込まれたデータブロックのブロックをクエリーする概略過程を示している。
図4A~4Fは、トラフィックノード102がブロック内の取引情報をクエリーする前に公開鍵、秘密鍵およびその対応のデジタル証明書の取得を完了する過程であり、図3A~3Fと類似するので説明を省略する。
取引情報がブロックチェーンに書き込まれた後、トラフィックノード102は、記帳ノード101から送信されたブロックヘッダのみを受信する。トラフィックノード102がブロック内の取引情報をクエリーする必要がある場合、図4Gに示す画面を表示する。管理者は、「確定」をクリックすると、エージェントノード105へクエリー要求を送信するように指示する。
クエリー要求が正当的なトラフィックノード102から発信されたものであることを証明するために、同時にトラフィックノード102による署名を送信する必要がある。図4Hに示すように、表示される画面には、クエリー要求に対して署名する必要があることを提示し、かつ、署名用の秘密鍵を取得するか否かを聞き合わせる。
管理者が図4Hに示す画面における「はい」をクリックすると、デジタル証明書発行センター103からトラフィックノード102の秘密鍵を取得する。図4Iに示すように、管理者が「署名して送信」をクリックすると、トラフィックノード102の秘密鍵でクエリー要求に対して署名して、クエリー要求とともにエージェントノード105に送信する。
エージェントノード105は、クエリー要求および署名を受信すると、トラフィックノード102の公開鍵で署名を検証し、検証に成功すると、その旨をトラフィックノード102に通知する。トラフィックノード102は、図4Jに示す画面を表示する。
署名の検証に成功すると、エージェントノード105は、ブロックヘッダの取引情報のクエリー要求を対応する記帳ノード101に送信するとともに、トラフィックノード102の権限に応じて、そのクエリーを要求している取引情報を返送するか否かを決定する。図4Kに、トラフィックノード102において返送された取引情報を閲覧する画面を示している。
図5に示すように、本開示の一実施例によれば、ブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法が提供される。
ブロックチェーンネットワークは、図1Aー1Cに示すようなブロックチェーンへのデータブロックの記録に係るシステムアーキテクチャ全体を意味する。デジタル証明書は、ノードに割り当てられる公開鍵および秘密鍵が正当的な機構により割り当てられたものであることを保証するために設けられた証明書類である。ブロックチェーンネットワークにおけるノードは、ブロックチェーンネットワークにおけるデジタル証明書発行センター103以外の全てのノードを意味する。図1Aでは、取引情報生成者ノード102と記帳ノード101とを含む。図1B-1Cでは、トラフィックノード102、エージェントノード105および記帳ノード101を含む。
前記方法は、デジタル証明書発行センター103によって実行される。デジタル証明書発行センターは、暗号アルゴリズムに基づいて、ブロックチェーンのノードの通信に対してセキュリティサービスを提供する中心化したインフラであり、公開鍵および秘密鍵の正当性を確認できるようにノードに対してデジタル証明書を発行することができる。図6に示すように、前記デジタル証明書発行センター103は、少なくとも公開/秘密鍵生成モジュールTPKI_sdkと認証モジュールTPKI_caとを含む。公開/秘密鍵生成モジュールTPKI_sdkは、ノードに対して公開鍵および秘密鍵を生成するためのものである。認証モジュールTPKI_caは、ノードを認証することにより、当該ノードの正当性を検証し、さらに、正当的なノードとノードに対して生成した公開鍵および秘密鍵との間に認証された対合を形成するためのものである。
デジタル証明書発行センター103は、ノードの登録情報を認証する際に用いられるポリシーを記憶するための認証ポリシーモジュールTPKI_ausをさらに含んでもよい。
公開/秘密鍵生成モジュールTPKI_sdk、認証モジュールTPKI_caおよび認証ポリシーモジュールTPKI_ausは、例えば異なるエンティティに分布される物理的なものであってもよいし、例えば1つのエンティティに分布する異なる仮想モジュールのような仮想的なものであってもよい。
図5に示すように、前記方法は、
ブロックチェーンネットワークにおけるノードからの公開/秘密鍵要求に応じて、公開/秘密鍵生成モジュールTPKI_sdkによって、前記ノードに対して前記ノードの公開鍵および秘密鍵を生成して前記ノードに送信するステップ510と、
認証モジュールTPKI_caによって、前記ノードの公開鍵および登録情報を受信するステップ530と、
認証モジュールTPKI_caによって前記登録情報を認証するステップ550と、
認証に成功すると、認証モジュールTPKI_caによって、平文情報と、認証モジュールTPKI_caの秘密鍵を用いて前記平文情報に対して形成した署名とを含む、前記ノードのデジタル証明書を生成して前記ノードに送信することによって、前記ノードが認証モジュールTPKI_caの公開鍵を用いて前記署名を検証するようにするステップ560と、を含む。ここで、前記平文情報は前記ノードの公開鍵を含む。
ここで、公開鍵(Public Key)および秘密鍵(Private Key)は、1種のアルゴリズムによって得られた1つの鍵ペア(すなわち、1つの公開鍵と1つの秘密鍵)であり、公開鍵は鍵ペアにおける公開部分であり、秘密鍵は非公開部分である。公開鍵で暗号化されたデータは、対応する秘密鍵でしか復号することができなく、秘密鍵で暗号化されたデータは、対応する公開鍵でしか復号することができない。
ノードの公開鍵は、デジタル証明書発行センター103の公開/秘密鍵生成モジュールTPKI_sdkによって生成され、かつ、ノード間で伝送されるデータを暗号化または復号するとともに、デジタル証明書がノードに対して生成された公開鍵および秘密鍵が正当的なものであることを証明できるように、デジタル証明書発行センター103がノードに対してデジタル証明書を発行する際にデジタル証明書とノードの公開鍵とを関連付けるためのものである。ノードがデジタル証明書発行センター103からデジタル証明書を取得したときに、認証モジュールTPKI_caの公開鍵を用いて、認証モジュールTPKI_caがその自身の秘密鍵を用いてデジタル証明書およびノードの公開鍵に対して形成した署名を検証して、デジタル証明書の信頼性を向上できるように、ノードには認証モジュールTPKI_caの公開鍵が記憶されてもよい。
なお、デジタル証明書発行センター103が認証ポリシーモジュールTPKI_ausをさらに含む場合、ステップ550の前に、認証モジュールTPKI_caによって、認証ポリシーモジュールTPKI_ausから前記ノードに対応する登録情報認証ポリシーを取得するステップ540(図5において点線でこのステップがオプションであることを示す)をさらに含んでもよい。これにより、ステップ550において登録情報を認証するときに、前記認証モジュール(TPKI_ca)によって、前記ノードに対応する登録情報認証ポリシーに基づいて前記登録情報を認証することができ、認証が統一的な基準を有するようにすることができる。
以下、図5に示す技術方案について、図6に示すデジタル証明書発行センターにおける各モジュール同士、および前記ノードとの間のインタラクティブ模式図を参照しながら説明する。6-1において、公開/秘密鍵生成モジュールTPKI_sdkは、ノードBersに対して公開/秘密鍵ペアを生成して当該ノードに送信する。6-4において、ノードBersは、登録情報および公開鍵を認証モジュールTPKI_caに送信する。6-5において、認証モジュールTPKI_caは、登録情報認証ポリシー取得要求を認証ポリシーモジュールTPKI_ausに送信する。その後、認証ポリシーモジュールTPKI_ausは、前記ノードに対応する登録情報認証ポリシーを取得して、ステップ6-6において認証ポリシーを認証モジュールTPKI_caへ返送する。認証に成功すると、認証モジュールTPKI_caは、ステップ6-7においてデジタル証明書をノードBersに送信する。一方、認証に失敗すると、認証モジュールTPKI_caは、ステップ6-7において認証に失敗した旨のアラート情報をノードBersに送信する。
以下、ステップ510-560について詳述する。
ステップ510において、ブロックチェーンネットワークにおけるノードからの公開/秘密鍵要求に応じて、公開/秘密鍵生成モジュールTPKI_sdkによって、前記ノードに対して前記ノードの公開鍵および秘密鍵を生成して前記ノードに送信する。
公開/秘密鍵要求は、ブロックチェーンネットワークにおけるノードがデジタル証明書発行センターからデジタル証明書を取得するための要求である。公開/秘密鍵要求は、例えばHTTP(Hyper Text Transfer Protocol)/HTTPSプロトコルに基づいた要求などのような各種のネットワークプロトコルに基づいたネットワーク要求や、例えばget、postなどの方法で生成された要求であってよい。
1つの実施例では、公開/秘密鍵ペアの生成方式について、従来のOpenSSLといったセキュア・ソケット・レイヤー暗号ライブラリのコマンド行ツールによって生成されることができる。
非対称暗号アルゴリズムが異なるため、公開/秘密鍵ペアを生成する方法が異なる。そこで、1つの実施例では、公開/秘密鍵生成モジュールTPKI_sdkに非対称暗号アルゴリズムライブラリが設置され、公開/秘密鍵生成モジュールTPKI_sdkは、この非対称暗号アルゴリズムライブラリから1種の非対称暗号アルゴリズムをランダムに選択して、前記ノードに対して前記ノードの公開鍵および秘密鍵を生成する。
1つの実施例では、ブロックチェーンネットワークにおけるノードがデジタル証明書発行センターに送信した公開/秘密鍵要求には、非対称暗号アルゴリズムの名称が含まれ、公開/秘密鍵生成モジュールTPKI_sdkは、この名称の非対称暗号アルゴリズムに基づいて前記ノードに対して前記ノードの公開鍵および秘密鍵を生成する。この実施例は、ノードが公開鍵と秘密鍵を選択する自由度を高めることによって、ノードは、そのプリファレンスに応じて特別に愛好する暗号アルゴリズムに基づいた公開鍵および秘密鍵を選択することができる。
ある実施例では、ブロックチェーンネットワークにおけるノードがデジタル証明書発行センターに送信した公開/秘密鍵要求には、当該ノードの種別が含まれ、公開/秘密鍵生成モジュールTPKI_sdkには、ノードの種別と非対称暗号アルゴリズムの名称との対応関係テーブルが予め設けられており、公開/秘密鍵生成モジュールTPKI_sdkは、公開/秘密鍵要求におけるノードの種別に従って対応関係テーブルをサーチして、対応する非対称暗号アルゴリズムの名称を得、当該名称の非対称暗号アルゴリズムに従って前記ノードに対して前記ノードの公開鍵および秘密鍵を生成する。この実施例は、1種のノードに適する非対称暗号アルゴリズムが一定であるという利点がある。ノードの種別に応じて、それに適する非対称暗号アルゴリズムを選択して公開鍵および秘密鍵を生成することにより、生成した公開鍵および秘密鍵の品質を向上させることができる。
ある実施例では、公開/秘密鍵生成モジュールTPKI_sdkに非対称暗号アルゴリズムライブラリが設定され、非対称暗号アルゴリズムライブラリにおける非対称暗号アルゴリズムが所定の順序を有し、公開/秘密鍵生成モジュールTPKI_sdkは、この非対称暗号アルゴリズムライブラリから、前回で選択した非対称暗号アルゴリズムの次の非対称暗号アルゴリズムを所定の順序で選択して、前記ノードに対して前記ノードの公開鍵および秘密鍵を生成する。前回で選択した非対称暗号アルゴリズムは、所定の順序における最後の1つの非対称暗号アルゴリズムである場合、1番目の非対称暗号アルゴリズムを選択して、前記ノードに対して前記ノードの公開鍵および秘密鍵を生成する。この実施例は、毎回に選択した非対称暗号アルゴリズムが異なるため、公開鍵および秘密鍵が伝送過程で第三者によりクラックされる困難度が高まり、発行した公開鍵および秘密鍵の伝送安全性が向上したという利点がある。
ある実施例では、前記方法は、公開/秘密鍵生成モジュールTPK1_sdkによって前記ノードに対して前記ノードの公開鍵および秘密鍵を生成して前記ノードに送信した後に、前記ノードの公開鍵および秘密鍵とノード識別子とを対応付けてバックアップするステップをさらに含む。このようにすれば、ノードは、自らの秘密鍵を大切に保存していなく、同時に秘密鍵管理モジュールTPKI_pksへの寄託もされていない場合、公開/秘密鍵生成モジュールTPKI_sdkによって自分に発行された秘密鍵を見つけることができるという利点がある。
ステップ530において、認証モジュールTPKI_caによって、前記ノードの公開鍵および登録情報を受信する。
上記のように、前記ノードの公開鍵は、既に公開/秘密鍵生成モジュールTPKI_sdkによって生成されて前記ノードに送信される。
登録情報は、例えば会社名、納税者識別番号などのような、ノードがデジタル証明書発行センター103で登録する際に記入する必要がある情報であってもよい。デジタル証明書発行センター103で登録する意義としては、デジタル証明書を取得して、それに割り当てられた公開鍵および秘密鍵が正当的な機構から発行されたものであることを証明するためのことである。登録情報の認証に成功しなければ、ノードに対してデジタル証明書を発行することができない。
ある実施例では、前記ノードの公開鍵および登録情報は、認証モジュールTPKI_caの公開鍵で暗号化される。このようにすれば、認証モジュールTPKI_caのみがその秘密鍵を有するので、認証モジュールTPKI_caでしか複号できないという利点がある。従って、伝送過程で第三者によって傍受されても、第三者が認証モジュールTPKI_caの秘密鍵を有しないので、復号が不能であり、ノードの登録情報の伝送安全性が保証される。
ステップ540において、認証モジュール(TPKI_ca)によって、前記ノードに対応する登録情報認証ポリシーを認証ポリシーモジュール(TPKI_aus)から取得する。
登録情報認証ポリシーは、デジタル証明書が満足可能なセキュリティ要求の表現が準拠するポリシーであり、1または複数のセキュリティルールのポリシーであってもよい。例えば、どんな登録情報を検証するか、どのような基準に従って検証するかなどであってもよい。例えば、登録情報認証ポリシーは、会社の住所が深セン市にあるとともに会社の人数が500人よりも多いとのことである。すなわち、当該ブロックチェーンネットワークは、深セン市にある大中型の会社にサービスを提供する1つのブロックチェーンネットワークである可能性がある。深セン市に位置しない会社、または深セン市にあるが人数が少ない小型の会社であると、ネットワークの保守コストという問題を考慮して、その認証が失敗し、デジタル証明書が発行されなく、その公開鍵および秘密鍵に対して正当性証明書を提供しない。
なお、前記ノードに対応する登録情報認証ポリシーは、当該登録情報認証ポリシーが前記ノードと一意に対応することを意味しない。すなわち、当該登録情報認証ポリシーは、前記ノードに適用されてもよいし、前記ノード以外の他のノードに適用されてもよい。登録情報認証ポリシーは、全てのノードが共通するユニークな登録情報認証ポリシーであってもよいし、ノード毎に異なる登録情報認証ポリシーであってもよい。
ある実施例では、前記ノードに対応する登録情報認証ポリシーは、前記ノードの種別に特定される登録情報認証ポリシーを含む。前記登録情報には、前記ノードの種別が含まれる。前記ステップ540は、認証ポリシーモジュール(TPKI_aus)から前記ノードの種別に特定される登録情報認証ポリシーを取得することを含む。
つまり、登録情報に含まれるノードの種別(例えば、金融業界の企業の端末、法律業界の企業の端末)に応じて、前記ノードの種別に特定される登録情報認証ポリシーを確定する。登録情報認証ポリシーはノードの種別によって異なる可能性がある。例えば、金融業界の企業は、その利益率が比較的に大きい可能性があり、登記資本金が200万以上であるように要求される。法律業界の企業は、その利益率が比較的に小さい可能性があり、登記資本金が10万以上であるように要求される。
この実施例は、ある種別のノードは類似する特徴を有するので、デジタル証明書を発行できるか否かを考慮する際に、通常は類似する基準に準拠するという利点がある。このようにすると、認証の正確性がより向上される。
ある実施例では、前記ノードの登録情報には、申請するデジタル証明書のセキュリティレベルを示す規格が含まれる。認証ポリシーモジュールTPKI_ausは、デジタル証明書の規格と登録情報認証ポリシーとの対応関係テーブルを含むので、前記ノードに対応する登録情報認証ポリシーは、前記登録情報におけるデジタル証明書の規格に従って、デジタル証明書の規格と認証ポリシーとの対応関係テーブルからサーチされるものである。
規格は、デジタル証明書のセキュリティレベルを表し、例えば、規格が3レベルであることはセキュリティレベルが最高であること、規格が2レベルであることはセキュリティレベルが中程度であること、規格が1レベルであることはセキュリティレベルが最低であることをそれぞれ示す。セキュリティレベルが高いほど、認証の厳しさが高くなり、対応する認証ポリシーも多くなったり、過酷になる可能性がある。この実施例は、異なるセキュリティレベルのデジタル証明書に対して異なる認証ポリシーが設定され、異なるセキュリティレベルのデジタル証明書が公開鍵および秘密鍵の正当性に対する証明力が異なるという利点がある。このようにすると、デジタル証明書の発行の自由度を高めることができる。
ある実施例では、前記登録情報認証ポリシーは、ブロックチェーンに記憶されている、前記ノードとブロックチェーンネットワークの運営者とが締結したスマートコントラクトから取得される。前記ノードは、ブロックチェーンネットワークを使用する前に、事前に認証時の登録情報認証ポリシーを有するスマートコントラクトをブロックチェーンネットワークの運営者と締結する必要がある。このスマートコントラクトは、前記ノードの識別子と対応付けてブロックチェーンに記憶されてもよい。このように、ブロックチェーンに書き込まれた全てのデータブロックのブロックから前記ノードの識別子をサーチし、当該ノードの識別子と対応付けて記憶されているスマートコントラクトをサーチして、前記スマートコントラクトから登録情報認証ポリシーをサーチすることができる。この実施例は、認証ポリシーを別途設定する必要がなく、スマートコントラクトにおける認証ポリシーを直接利用することができ、デジタル証明書の発行効率を向上させることができるという利点がある。
ある実施例では、認証ポリシーモジュールTPKI_ausは、発行要求時間帯と認証ポリシーとの対応関係テーブルを含む。ステップ540は、公開鍵および登録情報を受信した時点が所在する発行要求時間帯を確定するステップと、前記発行要求時間帯を認証ポリシーモジュールTPKI_ausに送信し、認証ポリシーモジュールTPKI_ausが発行要求時間帯と認証ポリシーとの対応関係テーブルをサーチして、当該発行要求時間帯と対応する認証ポリシーを取得して返信するステップとを含む。
例えば、毎日の出勤時間9:00~17:00、および退勤時間0:00-9:00または17:00-24:00の登録情報認証ポリシーは異なる。公開鍵および登録情報を受信した時点を、デジタル証明書の発行を要求する時点として決定することができ、当該発行を要求する時点が9:00-17:00にあるか、それとも0:00-9:00または17:00-24:00にあるかによって認証ポリシーが異なる。要求発行時間帯と認証ポリシーとの対応関係テーブルから、当該要求発行時間帯と対応する認証ポリシーを、取得した登録情報認証ポリシーとして見つけることができる。
この実施例は、幾らかの場面において認証ポリシーが異なる時間帯に従って変化することを十分に考慮して、デジタル証明書発行システムがより広く応用されるという利点がある。
登録情報認証ポリシーが認証ポリシーモジュールTPKI_ausから取得したものであると、ステップ550において、認証モジュール(TPKI_ca)によって、前記ノードと対応する登録情報認証ポリシーに基づいて前記登録情報を認証する。
前記ノードと対応する登録情報認証ポリシーは、例えば上記のように会社の住所が深セン市に位置し、会社の人数が500人よりも多いなどのセキュリティルールを複数有する可能性がある。認証は、セキュリティルールごとに認証情報がこのセキュリティルールに合致するか否かをそれぞれ考慮する必要がある。全部が合致すると認証に成功する。逆に、認証に失敗する。
ステップ560において、認証に成功すると、認証モジュールTPKI_caによって、平文情報と、認証モジュールTPKI_caの秘密鍵を用いて前記平文情報に対して形成した署名とを含む、前記ノードのデジタル証明書を生成して前記ノードに送信することによって、前記ノードが認証モジュールTPKI_caの公開鍵を用いて前記署名を検証するようにし、前記平文情報は前記ノードの公開鍵を含む。
ある実施例では、前記ノードのデジタル証明書を生成するステップは、
前記ノードの公開鍵を含む平文情報を生成するステップと、
所定のサマリアルゴリズムに基づいて前記平文情報に対してサマリを生成するステップと、
前記サマリを認証モジュールTPKI_caの秘密鍵で暗号化して署名を得るステップと、
署名と平文情報とに基づいて前記デジタル証明書を生成するステップと、を含む。
所定のサマリアルゴリズムは、例えば、ハッシュアルゴリズムであってもよい。この実施例でも、一般的な署名の生成過程と類似するように、平文情報に対してサマリを生成した後、サマリを暗号化して署名を得るようになっている。そして、署名を平文情報とともにデジタル証明書に加える。平文情報は前記ノードの公開鍵を有するため、デジタル証明書と発行した公開鍵および秘密鍵とが関連付けられ、デジタル証明書はある特定の公開鍵および秘密鍵が正当的に発行したものであることを証明可能となる。署名の作用としては、前記ノードによる当該デジタル証明書が正当的な機構である認証モジュールTPKI_caから発行されたものであるかの検証を容易にさせ、デジタル証明書の信頼性を高めるとのことである。
これと対応し、ある実施例では、前記署名を認証モジュールTPKI_caの公開鍵で検証するステップは、
デジタル証明書における署名を、認証モジュールTPKI_caの公開鍵で復号するステップと、
デジタル証明書における平文情報に対して前記所定のサマリアルゴリズムによってサマリを生成するステップと、
復号の結果と前記生成したサマリとを比較し、かつ、一致すると検証に成功し、一致しないと検証に失敗するステップとを含む。
ある実施例では、ブロックチェーンネットワークにおけるノードのそれぞれには、前記認証モジュールTPKI_caの公開鍵が記憶される。前記認証モジュールTPKI_caの公開鍵は、前記ノードに記憶される公開鍵から取得してもよい。この実施例は、実現が容易になり、前記認証モジュールTPKI_caの公開鍵を取得する時間を減少したという利点がある。
ある実施例では、前記認証モジュールTPKI_caの公開鍵は、ブロックチェーンにおける当該認証モジュールTPKI_caの公開鍵が記録されるデータブロックから取得してもよい。つまり、例えば、認証モジュールTPKI_caの識別子と対応付けて1つのデータブロックの1つの取引情報に保存するように、認証モジュールTPKI_caの公開鍵をブロックチェーンに書き込んで記憶する。クエリーの際に、ブロックチェーンにおける全てのデータブロックの取引情報から認証モジュールTPKI_caの識別子をサーチし、この取引情報における当該識別子とその対応な公開鍵をサーチする。この実施例は、各ノードの記憶空間の占用比率を減少させたという利点がある。
このデジタル証明書は、正当的な認証モジュールTPKI_caによって発行されたものであると、その復号の結果が前記生成されたサマリと一致し、検証に成功する。認証に成功しないと、デジタル証明書は、正当的な認証モジュールTPKI_caによって発行されたものではない可能性が高い。これにより、デジタル証明書自体の安全性を向上させた。
ある実施例では、ノードは、上記のような署名の検証に加えて、発行機構の正当性に対しても検証を行う。
図17Aおよび図17Bに示すように、前記平文情報は、前記ノードが正当的な発行機構の識別子情報リストに基づいてデジタル証明書を検証できるように発行機構の識別子情報を含む。
各ノードには、全ての正当的な発行機構の識別子リストをリストアップした正当的な発行機構の識別子情報リストが記憶されてもよい。識別子情報が当該正当的な発行機構の識別子情報リストに含まれていれば、当該発行機構は正当的なものである。平文情報における発行機構の識別子情報を正当的な発行機構の識別子情報リストにおける正当的な発行機構の識別子情報のそれぞれと逐一対比することにより、当該デジタル証明書が正当的な発行機構によって発行されたものであるか否かを判定することができる。このように発行機構の正当性を検証することは、デジタル証明書の信頼性をさらに向上させたという利点がある。
図17Aおよび図17Bは、それぞれ前記ノードが企業またはサービス事業者である場合にデジタル証明書発行センターが前記ノードに対して発行したデジタル証明書の内容の例を示すものである。図17A-17Bに示すように、企業およびサービス事業者のデジタル証明書のいずれにも、平文情報および平文情報に対する署名が含まれている。
図17Aに示すように、企業の平文情報は、企業の公開鍵、発行機構の識別子の以外に、バージョン番号、シリアル番号、署名アルゴリズム、認証モジュールCAの公開鍵、企業識別子、有効時間、証明書状態情報および拡張情報を含み得る。当業者であれば、実際には、企業の平文情報は、バージョン番号、シリアル番号、署名アルゴリズム、認証モジュールCAの公開鍵、企業識別子、有効時間、証明書状態情報および拡張情報のうちの1つまたは複数のみを含む場合があり、1つも含まない場合もあり得ると理解できろう。
バージョン番号は、ブロックチェーンのバージョン識別子である。ブロックチェーンのバージョンがアップグレードされた場合、デジタル証明書発行センターが発行したデジタル証明書におけるバージョン識別子が変化する。
シリアル番号は、発行されたデジタル証明書の順序番号である。各デジタル証明書は、その発行の順序に従って唯一なシリアル番号を有する。このシリアル番号は、その発行の順序で昇順に生成することができる。
署名アルゴリズムは、認証モジュールCAが署名を生成する際に平文情報に対してサマリを生成するためのサマリアルゴリズムである。この署名アルゴリズムを前記ノードに返送するのは、前記ノードが署名を検証するときに当該サマリアルゴリズムを用いて平文情報に対してサマリを新たに生成して、署名の復号結果と対比できるようにするためのことである。
認証モジュールCAの公開鍵を前記ノードに返送する意義としては、前記ノードが署名を復号するときに認証モジュールCAの公開鍵を用いて復号する必要があるとのことである。
企業識別子は、企業を唯一に区分するためのマークであり、納税者識別番号などを企業識別子としてもよいし、企業に対して専用の識別子を割り当ててもよい。
有効時間は、このデジタル証明書の有効期間のカットオフタイムである。後述するように、秘密鍵をクエリーする場合、そのクエリーしている秘密鍵を前記ノードに返送するか否かを決定するために、当該有効時間に基づいて有効時間の検証を行う必要がある。
証明書状態情報は、例えば、証明書が取り消されたか否かのようなデジタル証明書の状態を示す情報であり、取り消されていない場合、当該証明書状態情報は正常である。
拡張情報は、実際の需要に応じて、デジタル証明書へ追加する必要がある他の情報である。
図17Bは、サービス事業者識別子で企業識別子を、サービス事業者の公開鍵で企業の公開鍵をそれぞれ代替した点で図17Aと異なる。サービス事業者識別子は、サービス事業者を唯一に区分するためのマーカーである。サービス事業者の公開鍵は、サービス事業者に割り当てられた公開鍵である。
デジタル証明書は、例えば.cerまたは.crtなどのようなノードが識別可能な各種のフォーマットとなる構造化されたデータファイルであってもよい。
ある実施例では、前記デジタル証明書発行センターは、秘密鍵管理モジュールTPKI_pksをさらに含む。秘密鍵管理モジュールは、デジタル証明書発行センターがノードに対して発行した秘密鍵を寄託するためのモジュールである。図7に示すように、前記方法は、ステップ510の後に、秘密鍵管理モジュールTPKI_pksによって、前記ノードから送信された秘密鍵を受信して保存するステップ520をさらに含む。
この実施例は、前記ノードが自ら秘密鍵を保存する場合、機器に故障が発生してメモリが破壊されてしまうと、秘密鍵が紛失される可能性があり、そして、秘密鍵を前記ノードのメモリに記憶すると、第三者によって盗み取られやすいのに対して、寄託されるとこれらの問題がなくなるという利点がある。
図8に示すように、秘密鍵管理モジュールTPKI_pksは、6-2および6-3によってノードBersとの双方向インタラクションを実現することができる。6-2において、前記ノードは、秘密鍵を秘密鍵管理モジュールTPKI_pksに送信する。6-3において、前記秘密鍵管理モジュールTPKI_pksは、秘密鍵が寄託された旨を前記ノードに通知する。
ある実施例では、図9に示すように、ステップ520において、前記ノードから送信された秘密鍵を受信するステップは、
前記ノードが秘密鍵管理モジュールTPKI_pksの公開鍵を用いて暗号化した第1のランダムセッション鍵を受信するステップ523と、
暗号化された第1のランダムセッション鍵を秘密鍵管理モジュールTPKI_pksの秘密鍵で復号して、前記第1のランダムセッション鍵を得るステップ524と、
前記ノードが前記第1のランダムセッション鍵を用いて暗号化した前記ノードの秘密鍵を受信するステップ525と、
復号して得られた第1のランダムセッション鍵を用いて、暗号化された前記ノードの秘密鍵を復号して、前記ノードの秘密鍵を得るステップ526と、を含む。
以下、図9に示す上記のような複数のステップについて具体的に説明する。
ステップ523において、前記ノードが秘密鍵管理モジュールTPKI_pksの公開鍵を用いて暗号化した第1のランダムセッション鍵を受信する。
第1のランダムセッション鍵は、前記ノードが秘密鍵を寄託しようとする場合にランダムに生成した1つのセッション鍵である。
ある実施例では、ブロックチェーンネットワークにおける全てのノードには、秘密鍵管理モジュールTPKI_pksの公開鍵が記憶されている。この場合、ノードは、記憶されている公開鍵から秘密鍵管理モジュールTPKI_pksの公開鍵を取得することができる。この実施例は、実現が容易となり、秘密鍵管理モジュールTPKI_pksの公開鍵を取得する時間を節約できるという利点がある。
ある実施例では、秘密鍵管理モジュールTPKI_pksの公開鍵は、ブロックチェーンに記憶され、ノードは、ブロックチェーンにおける当該秘密鍵管理モジュールTPKI_pksの公開鍵が記録されるデータブロックから、秘密鍵管理モジュールTPKI_pksの公開鍵を取得することができる。つまり、秘密鍵管理モジュールTPKI_pksの公開鍵は、ブロックチェーンに書き込まれて記憶され、かつ秘密鍵管理モジュールTPKI_pksの識別子と対応付けて1つのデータブロックに記憶されることができる。ブロックチェーンから秘密鍵管理モジュールTPKI_pksの公開鍵を取得する場合、当該秘密鍵管理モジュールTPKI_pksの識別子を持つ全てのデータブロックをサーチして、この識別子と対応付けて1つの取引情報に記憶された公開鍵をサーチすることができる。この実施例は、各ノードの記憶空間を節約できるという利点がある。
ステップ524において、暗号化された第1のランダムセッション鍵を秘密鍵管理モジュールTPKI_pksの秘密鍵で復号して、前記第1のランダムセッション鍵を得る。
秘密鍵管理モジュールTPKI_pksのみがその秘密鍵を有しているため、秘密鍵管理モジュールTPKI_pksのみが暗号化された第1のランダムセッション鍵を復号することができる。そのため、第三者が暗号化された第1のランダムセッション鍵を傍受したとしても、第1のランダムセッション鍵をクラックすることができず、第1のランダムセッション鍵の伝送安全性が保証される。
ステップ525において、前記ノードが前記第1のランダムセッション鍵を用いて暗号化した前記ノードの秘密鍵を受信する。
前述したように、第三者が暗号化された第1のランダムセッション鍵を傍受したとしても、第1のランダムセッション鍵をクラックすることができず、前記ノードと秘密鍵管理モジュールTPKI_pksのみが第1のランダムセッション鍵を有する。従って、前記ノードの秘密鍵を第1のランダムセッション鍵で暗号化して秘密鍵管理モジュールTPKI_pksに伝送する場合、暗号化された前記ノードの秘密鍵が途中で第三者によって傍受されてもクラックされることができないので、前記ノードの秘密鍵の伝送安全性が向上する。
ステップ526において、復号して得られた第1のランダムセッション鍵を用いて、暗号化された前記ノードの秘密鍵を復号して前記ノードの秘密鍵を得る。
この実施例は、前記ノードの秘密鍵の伝送過程で2回のネゴシエーションプロセスを運用するという利点がある。1回目のネゴシエーションプロセスによって第1のランダムセッション鍵を伝送し、かつ伝送過程では秘密鍵管理モジュールTPKI_pksの公開鍵で暗号化し、秘密鍵管理モジュールTPKI_pksは受信した後にその秘密鍵で復号する。2回目のネゴシエーションプロセスによって前記ノードの秘密鍵を伝送し、かつ伝送過程では第1のランダムセッション鍵で暗号化し、秘密鍵管理モジュールTPKI_pksは受信した後に第1のランダムセッション鍵で復号する。第三者がそのうちの1回のネゴシエーションプロセスで伝送されるコンテンツを傍受したとしても、前記ノードの秘密鍵をクラックすることが絶対に不能である。第三者が2回のネゴシエーションプロセスで伝送されるコンテンツを傍受したとしても、秘密鍵管理モジュールTPKI_pksのみがその秘密鍵を有するため、前記ノードの秘密鍵をクラックすることができない。これにより、秘密鍵管理モジュールTPKI_pksの秘密鍵の伝送安全性に対して二重保証を提供できる。
ある実施例では、秘密鍵管理モジュールTPKI_pksは、複数の箇所に分散される複数の秘密鍵管理モジュールTPKI_pksであってもよい。いずれかの秘密鍵管理モジュールTPKI_pksは、ノードから送信された秘密鍵を受信すると、他の箇所にある秘密鍵管理モジュールTPKI_pksに送信させることができる。
この実施例は、秘密鍵管理モジュールTPKI_pksが1箇所にのみ設けられる場合、当該秘密鍵管理モジュールTPKI_pksが攻撃によって破壊されると、全てのノードが寄託した秘密鍵が紛失してしまうのを防止できるという利点がある。この実施例は、複数箇所に複数の秘密鍵管理モジュールTPKI_pksを設置し、かつ、いずれかの秘密鍵管理モジュールTPKI_pksがノードから送信された秘密鍵を受信すると、他の箇所にある秘密鍵管理モジュールTPKI_pksに送信することにより、1箇所の秘密鍵管理モジュールTPKI_pksが破壊されたとしても、他の箇所にある秘密鍵管理モジュールTPKI_pksから寄託した秘密鍵を見つけることができ、秘密鍵の寄託の安全性が向上する。
ある実施例では、秘密鍵管理モジュールTPKI_pksが秘密鍵の寄託を受けて記憶する場合、例えばデータ暗号化規格(Data Encryption Standard、DES)、高度暗号化規格(Advanced Encryption Standard、AES)、3DESなどの暗号アルゴリズムのような対称暗号アルゴリズムを用いることができる。前記秘密鍵を暗号化する鍵は、秘密鍵管理モジュールにハードコーディングされてもよい。このように、この暗号化された秘密鍵が第三者によって盗み取られたとしても、前記秘密鍵を暗号化する鍵が秘密鍵管理モジュールTPKI_pksにハードコーディングされるため、第三者は当該暗号化された秘密鍵を復号することができず、寄託された秘密鍵の安全性がさらに向上する。
ある実施例では、ステップ520は、ステップ523の前に、秘密鍵管理モジュールTPKI_pksの正当性を検証するプロセスをさらに含む。例えば、図10に示すように、ステップ520は、さらにステップ521およびステップ522を含む。
ステップ521において、認証モジュールTPKI_caによって、前記ノードからの秘密鍵管理モジュールTPKI_pkのデジタル証明書の取得要求を受信する。
秘密鍵管理モジュールTPKI_pksのデジタル証明書は、秘密鍵管理モジュールTPKI_pksが正当的な寄託資質を有することを証明するための書類である。ある実施例では、このデジタル証明書は、認証モジュールTPKI_caによって発行されたものであってもよい。
ステップ522において、認証モジュールTPKI_caによって、認証モジュール(TPKI_ca)の秘密鍵を用いて行った署名を含む、デジタル証明書の取得要求に応じて、前記秘密鍵管理モジュールTPKI_pksのデジタル証明書を前記ノードに送信することによって、前記ノードが前記デジタル証明書を受信した後に認証モジュール(TPKI_ca)の公開鍵を用いて認証を行うようにすることができる。
この秘密鍵管理モジュールTPKI_pksのデジタル証明書は、平文情報と、認証モジュールTPKI_caの秘密鍵を用いて当該平文情報に対して形成した署名とを含む。平文情報には、例えば名称、登録番号、登録時間、授与される権利、権限授与時間等のような秘密鍵管理モジュールTPKI_pksの基本情報が含まれる。署名の生成方法は、以上と同様であるので説明を省略する。前記ノードは前記デジタル証明書を受信した後に認証モジュール(TPKI_ca)の公開鍵を用いて検証を行う方法も以上と同様であるため、説明を省略する。
この実施例は、前記ノードの秘密鍵を寄託する前に秘密鍵管理モジュールTPKI_pksの正当性を検証することができるので、秘密鍵の寄託の安全性を向上することができるという利点がある。
図11に示すように、ノードBersがその秘密鍵を寄託しようとする場合、まず、秘密鍵管理モジュールTPKI_pksのデジタル証明書を取得する取得要求を、認証モジュールTPKI_caに送信する。そして、認証モジュールTPKI_caは、秘密鍵管理モジュールTPKI_pksのデジタル証明書をノードBersに返送する。そして、ノードBersは、認証モジュールTPKI_caから返送されたデジタル証明書を検証する。そして、デジタル証明書の検証に成功すると、ノードBersは、第1のランダムセッション鍵を生成する。その後、ノードBersは、秘密鍵管理モジュールTPKI_pksの公開鍵を用いて生成した第1のランダムセッション鍵を暗号化する。次に、ノードBersは、暗号化された第1のランダムセッション鍵を秘密鍵管理モジュールTPKI_pksに送信する。秘密鍵管理モジュールTPKI_pksは、その秘密鍵を用いて復号して第1のランダムセッション鍵を得ることができる。次に、秘密鍵管理モジュールTPKI_pksは、セッション鍵の取得に成功した旨のアラート情報をノードBersへ返送する。そして、ノードBersは、第1のランダムセッション鍵を用いて、ノードBersの秘密鍵を含めて種々の機密情報を暗号化することが可能となる。次に、ノードBersは、暗号化された秘密鍵などの機密情報を秘密鍵管理モジュールTPKI_pksに送信する。秘密鍵管理モジュールTPKI_pksは、得た第1のランダムセッション鍵を用いて暗号化された秘密鍵を復号して、ノードBersの秘密鍵を得て、かつ秘密鍵の寄託に成功した旨のアラート情報をノードBersに返送する。このようにして、ノードBersから秘密鍵管理モジュールTPKI_pksへの秘密鍵の寄託の全部のプロセスが完了する。
ノードが秘密鍵を秘密鍵管理モジュールTPKI_pksに寄託した場合、ノードは、秘密鍵を必要となると、秘密鍵管理モジュールTPKI_pksからその秘密鍵を取得することができる。以下、ノードが秘密鍵管理モジュールTPKI_pksからその秘密鍵を取得するプロセスについて説明する。
ある実施例では、前記方法は、ステップ560の後に、ステップ580~ステップ5100をさらに含む。図12に示すように、前記方法は、さらに、
前記秘密鍵管理モジュールTPKI_pksによって、前記ノードからの秘密鍵クエリー要求を受信するステップ580と、
ここで、秘密鍵クエリー要求は、前記ノードから送信された、秘密鍵管理モジュールTPKI_pksから寄託した秘密鍵を取得するための要求であり、例えばHTTPやHTTPSなどの各種のネットワークプロトコルに基づいて作成された要求であってもよい。
前記秘密鍵管理モジュールTPKI_pksによって、前記ノードのデジタル証明書クエリー要求を認証モジュールTPKI_caに送信するステップ590と、
認証モジュール(TPKI_ca)がデジタル証明書クエリー要求に応じて生成されたデジタル証明書の認証に成功した旨の応答を受信すると、前記秘密鍵管理モジュールTPKI_pksによって、秘密鍵クエリー要求に応じて前記ノードにその秘密鍵を送信するステップ5100と、を含む。
秘密鍵管理モジュールTPKI_pksは、秘密鍵クエリー要求のみを受信すれば寄託された秘密鍵を当該要求の送信元に返送すると、ハッカーなどの犯罪者は、偽りの要求を用いて秘密鍵管理モジュールTPKI_pksに寄託された秘密鍵を容易に盗み取ることができ、重大な損失を招いてしまう可能性がある。従って、既にデジタル証明書が発行されたノードではなければ、秘密鍵を返送することができない。デジタル証明書は、公開鍵および秘密鍵の正当性を証明することができ、そして、当該デジタル証明書は、前記ノードが要求したものであるため、前記ノードが当該公開鍵および秘密鍵に対して支配権を有することを証明できる。従って、秘密鍵を返送する前に、認証モジュールTPKI_caに前記ノードのデジタル証明書クエリー要求を送信する必要があり、認証モジュールTPKI_caは当該ノードがデジタル証明書を有することをサーチした場合のみに、秘密鍵を返送することができる。
ある実施例では、前記秘密鍵クエリー要求およびデジタル証明書クエリー要求は、いずれも前記ノードの公開鍵を有する。図17A-17Bに示すように、前記デジタル証明書には、前記ノードの公開鍵が含まれる。認証モジュールTPKI_caは、前記公開鍵に基づいて前記ノードのデジタル証明書をクエリーすることができる。
ある実施例では、前記秘密鍵クエリー要求およびデジタル証明書クエリー要求は、いずれも前記ノードの識別子を有する。図17A-17Bに示すように、前記デジタル証明書は、例えば図17Aに示す企業識別子および図17Bに示すサービス事業者識別子などの前記ノードの識別子を有する。認証モジュールTPKI_caは、前記ノードの識別子に基づいて前記ノードのデジタル証明書をクエリーする。
ある実施例では、前記秘密鍵クエリー要求およびデジタル証明書クエリー要求は、いずれも前記デジタル証明書のシリアル番号を有する。図17A-17Bに示すように、前記デジタル証明書は、そのシリアル番号を有する。認証モジュールTPKI_caは、前記シリアル番号に基づいて前記ノードのデジタル証明書をクエリーする。
ある実施例では、図13に示すように、秘密鍵管理モジュールTPKI_pksが秘密鍵クエリー要求に応じて前記ノードの秘密鍵を前記ノードに送信するプロセスは、以下のステップを含んでもよい。
ステップ5110において、前記ノードが秘密鍵管理モジュールTPKI_pksの公開鍵で暗号化した第2のランダムセッション鍵を受信する。
前記秘密鍵管理モジュールTPKI_pksの公開鍵は以上と同様であるため、説明を省略する。
第2のランダムセッション鍵は、第1のランダムセッション鍵と比べて、前記ノードが同一の生成方式で生成したものであってもよいし、異なる生成方式で生成したものであってもよい。
ステップ5120において、暗号化された第2のランダムセッション鍵を秘密鍵管理モジュールTPKI_pksの秘密鍵で復号して、前記第2のランダムセッション鍵を得る。
ここで、上記の暗号化された第1のランダムセッション鍵を復号するプロセスと同様であるため、説明を省略する。
ステップ5130において、秘密鍵クエリー要求に応じて、前記ノードの秘密鍵をクエリーする。
ある実施例では、ステップ525は、前記ノードが前記第1のランダムセッション鍵を用いて暗号化した前記ノードの秘密鍵および公開鍵を受信するステップを含む。ステップ526は、復号して得た第1のランダムセッション鍵を用いて、暗号化された前記ノードの秘密鍵および公開鍵を復号し、得られた秘密鍵および公開鍵を対応付けて記憶するステップを含む。ステップ5130は、秘密鍵クエリー要求における前記ノードの公開鍵に応じて、記憶された公開鍵と対応する秘密鍵をクエリーするステップを含む。
ある実施例では、ステップ525は、前記ノードが前記第1のランダムセッション鍵を用いて暗号化した前記ノードの秘密鍵と、前記ノードの識別子とを受信するステップを含む。ステップ526は、復号して得た第1のランダムセッション鍵を用いて、暗号化された前記ノードの秘密鍵と前記ノードの識別子とを復号し、得られた秘密鍵と前記ノードの識別子とを対応付けて記憶するステップを含む。ステップ5130は、秘密鍵クエリー要求における前記ノードの識別子に応じて、記憶された前記識別子と対応する秘密鍵をクエリーするステップを含む。
ステップ5140は、前記ノードの秘密鍵を前記第2のランダムセッション鍵で暗号化して前記ノードに送信し、前記ノードが前記第2のランダムセッション鍵を用いて暗号化された前記ノードの秘密鍵を復号して、前記ノードの秘密鍵を得るステップを含む。
ある実施例では、第2のランダムセッション鍵は、対称暗号アルゴリズムに基づいて生成されたものである。前記ノードの秘密鍵を前記第2のランダムセッション鍵で暗号化するプロセス、および暗号化された前記ノードの秘密鍵を前記第2のランダムセッション鍵で復号するプロセスは、上記の前記ノードの秘密鍵を前記第1のランダムセッション鍵で暗号化するプロセス、および暗号化された前記ノードの秘密鍵を前記第1のランダムセッション鍵で復号するプロセスと同様であるので、説明を省略する。秘密鍵を寄託する場合の2回のネゴシエーションと同様に、秘密鍵をクエリーする場合の2回のネゴシエーションも、秘密鍵の伝送過程における安全性を高めるという効果を奏することができる。
ある実施例では、図1Cに示すように、前記ブロックチェーンは、複数のサブブロックチェーンを含む。異なるサブブロックチェーンに対するデータブロックの書き込みおよびクエリーは、異なる公開/秘密鍵ペアが必要となるので、ブロックチェーンにおける公開鍵および秘密鍵の利用安全性をより向上させることが可能となる。第三者が1つのサブブロックチェーンに対する書き込みおよびクエリーのための公開鍵および秘密鍵を知ったとしても、他のサブブロックチェーンに対する書き込みおよびクエリーのための公開鍵および秘密鍵を知ることは難しい。
この実施例では、前記公開/秘密鍵要求には、登録対象サブブロックチェーンの識別子が含まれる。前記ノードに対して前記ノードの公開鍵および秘密鍵を生成するステップは、前記ノードに対して前記ノードの登録対象サブブロックチェーンにおける公開鍵および秘密鍵を生成するステップを含む。具体的には、公開/秘密鍵要求における登録対象サブブロックチェーンの識別子に応じて、ノードに対してこれらサブブロックチェーンにおける公開鍵および秘密鍵を生成する。サブブロックチェーンは複数存在しているが、前記ノードは、そのうちの一部のサブブロックチェーンを使用しない可能性があるため、後に使用する可能性があるサブブロックチェーンにおける公開鍵および秘密鍵のみを要求すればよい。
ノードがどのサブブロックチェーンにおける公開鍵および秘密鍵を要求したかに基づいて、これらのサブブロックチェーンに対して認証が成功すればよい。そこで、この実施例では、前記登録情報は、登録対象サブブロックチェーンを含み、これらのサブブロックチェーンは、公開鍵および秘密鍵の発行を要求するサブブロックチェーンと一致する。ステップ540は、認証ポリシーモジュールTPKI_ausから、登録対象サブブロックチェーンに対応する登録情報認証ポリシーを取得するステップを含む。すなわち、サブブロックチェーン毎に異なる認証ポリシーを有し、前記ノード毎に登録するサブブロックチェーン(登録対象サブブロックチェーン)に対して対応する認証ポリシーで認証することができる。
ステップ550は、登録対象サブブロックチェーンに対応する登録情報認証ポリシーに基づいて、登録対象サブブロックチェーンにおける前記登録情報の認証を行うステップを含む。前記平文情報には、認証に成功したサブブロックチェーンにおける公開鍵が含まれる。
前記ノードが各登録対象サブブロックチェーンにそれぞれ認証されるため、そのうちの一部の登録対象サブブロックチェーンの認証に成功するが、他部の登録対象サブブロックチェーンの認証に失敗することがある。この場合、認証に成功したサブブロックチェーンのみに対して証明書を発行する。すなわち、証明書の平文情報には、認証に成功したサブブロックチェーンにおける公開鍵のみが含まれる。これにより、デジタル証明書の平文情報に含まれる公開鍵のみから、前記ノードがどのサブブロックチェーンにおいて認証に成功して権限を有するかを確定することができる。
例えば、前記ノードに対応する登録対象サブブロックチェーンは、サブブロックチェーン2、3であり、そのうち、サブブロックチェーン2の認証ポリシーは、住所が深セン市にあることであり、サブブロックチェーン3の認証ポリシーは、会社の人数が500人を超えることである場合、当該企業は、人数が2000人以上であるとともに北京に位置する工場であるため、サブブロックチェーン3の認証に成功し、サブブロックチェーン2の認証に失敗する。サブブロックチェーン3の公開鍵のみをデジタル証明書の平文情報に書き込む。
この実施例は、サブブロックチェーンが複数存在する場合に、異なるサブブロックチェーンに対して異なる認証を行うことにより、異なるサブブロックチェーンの認証結果を得ることによって、デジタル証明書が公開鍵および秘密鍵の正当性への証明をサブブロックチェーンに精確することができ、デジタル証明書の利用自由度を向上させることができるという利点がある。
ある実施例では、前記秘密鍵クエリー要求は、クエリーとなる秘密鍵が所属するサブブロックチェーンを含み、前記ノードのデジタル証明書クエリー要求は、クエリーとなる秘密鍵が所属するサブブロックチェーンを含むようにして、前記認証モジュールTPK1_caは、クエリーとなる秘密鍵が所属するサブブロックチェーンが前記デジタル証明書の平文情報に含まれる認証に成功した公開鍵と対応するサブブロックチェーンであるか否かに応じて、デジタル証明書の認証に成功した旨の応答を送信するか否かを確定することができる。
すなわち、上記の実施例では、ステップ5100において、認証モジュールTPKI_caは、デジタル証明書クエリー要求における前記ノードの識別子のみに基づいて、前記ノードに対してデジタル証明書を発行したか否かをクエリーすることができる。発行した場合、秘密鍵管理モジュールTPKI_pksにデジタル証明書の認証に成功した旨の応答を送信することができる。しかし、この実施例では、異なるサブブロックチェーンが存在するため、前記ノードが秘密鍵を取得しようとするサブブロックチェーンにおいて前記ノードが権限を有しているか否かを具体的に検証する必要がある。この場合、平文情報に含まれる公開鍵をそのデジタル証明書の平文情報からサーチする必要があり、これらの公開鍵に対応するサブブロックチェーンは、前記ノードが権限を有するサブブロックチェーンであるので、それらにデジタル証明書の認証に成功した旨の応答を送信することができ、応答には認証に成功したサブブロックチェーンが含まれる。秘密鍵管理モジュールTPKI_pksは、認証に成功したサブブロックチェーンのみに基づいて、クエリーを要求している秘密鍵を前記ノードに返送する。例えば、前記ノードは、サブブロックチェーン2および3における秘密鍵を要求する可能性があるが、認証モジュールTPKI_caは、そのデジタル証明書をクエリーして、デジタル証明書にサブブロックチェーン3における公開鍵のみが含まれることを発見したため、サブブロックチェーン3における秘密鍵のみを前記ノードに返送する。
この実施例は、サブブロックチェーンが複数存在する場合、寄託された秘密鍵のクエリーの自由度を高めることができるという利点がある。前記ノードは、認証に成功しかつデジタル証明書において対応する公開鍵を有する秘密鍵のみをクエリーすることができる。
ある実施例では、認証モジュールTPKI_caは、デジタル証明書の認証に成功した旨の応答を秘密鍵管理モジュールTPKI_pksに送信する場合、上記の認証に加えて、デジタル証明書が期限を過ぎているかを検証しする必要がある。期限を過ぎていると、デジタル証明書の再登録が必要となる。図17A-17Bに示すように、前記平文情報には、有効時間がさらに含まれる。前記秘密鍵管理モジュールTPKI_pksによって前記ノードのデジタル証明書クエリー要求を認証モジュールTPKI_caに送信した後、認証モジュールTPKI_caは、前記ノードに対応するデジタル証明書を見つけて、デジタル証明書における有効時間と現在の時間との比較に基づいて当該デジタル証明書の有効時間を検証する。有効時間の検証に成功した場合のみに、デジタル証明書の認証に成功した旨の応答を前記秘密鍵管理モジュールTPKI_pksに送信する。
具体的には、有効時間は、このデジタル証明書の有効期間のカットオフタイムであってもよい。この有効時間が現在のデータよりも早い場合、認証に失敗する。この有効時間が現在の時間よりも遅い場合、認証に成功する。この実施例は、デジタル証明書の適時性を検証することにより、デジタル証明書の信頼性をさらに高めることができるという利点がある。
デジタル証明書は、期限を過ぎていなくても、会社の違法行為などにより取り消される可能性がある。ある実施例では、認証モジュールTPKI_caは、デジタル証明書の認証に成功した旨の応答を秘密鍵管理モジュールTPKI_pksに送信する前、上記の検証に加えて、デジタル証明書の状態、すなわち取り消されたか否かを検証する必要がある。取り消されると、秘密鍵を発行しない。図17A-17Bに示すように、前記平文情報には、証明書状態情報がさらに含まれる。前記秘密鍵管理モジュールTPKI_pksによって前記ノードのデジタル証明書クエリー要求を認証モジュールTPKI_caに送信した後、認証モジュールTPKI_caは、前記証明書状態情報に基づいて当該デジタル証明書の状態を検証する。状態の検証に成功した場合のみに、デジタル証明書の認証に成功した旨の応答を前記秘密鍵管理モジュールTPKI_pksに送信する。
具体的には、証明書状態情報は当該デジタル証明書が正常であることを示している場合、状態の検証に成功する。一方、証明書状態情報はデジタル証明書が取り消されたことを示している場合、状態の検証に失敗する。この実施例は、デジタル証明書の状態を検証することにより、デジタル証明書の信頼性をさらに高めることができるという利点がある。
ある実施例では、前記ノードは、会社ノードとサービス事業者ノードとを含む。サービス事業者は、会社が自らブロックチェーンに対する取引情報の書き込みまたはクエリーの条件を有しないだけではなく(すなわち、図1A-1Cにおける記帳ノード101ではなく)、ブロックチェーンに対する取引情報の書き込みまたはクエリーを記帳ノード101に委任する条件も有しない(すなわち、図1Aにおける取引情報生成者ノード102でもなく、図1B-1Cにおけるトラフィックノード105でもない)場合、これらの会社の委任を受けて、これらの会社に対してブロックチェーンに対する取引情報の書き込みまたはクエリーを記帳ノード101に委任することを実行するエンティティである。もちろん、自己がブロックチェーンに対する取引情報の書き込みまたはクエリーの条件を有し、またはブロックチェーンに対する取引情報の書き込みまたはクエリーを記帳ノード101に委任する条件を有しても、ブロックチェーンに対する書き込みまたはクエリーをあるサービス事業者に委任することもある。
サービス事業者は、一部の会社に代わってブロックチェーンに対する取引情報の書き込みまたはクエリーの委任を行い、そのクエリーする秘密鍵がその自身の秘密鍵だけではなく、その受託会社のノードの秘密鍵となる可能性もある。従って、デジタル証明書の発行時にサービス事業者ノードが保有する権限情報を記録して保存する。サービス事業者ノードが会社ノードに代わって秘密鍵をクエリーする場合、前記秘密鍵クエリー要求には、前記サービス事業者ノードの識別子と、前記サービス事業者ノードのクエリーしようとする鍵が所属するノードの識別子とが含まれ、前記認証モジュールTPK1_caは、記憶された前記権限情報に基づいて、前記サービス事業者ノードのクエリーしようとする鍵が所属するノードの識別子が前記サービス事業者ノードがサービスを提供している会社またはサービス事業者ノードの識別子であるか否かを確定する。「YES」の場合、認証に成功する。逆に、認証に失敗する。
具体的には、前記ノードがサービス事業者ノードである場合、前記ノードの公開鍵および登録情報を受信するステップは、前記ノードの公開鍵、登録情報、およびサービス事業者ノードがサービスを提供している会社の権限情報を受信するステップを含む。例えば、サービス事業者ノードAは、会社ノードA1、A2、A3に代わって、ブロックチェーンに対する取引情報の書き込みまたはクエリーの委任を行う場合、権限情報はA1、A2、A3を含む。
この実施例では、デジタル証明書発行センターは認証ポリシーモジュール(TPKI_aus)をさらに含む場合、前記方法は、認証モジュールTPKI_caによって前記登録情報を認証した後に、認証に成功すると、認証モジュールTPKI_caによって前記権限情報を認証ポリシーモジュールTPKI_ausに送信して記憶するステップをさらに含む。具体的には、前記ノードの識別子を、前記権限情報と対応付けて記憶することができる。
この実施例では、前記秘密鍵クエリー要求は、前記サービス事業者ノードの識別子と、前記サービス事業者ノードのクエリーしようとする鍵が所属するノードの識別子とを含み、前記認証モジュールTPKI_caは、認証ポリシーモジュールTPKI_ausに記憶された前記権限情報に基づいて、前記サービス事業者ノードのクエリーしようとする鍵が所属するノードの識別子が、前記サービス事業者ノードがサービスを提供している会社またはサービス事業者ノードの識別子であるとした場合、認証に成功する。例えば、認証ポリシーモジュールTPKI_ausに記憶されたサービス事業者ノードAの権限情報は、会社ノードA1、A2、A3を含み、サービス事業者ノードのクエリーしようとする鍵がA1、A2、A3、Aのうちのいずれか1つまたは複数のノードの秘密鍵であると、認証に成功し、秘密鍵を返送することができる。
この実施例は、サービス事業者ノードが複数の会社ノードに代わってブロックチェーンに対する書き込みまたはクエリーの委任を行う場面に対して秘密鍵管理技術の実現を支援することができるという利点がある。
サブブロックチェーンは、通常、ある種類の取引情報のデータブロックに特定される。例えば、1つのサブブロックチェーンがサプライチェーン金融の取引情報のデータブロックを記録し、別の1つのサブブロックチェーンが電子伝票の取引情報のデータブロックを記録する。1種類のノードの取引種別も比較的に一定となるため、記録が必要なサブブロックチェーンも比較的に一定となる。そこで、ある実施例では、ノードの取引種別に応じて、サブブロックチェーンの権限を自動的に設定することができる。例えば、自動車製造企業に対しては、通常、サプライチェーン金融トラフィックを必要とするが、電子伝票も実行されるため、サプライチェーン金融のサブブロックチェーンおよび電子伝票のサブブロックチェーンを必要とする。
この実施例では、前記ブロックチェーンは、複数のサブブロックチェーンを含み、前記登録情報は、ノード種別を含む。前記ノードに対して前記ノードの公開鍵および秘密鍵を生成するステップは、前記ノードに対して異なるサブブロックチェーンにおける前記ノードの公開鍵および秘密鍵を生成するステップを含む。N本のサブブロックチェーンが存在するとすると、前記ノードに対して、N本のサブブロックチェーンと対応するN個の公開/秘密鍵ペアを生成することができる。
デジタル証明書発行センターは認証ポリシーモジュール(TPKI_aus)をさらに含む場合、前記方法は、ステップ550において認証モジュールTPKI_caによって前記登録情報を認証した後に、認証に成功すると、認証モジュールTPKI_caによって、前記ノード種別に基づいて前記ノード種別に特定されるサブブロックチェーン権限情報を生成して、サブブロックチェーン権限情報を認証ポリシーモジュールTPKI_ausに記憶するステップであって、当該サブブロックチェーン権限情報は、異なるトラフィック種別に対してクエリーが許容されるサブブロックチェーンを含むステップをさらに含む。
前記ノード種別に特定されるサブブロックチェーン権限情報は、ノード種別に従って、予め設定されたノード種別とサブブロックチェーン権限情報との対応関係テーブルからサーチしたものであっても良い。例えば、この対応関係テーブルにおいて、自動車製造企業に対応するサブブロックチェーン権限情報は、サプライチェーン金融のトラフィック種別に対してクエリーが許容されるサブブロックチェーンがサブブロックチェーン2であり、電子伝票のトラフィック種別に対してクエリーが許容されるサブブロックチェーンがサブブロックチェーン3であるものである。その後、このサブブロックチェーン権限情報を認証ポリシーモジュールTPKI_ausに記憶する。
この実施例では、前記秘密鍵クエリー要求は、前記ノード種別とトラフィック種別とを有し、前記デジタル証明書クエリー要求も、前記ノード種別とトラフィック種別とを有する。前記認証モジュールTPKI_caは、前記ノード種別に特定されたサブブロックチェーン権限情報を認証ポリシーモジュールTPKI_ausからクエリーし、当該サブブロックチェーン権限情報および当該トラフィック種別に基づいて、クエリーが許容されるサブブロックチェーンを確定し、クエリーが許容されるサブブロックチェーンをデジタル証明書の認証に成功した旨の応答に入れて、前記秘密鍵管理モジュールTPKI_pksに送信する。前記ノードの秘密鍵を前記ノードに送信するステップは、クエリーが許容されるサブブロックチェーンにおける前記ノードの秘密鍵を前記ノードに送信するステップを含む。
例えば、前記ノード種別は自動車製造企業ノードであり、トラフィック種別は電子伝票である場合、認証モジュールTPKI_caは、まずデジタル証明書クエリー要求におけるノード種別である自動車製造企業ノードに基づいて、認証ポリシーモジュールTPKI_ausから対応するサブブロックチェーン権限情報をクエリーする。すなわち、サプライチェーン金融トラフィック種別に対してクエリーが許容されるサブブロックチェーンは、サブブロックチェーン2であり、電子伝票トラフィック種別に対してクエリーが許容されるサブブロックチェーンはサブブロックチェーン3である。その後、デジタル証明書クエリー要求におけるトラフィック種別である電子伝票に基づいて、クエリーが許容されるサブブロックチェーンがサブブロックチェーン3であると確定する。そして、サブブロックチェーン3をデジタル証明書の認証に成功した旨の応答に入れて、前記秘密鍵管理モジュールTPKI_pksに送信する。この場合、秘密鍵管理モジュールTPKI_pksは、サブブロックチェーン3における前記ノードの秘密鍵のみをノードに返送し、他のサブブロックチェーンにおける秘密鍵を前記ノードに返送しない。
このようにすれば、サブブロックチェーンが複数存在する場合、ユーザに対して前記ノード種別やトラフィック種別に適合するサブブロックチェーンにおける秘密鍵を正確に見つけることができ、サブブロックチェーンが複数ある場合に寄託された秘密鍵の精細管理を実現することができるという利点がある。
図14は、前記ノードに対して寄託された秘密鍵をクエリーするための詳細なインタラクティブのフローを示す図である。ノードBersは、秘密鍵管理モジュールTPKI_pksに寄託された秘密鍵をクエリーするために、先ずは、その秘密鍵を寄託している秘密鍵管理モジュールTPKI_pksに秘密鍵クエリー要求を送信する。秘密鍵管理モジュールTPKI_pksは、1つのデジタル証明書クエリー要求を認証モジュールTPKI_caに送信する。その後、認証モジュールTPKI_caは、この要求に応じて、当該ノードがデジタル証明書を有しているか、および当該デジタル証明書が期限を過ぎたり取り消されたりするかを検証し、これらの検証がいずれも成功すれば、秘密鍵管理モジュールTPKI_pksにデジタル証明書の認証に成功した旨の応答を送信する。その後、秘密鍵管理モジュールTPKI_pksは、セッション鍵の送信を指示する要求をノードBersに送信する。ノードBersは、第2のランダムセッション鍵を生成して、秘密鍵管理モジュールTPKI_pksの公開鍵を用いてこの第2のランダムセッション鍵を暗号化する。その後、ノードBersは、暗号化された第2のランダムセッション鍵を秘密鍵管理モジュールTPKI_pksに送信する。秘密鍵管理モジュールTPKI_pksは、暗号化された第2のランダムセッション鍵を受信すると、まずは暗号化された第2のランダムセッション鍵をそれが所有する秘密鍵管理モジュールTPKI_pksの秘密鍵で復号して、第2のランダムセッション鍵を得る。その後、第2のランダムセッション鍵を用いて前記ノードが寄託した秘密鍵を暗号化してノードBersに送信する。ノードBersは、暗号化された情報を受信すると、当該ノードが第2のランダムセッション鍵を保有しているため、この第2のランダムセッション鍵を用いて暗号化した秘密鍵を、当該第2のランダムセッション鍵で復号して、秘密鍵管理モジュール(TPKI_pks)に寄託した秘密鍵を得ることができる。最終に、ノードBersは、寄託した秘密鍵の受信に成功した旨の確認メッセージを秘密鍵管理モジュールTPKI_pksに返送する。
ある実施例では、前記登録情報は、前記ノードの識別子を含む。前記デジタル証明書発行センターは、図15に示すように、認証データベースTPKI_cadbを含む。認証データベースTPKI_cadbは、発行されたデジタル証明書を記憶するためのデータベースである。
前記方法は、認証モジュールTPKI_caによって前記ノードのデジタル証明書を生成した後に、認証モジュールTPKI_caによって、前記ノードの識別子とノードのデジタル証明書とを認証データベースTPKI_cadbに対応付けて記憶するステップ570をさらに含む。
この実施例では、前記秘密鍵クエリー要求は、前記ノードの識別子を含み、前記デジタル証明書クエリー要求は、前記ノードの識別子を含むので、前記認証モジュールTPKI_caは、認証データベースTPKI_cadbに前記識別子と対応付けて記憶されているデジタル証明書があるか否かに基づいて、認証に成功したか否かを確定することができる。すなわち、認証モジュールTPKI_caは、デジタル証明書クエリー要求を受信して前記ノードが有するデジタル証明書をクエリーすることにより、デジタル証明書の認証に成功した旨の応答を前記秘密鍵管理モジュールTPKI_pksに送信するか否かを確定する場合、デジタル証明書クエリー要求における前記ノードの識別子に基づいて、認証データベースTPKI_cadbにおいて対応するデジタル証明書をサーチする。
図16は、本開示の一実施例に係るデジタル証明書発行センターの詳細を示すブロック図である。この実施例では、デジタル証明書発行センターは、図16に示すように、以上で説明した公開/秘密鍵生成モジュールTPKI_sdk、認証モジュールTPKI_ca、認証ポリシーモジュールTPKI_aus、秘密鍵管理モジュールTPKI_pks、認証データベースTPKI_cadbの以外に登録モジュールTPKI_raを含む。登録モジュールTPKI_raは、前記ノードBersから受信した公開鍵および登録情報を認証モジュールTPKI_caに伝送するとともに、生成したデジタル証明書をノードBersに返送するモジュールであって、ノードBersと認証モジュールTPKI_caとの中継モジュールである。すなわち、ステップ530は、登録モジュールTPKI_raによって転送された前記ノードの公開鍵および登録情報を受信するステップを含む。デジタル証明書を前記ノードに送信するステップ560は、デジタル証明書を登録モジュールTPKI_raを介して前記ノードに送信するステップを含む。
本開示の一実施例によれば、デジタル証明書発行センターが提供される。当該デジタル証明書発行センターは、図6に示すように、ブロックチェーンネットワークにおけるノードからの公開/秘密鍵要求に応じて、前記ノードに対して前記ノードの公開鍵および秘密鍵を生成して、前記ノードに送信する公開/秘密鍵生成モジュールTPKI_sdkと、前記ノードの公開鍵および登録情報を受信して、前記登録情報を認証し、かつ、認証に成功すると、平文情報と、認証モジュールTPKI_caの秘密鍵を用いて前記平文情報に対して形成した署名とを含む、前記ノードのデジタル証明書を生成して前記ノードに送信することによって、前記ノードが認証モジュールTPKI_caの公開鍵を用いて前記署名を検証するようにする認証モジュールであって、前記平文情報は、前記ノードの公開鍵を含む認証モジュールTPKI_caと、を含む。
ある実施例では、図6に示すように、前記デジタル証明書発行センターは、ブロックチェーンネットワークにおける各ノードに対応する登録情報認証ポリシーを記憶するための認証ポリシーモジュールTPKI_ausをさらに含む。
ある実施例では、図8に示すように、前記デジタル証明書発行センターは、前記ノードから送信された秘密鍵を受信して保存するための秘密鍵管理モジュールTPKI_pksをさらに含む。
ある実施例では、前記認証モジュールTPKI_caは、前記ノードが秘密鍵管理モジュールTPKI_pksの公開鍵を用いて暗号化した第1のランダムセッション鍵を受信し、暗号化された第1のランダムセッション鍵を秘密鍵管理モジュールTPKI_pksの秘密鍵で復号して、前記第1のランダムセッション鍵を得られ、前記ノードが前記第1のランダムセッション鍵を用いて暗号化した前記ノードの秘密鍵を受信し、復号して得た第1のランダムセッション鍵を用いて、暗号化された前記ノードの秘密鍵を復号して、前記ノードの秘密鍵を得るために用いられる。
ある実施例では、前記認証モジュールTPKI_caは、さらに、前記ノードから送信された前記秘密鍵管理モジュールTPKI_pksのデジタル証明書取得要求を受信し、前記デジタル証明書取得要求に応じて、前記秘密鍵管理モジュールTPKI_pksのデジタル証明書を前記ノードに送信するために用いられる。ここで、前記デジタル証明書は、認証モジュールTPKI_caの秘密鍵を用いて形成した署名を含み、前記ノードは、前記秘密鍵管理モジュールTPKI_pksのデジタル証明書を受信した後に、認証モジュールTPKI_caの公開鍵を用いて認証を行う。
ある実施例では、前記秘密鍵管理モジュールTPKI_pksは、さらに、前記ノードの秘密鍵クエリー要求を受信し、前記ノードのデジタル証明書クエリー要求を認証モジュールTPKI_caに送信し、前記認証モジュールTPKI_caが前記デジタル証明書クエリー要求に応じて生成したデジタル証明書の認証に成功した旨の応答を受信すると、前記秘密鍵管理モジュールTPKI_pksによって、前記秘密鍵クエリー要求に応じて前記ノードの秘密鍵を前記ノードに送信するために用いられる。
ある実施例では、前記秘密鍵管理モジュールTPKI_pksは、さらに、前記ノードが秘密鍵管理モジュールTPKI_pksの公開鍵を用いて暗号化した第2のランダムセッション鍵を受信し、暗号化された第2のランダムセッション鍵を秘密鍵管理モジュールTPKI_pksの秘密鍵で復号して、前記第2のランダムセッション鍵を得られ、
前記秘密鍵クエリー要求に応じて前記ノードの秘密鍵をクエリーし、前記ノードが前記第2のランダムセッション鍵を用いて暗号化された前記ノードの秘密鍵を復号して前記ノードの秘密鍵を得られるように、前記ノードの秘密鍵を前記第2のランダムセッション鍵を用いて暗号化して前記ノードに送信するために用いられる。
ある実施例では、前記登録情報は、前記ノードの識別子を含む。図16に示すように、前記デジタル証明書発行センターは、前記ノードの識別子と前記ノードのデジタル証明書とを対応付けて記憶するための認証データベースTPKI_cadbを含む。ここで、前記秘密鍵クエリー要求は、前記ノードの識別子を含み、前記デジタル証明書クエリー要求は、前記ノードの識別子を含むので、前記認証モジュールTPKI_caは、認証データベースTPKI_cadbに前記識別子と対応付けて記憶されているデジタル証明書があるか否かに基づいて、認証に成功したか否かを確定することができる。
ある実施例では、前記ノードは、会社ノードとサービス事業者ノードとを含む。
前記ノードがサービス事業者ノードである場合、前記ノードの公開鍵および登録情報を受信するステップは、前記ノードの公開鍵、登録情報、およびサービス事業者ノードがサービスを提供している会社の権限情報を受信するステップを含む。
前記デジタル証明書発行センターが認証ポリシーモジュールTPKI_ausをさらに含む場合、前記認証モジュールTPKI_caは、さらに、認証に成功すると、前記権限情報を認証ポリシーモジュールTPKI_ausに送信するために用いられる。
前記秘密鍵クエリー要求は、前記サービス事業者ノードの識別子と、前記サービス事業者ノードのクエリーしようとする鍵が所属するノードの識別子とを含む。前記認証モジュールTPKI_caは、さらに、認証ポリシーモジュールTPKI_ausに記憶される権限情報に基づいて、前記サービス事業者ノードのクエリーしようとする鍵が所属するノードの識別子が、前記サービス事業者ノードがサービスを提供している会社または前記サービス事業者ノードの識別子であると確定した場合、認証に成功するとするために用いられる。
ある実施例では、前記ノードに対応する登録情報認証ポリシーは、前記ノード種別に特定される登録情報認証ポリシーを含む。前記登録情報には、前記ノード種別が含まれる。前記認証モジュールTPKI_caは、認証ポリシーモジュールTPKI_ausから前記ノード種別に特定される登録情報認証ポリシーを取得するために用いられる。
ある実施例では、前記ブロックチェーンは、複数のサブブロックチェーンを含み、前記ノードに対して前記ノードの公開鍵および秘密鍵を生成するステップは、前記ノードに対して登録対象サブブロックチェーンにおける前記ノードの公開鍵および秘密鍵を生成するステップを含む。前記登録情報は、登録対象サブブロックチェーンを含む。前記認証モジュールTPKI_caは、さらに、登録対象サブブロックチェーンと対応する登録情報認証ポリシーを認証ポリシーモジュールTPKI_ausから取得し、前記登録対象サブブロックチェーンと対応する登録情報認証ポリシーに基づいて、登録対象サブブロックチェーンにおける前記登録情報の認証を行うために用いられる。前記平文情報は、認証に成功したサブブロックチェーンの公開鍵を含む。
ある実施例では、前記秘密鍵クエリー要求は、クエリーする秘密鍵が所属するサブブロックチェーンを含み、前記ノードのデジタル証明書クエリー要求は、クエリーする秘密鍵が所属するサブブロックチェーンを含むようにして、前記認証モジュールTPK1_caは、クエリーする秘密鍵が所属するサブブロックチェーンが前記デジタル証明書の平文情報に含まれる認証に成功した公開鍵と対応するサブブロックチェーンであるか否かに応じて、デジタル証明書の認証に成功した旨の応答を送信するか否かを確定することができる。
ある実施例では、前記ブロックチェーンは、複数のサブブロックチェーンを含み、前記登録情報は、ノード種別を含む。前記公開/秘密鍵生成モジュールTPKI_sdkは、前記ノードに対して異なるサブブロックチェーンにおける前記ノードの公開鍵および秘密鍵を生成するために用いられる。デジタル証明書発行センターが認証ポリシーモジュールTPKI_ausをさらに含む場合、認証モジュールTPK1_caは、前記登録情報を認証した後、認証に成功すると、前記ノード種別に基づいて前記ノード種別に特定されるサブブロックチェーン権限情報を生成して、当該サブブロックチェーン権限情報を認証ポリシーモジュールTPKI_ausに記憶するために用いられる。ここで、当該サブブロックチェーン権限情報は、異なるトラフィック種別に対してクエリーが許容されるサブブロックチェーンを含む。前記秘密鍵クエリー要求は、前記ノード種別およびトラフィック種別を含む。前記デジタル証明書クエリー要求は、前記ノード種別およびトラフィック種別を含む。前記認証モジュールTPK1_caは、前記ノード種別に特定されるサブブロックチェーン権限情報を認証ポリシーモジュールTPKI_ausからクエリーし、当該サブブロックチェーン権限情報および当該トラフィック種別に基づいて、クエリーが許容されるサブブロックチェーンを確定し、クエリーが許容されるサブブロックチェーンをデジタル証明書の認証に成功した旨の応答に入れて、前記秘密鍵管理モジュールTPKI_pksに送信する。前記ノードの秘密鍵を前記ノードに送信するステップは、クエリーが許容されるサブブロックチェーンにおける前記ノードの秘密鍵を前記ノードに送信するステップを含む。
ある実施例では、秘密鍵管理モジュールTPKI_pksに記憶された秘密鍵は、暗号化方式によって記憶され、暗号化に用いられる暗号は、秘密鍵管理モジュールTPKI_pksにハードコーディングされる。
本開示の実施例に係るブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法は、図18に示すデジタル証明書発行センター103により実現することができる。以下、本開示の実施例に係るデジタル証明書発行センター103について図18を参照しながら説明する。図18に示すデジタル証明書発行センター103は、あくまでも一例に過ぎなく、本開示の実施例の機能および使用範囲に何ら制限を与えない。
図18に示すように、デジタル証明書発行センター103は、汎用の計算装置として表現される。デジタル証明書発行センター103は、上記の少なくとも1つの処理部710と、上記の少なくとも1つの記憶部720と、異なるシステム構成要素(記憶部720と処理部710を含む)を接続するためのバス730とを構成要素として含むが、これらに制限されるものではない。

前記記憶部は、プログラムコードを記憶し、前記プログラムコードは、前記処理部710が実行することによって、本明細書における上記の例示的な方法についての説明部分に記載された、本開示の様々な実施例に係るステップを前記処理部710に実行させるためのものである。例えば、前記処理部710は、図5に示す各ステップを実行することができる。
記憶部720は、例えばRAM(Random Access Memory)7201および/またはキャッシュメモリ7202などの揮発性記憶部のような可読媒体を含んでもよいし、ROM(Read Only Memory)7203をさらに含んでもよい。
記憶部720は、プログラムモジュール7205を1組(少なくとも1つ)有するプログラム/ユーティリティツール7204をさらに含んでいてもよい。このようなプログラムモジュール7205は、オペレーティングシステム、1つまたは複数のアプリケーションプログラム、他のプログラムモジュールおよびプログラムデータを含むが、これらに限定されるものではない。これらの例示のうちのいずれか1つまたは何らかの組み合わせはネットワーク環境の実現を含み得る。
バス730は、複数種類のバス構造のうちの1種または複数種類を示すことができ、メモリバスまたはメモリコントローラ、周辺バス、グラフィックス高速化ポート、処理部または複数のバス構造のうちのいずれかを使用するローカルバスを含む。
デジタル証明書発行センター103は、1つまたは複数の外部装置900(例えば、キーボード、ポインティングデバイス、ブルートゥースデバイスなど)と通信してもよいし、ユーザがその記帳ノード21と対話可能にする1つまたは複数のデバイス、および/または、当該デジタル証明書発行センター103が1つまたは複数の他の計算装置と通信可能にする任意のデバイス(例えば、ルータ、モデムなど)と通信してもよい。このような通信は、入出力(I/O)インターフェース750を介して行うことができる。また、デジタル証明書発行センター103は、ネットワークアダプタ760を介して、1つまたは複数のネットワーク(例えば、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)および/または例えばインターネットのような公衆ネットワーク)と通信してもよい。図示されるように、ネットワークアダプタ760は、バス730を介してデジタル証明書発行センター103の他のモジュールと通信する。なお、図示されていないが、他のハードウェアモジュールおよび/またはソフトウェアモジュールを、デジタル証明書発行センター103と組み合わせて使用することができる。たとえば、マイクロコード、デバイスドライバ、冗長処理部、外部ディスクドライブアレイ、RAIDシステム、テープドライブおよびデータバックアップストレージシステムなどがあるが、これらに限定されるものではない。
当業者であれば、以上の実施例の記載から、ここで述べた実施例がソフトウェアによって実現されてもよいし、必要なハードウェアをソフトウェアと結合することによって実現されてもよいことを容易に理解できろう。そこで、本開示の実施例に係る技術方案は、ソフトウェアプロダクトとして表現されることができ、当該ソフトウェアプロダクトは、1つの不揮発性記憶媒体(CD-ROM、USBフラッシュメモリ、モバイルハードディスク等)やネットワークに記憶され、1台の計算装置(パーソナルコンピュータ、サーバ、端末装置、またはネットワーク装置等)に本開示の実施例に係る方法を実行させるための若干の指令を含む。
本開示の実施例では、前記コンピュータのプロセッサによって実行される場合に、上記の方法の実施例に記載された方法をコンピュータに実行させるコンピュータ読取可能な指令を記憶するコンピュータプログラム媒体をさらに提供する。
本開示の一実施例によれば、上記の方法の実施例における方法を実現するためのプログラムプロダクトであって、プログラムコードを含むとともにモバイルコンパクトディスクリードオンリーメモリ(CD-ROM)を採用することができ、かつ、例えばパソコンなどの端末装置に動作可能なプログラムプロダクトを提供する。しかし、本開示のプログラムプロダクトは、これに限定されず、本明細書では、可読記憶媒体は、命令実行システム、装置またはデバイスによって使用され、またはそれらと組み合わせて使用されるプログラムを含んだり記憶したりする任意の有形な媒体とすることができる。
前記プログラムプロダクトは、1つまたは複数の可読媒体の任意の組合を採用することができる。可読媒体は、可読信号媒体または可読記憶媒体であってもよい。可読記憶媒体は、例えば電気、磁気、光学、電磁、赤外線、または半導体のシステム、装置またはデバイス、あるいはそれらの任意の組み合わせであってもよいが、これらに限定されない。可読記憶媒体は、更なる具体例として(非網羅的なリスト)、1つまたは複数の導線を有する電気接続、携帯型ディスク、ハードディスク、RAM(Random Access Memory)、ROM(Read Only Memory)、EPROMまたはフラッシュメモリ、光ファイバ、CD-ROM、光学メモリデバイス、磁気メモリデバイス、あるいはこれらの任意の好適な組み合わせを含む。
コンピュータ読み取り可能な信号媒体は、ベースバンドに伝搬され、または搬送波の一部として伝搬され、可読性のプログラムコードが搭載されるデータ信号を含むことができる。このように伝搬されるデータ信号は、電磁気信号、光信号、あるいはこれらの任意の好適な組み合わせなどの多様な形態をとることができるが、これらに限定されるものではない。可読信号媒体は、命令実行システム、装置、またはデバイスにより使用され、またはそれらと組み合わせて使用されるプログラムを送信、伝播または伝送することができる可読記録媒体以外の任意の可読媒体であってもよい。
可読媒体に含まれるプログラムコードは、任意の好適な媒体で伝送することができ、例えば無線、有線、光ケーブル、RF等、またはそれらの任意の適宜な組み合わせなどがあるが、これらに限定されるものではない。
本開示の動作を実行するプログラムコードは、例えばJava、C++などのようなオブジェクト指向プログラミング言語、C言語などの通常の手続き型プログラミング言語または類似するプログラミング言語を含む1種または複数種類のプログラミング言語の任意の組み合わせで記述されてもよい。プログラムコードは、全部がユーザの計算装置に実行されたり、一部がユーザ装置に実行されたり、独立した1つのソフトウェアパケットとして実行されたり、一部がユーザの計算装置に実行されるとともに他部がリモート計算装置に実行されたり、全部がリモート計算装置やサーバに実行されたりすることができる。リモート計算装置に関わる場合、リモート計算装置は、LANまたはWANを含む任意の種類のネットワークを介してユーザ計算装置に接続されたり、外部計算装置に接続されたりする(例えば、インターネットのサービスプロバイダーを用いてインターネットを介して接続する)ことができる。
なお、上記の詳細な説明では、動作を実行するための装置のいくつかのモジュールまたはユニットが記載されていたが、このような分割は強制的ではない。実際に、本開示の実施例によれば、以上に説明した2つまたはそれ以上のモジュールまたはユニットの特徴や機能は、1つのモジュールまたはユニットで具現化されてもよい。逆に、以上に説明した1つのモジュールまたはユニットの特徴や機能は、複数のモジュールまたはユニットにより具現化されるようにさらに分けられてもよい。
また、図面には、本開示に係る方法の各ステップを特定の順序で記載したが、これらのステップを当該特定の順序で実行しなければならなく、または、所望の結果を実現できるように全てのステップを実行しなければならないように要求または示唆するものではない。付加または候補として、幾らかのステップを省略したり、複数のステップを1つのステップに合わせて実行したり、および/または1つのステップを複数のステップに分けて実行したりするなどしてもよい。
当業者であれば、以上の実施例の記載から、ここで述べた実施例がソフトウェアによって実現されてもよいし、必要なハードウェアをソフトウェアと結合することによって実現されてもよいことを容易に理解できろう。そこで、本開示の実施例に係る技術方案は、ソフトウェアプロダクトとして表現されることができ、当該ソフトウェアプロダクトは、1つの不揮発性記憶媒体(CD-ROM、USBフラッシュメモリ、モバイルハードディスク等)やネットワークに記憶され、1台の計算装置(パーソナルコンピュータ、サーバ、携帯端末、またはネットワーク装置等)に本開示の実施例に係る方法を実行させるための若干の指令を含む。
当業者であれば、明細書およびここに開示した発明の実践を考慮して、本開示の他の実施例を容易に想到することができる。本開示は、本開示の一般的な原理に則し、かつ本開示の開示されていない本技術分野における周知常識または慣用の技術手段を含む任意の変形、用途または適応的変化を含むことを目的とする。なお、明細書および実施例はあくまでも例示に過ぎず、本開示の真正な範囲および精神は特許請求の範囲によって示される。

Claims (16)

  1. ブロックチェーンネットワークにおけるノードに対してデジタル証明書を発行する方法であって、前記方法がデジタル証明書発行センターにより実行され、前記デジタル証明書発行センターは公開/秘密鍵生成モジュールと認証モジュールとを含み、
    ブロックチェーンネットワークにおけるノードからの公開/秘密鍵要求に応じて、前記公開/秘密鍵生成モジュールによって、前記ノードに対して前記ノードの公開鍵および秘密鍵を生成して前記ノードに送信するステップと、
    前記認証モジュールによって、前記ノードの公開鍵および登録情報を受信するステップと、
    前記認証モジュールによって前記登録情報を認証するステップと、
    認証に成功すると、前記認証モジュールによって、平文情報と、前記認証モジュールの秘密鍵を用いて前記平文情報に対して形成した署名とを含む、前記ノードのデジタル証明書を生成して前記ノードに送信することによって、前記ノードが前記認証モジュールの公開鍵を用いて前記署名を検証するようにするステップであって、前記平文情報は前記ノードの公開鍵を含む、ステップと、を含む、
    ことを特徴とする方法。
  2. 前記デジタル証明書発行センターは、認証ポリシーモジュールをさらに含み、
    前記認証モジュールによって前記登録情報を認証する前記ステップの前に、前記認証モジュールによって、前記ノードに対応する登録情報認証ポリシーを前記認証ポリシーモジュールから取得するステップをさらに含み、
    前記認証モジュールによって前記登録情報を認証する前記ステップは、前記認証モジュールによって、前記ノードに対応する登録情報認証ポリシーに基づいて前記登録情報を認証するステップを含む、
    ことを特徴とする請求項1に記載の方法。
  3. 前記デジタル証明書発行センターは、秘密鍵管理モジュールをさらに含み、
    ブロックチェーンネットワークにおけるノードからの公開/秘密鍵要求に応じて、前記公開/秘密鍵生成モジュールによって、前記ノードに対して前記ノードの公開鍵および秘密鍵を生成して前記ノードに送信する前記ステップの後に、前記秘密鍵管理モジュールによって、前記ノードから送信された秘密鍵を受信して保存するステップをさらに含む、
    ことを特徴とする請求項1または2に記載の方法。
  4. 前記ノードから送信された秘密鍵を受信する前記ステップは、
    前記ノードが前記秘密鍵管理モジュールの公開鍵を用いて暗号化した第1のランダムセッション鍵を受信するステップと、
    前記暗号化された第1のランダムセッション鍵を、前記秘密鍵管理モジュールの秘密鍵で復号して前記第1のランダムセッション鍵を得るステップと、
    前記ノードが前記第1のランダムセッション鍵を用いて暗号化した前記ノードの秘密鍵を受信するステップと、
    復号して得た第1のランダムセッション鍵を用いて、暗号化された前記ノードの秘密鍵を復号して、前記ノードの秘密鍵を得るステップと、を含む、
    ことを特徴とする請求項3に記載の方法。
  5. 前記ノードが前記秘密鍵管理モジュールの公開鍵を用いて暗号化した第1のランダムセッション鍵を受信する前記ステップの前に、
    認証モジュールによって、前記ノードから送信された前記秘密鍵管理モジュールのデジタル証明書取得要求を受信するステップと、
    認証モジュールによって、前記デジタル証明書取得要求に応じて、前記認証モジュールの秘密鍵を用いた署名を含む、前記秘密鍵管理モジュールのデジタル証明書を前記ノードに送信することによって、前記ノードが前記秘密鍵管理モジュールのデジタル証明書を受信した後に、前記認証モジュールの公開鍵を用いて認証を行うようにするステップと、をさらに含む、
    ことを特徴とする請求項4に記載の方法。
  6. 前記秘密鍵管理モジュールによって前記ノードから送信された秘密鍵を受信して保存する前記ステップの後に、
    前記秘密鍵管理モジュールによって、前記ノードの秘密鍵クエリー要求を受信するステップと、
    前記秘密鍵管理モジュールによって、前記ノードのデジタル証明書クエリー要求を認証モジュールに送信するステップと、
    前記認証モジュールが前記デジタル証明書クエリー要求に応じて生成したデジタル証明書の認証に成功した旨の応答を受信すると、前記秘密鍵管理モジュールによって、前記秘密鍵クエリー要求に応じて前記ノードの秘密鍵を前記ノードに送信するステップと、をさらに含む、
    ことを特徴とする請求項3~5のいずれか1項に記載の方法。
  7. 前記秘密鍵クエリー要求に応じて前記ノードの秘密鍵を前記ノードに送信する前記ステップは、
    前記ノードが前記秘密鍵管理モジュールの公開鍵を用いて暗号化した第2のランダムセッション鍵を受信するステップと、
    前記暗号化された第2のランダムセッション鍵を、前記秘密鍵管理モジュールの秘密鍵で復号して前記第2のランダムセッション鍵を得るステップと、
    前記秘密鍵クエリー要求に応じて前記ノードの秘密鍵をクエリーするステップと、
    前記ノードの秘密鍵を前記第2のランダムセッション鍵で暗号化して前記ノードに送信して、前記ノードが前記第2のランダムセッション鍵を用いて暗号化された前記ノードの秘密鍵を復号して、前記ノードの秘密鍵を得るステップと、を含む、
    ことを特徴とする請求項6に記載の方法。
  8. 前記登録情報は、前記ノードの識別子を含み、
    前記デジタル証明書発行センターは、認証データベースを含み、
    前記認証モジュールによって前記ノードのデジタル証明書を生成した後に、
    前記認証モジュールによって、前記ノードの識別子と前記ノードのデジタル証明書とを認証データベースに対応付けて記憶させるステップをさらに含み、
    前記秘密鍵クエリー要求は、前記ノードの識別子を含み、前記デジタル証明書クエリー要求は、前記ノードの識別子を含むことによって、前記認証モジュールは、前記認証データベースに前記識別子と対応付けて記憶されるデジタル証明書があるか否かに基づいて、認証に成功したか否かを確定する、
    ことを特徴とする請求項6または7に記載の方法。
  9. 前記ノードは、会社ノードとサービス事業者ノードとを含み、
    前記ノードがサービス事業者ノードである場合、前記ノードの公開鍵および登録情報を受信する前記ステップは、
    前記サービス事業者ノードの公開鍵、登録情報、および前記サービス事業者ノードがサービスを提供している会社の権限情報を受信するステップを含み、
    前記デジタル証明書発行センターが認証ポリシーモジュールをさらに含む場合、前記認証モジュールによって前記登録情報を認証した後に、
    認証に成功すると、前記認証モジュールによって、前記権限情報を前記認証ポリシーモジュールに送信して記憶するステップをさらに含み、
    前記秘密鍵クエリー要求は、前記サービス事業者ノードの識別子と、前記サービス事業者ノードのクエリーしようとする鍵が所属するノードの識別子とを含み、
    前記認証モジュールは、認証ポリシーモジュールに記憶される前記権限情報に基づいて、前記サービス事業者ノードのクエリーしようとする鍵が所属するノードの識別子は、前記サービス事業者ノードがサービスを提供している会社または前記サービス事業者ノードの識別子であると確定した場合、認証に成功する、
    ことを特徴とする請求項6または7に記載の方法。
  10. 前記ノードに対応する登録情報認証ポリシーは、ノード種別に特定される登録情報認証ポリシーを含み、
    前記登録情報は、前記ノード種別を含み、
    前記ノードに対応する登録情報認証ポリシーを前記認証ポリシーモジュールから取得する前記ステップは、前記ノード種別に特定される登録情報認証ポリシーを前記認証ポリシーモジュールから取得するステップを含む、
    ことを特徴とする請求項2に記載の方法。
  11. ブロックチェーンは、複数のサブブロックチェーンを含み、
    前記登録情報は、ノード種別を含み、
    前記ノードに対して前記ノードの公開鍵および秘密鍵を生成する前記ステップは、前記ノードに対して異なるサブブロックチェーンにおける前記ノードの公開鍵および秘密鍵を生成するステップを含み、
    前記デジタル証明書発行センターが認証ポリシーモジュールをさらに含む場合、認証モジュールによって前記登録情報を認証した後に、
    認証に成功すると、前記認証モジュールによって、前記ノード種別に基づいて前記ノード種別に特定されるサブブロックチェーン権限情報を生成し、前記サブブロックチェーン権限情報を前記認証ポリシーモジュールに記憶するステップをさらに含み、
    前記サブブロックチェーン権限情報は、異なるトラフィック種別ごとにクエリーが許容されるサブブロックチェーンを含み、
    前記秘密鍵クエリー要求は、前記ノード種別とトラフィック種別とを有し、
    前記デジタル証明書クエリー要求は、前記ノード種別とトラフィック種別とを有し、
    前記認証モジュールは、前記ノード種別に特定されたサブブロックチェーン権限情報を前記認証ポリシーモジュールからクエリーし、前記サブブロックチェーン権限情報および当該トラフィック種別に基づいて、クエリーが許容されるサブブロックチェーンを確定し、クエリーが許容されるサブブロックチェーンの識別子をデジタル証明書の認証に成功した旨の応答に入れて、前記秘密鍵管理モジュールに送信し、
    前記ノードの秘密鍵を前記ノードに送信する前記ステップは、クエリーが許容されるサブブロックチェーンにおける前記ノードの秘密鍵を前記ノードに送信するステップを含む、
    ことを特徴とする請求項6に記載の方法。
  12. 前記秘密鍵管理モジュールに記憶された秘密鍵は、暗号化によって記憶され、暗号化に用いられる暗号は、前記秘密鍵管理モジュールにハードコーディングされる、
    ことを特徴とする請求項3~9のいずれか1項に記載の方法。
  13. デジタル証明書発行センターであって、
    ブロックチェーンネットワークにおけるノードからの公開/秘密鍵要求に応じて、前記ノードに対して前記ノードの公開鍵および秘密鍵を生成して、前記ノードに送信するための公開/秘密鍵生成モジュールと、
    認証モジュールであって、前記ノードの公開鍵および登録情報を受信して、前記登録情報を認証し、かつ、認証に成功すると、平文情報と、前記認証モジュールの秘密鍵を用いて前記平文情報に対して形成した署名とを含む、前記ノードのデジタル証明書を生成して前記ノードに送信することによって、前記ノードが前記認証モジュールの公開鍵を用いて前記署名を検証するようにするための、認証モジュールと、を含み、
    前記平文情報は、前記ノードの公開鍵を含む、
    ことを特徴とするデジタル証明書発行センター。
  14. デジタル証明書発行センターであって、
    コンピュータ読み取り可能な指令が記憶されるメモリと、
    メモリに記憶されるコンピュータ読み取り可能な指令を読み取って、請求項1~12のいずれか1項に記載の方法を実行するプロセッサと、を備える、
    ことを特徴とするデジタル証明書発行センター。
  15. コンピュータのプロセッサによって実行される場合、請求項1~12のいずれか1項に記載の方法をコンピュータに実行させるコンピュータ読み取り可能な指令を記憶するためのコンピュータプログラム記憶媒体。
  16. コンピュータで動作することによって、請求項1~12のいずれか1項に記載の方法をコンピュータに実行させるための指令を含むコンピュータプログラム。
JP2021518941A 2019-01-09 2019-12-26 デジタル証明書の発行方法、デジタル証明書発行センター、記憶媒体およびコンピュータプログラム Active JP7273148B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201910020435.5A CN109617698B (zh) 2019-01-09 2019-01-09 发放数字证书的方法、数字证书颁发中心和介质
CN201910020435.5 2019-01-09
PCT/CN2019/128755 WO2020143470A1 (zh) 2019-01-09 2019-12-26 发放数字证书的方法、数字证书颁发中心和介质

Publications (2)

Publication Number Publication Date
JP2022504420A JP2022504420A (ja) 2022-01-13
JP7273148B2 true JP7273148B2 (ja) 2023-05-12

Family

ID=66016529

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021518941A Active JP7273148B2 (ja) 2019-01-09 2019-12-26 デジタル証明書の発行方法、デジタル証明書発行センター、記憶媒体およびコンピュータプログラム

Country Status (4)

Country Link
US (1) US11924358B2 (ja)
JP (1) JP7273148B2 (ja)
CN (1) CN109617698B (ja)
WO (1) WO2020143470A1 (ja)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101849918B1 (ko) * 2016-10-26 2018-04-19 주식회사 코인플러그 Utxo 기반 프로토콜을 사용하여 통화를 발행 및 지급 결제하는 방법과 이를 이용한 서버
CN109617698B (zh) * 2019-01-09 2021-08-03 腾讯科技(深圳)有限公司 发放数字证书的方法、数字证书颁发中心和介质
GB2583767A (en) * 2019-05-10 2020-11-11 Nchain Holdings Ltd Methods and devices for public key management using a blockchain
CN110378691A (zh) * 2019-06-18 2019-10-25 重庆金融资产交易所有限责任公司 基于部署中心的区块链部署方法、装置和计算机设备
CN110458558A (zh) * 2019-07-04 2019-11-15 重庆金融资产交易所有限责任公司 基于区块链的数据保密方法、装置和计算机设备
JP7259971B2 (ja) * 2019-08-20 2023-04-18 日本電信電話株式会社 ユーザクレデンシャル制御システムおよびユーザクレデンシャル制御方法
CN112465575A (zh) * 2019-09-09 2021-03-09 辽宁政税科技有限公司 一种基于区块链技术的发票管理系统及方法
CN112533195B (zh) 2019-09-19 2023-03-10 华为技术有限公司 一种设备认证方法及装置
WO2021087073A1 (en) 2019-10-30 2021-05-06 Via Science, Inc. Secure outsourcing of a multiplication
CN111062716B (zh) * 2019-11-29 2021-06-22 支付宝(杭州)信息技术有限公司 生成区块链签名数据的方法及装置、区块链交易发起系统
CN112887254A (zh) * 2019-11-29 2021-06-01 中国电信股份有限公司 个人信息确认方法、装置、系统及存储介质
CN111092724B (zh) * 2019-12-25 2022-11-15 杭州溪塔科技有限公司 一种区块链系统数字证书签发方法、设备、系统及介质
CN111262834B (zh) * 2020-01-09 2022-03-29 中国信息通信研究院 物理实体的认证、可信解析方法、装置及系统
CN111327612B (zh) * 2020-02-19 2022-05-24 奥比中光科技集团股份有限公司 一种用于认证深度测量装置的系统及方法
CN111539813B (zh) * 2020-07-10 2020-12-11 支付宝(杭州)信息技术有限公司 业务行为的回溯处理方法、装置、设备及系统
CN111917734B (zh) * 2020-07-12 2023-03-10 中信银行股份有限公司 公钥的管理方法、装置、电子设备及计算机可读存储介质
CN111865988B (zh) * 2020-07-22 2022-10-18 山东华普信息科技有限公司 一种基于区块链的无证书密钥管理方法、系统及终端
CN112419021B (zh) * 2020-10-21 2023-11-03 西安电子科技大学 电子发票验证方法、系统、存储介质、计算机设备、终端
CN112839041B (zh) * 2021-01-05 2022-09-23 国网浙江省电力有限公司嘉兴供电公司 基于区块链的电网身份认证方法、装置、介质和设备
CN112861106B (zh) * 2021-02-26 2023-01-10 卓尔智联(武汉)研究院有限公司 数字证书处理方法及系统、电子设备及存储介质
CN112862487A (zh) * 2021-03-03 2021-05-28 青岛海链数字科技有限公司 一种数字证书认证方法、设备及存储介质
CN112907247B (zh) * 2021-03-18 2024-01-26 上海零数众合信息科技有限公司 一种区块链授权计算控制方法
CN113179165B (zh) * 2021-03-25 2022-08-05 广东工业大学 基于区块链的移动网络密钥管理及通信方法、装置和介质
CN113242133B (zh) * 2021-04-29 2022-12-13 中国人民银行数字货币研究所 一种数字证书管理方法和装置
EP4145762B1 (en) * 2021-09-06 2023-10-25 Axis AB Method and system for enabling secure processing of data using a processing application
CN114157432A (zh) * 2021-11-25 2022-03-08 上海派拉软件股份有限公司 数字证书获取方法、装置、电子设备、系统和存储介质
CN114221759B (zh) * 2021-11-29 2024-04-12 成都卫士通信息产业股份有限公司 一种远程监控部署方法、装置、电子设备及存储介质
CN113869901B (zh) * 2021-12-02 2022-05-10 腾讯科技(深圳)有限公司 密钥生成方法、装置、计算机可读存储介质及计算机设备
CN114244527B (zh) * 2021-12-14 2023-10-31 中国电力科学研究院有限公司 基于区块链的电力物联网设备身份认证方法及系统
CN114884702A (zh) * 2022-04-19 2022-08-09 海南大学 身份注册方法、身份认证方法及身份管理系统
CN114760070A (zh) * 2022-04-22 2022-07-15 深圳市永达电子信息股份有限公司 数字证书颁发方法、数字证书颁发中心和可读存储介质
CN114697048B (zh) * 2022-06-01 2022-08-26 天津市普迅电力信息技术有限公司 基于区块链的碳排放数据共享方法和系统
CN115296838B (zh) * 2022-06-24 2023-09-26 北京中科金财科技股份有限公司 基于区块链的数据共享方法、系统及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180115538A1 (en) 2016-10-21 2018-04-26 Cygnetise Limited Methods And Apparatus For Recording A Change Of Authorisation State Of One Or More Authorisation Agents
US20180137284A1 (en) 2016-11-16 2018-05-17 Samsung Electronics Co., Ltd. Computing system for managing firmware and firmware managing method thereof
JP2018174507A (ja) 2017-03-31 2018-11-08 セコム株式会社 通信装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6615350B1 (en) * 1998-03-23 2003-09-02 Novell, Inc. Module authentication and binding library extensions
CN103825733A (zh) * 2014-02-28 2014-05-28 华为技术有限公司 基于组合公钥密码体制的通信方法、装置及系统
US9652212B2 (en) * 2014-09-24 2017-05-16 Oracle International Corporation Managing change events for devices in an enterprise system
EP3304405A4 (en) * 2015-06-02 2019-01-09 K2View Ltd. SYSTEM AND METHOD FOR MANAGING A CLASSIFIED DATABASE
KR101637854B1 (ko) * 2015-10-16 2016-07-08 주식회사 코인플러그 블록체인을 기반으로 하는 공인인증서 발급시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 발급방법 및 블록체인을 기반으로 하는 공인인증서 인증시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 인증방법
US10771451B2 (en) * 2016-09-13 2020-09-08 Queralt, Inc. Mobile authentication and registration for digital certificates
CN110537346B (zh) * 2017-03-06 2023-03-24 诺基亚技术有限公司 安全去中心化域名系统
US10102526B1 (en) * 2017-03-31 2018-10-16 Vijay K. Madisetti Method and system for blockchain-based combined identity, ownership, integrity and custody management
CN108390872B (zh) * 2018-02-09 2021-02-26 北京京东尚科信息技术有限公司 证书管理方法、装置、介质及电子设备
CN108712429B (zh) * 2018-05-24 2020-07-10 西安电子科技大学 基于区块链云外包计算数据的隐私保护方法
CN108900507B (zh) * 2018-06-29 2020-12-22 全链通有限公司 区块链实名认证方法和系统
CN109150539A (zh) * 2018-07-24 2019-01-04 深圳前海益链网络科技有限公司 一种基于区块链的分布式ca认证系统、方法及装置
CN109003083A (zh) * 2018-07-27 2018-12-14 山东渔翁信息技术股份有限公司 一种基于区块链的ca认证方法、装置及电子设备
CN109617698B (zh) * 2019-01-09 2021-08-03 腾讯科技(深圳)有限公司 发放数字证书的方法、数字证书颁发中心和介质
CN112215608A (zh) * 2019-01-18 2021-01-12 创新先进技术有限公司 数据处理方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180115538A1 (en) 2016-10-21 2018-04-26 Cygnetise Limited Methods And Apparatus For Recording A Change Of Authorisation State Of One Or More Authorisation Agents
US20180137284A1 (en) 2016-11-16 2018-05-17 Samsung Electronics Co., Ltd. Computing system for managing firmware and firmware managing method thereof
JP2018174507A (ja) 2017-03-31 2018-11-08 セコム株式会社 通信装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
東角 芳樹 ほか,コンソーシアムチェーンにおける証明書管理に関する一考察,2017年 暗号と情報セキュリティシンポジウム(SCIS2017)予稿集 [USB],日本,2017年 暗号と情報セキュリティシンポジウム実行,2017年01月24日,1F2-3,p.1-4

Also Published As

Publication number Publication date
CN109617698A (zh) 2019-04-12
CN109617698B (zh) 2021-08-03
US20210167972A1 (en) 2021-06-03
JP2022504420A (ja) 2022-01-13
WO2020143470A1 (zh) 2020-07-16
US11924358B2 (en) 2024-03-05

Similar Documents

Publication Publication Date Title
JP7273148B2 (ja) デジタル証明書の発行方法、デジタル証明書発行センター、記憶媒体およびコンピュータプログラム
US20190140844A1 (en) Identity-linked authentication through a user certificate system
KR100962399B1 (ko) 익명 공개 키 기반구조 제공 방법 및 이를 이용한 서비스제공 방법
US8788811B2 (en) Server-side key generation for non-token clients
US10567370B2 (en) Certificate authority
KR102307574B1 (ko) 블록체인을 기반으로 한 클라우드 데이터 저장 시스템 및 데이터 저장 방법
KR102318637B1 (ko) 데이터 전송 방법, 데이터의 사용 제어 방법 및 암호 장치
CN108768933B (zh) 一种区块链平台上自主可监管数字身份认证系统
AU2017225928A1 (en) Systems and methods for distributed data sharing with asynchronous third-party attestation
US8984283B2 (en) Private certificate validation method and apparatus
US20110296171A1 (en) Key recovery mechanism
US20110293098A1 (en) Key recovery mechanism
JP2004032311A (ja) Pki対応の証明書確認処理方法及びその装置、並びにpki対応の証明書確認処理プログラム
JP2007110377A (ja) ネットワークシステム
JP5992535B2 (ja) 無線idプロビジョニングを実行するための装置及び方法
US20090199303A1 (en) Ce device management server, method of issuing drm key by using ce device management server, and computer readable recording medium
CN114666168A (zh) 去中心化身份凭证验证方法、装置,以及,电子设备
JP2005149341A (ja) 認証方法および装置、サービス提供方法および装置、情報入力装置、管理装置、認証保証装置、並びにプログラム
JP2004248220A (ja) 公開鍵証明書発行装置、公開鍵証明書記録媒体、認証端末装置、公開鍵証明書発行方法、及びプログラム
JPH05298174A (ja) 遠隔ファイルアクセスシステム
WO2018207174A1 (en) Method and system for sharing a network enabled entity
US20220318356A1 (en) User registration method, user login method and corresponding device
JP6045018B2 (ja) 電子署名代行サーバ、電子署名代行システム及び電子署名代行方法
JP2009543210A5 (ja)
KR100603107B1 (ko) 신용정보 링크정보를 포함한 공인인증서 발급 방법 및 이방법에 의해 발급된 공인인증서가 기록된 컴퓨터로 판독가능한 기록매체

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210406

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220517

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220817

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20221115

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230214

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20230214

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20230222

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20230228

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230411

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230427

R150 Certificate of patent or registration of utility model

Ref document number: 7273148

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150