(58)【調査した分野】(Int.Cl.,DB名)
ブロックチェーンネットワークにおけるノードであり、認可情報を記憶するための複数のブロックからなるブロックチェーンを記憶している認可サーバに適用される登録方法であって、
ユーザ装置が送信した、ユーザに対してアイデンティティ認証を行うためのアイデンティティ確認情報を含む登録要求メッセージを受信するステップと、
前記ユーザがアクセス可能なサービスを指示するための認可情報を前記ユーザに割り当てるステップと、
前記認可サーバによって前記アイデンティティ確認情報及び前記認可情報をブロックチェーンのブロックに書き込むステップとを含むことを特徴とする登録方法。
ブロックチェーンネットワークにおけるノードであり、認可情報を記憶するための複数のブロックからなるブロックチェーンを記憶している認可サーバに適用される登録装置であって、
ユーザ装置が送信した、ユーザに対してアイデンティティ認証を行うためのアイデンティティ確認情報を含む登録要求メッセージを受信するためのメッセージ受信ユニットと、
前記ユーザがアクセス可能なサービスを指示するための認可情報を前記ユーザに割り当てるための権限割当ユニットと、
前記認可サーバによって前記アイデンティティ確認情報及び前記認可情報をブロックチェーンのブロックに書き込むためのブロックチェーン書き込みユニットとを備えることを特徴とする登録装置。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本開示の目的は、従来の認可技術のセキュリティが低いという技術的問題を解決するために、登録・認可方法、装置及びシステムを提供することである。
【課題を解決するための手段】
【0006】
上記目的を達成させるために、本発明の第1態様は、
ブロックチェーンネットワークにおけるノードであり、認可情報を記憶するための複数のブロックからなるブロックチェーンを記憶している認可サーバに適用される登録方法であって、
ユーザ装置が送信した、ユーザに対してアイデンティティ認証を行うためのアイデンティティ確認情報を含む登録要求メッセージを受信するステップと、
前記ユーザがアクセス可能なサービスを指示するための認可情報を前記ユーザに割り当てるステップと、
前記認可サーバによって前記アイデンティティ確認情報及び前記認可情報をブロックチェーンのブロックに書き込むステップとを含む、登録方法を提供する。
【0007】
本発明の第2態様は、
ブロックチェーンネットワークにおけるノードであるアクセスサーバに適用される認可方法であって、
ユーザ装置が送信した、ユーザアイデンティティ情報を含むアクセス要求メッセージを受信するステップと、
前記アクセスサーバによって、前記ユーザアイデンティティ情報に基づいて、ブロックチェーンにおいてユーザのアイデンティティ確認情報及び認可情報を問い合わせるステップと、
前記アイデンティティ確認情報に基づいて、前記ユーザに対してアイデンティティ認証を行うステップと、
認証に通過した後、前記認可情報に基づいて、前記ユーザによる指定サービスへのアクセスを許可するステップとを含む、認可方法を提供する。
【0008】
本発明の第3態様は、
ブロックチェーンネットワークにおけるノードであり、認可情報を記憶するための複数のブロックからなるブロックチェーンを記憶している認可サーバに適用される登録装置であって、
ユーザ装置が送信した、ユーザに対してアイデンティティ認証を行うためのアイデンティティ確認情報を含む登録要求メッセージを受信するメッセージ受信ユニットと、
前記ユーザがアクセス可能なサービスを指示するための認可情報を前記ユーザに割り当てる権限割当ユニットと、
前記認可サーバによって前記アイデンティティ確認情報及び前記認可情報をブロックチェーンのブロックに書き込むブロックチェーン書き込みユニットとを備える、登録装置を提供する。
【0009】
本発明の第4態様は、
ブロックチェーンネットワークにおけるノードであるアクセスサーバに用いられる認可装置であって、
ユーザ装置が送信した、ユーザアイデンティティ情報を含むアクセス要求メッセージを受信するためのメッセージ受信ユニットと、
前記アクセスサーバによって、前記ユーザアイデンティティ情報に基づいて、ブロックチェーンにおいてユーザのアイデンティティ確認情報及び認可情報を問い合わせるためのブロックチェーン問い合わせユニットと、
前記アイデンティティ確認情報に基づいて、前記ユーザに対してアイデンティティ認証を行うためのアイデンティティ認証ユニットと、
前記アイデンティティ認証ユニットによる前記ユーザの認証に通過した後、前記認可情報に基づいて、前記ユーザによる指定サービスへのアクセスを許可するための認可アクセスユニットとを備える、認可装置を提供する。
【0010】
本発明の第5態様は、
ブロックチェーンネットワークにおけるノードであり、認可情報を記憶するための複数のブロックからなるブロックチェーンを記憶している認可サーバであって、
プロセッサ、通信インターフェース、記憶装置及び通信バスを備え、前記プロセッサ、前記通信インターフェース及び前記記憶装置は前記通信バスを介して相互通信を行い、
前記記憶装置はアプリケーションプログラムを記憶し、
前記プロセッサは、前記アプリケーションプログラムを実行して、第1態様に記載の方法を実現する、認可サーバを提供する。
【0011】
本発明の第6態様は、
ブロックチェーンネットワークにおけるノードであるアクセスサーバであって、
プロセッサ、通信インターフェース、記憶装置及び通信バスを備え、前記プロセッサ、前記通信インターフェース及び前記記憶装置は前記通信バスを介して相互通信を行い、
前記記憶装置はアプリケーションプログラムを記憶し、
前記プロセッサは、前記アプリケーションプログラムを実行して、第2態様に記載の方法を実現する、アクセスサーバを提供する。
【0012】
本発明の第7態様は、
認可サーバとアクセスサーバとを備え、前記認可サーバは、ブロックチェーンネットワークにおけるノードであり、前記アクセスサーバはブロックチェーンネットワークにおけるノードであり、ネットワークサービスを提供するサーバに接続され、
前記認可サーバは第1態様に記載の方法を実行し、
前記アクセスサーバは第2態様に記載の方法を実行する、認可システムを提供する。
【0013】
本発明の第9態様は、
上記第1態様に記載の方法を実行するためのコマンドを含むコンピュータプログラムを記憶するコンピュータ可読記憶媒体を提供する。
【0014】
本発明の第10態様は、
第2態様に記載の方法を実行するためのコマンドを含むコンピュータプログラムを記憶するコンピュータ可読記憶媒体を提供する。
【発明の効果】
【0015】
上記技術案によれば、認可サーバは、ユーザのアイデンティティ情報及び認可情報をブロックチェーンに書き込み、これにより、アクセスサーバは、ユーザ装置が送信したアクセス要求メッセージを受信したとき、ブロックチェーンに記憶されたアイデンティティ確認情報を用いてアクセスに対してアイデンティティ認証を行い、認証に通過した後、認可情報に基づいてユーザによる指定サービスへのアクセスを許可することができる。ブロックチェーンのトラストフリー化により、認可過程における信頼できる第三者機関による承認が不要となり、同時に、ブロックチェーンの分散化により、個人や組織がユーザの関連情報を改ざんすることが不可能になることで、認可のセキュリティと信頼性が確保される。
【発明を実施するための形態】
【0017】
本発明の実施例の目的、技術案及び利点をより明瞭にするために、以下、本発明の実施例における図面を参照しながら、本発明の実施例における技術案を明瞭且つ完全に説明するが、勿論、説明する実施例は本発明の実施例の一部に過ぎず、すべての実施例ではない。本発明における実施例に基づいて、当業者が創造的な努力を必要とせずに想到し得るすべてのその他の実施例は本発明の保護範囲に属する。
【0018】
当業者が本発明の実施例による技術案をより容易に把握できるように、以下、まずかかる関連技術について簡単に説明する。
【0019】
ブロックチェーンは、ブロックチェーンネットワークにおけるすべてのノードが参加したりメンテナンスをしたりする非中央集権性化分散型データベースシステムであり、暗号学方法により生成した一連のデータブロックからなり、データブロックがそれぞれブロックチェーンの1つのブロックとなる。生成順番に応じて、ブロックは規則的にリンクされて1本のデータチェーンを構成し、このようなデータチェーンはブロックチェーンと呼ばれる。ブロックチェーンは、その特有なブロック、取引発生、認証プロトコルを有し、変更、偽造ができず、完全に追跡可能なセキュリティ特性を有する。
【0020】
<ブロックチェーン技術における関連概念の説明>
ユーザアイデンティティ:ブロックチェーンにおけるユーザアイデンティティは公開鍵で示され、前記公開鍵に対応した秘密鍵はネットワークへ開示されずユーザだけに保有され、公開鍵は特定のハッシュとコーディングを経て「アドレス」となり、「アドレス」はユーザを代表し、自由に公開可能である。
【0021】
ブロックチェーンデータの書き込み:ブロックチェーンノードは、ブロックチェーンネットワークに「取引」(Transaction)を開示することによりブロックチェーンにデータを書き込む。取引には、ユーザが自分の秘密鍵を用いて取引に対して署名を行い、ユーザのアイデンティティを証明することが含まれる。取引が、「マイナー」(ブロックチェーンコンセンサス競争メカニズムを実行するブロックチェーンノード)により生成した新ブロックに記録され、次にブロックチェーンネットワークに開示されて、その他のブロックチェーンノードによる認証に通過し且つ受信された後、取引データがブロックチェーンに書き込まれる。
【0022】
<ブロックチェーンに備える特性>
分散化:ブロックチェーンシステム全体に亘って、集中化されたハードウェア又は管理機関がなく、すべてのノードの権利や義務が等しく、且ついずれかのノードの破損又は喪失によりシステム全体の作動に影響を与えることがない。従って、ブロックチェーンは優れた堅牢性を有すると言える。
トラストフリー化:ブロックチェーンシステム全体における各々のノードの間のデータ交換には相互信頼を必要とせず、システム全体の作動ルールは開示されており、すべてのデータコンテンツも公開されているため、システムにより指定されたルールや時間内では、ノードはノードを欺くことができない。
【0023】
本発明の実施例は、ブロックチェーン技術に基づいて登録方法を提供し、該方法は、認可サーバに適用され、該認可サーバはブロックチェーンネットワークにおけるノードであり、
図1に示されるように、該方法は、ステップS101−S103を含む。
【0024】
S101において、ユーザ装置が送信した、アイデンティティ確認情報を含む登録要求メッセージを受信する。
前記アイデンティティ確認情報は、ユーザに対してアイデンティティ認証を行うために使われる。
【0025】
S102において、前記ユーザがアクセス可能なサービスを指示するための認可情報を前記ユーザに割り当てる。
なお、認可サーバは、あらかじめ設定された認可ルールに基づいてユーザに認可情報を割り当てて、ユーザがアクセス可能なサービスを制御することができる。たとえば、具体的に実施する過程において、認可サーバは、異なるアイデンティティ、異なるアクセス地点、異なるアクセス方式、異なる安全状態を有するユーザに合理的なネットワークアクセス権限を設定することができ、本発明では、それについて限定しない。
【0026】
S103において、前記認可サーバによって前記アイデンティティ確認情報及び前記認可情報をブロックチェーンのブロックに書き込む。
【0027】
上記ブロックチェーンデータへの書き込みについての説明を参照すると、認可サーバが少なくともブロックチェーン取引に参加する機能を具備するように、該認可サーバは、ブロックチェーンネットワークにおける1つのブロックチェーンノードである。ブロックチェーンネットワークにおけるノードとして、認可サーバは認可情報を記憶するための複数のブロックからなるブロックチェーンを記憶している。なお、認可サーバはマイニングに参加しなくてもよく、このような場合、上記ステップS103では、認可サーバは、アイデンティティ確認情報及び認可情報をブロックチェーンネットワークにおけるほかのノードにブロードキャストして、その他のノードによりブロックを生成するときに書き込む。認可サーバは、マイニングに参加してもよく、このような場合、認可サーバは、自分でブロックを生成してブロック書き込み権限を取得するときに、アイデンティティ確認情報及び認可情報をブロックに書き込んでもよく、アイデンティティ確認情報及び認可情報をブロックチェーンネットワークにおけるその他ノードへブロードキャストして、その他ノードによりブロックを生成するときに書き込んでもよい。
【0028】
上記方法によれば、アクセスサーバは、ブロックチェーンネットワークにおけるノードとして、ユーザ装置が送信したアクセス要求メッセージを受信したときに、ブロックチェーンに記憶されたアイデンティティ確認情報を用いてアクセスに対してアイデンティティ認証を行い、認証に通過した後、認可情報に基づいてユーザによる指定サービスへのアクセスを許可することができる。ブロックチェーンのトラストフリー化により、認可過程における信頼できる第三者機関による承認が不要となり、同時に、ブロックチェーンの分散化により、個人や組織がユーザの関連情報を改ざんすることが不可能になることで、認可のセキュリティと信頼性が確保される。
【0029】
さらに、本発明の実施例はさらに認可方法を提供し、前記方法はアクセスサーバに適用され、前記アクセスサーバはブロックチェーンネットワークにおけるノードであり、
図2に示されるように、該方法はステップS201−S201を含む。
【0030】
S201において、ユーザ装置が送信した、ユーザアイデンティティ情報を含むアクセス要求メッセージを受信する。
【0031】
S202において、前記アクセスサーバによって、前記ユーザアイデンティティ情報に基づいて、ブロックチェーンにおいてユーザのアイデンティティ確認情報及び認可情報を問い合わせる。
アクセスサーバは、少なくともブロックチェーン問い合わせ機能を具備するように、ブロックチェーンネットワークにおける1つのブロックチェーンノードである。本発明の実施例の一実施形態において、該アクセスサーバと
図1に示される登録方法における認可サーバは同一サーバであってもよい。
なお、ブロックチェーンにおけるユーザアイデンティティについての上記説明を参照すると、ユーザアイデンティティとブロックチェーンノードには1対1対応関係がなく、ユーザはいずれかのブロックチェーンノードにおいて自分の秘密鍵を使用することができ、これにより、アクセスサーバは、秘密鍵を用いてブロックチェーンにおいていずれかのブロックを検索して、ユーザのアイデンティティ確認情報及び認可情報を問い合わせて取得することができる。該アクセスサーバは、ブロックチェーンにおいてユーザのアイデンティティ確認情報と認可情報が見つからなかった場合、ユーザ装置にアクセス失敗メッセージを返送する。
【0032】
S203において、前記アイデンティティ確認情報に基づいて、前記ユーザに対してアイデンティティ認証を行う。
【0033】
S204において、前記ユーザアイデンティティ情報認証に通過した後、前記認可情報に基づいて、前記ユーザによる指定サービスへのアクセスを許可する。
このように、ユーザ装置によるアクセス要求メッセージを受信した後、信頼できる第三者機関でユーザ認証を行う必要のある従来技術によるアクセスサーバに比べて、本発明の実施例による認可方法では、ブロックチェーンネットワークには集中化されたハードウェア又は管理機関がないので、すべてのノードの権利と義務が等しく、且ついずれかのノードの破損又は喪失によりシステム全体の作動に影響を与えることがないため、認可過程はより安全で信頼できる。
【0034】
以下、アイデンティティ確認情報とユーザアイデンティティ情報に基づくユーザ認証を具体的に説明する。
【0035】
<形態1>
上記ステップS101において、アイデンティティ確認情報はパスワードハッシュ値の暗号文であってもよく、具体的に実施するとき、アクセスサーバの公開鍵でパスワードハッシュ値の平文を暗号化して該アイデンティティ確認情報を取得してもよいし、予め設定された秘密鍵で対称暗号化アルゴリズムによりパスワードハッシュ値の平文を暗号化して取得してもよく、ここで、前記予め設定された秘密鍵は、認可サーバとアクセスサーバにより独立して記憶されて使用されることができる。
これにより、ステップS203では、ユーザアイデンティティ情報はユーザ名とパスワードハッシュ値を含むことができ、アクセスサーバは、ユーザアイデンティティ情報を受信した後、ユーザ名に基づいてブロックチェーンに記憶されたパスワードハッシュ値暗号文を検索し、さらに、自分の秘密鍵又は予め設定された秘密鍵でアイデンティティ確認情報を復号してパスワードハッシュ値の平文を取得し、復号して得たパスワードハッシュ値の平文とユーザアイデンティティ情報におけるパスワードハッシュ値が一致すると、ユーザアイデンティティ認証に通過したとし、一致しないと、ユーザアイデンティティ認証に通過しないとする。
【0036】
<形態2>
上記ステップS101では、アイデンティティ確認情報はユーザ公開鍵であってもよく、ステップS203では、ユーザアイデンティティ情報はユーザ公開鍵であってもよい。これにより、アクセスサーバは、ユーザ公開鍵に基づいてブロックチェーンにユーザ公開鍵と認可情報が記録されていると決定すると、前記ユーザにアイデンティティ確認を提供するように指示するための指示情報を前記ユーザ装置に送信し、且つ前記ユーザ装置が前記指示情報に基づいて送信したユーザ秘密鍵で署名した署名情報を受信し、該署名情報に対して署名認証を行うことができ、署名認証に成功すると、ユーザアイデンティティ認証に通過したとし、署名認証が失敗すると、ユーザアイデンティティ認証が失敗したとする。
【0037】
上記は例示的に説明するに過ぎず、具体的に実施するとき、ほかの形態でユーザに対してアイデンティティ認証を行って構わず、本発明では、それについて限定しない。
【0038】
本発明の実施例の一実施形態において、
図1に示される登録方法はさらに、認可サーバが、前記アイデンティティ確認情報に対応した認可情報を更新するための更新メッセージを受信し、且つ前記認可サーバによって前記アイデンティティ確認情報及び更新後の認可情報を前記ブロックチェーンのブロックに書き込むステップを含む。
【0039】
つまり、認可サーバで設定された認可ルールに基づいて、ユーザが認可情報変更条件を満たすと、認可サーバは、管理システムのコントロールに基づいてユーザの認可範囲を変更し得る。これにより、ブロックチェーンにユーザアイデンティティ確認情報及び認可情報を記憶した複数のブロックが存在する可能性がある。従って、上記ステップS202では、アクセスサーバによって前記ユーザアイデンティティ情報を用いて前記ブロックチェーンにおいて前記ユーザのアイデンティティ確認情報及び認可情報を記憶した複数ブロックを見つけた場合、アクセスサーバが最新認可情報に基づいてユーザによるネットワークサービスへのアクセスを許可するように、前記複数のブロックのうち、最新ブロックから前記ユーザのアイデンティティ確認情報及び認可情報を取得する。
【0040】
当業者が本発明の実施例による技術案をさらに把握できるように、以下、本発明の実施例による登録・認可方法を例示的に説明し、
図3に示されるように、該方法は、ステップS301−S309を含む。
【0041】
S301において、ユーザ装置が、認可サーバにユーザ公開鍵を含む登録要求メッセージを送信する。
【0042】
S302において、認可サーバが、ユーザに認可情報を割り当てて、前記ユーザ公開鍵と前記認可情報をブロックチェーンに書き込む。
【0043】
S303において、ユーザ装置が、アクセスサーバにユーザ公開鍵を含むアクセス要求メッセージを送信する。
【0044】
S304において、アクセスサーバが、前記ユーザ公開鍵に基づいてブロックチェーンにおいて該ユーザ公開鍵がブロックチェーンに書き込まれているか否かを問い合わせる。
さらに、前記ユーザ公開鍵によりブロックチェーンにおいて該ユーザ公開鍵がブロックチェーンに書き込まれていないと検出された場合、ステップS305を実行し、前記ユーザ公開鍵によりブロックチェーンにおいて該ユーザ公開鍵がブロックチェーンに書き込まれていると検出された場合、ステップS306及び後続ステップを実行する。
【0045】
S305において、アクセスサーバがユーザ装置にアクセス拒否メッセージを返送する。
【0046】
S306において、アクセスサーバが、ユーザに公開秘密鍵に基づくアイデンティティ確認を提供するように指示するためのメッセージをユーザ装置に送信する。
【0047】
S307において、ユーザ装置が、アクセスサーバにユーザ秘密鍵で署名した署名情報を送信する。
【0048】
S308において、アクセスサーバが、ユーザ公開鍵に基づいて該署名情報に対して署名認証を行う。
さらに、署名認証が失敗すると、ステップS305を実行し、署名認証に成功すると、ステップS309を実行する。
【0049】
S309において、アクセスサーバが、前記認可情報に基づいて、ユーザ装置による認可範囲内のネットワークサービスへのアクセスを許可する。
【0050】
上記方法によれば、ブロックチェーンのトラストフリー化により、認可過程における信頼できる第三者機関の承認が不要となり、同時に、ブロックチェーンの分散化により、個人や組織がユーザの関連情報を改ざんすることが不可能になることで、認可のセキュリティと信頼性が確保される。
【0051】
なお、上記方法では、ユーザ公開鍵をアイデンティティ確認情報とする場合を例にして説明しているが、具体的に実施するとき、アイデンティティ確認情報は、パスワードハッシュ値の暗号文としてもよい。さらに、上記方法の実施例では、説明し易さから、一連の動作を組み合わせたが、当業者にとって明らかなように、本発明は説明された動作の順番により制限されない。また、当業者にとって明らかなように、明細書に説明された実施例のいずれも好適実施例であり、関する動作は必ず本発明にとって必須なものであると限らない。
【0052】
本発明の実施例はさらに登録装置40を提供し、前記登録装置40は認可サーバに適用され、前記認可サーバはブロックチェーンネットワークにおけるノードであり、認可情報を記憶するための複数のブロックからなるブロックチェーンを記憶しており、前記登録装置40は、上記方法の実施例による
図1に示される登録方法を実施し、
図4に示されるように、該登録装置40は、
ユーザ装置が送信した、ユーザに対してアイデンティティ認証を行うためのアイデンティティ確認情報を含む登録要求メッセージを受信するためのメッセージ受信ユニット401と、
前記ユーザがアクセス可能なサービスを指示するための認可情報を前記ユーザに割り当てる権限割当ユニット402と、
前記認可サーバによって前記アイデンティティ確認情報及び前記認可情報をブロックチェーンのブロックに書き込むブロックチェーン書き込みユニット403とを備える。
【0053】
上記登録装置によれば、該登録装置を用いた認可サーバは、ユーザのアイデンティティ情報及び認可情報をブロックチェーンに書き込むことができ、これにより、アクセスサーバは、ユーザ装置が送信したアクセス要求メッセージを受信したときに、ブロックチェーンに記憶されたアイデンティティ確認情報を用いてアクセスに対してアイデンティティ認証を行い、認証に通過した後、認可情報に基づいてユーザによる指定サービスへのアクセスを許可する。ブロックチェーンのトラストフリー化により、認可過程における信頼できる第三者機関の承認が不要となり、同時に、ブロックチェーンの分散化により、個人や組織がユーザの関連情報を改ざんすることが不可能になることで、認可のセキュリティと信頼性が確保される。
【0054】
なお、前記アイデンティティ確認情報はパスワードハッシュ値の暗号文、又は、ユーザ公開鍵である。具体的には、上記方法の実施例における形態1と形態2を参照すればよいため、ここで詳細な説明を省略する。
【0055】
前記メッセージ受信ユニット401はさらに、前記アイデンティティ確認情報に対応した認可情報を更新するための更新メッセージを受信し、前記ブロックチェーン書き込みユニット403はさらに、前記認可サーバによって前記アイデンティティ確認情報及び更新後の認可情報を前記ブロックチェーンのブロックに書き込むようにしてもよい。
【0056】
つまり、認可サーバで設定された認可ルールに基づいて、ユーザが認可情報変更条件を満たすと、認可サーバは、管理システムのコントロールに基づいてユーザの認可範囲を変更することができる。これにより、ブロックチェーンには、ユーザアイデンティティ確認情報及び認可情報を記憶した複数のブロックが存在する可能性がある。
【0057】
当業者にとって明らかなように、説明の便利さ及び簡素化から、上記各機能ユニットの分割を例にして説明するに過ぎず、実際に適用されるとき、必要に応じて上記機能を異なる機能ユニットで行うことができ、すなわち、以上説明したすべて又は一部の機能を行うように、装置の内部構造を異なる機能ユニットに分割することができる。上記説明した機能ユニットの具体的な作動過程について、前述方法の実施例における対応過程を参照すればよいため、ここで詳細な説明を省略する。
【0058】
さらに、上記機能ユニットの物理的な形態も複数種の方式があり、たとえば、一例示的な実施形態では、登録装置40は1つ又は複数ASIC(Application Specific Integrated Circuit、特定用途向け集積回路)、DSP(Digital Signal Processor、デジタル信号プロセッサ)、DSPD(Digital Signal Processing Device、デジタル信号処理装置)、PLD(Programmable Logic Device、プログラマブルロジックデバイス)、FPGA(Field Programmable Gate Array、フィールドプログラマブルゲートアレイ)、コントローラ、マイクロコントローラ、マイクロプロセッサー又はほかの電子部品によって実現されて、
図1による方法を実行してもよい。
【0059】
本発明の実施例はさらに、認可装置50を提供し、前記認可装置50は、アクセスサーバに適用され、前記アクセスサーバは、ブロックチェーンネットワークにおけるノードであり、前記認可装置50は、上記方法の実施例による
図2に示される認可方法を実施し、
図5に示されるように、該認可装置50は、
ユーザ装置が送信した、ユーザアイデンティティ情報を含むアクセス要求メッセージを受信するためのメッセージ受信ユニット501と、
前記アクセスサーバによって、前記ユーザアイデンティティ情報に基づいて、ブロックチェーンにおいてユーザのアイデンティティ確認情報及び認可情報を問い合わせるためのブロックチェーン問い合わせユニット502と、
前記アイデンティティ確認情報に基づいて、前記ユーザに対してアイデンティティ認証を行うためのアイデンティティ認証ユニット503と、
前記アイデンティティ認証ユニットによる前記ユーザの認証に通過した後、前記認可情報に基づいて、前記ユーザによる指定サービスへのアクセスを許可するための認可アクセスユニット504とを備える。
【0060】
ブロックチェーンのトラストフリー化により、認可過程における信頼できる第三者機関の承認が不要となり、同時に、ブロックチェーンの分散化により、個人や組織がユーザの関連情報を改ざんすることが不可能になることで、認可のセキュリティと信頼性が確保される。
【0061】
前記ブロックチェーン問い合わせユニット502は、
前記ユーザアイデンティティ情報に基づいて前記ブロックチェーンにおいて前記ユーザのアイデンティティ確認情報及び認可情報を記憶した複数のブロックが検出されたとき、前記複数のブロックのうち、最新ブロックから前記ユーザのアイデンティティ確認情報及び認可情報を取得するようにしてもよい。
【0062】
前記アイデンティティ確認情報は、パスワードハッシュ値の暗号文であり、前記ユーザアイデンティティ情報はユーザ名とパスワードハッシュ値を含み、前記ブロックチェーン問い合わせユニット502は、前記アクセスサーバによって、前記ユーザ名を用いて、前記ブロックチェーンにおいて対応したパスワードハッシュ値暗号文及び前記認可情報を検索し、前記アイデンティティ認証ユニット503は、前記パスワードハッシュ値の暗号文を復号して、復号して得た平文が前記ユーザアイデンティティ情報におけるパスワードハッシュ値と一致すると、認証に通過したと決定するようにしてもよい。
【0063】
前記アイデンティティ確認情報はユーザ公開鍵であり、前記アイデンティティ認証ユニット503は、前記ユーザにアイデンティティ確認を提供するように指示するための指示情報を前記ユーザ装置に送信し、前記ユーザ装置が前記指示情報に基づいて送信したユーザ秘密鍵で署名した署名情報を受信し、前記ユーザ公開鍵に基づいて前記署名情報に対して署名認証を行い、署名認証に成功すると、アイデンティティ認証に通過したと決定するようにしてもよい。
【0064】
具体的に実施するとき、アクセスサーバはユーザ装置がアクセスすべきネットワーク境界に位置してもよく、ネットワークはインターネットInternet又はローカルエリアネットワークであってもよい。ユーザ装置は、認証に通過した後、ネットワーク、ネットワークのすべてのサービスにアクセスできる。ネットワークサービスを提供するのはクラウドサービスであってもよく、ユーザ装置は、アイデンティティ認証に通過した後、認可範囲内の対応サービスにアクセスし得る。
【0065】
当業者にとって明らかなように、説明の便利さ及び簡素化から、上記説明したアクセスサーバの各ユニットの具体的な作動過程について、前述方法の実施例における対応過程を参照すればよいため、ここで詳細な説明を省略する。
【0066】
さらに、上記アクセスサーバを構成するユニットの分割は、ロジック機能に応じた分割だけであり、実際に実施するときに、別の分割方式を用いてもよい。且つ、各个ユニットの物理的な実現形態も複数種の方式があり、本発明では、それについて限定しない。
【0067】
本発明の実施例はさらに認可サーバ60を提供し、該認可サーバ60はブロックチェーンネットワークにおけるノードであり、
図6に示されるように、該認可サーバ60は、
プロセッサ601、通信インターフェース602、記憶装置603及び通信バス604を備え、前記プロセッサ601、前記通信インターフェース602及び前記記憶装置603は前記通信バス604を介して相互通信を行う。
プロセッサ601はマルチコア中央プロセッサCPU、又は特定用途向け集積回路ASIC(Application Specific Integrated Circuit)、又は発明の実施例を実施するように設置される1つ又は複数の集積回路としてもよい。
【0068】
記憶装置603は、コンピュータオペレーションコマンドとネットワークフロー図を含むプログラムコードを格納する。記憶装置603は高速RAM記憶装置を備えてもよく、さらに不揮発性メモリ(non−volatile memory)、たとえば少なくとも1つのディスク記憶装置を含んでもよい。
【0069】
前記通信インターフェース602は、これら装置間の接続通信を実施する。
【0070】
前記プロセッサ601はプログラムコードを実行し、前記プログラムコードは、実行されると、
ユーザ装置が送信した、ユーザに対してアイデンティティ認証を行うためのアイデンティティ確認情報を含む登録要求メッセージを受信する方法と、
前記ユーザがアクセス可能なサービスを指示するための認可情報を前記ユーザに割り当てる方法と、
前記アイデンティティ確認情報及び前記認可情報をブロックチェーンのブロックに書き込む方法とを実現する。
【0071】
前記アイデンティティ確認情報は、パスワードハッシュ値の暗号文、又は、ユーザ公開鍵であるようにしてもよい。
【0072】
前記方法は、
前記アイデンティティ確認情報に対応した認可情報を更新するための更新メッセージを受信し、
前記アイデンティティ確認情報及び更新後の認可情報を前記ブロックチェーンのブロックに書き込むことを含むようにしてもよい。
【0073】
上記認可サーバによれば、該認可サーバは、ユーザのアイデンティティ情報及び認可情報をブロックチェーンに書き込み、これにより、アクセスサーバは、ユーザ装置が送信したアクセス要求メッセージを受信したとき、ブロックチェーンに記憶されたアイデンティティ確認情報を用いてアクセスに対してアイデンティティ認証を行い、認証に通過した後、認可情報に基づいてユーザによる指定サービスへのアクセスを許可することができる。ブロックチェーンのトラストフリー化により、認可過程における信頼できる第三者機関の承認が不要となり、同時に、ブロックチェーンの分散化により、個人や組織がユーザの関連情報を改ざんすることが不可能になることで、認可のセキュリティと信頼性が確保される。
【0074】
本発明の実施例はさらにアクセスサーバ70を提供し、該アクセスサーバはブロックチェーンネットワークにおけるノードであり、
図7に示されるように、該アクセスサーバ70は、
プロセッサ(processor)701、通信インターフェース(Communications Interface)702、記憶装置(memory)703及び通信バス704を備え、前記プロセッサ701、前記通信インターフェース702及び前記記憶装置703は前記通信バス704を介して相互通信を行う。
【0075】
プロセッサ701は、マルチコア中央プロセッサCPU、又は特定用途向け集積回路ASIC(Application Specific Integrated Circuit)、又は本発明の実施例を実施するように配置される1つ又は複数の集積回路としてもよい。
【0076】
記憶装置703は、コンピュータオペレーションコマンドとネットワークフロー図を含むプログラムコードを格納する。記憶装置703は、高速RAM記憶装置を備えてもよく、さらに不揮発性メモリ(non−volatile memory)、たとえば少なくとも1つのディスク記憶装置を含んでもよい。
【0077】
前記通信インターフェース702は、これら装置間の接続通信を実施する。
【0078】
前記プロセッサ701はプログラムコードを実行し、前記プログラムコードは、実行されると、
ユーザ装置が送信した、ユーザアイデンティティ情報を含むアクセス要求メッセージを受信する方法と、
前記ユーザアイデンティティ情報に基づいて、ブロックチェーンにおいてユーザのアイデンティティ確認情報及び認可情報を問い合わせる方法と、
前記アイデンティティ確認情報に基づいて、前記ユーザに対してアイデンティティ認証を行う方法と、
認証に通過した後、前記認可情報に基づいて、前記ユーザによる指定サービスへのアクセスを許可する方法とを実現する。
【0079】
前記ユーザアイデンティティ情報に基づいて、ブロックチェーンにおいてユーザのアイデンティティ確認情報及び認可情報を問い合わせる前記方法は、
前記ユーザアイデンティティ情報に基づいて、前記ブロックチェーンにおいて前記ユーザのアイデンティティ確認情報及び認可情報を記憶した複数のブロックが検出されたとき、前記複数のブロックのうち、最新ブロックから前記ユーザのアイデンティティ確認情報及び認可情報を取得することを含むようにしてもよい。
【0080】
前記アイデンティティ確認情報はパスワードハッシュ値の暗号文であり、前記ユーザアイデンティティ情報はパスワードを含み、前記アイデンティティ確認情報に基づいて、前記ユーザに対してアイデンティティ認証を行う前記方法は、
前記ユーザアイデンティティ情報のハッシュ値を計算するステップと、
前記ユーザアイデンティティ情報を復号して、復号して得られた平文が前記ユーザアイデンティティ情報の平文と一致すると、認証に通過したと決定するステップとを含むようにしてもよい。
【0081】
前記アイデンティティ確認情報はユーザ公開鍵であり、前記アイデンティティ確認情報に基づいて、前記ユーザに対してアイデンティティ認証を行う前記方法は、
前記ユーザにアイデンティティ確認を提供するように指示するための指示情報を前記ユーザ装置に送信するステップと、
前記ユーザ装置が前記指示情報に基づいて送信したユーザ秘密鍵で署名した署名情報を受信するステップと、
前記ユーザ公開鍵に基づいて前記署名情報に対して署名認証を行い、署名認証に成功すると、アイデンティティ認証に通過したと決定するステップとを含むようにしてもよい。
【0082】
本発明の実施例はさらに認可システム80を提供し、前記認可システム80は認可サーバ60とアクセスサーバ70を含み、前記認可サーバ60はブロックチェーンネットワークにおけるノードであり、前記アクセスサーバ70はブロックチェーンネットワークにおけるノードであり、前記アクセスサーバ50はネットワークサービスを提供するサーバに接続される。前記認可サーバ60は、具体的には、上記
図6の説明を参照すればよいため、ここで詳細な説明を省略する。前記アクセスサーバ70は、具体的には、上記
図7の説明を参照すればよいため、ここで詳細な説明を省略する。
【0083】
なお、本願による複数の実施例では、開示されているシステム、装置及び方法は、ほかの形態によっても実現できる。たとえば、以上に説明した装置の実施例は例示的なものに過ぎず、たとえば、前記ユニットの分割は、ロジック機能に応じた分割だけであり、実際に実施されるときに、別の分割方式を用いてもよく、たとえば複数のユニット又はモジュールが、別のシステムに結合又は集積されてもよく、又は一部の特徴を無視にしたり又は実行しないようにしてもよい。また、表示又は検討した相互結合又は直接結合又は通信接続は一部のインターフェース、装置又はユニットを介した間接的な結合又は通信接続であってもよく、電気的、機械的又はほかの形としてもよい。
【0084】
分離した部材として説明された前記ユニットは物理的に分離してもよく、物理的に分離しなくてもよく、ユニットとして表示される部材は物理ユニットであってもよく、物理ユニットでなくてもよく、すなわち、1つの位置に位置してもよく、又は複数のネットワークユニットに分布してもよい。必要に応じて、そのうちの一部又はすべてのユニットを用いて本実施例の形態を実現できる。
【0085】
さらに、本発明の各実施例では、各機能ユニットが1つの処理ユニットに集積されてもよく、各ユニットが独立して物理的に存在してもよく、2つ又は2つ以上のユニットが1つのユニットに集積されてもよい。上記集積されたユニットはハードウェアの形態として実現されてもよいし、ハードウェアとソフトウェア機能ユニットを組み合わせた形態として実現されてもよい。
【0086】
上記はソフトウェア機能ユニットの形態として実現された集積ユニットは、1つのコンピュータリーダブル記憶媒体に記憶してもよい。上記ソフトウェア機能ユニットは、記憶媒体に記憶されて、コンピュータ装置(パーソナルコンピュータ、サーバ、又はネットワーク装置等)に本発明の各実施例の前記方法の一部のステップを実行させるいくつかのコマンドを含む。前述記憶媒体には、USBメモリ、モバイルハードディスク、ランダムアクセスメモリ(Random Access Memory、 RAM)、磁気ディスク又は光ディスクなどのデータ記憶可能な各種媒体が含まれる。
【0087】
以上は、本発明の実施形態に過ぎず、本発明の保護範囲はそれらに制限されず、当業者であれば、本発明で開示されている技術範囲を逸脱せずに容易に想到し得る変化又は置換はすべて本発明の保護範囲に含まれる。従って、本発明の保護範囲は特許請求の範囲による保護範囲を基準にする。
従来の認可技術のセキュリティが低い技術的問題を解決するための登録・認可方法、装置及びシステムを提供する。前記方法は、認可サーバに適用され、前記認可サーバは、ブロックチェーンネットワークにおけるノードであり、それぞれ認可情報を記憶するための複数ブロックからなるブロックチェーンを記憶しており、前記方法は、ユーザ装置が送信した、ユーザに対してアイデンティティ認証を行うためのアイデンティティ確認情報を含む登録要求メッセージを受信するステップと、前記ユーザがアクセス可能なサービスを指示するための認可情報を前記ユーザに割り当てるステップと、前記認可サーバによって前記アイデンティティ確認情報及び前記認可情報をブロックチェーンのブロックに書き込むステップとを含む。