(57)【要約】  本発明は、ブロックチェーンに基づくアイデンティティ認証方法、装置、ノード及びシステムを開示し、セキュリティ技術分野に関する。該方法は、認証先ノードが送信した、認証先ノードとアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を受信するステップと、これら情報、及びアイデンティティ証明開示ノードによる認証先ノードのアイデンティティ情報のデジタル署名がブロックチェーンに書き込まれていると確認するとき、アイデンティティ証明開示ノードの公開鍵に基づいて、該デジタル署名を検証するステップと、該デジタル署名が検証に通過した後、認証先が、認証先ノードのアイデンティティ情報に基づいて取得した認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証するステップと、認証先が認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、認証先ノードがアイデンティティ認証に通過したと決定するステップとを含む。
2019519987.tif 000002
【特許請求の範囲】
【請求項１】
認証元ノードに適用される、ブロックチェーンに基づくアイデンティティ認証方法であって、
認証先ノードが送信した、前記認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を受信するステップと、
前記認証先ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードのアイデンティティ情報、及び前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認したとき、前記アイデンティティ証明開示ノードのアイデンティティ情報に基づいて取得した前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証するステップと、
前記第１デジタル署名が検証に通過した後、前記認証先が、前記認証先ノードのアイデンティティ情報に基づいて取得した前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証するステップと、
前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、前記認証先ノードがアイデンティティ認証に通過したと決定するステップとを含む、ことを特徴とするブロックチェーンに基づくアイデンティティ認証方法。
【請求項２】
前記第１デジタル署名が検証に通過した後、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証する前記ステップは、
前記第１デジタル署名が検証に通過した後、前記認証先ノードに検証情報を送信するステップと、
前記認証先ノードが、前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って得られた第２デジタル署名を受信するステップと、
前記認証先ノードの公開鍵に基づいて、前記第２デジタル署名を検証するステップと、
前記第２デジタル署名が検証に通過したとき、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するステップとを含む、ことを特徴とする請求項１に記載の方法。
【請求項３】
前記第１デジタル署名が検証に通過した後、前記認証先に対して、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを確認する前記ステップは、
前記認証先ノードが前記認証先ノードと前記認証元ノードに予め設定されている所定の情報生成規則に基づいて生成して送信する検証情報、及び認証先ノードが前記認証先ノードの秘密鍵に基づいて前記検証情報に対してデジタル署名を行って得られた第３デジタル署名を受信するステップと、
前記検証情報が前記情報生成規則に従って生成したものであるか否かを検証するステップと、
前記検証情報が前記情報生成規則に従って生成したものである場合、前記認証先ノードの公開鍵に基づいて、前記第３デジタル署名を検証するステップと、
前記第３デジタル署名が検証に通過したとき、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するステップとを含む、ことを特徴とする請求項１に記載の方法。
【請求項４】
前記アイデンティティ証明開示ノードにアイデンティティ証明開示親ノードが存在するとき、前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証する前記ステップは、
前記アイデンティティ証明親ノードが、前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名得を行って得られた第４デジタル署名を、前記ブロックチェーンから取得するステップと、
前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明開示親ノードの公開鍵に基づいて、前記第４デジタル署名を検証するステップと、
前記第４デジタル署名が検証に通過した後、前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証するステップとを含む、ことを特徴とする請求項１に記載の方法。
【請求項５】
前記第１デジタル署名が検証に通過した後、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証する前に、さらに、
前記第１デジタル署名が検証に通過した後、前記アイデンティティ証明親ノードが、前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名得を行って得られた第４デジタル署名を、前記ブロックチェーンから取得するステップと、
前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明開示親ノードの公開鍵に基づいて、前記第４デジタル署名を検証するステップと、
前記第４デジタル署名が検証に通過した後、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証するステップとを含む、ことを特徴とする請求項１に記載の方法。
【請求項６】
前記認証先ノードのアイデンティティ情報は前記認証先ノードのアカウントアドレス又は前記認証先ノードの公開鍵を含み、前記認証先ノードのアカウントアドレスは、前記認証先ノードの公開鍵に基づいて取得したものであり、前記アイデンティティ証明開示ノードのアイデンティティ情報は、前記アイデンティティ証明開示ノードのアカウントアドレス又は前記アイデンティティ証明開示ノードの公開鍵を含み、前記アイデンティティ証明開示ノードのアカウントアドレスは、前記アイデンティティ証明開示ノードの公開鍵に基づいて取得したものである、ことを特徴とする請求項１から５のいずれか一項に記載の方法。
【請求項７】
認証先ノードに適用される、ブロックチェーンに基づくアイデンティティ認証方法であって、
前記認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を認証元に送信するステップと、
前記認証元ノードが、前記認証先ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認し、且つ前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードと、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かの検証を行うステップと、
前記認証元ノードが、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、前記認証先ノードはアイデンティティ認証に通過するステップとを含む、ことを特徴とするブロックチェーンに基づくアイデンティティ認証方法。
【請求項８】
前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードと、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かの検証を行う前記ステップは、
前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードが送信する検証情報を受信するステップと、
前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って第２デジタル署名を得るステップと、
前記認証元ノードに前記第２デジタル署名を送信し、前記第２デジタル署名が前記認証元による検証に通過したとき、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するステップとを含む、ことを特徴とする請求項７に記載の方法。
【請求項９】
前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードと、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かの検証を行う前記ステップは、
前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証先ノードと前記認証元ノードに予め設定されている所定の情報生成規則に従って検証情報を生成するステップと、
前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って第３デジタル署名を得るステップと、
前記認証元ノードに前記検証情報及び前記第３デジタル署名を送信するステップと、
前記認証元ノードが、前記検証情報が前記情報生成規則に従って生成したものであると確認し、且つ前記認証元ノードが前記認証先ノードの公開鍵に基づいて前記第３デジタル署名に対して行う検証が通過したとき、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するステップとを含む、ことを特徴とする請求項７に記載の方法。
【請求項１０】
前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報と前記第１デジタル署名を前記ブロックチェーンに書き込む方法は、
前記アイデンティティ証明開示ノードが前記ブロックチェーンにおいて前記認証先ノードのアイデンティティ情報を確認するための前記認証先ノードのアイデンティティ情報を含むアイデンティティ証明要求を前記ブロックチェーンに書き込み、且つ、前記アイデンティティ証明開示ノードの秘密鍵に基づいて、前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って前記第１デジタル署名を得て、前記第１デジタル署名を前記ブロックチェーンに書き込むステップを含む、ことを特徴とする請求項７に記載の方法。
【請求項１１】
前記アイデンティティ証明開示ノードが、前記ブロックチェーンに前記第１デジタル署名を失効させるための失効証明を書き込むと、前記認証先ノードの前記第１デジタル署名が失効され、
前記失効証明には、前記第１デジタル署名に対する失効指示、及び前記アイデンティティ証明開示ノードの秘密鍵によって前記失効指示に対してデジタル署名を行って得られた第５デジタル署名が含まれる、ことを特徴とする請求項７に記載の方法。
【請求項１２】
前記認証先ノードのアイデンティティ情報は前記認証先ノードのアカウントアドレス又は前記認証先ノードの公開鍵を含み、前記認証先ノードのアカウントアドレスは、前記認証先ノードの公開鍵に基づいて取得したものであり、前記アイデンティティ証明開示ノードのアイデンティティ情報は、前記アイデンティティ証明開示ノードのアカウントアドレス又は前記アイデンティティ証明開示ノードの公開鍵を含み、前記アイデンティティ証明開示ノードのアカウントアドレスは、前記アイデンティティ証明開示ノードの公開鍵に基づいて取得したものである、ことを特徴とする請求項７から１１のいずれか一項に記載の方法。
【請求項１３】
認証元ノードに適用される、ブロックチェーンに基づくアイデンティティ認証装置であって、
認証先ノードが送信した、前記認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を受信するための受信モジュールと、
前記認証先ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードのアイデンティティ情報、及び前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認したとき、前記アイデンティティ証明開示ノードのアイデンティティ情報に基づいて取得した前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証するための第１検証モジュールと、
前記第１デジタル署名が検証に通過した後、前記認証先が、前記認証先ノードのアイデンティティ情報に基づいて取得した前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証するための第２検証モジュールと、
前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、前記認証先ノードがアイデンティティ認証に通過したと決定するための決定モジュールとを備える、ことを特徴とするブロックチェーンに基づくアイデンティティ認証装置。
【請求項１４】
前記第２検証モジュールは、
前記第１デジタル署名が検証に通過した後、前記認証先ノードに検証情報を送信するための送信サブモジュールと、
前記認証先ノードが、前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って得られた第２デジタル署名を受信するための受信サブモジュールと、
前記認証先ノードの公開鍵に基づいて、前記第２デジタル署名を検証するための検証サブモジュールと、
前記第２デジタル署名が検証に通過したとき、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するための確認サブモジュールとを備える、ことを特徴とする請求項１３に記載の装置。
【請求項１５】
前記第２検証モジュールは、
前記認証先ノードが前記認証先ノードと前記認証元ノードに予め設定されている所定の情報生成規則に基づいて生成して送信する検証情報、及び認証先ノードが前記認証先ノードの秘密鍵に基づいて前記検証情報に対してデジタル署名を行って得られた第３デジタル署名を受信するための受信サブモジュールと、
前記検証情報が前記情報生成規則に従って生成したものであるか否かを検証するための情報検証サブモジュールと、
前記検証情報が前記情報生成規則に従って生成したものである場合、前記認証先ノードの公開鍵に基づいて、前記第３デジタル署名を検証するための署名検証サブモジュールと、
前記第３デジタル署名が検証に通過したとき、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するための確認サブモジュールとを備える、ことを特徴とする請求項１３に記載の装置。
【請求項１６】
前記アイデンティティ証明開示ノードにアイデンティティ証明開示親ノードが存在するとき、前記第１検証モジュールは、
前記アイデンティティ証明親ノードが、前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名得を行って得られた第４デジタル署名を、前記ブロックチェーンから取得し、
前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明開示親ノードの公開鍵に基づいて、前記第４デジタル署名を検証し、
前記第４デジタル署名が検証に通過した後、前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証する、ことを特徴とする請求項１３に記載の装置。
【請求項１７】
前記第１検証モジュールは、
前記第１デジタル署名が検証に通過した後、前記アイデンティティ証明親ノードが、前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名得を行って得られた第４デジタル署名を、前記ブロックチェーンから取得し、
前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明開示親ノードの公開鍵に基づいて、前記第４デジタル署名を検証し、
前記送信モジュールはさらに、前記第４デジタル署名が検証に通過した後、前記第２検証モジュールが、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証する、ことを特徴とする請求項１３に記載の装置。
【請求項１８】
前記認証先ノードのアイデンティティ情報は前記認証先ノードのアカウントアドレス又は前記認証先ノードの公開鍵を含み、前記認証先ノードのアカウントアドレスは、前記認証先ノードの公開鍵に基づいて取得したものであり、前記アイデンティティ証明開示ノードのアイデンティティ情報は、前記アイデンティティ証明開示ノードのアカウントアドレス又は前記アイデンティティ証明開示ノードの公開鍵を含み、前記アイデンティティ証明開示ノードのアカウントアドレスは、前記アイデンティティ証明開示ノードの公開鍵に基づいて取得したものである、ことを特徴とする請求項１３から１７のいずれか一項に記載の装置。
【請求項１９】
認証先ノードに適用される、ブロックチェーンに基づくアイデンティティ認証装置であって、
前記認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を認証元に送信するための認証要求モジュールと、
前記認証元ノードが、前記認証先ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認し、且つ前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードと、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かの検証を行い、前記認証元ノードが、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、前記認証先ノードはアイデンティティ認証に通過するための検証モジュールとを備える、ことを特徴とするブロックチェーンに基づくアイデンティティ認証装置。
【請求項２０】
前記検証モジュールは、
前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードが送信する検証情報を受信するための受信サブモジュールと、
前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って第２デジタル署名を得るための署名サブモジュールと、
前記認証元ノードに前記第２デジタル署名を送信し、前記第２デジタル署名が前記認証元による検証に通過したとき、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するための送信サブモジュールとを備える、ことを特徴とする請求項１９に記載の装置。
【請求項２１】
前記検証モジュールは、
前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証先ノードと前記認証元ノードに予め設定されている所定の情報生成規則に従って検証情報を生成するための情報生成サブモジュールと、
前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って第３デジタル署名を得るための署名サブモジュールと、
前記認証元ノードに前記検証情報及び前記第３デジタル署名を送信し、前記認証元ノードが、前記検証情報が前記情報生成規則に従って生成したものであると確認し、且つ前記認証元ノードが前記認証先ノードの公開鍵に基づいて前記第３デジタル署名に対して行う検証が通過したとき、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するための送信サブモジュールとを備える、ことを特徴とする請求項１９に記載の装置。
【請求項２２】
前記アイデンティティ証明開示ノードが前記ブロックチェーンにおいて前記認証先ノードのアイデンティティ情報を確認するための前記認証先ノードのアイデンティティ情報を含むアイデンティティ証明要求を前記ブロックチェーンに書き込み、且つ、前記アイデンティティ証明開示ノードの秘密鍵に基づいて、前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って前記第１デジタル署名を得て、前記第１デジタル署名を前記ブロックチェーンに書き込むアイデンティティ証明要求モジュールをさらに備える、ことを特徴とする請求項１９に記載の装置。
【請求項２３】
前記アイデンティティ証明開示ノードが、前記ブロックチェーンに前記第１デジタル署名を失効させるための失効証明を書き込むと、前記認証先ノードの前記第１デジタル署名が失効され、前記失効証明には、前記第１デジタル署名に対する失効指示、及び前記アイデンティティ証明開示ノードの秘密鍵によって前記失効指示に対してデジタル署名を行って得られた第５デジタル署名が含まれる、ことを特徴とする請求項１９に記載の装置。
【請求項２４】
前記認証先ノードのアイデンティティ情報は前記認証先ノードのアカウントアドレス又は前記認証先ノードの公開鍵を含み、前記認証先ノードのアカウントアドレスは、前記認証先ノードの公開鍵に基づいて取得したものであり、前記アイデンティティ証明開示ノードのアイデンティティ情報は、前記アイデンティティ証明開示ノードのアカウントアドレス又は前記アイデンティティ証明開示ノードの公開鍵を含み、前記アイデンティティ証明開示ノードのアカウントアドレスは、前記アイデンティティ証明開示ノードの公開鍵に基づいて取得したものである、ことを特徴とする請求項１９から２３のいずれか一項に記載の装置。
【請求項２５】
不揮発性のコンピュータ可読記憶媒体であって、
請求項１から６のいずれか一項に記載の方法を実行するための１つ又は複数のプログラムを含む、ことを特徴とする不揮発性のコンピュータ可読記憶媒体。
【請求項２６】
ユーザノードであって、
請求項２５に記載の不揮発性のコンピュータ可読記憶媒体と、
前記不揮発性のコンピュータ可読記憶媒体におけるプログラムを実行するための１つ又は複数のプロセッサとを備える、ことを特徴とするユーザノード。
【請求項２７】
不揮発性のコンピュータ可読記憶媒体であって、
請求項７から１２のいずれか一項に記載の方法を実行するための１つ又は複数のプログラムを含む、ことを特徴とする不揮発性のコンピュータ可読記憶媒体。
【請求項２８】
ユーザノードであって、
請求項２７に記載の不揮発性のコンピュータ可読記憶媒体と、
前記不揮発性のコンピュータ可読記憶媒体におけるプログラムを実行するための１つ又は複数のプロセッサとを含む、ことを特徴とするユーザノード。
【請求項２９】
アイデンティティ認証システムであって、
ブロックチェーンと、
認証元ノードとしての、少なくとも１つの請求項２６に記載のユーザノードと、
認証先ノードとしての、少なくとも１つの請求項２８に記載のユーザノードと、
少なくとも１つのアイデンティティ証明開示ノードとを含み、
前記ブロックチェーン、前記少なくとも１つの請求項２６に記載のユーザノード、前記少なくとも１つの請求項２８に記載のユーザノード及び前記少なくとも１つのアイデンティティ証明開示ノードは、共通ブロックチェーンネットワークに属する、ことを特徴とするアイデンティティ認証システム。
【請求項３０】
前記少なくとも１つのアイデンティティ証明開示ノードは前記ブロックチェーンに第１ユーザノードのアイデンティティ証明を開示するためのアイデンティティ証明開示ノードであり、前記第１ユーザノードはいずれかのユーザノードであり、
前記アイデンティティ証明開示ノードによる前記ブロックチェーンへの第１ユーザノードのアイデンティティ証明の開示は、前記アイデンティティ証明開示ノードが前記ブロックチェーンにおいて前記第１ユーザノードのアイデンティティ情報を確認し、且つ前記アイデンティティ証明開示ノードの秘密鍵に基づいて、前記第１ユーザノードのアイデンティティ情報に対してデジタル署名を行い、得られたデジタル署名を前記ブロックチェーンに書き込むことを含む、ことを特徴とする請求項２９に記載のシステム。
【請求項３１】
前記少なくとも１つのアイデンティティ証明開示ノードは、前記ブロックチェーンに第１ユーザノードのアイデンティティ証明を開示するためのアイデンティティ証明開示ノードと、前記ブロックチェーンに前記アイデンティティ証明開示ノードのアイデンティティ証明を開示するための、前記アイデンティティ証明開示ノードのアイデンティティ証明開示親ノードとを少なくとも含み、前記第１ユーザノードはいずれかのユーザノードであり、
前記アイデンティティ証明開示ノードによる前記ブロックチェーンへの第１ユーザノードのアイデンティティ証明の開示は、前記アイデンティティ証明開示ノードが前記ブロックチェーンにおいて前記第１ユーザノードのアイデンティティ情報を確認し、且つ前記アイデンティティ証明開示ノードの秘密鍵に基づいて、前記第１ユーザノードのアイデンティティ情報に対してデジタル署名を行い、得られたデジタル署名を前記ブロックチェーンに書き込むことを含み、
前記アイデンティティ証明開示親ノードによる前記ブロックチェーンへの前記アイデンティティ証明開示ノードのアイデンティティ証明の開示は、前記アイデンティティ証明親ノードが、前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名を行い、得られたデジタル署名を前記ブロックチェーンに書き込むことを含む、ことを特徴とする請求項２９に記載のシステム。
【請求項３２】
前記システムは、少なくとも１つのアイデンティティ証明開示ノードと少なくとも１つのユーザノードを含むアイデンティティ証明開示サブシステムを複数含み、
第１アイデンティティ証明開示サブシステムに１つのアイデンティティ証明開示ノードが含まれる場合、前記アイデンティティ証明開示ノードは、前記ブロックチェーンに前記第１アイデンティティ証明開示サブシステムの第１ユーザノードのアイデンティティ証明を開示し、前記第１ユーザノードは前記第１アイデンティティ証明開示サブシステムにおけるいずれかのユーザノードであり、前記第１アイデンティティ証明開示サブシステムは、前記複数のアイデンティティ証明開示サブシステムのうちのいずれかのアイデンティティ証明開示サブシステムであり、
第１アイデンティティ証明開示サブシステムに１つのアイデンティティ証明開示ノードと前記アイデンティティ証明開示ノードのアイデンティティ証明開示親ノードが少なくとも含まれる場合、前記アイデンティティ証明開示ノードは、前記ブロックチェーンに前記第１アイデンティティ証明開示サブシステムの前記第１ユーザノードのアイデンティティ証明を開示し、前記アイデンティティ証明開示親ノードは前記ブロックチェーンに前記アイデンティティ証明開示ノードのアイデンティティ証明を開示し、
前記アイデンティティ証明開示ノードによる前記ブロックチェーンへの前記第１アイデンティティ証明開示サブシステムの前記第１ユーザノードのアイデンティティ証明の開示は、前記アイデンティティ証明開示ノードが前記ブロックチェーンにおいて前記第１ユーザノードのアイデンティティ情報を確認し、且つ前記アイデンティティ証明開示ノードの秘密鍵に基づいて、前記第１ユーザノードのアイデンティティ情報に対してデジタル署名を行い、得られたデジタル署名を前記ブロックチェーンに書き込むことを含み、
前記アイデンティティ証明開示親ノードによる前記ブロックチェーンへの前記アイデンティティ証明開示ノードのアイデンティティ証明の開示は、前記アイデンティティ証明親ノードが、前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名を行い、得られたデジタル署名を前記ブロックチェーンに書き込むことを含む、ことを特徴とする請求項２９に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報技術分野に関し、特にブロックチェーンに基づくアイデンティティ認証方法、装置、ノード及びシステムに関する。
【背景技術】
【０００２】
アイデンティティ認証は、コンピュータおよびネットワークシステムにおける操作者のアイデンティティを確認するための基本的な技術的手段であり、認証対象のアイデンティティが真で有効であるかどうかを判断するプロセスである。ネットワークシステムで一般的に使用されるアイデンティティ認証技術には、ユーザ名／パスワード、Ｋｅｒｂｅｒｏｓ（ネットワーク認証プロトコル）、ＰＫＩ（Ｐｕｂｌｉｃ  Ｋｅｙ  Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ、公開鍵インフラストラクチャー）などがある。これら認証方法には、認証両方がともに信用できる第三者機関が存在し、このような第三者機関により認証両方にアイデンティティ情報を開示して、このアイデンティティ情報を認証両方が相手のアイデンティティを確認する基準とするという共通性がある。
【０００３】
しかしながら、このような上記認証メカニズムは、単一障害点およびセキュリティ上の問題が発生してシステム全体の使用性とセキュリティに影響を与えるという問題が生じやすく、これは、システムにおける１つ又は２つ以上のノード（たとえば認証両方又は信用できる第三者機関）に故障が発生すると、ほかのノードがアイデンティティ認証情報を取得できなくなりやすく、且つ信用できる第三者機関のネットワークでのアドレスが一般的に固定であることから、各種攻撃を受けやすく、信用できる第三者機関自体のセキュリティがシステム全体のセキュリティの基盤であるため、信用できる第三者機関にセキュリティ上の問題が発生すると、システム全体のセキュリティが確保できなくなるためである。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、単一障害点とセキュリティの上の問題によりシステム全体の使用性とセキュリティに影響を与える従来の認証メカニズムの問題を解決するために、ブロックチェーンに基づくアイデンティティ認証方法、装置、ノード及びシステムを提供することである。
【課題を解決するための手段】
【０００５】
上記目的を達成させるために、本発明の実施例の第１態様によれば、本発明は、認証元ノードに適用される、ブロックチェーンに基づくアイデンティティ認証方法であって、
認証先ノードが送信した、前記認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を受信するステップと、
前記認証先ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードのアイデンティティ情報、及び前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認したとき、前記アイデンティティ証明開示ノードのアイデンティティ情報に基づいて取得した前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証するステップと、
前記第１デジタル署名が検証に通過した後、前記認証先が、前記認証先ノードのアイデンティティ情報に基づいて取得した前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証するステップと、
前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、前記認証先ノードがアイデンティティ認証に通過したと決定する、ブロックチェーンに基づくアイデンティティ認証方法を提供する。
【０００６】
あるいは、前記第１デジタル署名が検証に通過した後、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証する前記ステップは、
前記第１デジタル署名が検証に通過した後、前記認証先ノードに検証情報を送信するステップと、
前記認証先ノードが、前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って得られた第２デジタル署名を受信するステップと、
前記認証先ノードの公開鍵に基づいて、前記第２デジタル署名を検証するステップと、
前記第２デジタル署名が検証に通過したとき、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するステップとを含む。
【０００７】
あるいは、前記第１デジタル署名が検証に通過した後、前記認証先に対して、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを確認する前記ステップは、
前記認証先ノードが前記認証先ノードと前記認証元ノードに予め設定されている所定の情報生成規則に基づいて生成して送信する検証情報、及び認証先ノードが前記認証先ノードの秘密鍵に基づいて前記検証情報に対してデジタル署名を行って得られた第３デジタル署名を受信するステップと、
前記検証情報が前記情報生成規則に従って生成したものであるか否かを検証するステップと、
前記検証情報が前記情報生成規則に従って生成したものである場合、前記認証先ノードの公開鍵に基づいて、前記第３デジタル署名を検証するステップと、
前記第３デジタル署名が検証に通過したとき、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するステップとを含む。
【０００８】
あるいは、前記アイデンティティ証明開示ノードにアイデンティティ証明開示親ノードが存在するとき、前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証する前記ステップは、
前記アイデンティティ証明親ノードが、前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名得を行って得られた第４デジタル署名を、前記ブロックチェーンから取得するステップと、
前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明開示親ノードの公開鍵に基づいて、前記第４デジタル署名を検証するステップと、
前記第４デジタル署名が検証に通過した後、前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証するステップとを含む。
【０００９】
あるいは、前記第１デジタル署名が検証に通過した後、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証する前に、さらに、
前記第１デジタル署名が検証に通過した後、前記アイデンティティ証明親ノードが、前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名得を行って得られた第４デジタル署名を、前記ブロックチェーンから取得するステップと、
前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明開示親ノードの公開鍵に基づいて、前記第４デジタル署名を検証するステップと、
前記第４デジタル署名が検証に通過した後、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証するステップとを含む。
【００１０】
あるいは、前記認証先ノードのアイデンティティ情報は前記認証先ノードのアカウントアドレス又は前記認証先ノードの公開鍵を含み、前記認証先ノードのアカウントアドレスは、前記認証先ノードの公開鍵に基づいて取得したものであり、前記アイデンティティ証明開示ノードのアイデンティティ情報は、前記アイデンティティ証明開示ノードのアカウントアドレス又は前記アイデンティティ証明開示ノードの公開鍵を含み、前記アイデンティティ証明開示ノードのアカウントアドレスは、前記アイデンティティ証明開示ノードの公開鍵に基づいて取得したものである。
【００１１】
本発明の実施例の第２態様によれば、認証先ノードに適用される、ブロックチェーンに基づくアイデンティティ認証方法であって、
前記認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を認証元に送信するステップと、
前記認証元ノードが、前記認証先ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認し、且つ前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードと、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かの検証を行うステップと、
前記認証元ノードが、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、前記認証先ノードはアイデンティティ認証に通過するステップとを含む、ブロックチェーンに基づくアイデンティティ認証方法を提供する。
【００１２】
あるいは、前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードと、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かの検証を行う前記ステップは、
前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードが送信する検証情報を受信するステップと、
前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って第２デジタル署名を得るステップと、
前記認証元ノードに前記第２デジタル署名を送信し、前記第２デジタル署名が前記認証元による検証に通過したとき、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するステップとを含む。
【００１３】
あるいは、前記前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードと、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かの検証を行うステップは、
前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証先ノードと前記認証元ノードに予め設定されている所定の情報生成規則に従って検証情報を生成するステップと、
前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って第３デジタル署名を得るステップと、
前記認証元ノードに前記検証情報及び前記第３デジタル署名を送信するステップと、
前記認証元ノードが、前記検証情報が前記情報生成規則に従って生成したものであると確認し、且つ前記認証元ノードが前記認証先ノードの公開鍵に基づいて前記第３デジタル署名に対して行う検証が通過したとき、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するステップとを含む。
【００１４】
あるいは、前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報と前記第１デジタル署名を前記ブロックチェーンに書き込む方法は、
前記ブロックチェーンに、前記アイデンティティ証明開示ノードが前記ブロックチェーンにおいて前記認証先ノードのアイデンティティ情報を確認するための前記認証先ノードのアイデンティティ情報を含むアイデンティティ証明要求を書き込み、且つ、前記アイデンティティ証明開示ノードの秘密鍵に基づいて、前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って前記第１デジタル署名を得て、前記第１デジタル署名を前記ブロックチェーンに書き込むステップを含む。
【００１５】
あるいは、前記アイデンティティ証明開示ノードが、前記ブロックチェーンに前記第１デジタル署名を失効させるための失効証明を書き込むと、前記認証先ノードの前記第１デジタル署名が失効され、前記失効証明には、前記第１デジタル署名に対する失効指示、及び前記アイデンティティ証明開示ノードの秘密鍵によって前記失効指示に対してデジタル署名を行って得られた第５デジタル署名が含まれる。
【００１６】
あるいは、前記認証先ノードのアイデンティティ情報は前記認証先ノードのアカウントアドレス又は前記認証先ノードの公開鍵を含み、前記認証先ノードのアカウントアドレスは、前記認証先ノードの公開鍵に基づいて取得したものであり、前記アイデンティティ証明開示ノードのアイデンティティ情報は、前記アイデンティティ証明開示ノードのアカウントアドレス又は前記アイデンティティ証明開示ノードの公開鍵を含み、前記アイデンティティ証明開示ノードのアカウントアドレスは、前記アイデンティティ証明開示ノードの公開鍵に基づいて取得したものである。
【００１７】
本発明の実施例の第３態様によれば、認証元ノードに適用される、ブロックチェーンに基づくアイデンティティ認証装置であって、
認証先ノードが送信した、前記認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を受信するための受信モジュールと、
前記認証先ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードのアイデンティティ情報、及び前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認したとき、前記アイデンティティ証明開示ノードのアイデンティティ情報に基づいて取得した前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証するための第１検証モジュールと、
前記第１デジタル署名が検証に通過した後、前記認証先ノードのアイデンティティ情報に基づいて取得した前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証するための第２検証モジュールと、
前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、前記認証先ノードがアイデンティティ認証に通過したと決定するための決定モジュールとを備える、ブロックチェーンに基づくアイデンティティ認証装置を提供する。
【００１８】
あるいは、前記第２検証モジュールは、
前記第１デジタル署名が検証に通過した後、前記認証先ノードに検証情報を送信するための送信サブモジュールと、
前記認証先ノードが、前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って得られた第２デジタル署名を受信するための受信サブモジュールと、
前記認証先ノードの公開鍵に基づいて、前記第２デジタル署名を検証するための検証サブモジュールと、
前記第２デジタル署名が検証に通過したとき、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するための確認サブモジュールとを備える。
【００１９】
あるいは、前記第２検証モジュールは、
前記認証先ノードが前記認証先ノードと前記認証元ノードに予め設定されている所定の情報生成規則に基づいて生成して送信する検証情報、及び認証先ノードが前記認証先ノードの秘密鍵に基づいて前記検証情報に対してデジタル署名を行って得られた第３デジタル署名を受信するための受信サブモジュールと、
前記検証情報が前記情報生成規則に従って生成したものであるか否かを検証するための情報検証サブモジュールと、
前記検証情報が前記情報生成規則に従って生成したものである場合、前記認証先ノードの公開鍵に基づいて、前記第３デジタル署名を検証するための署名検証サブモジュールと、
前記第３デジタル署名が検証に通過したとき、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するための確認サブモジュールとを備える。
【００２０】
あるいは、前記アイデンティティ証明開示ノードにアイデンティティ証明開示親ノードが存在するとき、前記第１検証モジュールは、
前記アイデンティティ証明親ノードが、前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名得を行って得られた第４デジタル署名を、前記ブロックチェーンから取得し、
前記アイデンティティ証明開示親ノードの公開鍵に基づいて、前記第４デジタル署名を検証し、
前記第４デジタル署名が検証に通過した後、前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証する。
【００２１】
あるいは、前記第１検証モジュールは、
前記第１デジタル署名が検証に通過した後、前記アイデンティティ証明親ノードが、前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名得を行って得られた第４デジタル署名を、前記ブロックチェーンから取得し、
前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明開示親ノードの公開鍵に基づいて、前記第４デジタル署名を検証し、
前記送信モジュールはさらに、前記第４デジタル署名が検証に通過した後、前記第２検証モジュールが、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証する。
【００２２】
あるいは、前記認証先ノードのアイデンティティ情報は前記認証先ノードのアカウントアドレス又は前記認証先ノードの公開鍵を含み、前記認証先ノードのアカウントアドレスは、前記認証先ノードの公開鍵に基づいて取得したものであり、前記アイデンティティ証明開示ノードのアイデンティティ情報は、前記アイデンティティ証明開示ノードのアカウントアドレス又は前記アイデンティティ証明開示ノードの公開鍵を含み、前記アイデンティティ証明開示ノードのアカウントアドレスは、前記アイデンティティ証明開示ノードの公開鍵に基づいて取得したものである。
【００２３】
本発明の実施例の第４態様によれば、認証先ノードに適用される、ブロックチェーンに基づくアイデンティティ認証装置であって、
前記認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を認証元に送信するための認証要求モジュールと、
前記認証元ノードが、前記認証先ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認し、且つ前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードと、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かの検証を行い、前記認証元ノードが、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、前記認証先ノードはアイデンティティ認証に通過するための検証モジュールとを備える、ブロックチェーンに基づくアイデンティティ認証装置を提供する。
【００２４】
あるいは、前記検証モジュールは、
前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードが送信する検証情報を受信するための受信サブモジュールと、
前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って第２デジタル署名を得るための署名サブモジュールと、
前記認証元ノードに前記第２デジタル署名を送信し、前記第２デジタル署名が前記認証元による検証に通過したとき、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するための送信サブモジュールとを備える。
【００２５】
あるいは、前記検証モジュールは、
前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証先ノードと前記認証元ノードに予め設定されている所定の情報生成規則に従って検証情報を生成するための情報生成サブモジュールと、
前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って第３デジタル署名を得るための署名サブモジュールと、
前記認証元ノードに前記検証情報及び前記第３デジタル署名を送信し、前記認証元ノードが、前記検証情報が前記情報生成規則に従って生成したものであると確認し、且つ前記認証元ノードが前記認証先ノードの公開鍵に基づいて前記第３デジタル署名に対して行う検証が通過したとき、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するための送信サブモジュールとを備える。
【００２６】
あるいは、前記装置はさらに、
前記ブロックチェーンに、前記アイデンティティ証明開示ノードが前記ブロックチェーンにおいて前記認証先ノードのアイデンティティ情報を確認するための前記認証先ノードのアイデンティティ情報を含むアイデンティティ証明要求を書き込み、且つ、前記アイデンティティ証明開示ノードの秘密鍵に基づいて、前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って前記第１デジタル署名を得て、前記第１デジタル署名を前記ブロックチェーンに書き込むためのアイデンティティ証明要求モジュールをさらに備える。
【００２７】
あるいは、前記アイデンティティ証明開示ノードが、前記ブロックチェーンに前記第１デジタル署名を失効させるための失効証明を書き込むと、前記認証先ノードの前記第１デジタル署名が失効され、前記失効証明には、前記第１デジタル署名に対する失効指示、及び前記アイデンティティ証明開示ノードの秘密鍵によって前記失効指示に対してデジタル署名を行って得られた第５デジタル署名が含まれる。
【００２８】
あるいは、前記認証先ノードのアイデンティティ情報は前記認証先ノードのアカウントアドレス又は前記認証先ノードの公開鍵を含み、前記認証先ノードのアカウントアドレスは、前記認証先ノードの公開鍵に基づいて取得したものであり、前記アイデンティティ証明開示ノードのアイデンティティ情報は、前記アイデンティティ証明開示ノードのアカウントアドレス又は前記アイデンティティ証明開示ノードの公開鍵を含み、前記アイデンティティ証明開示ノードのアカウントアドレスは、前記アイデンティティ証明開示ノードの公開鍵に基づいて取得したものである。
【００２９】
本発明の実施例の第５態様によれば、第１態様に記載の方法に用いられる１つ又は複数のプログラムを含む不揮発性のコンピュータ可読記憶媒体を提供する。
【００３０】
本発明の実施例の第６態様によれば、
第５態様に記載の不揮発性のコンピュータ可読記憶媒体と、
前記不揮発性のコンピュータ可読記憶媒体におけるプログラムを実行するための１つ又は複数のプロセッサとを含むユーザノードを提供する。
【００３１】
本発明の実施例の第７態様によれば、第２態様に記載の方法に用いられる１つ又は複数のプログラムを含む不揮発性のコンピュータ可読記憶媒体を提供する。
【００３２】
本発明の実施例の第８態様によれば、
第７態様に記載の不揮発性のコンピュータ可読記憶媒体と、
前記不揮発性のコンピュータ可読記憶媒体におけるプログラムを実行するための１つ又は複数のプロセッサとを含むユーザノードを提供する。
【００３３】
本発明の実施例の第９態様によれば、
ブロックチェーンと、
認証元ノードとしての少なくとも１つの第６態様に記載のユーザノードと、
認証先ノードとしての少なくとも１つの第８態様に記載のユーザノードと、
少なくとも１つのアイデンティティ証明開示ノードとを含むアイデンティティ認証システムを提供する。
【００３４】
前記ブロックチェーン、前記少なくとも１つの第６態様に記載のユーザノード、前記少なくとも１つの第８態様に記載のユーザノード及び前記少なくとも１つのアイデンティティ証明開示ノードは共通ブロックチェーンネットワークに属する。
【００３５】
あるいは、前記少なくとも１つのアイデンティティ証明開示ノードは、前記アイデンティティ証明開示ノード前記ブロックチェーンに第１ユーザノードのアイデンティティ証明を開示するためのアイデンティティ証明開示ノードであり、前記第１ユーザノードはいずれかのユーザノードであり、
前記アイデンティティ証明開示ノードによる前記ブロックチェーンへの第１ユーザノードのアイデンティティ証明の開示は、前記アイデンティティ証明開示ノードが前記ブロックチェーンにおいて前記第１ユーザノードのアイデンティティ情報を確認し、且つ前記アイデンティティ証明開示ノードの秘密鍵に基づいて、前記第１ユーザノードのアイデンティティ情報に対してデジタル署名を行い、得られたデジタル署名を前記ブロックチェーンに書き込むことを含む。
【００３６】
あるいは、前記少なくとも１つのアイデンティティ証明開示ノードは、前記ブロックチェーンに第１ユーザノードのアイデンティティ証明を開示するためのアイデンティティ証明開示ノードと前記ブロックチェーンに前記アイデンティティ証明開示ノードのアイデンティティ証明を開示するための前記アイデンティティ証明開示ノードのアイデンティティ証明開示親ノードとを少なくとも含み、前記第１ユーザノードはいずれかのユーザノードであり、
前記アイデンティティ証明開示ノードによる前記ブロックチェーンへの第１ユーザノードのアイデンティティ証明の開示は、前記アイデンティティ証明開示ノードが前記ブロックチェーンにおいて前記第１ユーザノードのアイデンティティ情報を確認し、且つ前記アイデンティティ証明開示ノードの秘密鍵に基づいて、前記第１ユーザノードのアイデンティティ情報に対してデジタル署名を行い、得られたデジタル署名を前記ブロックチェーンに書き込むことを含み、
前記アイデンティティ証明開示親ノードによる前記ブロックチェーンへの前記アイデンティティ証明開示ノードのアイデンティティ証明の開示は、前記アイデンティティ証明親ノードが、前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名を行い、得られたデジタル署名を前記ブロックチェーンに書き込むことを含む。
【００３７】
あるいは、前記システムは、少なくとも１つのアイデンティティ証明開示ノードと少なくとも１つのユーザノードを含むアイデンティティ証明開示サブシステムを複数含み、
第１アイデンティティ証明開示サブシステムに１つのアイデンティティ証明開示ノードが含まれる場合、前記アイデンティティ証明開示ノードは、前記ブロックチェーンに前記第１アイデンティティ証明開示サブシステムの第１ユーザノードのアイデンティティ証明を開示し、前記第１ユーザノードは前記第１アイデンティティ証明開示サブシステムにおけるいずれかのユーザノードであり、前記第１アイデンティティ証明開示サブシステムは、前記複数のアイデンティティ証明開示サブシステムのうちのいずれかのアイデンティティ証明開示サブシステムであり、
第１アイデンティティ証明開示サブシステムに１つのアイデンティティ証明開示ノードと前記アイデンティティ証明開示ノードのアイデンティティ証明開示親ノードが少なくとも含まれる場合、前記アイデンティティ証明開示ノードは、前記ブロックチェーンに前記第１アイデンティティ証明開示サブシステムの前記第１ユーザノードのアイデンティティ証明を開示し、前記アイデンティティ証明開示親ノードは前記ブロックチェーンに前記アイデンティティ証明開示ノードのアイデンティティ証明を開示し、
前記アイデンティティ証明開示ノードによる前記ブロックチェーンへの前記第１アイデンティティ証明開示サブシステムの前記第１ユーザノードのアイデンティティ証明の開示は、前記アイデンティティ証明開示ノードが前記ブロックチェーンにおいて前記第１ユーザノードのアイデンティティ情報を確認し、且つ前記アイデンティティ証明開示ノードの秘密鍵に基づいて、前記第１ユーザノードのアイデンティティ情報に対してデジタル署名を行い、得られたデジタル署名を前記ブロックチェーンに書き込むことを含み、
前記アイデンティティ証明開示親ノードによる前記ブロックチェーンへの前記アイデンティティ証明開示ノードのアイデンティティ証明の開示は、前記アイデンティティ証明親ノードが、前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名を行い、得られたデジタル署名を前記ブロックチェーンに書き込むことを含む。
【発明の効果】
【００３８】
上記技術案によれば、認証先のアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報のいずれもブロックチェーンに記録されているため、１つ又は２つ以上のノードの故障によりアイデンティティ情報を取得できないことがなく、従って、単一障害点によるシステム全体の影響を防止することができ、また、ブロックチェーンネットワークにおいて、アイデンティティ証明開示ノードの秘密鍵が設定されたノードであれば、アイデンティティ認証開示ノードとして作動するため、アイデンティティ証明開示ノードは固定された特定のノードではなく、攻撃者がアイデンティティ認証情報配信ノードを特定できず、それによりアイデンティティ認証ノードを攻撃することができないことから、さらにシステム全体のセキュリティが確保され、単一障害点の問題とセキュリティ上の問題によるシステム全体の使用性とセキュリティへの影響の問題を回避し、システム全体の使用性とセキュリティを確保することができる。
【００３９】
本発明のほかの特徴及び利点については、以下の実施形態の部分にて詳細に説明する。
【図面の簡単な説明】
【００４０】
図面は、本発明を更に理解するために提供されるものであり、明細書の一部を構成し、以下の実施形態とともに本発明を解釈するために用いられるが、本発明を制限するものではない。
【図１】一実施例による、ブロックチェーンに基づくアイデンティティ認証方法のフローチャートである。
【図２】一実施例による、ブロックチェーンに基づくアイデンティティ認証方法のフローチャートである。
【図３】一実施例による、別のブロックチェーンに基づくアイデンティティ認証方法のフローチャートである。
【図４】図３の実施例による、秘密鍵認証方法のフローチャートである。
【図５】図３の実施例による、別の秘密鍵認証方法のフローチャートである。
【図６】一実施例による、ブロックチェーンに基づくアイデンティティ認証装置のブロック図である。
【図７】図６の実施例による、第２検証モジューのブロック図である。
【図８】図６の実施例による、別の第２検証モジュールのブロック図である。
【図９】一実施例による、別のブロックチェーンに基づくアイデンティティ認証装置のブロック図である。
【図１０】図９の実施例による、検証モジュールのブロック図である。
【図１１】図９の実施例による、別の検証モジュールのブロック図である。
【図１２】一実施例による、別のブロックチェーンに基づくアイデンティティ認証装置のブロック図である。
【図１３】一実施例による、アイデンティティ認証システムの構造ブロック図である。
【図１４ａ】一実施例による、別のアイデンティティ認証システムの構造のブロック図である。
【図１４ｂ】一実施例による、別のアイデンティティ認証システムの構造ブロック図である。
【図１５】一実施例による、別のアイデンティティ認証システムの構造ブロック図である。
【発明を実施するための形態】
【００４１】
以下、図面を参照しながら、本発明の実施形態について詳細に説明する。なお、ここで説明する実施形態は、本発明を説明して解釈するためのものに過ぎず、本発明を制限するものではない。
【００４２】
本発明によるブロックチェーンに基づくアイデンティティ認証方法を説明する前、本発明の各実施例に係る応用シナリオを説明する。
【００４３】
まず、ブロックチェーンを説明する。ブロックチェーンは、ブロックチェーンネットワークにおけるすべてのノードがともにメンテナンスに関与する非中央集権性化分散型データベースシステムであり、暗号化学方法で生じた一連のデータブロックからなり、各データブロックはブロックチェーンにおける１つのブロックとなる。発生の順番に応じて、ブロックは規則的に連結されて、データチェーンを構成し、ブロックチェーンと呼ばれる。以下、ブロックチェーンネットワークの一部の概念を説明する。
【００４４】
ブロックチェーンネットワークにおけるノードはブロックチェーンノードとも呼ばれ、ブロックチェーンネットワークはＰ２Ｐ（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ、ピア・ツー・ピア）ネットワークに基づいており、取引とブロック記憶、検証、転送に関与するすべてのＰ２Ｐネットワークノードはブロックチェーンネットワークにおけるノードとなる。
【００４５】
ブロックチェーンにおけるユーザアイデンティティは、公開鍵又は該公開鍵に基づいて生成したアカウントアドレスで示され、且つ公開鍵と秘密鍵はペアとして生成するものであり、秘密鍵はユーザが保有して上記ブロックチェーンネットワークへ開示されておらず、公開鍵又は上記アカウントアドレスはブロックチェーンネットワークに自由に公開できる。公開鍵は、特定のハッシュと暗号化を行われて上記アカウントアドレスになる。なお、ユーザアイデンティティとブロックノードには１対１で対応する関係が存在しないため、ユーザはいずれかのブロックノードにおいて自分の秘密鍵を使用できる。
【００４６】
ブロックチェーンへのデータ書き込みについては、ブロックノードを介してブロックチェーンネットワークに取引（Ｔｒａｎｓａｃｔｉｏｎ）を開示することによりブロックチェーンへのデータ書き込みが行われる。該取引は、ブロックノードが、所定取引データのフォーマットで、生成した取引データパケット、及び該ブロックノード自分の秘密鍵を用いて、該取引データパケットに対して行う、該ブロックノードのユーザのアイデンティティを証明するためのデジタル署名を含む。次に、該取引は、ブロックチェーンネットワークにおける「マイナー」（すなわちＰｏＷ（Ｐｒｏｏｆ  Ｏｆ  Ｗｏｒｋ、プルーフ・オブ・ワーク）コンセンサス競争メカニズムを実行するブロックノード）によりブロックチェーンにおいて生じた新ブロックに記録され、且つブロックチェーンネットワークへ開示され、該取引がほかのブロックノードによる検証に通過して（その他のノードは、該ブロックノードが生成した取引から該ブロックノードの公開鍵を取得して、該ブロックノードの公開鍵に基づいて、上記デジタル署名を検証することができ、また、デジタル署名の検証以外、取引データパケットが所定のデータ構造であるか否かをも検証できる）ほかのブロックノードにより受信されると、該取引はブロックチェーンに書き込まれる。ブロックチェーンにおける新ブロックは、上記「マイナー」がＰｏＷコンセンサスメカニズム（該メカニズムは、各「マイナー」がブロックの所定技術的要件に従い、たとえば所定の乱数要件に従って共に乱数を計算し、最初に該乱数要求を満たす乱数を算出する「マイナー」が生成するブロックを該新ブロックとすると理解できる）を実行することで定期的に生成するものであるため、新ブロックを生成する時間間隔が通常上記所定技術的要件に関連し、異なる所定技術的要件を設定することにより、ブロックチェーンによる新ブロック生成の時間間隔を変えることができる。
【００４７】
本発明で開示する各実施例では、ブロックチェーンへデータを書き込むプロセスはいずれも、上記プロセスを用いる。本発明で開示する各実施例に係る応用シナリオは、アイデンティティ認証システムであってもよく、該システムは、ブロックチェーンに基づいており、少なくとも、ブロックチェーンと、２つ以上のユーザノードと、１つのアイデンティティ証明開示ノードとを備えることができ、該ブロックチェーン、ユーザノード及びアイデンティティ証明開示ノードはすべて共通ブロックチェーンネットワークに属する。ユーザノードは、アイデンティティ証明の需要ノードであり、実際にアイデンティティ認証操作を行うことに用いられる。アイデンティティ証明開示ノードは、ユーザノードにアイデンティティ証明を開示するためのノードであり、ここで「アイデンティティ証明を開示」とは、ユーザノードのアイデンティティ情報に対する確認、デジタル署名を行い、デジタル署名をブロックチェーンに書き込むことを意味し、且つブロックチェーンネットワークにおいて、アイデンティティ証明開示ノードは、特定のノードではなくてもよく、アイデンティティ証明開示ノードの秘密鍵が設定されたノードであれば、アイデンティティ認証開示ノードとして作動できる。通常、アイデンティティ証明開示ノードのアイデンティティ情報（のアカウントアドレス又は公開鍵）はすでにブロックチェーンに書き込まれて、ユーザノードにより認められている。
【００４８】
図１は、一実施例による、ブロックチェーンに基づくアイデンティティ認証方法のフローチャートであり、該方法は、認証先ノードに適用され、該認証先ノードは、上記アイデンティティ認証システムにおけるいずれかのユーザノードであってもよく、図１に示されるように、該方法は、ステップ１０１−ステップ１０３を含む。
【００４９】
ステップ１０１において、認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を認証元に送信する。
認証元ノードは、上記システムにおける該認証先ノード以外のいずれかのユーザノードでもあり、すなわち、該アイデンティティ認証方法は、２つのユーザノードの間で行われ、且つ各ユーザノードは、認証先ノードとしても、認証元ノードとしても作動できる。さらに、認証先ノードのアイデンティティ情報は、認証先ノードのアカウントアドレス又は認証先ノードの公開鍵を含み、認証先ノードのアカウントアドレスは、認証先ノードの公開鍵に基づいて取得したものであり、アイデンティティ証明開示ノードのアイデンティティ情報は、アイデンティティ証明開示ノードのアカウントアドレス又はアイデンティティ証明開示ノードの公開鍵を含み、アイデンティティ証明開示ノードのアカウントアドレスは、アイデンティティ証明開示ノードの公開鍵に基づいて取得したものである。上記各ノードのアカウントアドレスは、公開鍵に対して特定のハッシュ計算及び暗号化を行って生成したものであってもよい。
【００５０】
ステップ１０２において、認証元ノードが、認証先ノードのアイデンティティ情報、アイデンティティ証明開示ノードのアイデンティティ情報、アイデンティティ証明開示ノードが認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認し、且つ第１デジタル署名が認証元ノードによる検証に通過した後、認証元ノードと、認証先が認証先ノードの公開鍵に対応した秘密鍵を把握したか否かの検証を行う。
【００５１】
ステップ１０３において、認証元ノードが、認証先が認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、認証先ノードはアイデンティティ認証に通過する。
【００５２】
図２は、一実施例による、ブロックチェーンに基づくアイデンティティ認証方法のフローチャートであり、該方法は、認証元ノードに適用され、該認証元ノードは、上記アイデンティティ認証システムにおけるいずれかのユーザノードであってもよく、図２に示されるように、該方法は、ステップ２０１−ステップ２０４を含む。
ステップ２０１において、認証先ノードが送信した、認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を受信する。
認証先ノードは上記システムにおける該認証元ノード以外のいずれかのユーザノードでもあり、すなわち該アイデンティティ認証方法は、２つのユーザノードの間で行われ、且つ各ユーザノードは、認証先ノードとしても、認証元ノードとして作動する。さらに、認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報に含まれる内容は、ステップ１０１を参照すればよいため、詳細な説明を省略する。
【００５３】
ステップ２０２において、認証先ノードのアイデンティティ情報、アイデンティティ証明開示ノードのアイデンティティ情報、及びアイデンティティ証明開示ノードが認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認したとき、アイデンティティ証明開示ノードのアイデンティティ情報に基づいて取得したアイデンティティ証明開示ノードの公開鍵に基づいて、第１デジタル署名を検証する。
【００５４】
ステップ２０３において、第１デジタル署名が検証に通過した後、認証先が、認証先ノードのアイデンティティ情報に基づいて取得した認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証する。
【００５５】
ステップ２０４において、認証先が認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、認証先ノードがアイデンティティ認証に通過したと決定する。
【００５６】
図３は、一実施例による、別のブロックチェーンに基づくアイデンティティ認証方法のフローチャートであり、該方法は、上記アイデンティティ認証システムに適用され、本実施例に係る認証先ノードと認証元ノードのいずれも該検証システムにおけるユーザノードであり、図３に示されるように、該方法は、ステップ３０１−ステップ３０５を含む。
【００５７】
ステップ３０１において、認証先ノードが、認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を認証元に送信する。
認証元ノードと認証先ノードは、上記アイデンティティ認証システムのうちのいずれか２つのユーザノードである。認証先ノードのアイデンティティ情報は、認証先ノードのアカウントアドレス又は認証先ノードの公開鍵を含み、認証先ノードのアカウントアドレスは、認証先ノードの公開鍵に基づいて取得したものであり、アイデンティティ証明開示ノードのアイデンティティ情報は、アイデンティティ証明開示ノードのアカウントアドレス又はアイデンティティ証明開示ノードの公開鍵を含み、アイデンティティ証明開示ノードのアカウントアドレスは、アイデンティティ証明開示ノードの公開鍵に基づいて取得したものである。上記各ノードのアカウントアドレスは、公開鍵に対して特定のハッシュ計算及び暗号化を行って生成したものであってもよい。
【００５８】
ステップ３０２において、認証元ノードが認証先ノードの認証要求を受信した後、認証先ノードのアイデンティティ情報、アイデンティティ証明開示ノードのアイデンティティ情報、及びアイデンティティ証明開示ノードが認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれているか否かを確認する。
認証元ノード、認証先ノード及びアイデンティティ証明開示ノードが共通ブロックチェーンネットワークに属するため、認証先ノードのアイデンティティ情報、アイデンティティ証明開示ノードのアイデンティティ情報及び第１デジタル署名がブロックチェーンに書き込まれた場合、認証元ノードは、ブロックチェーンからこれら情報を読み取ることができる。第１デジタル署名は、アイデンティティ証明開示ノードがブロックチェーンへ認証先ノードのアイデンティティ証明を開示した後に生成されるものである。アイデンティティ証明開示ノードがブロックチェーンへ認証先ノードのアイデンティティ証明を開示する方法は、以下のステップを含む。
まず、認証先ノードが、ブロックチェーンへ認証先ノードのアイデンティティ情報を含むアイデンティティ証明要求を書き込む。ブロックチェーンへアイデンティティ証明要求を書き込む過程については、前記ブロックチェーンへのデータ書き込み過程を参照すればよい。
次に、アイデンティティ証明開示ノードがアイデンティティ証明要求を受信した後、ブロックチェーンにおいて認証先ノードのアイデンティティ情報を確認（たとえば、ブロックチェーンに認証先ノードのアイデンティティ情報が書き込まれていることを確認）し、且つアイデンティティ証明開示ノードの秘密鍵に基づいて認証先ノードのアイデンティティ情報に対してデジタル署名を行って該第１デジタル署名を得る。
最後に、該第１デジタル署名をブロックチェーンに書き込み、ブロックチェーンに書き込むと、ブロックチェーンネットワークにおけるすべてのノードのいずれも該第１デジタル署名を読み取ることができ、それにより、該認証先ノードのアイデンティティ証明の開示は完了する。
なお、アイデンティティ証明開示ノードがブロックチェーンへ認証先ノードのアイデンティティ証明を開示するプロセスは、認証先ノードが認証元ノードに対してアイデンティティ認証を開始させる前に行われる。且つ、ブロックチェーンへのアイデンティティ証明要求の書き込みは上記認証先ノードに制限されず、ブロックチェーンネットワークにおけるいずれかのユーザノードもブロックチェーンへのアイデンティティ証明要求の書き込みを開始できる。
【００５９】
ステップ３０３において、認証先ノードのアイデンティティ情報、アイデンティティ証明開示ノードのアイデンティティ情報及び第１デジタル署名がブロックチェーンに書き込まれているとき、認証元ノードが、アイデンティティ証明開示ノードの公開鍵に基づいて、第１デジタル署名を検証する。
第１デジタル署名がアイデンティティ証明開示ノードの秘密鍵に基づいて認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られたものであるため、アイデンティティ証明開示ノードの公開鍵に基づいて、第１デジタル署名を検証し、該第１デジタル署名の正当性を決定することができ、アイデンティティ証明開示ノードの公開鍵は、ブロックチェーンから取得してもよく、認証元ノードに予め記憶されてもよい。アイデンティティ証明開示ノードのアイデンティティ情報がすでにブロックチェーンに書き込まれているため、ブロックチェーンネットワークにおけるいずれのノードも該アイデンティティ情報を取得でき、従って、該アイデンティティ情報がアイデンティティ証明開示ノードの公開鍵である場合、認証元ノードはアイデンティティ証明開示ノードの公開鍵を直接取得でき、該アイデンティティ情報がアイデンティティ証明開示ノードのアカウントアドレスである場合、認証元ノードは、該アカウントアドレスに基づいて計算してアイデンティティ証明開示ノードの公開鍵を取得できる。
【００６０】
ステップ３０４において、第１デジタル署名が検証に通過した後、認証元ノードが、認証先が認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証する。
【００６１】
例示的には、図４は、図３の実施例による秘密鍵認証方法のフローチャートであり、図４に示されるように、一実施形態において、認証先が認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証するステップは、ステップ３０４１ａ−ステップ３０４６ｂを含む。
ステップ３０４１ａにおいて、第１デジタル署名が検証に通過した後、認証元ノードは検証情報を生成する。該検証情報はチャレンジコード（ｃｈａｌｌｅｎｇｅ）であってもよく、チャレンジコードは、チャレンジパスワードとも呼ばれ、チャレンジハンドシェイク認証プロトコル（英語：Ｃｈａｌｌｅｎｇｅ  Ｈａｎｄｓｈａｋｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ、略称：ＣＨＡＰ）に従って生成した暗号化パスワードであり、伝送過程においてユーザの本物のパスワードが漏れないようにするためのものである。又は、検証情報は所定の情報生成規則に従って生成した情報である。
ステップ３０４２ａにおいて、認証元ノードは、認証先ノードに検証情報を送信する。
ステップ３０４３ａにおいて、認証先ノードは、認証先ノードの秘密鍵に基づいて、検証情報に対してデジタル署名を行って第２デジタル署名を得る。
ステップ３０４４ａにおいて、認証元ノードは、認証先ノードから第２デジタル署名を取得した後、認証先ノードの公開鍵に基づいて、第２デジタル署名を検証する。認証先ノードの公開鍵は、ブロックチェーンから取得してもよく、認証元ノードに予め記憶されていてもよい。
ステップ３０４５ａにおいて、第２デジタル署名が検証に通過したとき、認証先が認証先ノードの公開鍵に対応した秘密鍵を把握したと確認する。
【００６２】
図５は、図３の実施例による別の秘密鍵認証方法のフローチャートであり、図５に示されるように、別の実施形態において、認証先が認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証するステップは、ステップ３０４１ｂ−ステップ３０４６ｂを含む。
ステップ３０４１ｂにおいて、第１デジタル署名が認証元ノードによる検証に通過した後、認証先ノードが、所定の情報生成規則に従って検証情報を生成する。
検証情報は、ステップ３０４１ａに記載の検証情報と同じであってもよく、情報生成規則は認証先ノードと認証元ノードに予め記憶されている。
ステップ３０４２ｂにおいて、認証先ノードは、認証先ノードの秘密鍵に基づいて、検証情報に対してデジタル署名を行って、第３デジタル署名を得る。
ステップ３０４３ｂにおいて、認証先ノードは、認証元ノードに検証情報及び第３デジタル署名を送信する。
ステップ３０４４ｂにおいて、認証元ノードは、該検証情報が該情報生成規則に基づいて生成したものであるか否かを検証する。
ステップ３０４５ｂにおいて、認証元ノードは、検証情報が情報生成規則に従って生成したものであると確認したとき、認証先ノードの公開鍵に基づいて、第３デジタル署名を検証する。認証先ノードの公開鍵は、ブロックチェーンから取得してもよく、認証元ノードに予め記憶しておいてもよい。
ステップ３０４６ｂにおいて、第３デジタル署名が検証に通過したとき、認証元ノードは、認証先ノードが認証先ノードの公開鍵に対応した秘密鍵を把握したと確認する。
【００６３】
上記図４又は図５に記載の実施形態に加え、認証先が認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証することは、ほかの可能な実施形態とされてもよく、上記の形態を含むが、それに制限されない。
ステップ３０５において、認証先が認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、認証元ノードが、認証先ノードがアイデンティティ認証に通過したと決定する。
【００６４】
上記ステップ３０３とステップ３０４のうちのいずれかのステップの検証が失敗した場合、認証先ノードのアイデンティティ認証はすべ失敗したと確認される。
【００６５】
あるいは、前記アイデンティティ証明開示ノードにアイデンティティ証明開示親ノードが存在するとき、ステップ３０３に記載の、ブロックチェーンから取得したアイデンティティ証明開示ノードの公開鍵に基づいて、第１デジタル署名を検証するステップは、以下を含む。
まず、アイデンティティ証明開示親ノードの公開鍵、及びアイデンティティ証明親ノードがアイデンティティ証明親ノードの秘密鍵に基づいてアイデンティティ証明開示ノードの公開鍵に対してデジタル署名を行って得られた第４デジタル署名をブロックチェーンから取得し、
次に、アイデンティティ証明開示親ノードの公開鍵に基づいて、第４デジタル署名を検証し、
さらに、第４デジタル署名が検証に通過した後、ブロックチェーンから取得したアイデンティティ証明開示ノードの公開鍵に基づいて、第１デジタル署名を検証する。
【００６６】
又は、前記アイデンティティ証明開示ノードにアイデンティティ証明開示親ノードが存在するとき、ステップ３０４において前記第１デジタル署名が検証に通過した後、認証先が認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証する前に、以下を含んでもよい。
まず、前記第１デジタル署名が検証に通過した後、前記アイデンティティ証明開示親ノードの公開鍵、及びアイデンティティ証明親ノードがアイデンティティ証明親ノードの秘密鍵に基づいてアイデンティティ証明開示ノードの公開鍵に対してデジタル署名を行って得られた第４デジタル署名を、ブロックチェーンから取得し、
次に、アイデンティティ証明開示親ノードの公開鍵に基づいて、第４デジタル署名を検証し、
さらに、第４デジタル署名が検証に通過した後、認証先ノードにチャレンジコードを送信する。
【００６７】
実際の応用シナリオにおいて、上記アイデンティティ証明開示親ノードにはより親のアイデンティティ証明開示ノードが存在する可能性があり、ここで、アイデンティティ証明開示祖父ノードと呼ばれ、このような場合、該第４デジタル署名を検証した後、アイデンティティ証明開示祖父ノードが自体の秘密鍵を用いてアイデンティティ証明開示親ノードの公開鍵に対して行うデジタル署名を検証する必要がある。勿論、さらに親のアイデンティティ証明開示ノードが存在する可能性もあり、その原理は前述方法と同じであり、互いに参照すればよいため、網羅的に説明しない。
【００６８】
さらに、あるいは、アイデンティティ証明開示ノードは、開示したアイデンティティ証明を失効させることもでき、例として、アイデンティティ証明開示ノードは、前記ブロックチェーンに失効証明を書き込み、失効証明を書き込む過程については、上記ブロックチェーンへのデータ書き込み過程を参照すればよい。該失効証明には、既に開示したあるアイデンティティ証明、たとえば上記第１デジタル署名に対する失効、及びアイデンティティ証明開示ノードの秘密鍵を用いて失効指示に対してデジタル署名を行って得られた第５デジタル署名を含んでもよい。ブロックチェーンネットワークにおけるその他のノードは、アイデンティティ証明開示ノードの公開鍵を用いて第５デジタル署名を検証することにより、失効指示の正当性を決定できる。
【００６９】
前記のとおり、本発明によるブロックチェーンに基づくアイデンティティ認証方法では、認証先のアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報のいずれもブロックチェーンに記録されているため、１つ又は２つ以上のノードの故障によりアイデンティティ情報を取得できないことがなく、従って、単一障害点によるシステム全体への影響を避けることができ、また、ブロックチェーンネットワークにおいて、アイデンティティ証明開示ノードの秘密鍵が設定されたノードであれば、アイデンティティ認証開示ノードとして作動できるため、アイデンティティ証明開示ノードは特定のノードではなく、攻撃者がアイデンティティ認証情報配信ノードを特定できず、それによりアイデンティティ認証ノードを攻撃することができないことから、さらにシステム全体のセキュリティが確保され、単一障害点の問題とセキュリティ上の問題によるシステム全体の使用性とセキュリティ上の問題を解決して、システム全体の使用性とセキュリティを確保できる。
【００７０】
図６は、一実施例によるブロックチェーンに基づくアイデンティティ認証装置のブロック図であり、該装置６００は、認証元ノードに適用でき、図２又は図３から図５のいずれかに記載の方法を実行することに用いられ、図６に示されるように、該装置６００は、受信モジュール６１０、第１検証モジュール６２０、第２検証モジュール６３０及び決定モジュール６４０を備え、
受信モジュール６１０は、認証先ノードが送信した、認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を受信する。
第１検証モジュール６２０は、認証先ノードのアイデンティティ情報、アイデンティティ証明開示ノードのアイデンティティ情報、及びアイデンティティ証明開示ノードが認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認したとき、アイデンティティ証明開示ノードのアイデンティティ情報に基づいて取得したアイデンティティ証明開示ノードの公開鍵に基づいて、第１デジタル署名を検証する。
第２検証モジュール６３０は、第１デジタル署名が検証に通過した後、認証先が、認証先ノードのアイデンティティ情報に基づいて取得した認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証する。
決定モジュール６４０は、認証先が認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、認証先ノードがアイデンティティ認証に通過したと決定する。
【００７１】
あるいは、図７は、図６の実施例による第２検証モジュールブロック図であり、図７に示されるように、第２検証モジュール６３０は、
第１デジタル署名が検証に通過した後、認証先ノードに検証情報を送信するための送信サブモジュール６３１と、
認証先ノードが、認証先ノードの秘密鍵に基づいて、検証情報に対してデジタル署名を行って得られた第２デジタル署名を受信するための受信サブモジュール６３２と、
認証先ノードの公開鍵に基づいて、第２デジタル署名を検証するための検証サブモジュール６３３と、
第２デジタル署名が検証に通過したと決定したとき、認証先が認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するための確認サブモジュール６３４とを備える。
【００７２】
又は、図８は、図６の実施例による別の第２検証モジュールブロック図であり、図８に示されるように、第２検証モジュール６３０は、
認証先ノードが認証先ノードと認証元ノードに予め設定されている所定の情報生成規則に従って生成して送信する検証情報、及び認証先ノードが認証先ノードの秘密鍵に基づいて検証情報に対してデジタル署名を行って得られた第３デジタル署名を受信するための受信サブモジュール６３５と、
検証情報が情報生成規則に従って生成したものであるか否かを検証するための情報検証サブモジュール６３６と、
検証情報が情報生成規則に従って生成したものである場合、認証先ノードの公開鍵に基づいて、第３デジタル署名に対して検証を行うための署名検証サブモジュール６３７と、
第３デジタル署名が検証に通過したとき、認証先が認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを確認するための確認サブモジュール６３８とを備える。
【００７３】
あるいは、アイデンティティ証明開示ノードにアイデンティティ証明開示親ノードが存在する場合、第１検証モジュール６２０は、
アイデンティティ証明開示親ノードの公開鍵、及びアイデンティティ証明親ノードがアイデンティティ証明親ノードの秘密鍵に基づいてアイデンティティ証明開示ノードの公開鍵に対してデジタル署名を行って得られた第４デジタル署名を、ブロックチェーンから取得し、
アイデンティティ証明開示親ノードの公開鍵に基づいて、第４デジタル署名を検証し、
第４デジタル署名が検証に通過した後、ブロックチェーンから取得したアイデンティティ証明開示ノードの公開鍵に基づいて、第１デジタル署名を検証する。
【００７４】
又は、第１検証モジュール６２０は、
第１デジタル署名が検証に通過した後、アイデンティティ証明開示親ノードの公開鍵、及びアイデンティティ証明親ノードがアイデンティティ証明親ノードの秘密鍵に基づいてアイデンティティ証明開示ノードの公開鍵に対してデジタル署名を行って得られた第４デジタル署名を、ブロックチェーンから取得し、アイデンティティ証明開示親ノードの公開鍵に基づいて、第４デジタル署名を検証し、
送信モジュールはさらに、第４デジタル署名が検証に通過した後、第２検証モジュール６３０認証先が認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証する。
【００７５】
あるいは、認証先ノードのアイデンティティ情報は、認証先ノードの公開鍵に基づいて取得した認証先ノードのアカウントアドレス又は認証先ノードの公開鍵を含み、アイデンティティ証明開示ノードのアイデンティティ情報は、アイデンティティ証明開示ノードの公開鍵に基づいて取得したアイデンティティ証明開示ノードのアカウントアドレス又はアイデンティティ証明開示ノードの公開鍵を含む。
【００７６】
図９は、一実施例による別のブロックチェーンに基づくアイデンティティ認証装置のブロック図であり、該装置９００は、認証先ノードに適用され、図１又は図３から図５のいずれかに記載の方法を実行することに用いられ、図９に示されるように、該装置９００は、認証要求モジュール９１０と検証モジュール９２０を備え、
認証要求モジュール９１０は、認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を認証元に送信し、
検証モジュール９２０は、認証元ノードが、認証先ノードのアイデンティティ情報、アイデンティティ証明開示ノードのアイデンティティ情報、アイデンティティ証明開示ノードが認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認し、且つ第１デジタル署名が認証元ノードによる検証に通過した後、認証元ノードと、認証先が認証先ノードの公開鍵に対応した秘密鍵を把握したか否かの検証を行い、認証元ノードが、認証先が認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、認証先ノードはアイデンティティ認証に通過する。
【００７７】
あるいは、図１０は、図９の実施例による検証モジュールブロック図であり、図１０に示されるように、検証モジュール９２０は、
第１デジタル署名が認証元ノードによる検証に通過した後、認証元ノードが送信する検証情報を受信するための受信サブモジュール９２１と、
認証先ノードの秘密鍵に基づいて、検証情報に対してデジタル署名を行って第２デジタル署名を得るための署名サブモジュール９２２と、
認証元ノードに第２デジタル署名を送信し、第２デジタル署名が認証元による検証に通過したとき、認証先ノードが認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するための送信サブモジュール９２３とを備える。
【００７８】
あるいは、図１１は、図９の実施例による別の検証モジュールブロック図であり、図１１に示されるように、検証モジュール９２０は、
第１デジタル署名が認証元ノードによる検証に通過した後、認証先ノードと認証元ノードに予め設定されている所定の情報生成規則に従って検証情報を生成するための情報生成サブモジュール９２３と、
認証先ノードの秘密鍵に基づいて、検証情報に対してデジタル署名を行って第３デジタル署名を得るための署名サブモジュール９２４と、
認証元ノードに検証情報及び第３デジタル署名を送信し、認証元ノードが、検証情報が情報生成規則に従って生成したものであると確認し、且つ認証元ノードが認証先ノードの公開鍵に基づいて第３デジタル署名に対して行う検証が通過したとき、認証先ノードが認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するための送信サブモジュール９２５とを備える。
【００７９】
あるいは、図１２は、一実施例による別のブロックチェーンに基づくアイデンティティ認証装置のブロック図であり、装置９００はさらに、
ブロックチェーンに、アイデンティティ証明開示ノードがブロックチェーンにおいて認証先ノードのアイデンティティ情報を確認するための認証先ノードのアイデンティティ情報を含むアイデンティティ証明要求を書き込み、且つ、アイデンティティ証明開示ノードの秘密鍵に基づいて、認証先ノードのアイデンティティ情報に対してデジタル署名を行って第１デジタル署名を得て、第１デジタル署名をブロックチェーンに書き込むためのアイデンティティ証明要求モジュール９３０を備える。
【００８０】
あるいは、アイデンティティ証明開示ノードがブロックチェーンに第１デジタル署名を失効させための失効証明を書き込むと、認証先ノードの第１デジタル署名が失効され、失効証明には、第１デジタル署名に対する失効指示、及びアイデンティティ証明開示ノードの秘密鍵によって失効指示に対してデジタル署名を行って得られた第５デジタル署名が含まれる。
【００８１】
あるいは、認証先ノードのアイデンティティ情報は、認証先ノードのアカウントアドレス又は認証先ノードの公開鍵を含み、認証先ノードのアカウントアドレスは、認証先ノードの公開鍵に基づいて取得したものであり、アイデンティティ証明開示ノードのアイデンティティ情報は、アイデンティティ証明開示ノードのアカウントアドレス又はアイデンティティ証明開示ノードの公開鍵を含み、アイデンティティ証明開示ノードのアカウントアドレスは、アイデンティティ証明開示ノードの公開鍵に基づいて取得したものである。
【００８２】
前記のとおり、認証先のアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報のいずれもブロックチェーンに記録されているため、１つ又は２つ以上のノードの故障によりアイデンティティ情報を取得できないことがなく、従って単一障害点によるシステム全体への影響を避けることができ、また、ブロックチェーンネットワークにおいて、アイデンティティ証明開示ノードの秘密鍵が設定されたノードであれば、アイデンティティ認証開示ノードとして作動できるため、アイデンティティ証明開示ノードは特定のノードではなく、攻撃者がアイデンティティ認証情報配信ノードを特定できず、それによりアイデンティティ認証ノードを攻撃することができないことから、さらにシステム全体のセキュリティが確保され、単一障害点の問題とセキュリティ上の問題によるシステム全体の使用性とセキュリティ上の問題を解決して、システム全体の使用性とセキュリティを確保できる。
【００８３】
本発明の実施例はさらに、前ブロックチェーンに基づくアイデンティティ認証方法を実行するための１つ又は複数のプログラムを含む不揮発性のコンピュータ可読記憶媒体１を提供し、該ブロックチェーンに基づくアイデンティティ認証方法は、認証元ノードに適用され、該ブロックチェーンに基づくアイデンティティ認証方法は、認証先ノードが送信した、前記認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を受信するステップと、前記認証先ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードのアイデンティティ情報、及び前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認したとき、前記アイデンティティ証明開示ノードのアイデンティティ情報に基づいて取得した前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証するステップと、前記第１デジタル署名が検証に通過した後、前記認証先が、前記認証先ノードのアイデンティティ情報に基づいて取得した前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証するステップと、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、前記認証先ノードがアイデンティティ認証に通過したと決定するステップとを含む。
【００８４】
あるいは、前記第１デジタル署名が検証に通過した後、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証する前記ステップは、前記第１デジタル署名が検証に通過した後、前記認証先ノードに検証情報を送信するステップと、前記認証先ノードが、前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って得られた第２デジタル署名を受信するステップと、前記認証先ノードの公開鍵に基づいて、前記第２デジタル署名を検証するステップと、前記第２デジタル署名が検証に通過したとき、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するステップとを含む。
【００８５】
あるいは、前記第１デジタル署名が検証に通過した後、前記認証先に対して、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを確認する前記ステップは、前記認証先ノードが前記認証先ノードと前記認証元ノードに予め設定されている所定の情報生成規則に基づいて生成して送信する検証情報、及び認証先ノードが前記認証先ノードの秘密鍵に基づいて前記検証情報に対してデジタル署名を行って得られた第３デジタル署名を受信するステップと、前記検証情報が前記情報生成規則に従って生成したものであるか否かを検証するステップと、前記検証情報が前記情報生成規則に従って生成したものである場合、前記認証先ノードの公開鍵に基づいて、前記第３デジタル署名を検証するステップと、前記第３デジタル署名が検証に通過したとき、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するステップとを含む。
【００８６】
あるいは、前記アイデンティティ証明開示ノードにアイデンティティ証明開示親ノードが存在するとき、前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証する前記ステップは、
前記アイデンティティ証明開示親ノードの公開鍵、及び前記アイデンティティ証明親ノードが、前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名得を行って得られた第４デジタル署名を、前記ブロックチェーンから取得するステップと、前記アイデンティティ証明開示親ノードの公開鍵に基づいて、前記第４デジタル署名を検証するステップと、前記第４デジタル署名が検証に通過した後、前記ブロックチェーンから取得した前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証するステップとを含む。
【００８７】
あるいは、前記第１デジタル署名が検証に通過した後、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証する前に、さらに、前記第１デジタル署名が検証に通過した後、前記アイデンティティ証明開示親ノードの公開鍵、及び前記アイデンティティ証明親ノードが、前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名得を行って得られた第４デジタル署名を、前記ブロックチェーンから取得するステップと、前記アイデンティティ証明開示親ノードの公開鍵に基づいて、前記第４デジタル署名を検証するステップと、前記第４デジタル署名が検証に通過した後、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証するステップとを含む。
【００８８】
あるいは、前記認証先ノードのアイデンティティ情報は前記認証先ノードのアカウントアドレス又は前記認証先ノードの公開鍵を含み、前記認証先ノードのアカウントアドレスは、前記認証先ノードの公開鍵に基づいて取得したものであり、前記アイデンティティ証明開示ノードのアイデンティティ情報は、前記アイデンティティ証明開示ノードのアカウントアドレス又は前記アイデンティティ証明開示ノードの公開鍵を含み、前記アイデンティティ証明開示ノードのアカウントアドレスは、前記アイデンティティ証明開示ノードの公開鍵に基づいて取得したものである。
【００８９】
本発明の実施例はさらに、
上記不揮発性のコンピュータ可読記憶媒体１と、
上記不揮発性のコンピュータ可読記憶媒体１におけるプログラムを実行するための１つ又は複数のプロセッサとを含むユーザノード２を提供する。
【００９０】
本発明の実施例はさらに、ブロックチェーンに基づくアイデンティティ認証方法を実行するための１つ又は複数のプログラムを含む別の不揮発性のコンピュータ可読記憶媒体３を提供し、該ブロックチェーンに基づくアイデンティティ認証方法は、認証先ノードに適用され、該ブロックチェーンに基づくアイデンティティ認証方法は、前記認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を認証元に送信するステップと、前記認証元ノードが、前記認証先ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認し、且つ前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードと、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かの検証を行うステップと、前記認証元ノードが、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、前記認証先ノードはアイデンティティ認証に通過するステップとを含む。
【００９１】
あるいは、前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードと、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かの検証を行う前記ステップは、前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードが送信する検証情報を受信するステップと、前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って第２デジタル署名を得るステップと、前記認証元ノードに前記第２デジタル署名を送信し、前記第２デジタル署名が前記認証元による検証に通過したとき、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するステップとを含む。
【００９２】
あるいは、前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードと、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かの検証を行う前記ステップは、前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証先ノードと前記認証元ノードに予め設定されている所定の情報生成規則に従って検証情報を生成するステップと、前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って第３デジタル署名を得るステップと、前記認証元ノードに前記検証情報及び前記第３デジタル署名を送信するステップと、前記認証元ノードが、前記検証情報が前記情報生成規則に従って生成したものであると確認し、且つ前記認証元ノードが前記認証先ノードの公開鍵に基づいて前記第３デジタル署名に対して行う検証が通過したとき、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するステップとを含む。
【００９３】
あるいは、前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報と前記第１デジタル署名を前記ブロックチェーンに書き込む方法は、前記ブロックチェーンに、前記アイデンティティ証明開示ノードが前記ブロックチェーンにおいて前記認証先ノードのアイデンティティ情報を確認するための前記認証先ノードのアイデンティティ情報を含むアイデンティティ証明要求を書き込み、且つ、前記アイデンティティ証明開示ノードの秘密鍵に基づいて、前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って前記第１デジタル署名を得て、前記第１デジタル署名を前記ブロックチェーンに書き込むステップを含む。
【００９４】
あるいは、前記アイデンティティ証明開示ノードが、前記ブロックチェーンに前記第１デジタル署名を失効させるための失効証明を書き込むと、前記認証先ノードの前記第１デジタル署名が失効され、前記失効証明には、前記第１デジタル署名に対する失効指示、及び前記アイデンティティ証明開示ノードの秘密鍵によって前記失効指示に対してデジタル署名を行って得られた第５デジタル署名が含まれる。
【００９５】
あるいは、前記認証先ノードのアイデンティティ情報は前記認証先ノードのアカウントアドレス又は前記認証先ノードの公開鍵を含み、前記認証先ノードのアカウントアドレスは、前記認証先ノードの公開鍵に基づいて取得したものであり、前記アイデンティティ証明開示ノードのアイデンティティ情報は、前記アイデンティティ証明開示ノードのアカウントアドレス又は前記アイデンティティ証明開示ノードの公開鍵を含み、前記アイデンティティ証明開示ノードのアカウントアドレスは、前記アイデンティティ証明開示ノードの公開鍵に基づいて取得したものである。
【００９６】
本発明の実施例はさらに、
上記不揮発性のコンピュータ可読記憶媒体３と、
上記不揮発性のコンピュータ可読記憶媒体３におけるプログラムを実行するための１つ又は複数のプロセッサとを含む別のユーザノード４を提供する。
【００９７】
本発明の実施例はさらに、
ブロックチェーンと、
認証元ノードとしての少なくとも１つの上記ユーザノード１と、
認証先ノードとしての少なくとも１つの上記ユーザノード４と、
少なくとも１つのアイデンティティ証明開示ノードとを含み、
前記ブロックチェーン、前記少なくとも１つの上記ユーザノード１、前記少なくとも１つの上記ユーザノード４及び前記少なくとも１つのアイデンティティ証明開示ノードは共通ブロックチェーンネットワークに属するアイデンティティ認証システムを提供する。
【００９８】
あるいは、前記システムでは、アイデンティティ証明開示ノードとユーザノードの関係は以下の三種類を含む。
第１実施形態では、一実施例によるアイデンティティ認証システムの構造ブロック図である図１３に示されるように、図１３において、前記少なくとも１つのアイデンティティ証明開示ノードは、ブロックチェーンにブロックチェーンネットワークにおける各ユーザノードのアイデンティティ証明を開示するためのアイデンティティ証明開示ノードであり、
第１ユーザノードを例にすれば、該第１ユーザノードは、いずれかのユーザノードであり、アイデンティティ証明開示ノードによるブロックチェーンへの第１ユーザノードのアイデンティティ証明の開示は、アイデンティティ証明開示ノードがブロックチェーンにおいて第１ユーザノードのアイデンティティ情報を確認し、且つアイデンティティ証明開示ノードの秘密鍵に基づいて、第１ユーザノードのアイデンティティ情報に対してデジタル署名を行い、得られたデジタル署名をブロックチェーンに書き込むことを含む。
【００９９】
第２実施形態では、一実施例による別のアイデンティティ認証システムの構造ブロック図である図１４ａに示されるように、図１４ａにおいて、前記少なくとも１つのアイデンティティ証明開示ノードは、ブロックチェーンに各ユーザノードのアイデンティティ証明を開示するための１つのアイデンティティ証明開示ノードと、ブロックチェーンにアイデンティティ証明開示ノードのアイデンティティ証明を開示するための、該アイデンティティ証明開示ノードのアイデンティティ証明開示親ノードとを少なくとも含み、さらに、一実施例による別のアイデンティティ認証システムの構造ブロック図である図１４ｂに示されるように、図１４ｂにおいて、上記アイデンティティ証明開示親ノードにはより親のアイデンティティ証明開示ノードが存在する可能性があり、ここでアイデンティティ証明開示祖父ノードと呼ばれ、アイデンティティ証明開示親ノードは、ブロックチェーンにアイデンティティ証明開示親ノードのアイデンティティ証明を開示し、且つ、アイデンティティ証明開示ノードが各ユーザノードのアイデンティティ証明を開示するのではなく、アイデンティティ証明開示ノード、アイデンティティ証明開示親ノード及びアイデンティティ証明開示親ノードのそれぞれが一部のユーザノードのアイデンティティ証明を開示する。且つ、アイデンティティ証明開示祖父ノードは、別の一部のユーザノードのアイデンティティ証明開示ノードとして作動でき、勿論、さらなる親のアイデンティティ証明開示ノードが存在する可能性もあり、互いに参照すればよいため、網羅的に説明しない。
【０１００】
第１ユーザノードを例にすれば、該第１ユーザノードは、いずれかのユーザノードであり、アイデンティティ証明開示ノードによるブロックチェーンへの第１ユーザノードのアイデンティティ証明の開示は、アイデンティティ証明開示ノードがブロックチェーンにおいて第１ユーザノードのアイデンティティ情報を確認し、且つアイデンティティ証明開示ノードの秘密鍵に基づいて、第１ユーザノードのアイデンティティ情報に対してデジタル署名を行い、得られたデジタル署名をブロックチェーンに書き込むことを含み、アイデンティティ証明開示親ノードによるブロックチェーンへのアイデンティティ証明開示ノードのアイデンティティ証明の開示は、アイデンティティ証明親ノードが、アイデンティティ証明親ノードの秘密鍵に基づいて、アイデンティティ証明開示ノードの公開鍵に対してデジタル署名を行い、得られたデジタル署名を前記ブロックチェーンに書き込むことを含む。アイデンティティ証明開示祖父ノードによるブロックチェーンへのアイデンティティ証明開示親ノードのアイデンティティ証明の開示は、祖父アイデンティティ証明ノードが、祖父アイデンティティ証明ノードの秘密鍵に基づいて、アイデンティティ証明開示親ノードの公開鍵に対してデジタル署名を行い、得られたデジタル署名を前記ブロックチェーンに書き込むことを含む。
【０１０１】
さらに、祖父アイデンティティ証明ノードとアイデンティティ証明開示祖父ノードがブロックチェーンにユーザノードのアイデンティティ証明を開示する方法は、上記アイデンティティ証明開示ノードがブロックチェーンに第１ユーザノードのアイデンティティ証明を開示する方法と同様であるため、詳細な説明を省略する。
【０１０２】
第３実施形態では、一実施例による別のアイデンティティ認証システムの構造ブロック図である図１５に示されるように、該アイデンティティ認証システムは、少なくとも１つのアイデンティティ証明開示ノードと少なくとも１つのユーザノードを含むアイデンティティ証明開示サブシステムを複数含み、
第１アイデンティティ証明開示サブシステムに１つのアイデンティティ証明開示ノードが含まれる場合、該アイデンティティ証明開示ノードは、ブロックチェーンに第１アイデンティティ証明開示サブシステムの第１ユーザノードのアイデンティティ証明を開示し、該第１ユーザノードは第１アイデンティティ証明開示サブシステムにおけるいずれかのユーザノードであり、第１アイデンティティ証明開示サブシステムは、該複数のアイデンティティ証明開示サブシステムにおけるいずれかのアイデンティティ証明開示サブシステムであり、
第１アイデンティティ証明開示サブシステムには、１つのアイデンティティ証明開示ノードとアイデンティティ証明開示ノードのアイデンティティ証明開示親ノードが少なくとも含まれている場合、アイデンティティ証明開示ノードは、ブロックチェーンに第１アイデンティティ証明開示サブシステムの第１ユーザノードのアイデンティティ証明を開示し、アイデンティティ証明開示親ノードは、ブロックチェーンにアイデンティティ証明開示ノードのアイデンティティ証明を開示し、
アイデンティティ証明開示ノードによるブロックチェーンへの第１アイデンティティ証明開示サブシステムの第１ユーザノードのアイデンティティ証明の開示は、アイデンティティ証明開示ノードが、ブロックチェーンにおいて第１ユーザノードのアイデンティティ情報を確認し、且つアイデンティティ証明開示ノードの秘密鍵に基づいて、第１ユーザノードのアイデンティティ情報に対してデジタル署名を行い、得られたデジタル署名をブロックチェーンに書き込むことを含み、
アイデンティティ証明開示親ノードによるブロックチェーンへのアイデンティティ証明開示ノードのアイデンティティ証明の開示は、アイデンティティ証明親ノードが、アイデンティティ証明親ノードの秘密鍵に基づいて、アイデンティティ証明開示ノードの公開鍵に対してデジタル署名を行い、得られたデジタル署名をブロックチェーンに書き込むことを含む。すなわち、各アイデンティティ証明開示サブシステムは、図１３、又は図１４ａ又は図１４ｂに示される構造を含むことができる。
【０１０３】
以上、図面を参照しながら、本発明の好適実施形態を詳細に説明したが、本発明は、上記実施形態における詳細に制限されず、本発明の技術的構想の範囲を逸脱することなく、本発明の技術案について様々な簡単な変形を実施することができ、これら簡単な変形はいずれも本発明の保護範囲に属する。
【０１０４】
さらに、なお、上記実施形態において説明した各具体的な技術的特徴は、矛盾しない限り、任意の適切な方式で組み合わせてもよい。不必要な重複を避けるために、本発明では、各種の可能な組み合わせについての説明を省略する。
【０１０５】
また、本発明の様々な実施形態同士も任意に組み合わせてもよく、本発明の趣旨を逸脱しない限り、本発明の開示内容と見なされるべきである。
【図１】
2019519987.tif 000003
【図２】
2019519987.tif 000004
【図３】
2019519987.tif 000005
【図４】
2019519987.tif 000006
【図５】
2019519987.tif 000007
【図６】
2019519987.tif 000008
【図７】
2019519987.tif 000009
【図８】
2019519987.tif 000010
【図９】
2019519987.tif 000011
【図１０】
2019519987.tif 000012
【図１１】
2019519987.tif 000013
【図１２】
2019519987.tif 000014
【図１３】
2019519987.tif 000015
【図１４ａ】
2019519987.tif 000016
【図１４ｂ】
2019519987.tif 000017
【図１５】
2019519987.tif 000018
【手続補正書】
【提出日】平成30年11月22日(2018.11.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
認証元ノードに適用される、ブロックチェーンに基づくアイデンティティ認証方法であって、
認証先ノードが送信した、前記認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を受信するステップと、
前記認証先ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードのアイデンティティ情報、及び前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認したとき、前記アイデンティティ証明開示ノードのアイデンティティ情報に基づいて取得した前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証するステップと、
前記第１デジタル署名が検証に通過した後、前記認証先ノードが、前記認証先ノードのアイデンティティ情報に基づいて取得した前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証するステップと、
前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、前記認証先ノードがアイデンティティ認証に通過したと決定するステップとを含む、ことを特徴とするブロックチェーンに基づくアイデンティティ認証方法。
【請求項２】
前記第１デジタル署名が検証に通過した後、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証する前記ステップは、
前記第１デジタル署名が検証に通過した後、前記認証先ノードに検証情報を送信するステップと、
前記認証先ノードが、前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って得られた第２デジタル署名を受信するステップと、
前記認証先ノードの公開鍵に基づいて、前記第２デジタル署名を検証するステップと、
前記第２デジタル署名が検証に通過したとき、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するステップとを含む、ことを特徴とする請求項１に記載の方法。
【請求項３】
前記第１デジタル署名が検証に通過した後、前記認証先ノードに対して、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを確認する前記ステップは、
前記認証先ノードが前記認証先ノードと前記認証元ノードに予め設定されている所定の情報生成規則に基づいて生成して送信する検証情報、及び認証先ノードが前記認証先ノードの秘密鍵に基づいて前記検証情報に対してデジタル署名を行って得られた第３デジタル署名を受信するステップと、
前記検証情報が前記情報生成規則に従って生成したものであるか否かを検証するステップと、
前記検証情報が前記情報生成規則に従って生成したものである場合、前記認証先ノードの公開鍵に基づいて、前記第３デジタル署名を検証するステップと、
前記第３デジタル署名が検証に通過したとき、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するステップとを含む、ことを特徴とする請求項１に記載の方法。
【請求項４】
前記アイデンティティ証明開示ノードにアイデンティティ証明開示親ノードが存在するとき、前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証する前記ステップは、
前記アイデンティティ証明親ノードが、前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名得を行って得られた第４デジタル署名を、前記ブロックチェーンから取得するステップと、
前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明開示親ノードの公開鍵に基づいて、前記第４デジタル署名を検証するステップと、
前記第４デジタル署名が検証に通過した後、前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証するステップとを含む、ことを特徴とする請求項１に記載の方法。
【請求項５】
前記第１デジタル署名が検証に通過した後、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証する前に、さらに、
前記第１デジタル署名が検証に通過した後、前記アイデンティティ証明親ノードが、前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名得を行って得られた第４デジタル署名を、前記ブロックチェーンから取得するステップと、
前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明開示親ノードの公開鍵に基づいて、前記第４デジタル署名を検証するステップと、
前記第４デジタル署名が検証に通過した後、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証するステップとを含む、ことを特徴とする請求項１に記載の方法。
【請求項６】
認証先ノードに適用される、ブロックチェーンに基づくアイデンティティ認証方法であって、
前記認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を認証元に送信するステップと、
前記認証元ノードが、前記認証先ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認し、且つ前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードと、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かの検証を行うステップと、
前記認証元ノードが、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、前記認証先ノードはアイデンティティ認証に通過するステップとを含む、ことを特徴とするブロックチェーンに基づくアイデンティティ認証方法。
【請求項７】
前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードと、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かの検証を行う前記ステップは、
前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードが送信する検証情報を受信するステップと、
前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って第２デジタル署名を得るステップと、
前記認証元ノードに前記第２デジタル署名を送信し、前記第２デジタル署名が前記認証元による検証に通過したとき、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するステップとを含む、ことを特徴とする請求項６に記載の方法。
【請求項８】
前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードと、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かの検証を行う前記ステップは、
前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証先ノードと前記認証元ノードに予め設定されている所定の情報生成規則に従って検証情報を生成するステップと、
前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って第３デジタル署名を得るステップと、
前記認証元ノードに前記検証情報及び前記第３デジタル署名を送信するステップと、
前記認証元ノードが、前記検証情報が前記情報生成規則に従って生成したものであると確認し、且つ前記認証元ノードが前記認証先ノードの公開鍵に基づいて前記第３デジタル署名に対して行う検証が通過したとき、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するステップとを含む、ことを特徴とする請求項６に記載の方法。
【請求項９】
前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報と前記第１デジタル署名を前記ブロックチェーンに書き込む方法は、
前記アイデンティティ証明開示ノードが前記ブロックチェーンにおいて前記認証先ノードのアイデンティティ情報を確認するための前記認証先ノードのアイデンティティ情報を含むアイデンティティ証明要求を前記ブロックチェーンに書き込み、且つ、前記アイデンティティ証明開示ノードの秘密鍵に基づいて、前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って前記第１デジタル署名を得て、前記第１デジタル署名を前記ブロックチェーンに書き込むステップを含む、ことを特徴とする請求項６に記載の方法。
【請求項１０】
前記アイデンティティ証明開示ノードが、前記ブロックチェーンに前記第１デジタル署名を失効させるための失効証明を書き込むと、前記認証先ノードの前記第１デジタル署名が失効され、
前記失効証明には、前記第１デジタル署名に対する失効指示、及び前記アイデンティティ証明開示ノードの秘密鍵によって前記失効指示に対してデジタル署名を行って得られた第５デジタル署名が含まれる、ことを特徴とする請求項６に記載の方法。
【請求項１１】
認証元ノードに適用される、ブロックチェーンに基づくアイデンティティ認証装置であって、
認証先ノードが送信した、前記認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を受信するための受信モジュールと、
前記認証先ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードのアイデンティティ情報、及び前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認したとき、前記アイデンティティ証明開示ノードのアイデンティティ情報に基づいて取得した前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証するための第１検証モジュールと、
前記第１デジタル署名が検証に通過した後、前記認証先ノードが、前記認証先ノードのアイデンティティ情報に基づいて取得した前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証するための第２検証モジュールと、
前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、前記認証先ノードがアイデンティティ認証に通過したと決定するための決定モジュールとを備える、ことを特徴とするブロックチェーンに基づくアイデンティティ認証装置。
【請求項１２】
前記第２検証モジュールは、
前記第１デジタル署名が検証に通過した後、前記認証先ノードに検証情報を送信するための送信サブモジュールと、
前記認証先ノードが、前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って得られた第２デジタル署名を受信するための受信サブモジュールと、
前記認証先ノードの公開鍵に基づいて、前記第２デジタル署名を検証するための検証サブモジュールと、
前記第２デジタル署名が検証に通過したとき、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するための確認サブモジュールとを備える、ことを特徴とする請求項１１に記載の装置。
【請求項１３】
前記第２検証モジュールは、
前記認証先ノードが前記認証先ノードと前記認証元ノードに予め設定されている所定の情報生成規則に基づいて生成して送信する検証情報、及び認証先ノードが前記認証先ノードの秘密鍵に基づいて前記検証情報に対してデジタル署名を行って得られた第３デジタル署名を受信するための受信サブモジュールと、
前記検証情報が前記情報生成規則に従って生成したものであるか否かを検証するための情報検証サブモジュールと、
前記検証情報が前記情報生成規則に従って生成したものである場合、前記認証先ノードの公開鍵に基づいて、前記第３デジタル署名を検証するための署名検証サブモジュールと、
前記第３デジタル署名が検証に通過したとき、前記認証先が前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するための確認サブモジュールとを備える、ことを特徴とする請求項１１に記載の装置。
【請求項１４】
前記アイデンティティ証明開示ノードにアイデンティティ証明開示親ノードが存在するとき、前記第１検証モジュールは、
前記アイデンティティ証明親ノードが、前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名得を行って得られた第４デジタル署名を、前記ブロックチェーンから取得し、
前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明開示親ノードの公開鍵に基づいて、前記第４デジタル署名を検証し、
前記第４デジタル署名が検証に通過した後、前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明開示ノードの公開鍵に基づいて、前記第１デジタル署名を検証する、ことを特徴とする請求項１１に記載の装置。
【請求項１５】
前記第１検証モジュールは、
前記第１デジタル署名が検証に通過した後、前記アイデンティティ証明親ノードが、前記アイデンティティ証明親ノードの秘密鍵に基づいて、前記アイデンティティ証明開示ノードの公開鍵に対してデジタル署名得を行って得られた第４デジタル署名を、前記ブロックチェーンから取得し、
前記ブロックチェーンから取得した又は予め記憶された前記アイデンティティ証明開示親ノードの公開鍵に基づいて、前記第４デジタル署名を検証し、
前記第４デジタル署名が検証に通過した後、前記第２検証モジュールが、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かを検証する、ことを特徴とする請求項１１に記載の装置。
【請求項１６】
認証先ノードに適用される、ブロックチェーンに基づくアイデンティティ認証装置であって、
前記認証先ノードのアイデンティティ情報とアイデンティティ証明開示ノードのアイデンティティ情報を含む認証要求を認証元に送信するための認証要求モジュールと、
前記認証元ノードが、前記認証先ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードのアイデンティティ情報、前記アイデンティティ証明開示ノードが前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って得られた第１デジタル署名がブロックチェーンに書き込まれていると確認し、且つ前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードと、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したか否かの検証を行い、前記認証元ノードが、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認したとき、前記認証先ノードはアイデンティティ認証に通過するための検証モジュールとを備える、ことを特徴とするブロックチェーンに基づくアイデンティティ認証装置。
【請求項１７】
前記検証モジュールは、
前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証元ノードが送信する検証情報を受信するための受信サブモジュールと、
前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って第２デジタル署名を得るための署名サブモジュールと、
前記認証元ノードに前記第２デジタル署名を送信し、前記第２デジタル署名が前記認証元による検証に通過したとき、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するための送信サブモジュールとを備える、ことを特徴とする請求項１６に記載の装置。
【請求項１８】
前記検証モジュールは、
前記第１デジタル署名が前記認証元ノードによる検証に通過した後、前記認証先ノードと前記認証元ノードに予め設定されている所定の情報生成規則に従って検証情報を生成するための情報生成サブモジュールと、
前記認証先ノードの秘密鍵に基づいて、前記検証情報に対してデジタル署名を行って第３デジタル署名を得るための署名サブモジュールと、
前記認証元ノードに前記検証情報及び前記第３デジタル署名を送信し、前記認証元ノードが、前記検証情報が前記情報生成規則に従って生成したものであると確認し、且つ前記認証元ノードが前記認証先ノードの公開鍵に基づいて前記第３デジタル署名に対して行う検証が通過したとき、前記認証先ノードが前記認証先ノードの公開鍵に対応した秘密鍵を把握したと確認するための送信サブモジュールとを備える、ことを特徴とする請求項１６に記載の装置。
【請求項１９】
前記アイデンティティ証明開示ノードが前記ブロックチェーンにおいて前記認証先ノードのアイデンティティ情報を確認するための前記認証先ノードのアイデンティティ情報を含むアイデンティティ証明要求を前記ブロックチェーンに書き込み、且つ、前記アイデンティティ証明開示ノードの秘密鍵に基づいて、前記認証先ノードのアイデンティティ情報に対してデジタル署名を行って前記第１デジタル署名を得て、前記第１デジタル署名を前記ブロックチェーンに書き込むアイデンティティ証明要求モジュールをさらに備える、ことを特徴とする請求項１６に記載の装置。
【請求項２０】
前記アイデンティティ証明開示ノードが、前記ブロックチェーンに前記第１デジタル署名を失効させるための失効証明を書き込むと、前記認証先ノードの前記第１デジタル署名が失効され、前記失効証明には、前記第１デジタル署名に対する失効指示、及び前記アイデンティティ証明開示ノードの秘密鍵によって前記失効指示に対してデジタル署名を行って得られた第５デジタル署名が含まれる、ことを特徴とする請求項１６に記載の装置。
【請求項２１】
不揮発性のコンピュータ可読記憶媒体であって、
請求項１から５のいずれか一項に記載の方法を実行するための１つ又は複数のプログラムを含む、ことを特徴とする不揮発性のコンピュータ可読記憶媒体。
【請求項２２】
ユーザノードであって、
コンピュータプログラムが記憶されているメモリと、
請求項１から５のいずれか一項に記載の方法を実現するように、前記メモリに記憶されている前記コンピュータプログラムを実行するための１つ又は複数のプロセッサとを備える、ことを特徴とするユーザノード。
【請求項２３】
不揮発性のコンピュータ可読記憶媒体であって、
請求項６から１０のいずれか一項に記載の方法を実行するための１つ又は複数のプログラムを含む、ことを特徴とする不揮発性のコンピュータ可読記憶媒体。
【請求項２４】
ユーザノードであって、
コンピュータプログラムが記憶されているメモリと、
請求項６から１０のいずれか一項に記載の方法を実現するように、前記メモリに記憶されている前記コンピュータプログラムを実行するための１つ又は複数のプロセッサとを含む、ことを特徴とするユーザノード。
【国際調査報告】
2019519987.tif 000019
2019519987.tif 000020
2019519987.tif 000021
2019519987.tif 000022