IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ シクパ ホルディング ソシエテ アノニムの特許一覧

特表2024-535720デジタルコンテンツの妥当性を確認するための方法及びシステム
<>
  • 特表-デジタルコンテンツの妥当性を確認するための方法及びシステム 図1
  • 特表-デジタルコンテンツの妥当性を確認するための方法及びシステム 図2
  • 特表-デジタルコンテンツの妥当性を確認するための方法及びシステム 図3
  • 特表-デジタルコンテンツの妥当性を確認するための方法及びシステム 図4
  • 特表-デジタルコンテンツの妥当性を確認するための方法及びシステム 図5
  • 特表-デジタルコンテンツの妥当性を確認するための方法及びシステム 図6
  • 特表-デジタルコンテンツの妥当性を確認するための方法及びシステム 図7
  • 特表-デジタルコンテンツの妥当性を確認するための方法及びシステム 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-10-02
(54)【発明の名称】デジタルコンテンツの妥当性を確認するための方法及びシステム
(51)【国際特許分類】
   H04L 9/32 20060101AFI20240925BHJP
【FI】
H04L9/32 200B
H04L9/32 200E
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024513213
(86)(22)【出願日】2022-08-31
(85)【翻訳文提出日】2024-03-18
(86)【国際出願番号】 EP2022074262
(87)【国際公開番号】W WO2023031310
(87)【国際公開日】2023-03-09
(31)【優先権主張番号】21194289.1
(32)【優先日】2021-09-01
(33)【優先権主張国・地域又は機関】EP
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.QRコード
2.BLUETOOTH
(71)【出願人】
【識別番号】311007051
【氏名又は名称】シクパ ホルディング ソシエテ アノニム
【氏名又は名称原語表記】SICPA HOLDING SA
【住所又は居所原語表記】Avenue de Florissant 41,CH-1008 Prilly, Switzerland
(74)【代理人】
【識別番号】100107456
【弁理士】
【氏名又は名称】池田 成人
(74)【代理人】
【識別番号】100128381
【弁理士】
【氏名又は名称】清水 義憲
(74)【代理人】
【識別番号】100162352
【弁理士】
【氏名又は名称】酒巻 順一郎
(72)【発明者】
【氏名】テヴォー, フィリップ
(72)【発明者】
【氏名】ギレット, フィリップ
(57)【要約】
本発明は、例えばデジタル文書などの、デジタルデータの妥当性確認及び認証の技術分野に関連している。特に、本発明は、コントローラが動作を実行することを許可する実体によって認証される動作などの、デジタルメッセージのデジタルコンテンツの妥当性確認の技術分野に関連している。
【選択図】 図1
【特許請求の範囲】
【請求項1】
通信ネットワークCNを介してコントローラBによって制御されるデバイスDBによって受信されたデジタルメッセージMのデジタルコンテンツの妥当性確認の方法であって、
コントローラAによって制御されるデバイスDAが、前記デジタルメッセージMを格納しているメモリを有するプロセッシングユニットCPU(A)と、前記通信ネットワークCNを介してデータを送信及び受信するように構成された通信モジュールCM(A)とを備え、
前記デバイスDBが、集約デジタル署名ADSを格納しているメモリを有するプロセッシングユニットCPU(B)と、前記通信ネットワークCNを介してデータを送信及び受信するように構成された通信モジュールCM(B)とを備え、前記集約デジタル署名ADSが、一方向累算器を複数のデジタル署名に適用することによって計算され、前記複数のデジタル署名が、一方向関数によって計算された許可データAD(A)のデジタル署名x(A)を含み、
前記デジタルメッセージMが、前記デバイスDAの前記コントローラAが、前記デジタルメッセージMを受信するデバイスのコントローラを使用して動作Opを実行することをコントローラCによって許可されていることを示す前記許可データAD(A)を含み、
前記デジタルメッセージMが、前記コントローラCに起因する検証鍵VK(A)も含み、前記許可データAD(A)と共に、前記検証鍵VK(A)が、候補集約デジタル署名cADSを計算するために使用され、前記プロセッシングユニットCPU(B)が、前記候補集約デジタル署名cADSを、前記デバイスDBの前記プロセッシングユニットCPU(B)の前記メモリに格納された前記集約デジタル署名ADSと比較するように構成され、
前記方法が、
前記デバイスDBの前記通信モジュールCM(B)が前記デジタルメッセージMを受信する(100b、200)ステップと、
前記デバイスDBの前記プロセッシングユニットCPU(B)が、前記デジタルメッセージMに含まれている前記許可データAD(A)を抽出する(201)ステップと、
前記デバイスDBの前記通信モジュールCM(B)が前記デバイスDAの前記通信モジュールCM(A)から認定SAを受信する(400)ステップと、
前記デバイスDBの前記プロセッシングユニットCPU(B)が前記認定SAを検証する(400b)ステップと、
前記デバイスDBの前記プロセッシングユニットCPU(B)が、
前記デジタルメッセージMに含まれている前記検証鍵VK(A)を抽出し(204)、
前記プロセッシングユニットCPU(B)においてプログラムされた前記一方向関数によって前記許可データAD(A)の候補デジタル署名cx(A)を計算し(203)、
前記検証鍵VK(A)と前記許可データAD(A)の前記計算された候補デジタル署名cx(A)とから前記候補集約デジタル署名cADSを計算する(205)ように構成され、
前記デバイスDBの前記プロセッシングユニットCPU(B)が、メモリに格納された(206)前記集約デジタル署名ADSと前記候補集約デジタル署名cADSが一致するかどうかをチェックし(207)、前記認定SAデータの肯定的な検証、及び前記集約デジタル署名ADSとの前記候補集約デジタル署名cADSの肯定的な一致の場合にのみ、前記デバイスDBの前記プロセッシングユニットCPU(B)が、前記通信モジュールCM(B)を介して、前記コントローラAが前記動作Opを実行する(500a)ことを実際に前記コントローラCによって許可されているという指示を前記コントローラBに送信する(500)ステップとを含む、
方法。
【請求項2】
前記デバイスDAの前記プロセッシングユニットCPU(A)の前記メモリが秘密鍵PrK(A)を格納し、前記プロセッシングユニットCPU(A)が、前記秘密鍵PrK(A)を使用してデータに署名するように構成され、
前記デバイスDBの前記プロセッシングユニットCPU(B)が、前記通信モジュールCM(B)によって、対応する公開鍵を使用して、署名されたデータを検証するように構成され、
前記デジタルメッセージMが、前記秘密鍵PrK(A)に対応する、前記コントローラAによって所有されているとして前記コントローラCによって認定されている公開鍵PuK(A)をさらに含み、
前記認定SAが、前記秘密鍵PrK(A)を使用して署名された認定データであり、
前記デバイスDBの前記プロセッシングユニットCPU(B)によって前記認定SAを検証する(400b)前記ステップの前に、前記デバイスDBの前記プロセッシングユニットCPU(B)が前記デジタルメッセージMから前記公開鍵PuK(A)を抽出し(202)、
前記認定SAを検証する(400b)前記ステップが、前記公開鍵PuK(A)を使用する前記デバイスDBの前記プロセッシングユニットCPU(B)による前記認定SAの前記検証を含む、
請求項1に記載の方法。
【請求項3】
前記通信ネットワークCNが近距離無線通信ネットワークNFCNを含み、前記通信モジュールCM(A)が、前記近距離無線通信ネットワークNFCNを介してデータを送信及び受信するように構成され、前記通信モジュールCM(B)が、前記近距離無線通信ネットワークNFCNを介してデータを送信及び受信するように構成され、前記近距離無線通信ネットワークNFCNが、前記通信モジュールCM(A)と前記通信モジュールCM(B)の間の距離が50cm未満のときに、前記通信モジュールCM(A)と前記通信モジュールCM(B)の間の通信を可能にする、
請求項1~2のいずれか一項に記載の方法。
【請求項4】
前記デバイスDAが、ディスプレイモジュールDD(A)及び光学式読み取り装置モジュールOR(A)を備え、前記デバイスDBが、ディスプレイモジュールDD(B)及び光学式読み取り装置モジュールOR(B)を備え、前記デバイスDBの前記通信モジュールCM(B)によって前記デジタルメッセージMを受信する前記ステップが、前記ディスプレイモジュールDD(A)によって表示されたグラフィカルデータブロックGDBの光学読み取り可能な表現を前記光学式読み取り装置モジュールOR(B)によって読み取るステップを含み、前記グラフィカルデータブロックGDBがデジタルマークDMを含み、前記デジタルマークDMが、前記許可データAD(A)のエンコードされたバージョンEAD(A)と前記検証鍵VK(A)のエンコードされたバージョンEVK(A)とを含み、前記許可データAD(A)の前記抽出が、前記エンコードされた許可データEAD(A)をデコードすることを含み、前記検証鍵VK(A)の前記抽出が、前記エンコードされた検証鍵EVK(A)をデコードすることを含む、
請求項1~3のいずれか一項に記載の方法。
【請求項5】
前記グラフィカルデータブロックGDBの前記光学読み取り可能な表現が、グラフィカルシンボルの特定の有限のセットからのグラフィカルシンボルのデジタル表現を含み、グラフィカルシンボルの前記デジタル表現が、前記デジタルマークMD及び機械可読エラー訂正データブロックをエンコードするように構成される、
請求項4に記載の方法。
【請求項6】
前記デバイスDBの前記メモリが、前記コントローラBによって所有されているとしてコントローラCによって認定された秘密鍵Prk(B)及び対応する公開鍵PuK(B)を格納し、前記デバイスDBの前記プロセッシングユニットCPU(B)が、前記秘密鍵PrK(B)を使用してデータに署名するように構成され、前記デバイスDAの前記プロセッシングユニットCPU(A)が、前記通信モジュールCM(A)によって、対応する公開鍵を使用して、署名されたデータを検証するように構成される、
請求項1~5のいずれか一項に記載の方法。
【請求項7】
前記通信モジュールCM(B)によって前記通信モジュールCM(A)から前記認定SAを受信する(400)前記ステップの前に、前記デバイスDBによって生成された秘密を前記通信モジュールCM(B)から前記通信モジュールCM(A)に送信する(300)ステップを含み、前記秘密が前記認定SAを生成するように構成される、
請求項1~6のいずれか一項に記載の方法。
【請求項8】
前記秘密が、前記認定SAを生成するために、前記プロセッシングユニットCPU(A)によって前記秘密鍵PrK(A)を使用して署名される(300a)ように構成される、
請求項2と組み合わせた請求項7に記載の方法。
【請求項9】
前記秘密を送信する(300)前記ステップが、前記秘密をエンコードし且つ前記光学式読み取り装置モジュールOR(A)によって読み取られるように構成されたグラフィック要素の光学読み取り可能な表現を前記ディスプレイモジュールDD(B)によって表示するステップを含む、
請求項4~5のいずれか一項と組み合わせた請求項7~8のいずれか一項に記載の方法。
【請求項10】
前記デジタルメッセージMを受信する前又は後に、前記コントローラBがデジタル文書を受信し、前記認定SAが前記デジタル文書のコンテンツの署名を含み、前記署名が、前記秘密鍵PrK(A)を使用して前記コンテンツに署名することにより前記プロセッシングユニットCPU(A)によって生成される、
請求項2と組み合わせた請求項1~9のいずれか一項に記載の方法。
【請求項11】
前記デジタルメッセージMが前記コントローラCによって認証され(10)、前記方法が、前記デジタルメッセージMに含まれている前記許可データAD(A)を前記デバイスDBのプロセッシングユニットCPU(B)によって抽出する(201)前記ステップの前に、前記プロセッシングユニットCPU(B)によって、前記デジタルメッセージMが前記コントローラCによって認証されていることを検証する(10b)ステップを含み、前記デジタルメッセージMが前記コントローラCによって認証されている(10)という肯定的な検証の場合にのみ、前記デバイスDBの前記プロセッシングユニットCPU(B)が、前記デジタルメッセージMに含まれている前記許可データAD(A)を抽出する(201)、
請求項1~10のいずれか一項に記載の方法。
【請求項12】
通信ネットワークCNを介してコントローラBによって制御されるデバイスDBによって受信されたデジタルメッセージMのデジタルコンテンツの妥当性確認のシステムであって、前記システムが、
前記デジタルメッセージMを格納しているメモリを有するプロセッシングユニットCPU(A)と、前記通信ネットワークCNを介してデータを送信及び受信するように構成された通信モジュールCM(A)とを備えるコントローラAによって制御されるデバイスDAを備え、
前記デバイスDBが、集約デジタル署名ADSを格納しているメモリを有するプロセッシングユニットCPU(B)と、前記通信ネットワークCNを介してデータを送信及び受信するように構成された通信モジュールCM(B)とを備え、前記集約デジタル署名ADSが、一方向累算器を複数のデジタル署名に適用することによって計算され、前記複数のデジタル署名が、一方向関数によって計算された許可データAD(A)のデジタル署名x(A)を含み、
前記デジタルメッセージMが、前記デバイスDAの前記コントローラAが、前記デジタルメッセージMを受信するデバイスのコントローラを使用して動作Opを実行することをコントローラCによって許可されていることを示す前記許可データAD(A)を含み、
前記デジタルメッセージMが前記コントローラCに起因する検証鍵VK(A)も含み、前記許可データAD(A)と共に、前記検証鍵VK(A)が、候補集約デジタル署名cADSを計算するために使用され、前記プロセッシングユニットCPU(B)が、前記候補集約デジタル署名cADSを、前記デバイスDBの前記プロセッシングユニットCPU(B)の前記メモリに格納された前記集約デジタル署名ADSと比較するように構成され、
前記デバイスDBの前記通信モジュールCM(B)が、前記デジタルメッセージMを受信する(100b、200)ように構成され、
前記デバイスDBの前記プロセッシングユニットCPU(B)が、前記デジタルメッセージMに含まれている前記許可データAD(A)を抽出する(201)ように構成され、
前記デバイスDBの前記通信モジュールCM(B)が、前記デバイスDAの前記通信モジュールCM(A)から認定SAを受信する(400)ように構成され、
前記デバイスDBの前記プロセッシングユニットCPU(B)が、前記認定SAを検証する(400b)ように構成され、
前記デバイスDBの前記プロセッシングユニットCPU(B)が、
前記デジタルメッセージMに含まれている前記検証鍵VK(A)を抽出し(204)、
前記プロセッシングユニットCPU(B)においてプログラムされた前記一方向関数によって前記許可データAD(A)の候補デジタル署名cx(A)を計算し(203)、
前記検証鍵VK(A)と前記許可データAD(A)の前記計算された候補デジタル署名cx(A)とから前記候補集約デジタル署名cADSを計算する(205)ように構成され、
前記デバイスDBの前記プロセッシングユニットCPU(B)が、メモリに格納された(206)前記集約デジタル署名ADSと前記候補集約デジタル署名cADSが一致するかどうかをチェックする(207)ように構成され、前記認定SAデータの肯定的な検証、及び前記集約デジタル署名ADSとの前記候補集約デジタル署名cADSの肯定的な一致の場合にのみ、前記デバイスDBの前記プロセッシングユニットCPU(B)が、前記通信モジュールCM(B)を介して、前記コントローラAが前記コントローラCによって前記動作Opを実行する(500a)ことを実際に許可されているという指示を前記コントローラBに送信する(500)ように構成される、
システム。
【請求項13】
前記デバイスDAの前記プロセッシングユニットCPU(A)の前記メモリが秘密鍵PrK(A)を格納するように構成され、前記プロセッシングユニットCPU(A)が前記秘密鍵PrK(A)を使用してデータに署名するように構成され、
前記デバイスDBの前記プロセッシングユニットCPU(B)が、前記通信モジュールCM(B)によって、対応する公開鍵を使用して、署名されたデータを検証するように構成され、
前記デジタルメッセージMが、前記秘密鍵PrK(A)に対応する、前記コントローラAによって所有されているとして前記コントローラCによって認定されている公開鍵PuK(A)をさらに含み、
前記認定SAが、前記秘密鍵PrK(A)を使用して署名された認定データであり、
前記デバイスDBの前記プロセッシングユニットCPU(B)が、前記デジタルメッセージMから前記公開鍵PuK(A)を抽出する(202)ように構成され、
前記デバイスDBの前記プロセッシングユニットCPU(B)が、前記公開鍵PuK(A)を使用して前記認定SAを検証する(400b)ように構成される、
請求項12に記載のシステム。
【請求項14】
前記デバイスDAがディスプレイモジュールDD(A)及び光学式読み取り装置モジュールOR(A)を備え、前記デバイスDBがディスプレイモジュールDD(B)及び光学式読み取り装置モジュールOR(B)を備え、前記デバイスDAの前記ディスプレイモジュールDD(A)が、グラフィカルデータブロックGDBの光学読み取り可能な表現を表示するように構成され、前記デバイスDBの前記光学式読み取り装置モジュールOR(B)が、グラフィカルデータブロックGDBの前記光学読み取り可能な表現を読み取るように構成され、前記グラフィカルデータブロックGDBがデジタルマークDMを含み、前記デジタルマークDMが、前記許可データAD(A)のエンコードされたバージョンEAD(A)及び前記検証鍵VK(A)のエンコードされたバージョンEVK(A)を含み、前記デバイスDBの前記プロセッシングユニットCPU(B)が、前記エンコードされた許可データEAD(A)をデコードすることによって前記許可データAD(A)を抽出するように構成され、前記デバイスDBの前記プロセッシングユニットCPU(B)が、前記エンコードされた検証鍵EVK(A)をデコードすることによって前記検証鍵VK(A)を抽出するように構成される、
請求項12~13のいずれか一項に記載のシステム。
【請求項15】
デバイスDBによって動作Opの実行の妥当性を確認するための、請求項12~14のいずれか一項に記載のデジタルメッセージMのデジタルコンテンツの妥当性確認の前記システムの使用であって、前記動作OpがデバイスDAによって実行され、
前記デバイスDBが保管室Bに備えられて制御され、デバイスDAがロボットAに備えられて制御され、前記動作Opが、前記ロボットAが前記保管室Bの内部に配置された特定の商品を取ってくることに関連し、又は
前記デバイスDBがコンピュータBに備えられて制御され、前記デバイスDAがスマートフォンAに備えられて制御され、前記動作Opが、前記スマートフォンAがデータSeD(A)のセットを前記コンピュータBに送信することに関連し、又は
前記デバイスDBが医療用デバイスBに備えられて制御され、前記デバイスDAが看護師Aに備えられて制御され、前記動作Opが、前記看護師Aが前記医療用デバイスBを使用して特定の薬品を特定の患者に注射することに関連し、又は
前記デバイスDBが市民Bに備えられて制御され、前記デバイスDAが警官Aに備えられて制御され、前記動作Opが、前記警官Aが前記市民Bの家に立ち入って証拠を探すことに関連し、又は
前記デバイスDBが市民Bに備えられて制御され、前記デバイスDAが公務員Aに備えられて制御され、前記動作Opが、前記公務員Aが公式デジタル文書を発行して署名することに関連する、
前記システムの使用。
【発明の詳細な説明】
【技術分野】
【0001】
[001]本発明は、例えばデジタル文書などの、デジタルデータの妥当性確認及び認証の技術分野に関連している。特に、本発明は、コントローラが動作を実行することを許可する実体によって認証される前述の動作などの、デジタルメッセージのデジタルコンテンツの妥当性確認の技術分野に関連している。
【発明の背景】
【0002】
[002]デジタルデータの偽造及び改ざんの問題がよく知られており、毎日増大している。産業分野に関して、複数のプロセスのデジタル化が、通常、サイバー攻撃に対して非常に脆弱である。あるコンピュータが別のコンピュータと対話する場合、所定のセキュリティプロトコルは、ハッカーの技術に対してほとんど十分ではない。さらに、非常に多くの産業が存在し、コンピュータが互いの間で通信するための非常に多くのプロトコルが存在するため、これらの問題に関する従来技術の解決策は、実装するのが非常に困難であり、多額の費用がかかり、各状況に応じて適応されなければならない。したがって、例えば、複数のデバイスがデータを交換するか、又は例えば許可された任務を実行する必要がある場合に、信頼できない環境内のプロセスの完全性を保証するための解決策に対する差し迫った必要性が存在する。
【0003】
[003]したがって、高度なセキュリティを伴って、デジタルデータ又はそのようなデジタルデータを含んでいるそのようなデジタル文書を提示するオペレータの妥当性を確認し、認証できることは、現在、これまで以上に絶対不可欠なことになっている。それと同時に、容易に素早く実装され得る低コストの解決策を見つけることが必須である。
【0004】
[004]実際に、現在、コンピュータ、ロボット、又は市民は、デジタル文書にデジタル署名したオペレータ又は職員が、署名が表す機関を代表してそのような文書に署名し、妥当性を確認するための正当性を有するということを、どのようにして確実に識別できるだろうか?
【0005】
[005]より一般的な方法では、コンピュータ又はロボットは、このデジタル署名の背後にいるコンピュータ又はロボットが、正しいコンピュータ又はロボットであること、及びこの実体が、組織を代表してそのような文書に署名することを許可されているということを、どのようにして確認できるだろうか?
【0006】
[006]要するに、実体は、デジタル署名されたデータ及びデータに署名した実体を、どのようにして信用できるだろうか?
【0007】
[007]物理的な世界では、紙の文書に信頼性を与えるのは、文書を発行した機関の署名、及び特に、スタンプ又はシールである。デジタル世界において、この状況を置き換える必要がある。
【0008】
[008]デジタル世界では、信頼性の付与は、主に、証明書のチェーンによって認証されるデジタル署名による。例えば、当業者は、米国特許出願公開第2021/258168A1号の文書に記載された解決策などの、偽造に対してデジタルファイルを保護するための解決策を知っている。しかし、この解決策は、かなりのセキュリティを欠いており、署名者が、署名が表す機関を代表して、その特定の日付に、当該の文書の種類に署名するための権限及び権利を有していたことを、高い確実性を伴って保証しない。
【0009】
[009]したがって、より高い確実性を伴って、デジタルデータ又はデジタル文書の妥当性を確認すること、及びしたがって、これらのデジタルデータ又はこのデジタル文書を受信者に提示しているオペレータを認証できるようにすることが、本発明の目的である。
【発明の概要】
【0010】
[010]1つの態様によれば、本発明は、通信ネットワークCNを介してコントローラBによって制御されるデバイスDBによって受信される偽造防止デジタルファイル(forgery proof digital file)の形態であるのが好ましい、デジタルメッセージMのデジタルコンテンツの妥当性確認の方法に関連しており、
コントローラAによって制御されるデバイスDAが、デジタルメッセージMを格納しているメモリを有するプロセッシングユニットCPU(A)と、通信ネットワークCNを介してデータを送信及び受信するように構成された通信モジュールCM(A)とを備え、
デバイスDBが、集約デジタル署名ADSを格納しているメモリを有するプロセッシングユニットCPU(B)と、通信ネットワークCNを介してデータを送信及び受信するように構成された通信モジュールCM(B)とを備え、前述の集約デジタル署名ADSが、一方向累算器(one-way accumulator)を複数のデジタル署名に適用することによって計算されるのが好ましく、前述の複数のデジタル署名が、一方向関数によって計算された許可データAD(A)のデジタル署名x(A)を含み、
デジタルメッセージMが、デバイスDAのコントローラAが、コントローラCによって、前述のデジタルメッセージMを受信するデバイスのコントローラを使用して動作Opを実行することを許可されていることを示す許可データAD(A)を含み、デジタルメッセージMが、コントローラCによって認証されるのが好ましく、
デジタルメッセージMが、コントローラCに起因する検証鍵VK(A)も含み、許可データAD(A)と共に、前述の検証鍵VK(A)が、デバイスDBのプロセッシングユニットCPU(B)のメモリに格納された集約デジタル署名ADSを取り出すことを可能にし、許可データAD(A)と共に、前述の検証鍵VK(A)が、候補集約デジタル署名cADSを計算するために使用されるのが好ましく、プロセッシングユニットCPU(B)が、前述の候補集約デジタル署名cADSを、デバイスDBのプロセッシングユニットCPU(B)のメモリに格納された集約デジタル署名ADSと比較するように構成され、
この方法は、
デバイスDBの通信モジュールCM(B)がデジタルメッセージMを受信し、デバイスDBの通信モジュールCM(B)が、例えば、通信モジュールCM(A)から、及び/又はコントローラCから、及び/又はデータベースを備えているサーバから、デジタルメッセージMを受信するのが好ましい、ステップ、
デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMがコントローラCによって認証されていることを検証するのが好ましい、ステップ、及び
デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMに含まれている許可データAD(A)を抽出し、デジタルメッセージMがコントローラCによって認証されているという肯定的な検証の場合にのみ抽出するのが好ましい、ステップ、
デバイスDBの通信モジュールCM(B)が、デバイスDAの通信モジュールCM(A)から認定SAを受信するステップ、
デバイスDBのプロセッシングユニットCPU(B)が、認定SAを検証するステップ、
デバイスDBのプロセッシングユニットCPU(B)が、
デジタルメッセージMに含まれている検証鍵VK(A)を抽出することと、
プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補デジタル署名cx(A)を計算することと、
検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADSを計算することとを行うステップ、並びに
デバイスDBのプロセッシングユニットCPU(B)が、候補集約デジタル署名cADSがメモリに格納された集約デジタル署名ADSと一致するかどうかをチェックし、認定SAデータの肯定的な検証及び集約デジタル署名ADSとの候補集約デジタル署名cADSの肯定的な一致の場合にのみ、デバイスDBのプロセッシングユニットCPU(B)が、通信モジュールCM(B)を介して、コントローラAがコントローラCによって動作Opを実行することを実際に許可されているという指示をコントローラBに送信するステップを含む。
【0011】
[011]本発明は、受信者が、従来技術の解決策よりも高い確実性を伴って、特定のデジタルコンテンツの妥当性を確認することを可能にする。実際に、本発明は、コントローラBが、従来技術の解決策よりも高い確実性を伴って、デジタルメッセージMのデジタルコンテンツの妥当性を確認することを可能にする。
【0012】
[012]さらに、本発明は、このデジタルコンテンツが有効であるかどうかをチェックするために、デバイスDBがこのデジタルコンテンツにリンクされた認証情報を制御することを可能にする。
【0013】
[013]本発明は、コントローラBが、コントローラAを識別することを必要とせずに、コントローラAの公開鍵に基づいて特定のデジタルコンテンツの妥当性を確認することを可能にする。
【0014】
[014]このシステムによれば、コントローラBが集約デジタル署名ADSを含んでいる限り、コントローラBがデジタルメッセージMのデジタルコンテンツの妥当性を確認するために、コントローラA及びコントローラBは、コントローラCに問い合わせることも、コントローラCのデータベースにアクセスすることも必要としない。
【0015】
[015]実施形態によれば、デバイスDAのプロセッシングユニットCPU(A)のメモリは、秘密鍵PrK(A)を格納し、プロセッシングユニットCPU(A)のメモリの保護されたエンクレーブに格納するのが好ましく、プロセッシングユニットCPU(A)は、秘密鍵PrK(A)を使用してデータに署名するように構成され、デバイスDBのプロセッシングユニットCPU(B)は、通信モジュールCM(B)によって、対応する公開鍵を使用して署名されたデータを検証するように構成され、デジタルメッセージMは、秘密鍵PrK(A)に対応する、コントローラAによって所有されているとしてコントローラCによって認定されている公開鍵PuK(A)をさらに含み、認定SAは、秘密鍵PrK(A)を使用して署名された認定データであり、デバイスDBのプロセッシングユニットCPU(B)によって前述の認定SAを検証するステップの前に、デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMから公開鍵PuK(A)を抽出し、前述の認定SAを検証するステップが、前述の公開鍵PuK(A)を使用するデバイスDBのプロセッシングユニットCPU(B)による認定SAの検証を含む。
【0016】
[016]これによって、コントローラBが、認定データに署名したコントローラAが、実際に、デジタルメッセージMにおいて言及された同じコントローラAであるということを検証することを可能にする。
【0017】
[017]実施形態によれば、デジタルメッセージMは、コントローラCによって認証され、前述の方法は、デバイスDBのプロセッシングユニットCPU(B)によって、デジタルメッセージMに含まれている許可データAD(A)を抽出するステップの前に、プロセッシングユニットCPU(B)によって、デジタルメッセージMがコントローラCによって認証されていることを検証するステップを含み、デジタルメッセージMがコントローラCによって認証されているという肯定的な検証の場合にのみ、デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMに含まれている許可データAD(A)を抽出する。
【0018】
[018]これによって、デジタルメッセージMがコントローラCによって正当に発行されたことを検証することを可能にする。例によれば、プロセッシングユニットCPU(B)によって、デジタルメッセージMがコントローラCによって認証されていることを検証するステップは、例えば、暗号プロセス又は暗号署名を使用して実行され得る。
【0019】
[019]別の態様によれば、本発明は、通信ネットワークCNを介してコントローラBによって制御されるデバイスDBによって受信されたデジタルメッセージMのデジタルコンテンツの妥当性確認のシステムに関連しており、このシステムは、
デジタルメッセージMを格納しているメモリを有するプロセッシングユニットCPU(A)と、通信ネットワークCNを介してデータを送信及び受信するように構成された通信モジュールCM(A)とを備える、コントローラAによって制御されるデバイスDAを備え、
デバイスDBが、集約デジタル署名ADSを格納しているメモリを有するプロセッシングユニットCPU(B)と、通信ネットワークCNを介してデータを送信及び受信するように構成された通信モジュールCM(B)とを備え、前述の集約デジタル署名ADSが、一方向累算器を複数のデジタル署名に適用することによって計算され、前述の複数のデジタル署名が、一方向関数によって計算された許可データAD(A)のデジタル署名x(A)を含み、
デジタルメッセージMが、デバイスDAのコントローラAが、コントローラCによって、前述のデジタルメッセージMを受信するデバイスのコントローラを使用して動作Opを実行することを許可されていることを示す許可データAD(A)を含み、デジタルメッセージMが、コントローラCによって認証されるのが好ましく、
デジタルメッセージMが、コントローラCに起因する検証鍵VK(A)も含み、許可データAD(A)と共に、前述の検証鍵VK(A)が、デバイスDBのプロセッシングユニットCPU(B)のメモリに格納された集約デジタル署名ADSを取り出すことを可能にし、許可データAD(A)と共に、前述の検証鍵VK(A)が、候補集約デジタル署名cADSを計算するために使用されるのが好ましく、プロセッシングユニットCPU(B)が、前述の候補集約デジタル署名cADSを、デバイスDBのプロセッシングユニットCPU(B)のメモリに格納された集約デジタル署名ADSと比較するように構成され、
デバイスDBの通信モジュールCM(B)が、デジタルメッセージMを受信するように構成され、デバイスDBの通信モジュールCM(B)が、例えば、通信モジュールCM(A)から、及び/又はコントローラCから、及び/又はデータベースを備えているサーバから、デジタルメッセージMを受信するように構成されるのが好ましく、
デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMがコントローラCによって認証されていることを検証するように構成されるのが好ましく、
デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMに含まれている許可データAD(A)を抽出するように構成され、この抽出が、デジタルメッセージMがコントローラCによって認証されているという肯定的な検証の場合にのみ行われるのが好ましく、
デバイスDBの通信モジュールCM(B)が、デバイスDAの通信モジュールCM(A)から認定SAを受信するように構成され、
デバイスDBのプロセッシングユニットCPU(B)が、認定SAを検証するように構成され、
デバイスDBのプロセッシングユニットCPU(B)が、
デジタルメッセージMに含まれている検証鍵VK(A)を抽出することと、
プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補デジタル署名cx(A)を計算することと、
検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADSを計算することとを行うように構成され、
デバイスDBのプロセッシングユニットCPU(B)が、候補集約デジタル署名cADSがメモリに格納された集約デジタル署名ADSと一致するかどうかをチェックするように構成され、認定SAデータの肯定的な検証及び集約デジタル署名ADSとの候補集約デジタル署名cADSの肯定的な一致の場合にのみ、デバイスDBのプロセッシングユニットCPU(B)が、通信モジュールCM(B)を介して、コントローラAがコントローラCによって動作Opを実行することを実際に許可されているという指示をコントローラBに送信するように構成される。
【0020】
[020]例えば、本発明は、例えばロボットなどのコントローラAが、認定SA及び認証情報だけを使用してコントローラA自身を識別することを可能にし、前述の認証情報は、デジタルメッセージM内にあり、コントローラCによって発行された偽造防止デジタルファイルによって認証される。デジタルメッセージMは、コントローラCによって発行された偽造防止デジタルファイルを含むか、又は偽造防止デジタルファイルであるのが有利である。別のロボットなどのコントローラBは、提示された認証情報の妥当性を完全に信頼することができる。
【0021】
[021]例えばコントローラAが人間である場合に、本発明が生体測定データの使用を回避するということに、注意しなければならない。コントローラAの認証情報及び認定SAは、完全な信頼性を、受信者、ここでは、例えばロボット、コンピュータ、又は別の人間であることができる、コントローラBに与えるのに十分である。本発明は、任意の生体測定データ、生体測定、又は個人情報の開示を回避するのが有利である。
【0022】
[022]本発明の実施形態によれば、コントローラAは、秘密鍵を持つことができ、例えばチャレンジによって、コントローラA自身を識別するために、前述の認定SAに関して秘密鍵を使用することができる。前述の秘密鍵は、公開鍵に関連付けられる。偽造防止デジタルファイルを発行したコントローラCは、前述の公開鍵を認証しているのが好ましく、受信者、したがってコントローラBが前述の認定SAの妥当性をチェックできるようにするのが有利である。
【0023】
[023]さらに、受信者、すなわちコントローラBは、偽造防止デジタルファイル、すなわちデジタルメッセージMを維持し、コントローラの行動及び/又は任意の産業事件に関する告発などの、いずれかの問題の場合に、デジタルメッセージMを使用して、発行者、すなわちコントローラCに連絡し、コントローラAを識別するように依頼することができる。しかし、コントローラAは、受信者にとって匿名のままであることができ、コントローラAは、コントローラAを識別することができる偽造防止デジタルファイルの唯一の発行者である。
【0024】
[024]別の態様によれば、本発明は、デバイスDBによって、動作Opの実行の妥当性を確認するための、本発明に従うデジタルメッセージMのデジタルコンテンツの妥当性確認のシステムの使用に関連しており、前述の動作がデバイスDAによって実行され、
デバイスDBが、保管室Bに備えられて制御され、デバイスDAが、ロボットAに備えられて制御され、動作Opが、ロボットAが保管室Bの内部に配置された特定の商品を取ってくることに関連しており、又は
デバイスDBが、コンピュータBに備えられて制御され、デバイスDAが、スマートフォンAに備えられて制御され、動作Opが、スマートフォンAがデータSeD(A)のセットをコンピュータBに送信することに関連しており、又は
デバイスDBが、医療用デバイスBに備えられて制御され、デバイスDAが、看護師Aに備えられて制御され、動作Opが、看護師Aが前述の医療用デバイスBを使用して特定の薬品を特定の患者に注射することに関連しており、又は
デバイスDBが、市民Bに備えられて制御され、デバイスDAが、警官Aに備えられて制御され、動作Opが、警官Aが市民Bの家に立ち入って証拠を探すことに関連しており、又は
デバイスDBが、市民Bに備えられて制御され、デバイスDAが、公務員Aに備えられて制御され、動作Opが、公務員が公式デジタル文書を発行して署名することに関連している。
【0025】
[025]下で本発明の実施形態の詳細な再検討を行う前に、関連して、又は代替として使用され得る一部の任意選択的な特性が以下にリストされる。
【0026】
[026]例によれば、デバイスDAのプロセッシングユニットCPU(A)のメモリは、秘密鍵PrK(A)を格納し、プロセッシングユニットCPU(A)のメモリの保護されたエンクレーブに格納するのが好ましく、プロセッシングユニットCPU(A)は、秘密鍵PrK(A)を使用してデータに署名するように構成される。
【0027】
[027]例によれば、デバイスDBのプロセッシングユニットCPU(B)は、通信モジュールCM(B)によって、対応する公開鍵を使用して、署名されたデータを検証するように構成される。
【0028】
[028]例によれば、デジタルメッセージMは、秘密鍵PrK(A)に対応する、コントローラAによって所有されているとしてコントローラCによって認定されている公開鍵PuK(A)をさらに含む。
【0029】
[029]例によれば、認定SAは、秘密鍵PrK(A)を使用して署名された認定データである。
【0030】
[030]例によれば、デバイスDBのプロセッシングユニットCPU(B)によって前述の認定SAを検証するステップの前に、デバイスDBのプロセッシングユニットCPU(B)は、デジタルメッセージMから公開鍵PuK(A)を抽出する。
【0031】
[031]例によれば、前述の認定SAを検証するステップは、前述の公開鍵PuK(A)を使用するデバイスDBのプロセッシングユニットCPU(B)による認定SAの検証を含む。
【0032】
[032]例によれば、通信ネットワークCNは、近距離無線通信ネットワークNFCNを含む。
【0033】
[033]例によれば、通信モジュールCM(A)は、近距離無線通信ネットワークNFCNを介してデータを送信及び受信するように構成され、通信モジュールCM(B)は、近距離無線通信ネットワークNFCNを介してデータを送信及び受信するように構成され、この近距離無線通信ネットワークNFCNは、通信モジュールCM(A)と通信モジュールCM(B)の間の距離が50cm未満のときに、通信モジュールCM(A)と通信モジュールCM(B)の間の通信を可能にするのが好ましく、この距離は、25cm未満であるのが好ましく、10cm未満であるのが有利である。
【0034】
[034]例によれば、デバイスDAは、ディスプレイモジュールDD(A)及び光学式読み取り装置モジュールOR(A)を備え、デバイスDBは、ディスプレイモジュールDD(B)及び光学式読み取り装置モジュールOR(B)を備える。
【0035】
[035]例によれば、デバイスDBの通信モジュールCM(B)によってデジタルメッセージMを受信するステップは、光学式読み取り装置モジュールOR(B)によって、ディスプレイモジュールDD(A)によって表示されたグラフィカルデータブロックGDBの光学読み取り可能な表現を読み取るステップを含み、前述のグラフィカルデータブロックGDBは、デジタルマークDMを含む。
【0036】
[036]例によれば、前述のデジタルマークDMは、前述の許可データAD(A)のエンコードされたバージョンEAD(A)及び前述の検証鍵VK(A)のエンコードされたバージョンEVK(A)を含む。
【0037】
[037]例によれば、許可データAD(A)の抽出は、前述のエンコードされた許可データEAD(A)をデコードすることを含む。
【0038】
[038]例によれば、検証鍵VK(A)の抽出は、前述のエンコードされた検証鍵EVK(A)をデコードすることを含む。
【0039】
[039]例によれば、グラフィカルデータブロックGDBの前述の光学読み取り可能な表現は、グラフィカルシンボルの特定の有限のセットからのグラフィカルシンボルのデジタル表現を含み、グラフィカルシンボルの前述のデジタル表現は、前述のデジタルマークMD及び機械可読エラー訂正データブロック(machine-readable error correction data block)をエンコードするように構成される。
【0040】
[040]例によれば、デバイスDBのメモリは、コントローラBによって所有されているとしてコントローラCによって認定された、プロセッシングユニットCPU(B)のメモリの保護されたエンクレーブ内にあるのが好ましい秘密鍵Prk(B)、及び対応する公開鍵PuK(B)を格納し、デバイスDBのプロセッシングユニットCPU(B)は、前述の秘密鍵PrK(B)を使用してデータに署名するように構成される。
【0041】
[041]例によれば、デバイスDAのプロセッシングユニットCPU(A)は、通信モジュールCM(A)によって、対応する公開鍵を使用して、署名されたデータを検証するように構成される。
【0042】
[042]例によれば、この方法は、通信モジュールCM(B)によって、通信モジュールCM(A)から認定SAを受信するステップの前に、通信モジュールCM(B)から通信モジュールCM(A)に、デバイスDBによって生成された秘密を送信する、特定の瞬間に送信するのが好ましい、ステップを含み、前述の秘密は、前述の認定SAを生成するように構成される。
【0043】
[043]例によれば、前述の秘密は、前述の認定SAを生成するために、プロセッシングユニットCPU(A)によって秘密鍵PrK(A)を使用して署名されるように構成される。
【0044】
[044]例によれば、前述の秘密を送信する前述のステップは、ディスプレイモジュールDD(B)によって、前述の秘密をエンコードし、光学式読み取り装置モジュールOR(A)によって読み取られるように構成された、グラフィック要素の光学読み取り可能な表現を表示するステップを含む。
【0045】
[045]例によれば、デジタルメッセージMを受信する前又は後に、コントローラBは、デジタル文書を受信する。
【0046】
[046]例によれば、認定SAは、前述のデジタル文書のコンテンツの署名を含み、前述の署名は、秘密鍵PrK(A)を使用して前述のコンテンツに署名することによって、プロセッシングユニットCPU(A)によって生成され、認定SAは、前述のデジタル文書のコンテンツの少なくとも一部のハッシュの署名を含むのが好ましく、前述の署名は、秘密鍵PrK(A)を使用してプロセッシングユニットCPU(A)によって生成され、前述のハッシュは、プロセッシングユニットCPU(A)においてプログラムされた一方向関数によって計算される。
【0047】
[047]例によれば、デジタルメッセージMは、コントローラCによって認証される。
【0048】
[048]例によれば、この方法は、デバイスDBのプロセッシングユニットCPU(B)によって、デジタルメッセージMに含まれている許可データAD(A)を抽出するステップの前に、プロセッシングユニットCPU(B)によって、デジタルメッセージMがコントローラCによって認証されていることを検証するステップを含み、デジタルメッセージMがコントローラCによって認証されているという肯定的な検証の場合にのみ、デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMに含まれている許可データAD(A)を抽出する。
【0049】
[049]例によれば、デバイスDAのプロセッシングユニットCPU(A)のメモリは、秘密鍵PrK(A)を格納するように構成され、プロセッシングユニットCPU(A)のメモリの保護されたエンクレーブに格納するように構成されるのが好ましく、プロセッシングユニットCPU(A)は、秘密鍵PrK(A)を使用してデータに署名するように構成される。
【0050】
[050]例によれば、デバイスDBのプロセッシングユニットCPU(B)は、通信モジュールCM(B)によって、対応する公開鍵を使用して、署名されたデータを検証するように構成される。
【0051】
[051]例によれば、デジタルメッセージMは、秘密鍵PrK(A)に対応する、コントローラAによって所有されているとしてコントローラCによって認定されている公開鍵PuK(A)をさらに含む。
【0052】
[052]例によれば、認定SAは、秘密鍵PrK(A)を使用して署名された認定データである。
【0053】
[053]例によれば、デバイスDBのプロセッシングユニットCPU(B)は、デジタルメッセージMから公開鍵PuK(A)を抽出するように構成される。
【0054】
[054]例によれば、デバイスDBのプロセッシングユニットCPU(B)は、前述の公開鍵PuK(A)を使用して前述の認定SAを検証するように構成される。
【0055】
[055]例によれば、デバイスDBは、秘密を生成するように構成され、秘密を特定の瞬間に生成するように構成されるのが好ましい、秘密生成器モジュールSGB(B)を備え、前述の秘密は、デバイスDBの通信モジュールCM(B)によってデバイスDAの通信モジュールCM(A)に送信されるように構成される。
【0056】
[056]例によれば、デバイスDAのプロセッシングユニットCPU(A)は、前述の秘密を使用して前述の認定SAを生成するように構成される。
【0057】
[057]例によれば、デバイスDAのプロセッシングユニットCPU(A)は、秘密鍵PrK(A)を使用して前述の秘密に署名し、前述の認定SAを生成するように構成される。
【0058】
[058]例によれば、デバイスDAは、ディスプレイモジュールDD(A)及び光学式読み取り装置モジュールOR(A)を備え、デバイスDBは、ディスプレイモジュールDD(B)及び光学式読み取り装置モジュールOR(B)を備える。
【0059】
[059]例によれば、デバイスDAのディスプレイモジュールDD(A)は、グラフィカルデータブロックGDBの光学読み取り可能な表現を表示するように構成される。
【0060】
[060]例によれば、デバイスDBの光学式読み取り装置モジュールOR(B)は、グラフィカルデータブロックGDBの前述の光学読み取り可能な表現を読み取るように構成され、前述のグラフィカルデータブロックGDBは、デジタルマークDMを含む。
【0061】
[061]例によれば、前述のデジタルマークDMは、前述の許可データAD(A)のエンコードされたバージョンEAD(A)及び前述の検証鍵VK(A)のエンコードされたバージョンEVK(A)を含む。
【0062】
[062]例によれば、デバイスDBのプロセッシングユニットCPU(B)は、前述のエンコードされた許可データEAD(A)をデコードすることによって許可データAD(A)を抽出するように構成される。
【0063】
[063]例によれば、デバイスDBのプロセッシングユニットCPU(B)は、前述のエンコードされた検証鍵EVK(A)をデコードすることによって検証鍵VK(A)を抽出するように構成される。
【0064】
[064]例によれば、デバイスDBが、保管室Bに備えられて制御され、デバイスDAが、ロボットAに備えられて制御され、動作Opが、ロボットAが保管室Bの内部に配置された特定の商品を取ってくることに関連している。
【0065】
[065]例によれば、デバイスDBが、コンピュータBに備えられて制御され、デバイスDAが、スマートフォンAに備えられて制御され、動作Opが、スマートフォンAがデータSeD(A)のセットをコンピュータBに送信することに関連している。
【0066】
[066]例によれば、デバイスDBが、医療用デバイスBに備えられて制御され、デバイスDAが、看護師Aに備えられて制御され、動作Opが、看護師Aが前述の医療用デバイスBを使用して特定の薬品を特定の患者に注射することに関連している。
【0067】
[067]例によれば、デバイスDBが、市民Bに備えられて制御され、デバイスDAが、警官Aに備えられて制御され、動作Opが、警官Aが市民Bの家に立ち入って証拠を探すことに関連している。
【0068】
[068]例によれば、デバイスDBが、市民Bに備えられて制御され、デバイスDAが、公務員Aに備えられて制御され、動作Opが、公務員Aが公式デジタル文書を発行して署名することに関連している。
【0069】
[069]例によれば、検証鍵VKは、許可データADの候補デジタル署名cxを使用して少なくとも1つの候補集約デジタル署名cADSを計算するように構成され、許可データADの前述の候補デジタル署名cxは、プロセッシングユニットCPU(B)においてプログラムされた一方向関数を使用して計算され、前述のプロセッシングユニットCPU(B)は、前述の候補集約デジタル署名cADSを、デバイスDBのプロセッシングユニットCPU(B)のメモリに格納された集約デジタル署名ADSと比較するように構成される。
【0070】
[070]例によれば、検証鍵は、木に対応するデータ構造に従って構造化されたデジタル署名値のシーケンスを含み、これらのデジタル署名値は、前述の木のノード値及び葉値に対応する。
【0071】
[071]例によれば、候補集約デジタル署名cADSは、デジタル署名値に対応するノード値のシーケンスを含んでいる検証鍵VKを使用し、許可データADの計算された候補デジタル署名cxを使用して、計算されることが可能であり、前述の計算された候補デジタル署名cxは、プロセッシングユニットCPU(B)においてプログラムされた一方向関数を使用して計算される。
【0072】
[072]例によれば、検証鍵VKは、木の構造に従って構造化されたノード値のシーケンスを含み、前述のノード値は、デジタル署名値に対応し、許可データADの計算された候補デジタル署名cxは、プロセッシングユニットCPU(B)においてプログラムされた一方向関数を使用して計算され、候補集約デジタル署名cADSの計算は、
a.検証鍵VK内のノード値のシーケンスから、許可データADの計算された候補デジタル署名cxに対応する特定の葉ノードのノード値以外の、同じ親ノードを有する木の他のすべての葉ノードのノード値(すなわち、デジタル署名値)を抽出し、特定のノード値、及び前述の他のすべての葉ノードの抽出されたノード値の連結のデジタル署名を、それぞれ木内のノードの順序付け及び木連結順序付け(tree concatenation ordering)に従って計算し、このようにして、特定の葉ノードの前述の同じ親ノードのデジタル署名を取得するステップ、
b.木内のそれぞれ次のレベルで、最後から2番目のノードレベルまで連続的に、
c.検証鍵VKのノード値のシーケンスから、先行するステップで考慮された前の同じ親ノードのノード値以外の、同じ親ノードを有する木の他のすべての非葉ノードのノード値(すなわち、デジタル署名値)を抽出するステップ、及び
d.木内のノードの順序付け及び木連結順序付けに従って、前述の各他のすべての非葉ノードのノード値及び前述の前の同じ親ノードの取得されたデジタル署名の連結のデジタル署名を計算し、このようにして、前述の前の同じ親ノードの前述の同じ親ノードのノード値を取得するステップ、並びに
e.木内のノードの順序付け及び木連結順序付けに従って、木の最後から2番目のノードレベルに対応する非葉ノードの取得されたノード値の連結のデジタル署名を計算し、このようにして、木のルートノードのルートデジタル署名を取得するステップであって、前述のルートデジタル署名が、候補集約デジタル署名cADSに対応するステップを含む。
【図面の簡単な説明】
【0073】
[073]本発明の目標、目的、並びに技術的特徴及び利点は、以下の図によって例示される本発明の実施形態の詳細な説明からさらに良く明らかになるであろう。
図1】本発明の実施形態の全体的な概略図である。
図2】第1の使用事例に従う、本発明の実施形態の概略図である。
図3】第2の使用事例に従う、本発明の実施形態の概略図である。
図4】第3の使用事例に従う、本発明の実施形態の概略図である。
図5】第4の使用事例に従う、本発明の実施形態の概略図である。
図6】第5の使用事例に従う、本発明の実施形態の概略図である。
図7】本発明の実施形態に従う、デジタルメッセージのコンテンツを保護するための方法の概略図である。
図8】本発明の実施形態に従う、デバイスDA及びデバイスDBの概略図である。
【詳細な説明】
【0074】
[074]図面は、例として提供されており、本発明を制限していない。図面は、本発明を理解することを容易にするよう意図された原理の表現を構成し、必ずしも実用的応用の規模ではない。
【0075】
[075]本開示は、本明細書では、図面に示された非限定的な実施形態を参照して詳細に説明される。
【0076】
[076]本発明は、デジタルメッセージMのデジタルコンテンツの妥当性確認のシステム及び方法に関連している。以下で説明されるように、デジタルメッセージMは、偽造防止デジタルファイルであるのが有利である。1つの実施形態では、前述のデジタルメッセージMは、例えば、手書きのメッセージ又は印刷されたメッセージなどの、非デジタルメッセージから生成されていることが可能であり、例えば、スキャナ及び/又はカメラを使用して、手書きのメッセージからデジタルメッセージへ、及び/又は印刷されたメッセージからデジタルメッセージへの変換を使用して生成されているのが好ましい。
【0077】
[077]実施形態によれば、前述のデジタルメッセージMは、デバイスの、又はコントローラの認証情報、動作Opを実行するためのコントローラの任務の命令、前述の認証情報を配信した機関に関するデータなどの、複数の種類のデータを含むことができる。
【0078】
[078]好ましい実施形態によれば、デジタルメッセージMは、許可データADを含む。前述の許可データADは、デバイスのコントローラが、別のコントローラによって、動作Opを実行することを許可されていることを示すように構成され、動作Opの実行には、前述のデジタルメッセージMを受信したデバイスの別のコントローラを使用するのが好ましい。デジタルメッセージMは、後で説明されるデジタルマークDMも含むことができるのが好ましい。さらに一般的な方法では、このデジタルメッセージMは、グラフィック表現、データのセット、電磁波などの、任意の種類の形態をとることができる。
【0079】
[079]例えば、デジタルメッセージMは、デバイスDAのコントローラAが、コントローラCによって、コントローラBを使用して動作Opを実行することを許可されていることを示す許可データAD(A)を含むことができる。そのような動作Opは、例えば、データをダウンロードすること、データをアップロードすること、データベースにアクセスすること、命令を転送すること、データを収集すること、商品を収集すること、データを配信すること、商品を配達することなどであることができ、さらなる例が後で説明される。前述のコントローラCは、デバイス、組織、又は人間によって表された機関であることができる。前述の機関は、コントローラが、別のコントローラに関する何らかの動作実行することを許可する能力を有する。コントローラCは、偽造防止デジタルファイルの形態でデジタルメッセージMを配信するように構成されるのが好ましい。デジタルメッセージMは、コントローラCによって認証されるのが有利である。
【0080】
[080]このデジタルメッセージMは、例えば、通信ネットワークCNを介してデバイスによって受信される。このデバイスは、コントローラによって制御される。前述のデバイスは、前述のデジタルメッセージMのデジタルコンテンツの妥当性を確認するように構成される。
【0081】
[081]実施形態によれば、前述の通信ネットワークCNは、近距離無線通信ネットワークNFCNを含むことができる。前述の近距離無線通信ネットワークNFCNは、少なくとも2つのデバイス間の距離が50cm未満のときに、それらのデバイス間の通信を可能にするように構成され、この距離は、25cm未満であるのが好ましく、10cm未満であるのが有利である。この通信ネットワークは、有線通信及び/又はワイヤレス通信を含むことができる。この通信ネットワークは、光通信ネットワークを含むことができる。
【0082】
[082]本発明の実施形態によれば、コントローラは、コンピュータ、ロボット、モノのインターネット(IoT:Internet of Thing)デバイス、デバイスの一部、車両、ユーザ、及び/又は人間であることができる。実際に、デバイスは、例えば、ロボットの内部、及び/又はスマートフォンの内部、或いは人間によって使用され得る任意の種類のシステムの内部のモジュールなどの、より大きいデバイスの一部であることができる。このデバイスは、例えば、携帯電話、タブレット、パーソナルコンピュータ、ロボット、IoTデバイスなどのデバイスのうちの1つである。
【0083】
[083]前述のデバイスは、メモリと共に、少なくともプロセッシングユニットを備える。前述のプロセッシングユニットは、少なくとも1つの一連の命令を実行するように構成された少なくとも1つのプロセッサを備え、これらの命令は、メモリによって格納されるのが好ましい。前述のメモリは、非一過性メモリであるのが好ましい。前述のメモリは、保護されたエンクレーブを備えるのが有利であり、例えば、少なくとも1つの秘密鍵を格納するように構成されるのが好ましい。
【0084】
[084]実施形態によれば、デジタルメッセージMは、コントローラCに起因する検証鍵VK(A)を含み、前述の検証鍵VK(A)は、許可データAD(A)と共に、集約デジタル署名ADSを取り出すことを可能にする。
【0085】
[085]実施形態によれば、前述の検証鍵VK(A)は、複数のデジタル署名xのシーケンスである。この複数のデジタル署名xは、マークルツリーを使用することなどの、複数の周知のメカニズムから生成され得る。この最新のメカニズムを使用して、前述の検証鍵VK(A)は、前述の許可データAD(A)のデジタルファイル署名x(A)に対応する葉ノード以外の、木内の同じ親ノードを有する他のすべての葉ノードの、及び木内の連続的に各次のレベルでの、先行するレベルで考慮された前の同じ親ノード以外の、木内の同じ親ノードを有するすべての非葉ノードの、葉ノードレベルから最後から2番目のノードレベルまでの、複数のデジタル署名xのシーケンスである。「偽造防止デジタルファイル」のセクションで、さらなる詳細が後で説明される。
【0086】
[086]実施形態によれば、集約デジタル署名ADSは、一方向累算器を複数のデジタル署名に適用することによって計算されるのが有利であり、前述の複数のデジタル署名は、許可データAD(A)のデジタル署名x(A)を含む。許可データAD(A)の前述のデジタル署名x(A)は、一方向関数を介して計算されるのが好ましい。後で説明されるように、前述の集約デジタル署名ADSは、前述のデジタルメッセージMを受信するデバイスのメモリに格納されるように設計される。
【0087】
[087]実施形態によれば、本発明は、デジタルメッセージがコントローラCによって正当に認証されていることの検証ステップを含むことができる。この検証は、コントローラAによって、及び/又はコントローラBによって実行され得るのが好ましい。
【0088】
[088]実施形態によれば、本発明は、コントローラBとコントローラAの間のチャレンジステップを含むことができる。実際に、コントローラAの妥当性を確認するために、すなわち、コントローラAが、実際に、デジタルメッセージMにおいて言及されたコントローラであることを認証するために、コントローラBは、チャレンジを使用することができる。このチャレンジは、さまざまな方法で実施され得る。このチャレンジは、コントローラBによる、コントローラAからの認定SAの受信を含み、その後、コントローラBは、コントローラAが実際にデジタルメッセージMにおいて言及されたコントローラであることの妥当性を確認するために、認定SAを検証することができるのが好ましい。このチャレンジステップに関するさらなる詳細が、後で与えられる。
【0089】
[089]図8に示された実施形態によれば、本発明は、コントローラBによる、コントローラAからの認定SAの受信を含み、この受信は、デバイスDBの通信モジュールCM(B)によるのが好ましく、デバイスDAの通信モジュールCM(A)からであるのが好ましい。この認定SAは、コントローラBによって検証されるよう設計され、この検証は、デバイスDBのプロセッシングユニットCPU(B)によるのが有利である。認定SAは、コントローラAによって署名されたデータを含むのが好ましい。実施形態によれば、認定SAは、秘密から生成される。前述の秘密は、コントローラB及び/又はコントローラCによって生成されるのが好ましい。前述の秘密は、コントローラAによって、コントローラCから、及び/又はコントローラBから受信され、この受信は、デバイスDAの通信モジュールCM(A)によるのが好ましく、デバイスDBの通信モジュールCM(B)からであるのが好ましい。
【0090】
[090]さらに、実施形態によれば、デジタルメッセージMは、秘密鍵PrKに対応する公開鍵PuKを含むことができ、前述の公開鍵PuKは、コントローラAによって所有されているとしてコントローラCによって認定されている。したがって、実施形態によれば、チャレンジのステップは、例えば、デバイスDB及びデバイスDA並びに公開鍵及び秘密鍵、例えば、公開鍵PuK(A)及び対応する秘密鍵PrK(A)を使用するデータ交換によって、コントローラBとコントローラAの間で開始され得る。
【0091】
[091]実施形態によれば、コントローラAは、秘密鍵PrK(A)を含む。例えば、従来の公開鍵基盤PKI(Public Key Infrastructure)におけるように、前述の秘密鍵PrK(A)は、コントローラAによって秘密に保たれる。前述の秘密鍵PrK(A)は、公に知られるように設計された関連する公開鍵PuK(A)を有し、前述の公開鍵PuK(A)は、別のコントローラに、例えば、デバイスDBの通信モジュールCM(B)を介してコントローラBに送信されるように設計される。前述の公開鍵PuK(A)は、コントローラCによって認定されている。実際にコントローラC(機関)は、この公開鍵PuK(A)を、コントローラAによって所有されているとして認定している。
【0092】
[092]デバイスDAは、この秘密鍵PrK(A)を使用してデータに署名し、その後、この署名されたデータを、例えばデバイスDBに送信することができる。デバイスDBは、公開鍵PuK(A)を使用して、前述の署名されたデータを検証することができる。
【0093】
[093]実施形態によれば、デバイスDBは、メッセージをデバイスDAに送信することができ、このメッセージは、例えば、多くの場合、チャレンジと呼ばれ、1回限りの秘密であるのが好ましい、秘密を含むことができ、動作中に、すなわち特定の瞬間に生成されるのが好ましく、例えば、乱数を含む。次に、デバイスDAは、秘密鍵PrK(A)を使用して、このメッセージ又は例えば少なくとも前述の秘密に署名し、署名されたメッセージを、認定SAの形態でデバイスDBに送信することができる。前述の認定SAが前述の署名された秘密を含むのが、有利である。デバイスDBは、対応する公開鍵PuK(A)及びメッセージ、すなわち秘密、特に、例えば乱数を使用して、前述の認定SA、すなわち前述の署名されたメッセージを検証することができる。このチャレンジは、デバイスDB、したがってコントローラBが、このデバイスが実際にコントローラBと通信しているコントローラAによって所有されているデバイスDAであることを検証することを可能にし、この検証は前述の特定の瞬間に行われるのが好ましい。
【0094】
[094]実施形態によれば、認定SAは、文書の署名及び前述の文書を含むことができる。前述の署名は、秘密鍵PrK(A)を使用して前述の文書に署名することによって、プロセッシングユニットCPU(A)によって生成されるのが好ましい。
【0095】
[095]実施形態によれば、デバイスDAのプロセッシングユニットCPU(A)は、例えばデバイスDBから、通信モジュールCM(A)によって対応する公開鍵PuKと共に受信された、署名されたデータを検証するように構成され得る。実際に、コントローラAが、機関、例えばコントローラCによって、コントローラAによって所有されているとして認定された秘密鍵PrK(A)及び関連する公開鍵PuK(A)を持っているように、コントローラBも、公開鍵PuK(B)に関連付けられた秘密鍵Prk(B)を持つことができる。前述の公開鍵PuK(B)は、機関によって、コントローラBによって所有されているとして認定されるのが好ましく、コントローラCなどの同じ機関によって認定されるのが好ましい。
【0096】
[096]秘密鍵PrK(A)に関するデバイスDAの場合のように、デバイスDBのメモリは、秘密鍵Prk(B)を格納し、メモリの保護されたエンクレーブに格納するのが好ましく、プロセッシングユニットCPU(B)は、前述の秘密鍵Prk(B)を使用してデータに署名するように構成される。
【0097】
[097]好ましい実施形態によれば、各通信モジュールCMは、ディスプレイモジュールDD及び光学式読み取り装置モジュールORを備える。前述のディスプレイモジュールDDは、データの光学読み取り可能な表現を表示するように構成され、グラフィカルデータブロックGDBの光学読み取り可能な表現を表示するように構成されるのが好ましい。前述のグラフィカルデータブロックGDBは、デジタルメッセージMの一部又は全体を含むことができる。例えば、グラフィカルデータブロックGDBは、デジタルマークDMを含むことができる。
【0098】
[098]実施形態によれば、前述のデジタルマークDMは、前述の許可データADのエンコードされたバージョンEADを含むことができる。別の実施形態によれば、デジタルマークDMは、検証鍵VKのエンコードされたバージョンEVKを含むことができる。これらの実施形態によれば、例えば、コントローラAの許可データAD(A)を取得するために、デバイスDBは、エンコードされた許可データEAD(A)をデコードしなければならない。同様に、例えば、コントローラAの検証鍵VK(A)を取得するために、デバイスDBは、エンコードされた検証鍵EVK(A)をデコードする必要がある。これらの実施形態によれば、デジタルメッセージMは、デジタル文書に添付されることが可能であり、及び/又はデバイスDBによって、グラフィカルデータブロックGDBの光学読み取り可能な表現として光学的に受信されることが可能であり、デバイスDBの通信モジュールCM(B)によって受信されるのが好ましく、デバイスDBの通信モジュールCM(B)の光学式読み取り装置モジュールOR(B)によって受信されるのが有利である。これらの実施形態によれば、デジタルメッセージMは、デバイスDAの通信モジュールCM(A)のディスプレイモジュールDD(A)によって光学的に表示されることが可能であり、又はデジタルメッセージMは、通信ネットワークCNを介して送信されるか、又は印刷もされ、前述のグラフィカルデータブロックGDBの形態であるのが好ましい。
【0099】
[099]例によれば、グラフィカルデータブロックGDBの前述の光学読み取り可能な表現は、例えばQRコードなどの、グラフィカルシンボルの特定の有限のセットからのグラフィカルシンボルのデジタル表現を含むことができる。グラフィカルシンボルの前述のデジタル表現は、前述のデジタルマークMDをエンコードするように構成され、機械可読のエラー訂正データブロックをエンコードするように構成されるのが好ましい。これらの特徴は、後でさらに詳細に説明される。
【0100】
[100]特定の実施形態によれば、デバイスDBからデバイスDAに送信される秘密は、デバイスDBの通信モジュールCM(B)のディスプレイモジュールDD(B)によって前述の秘密のグラフィック表現を表示するステップ、及びデバイスDAの通信モジュール(CMA)の光学式読み取り装置モジュールOR(A)によって前述のグラフィック表現を読み取るステップによって、送信され得る。次に、この秘密に署名し、したがって、前述の認定SAを生成した後に、デバイスDAは、ディスプレイモジュールDD(A)を使用して、認定SAのグラフィック表現を表示することができる。その後、デバイスDBは、光学式読み取り装置モジュールOR(B)を使用して、認定SAのグラフィック表現を読み取る。
【0101】
[101]実施形態によれば、本発明は、通信ネットワークCNを介してコントローラBによって制御されるデバイスDBによって受信されたデジタルメッセージMのデジタルコンテンツの妥当性確認のシステムに関連している。
【0102】
[102]実施形態によれば、このシステムは、以下を備えるのが好ましい。
コントローラAによって制御されるデバイスDA。前に示されたように、デバイスDAは、デジタルメッセージMを格納しているメモリを有するプロセッシングユニットCPU(A)と、通信ネットワークCNを介してデータを送信及び受信するように構成された通信モジュールCM(A)とを備える。
コントローラBによって制御されるデバイスDB。前に示されたように、デバイスDBは、前述の集約デジタル署名ADSを格納しているメモリを有するプロセッシングユニットCPU(B)と、通信ネットワークCNを介してデータを送信及び受信するように構成された通信モジュールCM(B)とを備える。デバイスDBのプロセッシングユニットCPU(B)は、対応する公開鍵を使用して、署名されたデータを検証するように構成されるのが有利である。プロセッシングユニットCPU(B)のメモリは、前に説明された集約デジタル署名ADSを格納するのが好ましい。
【0103】
[103]このシステムは、次のような方法で構成される。
デバイスDBの通信モジュールCM(B)が、デジタルメッセージMを受信するように構成される。
デジタルメッセージMが、コントローラCによって認証されるのが好ましく、デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMがコントローラCによって認証されていることを検証するように構成されるのが有利である。
デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMに含まれている許可データAD(A)を抽出するように構成され、この抽出が、デジタルメッセージMがコントローラCによって認証されているという肯定的な検証の場合にのみ行われるのが好ましい。
デバイスDBの通信モジュールCM(B)が、デバイスDAの通信モジュールCM(A)から認定SAを受信するように構成され、認定SAは、秘密鍵PrK(A)を使用してデバイスDAのプロセッシングユニットCPU(A)によって署名され、及び/又は秘密鍵PrK(A)を使用してデバイスDAのプロセッシングユニットCPU(A)によって署名された秘密などのデータを含むのが好ましく、前述の秘密は、デバイスDAの通信モジュールCM(A)によって、デバイスDBから、及び/又はコントローラCから受信されているのが好ましい。
デバイスDBのプロセッシングユニットCPU(B)は、認定SAを検証するように構成され、前述の秘密鍵PrK(A)に対応する公開鍵PuK(A)を使用して検証するのが好ましく、前述の公開鍵PuK(A)をデジタルメッセージMから抽出した後に検証するのが有利である。
デバイスDBのプロセッシングユニットCPU(B)が、
メッセージMに含まれている検証鍵VK(A)を抽出することと、
プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補デジタル署名cx(A)を計算することと、
検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADSを計算することとを行うように構成される。
デバイスDBのプロセッシングユニットCPU(B)が、候補集約デジタル署名cADSがメモリに格納された集約デジタル署名ADSと一致するかどうかをチェックするように構成され、認定SAの肯定的な検証及び集約デジタル署名ADSとの候補集約デジタル署名cADSの肯定的な一致の場合にのみ、デバイスDBのプロセッシングユニットCPU(B)が、通信モジュールCM(B)を介して、コントローラAがコントローラCによって動作Opを実行することを実際に許可されているという指示をコントローラBに送信するように構成される。
【0104】
[104]このシステムは、コントローラBが、従来技術の解決策よりも高い確実性を伴って、デジタルメッセージMのデジタルコンテンツの妥当性を確認することを可能にする。さらに、このシステムは、このデジタルコンテンツが有効であるかどうかをチェックするために、デバイスDBがこのデジタルコンテンツにリンクされた認証情報を制御することを可能にする。このシステムは、例えばロボットなどのコントローラAが、認定SA、及びデジタルメッセージM内にあり、コントローラCによって発行された偽造防止デジタルファイルによって認証される、認証情報だけを使用して、コントローラA自身を識別することを可能にする。このシステムは、別のロボットなどのコントローラBが、提示された認証情報の妥当性を完全に信頼することを可能にする。
【0105】
[105]後で説明されるように、例えばコントローラAが人間である場合に、このシステムが生体測定データの使用を回避するということに、注意しなければならない。コントローラAの認証情報及び認定SAは、完全な信頼性を、受信者、ここでは、例えばロボット、コンピュータ、又は別の人間であることができる、コントローラBに与えるのに十分である。このシステムは、任意の生体測定データ、生体測定、又は個人情報の開示を回避するのが有利である。
【0106】
[106]実施形態によれば、デバイスDAのプロセッシングユニットCPU(A)のメモリは、前述の秘密鍵PrK(A)を格納するように構成され、メモリの保護されたエンクレーブに格納するように構成されるのが好ましく、プロセッシングユニットCPU(A)は、秘密鍵PrK(A)を使用してデータに署名するように構成される。
【0107】
[107]実施形態によれば、デバイスDBのプロセッシングユニットCPU(B)は、対応する公開鍵PuKを使用して、署名されたデータを検証するように構成され、公開鍵PuKは、通信モジュールCM(B)によって受信されるのが好ましい。
【0108】
[108]実施形態によれば、デジタルメッセージMは、前述の秘密鍵PrK(A)に対応する前述の公開鍵PuK(A)をさらに含み、前述の公開鍵PuK(A)は、コントローラCによって認定されている。
【0109】
[109]実施形態によれば、認定SAは、前述の秘密鍵PrK(A)を使用して署名された認定データを含む。
【0110】
[110]実施形態によれば、デバイスDBのプロセッシングユニットCPU(B)は、デジタルメッセージMから公開鍵PuK(A)を抽出し、前述の公開鍵PuK(A)を使用して前述の認定SAを検証するように構成される。
【0111】
[111]図1によって示された実施形態によれば、このシステムは、通信ネットワークCNを介してコントローラBによって制御されるデバイスDBによって受信されたデジタルメッセージMのデジタルコンテンツの妥当性確認の方法を実行するように構成される。この方法は、
デバイスDBの通信モジュールCM(B)がデジタルメッセージMを受信し(200、100b)、前述のデジタルメッセージMが、デバイスDBの通信モジュールCM(B)によって、コントローラCから(100b)、又はデバイスDAの通信モジュールCM(A)から(200)受信されることが可能であり、コントローラCが、デジタルメッセージMをデバイスDAの通信モジュールCM(A)に送信する(100a)のが好ましい、ステップ、
デジタルメッセージMが、コントローラCによって認証される(10)のが好ましく、デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMがコントローラCによって認証されている(10)ことを検証するのが有利である、ステップ、及び
デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMに含まれている許可データAD(A)を抽出し(201)、デジタルメッセージMがコントローラCによって認証されている(10)という肯定的な検証の場合にのみ抽出するのが好ましく、前に示されたように、このデジタルメッセージMが、例えばスキャナ及び/又はカメラを使用する変換後にデジタルメッセージになる、印刷されたメッセージ及び/又は手書きのメッセージに由来することができる、ステップ、
デバイスDBの通信モジュールCM(B)が、デバイスDAの通信モジュールCM(A)から認定SAを受信し(400)、認定SAが秘密鍵PrK(A)を使用して署名されるのが好ましい、ステップ、
デバイスDBのプロセッシングユニットCPU(B)が、認定SAを検証し(400b)、公開鍵PuK(A)を使用して検証するのが好ましく、前述の公開鍵PuK(A)をデジタルメッセージMから抽出した(202)後に検証するのが有利である、ステップ、
デバイスDBのプロセッシングユニットCPU(B)が、
デジタルメッセージMに含まれている検証鍵VK(A)を抽出することと(204)、
プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補デジタル署名cx(A)を計算することと(203)、
検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADSを計算することと(205)を行うステップ、並びに
デバイスDBのプロセッシングユニットCPU(B)が、候補集約デジタル署名cADSがメモリに格納された集約デジタル署名ADSと一致するかどうかをチェックし(207)、前述の集約デジタル署名ADSが、例えば、コントローラCによってサーバにアップロードされ(101)、デバイスDBによって前述のサーバからダウンロードされている(206)ことが可能であり、署名された認定SAデータの肯定的な検証及び集約デジタル署名ADSとの候補集約デジタル署名cADSの肯定的な一致の場合にのみ、デバイスDBのプロセッシングユニットCPU(B)が、通信モジュールCM(B)を介して、コントローラAがコントローラCによって動作Opを実行する(500a)ことを実際に許可されているという指示をコントローラBに送信する(500)ステップを含むのが好ましい。
【0112】
[112]この方法は、コントローラBが、従来技術の解決策よりも高い確実性を伴って、デジタルメッセージMのデジタルコンテンツの妥当性を確認することを可能にする。さらに、この方法は、このデジタルコンテンツが有効であるかどうかをチェックするために、デバイスDBがこのデジタルコンテンツにリンクされた認証情報を制御することを可能にする。この方法は、例えばロボットなどのコントローラAが、認定SA、及びデジタルメッセージM内にあり、コントローラCによって発行された偽造防止デジタルファイルによって認証される、認証情報だけを使用して、コントローラA自身を識別することを可能にする。この方法は、別のロボットなどのコントローラBが、提示された認証情報の妥当性を完全に信頼することを可能にする。
【0113】
[113]後で説明されるように、例えばコントローラAが人間である場合に、この方法が生体測定データの使用を回避するということに、注意しなければならない。コントローラAの認証情報及び認定SAは、完全な信頼性を、受信者、ここでは、例えばロボット、コンピュータ、又は別の人間であることができる、コントローラBに与えるのに十分である。この方法は、任意の生体測定データ、生体測定、又は個人情報の開示を回避するのが有利である。
【0114】
[114]実施形態によれば、デバイスDBは、通信モジュールCM(B)を介して、さまざまな方法でデジタルメッセージMを受信することができる。例えば、デジタルメッセージMは、例えば、通信モジュールCM(A)を介してデバイスAから、及び/又はコントローラCから、及び/又はサーバから、受信され得る。
【0115】
[115]実施形態によれば、デバイスDBは、通信モジュールCM(B)を介して、デジタル形式で直接、又は最初に、デジタル形式に変換される紙の形式で、デジタルメッセージMを受信することができる。例えば、通信モジュールCM(B)は、光学式読み取り装置モジュールOR(B)を使用して、印刷されたコンテンツ及び/又は手書きのコンテンツを含んでいる紙を光学的に読み取り、すなわち、スキャンし、前述の印刷されたコンテンツ及び/又は手書きのコンテンツをデジタルメッセージMに変換する。
【0116】
[116]実施形態によれば、通信ネットワークCNは、光通信ネットワーク、有線通信ネットワーク、ワイヤレス通信ネットワーク、無線周波数通信ネットワーク、及び複数の種類の通信ネットワークの組み合わせなどの、1つ又は複数の種類の通信ネットワークを含むことができる。
【0117】
[117]実施形態によれば、デジタルメッセージMの受信の場合のように、コントローラAによって所有されている秘密鍵PrK(A)に対応する公開鍵PuK(A)が、さまざまな方法でコントローラBによって受信され得る。例えば、公開鍵PuK(A)は、例えば、コントローラCから、及び/又はサーバから受信されることが可能であり、並びに/或いはデジタルメッセージMから受信されるのが有利である。実際に、一部の実施形態では、コントローラBは、プロセッシングユニットCPU(B)を使用してデジタルメッセージMから直接公開鍵PuK(A)を取得し、デジタルメッセージMから公開鍵PuK(A)を抽出することができる。別の実施形態によれば、デバイスDBは、通信モジュールCM(B)を介して、コントローラCから公開鍵PuK(A)を受信することができる。
【0118】
[118]実施形態に従って本発明を説明するための1つの方法は、次のとおりである。コントローBの利益のためにコントローラAによって実行される、デジタルメッセージMの形態での任務命令が、コントローラCによって発行されて認証される。本発明の主要な目標のうちの1つは、前述の任務命令が実際に本物であり、前述のコントローラCによって発行されたこと、及び前述のコントローラAが、前述のコントローラCによって、特定の任務命令を実行するように正当に命令されたことを確認するための手段を、前述のコントローラBに与えることである。
【0119】
[119]実施形態によれば、コントローラBは、前述の任務命令に対応するか、又は前述の任務命令を含んでいるデジタルメッセージMを、コントローラAから、及び/又はコントローラCから、或いは任意の他のソース又はルートを介して、受信する。次に、コントローラBは、デジタルメッセージM、すなわち、任務命令が、実際に有効な本物であり、改ざんも偽造もされていないこと、及び任務命令が、コントローラCによって正当に発行されていることをチェックする。
【0120】
[120]実施形態によれば、コントローラBは、チャレンジをコントローラAにサブミットし、チャレンジは1回限りのチャレンジであるのが好ましい。次に、コントローラAは、秘密鍵PrK(A)を使用してチャレンジに署名するのが有利であり、署名されたチャレンジをコントローラBに返送する。その後、コントローラBは、署名が実際に有効であることをチェックし、署名が公開鍵PuK(A)に正当に対応することをチェックするのが好ましく、公開鍵PuK(A)は、デジタルメッセージMに、例えば、任務命令に含まれるのが有利である。
【0121】
[121]次に、好ましい実施形態によれば、両方の検証が肯定的である場合、コントローラAは、コントローラBの利益のために任務命令を正当に実行することができる。
【0122】
[122]実施形態によれば、コントローラAは、ロボット、コンピュータ、モノのインターネットデバイス、スマートフォン又はユーザなどのうちから選ばれ得る。
【0123】
[123]明らかであるように、本発明は、多くの技術的領域において応用を見つけることができる。技術的応用の一部の種類を例示するために、ここで、図2~7によって複数の例が説明されて示される。
【0124】
セキュアな倉庫内のロボット
[124]図2によって示される本発明の応用の第1の例によれば、本発明は、ロボットが、セキュアな倉庫の内部で、例えば金の延べ棒又は宝石などの高価値商品を拾い上げることを安全に可能にするために実施され得る。
【0125】
[125]この例によれば、コントローラAは、商品を収集するため、及び/又は配達するために、セキュアな倉庫の内部を移動するように設計されたロボットAである。ロボットAは、デバイスDAを備える。このロボットAは、少なくともセキュアな倉庫の内部で、ロボットAの移動を可能にするように構成されたモーター駆動のモジュールを備えているのが好ましい。したがって、コントローラAは、車輪又は無限軌道、或いはコントローラAが移動することを可能にする任意のデバイスを備えることができる。コントローラAは、例えば飛行ドローンなどの、ドローンであることもできる。このロボットAは、この使用事例ではコントローラCである物流センターCによって発行された任務命令に基づいて少なくとも1つの保管室から商品を拾い上げるように構成される。コントローラA、すなわち、ロボットAは、コントローラAによって発行されるのが好ましい秘密鍵PrK(A)を含み、前述の秘密鍵PrK(A)は公開鍵PuK(A)に関連付けられており、前述の公開鍵PuK(A)は、コントローラC、すなわち、物流センターCによって、コントローラAによって所有されているとして認証されている。
【0126】
[126]この例によれば、コントローラBは、保管室Bであり、スマート保管室(smart vault)、すなわち、デバイスDBを備えている保管室であるのが好ましい。コントローラBは、保管室のモーター駆動のドアであることもできる。前述の保管室Bは、この例ではコントローラCの役割を果たす物流センターによって、前述のロボットに適切な任務命令が発行されている場合に、商品を配達するか、又はロボットに商品にアクセスさせて、保管室Bの内部から商品を取得するように構成される。
【0127】
[127]この例によれば、コントローラCは物流センターCである。前述の物流センターCは、コントローラAに送信される(100a)デジタルメッセージMを使用して任務命令を発行する(100)ように構成される。実施形態によれば、デジタルメッセージMは、コントローラCによってコントローラBにも送信される(100b)。例えば、デジタルメッセージMは、例えば、コントローラAが何を実行する必要があるか、コントローラAがいつ実行する必要があるか、及び例えば、コントローラAがどこで実行する必要があるかを示す一連のデータの形態で、任務命令を含むことができる。この例では、任務命令は以下のデータを含むことができる。
ロボットAが、公開鍵PuK(A)を持つ。
検証鍵VK(A)。
動作Op:ロボットAは、特定の商品、例えば、保管室Bの内部に配置された金の延べ棒番号429を取ってくる必要がある。
時間スロット:この動作は、例えば、午前10時25分~10時30分の間に実行される必要がある。
【0128】
[128]実施形態によれば、ロボットA、すなわち、コントローラAがデジタルメッセージMを受信するときに、コントローラAは、プロセッシングユニットCPU(A)を使用して、デジタルメッセージMがコントローラCによって認証されている(10)ことを検証し(10a)、デジタルメッセージMがコントローラCによって認証されている(10)という肯定的な検証の場合にのみ、デバイスDAのプロセッシングユニットCPU(A)が、デジタルメッセージMに含まれている許可データAD(A)の抽出を開始する。これらの許可データAD(A)は、ロボットAに関する任務命令のデータを含むのが好ましい。
【0129】
[129]好ましい実施形態によれば、保管室B、すなわち、コントローラBがデジタルメッセージMを受信する(200)ときに、コントローラBは、プロセッシングユニットCPU(B)を使用して、デジタルメッセージMがコントローラCによって認証されている(10)ことを検証し(10b)、デジタルメッセージMがコントローラCによって認証されている(10)という肯定的な検証の場合にのみ、デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMに含まれている許可データAD(A)の抽出201を開始する。これらの許可データAD(A)は、任務命令のデータを含むのが好ましい。
【0130】
[130]次に、コントローラB、すなわち、保管室Bは、デジタルメッセージMから、コントローラA、すなわちロボットAの秘密鍵PrK(A)に対応する公開鍵PuK(A)、検証鍵(A)、動作Opに関連するデータ、及び例えば任務命令において言及された時間スロットなどの、さまざまなデータを抽出する(202、204)。
【0131】
[131]実施形態によれば、コントローラA、すなわち、ロボットAが、コントローラB、すなわち保管室Bの正面にあるときに、コントローラBは、チャレンジをコントローラAに送信する(300)。例えば、このチャレンジは、デバイスDBの乱数発生器モジュールGRNM(B)によって生成された乱数であることができる。実施形態によれば、コントローラAが、デバイスDAを介して(デバイスDAの通信モジュールCM(A)を介するのが有利である)、前述のチャレンジを受信するときに、コントローラAは、秘密鍵PrK(A)を使用してこのチャレンジに署名し、より正確には、デバイスDAのプロセッシングユニットCPU(A)が、前述の認定SAを生成する秘密鍵PrK(A)を使用してチャレンジに署名する(300a)。次に、コントローラAは、認定SAをコントローラBに返送する(400)。
【0132】
[132]次に、コントローラB、すなわち、この例では保管室Bは、公開鍵PuK(A)を使用して認定SAの妥当性をチェックし(400b)、公開鍵PuK(A)は、プロセッシングユニットCPU(B)によってデジタルメッセージMから抽出されており(202)、任務命令、すなわち、許可データAD(A)内にあるのが好ましい。
【0133】
[133]その後、デバイスDBのプロセッシングユニットCPU(B)は、プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補デジタル署名cx(A)を計算し(203)、検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADSを計算し(205)、デバイスDBのプロセッシングユニットCPU(B)が、候補集約デジタル署名cADSがメモリに格納されている(206)集約デジタル署名ADSと一致するかどうかをチェックする(207)。実施形態によれば、前述の集約デジタル署名ADSは、コントローラBによって、コントローラCから、及び/又はサーバから受信されている。その後、前述の集約デジタル署名ADSが、コントローラB、すなわち、この例では保管室BのプロセッシングユニットCPU(B)のメモリに格納されている(206)。
【0134】
[134]実施形態によれば、保管室Bは、デジタルメッセージMから、ロボットAが動作しなければならない時間スロットなど、この例では、10時25分~10時30分などの、他のデータを抽出する。
【0135】
[135]次に、時間が正当に10時25分~10時30分である場合に、認定SAの検証400bが肯定的であり、候補集約デジタル署名cADSが集約デジタル署名ADSと一致する(207)場合、保管室B、すなわち、コントローラBは、プロセッシングユニットCPU(B)から、ロボットAが、物流センターCによって、デジタルメッセージMに含まれている任務命令において言及された動作Opを実行する(500a)ことを実際に許可されていることの指示を受信する(500)。したがって、保管室Bは、金の延べ棒番号429をロボットAに配達するか、又はロボットAに金の延べ棒番号429を拾い上げさせる。
【0136】
[136]本発明の使用事例のこの例によれば、システムは、以下を備えるのが好ましい。
デバイスDAを備え、制御するロボットA。前述のロボットAは、少なくともセキュアな倉庫の内部を移動するように構成されており、前述の倉庫は物流センターを含む。
デバイスDBを備え、制御する保管室B。前述の保管室Bは、商品を許可されたロボットに配達すること、及び/又はロボットに、保管室に含まれている商品を拾い上げさせることを行うように構成されている。
【0137】
[137]このシステムは、次のような方法で構成される。
デバイスDBの通信モジュールCM(B)が、任務命令を含んでいるデジタルメッセージMを受信する(100b、200)ように構成され、前述の任務命令が、ロボットAによって所有されている公開鍵PuK(A)、ロボットAが、物流センターCによって、保管室Bを使用して動作Opを実行することを許可されていることを示す許可データAD(A)、検証鍵VK(A)、この動作Opが実行される必要がある時間スロットなどを含む。
デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMが物流センターCによって認証されていることを検証する(10b)ように構成されるのが好ましい。
デバイスDBのプロセッシングユニットCPU(B)が、公開鍵PuK(A)、許可データAD(A)、動作Op、検証鍵VK(A)、この動作Opが実行される必要がある時間スロットなどの、デジタルメッセージMに含まれているデータを抽出する(201、202、204)ように構成され、この抽出が、デジタルメッセージMが物流センターCによって認証されているという肯定的な検証の場合にのみ行われるのが好ましい。
デバイスDBの通信モジュールCM(B)が、デバイスDAの通信モジュールCM(A)から認定SAを受信する(400)ように構成され、認定SAは、秘密鍵PrK(A)を使用してデバイスDAのプロセッシングユニットCPU(A)によって署名され(300a)、及び/又は秘密鍵PrK(A)を使用してデバイスDAのプロセッシングユニットCPU(A)によって署名された(300a)秘密などのデータを含むのが好ましく、前述の秘密は、デバイスDBの通信モジュールCM(B)からデバイスDAの通信モジュールCM(A)に送信されている(300)のが好ましい。
デバイスDBのプロセッシングユニットCPU(B)が、認定SAを検証する(400b)ように構成され、前述の秘密鍵PrK(A)に対応する公開鍵PuK(A)を使用して検証するのが好ましく、前述の公開鍵PuK(A)をデジタルメッセージMから抽出した(202)後に検証するのが有利である。
デバイスDBのプロセッシングユニットCPU(B)が、
プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補デジタル署名cx(A)を計算することと(203)、
検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADSを計算することと(205)を行うように構成される。
デバイスDBのプロセッシングユニットCPU(B)が、候補集約デジタル署名cADSがメモリに格納された(206)集約デジタル署名ADSと一致するかどうかをチェックする(207)ように構成され、認定SAの肯定的な検証及び集約デジタル署名ADSとの候補集約デジタル署名cADSの肯定的な一致の場合にのみ、デバイスDBのプロセッシングユニットCPU(B)が、ロボットが物流センターによって動作Opを実行する(500a)ことを実際に許可されているという指示を保管室に送信する(500)ように構成される。
【0138】
[138]このシステムは、デバイスDBが、従来技術の解決策よりも高い確実性を伴って、デジタルメッセージMのデジタルコンテンツの妥当性を確認することを可能にする。さらに、このシステムは、このデジタルコンテンツが有効であるかどうかをチェックするために、デバイスDBがこのデジタルコンテンツにリンクされた任務命令、すなわち、認証情報を制御することを可能にする。このシステムは、ロボットAが、認定SA、及びコントローラCによって発行された偽造防止デジタルファイルによって認証されるのが好ましいデジタルメッセージMだけを使用して、ロボットA自身を識別することを可能にする。このシステムは、保管室Bが、提示された任務命令の妥当性を完全に信頼することを可能にする。
【0139】
[139]本発明の使用事例のこの例によれば、本発明は、実施形態に従って、以下の方法に関連している。
ロボットAが、デバイスDAを備えて制御し、前述のロボットAは、少なくともセキュアな倉庫の内部を移動するように構成されており、前述の倉庫は物流センターを含む。
保管室Bが、デバイスDBを備えて制御し、前述の保管室Bは、商品を許可されたロボットに配達すること、及び/又はロボットに、保管室に含まれている商品を拾い上げさせることを行うように構成されている。
【0140】
[140]この方法は、
デバイスDBの通信モジュールCM(B)が、任務命令を含んでいるデジタルメッセージMを受信する(100b、200)ステップであって、前述の任務命令が、ロボットによって所有されている公開鍵PuK(A)、ロボットが、物流センターによって、保管室を使用して動作Opを実行することを許可されていることを示す許可データAD(A)、検証鍵VK(A)、この動作Opが実行される必要がある時間スロットなどを含む、ステップ、
デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMが倉庫の物流センターによって認証されていることを検証する(10b)のが好ましい、ステップ、及び
デバイスDBのプロセッシングユニットCPU(B)が、公開鍵PuK(A)、許可データAD(A)、動作Op、検証鍵VK(A)、この動作Opが実行される必要がある時間スロットなどの、デジタルメッセージMに含まれているデータを抽出し(201、202、204)、デジタルメッセージMが物流センターによって認証されているという肯定的な検証の場合にのみ抽出するのが好ましい、ステップ、
デバイスDBの通信モジュールCM(B)が、デバイスDAの通信モジュールCM(A)から認定SAを受信し(400)、認定SAは、秘密鍵PrK(A)を使用してデバイスDAのプロセッシングユニットCPU(A)によって署名され(300a)、及び/又は秘密鍵PrK(A)を使用してデバイスDAのプロセッシングユニットCPU(A)によって署名された(300a)秘密などのデータを含むのが好ましく、前述の秘密が、デバイスDBの通信モジュールCM(B)からデバイスDAの通信モジュールCM(A)に送信されている(300)のが好ましい、ステップ、
デバイスDBのプロセッシングユニットCPU(B)が、認定SAを検証し(400b)、前述の秘密鍵PrK(A)に対応する公開鍵PuK(A)を使用して検証するのが好ましく、前述の公開鍵PuK(A)をデジタルメッセージMから抽出した(202)後に検証するのが有利である、ステップ、
デバイスDBのプロセッシングユニットCPU(B)が、
デジタルメッセージMに含まれている検証鍵VK(A)を抽出することと(204)、
プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補デジタル署名cx(A)を計算することと(203)、
検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADSを計算することと(205)を行うステップ、並びに
デバイスDBのプロセッシングユニットCPU(B)が、候補集約デジタル署名cADSがメモリに格納された(206)集約デジタル署名ADSと一致するかどうかをチェックし(207)、認定SAの肯定的な検証及び集約デジタル署名ADSとの候補集約デジタル署名cADSの肯定的な一致の場合にのみ、デバイスDBのプロセッシングユニットCPU(B)が、ロボットが物流センターによって動作Opを実行する(500a)ことを実際に許可されているという指示を保管室に送信する(500)ステップを含む。
【0141】
[141]このシステムは、デバイスDBが、従来技術の解決策よりも高い確実性を伴って、デジタルメッセージMのデジタルコンテンツの妥当性を確認することを可能にする。さらに、このシステムは、このデジタルコンテンツが有効であるかどうかをチェックするために、デバイスDBがこのデジタルコンテンツにリンクされた認証情報を制御することを可能にする。このシステムは、ロボットAが、認定SA、及びコントローラCによって発行された偽造防止デジタルファイルによって認証されるデジタルメッセージMだけを使用して、ロボットA自身を識別することを可能にする。このシステムは、保管室Bが、提示された任務命令の妥当性を完全に信頼することを可能にする。
【0142】
[142]実施形態によれば、本発明は、任務命令を含んでいる中央データベースにもサーバにも接触することを必要とせずに、動作OpがコントローラAによって実行されることを可能にする。実際に、保管室B及びロボットAは、これらが、本発明の実施形態に従う方法の実施中に互いに通信することができる限り、オフライン環境にあることができ、コントローラBが、例えば、コントローラCから、又はサーバから前にダウンロードされた集約デジタル署名ADSを含んでいる限り、オフライン環境にあることができるのが好ましい。ロボットAへ、及び保管室BへのデジタルメッセージMの送信は、保護されていないチャネルを介して実現され得るのが有利である。
【0143】
[143]実施形態によれば、本発明は、本発明に従って以前のシステムを備えているセキュアな倉庫における、本発明に従う方法の実装に関連している。
【0144】
[144]実施形態によれば、本発明は、トークンを1つのコントローラから別のコントローラに、すなわち、1つのデバイスから別のデバイスに転送するために、使用され得る。
【0145】
[145]実施形態によれば、コントローラBは、コントローラBの任務命令及び/又はコントローラAの任務命令に従って、特定の量のトークンをコントローラAに配信することができ、すなわち、金の延べ棒番号429が、少なくとも1つのデジタルアセットに置き換えられ得る。
【0146】
[146]この実施形態では、デバイスDAは、スマートフォン、スマートカード、サーバ、又はコンピュータであることができ、デバイスDBは、スマートフォン、スマートカード、サーバ、又はコンピュータであることができ、コントローラCは、金融機関又は銀行であることができる。
【0147】
モノのインターネット(IoT)セキュア通信
[147]図3によって示される本発明の応用の第2の例によれば、本発明は、IoTデバイスという名前のモノのインターネットデバイスなどの、複数のデバイス間の通信を保護するために、一般にIoTネットワークという名前の、モノのインターネット環境において実施され得る。この例では、本発明の実施形態に従って、システムは、前に説明されたようなコントローラA、コントローラB、及びコントローラCを備える。コントローラCは、例えば、コマンドセンターCである。コントローラA及びBは、例えば、コンピュータ、サーバ、ロボット、及び/又はスマートフォンである。コントローラA及びBのうちの各1つは、他と異なる種類のIoTであることができる。例えば、コントローラAはスマートフォンAであることができ、コントローラBはコンピュータBであることができる。
【0148】
[148]コントローラA、B、及びCは、通信ネットワークCNを使用して一緒にIoTネットワークを形成し、通信するのが好ましい。
【0149】
[149]コントローラAは、データを、例えばコントローラBなどの、少なくとも1つの他のコントローラに送信するように構成されるのが有利である。例えば、コントローラAによって制御されるデバイスDAは、データを、通信モジュールCM(A)を介して、コントローラBによって制御されるデバイスDBに送信するように構成される。この例では、デバイスDBは、データを、通信モジュールCM(B)を介して、デバイスDAの通信モジュールCM(A)から受信するように構成される。
【0150】
[150]好ましい実施形態によれば、コントローラAは、コントローラAによって発行され、公開鍵PuK(A)に関連付けられているのが好ましい秘密鍵PrK(A)を含み、前述の公開鍵PuK(A)は、コントローラC、すなわち、例えばコマンドセンターCによって認定されている。前述の秘密鍵PrK(A)は、コントローラAによって制御されるデバイスDAのプロセッシングユニットCPU(A)のメモリに格納されるのが好ましく、メモリの保護されたエンクレーブに格納されるのが好ましい。
【0151】
[151]実施形態によれば、コントローラBは、コントローラBが、コントローラCによって発行された、別のコントローラが例えば正確な時間スロットの間にデータをコントローラBに送信することを許可されていることを示す任務の命令を受信して検証している限り、前述の別のコントローラから送信されたデータを収集するように構成される。この任務の命令は、後で説明されるように、前述の別のコントローラによって送信されたデータの受信を可能にするためにコントローラBによって考慮される複数の他のデータを含むことができる。
【0152】
[152]実施形態によれば、コントローラBは、データを、例えばコントローラAなどの、少なくとも1つの他のコントローラに送信するように構成される。例えば、コントローラBによって制御されるデバイスDBは、データを、通信モジュールCM(B)を介して、コントローラAによって制御されるデバイスDAに送信するように構成される。この例では、デバイスDAは、データを、通信モジュールCM(A)を介して、デバイスDBの通信モジュールCM(B)から受信するように構成される。
【0153】
[153]実施形態によれば、コントローラBは、コントローラBによって発行され、公開鍵PuK(B)に関連付けられているのが好ましい秘密鍵PrK(B)を含み、前述の公開鍵PuK(B)は、コントローラC、すなわち、例えばコマンドセンターCによって認定されている。前述の秘密鍵PrK(B)は、コントローラBによって制御されるデバイスDBのプロセッシングユニットCPU(B)のメモリに格納されるのが好ましく、メモリの保護されたエンクレーブに格納されるのが好ましい。
【0154】
[154]実施形態によれば、コントローラAは、コントローラAが、コントローラCによって発行された、別のコントローラが例えば正確な時間スロットの間にデータをコントローラAに送信することを許可されていることを示す任務の命令を受信して検証している限り、前述の別のコントローラから送信されたデータを収集するように構成される。この任務の命令は、後で説明されるように、前述の別のコントローラによって送信されたデータの受信を可能にするためにコントローラAによって考慮される複数の他のデータを含むことができる。
【0155】
[155]実施形態によれば、コントローラA及びBの各々は、同じ技術的機能を備える。この例では、これらのコントローラの各々は、コントローラA及びコントローラBのうちの他のコントローラとの関係においてコントローラが動作Opを実行することを許可する、コントローラCによって発行された任務命令を持つことができる。
【0156】
[156]この例によれば、コントローラCはコマンドセンターCである。前述のコマンドセンターCは、コントローラA及び/又はBに送信されるデジタルメッセージMを使用して任務命令を発行するように構成される。例えば、デジタルメッセージMは、例えば、特定のコントローラが何を実行する必要があるか、及び例えば、この特定のコントローラがいつ実行する必要があるかを示す複数のデータの形態で、任務命令を含むことができる。この例では、コントローラCは、2つのデジタルメッセージMによって、コントローラAに関するM(A)という名前の任務命令及びコントローラBに関するM(B)という名前の別の任務命令という、2つの任務命令を発行する。
【0157】
[157]実施形態によれば、コントローラAは、コントローラAが、デジタルメッセージM(A)の形態でコントローラCによって発行された任務命令を持っており、コントローラBが、コントローラAが動作Op(A)を実行することを受け入れる前に、前述のデジタルメッセージM(A)及び前述のコントローラAに関する複数のパラメータを検証している場合にのみ、コントローラBに関連する動作Op(A)を実行するように設計される。
【0158】
[158]実施形態によれば、コントローラBは、コントローラBが、デジタルメッセージM(B)の形態でコントローラCによって発行された任務命令を持っており、コントローラAが、コントローラBが動作Op(B)を実行することを受け入れる前に、前述のデジタルメッセージM(B)及び前述のコントローラBに関する複数のパラメータを検証している場合にのみ、コントローラAに関連する動作Op(B)を実行するように設計される。
【0159】
[159]例えば、デジタルメッセージM(A)は、以下のデータを含んでいる任務命令を含むことができる。
コントローラAが、公開鍵PuK(A)を持つ。
検証鍵VK(A)。
動作Op(A):コントローラAは、データSeD(A)のセットをコントローラBに送信することを許可され、データSeD(B)のセットをコントローラBから受信することを許可される。
時間スロット:この動作は、例えば、2021年6月10日のみに実行され得る。
【0160】
[160]例えば、デジタルメッセージM(B)は、以下のデータを含んでいる任務命令を含むことができる。
コントローラBが、公開鍵PuK(B)を持つ。
検証鍵VK(B)。
動作Op(B):コントローラBは、データSeD(B)のセットをコントローラAに送信することを許可され、データSeD(A)のセットをコントローラAから受信することを許可される。
時間スロット:この動作は、例えば、2021年6月10日のみに実行され得る。
【0161】
[161]好ましい実施形態によれば、この例ではスマートフォンなどのコントローラAがデジタルメッセージM(B)を受信するときに、コントローラAは、プロセッシングユニットCPU(A)を使用して、デジタルメッセージM(B)がコントローラCによって認証されていることを検証し、デジタルメッセージM(B)がコントローラCによって認証されているという肯定的な検証の場合にのみ、コントローラAによって制御されるデバイスDAのプロセッシングユニットCPU(A)が、デジタルメッセージM(B)に含まれている許可データAD(B)の抽出を開始する。これらの許可データAD(B)は、コントローラBに関する任務命令のデータを含むのが好ましい。
【0162】
[162]次に、コントローラA、すなわち、スマートフォンは、デジタルメッセージM(B)から、コントローラB、すなわちこの例ではコンピュータの秘密鍵PrK(B)に対応する公開鍵PuK(B)、検証鍵VK(B)、動作Op(B)に関連するデータ、及び例えば任務命令において言及された時間スロットなどの、さまざまなデータを抽出する。
【0163】
[163]好ましい実施形態によれば、この例ではコンピュータなどのコントローラBがデジタルメッセージM(A)を受信するときに、コントローラBは、プロセッシングユニットCPU(B)を使用して、デジタルメッセージM(A)がコントローラCによって認証されていることを検証し、デジタルメッセージM(A)がコントローラCによって認証されているという肯定的な検証の場合にのみ、コントローラBによって制御されるデバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージM(A)に含まれている許可データAD(A)の抽出を開始する。これらの許可データAD(A)は、コントローラAに関する任務命令のデータを含むのが好ましい。
【0164】
[164]次に、コントローラB、すなわち、コンピュータは、デジタルメッセージM(A)から、コントローラA、すなわちこの例ではスマートフォンの秘密鍵PrK(A)に対応する公開鍵PuK(A)、検証鍵VK(A)、動作Op(A)に関連するデータ、及び例えば任務命令において言及された時間スロットなどの、さまざまなデータを抽出する。
【0165】
[165]実施形態によれば、コントローラAは、デバイスDAのプロセッシングユニットCPU(A)のメモリに格納された、コントローラCから受信されるのが好ましい、デジタルメッセージM(A)を含む。この例では、コントローラAは、データのセットをコンピュータ、すなわちコントローラBにアップロードする必要がある、スマートフォンである。この例では、デバイスDAは、スマートフォンの一部である。
【0166】
[166]実施形態によれば、コントローラBは、デバイスDAのプロセッシングユニットCPU(A)のメモリに格納された、コントローラCから受信されるのが好ましい、デジタルメッセージM(B)を含む。この例では、コントローラBは、データのセットをスマートフォン、すなわちコントローラAにアップロードする必要がある、コンピュータである。この例では、デバイスDBは、コンピュータの一部である。
【0167】
[167]実施形態によれば、動作Op(A)及びOp(B)を実行するために、以下を実行する。
コントローラBが、コントローラCからであるのが好ましい、デジタルメッセージM(A)を受信する(100b)。
コントローラAが、コントローラCからであるのが好ましい、デジタルメッセージM(B)を受信する(100a)。
コントローラBが、プロセッシングユニットCPU(B)を使用して、デジタルメッセージM(A)がコントローラCによって認証されていることを検証する(10b)のが好ましい。
コントローラAが、プロセッシングユニットCPU(A)を使用して、デジタルメッセージM(B)がコントローラCによって認証されていることを検証する(10a)のが好ましい。
コントローラB、すなわち、コンピュータが、デジタルメッセージM(A)から、コントローラA、すなわちスマートフォンの秘密鍵PrK(A)に対応する公開鍵PuK(A)、検証鍵(A)、動作Op(A)に関連するデータ、及び例えばコントローラAの任務命令において言及された時間スロットなどの、さまざまなデータを抽出し(201、202、204)、この抽出は、デジタルメッセージM(A)がコントローラCによって認証されたという肯定的な検証の場合にのみ行われるのが好ましい。これらの許可データAD(A)は、コントローラAの任務命令のデータを含むのが好ましい。
コントローラA、すなわち、スマートフォンが、デジタルメッセージM(B)から、コントローラB、すなわちコンピュータの秘密鍵PrK(B)に対応する公開鍵PuK(B)、検証鍵(B)、動作Op(B)に関連するデータ、及び例えばコントローラBの任務命令において言及された時間スロットなどの、さまざまなデータを抽出し、この抽出は、デジタルメッセージM(B)がコントローラCによって認証されたという肯定的な検証の場合にのみ行われるが好ましい。これらの許可データAD(B)は、コントローラBの任務命令のデータを含むのが好ましい。
コントローラBが、チャレンジCh(B)をコントローラAに送信し(300a)、デバイスDBの通信モジュールCM(B)が、通信ネットワークCNを介してチャレンジCh(B)をデバイスDAの通信モジュールCM(A)に送信する(300a)のが好ましく、チャレンジCh(B)は、デバイスDBが、コントローラBがデジタルメッセージM(A)において言及されたコントローラAと実際に通信していることを検証することを可能にするように構成され、前述のチャレンジが、乱数などの1回限りの秘密であるのが好ましい、デバイスDBの乱数発生器モジュールGRNM(B)によって生成されるのが有利である、秘密を含むことができる。
コントローラAが、チャレンジCh(A)をコントローラBに送信し、デバイスDAの通信モジュールCM(A)が、通信ネットワークCNを介してチャレンジCh(A)をデバイスDBの通信モジュールCM(B)に送信するのが好ましく、チャレンジCh(A)は、デバイスDAが、コントローラAがデジタルメッセージM(B)において言及されたコントローラBと実際に通信していることを検証することを可能にするように構成され、前述のチャレンジが、乱数などの1回限りの秘密であるのが好ましい、デバイスDAの乱数発生器モジュールGRNM(A)によって生成されるのが有利である、秘密を含むことができる。
デバイスDAのプロセッシングユニットCPU(A)が、秘密鍵PrK(A)を使用してチャレンジCh(B)に署名して(300a)、認定SA(A)を生成する。
デバイスDBのプロセッシングユニットCPU(B)が、秘密鍵PrK(B)を使用してチャレンジCh(A)に署名して(300a)、認定SA(B)を生成する。
コントローラAが、認定SA(A)をコントローラBに送信し(400)、デバイスDAの通信モジュールCM(A)が、通信ネットワークCNを介して認定SA(A)をデバイスDBの通信モジュールCM(B)に送信する(400)のが好ましい。
コントローラBが、認定SA(B)をコントローラAに送信し、デバイスDBの通信モジュールCM(B)が、通信ネットワークCNを介して認定SA(B)をデバイスDAの通信モジュールCM(A)に送信するのが好ましい。
コントローラBは、公開鍵PuK(A)を使用して認定SA(A)の妥当性をチェックし(400b)、公開鍵PuK(A)は、プロセッシングユニットCPU(B)によってデジタルメッセージM(A)から抽出されており(202)、コントローラAの任務命令内にあるのが好ましい。
コントローラAは、公開鍵PuK(B)を使用して認定SA(B)の妥当性をチェックし、公開鍵PuK(B)は、プロセッシングユニットCPU(A)によってデジタルメッセージM(B)から抽出されており、コントローラBの任務命令内にあるのが好ましい。
デバイスDBのプロセッシングユニットCPU(B)は、プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補デジタル署名cx(A)を計算し(203)、検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADS(A)を計算する(205)。
デバイスDAのプロセッシングユニットCPU(A)は、プロセッシングユニットCPU(A)においてプログラムされた一方向関数によって、許可データAD(B)の候補デジタル署名cx(B)を計算し、検証鍵VK(B)及び許可データAD(B)の計算された候補デジタル署名cx(B)から候補集約デジタル署名cADS(B)を計算する。
デバイスDBのプロセッシングユニットCPU(B)が、候補集約デジタル署名cADS(A)が、メモリに格納されているのが好ましい集約デジタル署名ADS(A)と一致するかどうかをチェックし(207)、実施形態に従って、前述の集約デジタル署名ADS(A)が、コントローラBによってコントローラCから、及び/又はサーバから受信されており、その後、前述の集約デジタル署名ADS(A)が、コントローラB、すなわちこの例ではコンピュータのプロセッシングユニットCPU(B)のメモリに格納されている(206)。
デバイスDAのプロセッシングユニットCPU(A)が、候補集約デジタル署名cADS(B)が、メモリに格納されているのが好ましい集約デジタル署名ADS(B)と一致するかどうかをチェックし、実施形態に従って、前述の集約デジタル署名ADS(B)が、コントローラAによってコントローラCから、及び/又はサーバから受信されており、その後、前述の集約デジタル署名ADS(B)が、コントローラA、すなわちこの例ではスマートフォンのプロセッシングユニットCPU(A)のメモリに格納されている。
日付が、正当に、デジタルメッセージM(A)において言及された日付、例えば、2021年6月10日である場合に、認定SA(A)の検証が肯定的であり、候補集約デジタル署名cADS(A)が集約デジタル署名ADS(A)と一致する(207)場合、コンピュータ、すなわち、コントローラBは、プロセッシングユニットCPU(B)から、コントローラAが、コントローラCによって、デジタルメッセージM(A)に含まれている任務命令において言及された動作Op(A)を実行することを実際に許可されていることの指示を受信する(500)。
日付が、正当に、デジタルメッセージM(B)において言及された日付、例えば、2021年6月10日である場合に、認定SA(B)の検証が肯定的であり、候補集約デジタル署名cADS(B)が集約デジタル署名ADS(B)と一致する場合、スマートフォン、すなわち、コントローラAは、プロセッシングユニットCPU(A)から、コントローラBが、コントローラCによって、デジタルメッセージM(B)に含まれている任務命令において言及された動作Op(B)を実行することを実際に許可されていることの指示を受信する。
コントローラBが、コントローラAによって送信されたデータSeD(A)のセットを受け取り、デバイスDBのプロセッシングユニットCPU(B)が、通信モジュールCM(B)がデバイスDAの通信モジュールCM(A)によって送信されたデータSeD(A)のセットを受け取ることができることを示す命令を、デバイスDBの通信モジュールCM(B)に送信するのが好ましい。
コントローラAが、コントローラBによって送信された(510)データSeD(B)のセットを受け取り、デバイスDAのプロセッシングユニットCPU(A)が、通信モジュールCM(A)がデバイスDBの通信モジュールCM(B)によって送信されたデータSeD(B)のセットを受け取ることができることを示す命令を、デバイスDAの通信モジュールCM(A)に送信するのが好ましい。
したがって、コントローラA及びコントローラBは、互いに完全に信頼してデータを交換することができる。
【0168】
[168]実施形態によれば、本発明は、トークンを1つのコントローラから別のコントローラに、すなわち、1つのデバイスから別のデバイスに転送するために、使用され得る。
【0169】
[169]実施形態によれば、データSeD(A)及び/又はSeD(B)のセットは、トークンを含むことができ、したがって、本発明は、トークンを1つのコントローラから別のコントローラに転送するために使用され得る。
【0170】
[170]実施形態によれば、コントローラBは、コントローラBの任務命令及び/又はコントローラAの任務命令に従って、特定の量のトークンをコントローラAに配信することができる。
【0171】
[171]別の実施形態では、コントローラAは、コントローラBの任務命令及び/又はコントローラAの任務命令に従って、特定の量のトークンをコントローラBに配信するように構成され得る。
【0172】
[172]これらの実施形態では、デバイスDAは、スマートフォン、スマートカード、サーバ、又はコンピュータであることができ、デバイスDBは、スマートフォン、スマートカード、サーバ、又はコンピュータであることができ、コントローラCは、金融機関又は銀行であることができる。
【0173】
[173]本発明の使用事例のこの例によれば、システムは、以下を備えるのが好ましい。
デバイスDAを備え、制御するコントローラA。前述のデバイスDAは、データを送信及び受信するように構成され、前述のデバイスDAは、例えば、スマートフォンであるか、又はコントローラAがスマートフォンである場合、スマートフォンの一部であることができる。
デバイスDBを備え、制御するコントローラB。前述のデバイスDBは、データを送信及び受信するように構成され、前述のデバイスDBは、例えば、コンピュータであるか、又はコントローラBがコンピュータである場合、コンピュータの一部であることができる。
【0174】
[174]このシステムは、次のような方法で構成される。
デバイスDBの通信モジュールCM(B)が、コントローラAに関連する任務命令を含んでいるデジタルメッセージM(A)を受信する(100b)ように構成され、前述の任務命令が、コントローラAによって所有されている公開鍵PuK(A)、コントローラAが、コントローラCによって、コントローラBを使用して動作Op(A)を実行することを許可されていることを示す許可データAD(A)、検証鍵VK(A)、この動作Op(A)が実行され得る時間スロットなどを含む。
デバイスDAの通信モジュールCM(A)が、コントローラBに関連する任務命令を含んでいるデジタルメッセージM(B)を受信する(100a)ように構成され、前述の任務命令が、コントローラBによって所有されている公開鍵PuK(B)、コントローラBが、コントローラCによって、コントローラAを使用して動作Op(B)を実行することを許可されていることを示す許可データAD(B)、検証鍵VK(B)、この動作Op(B)が実行され得る時間スロットなどを含む。
デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージM(A)がコントローラCによって認証されていることを検証する(10b)ように構成されるのが好ましい。
デバイスDAのプロセッシングユニットCPU(A)が、デジタルメッセージM(B)がコントローラCによって認証されていることを検証する(10a)ように構成されるのが好ましい。
デバイスDBのプロセッシングユニットCPU(B)が、公開鍵PuK(A)、許可データAD(A)、動作Op(A)、検証鍵VK(A)、この動作Op(A)が実行され得る時間スロットなどの、デジタルメッセージM(A)に含まれているデータを抽出する(201、202、204)ように構成され、この抽出が、デジタルメッセージM(A)がコントローラCによって認証されているという肯定的な検証の場合にのみ行われるのが好ましい。
デバイスDAのプロセッシングユニットCPU(A)が、公開鍵PuK(B)、許可データAD(B)、動作Op(B)、検証鍵VK(B)、この動作Op(B)が実行され得る時間スロットなどの、デジタルメッセージM(B)に含まれているデータを抽出するように構成され、この抽出が、デジタルメッセージM(B)がコントローラCによって認証されているという肯定的な検証の場合にのみ行われるのが好ましい。
デバイスDBの通信モジュールCM(B)が、デバイスDAの通信モジュールCM(A)から認定SA(A)を受信する(400)ように構成され、認定SA(A)は、秘密鍵PrK(A)を使用してデバイスDAのプロセッシングユニットCPU(A)によって署名され(300a)、及び/又は秘密鍵PrK(A)を使用してデバイスDAのプロセッシングユニットCPU(A)によって署名された(300a)秘密などのデータを含むのが好ましく、前述の秘密は、デバイスDBの通信モジュールCM(B)からデバイスDAの通信モジュールCM(A)に送信されている(300)のが好ましい。
デバイスDAの通信モジュールCM(A)が、デバイスDBの通信モジュールCM(B)から認定SA(B)を受信するように構成され、認定SA(B)は、秘密鍵PrK(B)を使用してデバイスDBのプロセッシングユニットCPU(B)によって署名され、及び/又は秘密鍵PrK(B)を使用してデバイスDBのプロセッシングユニットCPU(B)によって署名された別の秘密などのデータを含むのが好ましく、前述の別の秘密は、デバイスDAの通信モジュールCM(A)からデバイスDBの通信モジュールCM(B)に送信されているのが好ましい。
デバイスDBのプロセッシングユニットCPU(B)は、認定SA(A)を検証する(400b)ように構成され、前述の秘密鍵PrK(A)に対応する公開鍵PuK(A)を使用して検証するのが好ましく、前述の公開鍵PuK(A)をデジタルメッセージM(A)から抽出した(202)後に検証するのが有利である。
デバイスDAのプロセッシングユニットCPU(A)は、認定SA(B)を検証するように構成され、前述の秘密鍵PrK(B)に対応する公開鍵PuK(B)を使用して検証するのが好ましく、前述の公開鍵PuK(B)をデジタルメッセージM(B)から抽出した後に検証するのが有利である。
デバイスDBのプロセッシングユニットCPU(B)が、
プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補デジタル署名cx(A)を計算することと(203)、
検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADS(A)を計算することと(205)を行うように構成される。
デバイスDAのプロセッシングユニットCPU(A)が、
プロセッシングユニットCPU(A)においてプログラムされた一方向関数によって、許可データAD(B)の候補デジタル署名cx(B)を計算することと、
検証鍵VK(B)及び許可データAD(B)の計算された候補デジタル署名cx(B)から候補集約デジタル署名cADS(B)を計算することとを行うように構成される。
デバイスDBのプロセッシングユニットCPU(B)が、候補集約デジタル署名cADS(A)がメモリに格納された(206)集約デジタル署名ADS(A)と一致するかどうかをチェックする(207)ように構成され、認定SA(A)の肯定的な検証及び集約デジタル署名ADS(A)との候補集約デジタル署名cADS(A)の肯定的な一致の場合にのみ、デバイスDBのプロセッシングユニットCPU(B)が、コントローラAがコントローラCによって動作Op(A)を実行する(500a)ことを実際に許可されているという指示をコントローラBに送信する(500)ように構成される。
デバイスDAのプロセッシングユニットCPU(A)が、候補集約デジタル署名cADS(B)がメモリに格納された集約デジタル署名ADS(B)と一致するかどうかをチェックするように構成され、認定SA(B)の肯定的な検証及び集約デジタル署名ADS(B)との候補集約デジタル署名cADS(B)の肯定的な一致の場合にのみ、デバイスDAのプロセッシングユニットCPU(A)が、コントローラBがコントローラCによって動作Op(B)を実行する(510)ことを実際に許可されているという指示をコントローラAに送信するように構成される。
【0175】
[175]このシステムは、従来技術の解決策よりも高い確実性を伴って、コントローラBが、デジタルメッセージM(A)のデジタルコンテンツの妥当性を確認すること、及びコントローラAが、デジタルメッセージM(B)のデジタルコンテンツの妥当性を確認することを可能にする。さらに、このシステムは、デジタルメッセージM(A)のデジタルコンテンツが有効であるかどうかをチェックするために、コントローラBがこのデジタルコンテンツにリンクされた認証情報を制御すること、及びデジタルメッセージM(B)のデジタルコンテンツが有効であるかどうかをチェックするために、コントローラAがこのデジタルコンテンツにリンクされた認証情報を制御することを可能にする。このシステムは、コントローラAが、認定SA(A)、及びコントローラCによって発行された偽造防止デジタルファイルによって認証されるのが好ましいデジタルメッセージM(A)だけを使用して、コントローラA自身を識別すること、並びにコントローラBが、認定SA(B)、及びコントローラCによって発行された偽造防止デジタルファイルによって認証されるのが好ましいデジタルメッセージM(B)だけを使用して、コントローラB自身を識別することを可能にする。このシステムは、コントローラBが、提示された任務命令の妥当性を完全に信頼すること、及びコントローラAが、提示された任務命令の妥当性を完全に信頼することを可能にする。
【0176】
[176]本発明の使用事例のこの例によれば、本発明は、実施形態に従って、以下の方法に関連している。
コントローラAが、デバイスDAを備えて制御し、前述のデバイスDAは、データを送信及び受信するように構成されている。
コントローラBが、デバイスDBを備えて制御し、前述のデバイスDBは、データを送信及び受信するように構成されている。
【0177】
[177]この方法は、
デバイスDBの通信モジュールCM(B)が、コントローラAに関連する任務命令を含んでいるデジタルメッセージM(A)を受信する(100b)ステップであって、前述の任務命令が、コントローラAによって所有されている公開鍵PuK(A)、コントローラAが、コントローラCによって、コントローラBを使用して動作Op(A)を実行することを許可されていることを示す許可データAD(A)、検証鍵VK(A)、この動作Op(A)が実行され得る時間スロットなどを含む、ステップ、
デバイスDAの通信モジュールCM(A)が、コントローラBに関連する任務命令を含んでいるデジタルメッセージM(B)を受信する(100a)ステップであって、前述の任務命令が、コントローラBによって所有されている公開鍵PuK(B)、コントローラBが、コントローラCによって、コントローラAを使用して動作Op(B)を実行することを許可されていることを示す許可データAD(B)、検証鍵VK(B)、この動作Op(B)が実行され得る時間スロットなどを含む、ステップ、
デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージM(A)がコントローラCによって認証されていることを検証する(10b)のが好ましい、ステップ、
デバイスDAのプロセッシングユニットCPU(A)が、デジタルメッセージM(B)がコントローラCによって認証されていることを検証する(10a)のが好ましい、ステップ、
デバイスDBのプロセッシングユニットCPU(B)が、公開鍵PuK(A)、許可データAD(A)、動作Op(A)、検証鍵VK(A)、この動作Op(A)が実行され得る時間スロットなどの、デジタルメッセージM(A)に含まれているデータを抽出する(201、202、204)ステップであって、この抽出が、デジタルメッセージM(A)がコントローラCによって認証されているという肯定的な検証の場合にのみ行われるのが好ましい、ステップ、
デバイスDAのプロセッシングユニットCPU(A)が、公開鍵PuK(B)、許可データAD(B)、動作Op(B)、検証鍵VK(B)、この動作Op(B)が実行され得る時間スロットなどの、デジタルメッセージM(B)に含まれているデータを抽出するステップであって、この抽出が、デジタルメッセージM(B)がコントローラCによって認証されているという肯定的な検証の場合にのみ行われるのが好ましい、ステップ、
デバイスDBの通信モジュールCM(B)が、デバイスDAの通信モジュールCM(A)から認定SA(A)を受信する(400)ステップであって、認定SA(A)が、秘密鍵PrK(A)を使用してデバイスDAのプロセッシングユニットCPU(A)によって署名され(300a)、及び/又は秘密鍵PrK(A)を使用してデバイスDAのプロセッシングユニットCPU(A)によって署名された(300a)秘密などのデータを含むのが好ましく、前述の秘密が、デバイスDBの通信モジュールCM(B)からデバイスDAの通信モジュールCM(A)に送信されている(300)のが好ましい、ステップ、
デバイスDAの通信モジュールCM(A)が、デバイスDBの通信モジュールCM(B)から認定SA(B)を受信するステップであって、認定SA(B)が、秘密鍵PrK(B)を使用してデバイスDBのプロセッシングユニットCPU(B)によって署名され、及び/又は秘密鍵PrK(B)を使用してデバイスDBのプロセッシングユニットCPU(B)によって署名された別の秘密などのデータを含むのが好ましく、前述の別の秘密が、デバイスDAの通信モジュールCM(A)からデバイスDBの通信モジュールCM(B)に送信されているのが好ましい、ステップ、
デバイスDBのプロセッシングユニットCPU(B)が、認定SA(A)を検証し(400b)、前述の秘密鍵PrK(A)に対応する公開鍵PuK(A)を使用して検証するのが好ましく、前述の公開鍵PuK(A)をデジタルメッセージM(A)から抽出した後に検証するのが有利である、ステップ、
デバイスDAのプロセッシングユニットCPU(A)が、認定SA(B)を検証し、前述の秘密鍵PrK(B)に対応する公開鍵PuK(B)を使用して検証するのが好ましく、前述の公開鍵PuK(B)をデジタルメッセージM(B)から抽出した後に検証するのが有利である、ステップ、
デバイスDBのプロセッシングユニットCPU(B)が、
デジタルメッセージM(A)に含まれている検証鍵VK(A)を抽出することと(204)、
プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補205デジタル署名cx(A)を計算することと(203)、
検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADS(A)を計算することとを行うステップ、
デバイスDAのプロセッシングユニットCPU(A)が、
デジタルメッセージM(B)に含まれている検証鍵VK(B)を抽出することと、
プロセッシングユニットCPU(A)においてプログラムされた一方向関数によって、許可データAD(B)の候補デジタル署名cx(B)を計算することと、
検証鍵VK(B)及び許可データAD(B)の計算された候補デジタル署名cx(B)から候補集約デジタル署名cADS(B)を計算することとを行うステップ、
デバイスDBのプロセッシングユニットCPU(B)が、候補集約デジタル署名cADS(A)がメモリに格納された(206)集約デジタル署名ADS(A)と一致するかどうかをチェックし(207)、認定SA(A)の肯定的な検証及び集約デジタル署名ADS(A)との候補集約デジタル署名cADS(A)の肯定的な一致の場合にのみ、デバイスDBのプロセッシングユニットCPU(B)が、コントローラAがコントローラCによって動作Op(A)を実行する(500a)ことを実際に許可されているという指示をコントローラBに送信する(500)ステップ、
デバイスDAのプロセッシングユニットCPU(A)が、候補集約デジタル署名cADS(B)がメモリに格納された集約デジタル署名ADS(B)と一致するかどうかをチェックし、認定SA(B)の肯定的な検証及び集約デジタル署名ADS(B)との候補集約デジタル署名cADS(B)の肯定的な一致の場合にのみ、デバイスDAのプロセッシングユニットCPU(A)が、コントローラBがコントローラCによって動作Op(B)を実行する(510)ことを実際に許可されているという指示をコントローラAに送信するステップを含む。
【0178】
[178]このシステムは、従来技術の解決策よりも高い確実性を伴って、コントローラBが、デジタルメッセージM(A)のデジタルコンテンツの妥当性を確認すること、及びコントローラAが、デジタルメッセージM(B)のデジタルコンテンツの妥当性を確認することを可能にする。さらに、このシステムは、このデジタルコンテンツが有効であるかどうかをチェックするために、コントローラBがデジタルメッセージM(A)のデジタルコンテンツにリンクされた認証情報を制御することを可能にし、このデジタルコンテンツが有効であるかどうかをチェックするために、コントローラAがデジタルメッセージM(B)のデジタルコンテンツにリンクされた認証情報を制御することを可能にする。このシステムは、コントローラAが、認定SA(A)、及びコントローラCによって発行された偽造防止デジタルファイルによって認証されたデジタルメッセージM(A)だけを使用して、コントローラA自身を識別することを可能にし、並びにコントローラBが、認定SA(B)、及びコントローラCによって発行された偽造防止デジタルファイルによって認証されたデジタルメッセージM(B)だけを使用して、コントローラB自身を識別することを可能にする。このシステムは、コントローラBが、提示された任務命令の妥当性を完全に信頼すること、及びコントローラAが、提示された任務命令の妥当性を完全に信頼することを可能にする。
【0179】
[179]実施形態によれば、本発明は、任務命令を含んでいる中央データベースにもサーバにも接触することを必要とせずに、動作Op(A)がコントローラAによって実行されること、及び動作Op(B)がコントローラBによって実行されることを可能にする。実際に、コントローラB及びコントローラAは、これらが、本発明の実施形態に従う方法の実施中に互いに通信することができる限り、オフライン環境にあることができ、コントローラAが、例えば、コントローラCから、又はサーバから前にダウンロードされた集約デジタル署名ADS(B)を含んでいる限り、オフライン環境にあることができるのが好ましく、コントローラBが、例えば、コントローラCから、又はサーバから前にダウンロードされた集約デジタル署名ADS(A)を含んでいる限り、オフライン環境にあることができるのが好ましい。コントローラAへ、及びコントローラBへのデジタルメッセージM(A)及びM(B)の送信は、保護されていないチャネルを介して実現され得るのが有利である。
【0180】
[180]実施形態によれば、本発明は、本発明に従って以前のシステムを備えている通信ネットワークCNにおける、本発明に従う方法の実装に関連している。
【0181】
医療用デバイスと情報をやりとりする看護師
[181]図4によって示される本発明の応用の第3の例によれば、本発明は、看護師が医療用デバイスを使用して特定の薬品を特定の患者に注射することを安全に可能にするために実施され得る。
【0182】
[182]この例によれば、コントローラAは看護師Aである。看護師Aは、例えばスマートフォンであることができるデバイスDAを備える。看護師Aは、複数の患者に注意する必要があり、したがって、この使用事例ではコントローラCである、例えば少なくとも1人の医師及び/又は1つの病院によって発行された、異なる任務命令に従って、さまざまな薬品を注射する必要がある。コントローラA、すなわち看護師Aは、コントローラAによって発行され、公開鍵PuK(A)に関連付けられているのが好ましい秘密鍵PrK(A)を含み、前述の公開鍵PuK(A)は、コントローラC、すなわち、医師C及び/又は病院によって認定されている。この秘密鍵PrK(A)は、デバイスDA、すなわち、例えば看護師AのスマートフォンのプロセッシングユニットCPU(A)のメモリに格納され、メモリの保護されたエンクレーブに格納されるのが好ましい。
【0183】
[183]この例によれば、コントローラBは、医療用デバイスBであり、スマート医療用デバイス、すなわち、デバイスDBを備えている医療用デバイスであるのが好ましい。前述の医療用デバイスBは、前述の医療用デバイスが、特定の看護師が薬品を患者に注射することなどの特定の動作Opを実行できることを示す適切な任務命令を受信する場合に、ある特定の量の特定の薬品を配達又は注射するように構成され、前述の任務命令は、この例ではコントローラCの役割を果たす医師C及び/又は病院によって発行される。
【0184】
[184]この例によれば、コントローラCは、医師C並びに/或いは医療機関及び/又は病院である。前述の医師Cは、例えばインターネットなどの通信ネットワークCNを介して看護師Aに送信されるデジタルメッセージMを使用して、任務命令を発行する。実施形態によれば、デジタルメッセージMは、医師Cによって医療用デバイスBにも送信される。例えば、デジタルメッセージMは、例えば、看護師Aが何を実行する必要があるか、及び看護師Aがいつ実行する必要があるかを示す一連のデータの形態で、任務命令を含むことができる。この例では、任務命令は以下のデータを含むことができる。
看護師Aが、公開鍵PuK(A)を持つ。
検証鍵VK(A)。
動作Op:看護師Aは、Ymlの薬品Xを患者ABCに注射する必要がある。
時間スロット:この動作は、例えば、2021年6月10日9時30分~9時45分に実行される必要がある。
患者の住所に対応する位置。
【0185】
[185]実施形態によれば、看護師、すなわち、コントローラAがデジタルメッセージMを受信するときに、看護師は、プロセッシングユニットCPU(A)を使用して、デジタルメッセージMが医師Cによって認証されていることを検証し、デジタルメッセージMが医師Cによって認証されているという肯定的な検証の場合にのみ、看護師AのデバイスDAのプロセッシングユニットCPU(A)が、デジタルメッセージMに含まれている許可データAD(A)の抽出を開始するのが好ましい。これらの許可データAD(A)は、看護師Aの任務命令のデータを含むのが好ましい。
【0186】
[186]次に、看護師AのデバイスDA、すなわち、例えば看護師AのスマートフォンDAのプロセッシングユニットCPU(A)が、デジタルメッセージMから、動作Opに関連するデータ、並びに例えば、任務命令において言及された時間スロット及び/又は任務命令において言及された位置などの、さまざまなデータを抽出する。
【0187】
[187]好ましい実施形態によれば、医療用デバイス、すなわち、コントローラBがデジタルメッセージMを受信するときに、コントローラBは、プロセッシングユニットCPU(B)を使用して、デジタルメッセージMが医師Cによって認証されていることを検証し、デジタルメッセージMが医師Cによって認証されているという肯定的な検証の場合にのみ、医療用デバイスのデバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMに含まれている許可データAD(A)の抽出を開始するのが好ましい。これらの許可データAD(A)は、任務命令のデータを含むのが好ましい。
【0188】
[188]次に、コントローラB、すなわち、医療用デバイスBは、デジタルメッセージMから、看護師A、すなわちコントローラAの秘密鍵PrK(A)に対応する公開鍵PuK(A)、検証鍵(A)、動作Opに関連するデータ、並びに例えば任務命令において言及された時間スロット及び/又は任務命令において言及された位置などの、さまざまなデータを抽出する。
【0189】
[189]実施形態によれば、例えば、看護師Aが医療用デバイスBの正面に到着するとき、又は看護師Aが医療用デバイスBを作動させるときに、医療用デバイスBがチャレンジを看護師Aに送信し、デバイスDBの通信モジュールCM(B)が、チャレンジを、この場合は例えば看護師AのスマートフォンであるデバイスDAの通信モジュールCM(A)に送信するのが好ましい。
【0190】
[190]実施形態によれば、医療用デバイスBによって制御されるデバイスDBの通信モジュールCM(B)は、ディスプレイモジュールDD(B)を備え、光学式読み取り装置モジュールOR(B)を備えるのが好ましい。前述のディスプレイモジュールDD(B)は、データの光学読み取り可能な表現を表示するように構成され、グラフィカルデータブロックGDB(B)の光学読み取り可能な表現を表示するように構成されるのが好ましい。グラフィカルデータブロックGDB(B)は、例えば前述のチャレンジなどの、さまざまな種類のデータを含むことができる。このデジタルデータブロックGDB(B)は、「QRコード」とも呼ばれる2Dバーコードを含むことができるのが有利である。
【0191】
[191]実施形態によれば、看護師Aのスマートフォンの通信モジュールCM(A)は、光学式読み取り装置モジュールOR(A)を備え、ディスプレイモジュールDD(A)を備えるのが好ましい。前述の光学式読み取り装置モジュールOR(A)は、データの光学読み取り可能な表現を読み取ってデコードするように構成され、グラフィカルデータブロックGDBの光学読み取り可能な表現を読み取ってデコードするように構成されるのが好ましい。通信モジュールCM(A)は、グラフィカルデータブロックGDBから、例えば前述のチャレンジなどのデータを抽出することができるのが好ましい。
【0192】
[192]この例では、医療用デバイスBは、ディスプレイモジュールを使用してQRコードQRC(B)を表示し、前述のQRコードQRC(B)がチャレンジをエンコードする。次に、看護師Aは、看護師Aのスマートフォンを使用して前述のQRコードQRC(B)をデコードし、スマートフォンの光学式読み取り装置モジュールOR(A)を使用して前述のチャレンジを抽出する。
【0193】
[193]このチャレンジは、デバイスDBの乱数発生器モジュールGRNM(B)によって生成された乱数であることができるのが有利である。実施形態によれば、看護師Aが、看護師Aのスマートフォンを介して(看護師Aのスマートフォンの通信モジュールCM(A)を介するのが有利である)、前述のチャレンジを受信するときに、スマートフォンは、看護師Aの秘密鍵PrK(A)を使用してチャレンジに署名し、より正確には、スマートフォンのプロセッシングユニットCPU(A)が、前述の認定SAを生成する秘密鍵PrK(A)を使用してチャレンジに署名する。次に、スマートフォンが、認定SAを医療用デバイスBに返送し、スマートフォンの通信モジュールCM(A)が、前述の認定SAを、医療用デバイスBによって制御されるデバイスDBの通信モジュールCM(B)に送信するのが好ましい。
【0194】
[194]実施形態によれば、スマートフォンの通信モジュールCM(A)は、データの光学読み取り可能な表現を表示し、ディスプレイモジュールDD(A)を使用してグラフィカルデータブロックGDB(A)の光学読み取り可能な表現を表示するのが好ましく、前述のグラフィカルデータブロックGDB(A)は、認定SAのエンコードされたバージョンを、例えば1つ又は複数のQRコードQRC(A)の形態で含むのが好ましい。
【0195】
[195]この実施形態によれば、医療用デバイスBによって制御されるデバイスDBの通信モジュールCM(B)は、前述の認定SAを抽出するために、光学式読み取り装置モジュールOR(B)を使用してこのQRコードQRC(B)を読み取ってデコードする。
【0196】
[196]次に、医療用デバイスBは、公開鍵PuK(A)を使用して認定SAの妥当性をチェックし、公開鍵PuK(A)は、プロセッシングユニットCPU(B)によってデジタルメッセージMから抽出されており、任務命令内にあり、すなわち、デジタルメッセージMに含まれるのが好ましい。
【0197】
[197]その後、医療用デバイスBのデバイスDBのプロセッシングユニットCPU(B)は、プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補デジタル署名cx(A)を計算し、検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADSを計算し、デバイスDBのプロセッシングユニットCPU(B)は、候補集約デジタル署名cADSがメモリに格納されている集約デジタル署名ADSと一致するかどうかをチェックする。実施形態によれば、前述の集約デジタル署名ADSは、医療用デバイスBによって、前述の医師Cから、及び/又はサーバから受信されている。その後、前述の集約デジタル署名ADSが、医療用デバイスBによって制御されるデバイスDBのプロセッシングユニットCPU(B)のメモリに格納されている(206)。
【0198】
[198]実施形態によれば、医療用デバイスBは、デジタルメッセージMから、看護師Aが動作しなければならない時間スロット、この例では、2021年6月10日9時30分~9時45分など、及び/又は患者の位置などの、他のデータを抽出する。
【0199】
[199]次に、看護師が患者の住所に配置された場合、時間が任務命令に含まれている時間スロット、例えば2021年6月10日9時30分~9時45分に対応し、認定SAの検証が肯定的であり、候補集約デジタル署名cADSが集約デジタル署名ADSと一致する場合、医療用デバイスBは、デバイスDBのプロセッシングユニットCPU(B)から、看護師Aが、医師Cによって、デジタルメッセージMに含まれている任務命令において言及された動作Opを実行することを実際に許可されていることの指示を受信する。したがって、医療用デバイスBが、看護師AがYmlの薬品Xを患者ABCに注射することを許可する、及び/又は看護師Aの調査に従って、医療用デバイスBが、Ymlの薬品Xを患者ABCに注射する、及び/又は医療用デバイスBが、患者ABCに注射されるYmlの薬品Xを看護師Aに配達する。
【0200】
[200]本発明の使用事例のこの例によれば、システムは、以下を備えるのが好ましい。
看護師AのスマートフォンDA。前述のスマートフォンDAは、看護師Aが動作Opを実行できるようになるために、医療用デバイスBによる看護師Aの認証を可能にするように構成され、前述のスマートフォンは、グラフィカルデータブロックGDB(A)の光学読み取り可能な表現であるのが有利であるデータの光学読み取り可能な表現を表示するように構成されたディスプレイモジュールDD(A)を備えている通信モジュールCM(A)を備えるのが好ましく、前述のグラフィカルデータブロックGDB(A)は、例えば、QRコードの形態で、エンコードされたデータを含む。
デバイスDBを備えて制御する医療用デバイスB。前述の医療用デバイスBは、特定の看護師が特定の量の特定の薬品を特定の患者に注射することであって、特定の時間スロットに行われるのが好ましい、注射すること、及び/又は特定の看護師の調査に従って特定の量の特定の薬品を特定の患者に配達することであって、特定の時間スロットに行われるのが好ましい、配達することの許可をチェックするように構成され、デバイスDBは、グラフィカルデータブロックGDBの光学読み取り可能な表現であるのが好ましいデータの光学読み取り可能な表現を読み取ってデコードするように構成され、データをグラフィカルデータブロックGDBから抽出するように構成されるのが有利である、光学式読み取り装置モジュールOR(B)を備えている通信モジュールCM(B)を備える。
【0201】
[201]このシステムは、次のような方法で構成される。
医療用デバイスBのデバイスDBの通信モジュールCM(B)が、任務命令を含んでいるデジタルメッセージMを受信する(200)ように構成され、前述の任務命令が、看護師Aによって所有されている公開鍵PuK(A)、看護師Aが、医師Cによって、動作Opを実行することを許可されていることを示す許可データAD(A)、検証鍵VK(A)、この動作Opが実行される必要がある時間スロットなどを含む。
デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMが医師Cによって認証されていることを検証する(10b)ように構成されるのが好ましい。
デバイスDBのプロセッシングユニットCPU(B)が、公開鍵PuK(A)、許可データAD(A)、動作Op、検証鍵VK(A)、この動作Opが実行される必要がある時間スロットなどの、デジタルメッセージMに含まれているデータを抽出する(201、202、204)ように構成され、この抽出が、デジタルメッセージMが医師Cによって認証されているという肯定的な検証の場合にのみ行われるのが好ましい。
デバイスDBの通信モジュールCM(B)が、認定SAをスマートフォンDAの通信モジュールCM(A)から受信する(400)ように構成され、デバイスDBの通信モジュールCM(B)の光学式読み取り装置モジュールOR(B)が、スマートフォンDAのディスプレイモジュールDD(A)によって表示されるグラフィカルデータブロックGDB(A)の光学読み取り可能な表現を読み取ってデコードするように構成されるのが好ましく、前述のグラフィカルデータブロックGDB(A)が、2dバーコードの形態であるのが有利である認定SAのエンコードされたバージョンを含むのが好ましく、認定SAを抽出するために、前述の光学式読み取り装置モジュールOR(B)が、前述の認定SAの前述のエンコードされたバージョンをデコードするように構成され、前述の認定SAが、秘密鍵PrK(A)を使用してデバイスDAのプロセッシングユニットCPU(A)によって署名され(300a)、及び/又は秘密鍵PrK(A)を使用してデバイスDAのプロセッシングユニットCPU(A)によって署名された(300a)秘密などのデータを含むのが好ましい。
デバイスDBのプロセッシングユニットCPU(B)が、認定SAを検証する(400b)ように構成され、前述の秘密鍵PrK(A)に対応する公開鍵PuK(A)を使用して検証するのが好ましく、前述の公開鍵PuK(A)をデジタルメッセージMから抽出した(202)後に検証するのが有利である。
デバイスDBのプロセッシングユニットCPU(B)が、
プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補205デジタル署名cx(A)を計算することと(203)、
検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADSを計算することとを行うように構成される。
デバイスDBのプロセッシングユニットCPU(B)が、候補集約デジタル署名cADSがメモリに格納された(206)集約デジタル署名ADSと一致するかどうかをチェックする(207)ように構成され、認定SAの肯定的な検証及び集約デジタル署名ADSとの候補集約デジタル署名cADSの肯定的な一致の場合にのみ、デバイスDBのプロセッシングユニットCPU(B)が、看護師Aが医師Cによって動作Opを実行する(500a)ことを実際に許可されているという指示を医療用デバイスBに送信する(500)ように構成される。
【0202】
[202]このシステムは、医療用デバイスBが、従来技術の解決策よりも高い確実性を伴って、デジタルメッセージMのデジタルコンテンツの妥当性を確認することを可能にする。さらに、このシステムは、このデジタルコンテンツが有効であるかどうかをチェックするために、医療用デバイスBがこのデジタルコンテンツにリンクされた認証情報、すなわち、任務命令を制御することを可能にする。このシステムは、看護師Aが、認定SA、及びデジタルメッセージM内にあり、コントローラCによって発行された偽造防止デジタルファイルによって認証されるのが好ましい、認証情報だけを使用して看護師A自身を識別することを可能にする。このシステムは、医療用デバイスBが、提示された任務命令の妥当性を完全に信頼することを可能にする。
【0203】
[203]このシステムが、看護師Aの生体測定データの使用を回避するということに、注意しなければならない。任務命令及び認定SAは、完全な信頼性を医療用デバイスBに与えるのに十分である。このシステムは、看護師Aに関する任意の生体測定データ、生体測定、又は個人情報の開示を回避するのが有利である。
【0204】
[204]本発明の使用事例のこの例によれば、本発明は、実施形態に従って、以下の方法に関連している。
看護師AのスマートフォンDAは、看護師Aが動作Opを実行できるようになるために、医療用デバイスBによる看護師Aの認証を可能にするように構成され、前述のスマートフォンDAは、グラフィカルデータブロックGDB(B)の光学読み取り可能な表現であるのが有利であるデータの光学読み取り可能な表現を表示するように構成されたディスプレイモジュールDD(A)を備えている通信モジュールCM(A)を備えるのが好ましく、前述のグラフィカルデータブロックGDB(B)は、例えば、QRコードの形態で、エンコードされたデータを含む。
医療用デバイスBは、デバイスDBを備えて制御し、前述の医療用デバイスBは、特定の看護師が特定の量の特定の薬品を特定の患者に注射することであって、特定の時間スロットに行われるのが好ましい、注射すること、及び/又は特定の看護師の調査に従って特定の量の特定の薬品を特定の患者に配達することであって、特定の時間スロットに行われるのが好ましい、配達することの許可をチェックするように構成され、デバイスDBは、グラフィカルデータブロックGDBの光学読み取り可能な表現であるのが好ましいデータの光学読み取り可能な表現を読み取ってデコードするように構成され、データをグラフィカルデータブロックGDBから抽出するように構成されるのが有利である、光学式読み取り装置モジュールOR(B)を備えている通信モジュールCM(B)を備える。
【0205】
[205]この方法は、
医療用デバイスBのデバイスDBの通信モジュールCM(B)が、任務命令を含んでいるデジタルメッセージMを受信する(200)ステップであって、前述の任務命令が、看護師Aによって所有されている公開鍵PuK(A)、看護師Aが、医師Cによって、動作Opを実行することを許可されていることを示す許可データAD(A)、検証鍵VK(A)、この動作Opが実行される必要がある時間スロットなどを含む、ステップ、
デバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMが医師Cによって認証されていることを検証する(10b)のが好ましい、ステップ、
デバイスDBのプロセッシングユニットCPU(B)が、公開鍵PuK(A)、許可データAD(A)、動作Op、検証鍵VK(A)、この動作Opが実行される必要がある時間スロットなどの、デジタルメッセージMに含まれているデータを抽出し(201、202、204)、デジタルメッセージMが医師Cによって認証されているという肯定的な検証の場合にのみ抽出するのが好ましい、ステップ、
デバイスDBの通信モジュールCM(B)が、認定SAをスマートフォンDAの通信モジュールCM(A)から受信する(400)ステップであって、デバイスDBの通信モジュールCM(B)の光学式読み取り装置モジュールOR(B)が、スマートフォンDAのディスプレイモジュールDD(A)によって表示されるグラフィカルデータブロックGDB(A)の光学読み取り可能な表現を読み取ってデコードするのが好ましく、前述のグラフィカルデータブロックGDB(A)が、2dバーコードの形態であるのが有利である認定SAのエンコードされたバージョンを含むのが好ましく、認定SAを抽出するために、前述の光学式読み取り装置モジュールOR(B)が、前述の認定SAの前述のエンコードされたバージョンをデコードし、前述の認定SAが、秘密鍵PrK(A)を使用してデバイスDAのプロセッシングユニットCPU(A)によって署名され(300a)、及び/又は秘密鍵PrK(A)を使用してデバイスDAのプロセッシングユニットCPU(A)によって署名された(300a)秘密などのデータを含むのが好ましい、ステップ、
デバイスDBのプロセッシングユニットCPU(B)が、認定SAを検証し(400b)、前述の秘密鍵PrK(A)に対応する公開鍵PuK(A)を使用して検証するのが好ましく、前述の公開鍵PuK(A)をデジタルメッセージMから抽出した(202)後に検証するのが有利である、ステップ、
デバイスDBのプロセッシングユニットCPU(B)が、
デジタルメッセージMに含まれている検証鍵VK(A)を抽出することと(204)、
プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補デジタル署名cx(A)を計算することと(203)、
検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADSを計算することと(205)を行うステップ、及び
デバイスDBのプロセッシングユニットCPU(B)が、候補集約デジタル署名cADSがメモリに格納された集約デジタル署名ADSと一致するかどうかをチェックし(207)、認定SAの肯定的な検証及び集約デジタル署名ADSとの候補集約デジタル署名cADSの肯定的な一致の場合にのみ、デバイスDBのプロセッシングユニットCPU(B)が、看護師Aが医師Cによって動作Opを実行する(500a)ことを実際に許可されているという指示を医療用デバイスBに送信する(500)ステップを含む。
【0206】
[206]この方法は、医療用デバイスBが、従来技術の解決策よりも高い確実性を伴って、デジタルメッセージMのデジタルコンテンツの妥当性を確認することを可能にする。さらに、この方法は、このデジタルコンテンツが有効であるかどうかをチェックするために、医療用デバイスBがこのデジタルコンテンツにリンクされた認証情報、すなわち、任務命令を制御することを可能にする。この方法は、看護師Aが、認定SA、及びデジタルメッセージM内にあり、コントローラCによって発行された偽造防止デジタルファイルによって認証されるのが好ましい、認証情報だけを使用して看護師A自身を識別することを可能にする。この方法は、医療用デバイスBが、提示された任務命令の妥当性を完全に信頼することを可能にする。
【0207】
[207]この方法が、看護師Aの生体測定データの使用を回避するということに、注意しなければならない。このデジタルメッセージM及び認定SAは、完全な信頼性を医療用デバイスBに与えるのに十分である。この方法は、看護師Aの任意の生体測定データ、生体測定、又は個人情報の開示を回避するのが有利である。
【0208】
[208]実施形態によれば、本発明は、任務命令を含んでいる中央データベースにもサーバにも接触することを必要とせずに、動作Opが看護師A及び医療用デバイスBによって実行されることを可能にする。実際に、医療用デバイスB及び看護師Aは、これらが、本発明の実施形態に従う方法の実施中に互いに通信することができる限り、オフライン環境にあることができ、コントローラBが、例えば、コントローラCから、又はサーバから前にダウンロードされた集約デジタル署名ADSを含んでいる限り、オフライン環境にあることができるのが好ましい。看護師Aへ、及び医療用デバイスBへのデジタルメッセージMの送信は、保護されていないチャネルを介して実現され得るのが有利である。
【0209】
[209]実施形態によれば、本発明は、本発明に従って以前のシステムを備えている医療環境における、本発明に従う方法の実装に関連している。
【0210】
捜索令状
[210]図5によって示される本発明の応用の第4の例によれば、本発明は、警官が特定の市民に関する捜索令状を実行することを安全に可能にするために実施され得る。
【0211】
[211]この例によれば、コントローラAは警官Aである。警官Aは、例えばスマートフォンDAであることができるデバイスDAを備える。警官Aは、例えば、市民の家に立ち入って犯罪の証拠を探すことなどの、令状に含まれている任務を実行する必要があり、この場合、令状は例えば捜索令状である。この令状は、裁判官又は司法機関によって発行されているのが好ましく、前述の裁判官又は司法機関は、この使用事例ではコントローラCの役割を果たす。警官A、すなわちコントローラAは、コントローラAによって発行され、公開鍵PuK(A)に関連付けられているのが好ましい秘密鍵PrK(A)を含み、前述の公開鍵PuK(A)は、コントローラC、すなわち、例えば裁判官Cによって認証されている。この秘密鍵PrK(A)は、デバイスDA、すなわち、例えば警官AのスマートフォンDAのプロセッシングユニットCPU(A)のメモリに格納され、メモリの保護されたエンクレーブに格納されるのが好ましい。
【0212】
[212]この例によれば、コントローラBは、前述の令状において言及された市民であり、この例では、デバイスDBは、市民BのスマートフォンDBであることができる。
【0213】
[213]この例によれば、したがってコントローラCは、裁判官C及び/又は司法機関である。前述の裁判官Cは、例えばインターネットなどの通信ネットワークCNを介して警官Aに送信されるデジタルメッセージMを使用して、令状、すなわち任務命令を発行する。例えば、このデジタルメッセージMは、グラフィカルデータブロックGDB(A)の光学読み取り可能な表現を含むこと、及び/又は光学読み取り可能な表現の形態であることができ、前述のグラフィカルデータブロックGDB(A)は、例えばQRコードQRC(A)などの、2Dバーコードを含むことができるのが有利である。実施形態によれば、そのようなグラフィカルデータブロックGDB(A)は、デジタルマークDM(A)とも呼ばれ得る。
【0214】
[214]好ましい実施形態によれば、令状を含んでいるデジタルメッセージMは、例えばQRコードQRC(A)などの、機械可読の形態である。
【0215】
[215]例えば、デジタルメッセージMは、例えば、警官Aが何を実行することを許可されているか、及び警官Aがいつ実行することを許可されているかを示すデータのセットの形態で、任務命令を含むことができる。この例では、任務命令、すなわち令状は、以下のデータを含むことができる。
警官Aが、公開鍵PuK(A)を持つ。
検証鍵VK(A)。
動作Op:警官Aは、証拠を探すために、住所Yにある市民Bの家に立ち入ることを許可されている。
時間スロット:この動作は、例えば、2021年6月11日午後15時00分~18時30分の間に実行される必要がある。
【0216】
[216]好ましい実施形態によれば、警官A、すなわちコントローラAが、裁判官CからデジタルメッセージMを受信するときに、コントローラAは、プロセッシングユニットCPU(A)を使用して、デジタルメッセージMが裁判官C、すなわちコントローラCによって認証されていることを検証する。
【0217】
[217]例えば、市民Bの家のドアで一度、警官Aは、デジタルメッセージM、すなわち前述のQRコードQRC(A)を市民Bに見せる。実施形態によれば、スマートフォンDA、すなわちデバイスDAは、ディスプレイモジュールDD(A)を備えており、光学式読み取り装置モジュールOR(B)を備えているのが好ましい、通信モジュールCM(A)を備え、前述のディスプレイモジュールDD(A)は、デジタルメッセージMの、すなわち令状のエンコードされたバージョンを含むグラフィカルデータブロックGDB(A)などの、グラフィカルデータブロックGDB(A)の光学読み取り可能な表現であるの好ましい、データの光学読み取り可能な表現を表示するように構成される。したがって、実施形態によれば、市民Bの家のドアで一度、警官Aは、警官AのスマートフォンDAで前述のディスプレイモジュールDD(A)を使用して、前述のデジタルメッセージMをエンコードするQRコードQRC(A)を表示する。
【0218】
[218]次に、市民Bは、市民BのスマートフォンDBを使用して、警官AのスマートフォンDAのディスプレイモジュールDD(A)に表示された前述のQRコードQRC(A)を光学的に読み取り、次に、市民Bは、スマートフォンDBを使用して、前述のQRコードQRC(A)からデジタルメッセージMを抽出する。実施形態によれば、市民BのスマートフォンDBは、光学式読み取り装置モジュールOR(B)を備えており、ディスプレイモジュールDD(B)を備えているのが好ましい、通信モジュールCM(B)を備える。前述の光学式読み取り装置モジュールOR(B)は、データの光学読み取り可能な表現を読み取ってデコードするように構成され、グラフィカルデータブロックGDBの光学読み取り可能な表現を読み取ってデコードするように構成されるのが好ましい。通信モジュールCM(B)は、グラフィカルデータブロックGDBから、例えば前述のQRコードQRC(A)からの前述のデジタルメッセージMなどのデータを抽出することができるのが好ましい。
【0219】
[219]実施形態によれば、市民BのスマートフォンDBは、そのようなデジタルメッセージMを読み取り、デコードし、抽出するように構成された特定のソフトウェアを備えることができ、このソフトウェアは、プロセッシングユニットCPU(B)を使用するのが好ましい。市民BのスマートフォンDBの通信モジュールCM(B)によってデジタルメッセージが受信されたときに、プロセッシングユニットCPU(B)は、デジタルメッセージMの妥当性及びそのコンテンツ、すなわち、この例では令状をチェックする。
【0220】
[220]好ましい実施形態によれば、市民B、すなわち、コントローラBがデジタルメッセージMを受信するときに、コントローラBは、スマートフォンDB、すなわちプロセッシングユニットCPU(B)を使用して、デジタルメッセージMが裁判官C、すなわちコントローラCによって認証されていることを検証し、デジタルメッセージMが裁判官Cによって認証されているという肯定的な検証の場合にのみ、スマートフォンDBの、すなわちデバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMに含まれている許可データAD(A)の抽出を開始する。これらの許可データAD(A)は、任務命令のデータを含むのが好ましい。
【0221】
[221]実施形態によれば、デジタルメッセージMが裁判官Cによって認証されたということの検証の後に、プロセッシングユニットCPU(B)が、デジタルメッセージMから、警官Aの秘密鍵PrK(A)に対応する公開鍵PuK(A)、検証鍵(A)、動作Opに関連するデータ、及び例えば任務命令において言及された時間スロットなどの、さまざまなデータを抽出する。
【0222】
[222]次に、市民Bは、チャレンジを警官Aに送信する。実施形態によれば、このチャレンジは、市民Bによって動作中に考案された乱数などの、乱数であることができる。市民BのスマートフォンDBの通信モジュールCM(B)は、チャレンジを警官AのスマートフォンDAの通信モジュールCM(A)に送信するのが好ましい。
【0223】
[223]このチャレンジは、市民BのスマートフォンDBの乱数発生器モジュールGRNM(B)によって生成された乱数であることができるのが有利である。
【0224】
[224]実施形態によれば、市民BのスマートフォンDBの通信モジュールCM(B)は、通信ネットワークCNを使用して前述のチャレンジを警官AのスマートフォンDAの通信モジュールCM(A)に送信し、例えば、Bluetooth通信ネットワークなどの近距離無線通信ネットワークを使用するのが好ましい。
【0225】
[225]実施形態によれば、チャレンジは、電磁波を介して、市民BのスマートフォンDBの通信モジュールCM(B)から、警官AのスマートフォンDAの通信モジュールCM(A)に送信される。
【0226】
[226]実施形態によれば、チャレンジはデータ列の形態である。
【0227】
[227]例によれば、このチャレンジは、グラフィカルデータブロックGDB(B)の光学読み取り可能な表現の形態でエンコードされることが可能であり、前述のグラフィカルデータブロックGDB(B)は、例えばQRコードQRC(B)などの、2Dバーコードを含むことができるのが有利である。実施形態によれば、そのようなグラフィカルデータブロックGDB(B)は、デジタルマークDM(B)とも呼ばれ得る。
【0228】
[228]実施形態によれば、チャレンジは、例えばQRコードQRC(B)などの、機械可読の形態である。
【0229】
[229]実施形態によれば、市民Bは、前述のQRコードQRC(B)を警官Aに見せる。実施形態によれば、市民BのスマートフォンDB、すなわちデバイスDBの通信モジュールCM(B)は、ディスプレイモジュールDD(A)を備えており、光学式読み取り装置モジュールOR(B)を備えているのが好ましく、前述のディスプレイモジュールDD(B)は、チャレンジの、すなわち例えば乱数の、又はさらに一般的には秘密の、エンコードされたバージョンを含むグラフィカルデータブロックGDB(B)などの、グラフィカルデータブロックGDB(B)の光学読み取り可能な表現であるの好ましい、データの光学読み取り可能な表現を表示するように構成される。したがって、実施形態によれば、市民Bは、市民Bのスマートフォンで前述のディスプレイモジュールDD(B)を使用して、前述のチャレンジをエンコードするQRコードQRC(B)を表示する。
【0230】
[230]次に、警官Aは、警官AのスマートフォンDAを使用して、市民BのスマートフォンDBのディスプレイモジュールDD(B)に表示された前述のQRコードQRC(B)を光学的に読み取る。その後、警官Aは、警官AのスマートフォンDAを使用して、前述のQRコードQRC(B)から、チャレンジ、すなわち秘密又は例えば乱数を抽出する。実施形態によれば、警官AのスマートフォンDAの通信モジュールCM(A)は、光学式読み取り装置モジュールOR(A)を備え、ディスプレイモジュールDD(A)を備えるのが好ましい。前述の光学式読み取り装置モジュールOR(A)は、データの光学読み取り可能な表現を読み取ってデコードするように構成され、グラフィカルデータブロックGDBの光学読み取り可能な表現を読み取ってデコードするように構成されるのが好ましい。通信モジュールCM(A)は、グラフィカルデータブロックGDBから、例えば前述のQRコードQRC(B)からの前述のチャレンジなどのデータを抽出することができるのが好ましい。
【0231】
[231]実施形態によれば、警官AのスマートフォンDAは、前述のチャレンジを読み取り、デコードし、抽出するように構成され、前述のチャレンジに署名するように構成されるのが好ましい、特定のソフトウェアを備えることができ、このソフトウェアは、プロセッシングユニットCPU(A)を使用するのが好ましい。警官AのスマートフォンDAの通信モジュールCM(A)によってチャレンジが受信されたときに、プロセッシングユニットCPU(A)は、警官Aの秘密鍵PrK(A)を使用して前述のチャレンジに署名する。次に、警官AのスマートフォンDAの通信モジュールCM(A)は、署名されたチャレンジを認定SAの形態で市民に、すなわち市民Bのスマートフォンの通信モジュールCM(B)に送信する。
【0232】
[232]実施形態によれば、警官AのスマートフォンDAの通信モジュールCM(A)は、通信ネットワークCNを使用して前述の認定SAを市民BのスマートフォンDBの通信モジュールCM(B)に送信し、例えば、Bluetooth通信ネットワークなどの近距離無線通信ネットワークを使用するのが好ましい。
【0233】
[233]実施形態によれば、認定SAは、電磁波を介して、警官AのスマートフォンDAの通信モジュールCM(A)から、市民BのスマートフォンDBの通信モジュールCM(B)に送信される。
【0234】
[234]実施形態によれば、認定SAはデータ列の形態である。
【0235】
[235]例によれば、この認定SAは、グラフィカルデータブロックGDB(A2)の光学読み取り可能な表現の形態でエンコードされることが可能であり、前述のグラフィカルデータブロックGDB(A2)は、例えばQRコードQRC(A2)などの、2Dバーコードを含むことができるのが有利である。実施形態によれば、そのようなグラフィカルデータブロックGDB(A2)は、デジタルマークDM(A2)とも呼ばれ得る。
【0236】
[236]好ましい実施形態によれば、認定SAは、例えばQRコードQRC(A2)などの、機械可読の形態である。
【0237】
[237]実施形態によれば、警官Aは、前述のQRコードQRC(A2)を市民Bに見せる。実施形態によれば、警官Aは、警官AのスマートフォンDAで前述のディスプレイモジュールDD(A)を使用して、前述の認定SAをエンコードするQRコードQRC(A2)を表示する。
【0238】
[238]次に、市民Bは、市民BのスマートフォンDBを使用して、警官AのスマートフォンDBのディスプレイモジュールDD(A)に表示された前述のQRコードQRC(A2)を光学的に読み取る。次に、市民Bは、市民BのスマートフォンDBで光学式読み取り装置モジュールOR(B)を使用して、認定SA、すなわち署名されたチャレンジを前述のQRコードQRC(A2)から抽出する。通信モジュールCM(B)は、グラフィカルデータブロックGDBから、例えば前述のQRコードQRC(A2)からの前述の認定SAなどのデータを抽出することができるのが好ましい。
【0239】
[239]実施形態によれば、市民BのスマートフォンDBの通信モジュールCM(B)は、前述の認定SAを抽出するために、光学式読み取り装置モジュールOR(B)を使用してこのQRコードQRC(A2)を読み取ってデコードする。
【0240】
[240]実施形態によれば、市民Bのスマートフォンは、前述の認定SAを読み取る、デコードする、及び/又は抽出するように構成された特定のソフトウェアを備えることができ、このソフトウェアは、プロセッシングユニットCPU(A)を使用するのが好ましい。市民BのスマートフォンDBの通信モジュールCM(B)によって認定SAが受信されたときに、プロセッシングユニットCPU(B)は、認定SA、すなわち署名されたチャレンジをチェックし、特に、チャレンジが、デジタルメッセージMから抽出された、すなわち令状内にある公開鍵PuK(A)に対応する秘密鍵PrK(A)を使用して署名されていることをチェックする。
【0241】
[241]その後、市民BのスマートフォンDBのプロセッシングユニットCPU(B)は、プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補デジタル署名cx(A)を計算し、検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADSを計算し、プロセッシングユニットCPU(B)は、候補集約デジタル署名cADSがメモリに格納されている集約デジタル署名ADSと一致するかどうかをチェックする。実施形態によれば、前述の集約デジタル署名ADSは、市民Bによって、前述の裁判官Cから、及び/又はサーバから受信されている。実施形態によれば、市民Bが、専用アプリケーションを介するのが好ましい、市民BのスマートフォンDBを使用して前述のQRコードQRC(A)を読み取るときに、市民BのスマートフォンDBは、通信モジュールCM(B)を使用してサーバに接触し、前述の集約デジタル署名ADSをダウンロードする。その後、前述の集約デジタル署名ADSが、市民BのスマートフォンDBのプロセッシングユニットCPU(B)のメモリに格納されている。
【0242】
[242]実施形態によれば、市民BのスマートフォンDBは、デジタルメッセージMから、警官Aが動作しなければならない時間スロットなど、この例では、2021年6月11日午後15時00分~18時30分などの、他のデータを抽出する。
【0243】
[243]次に、時間が、任務命令において言及された正当な時間、例えば、2021年6月11日午後15時00分~18時30分である場合に、認定SAの検証が肯定的であり、候補集約デジタル署名cADSが集約デジタル署名ADSと一致する場合、市民Bは、市民Bのスマートフォンから、市民BのスマートフォンDBのプロセッシングユニットCPU(B)からであるのが好ましい、警官Aが、裁判官Cによって、デジタルメッセージMに含まれている令状において言及された動作Opを実行することを実際に許可されていることの指示を受信する。したがって、市民Bは、警官Aが住所Yにある市民Bの家に立ち入って証拠を探すことを許可することができる。
【0244】
[244]本発明の使用事例のこの例によれば、システムは、以下を備えるのが好ましい。
警官AのスマートフォンDA。前述のスマートフォンDAは、警官Aが動作Opを実行できるようになるために、市民Bによる警官Aの認証を可能にするように構成され、前述のスマートフォンDAは、プロセッシングユニットCPU(A)と、ディスプレイモジュールDD(A)及び光学式読み取り装置モジュールOR(A)を備えている通信モジュールCM(A)とを備え、前述のディスプレイモジュールDD(A)は、データの光学読み取り可能な表現を表示するように構成され、グラフィカルデータブロックGDB(A)の光学読み取り可能な表現を表示するように構成されるのが有利であり、前述のグラフィカルデータブロックGDB(A)は、例えばQRコードの形態で、エンコードされたデータを含み、前述の光学式読み取り装置モジュールOR(A)は、データの光学読み取り可能な表現を読み取ってデコードするように構成され、グラフィカルデータブロックGDBの光学読み取り可能な表現を読み取ってデコードするように構成されるのが好ましく、グラフィカルデータブロックGDBからデータを抽出するように構成されるのが有利である。
市民BのスマートフォンDB。前述のスマートフォンは、特定の時間スロットに行われるのが好ましい、特定の警官が動作Opを実行することの許可をチェックするように構成され、前述のスマートフォンDBは、プロセッシングユニットCPU(B)と、ディスプレイモジュールDD(B)及び光学式読み取り装置モジュールOR(B)を備えている通信モジュールCM(B)とを備え、前述のディスプレイモジュールDD(B)は、データの光学読み取り可能な表現を表示するように構成され、グラフィカルデータブロックGDB(B)の光学読み取り可能な表現を表示するように構成されるのが有利であり、前述のグラフィカルデータブロックGDB(B)は、例えばQRコードの形態で、エンコードされたデータを含み、前述の光学式読み取り装置モジュールOR(B)は、データの光学読み取り可能な表現を読み取ってデコードするように構成され、グラフィカルデータブロックGDBの光学読み取り可能な表現を読み取ってデコードするように構成されるのが好ましく、グラフィカルデータブロックGDBからデータを抽出するように構成されるのが有利である。
【0245】
[245]このシステムは、次のような方法で構成される。
通信モジュールCM(B)が、任務命令を含んでいるデジタルメッセージMを受信する(200)ように構成され、前述の任務命令が、警官Aによって所有されている公開鍵PuK(A)、警官Aが、裁判官Cによって、動作Opを実行することを許可されていることを示す許可データAD(A)、検証鍵VK(A)、この動作Opが実行される必要がある時間スロットなどを含む。
プロセッシングユニットCPU(B)が、デジタルメッセージMが裁判官Cによって認証されていることを検証する(10b)ように構成されるのが好ましい。
プロセッシングユニットCPU(B)が、公開鍵PuK(A)、許可データAD(A)、動作Op、検証鍵VK(A)、この動作Opが実行される必要がある時間スロットなどの、デジタルメッセージMに含まれているデータを抽出する(201、202、204)ように構成され、この抽出が、デジタルメッセージMが裁判官Cによって認証されているという肯定的な検証の場合にのみ行われるのが好ましい。
通信モジュールCM(B)が、認定SAを通信モジュールCM(A)から受信する(400)ように構成され、通信モジュールCM(B)の光学式読み取り装置モジュールOR(B)が、ディスプレイモジュールDD(A)によって表示されるグラフィカルデータブロックGDB(A)の光学読み取り可能な表現を読み取ってデコードするように構成されるのが好ましく、前述のグラフィカルデータブロックGDB(A)が、2dバーコードの形態であるのが有利である認定SAのエンコードされたバージョンを含むのが好ましく、認定SAを抽出するために、前述の光学式読み取り装置モジュールOR(B)が、前述の認定SAの前述のエンコードされたバージョンをデコードするように構成され、前述の認定SAが、秘密鍵PrK(A)を使用してプロセッシングユニットCPU(A)によって署名され(300a)、及び/又は秘密鍵PrK(A)を使用してプロセッシングユニットCPU(A)によって署名された(300a)秘密などのデータを含むのが好ましい。
プロセッシングユニットCPU(B)が、認定SAを検証する(400b)ように構成され、前述の秘密鍵PrK(A)に対応する公開鍵PuK(A)を使用して検証するのが好ましく、前述の公開鍵PuK(A)をデジタルメッセージMから抽出した(202)後に検証するのが有利である。
プロセッシングユニットCPU(B)が、
プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補デジタル署名cx(A)を計算することと(203)、
検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADSを計算することと(205)を行うように構成される。
プロセッシングユニットCPU(B)が、候補集約デジタル署名cADSがメモリに格納された(206)集約デジタル署名ADSと一致するかどうかをチェックする(207)ように構成され、認定SAの肯定的な検証及び集約デジタル署名ADSとの候補集約デジタル署名cADSの肯定的な一致の場合にのみ、プロセッシングユニットCPU(B)が、警官Aが裁判官Cによって動作Opを実行する(500a)ことを実際に許可されているという指示を市民Bに送信する(500)ように構成される。
【0246】
[246]このシステムは、市民Bが、従来技術の解決策よりも高い確実性を伴って、デジタルメッセージMのデジタルコンテンツの妥当性を確認することを可能にする。さらに、このシステムは、このデジタルコンテンツが有効であるかどうかをチェックするために、市民Bがこのデジタルコンテンツにリンクされた認証情報、すなわち、任務命令を制御することを可能にする。このシステムは、警官Aが、認定SA、及びデジタルメッセージM内にあり、コントローラCによって発行された偽造防止デジタルファイルによって認証されるのが好ましい、警官Aの認証情報だけを使用して警官A自身を識別することを可能にする。このシステムは、市民Bが、提示された任務命令の妥当性を完全に信頼することを可能にする。
【0247】
[247]このシステムが、警官Aの生体測定データの使用を回避するということに、注意しなければならない。任務命令及び認定SAは、完全な信頼性を市民Bに与えるのに十分である。このシステムは、警官Aに関する任意の生体測定データ、生体測定、又は個人情報の開示を回避するのが有利である。
【0248】
[248]本発明の使用事例のこの例によれば、本発明は、実施形態に従って、以下の方法に関連している。
警官AのスマートフォンDAが、警官Aが動作Opを実行できるようになるために、市民Bによる警官Aの認証を可能にするように構成され、前述のスマートフォンDAは、プロセッシングユニットCPU(A)と、ディスプレイモジュールDD(A)を備えており、光学式読み取り装置モジュールOR(A)を備えているのが好ましい、通信モジュールCM(A)とを備えるのが好ましく、前述のディスプレイモジュールDD(A)は、データの光学読み取り可能な表現を表示するように構成され、グラフィカルデータブロックGDB(A)の光学読み取り可能な表現を表示するように構成されるのが有利であり、前述のグラフィカルデータブロックGDB(A)は、例えばQRコードの形態で、エンコードされたデータを含み、前述の光学式読み取り装置モジュールOR(B)は、データの光学読み取り可能な表現を読み取ってデコードするように構成され、グラフィカルデータブロックGDBの光学読み取り可能な表現を読み取ってデコードするように構成されるのが好ましく、グラフィカルデータブロックGDBからデータを抽出するように構成されるのが有利である。
市民BのスマートフォンDB。前述のスマートフォンは、特定の時間スロットに行われるのが好ましい、特定の警官が動作Opを実行することの許可をチェックするように構成され、市民BのスマートフォンDBは、プロセッシングユニットCPU(B)と、光学式読み取り装置モジュールOR(B)を備えており、ディスプレイモジュールDD(B)を備えているのが好ましい、通信モジュールCM(B)とを備え、前述の光学式読み取り装置モジュールOR(B)は、データの光学読み取り可能な表現を読み取ってデコードするように構成され、グラフィカルデータブロックGDBの光学読み取り可能な表現を読み取ってデコードするように構成されるのが好ましく、グラフィカルデータブロックGDBからデータを抽出するように構成されるのが有利であり、前述のディスプレイモジュールDD(B)は、データの光学読み取り可能な表現を表示するように構成され、グラフィカルデータブロックGDB(B)の光学読み取り可能な表現を表示するように構成されるのが有利であり、前述のグラフィカルデータブロックGDB(B)は、例えばQRコードの形態で、エンコードされたデータを含む。
【0249】
[249]この方法は、
通信モジュールCM(B)が、任務命令を含んでいるデジタルメッセージMを受信する(200)ステップであって、前述の任務命令が、警官Aによって所有されている公開鍵PuK(A)、警官Aが、裁判官Cによって、動作Opを実行することを許可されていることを示す許可データAD(A)、検証鍵VK(A)、この動作Opが実行される必要がある時間スロットなどを含む、ステップ、
プロセッシングユニットCPU(B)が、デジタルメッセージMが裁判官Cよって認証されていることを検証する(10b)のが好ましい、ステップ、
デバイスDBのプロセッシングユニットCPU(B)が、公開鍵PuK(A)、許可データAD(A)、動作Op、検証鍵VK(A)、この動作Opが実行される必要がある時間スロットなどの、デジタルメッセージMに含まれているデータを抽出し(201、202、204)、デジタルメッセージMが裁判官Cによって認証されているという肯定的な検証の場合にのみ抽出するのが好ましい、ステップ、
通信モジュールCM(B)が、認定SAを通信モジュールCM(A)から受信する(400)ステップであって、デバイスDBの通信モジュールCM(B)の光学式読み取り装置モジュールOR(B)が、ディスプレイモジュールDD(A)によって表示されるグラフィカルデータブロックGDB(A)の光学読み取り可能な表現を読み取ってデコードするのが好ましく、前述のグラフィカルデータブロックGDB(A)が、2dバーコードの形態であるのが有利である認定SAのエンコードされたバージョンを含むのが好ましく、認定SAを抽出するために、前述の光学式読み取り装置モジュールOR(B)が、前述の認定SAの前述のエンコードされたバージョンをデコードし、前述の認定SAが、秘密鍵PrK(A)を使用してデバイスDAのプロセッシングユニットCPU(A)によって署名され(300a)、及び/又は秘密鍵PrK(A)を使用してデバイスDAのプロセッシングユニットCPU(A)によって署名された(300a)秘密などのデータを含むのが好ましい、ステップ、
プロセッシングユニットCPU(B)が、認定SAを検証し(400b)、前述の秘密鍵PrK(A)に対応する公開鍵PuK(A)を使用して検証するのが好ましく、前述の公開鍵PuK(A)をデジタルメッセージMから抽出した(202)後に検証するのが有利である、ステップ、
プロセッシングユニットCPU(B)が、
デジタルメッセージMに含まれている検証鍵VK(A)を抽出することと(204)、
プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補デジタル署名cx(A)を計算することと(203)、
検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADSを計算することと(205)を行うステップ、及び
プロセッシングユニットCPU(B)が、候補集約デジタル署名cADSがメモリに格納された(206)集約デジタル署名ADSと一致するかどうかをチェックし(207)、認定SAの肯定的な検証及び集約デジタル署名ADSとの候補集約デジタル署名cADSの肯定的な一致の場合にのみ、プロセッシングユニットCPU(B)が、警官Aが裁判官Cによって動作Opを実行する(500a)ことを実際に許可されているという指示を市民BのスマートフォンDBに送信する(500)ステップを含む。
【0250】
[250]この方法は、市民Bが、従来技術の解決策よりも高い確実性を伴って、デジタルメッセージMのデジタルコンテンツの妥当性を確認することを可能にする。さらに、この方法は、このデジタルコンテンツが有効であるかどうかをチェックするために、市民Bがこのデジタルコンテンツにリンクされた認証情報、すなわち、任務命令を制御することを可能にする。この方法は、警官Aが、認定SA、及びデジタルメッセージM内にあり、コントローラCによって発行された偽造防止デジタルファイルによって認証されるのが好ましい、警官Aの認証情報だけを使用して警官A自身を識別することを可能にする。この方法は、市民Bが、提示された任務命令の妥当性を完全に信頼することを可能にする。
【0251】
[251]この方法が、警官Aの生体測定データの使用を回避するということに、注意しなければならない。このデジタルメッセージM及び認定SAは、完全な信頼性を市民Bに与えるのに十分である。この方法は、警官Aの任意の生体測定データ、生体測定、又は個人情報の開示を回避するのが有利である。
【0252】
[252]実施形態によれば、本発明は、任務命令を含んでいる中央データベースにもサーバにも接触することを必要とせずに、動作Opが警官A及び市民Bによって実行されることを可能にする。実際に、市民B及び警官Aは、これらが、本発明の実施形態に従う方法の実施中に互いに通信することができる限り、オフライン環境にあることができ、コントローラBが、例えば、コントローラCから、又はサーバから前にダウンロードされた集約デジタル署名ADSを含んでいる限り、オフライン環境にあることができるのが好ましい。警官Aへ、及び市民BへのデジタルメッセージMの送信は、保護されていないチャネルを介して実現され得るのが有利である。
【0253】
[253]実施形態によれば、本発明は、本発明に従って以前のシステムを備えている司法環境における、本発明に従う方法の実装に関連している。
【0254】
公務員による公式デジタル文書の発行
[254]図6によって示される本発明の応用の第5の例によれば、本発明は、公務員が、例えばデジタル出生証明書などの公式デジタル文書であるのが好ましい、公式文書を発行することを安全に許可するために実施され得る。本発明は、この公式文書の受信者などの人が、この公式文書が、機関からの公式な命令に従って、許可された公務員によって署名されていることを検証することを可能にし、疑う余地のない方法で検証することを可能するのが好ましい。
【0255】
[255]この例によれば、コントローラAは公務員Aである。公務員Aは、例えばコンピュータDAであることができるデバイスDAを制御し、備える。公務員Aは、例えば、卒業証書又は出生証明書などの公式デジタル文書を発行する必要がある。この公式文書は、例えばPDF文書などの、デジタルの形態であるのが好ましい。この公式デジタル文書は、名前、日付、位置、署名などの、さまざまな情報を含むことができる。
【0256】
[256]この公式デジタル文書は、機関、例えば、市の住民登録事務所からの公式な命令に従って、公務員Aによって署名されるのが好ましい。前述の機関は、この使用事例ではコントローラCの役割を果たす。公務員A、すなわちコントローラAは、コントローラAによって発行され、公開鍵PuK(A)に関連付けられているのが好ましい秘密鍵PrK(A)を含み、前述の公開鍵PuK(A)は、コントローラC、すなわち、例えば機関によって認証されている。この秘密鍵PrK(A)は、デバイスDA、すなわち、例えば公務員AのコンピュータDAのプロセッシングユニットCPU(A)のメモリに格納され、メモリの保護されたエンクレーブに格納されるのが好ましい。
【0257】
[257]この例によれば、コントローラBは、この公式デジタル文書の妥当性をチェックしたい、すなわち、この公式デジタル文書が許可された公務員によって発行されていることを検証したい、市民B及び/又は別の機関及び/又は別の公務員である。この例では、デバイスDBは、市民Bのスマートフォンであることができる。
【0258】
[258]この例によれば、コントローラCは機関Cである。前述の機関Cは、公式デジタル文書に署名する権限を特定の公務員に委任する。機関Cは、例えばインターネットなどの通信ネットワークCNを介して公務員Aに送信されるデジタルメッセージMを使用して、任務命令を発行する。例えば、このデジタルメッセージMは、グラフィカルデータブロックGDB(A)の光学読み取り可能な表現を含むこと、及び/又は光学読み取り可能な表現の形態であることができ、前述のグラフィカルデータブロックGDB(A)は、例えばQRコードなどの、2Dバーコードを含むことができるのが有利である。実施形態によれば、そのようなグラフィカルデータブロックGDB(A)は、デジタルマークDM(A)とも呼ばれ得る。
【0259】
[259]好ましい実施形態によれば、任務命令を含んでいるデジタルメッセージMは、例えばQRコードなどの、機械可読の形態である。
【0260】
[260]例えば、デジタルメッセージMは、例えば、公務員Aが何を実行することを許可されているか、及び公務員Aがいつ実行することを許可されているかを示すデータのセットの形態で、任務命令を含むことができる。この例では、任務命令は以下のデータを含むことができる。
公務員Aが、公開鍵PuK(A)を持つ。
検証鍵VK(A)。
動作Op:この公務員Aは、例えば、機関Cからの公式な命令に従って、例えば、ユートピア市の住民登録事務所を代表して、デジタル出生証明書などの公式デジタル文書を発行してそれに署名することを許可されている。
時間スロット:この動作は、例えば、日付1~日付2の営業時間内に実行され得る。
【0261】
[261]実施形態によれば、公務員A、すなわちコントローラAが、機関CからデジタルメッセージMを受信するときに、コントローラAは、コンピュータDA、すなわちコンピュータDAのプロセッシングユニットCPU(A)を使用して、デジタルメッセージMが機関C、すなわちコントローラCによって認証されていることを検証する。
【0262】
[262]例えば、公務員Aが、出生証明書などの公式デジタル文書を、例えばPDF文書の形態で発行するときに、公務員Aは、デジタルメッセージMを公式デジタル文書に添付し、QRコードQRC(A)の形態で添付するのが好ましい。
【0263】
[263]例えば、QRコードQRC(A)を含んでいるデジタル出生証明書が、公務員Aによって発行され、前述のQRコードQRC(A)は、前述のデジタルメッセージMをエンコードする。
【0264】
[264]公務員Aは、公務員Aの秘密鍵PrK(A)を使用して公式デジタル文書に署名するのが好ましい。このデジタル署名は、公式デジタル文書にも添付され、認定SAしての役割を果たすのが好ましい。実施形態によれば、公務員Aは、公務員Aの秘密鍵PrK(A)を使用して公式デジタル文書のハッシュに署名し、公式デジタル文書の前述のハッシュは、プロセッシングユニットCPU(A)においてプログラムされた一方向関数によって計算され、前述の公式デジタル文書のコンテンツの少なくとも一部に適用される。
【0265】
[265]前述の公式デジタル文書の受信者(市民Bと名付ける)が、前述の公式デジタル文書の妥当性をチェックしたい場合、市民Bは、例えば、この例ではデバイスDBとして機能する市民BのスマートフォンDBを使用する。
【0266】
[266]実施形態によれば、市民Bは、市民BのスマートフォンDBを使用して、前述の公式デジタル文書に添付及び/又は結合された前述のデジタルメッセージMを読み取る、及び/又はデコードする。
【0267】
[267]実施形態によれば、市民Bは、市民BのスマートフォンDBを使用して、前述の公式デジタル文書に添付及び/又は結合されたQRコードQRC(A)を読み取る。実施形態によれば、市民Bは、市民BのスマートフォンDBを使用して、例えば、ディスプレイモジュールに表示された前述のQRコードQRC(A)を光学的に読み取る。
【0268】
[268]市民Bは、市民BのスマートフォンDBを使用して、例えば前述のQRコードQRC(A)から、デジタルメッセージMを抽出するのが好ましい。実施形態によれば、市民Bのスマートフォンは、前述のデジタルメッセージMを受信する、読み取る、及び/又はデコードするように設計された通信モジュールCM(B)を備える。
【0269】
[269]実施形態によれば、市民Bのスマートフォンは、光学式読み取り装置モジュールOR(B)を備えており、ディスプレイモジュールDD(B)を備えているのが好ましい、通信モジュールCM(B)を備える。前述の光学式読み取り装置モジュールOR(B)は、データの光学読み取り可能な表現を読み取ってデコードするように構成され、グラフィカルデータブロックGDBの光学読み取り可能な表現を読み取ってデコードするように構成されるのが好ましい。通信モジュールCM(B)は、グラフィカルデータブロックGDBから、例えば前述のQRコードQRC(A)からの前述のデジタルメッセージMなどのデータを抽出することができるのが好ましい。
【0270】
[270]実施形態によれば、公務員Aは、公式デジタル文書を市民Bに送信する。前述の公式デジタル文書は、デジタルメッセージMと共に送信され、及び/又は前述のデジタルメッセージMを含むことができるのが好ましい。別の実施形態によれば、公式デジタル文書及びデジタルメッセージMは、公務員Aによって市民Bに別々に送信される。
【0271】
[271]実施形態によれば、コンピュータDA、すなわちデバイスDAは、前述の公式デジタル文書及び前述のデジタルメッセージMを送信するように構成された通信モジュールCM(A)を備える。
【0272】
[272]実施形態によれば、市民BのスマートフォンDBは、例えば、QRコードQRC(A)から、そのようなデジタルメッセージMを読み取り、デコードし、抽出するように構成された特定のソフトウェアを備えることができ、このソフトウェアは、プロセッシングユニットCPU(B)を使用するのが好ましい。市民BのスマートフォンDBの通信モジュールCM(B)によってデジタルメッセージMが受信及び/又はデコードされたときに、プロセッシングユニットCPU(B)は、デジタルメッセージMの妥当性及びそのコンテンツ、すなわち、この例では任務命令をチェックする。
【0273】
[273]好ましい実施形態によれば、市民B、すなわち、コントローラBがデジタルメッセージMを含んでいる公式デジタル文書を受信するときに、市民Bは、スマートフォンDB、すなわち市民BのスマートフォンDBのプロセッシングユニットCPU(B)を使用して、デジタルメッセージMが機関C、すなわちコントローラCによって認証されていることを検証し、デジタルメッセージMが機関Cによって認証されているという肯定的な検証の場合にのみ、スマートフォンDBの、すなわちデバイスDBのプロセッシングユニットCPU(B)が、デジタルメッセージMに含まれている許可データAD(A)の抽出を開始するのが好ましい。これらの許可データAD(A)は、任務命令のデータを含むのが好ましい。
【0274】
[274]実施形態によれば、デジタルメッセージMが機関Cによって認証されたということの検証の後に、プロセッシングユニットCPU(B)が、デジタルメッセージMから、公務員Aの秘密鍵PrK(A)に対応する公開鍵PuK(A)、検証鍵(A)、動作Opに関連するデータ、及び例えば任務命令において言及された時間スロットなどの、さまざまなデータを抽出する。
【0275】
[275]実施形態によれば、市民Bが、デジタルメッセージMを含んでいる市民Bが公式デジタル文書を受信するときに、市民Bは、認定SAも受信する。この認定SAは、公式デジタル文書に含まれるか、又は公式デジタル文書内にないことが可能である。認定SAは、公務員Aの秘密鍵PrK(A)使用する、公務員Aによる公式文書の署名を含む。好ましい実施形態によれば、認定SAは、公式デジタル文書のコンテンツの少なくとも一部のエンコードされたバージョンの署名を含む。公式デジタル文書のコンテンツの少なくとも一部の前述のエンコードされたバージョンは、プロセッシングユニットCPU(A)においてプログラムされた一方向関数によって計算され、前述の公式デジタル文書のコンテンツの前述の少なくとも一部に適用される、公式デジタル文書のハッシュを含むのが好ましい。
【0276】
[276]実施形態によれば、デジタルメッセージMが機関Cによって認証されていることの検証の後に、市民Bは、市民BのスマートフォンDBでプロセッシングユニットCPU(B)を使用して認定SAを検証し、認定SA、すなわち公式デジタル文書のコンテンツの少なくとも一部のハッシュが、デジタルメッセージMから抽出された公開鍵PuK(A)に対応する秘密鍵PrK(A)を使用して署名されているかどうかをチェックするのが好ましく、前述のハッシュが、同じ一方向関数によって計算された、公式デジタル文書又は公式デジタル文書の少なくとも一部のハッシュに対応するということをチェックするのが好ましく、前述の一方向関数は、プロセッシングユニットCPU(B)においてプログラムされる。
【0277】
[277]実施形態によれば、スマートフォンDBは、公式デジタル文書のハッシュが、デジタルメッセージMから抽出された公開鍵PuK(A)に対応する秘密鍵PrK(A)を使用して署名されていることをチェックすることによって、及び前述のハッシュが、一方向関数によって計算された公式デジタル文書のハッシュに対応することをチェックすることによって、プロセッシングユニットCPU(B)を使用して認定SAをチェックし、前述の一方向関数は、プロセッシングユニットCPU(B)においてプログラムされ、プロセッシングユニットCPU(A)においてプログラムされた一方向関数と同一である。
【0278】
[278]実施形態によれば、前述の一方向関数は、コントローラCによってデバイスDAに、及びデバイスDBに送信されている。
【0279】
[279]実施形態によれば、通信モジュールCM(A)は、通信ネットワークCNを使用して前述の認定SAを通信モジュールCM(B)に送信し、インターネット通信ネットワークを使用するのが好ましい。
【0280】
[280]実施形態によれば、認定SAは、インターネットを介して、通信モジュールCM(A)から通信モジュールCM(B)に送信される。
【0281】
[281]実施形態によれば、認定SAはデータ列の形態である。
【0282】
[282]例によれば、この認定SAは、グラフィカルデータブロックGDB(A2)の光学読み取り可能な表現の形態でエンコードされることが可能であり、前述のグラフィカルデータブロックGDB(A2)は、例えばQRコードQRC(A2)などの、2Dバーコードを含むことができるのが有利である。実施形態によれば、そのようなグラフィカルデータブロックGDB(A2)は、デジタルマークDM(A2)とも呼ばれ得る。
【0283】
[283]好ましい実施形態によれば、認定SAは、例えばQRコードなどの、機械可読の形態である。
【0284】
[284]実施形態によれば、市民Bは、スマートフォンDBを使用して、公式デジタル文書に関連付けられた前述のQRコードQRC(A2)を光学的に読み取ることができる。次に、市民Bは、スマートフォンDBで光学式読み取り装置モジュールOR(B)を使用して、認定SAを前述のQRコードQRC(A2)から抽出する。通信モジュールCM(B)は、グラフィカルデータブロックGDBから、例えば前述のQRコードQRC(A2)からの前述の認定SAなどのデータを抽出することができるのが好ましい。
【0285】
[285]実施形態によれば、市民BのスマートフォンDBの通信モジュールCM(B)は、前述の認定SAを抽出するために、光学式読み取り装置モジュールOR(B)を使用してこのQRコードQRC(A2)を読み取ってデコードする。
【0286】
[286]実施形態によれば、市民BのスマートフォンDBは、そのような認定SAを読み取り、デコードし、抽出するように構成された特定のソフトウェアを備えることができ、このソフトウェアは、プロセッシングユニットCPU(A)を使用するのが好ましい。市民BのスマートフォンDBの通信モジュールCM(B)によって認定SAが受信されたときに、プロセッシングユニットCPU(B)は、認定SAをチェックし、特に、認定SAが、デジタルメッセージMから抽出された公開鍵PuK(A)に対応する秘密鍵PrK(A)を使用して署名されていること、及び認定SAに含まれている署名されたハッシュが、一方向関数によって計算された公式デジタル文書のハッシュに対応することをチェックする。
【0287】
[287]その後、市民BのスマートフォンDBのプロセッシングユニットCPU(B)は、プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補デジタル署名cx(A)を計算し、検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADSを計算し、プロセッシングユニットCPU(B)は、候補集約デジタル署名cADSがメモリに格納されている集約デジタル署名ADSと一致するかどうかをチェックする。実施形態によれば、前述の集約デジタル署名ADSは、市民Bによって、前述の機関Cから、及び/又はサーバから受信されている。
【0288】
[288]実施形態によれば、市民Bが、前述のデジタルメッセージMを受信するときに、市民BのスマートフォンDBは、通信モジュールCM(B)を使用してサーバに接触し、前述の集約デジタル署名ADSをダウンロードする。
【0289】
[289]実施形態によれば、市民Bが、専用アプリケーションを介するのが好ましい、市民BのスマートフォンDBを使用して前述のQRコードQRC(A)を読み取るときに、市民BのスマートフォンDBは、通信モジュールCM(B)を使用してサーバに接触し、前述の集約デジタル署名ADSをダウンロードする。
【0290】
[290]前述の集約デジタル署名ADSは、市民BのスマートフォンのプロセッシングユニットCPU(B)のメモリに格納されるのが好ましい。
【0291】
[291]実施形態によれば、市民BのスマートフォンDBは、デジタルメッセージMから、公務員Aが動作する権限を有する時間スロットなど、この例では、日付1~日付2の営業時間内などの、他のデータを抽出する。
【0292】
[292]次に、時間が、任務命令において言及された時間スロットに対応する、例えば時間が、正当に日付1~日付2の営業時間内である場合に、認定SAの検証が肯定的であり、候補集約デジタル署名cADSが集約デジタル署名ADSと一致する場合、市民Bは、市民Bのスマートフォンから、市民BのスマートフォンのプロセッシングユニットCPU(B)からであるのが好ましい、公務員Aが、機関Cによって、デジタルメッセージMに含まれている任務命令において言及された動作Opを実行することを実際に許可されていることの指示を受信する。したがって、これは、公式文書が、機関Cによって配信された発行するための命令を有する公務員によって、正当に発行されているということを意味する。
【0293】
[293]本発明の使用事例のこの例によれば、システムは、以下を備えるのが好ましい。
公務員AのコンピュータDA。前述のコンピュータDAは、出生証明書などの公式デジタル文書を、例えばPSD文書の形態で発行することと、デジタルメッセージMを、任意選択でQRコードQRC(A)の形態で、公式デジタル文書に添付することと、公務員Aの秘密鍵PrK(A)を使用して公式デジタル文書に署名することによって認定SAを生成することであって、秘密鍵PrK(A)を使用して、プロセッシングユニットCPU(A)においてプログラムされた専用一方向関数によって計算された公式デジタル文書のフィンガープリント/ハッシュに署名することによるのが好ましい、生成することとを行うように構成され、前述のコンピュータDAは、通信モジュールCM(A)を備える。
市民BのスマートフォンDB。前述のスマートフォンは、特定の公式デジタル文書が、機関Cによって配信された、特定の時間スロットに行われるのが好ましい発行するための命令を有する公務員によって、正当に発行されているということを検証するように構成され、前述のスマートフォンDBは、プロセッシングユニットCPU(B)及び通信モジュールCM(B)を備え、前述の通信モジュールCM(B)は、光学式読み取り装置モジュールOR(B)を備えることができるのが好ましく、ディスプレイモジュールDD(B)を備えることができるのが好ましく、前述の光学式読み取り装置モジュールOR(B)は、データの光学読み取り可能な表現を読み取ってデコードするように構成され、グラフィカルデータブロックGDBの光学読み取り可能な表現を読み取ってデコードするように構成されるのが好ましく、グラフィカルデータブロックGDBからデータを抽出するように構成されるのが有利である。
【0294】
[294]このシステムは、次のような方法で構成される。
市民BのスマートフォンDBが、デジタルメッセージMを含んでいる公式デジタル文書を受信するように構成され、前述のデジタルメッセージMが任務命令を含み、前述の任務命令が、公務員Aによって所有されている公開鍵PuK(A)、公務員Aが、機関Cによって、動作Opを実行することを許可されていることを示す許可データAD(A)、検証鍵VK(A)、この動作Opが実行され得る時間スロットなどを含む。
プロセッシングユニットCPU(B)が、デジタルメッセージMが機関Cによって認証されていることを検証する(10b)ように構成されるのが好ましい。
プロセッシングユニットCPU(B)が、公開鍵PuK(A)、許可データAD(A)、動作Op、検証鍵VK(A)、この動作Opが実行され得る時間スロットなどの、デジタルメッセージMに含まれているデータを抽出する(201、202、204)ように構成され、この抽出が、デジタルメッセージMが機関Cによって認証されているという肯定的な検証の場合にのみ行われるのが好ましい。
通信モジュールCM(B)は、公務員Aから、公式デジタル文書に添付されるのが好ましい認定SAを受信するように構成され、前述の認定SAは、公式デジタル文書の署名300aに対応し、秘密鍵PrK(A)を使用する、プロセッシングユニットCPU(A)による、プロセッシングユニットCPU(A)においてプログラムされた一方向関数を使用して計算された公式デジタル文書のコンテンツの少なくとも一部のハッシュの署名に対応するのが好ましい。
プロセッシングユニットCPU(B)が、認定SAを検証する(400a)ように構成され、前述の秘密鍵PrK(A)に対応する公開鍵PuK(A)を使用して検証するのが好ましく、前述の公開鍵PuK(A)をデジタルメッセージMから抽出した(202)後に検証するのが有利であり、プロセッシングユニットCPU(B)においてプログラムされた前述の一方向関数使用して前述のハッシュを検証するのが好ましい。
プロセッシングユニットCPU(B)が、
プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補デジタル署名cx(A)を計算することと(203)、
検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADSを計算することと(205)を行うように構成される。
プロセッシングユニットCPU(B)が、候補集約デジタル署名cADSがメモリに格納された(206)集約デジタル署名ADSと一致するかどうかをチェックする(207)ように構成され、認定SAの肯定的な検証及び集約デジタル署名ADSとの候補集約デジタル署名cADSの肯定的な一致の場合にのみ、プロセッシングユニットCPU(B)が、公務員Aが機関Cによって動作Opを実行する(500a)ことを実際に許可されているという指示を市民Bに送信する(500)ように構成される。
【0295】
[295]このシステムは、市民Bが、従来技術の解決策よりも高い確実性を伴って、デジタルメッセージMのデジタルコンテンツの妥当性を確認することを可能にする。さらに、このシステムは、公務員Aが市民Bから遠い場合でも、このデジタルコンテンツが有効であるかどうかをチェックするために、市民Bがこのデジタルコンテンツにリンクされた認証情報、すなわち、任務命令を制御することを可能にする。このシステムは、公務員Aが、認定SA、及びデジタルメッセージM内にあり、コントローラCによって発行された偽造防止デジタルファイルによって認証されるのが好ましい、公務員Aの認証情報だけを使用して公務員A自身を識別することを可能にする。このシステムは、市民Bが、発行された公式文書の妥当性を完全に信頼することを可能にする。
【0296】
[296]本発明の使用事例のこの例によれば、本発明は、実施形態に従って、以下の方法に関連している。
公務員AのコンピュータDA。前述のコンピュータDAは、出生証明書などの公式デジタル文書を、例えばPDF文書の形態で発行することと、デジタルメッセージMを、任意選択でQRコードQRC(A)の形態で、公式デジタル文書に添付することと、公務員Aの秘密鍵PrK(A)を使用して公式デジタル文書に署名することによって認定SAを生成することであって、秘密鍵PrK(A)を使用して、プロセッシングユニットCPU(A)においてプログラムされた専用一方向関数によって計算された公式デジタル文書のフィンガープリント/ハッシュに署名することによるのが好ましい、生成することとを行うように構成され、前述のコンピュータDAは、通信モジュールCM(A)を備える。
市民BのスマートフォンDB。前述のスマートフォンは、特定の公式デジタル文書が、機関Cによって配信された、特定の時間スロットに行われるのが好ましい発行するための命令を有する公務員によって、正当に発行されているということを検証するように構成され、前述のスマートフォンDBは、プロセッシングユニットCPU(B)及び通信モジュールCM(B)を備え、前述の通信モジュールCM(B)は、光学式読み取り装置モジュールOR(B)を備えることができるのが好ましく、ディスプレイモジュールDD(B)を備えることができるのが好ましく、前述の光学式読み取り装置モジュールOR(B)は、データの光学読み取り可能な表現を読み取ってデコードするように構成され、グラフィカルデータブロックGDBの光学読み取り可能な表現を読み取ってデコードするように構成されるのが好ましく、グラフィカルデータブロックGDBからデータを抽出するように構成されるのが有利である。
【0297】
[297]この方法は、
市民BのスマートフォンDBが、デジタルメッセージMを含んでいる公式デジタル文書を受信する(200)ステップであって、前述のデジタルメッセージMが任務命令を含み、前述の任務命令が、公務員Aによって所有されている公開鍵PuK(A)、公務員Aが、機関Cによって、動作Opを実行することを許可されていることを示す許可データAD(A)、検証鍵VK(A)、この動作Opが実行され得る時間スロットなどを含む、ステップ、
プロセッシングユニットCPU(B)が、デジタルメッセージMが裁機関Cよって認証されていることを検証する(10b)のが好ましい、ステップ、
プロセッシングユニットCPU(B)が、公開鍵PuK(A)、許可データAD(A)、動作Op、検証鍵VK(A)、この動作Opが実行され得る時間スロットなどの、デジタルメッセージMに含まれているデータを抽出する(201、202、204)ステップであって、この抽出が、デジタルメッセージMが機関Cによって認証されているという肯定的な検証の場合にのみ行われるのが好ましい、ステップ、
通信モジュールCM(B)は、公務員Aから、公式デジタル文書に添付されるのが好ましい認定SAを受信するステップであって、前述の認定SAが、公式デジタル文書の署名300aに対応し、秘密鍵PrK(A)を使用する、プロセッシングユニットCPU(A)による、プロセッシングユニットCPU(A)においてプログラムされた一方向関数を使用して計算された公式デジタル文書のコンテンツの少なくとも一部のハッシュの署名に対応するのが好ましい、ステップ、
プロセッシングユニットCPU(B)が、認定SAを検証し(400a)、前述の秘密鍵PrK(A)に対応する公開鍵PuK(A)を使用して検証するのが好ましく、前述の公開鍵PuK(A)をデジタルメッセージMから抽出した(202)後に検証するのが有利であり、プロセッシングユニットCPU(B)においてプログラムされた前述の一方向関数使用して前述のハッシュを検証するのが好ましい、ステップ、
プロセッシングユニットCPU(B)が、
デジタルメッセージMに含まれている検証鍵VK(A)を抽出することと(204)、
プロセッシングユニットCPU(B)においてプログラムされた一方向関数によって、許可データAD(A)の候補デジタル署名cx(A)を計算することと(203)、
検証鍵VK(A)及び許可データAD(A)の計算された候補デジタル署名cx(A)から候補集約デジタル署名cADSを計算することと(205)を行うステップ、及び
プロセッシングユニットCPU(B)が、候補集約デジタル署名cADSがメモリに格納された(206)集約デジタル署名ADSと一致するかどうかをチェックし(207)、認定SAの肯定的な検証及び集約デジタル署名ADSとの候補集約デジタル署名cADSの肯定的な一致の場合にのみ、プロセッシングユニットCPU(B)が、公務員Aが機関Cによって動作Opを実行する(500a)ことを実際に許可されているという指示を市民Bに送信する(500)ステップを含む。
【0298】
[298]この方法は、市民Bが、従来技術の解決策よりも高い確実性を伴って、デジタルメッセージMのデジタルコンテンツの妥当性を確認することを可能にする。さらに、この方法は、公務員Aが市民Bから遠い場合でも、このデジタルコンテンツが有効であるかどうかをチェックするために、市民Bがこのデジタルコンテンツにリンクされた認証情報、すなわち、任務命令を制御することを可能にする。この方法は、公務員Aが、認定SA、及びデジタルメッセージM内にあり、コントローラCによって発行された偽造防止デジタルファイルによって認証されるのが好ましい、公務員Aの認証情報だけを使用して公務員A自身を識別することを可能にする。この方法は、市民Bが、発行された公式文書の妥当性を完全に信頼することを可能にする。
【0299】
[299]実施形態によれば、本発明は、任務命令を含んでいる中央データベースにもサーバにも接触することを必要とせずに、動作Opが公務員A及び市民Bによって実行されることを可能にする。実際に、市民B及び公務員Aは、これらが、本発明の実施形態に従う方法の実施中に互いに通信することができる限り、オフライン環境にあることができ、コントローラBが、例えば、コントローラCから、又はサーバから前にダウンロードされた集約デジタル署名ADSを含んでいる限り、オフライン環境にあることができるのが好ましい。公務員AへのデジタルメッセージMの送信、及び市民Bへの公式文書の送信は、保護されていないチャネルを介して実現され得るのが有利である。
【0300】
[300]実施形態によれば、本発明は、本発明に従って以前のシステムを備えている行政環境における、本発明に従う方法の実装に関連している。
【0301】
偽造防止デジタルファイル
[301]前述のように、好ましい実施形態によれば、コントローラCは、デジタルメッセージMを偽造防止デジタルファイルの形態で発行することができ、コントローラBが、提示されたデジタルメッセージMの妥当性を完全に信頼することを可能にする。
【0302】
[302]前述のデジタルメッセージMを偽造防止デジタルファイルの形態で生成するために、複数の方法が使用され得る。
【0303】
[303]好ましい実施形態によれば、本発明は、要素デジタル署名の木を使用して複数の要素及び各関連するデジタルデータを保護する方法を使用する。これらの要素は、許可データAD、すなわち、例えば任務命令などの、複数の種類の要素であることができる。各関連するデジタルデータは、例えば、任務命令の詳細、コントローラの識別子、公開鍵PuK、動作の詳細などの、複数の種類のデータを含むことができ、要素のうちの少なくとも1つが任務命令であるのが好ましい。
【0304】
[304]図7は、8つの要素A、…、Aのバッチを示しており、要素デジタル署名の木を用いて要素A、…、A及び各関連するデジタルデータD、…、Dを保護することによって、デジタルメッセージMを偽造防止デジタルファイルの形態で生成する前述の方法を示している。保護された要素は、デジタルメッセージMを構成することができる。これらの要素は、例えば、1つ又は複数の許可データAD、すなわち任務命令を含むことができる。実施形態によれば、これらの要素のうちの1つは、任務命令を含むことができ、前述の要素は、保護されている場合に、前述のデジタルメッセージMの少なくとも一部を形成することができる。デジタル署名に関連付けられた木はよく知られており(2分ハッシュ木、n変数ハッシュ木、又はマークル木)、これらの木は、一般に、ベースノード又は葉ノードを含み、ベースノード又は葉ノードは、葉ノードの特定のグループ化に従って葉ノードに関連付けられたデジタル署名の連結にデジタル署名することによって、次の(中間)レベルのノードを構築するために使用される。2分木の場合、第1の中間レベルのノードに関連付けられたデジタル署名は、2つの連続する葉ノードに関連付けられたデジタル署名の連結に(例えば、一方向ハッシュ関数H又は一方向楕円曲線関数などを使用して)デジタル署名することによって、それぞれ計算される。n変数木の場合、n個の連続する葉ノードの値の連結によって、第1の中間レベルのノードの値が取得される。特定の葉ノードに関して連続するノードの対によって、他の連続する葉ノードに関してノードの三つ組によってなど、葉ノードの連結が実行され得るため、木は、さらに複雑な構造(混合木)を有してもよい。
【0305】
[305]簡単にするために、8つの葉ノードを含む単なる2分木が図7に示されており、木の8つの葉ノードa(1,1)、…、a(1,8)の各値は、要素デジタル署名x=H(D)、…、x=H(D)にそれぞれ対応する。すべての葉ノードの第1のインデックス、すなわち「1」の値は、木の第1のレベル(又はベースレベル)を示し、1~8の連続している第2のインデックスは、木の(葉)ノードの順序付けを示す。次のレベルの(非葉)ノード、すなわちレベル2の4つのノードa(2,1)、a(2,2)、a(2,3)、及びa(2,4)の値は、ここでハッシュ関数を用いて、葉ノードの対、すなわち、木内の次のレベルのノードの子ノードの対の値の連結(演算子「+」によって記号的に表される)にデジタル署名することによって取得される。次のレベルのノードの値を取得するための子ノードのこのグループ化は、木連結順序付けを定義する。表記を簡略化するために、ノード記号a(i,j)を使用して、関連付けられた値(すなわち、関連付けられたデジタル署名)も表す。ここで、木は、葉ノードレベルの上の2つの中間レベルのみ、及び最上位でのルートノードを含む。ルートノードレベルは、実際には木の最後の非葉ノードレベルである。したがって、次の中間レベルの4つの非葉ノードの値は、次のとおりである。
a(2,1)=H(a(1,1)+a(1,2))、すなわちa(2,1)=H(H(D1)+H(H(D2))(a(1,1)及びa(1,2)がノードa(2,1)の子ノードであるため)
a(2,2)=H(a(1,3)+a(1,4))
a(2,3)=H(a(1,5)+a(1,6))
a(2,4)=H(a(1,7)+a(1,8))
次の、最後から2番目のノードレベル(ここでは、レベル3)の場合、次の2つのノード値が存在する。
a(3,1)=H(a(2,1)+a(2,2))
a(3,2)=H(a(2,3)+a(2,4))
【0306】
[306]非葉ノードごとに異なる木連結順序付けを選択することが可能であるということに注意する。例えば、a(2,4)=H(a(1,7)+a(1,8))を含む代わりに、異なる値ノード値を与えるa(2,4)=H(a(1,8)+a(1,7))を定義することができる。
【0307】
[307]最後に、木のルートノードRの値、又は基準ルートデジタル署名(又は前に説明された集約デジタル署名ADSとも呼ばれる)が、R=H(a(3,1)+a(3,2))のように取得される。
【0308】
[308]木に含まれる連結の段階的接続に起因して、ノードにおいて(特に、葉ノードにおいて)デジタルデータのいずれかのビットが変更された場合、ルート値を取り出すのは事実上不可能である。さらに、一部の特定の要素がバッチに含まれる場合(それらの要素のデジタルデータは、木の葉ノードのデジタル署名を生成したシステムのみに知られており、すなわち、コントローラCのみに知られている)、偽造者は、バッチのすべての要素のデジタルデータを知っている場合でも、ルートデジタル署名を取り出すことができない。
【0309】
[309]本発明によれば、要素のバッチの基準ルートデジタル署名R、すなわち集約デジタル署名ADSは、変更不可能にされ、したがって、要素の信頼性、すなわち、任務命令の許可データAD(又は関連するデータ)をチェックする必要があるユーザによってアクセスできる(パブリックな)媒体で公開されるか、又はコントローラによってアクセスできる検索可能なルートデータベースに格納されるか、又は好ましいモードでは、ブロックチェーンに格納されることによって偽造を防ぎ、或いはコントローラによってアクセスできるブロックチェーンによって保護されたデータベースに格納されることによって偽造を防ぐのが好ましい。その後、コントローラは、これらの使用可能なソースから取得された基準値Rを格納してもよい。
【0310】
[310]次に、バッチの要素Aごとに、関連する木の対応する要素の検証鍵VK(又は検証経路)が、要素のデジタル署名に対応する葉ノード以外の、木内の同じ親ノードを有する他のすべての葉ノードの、及び木内の連続的に各次のレベルでの、先行するレベルで考慮された前の同じ親ノード以外の、木内の同じ親ノードを有するすべての非葉ノードの、葉ノードレベルから最後から2番目のノードレベルまでの、各デジタル署名のシーケンスとして計算される。
【0311】
[311]実施形態によれば、要素Aのうちの少なくとも1つは、任務命令、すなわち許可データADを含み、前述の許可データADは、デバイスDAのコントローラAが、コントローラCによって、前述のデジタルメッセージMを受信するデバイスのコントローラ、例えば、コントローラBを使用して動作Opを実行することを許可されていることを示す。
【0312】
[312]要素Aのうちの少なくとも1つの関連するデジタルデータDは、デバイスDAのコントローラAが、コントローラCによって、前述のデジタルメッセージMを受信するデバイスのコントローラ、例えばコントローラBを使用して動作Opを実行することを許可されていることを示す許可データADを含むのが好ましい。
【0313】
[313]説明されるように、本発明は、コントローラCが、以下を含む偽造防止ファイルの形態でデジタルメッセージMを発行することを可能にする。
前述の許可データAD、すなわち要素A
許可データAD、すなわち要素Aに関連する検証鍵VK
【0314】
[314]前述の検証鍵VKは、許可データADと共に、例えば、コントローラBのデバイスDBのプロセッシングユニットCPUのメモリに格納され得る集約デジタル署名ADSを取り出すことを可能にするのが有利である。
【0315】
[315]実施形態によれば、要素Aのバッチの各要素Aは、許可データADに対応することができる。実際に、異なるコントローラに関する複数のデジタルメッセージM、したがって異なる任務命令を発行するコントローラCは、複数の許可データADを使用してこの木を作成することができ、任意選択でコントローラCは、要素のうちの少なくとも1つが許可データADに関連している限り、任意の種類のデータを使用することができる。
【0316】
[316]図7の例では、バッチの8つの要素A、…、Aにそれぞれ対応する8つの検証鍵VK、…、VK及び対応する8つの葉ノードa(1,1)、…、a(1,8)が存在する。
(1)要素Aに対応する葉ノードa(1,1)=x=H(D)の場合、検証鍵はVK={a(1,2),a(2,2),a(3,2)}であり、この検証鍵から、(木内のノード順序付け及び木連結順序付けに従って実行される)以下のステップによって、ルートデジタル署名値Rが取り出され得る。
(a)葉ノードa(1,1)=x及びVKの内の葉ノードa(1,2)=x(a(1,2)は、要素デジタル署名xに対応する葉ノード、すなわちノードa(1,1)以外の、同じ親ノード、すなわちノードa(2,1)を有する他の葉ノードである)から、親ノード値a(2,1)が、a(2,1)=H(a(1,1)+a(1,2))(すなわち、a(2,1)=H(x+x))によって取得される。
(b)取得されたa(2,1)及びVK内の次のノード値、すなわち先行するレベルで考慮された前の同じ親ノード、すなわちノードa(2,1)以外の、木内の同じ親ノード、すなわちノードa(3,1)を有する非葉ノードである次の非葉ノードレベルのa(2,2)から、親ノード値a(3,1)が、a(3,1)=H(a(2,1)+a(2,2))によって取得される。
(c)取得されたa(3,1)及びVK内の次のノード値、すなわち先行するレベルで考慮された前の同じ親ノード、すなわちノードa(3,1)以外の、木内の同じ親ノード、すなわちルートノードを有する非葉ノードである最後から2番目のノードレベルのa(3,2)から、ルートノード値Rが、R=H(a(3,1)+a(3,2))によって取得される。
この例では、木がルートノードレベルの下に3つのレベルを含んでおり、したがって検証鍵が3つのノード値を含んでいるため、3つのステップ(a)、(b)、及び(c)が存在する。したがって、木のルートノードの値は、R=H(H(H(a(1,1)+a(1,2))+a(2,2))+a(3,2))のように取得され得る。
【0317】
(2)要素Aに対応する葉ノードa(1,2)=x=H(D)の場合、検証鍵はVK={a(1,1),a(2,2),a(3,2)}であり、この検証鍵から、(木内のノード順序付け及び木連結順序付けに従って実行される)以下のステップによって、ルート値Rが取り出され得る。
(a)a(1,2)=x及びVKの内のa(1,1)=x(a(1,1)は、要素デジタル署名xに対応する葉ノード、すなわちノードa(1,2)以外の、同じ親ノード、すなわちノードa(2,1)を有する他の葉ノードである)から、親ノード値a(2,1)が、a(2,1)=H(a(1,1)+a(1,2))によって取得される。
(b)取得されたa(2,1)及びVK内の次のノード値、すなわち先行するレベルで考慮された前の同じ親ノード、すなわちノードa(2,1)以外の、木内の同じ親ノード、すなわちaノード(3,1)を有する非葉ノードである次の非葉ノードレベルのa(2,2)から、親ノード値a(3,1)が、a(3,1)=H(a(2,1)+a(2,2))によって取得される。
(c)取得されたa(3,1)及びVK内の次のノード値、すなわち先行するレベルで考慮された前の同じ親ノード、すなわちノードa(3,1)以外の、木内の同じ親ノード、すなわちルートノードを有する非葉ノードである最後から2番目のノードレベルのa(3,2)から、ルートノード値Rが、R=H(a(3,1)+a(3,2))によって取得される。
したがって、木のルートノードの値は、R=H(H(H(a(1,1)+a(1,2))+a(2,2))+a(3,2))のように取得され得る。
【0318】
(3)要素Aに対応する葉ノードa(1,3)=x=H(D)の場合、検証鍵はVK={a(1,4),a(2,1),a(3,2)}であり、この検証鍵から、(木内のノード順序付け及び木連結順序付けに従って実行される)以下のステップによって、ルート値Rが取り出され得る。
(a)a(1,3)=x及びVKの内のa(1,4)=x(a(1,4)は、要素デジタル署名xに対応する葉ノード、すなわちノードa(1,3)以外の、同じ親ノード、すなわちノードa(2,2)を有する他の葉ノードである)から、親ノード値a(2,2)が、a(2,2)=H(a(1,3)+a(1,4))によって取得される。
(b)取得されたa(2,2)及びVK内の次のノード値、すなわち先行するレベルで考慮された前の同じ親ノード、すなわちノードa(2,2)以外の、木内の同じ親ノード、すなわちa(3,1)を有する非葉ノードである次の非葉ノードレベルのa(2,1)から、親ノード値a(3,1)が、a(3,1)=H(a(2,1)+a(2,2))によって取得される。
(c)取得されたa(3,1)及びVK内の次のノード値、すなわち先行するレベルで考慮された前の同じ親ノード、すなわちノードa(3,1)以外の、木内の同じ親ノード、すなわちルートノードを有する非葉ノードである最後から2番目のノードレベルのa(3,2)から、ルートノード値Rが、R=H(a(3,1)+a(3,2))によって取得される。
したがって、木のルートノードの値は、R=H(H(a(2,1)+H(a(1,3)+a(1,4)))+a(3,2))のように取得され得る。
【0319】
(4)要素Aに対応する葉ノードa(1,4)=x=H(D)の場合、検証鍵はVK={a(1,3),a(2,1),a(3,2)}であり、この検証鍵から、(木内のノード順序付け及び木連結順序付けに従って実行される)以下のステップによって、ルート値Rが取り出され得る。
(a)a(1,4)=x及びVK内のa(1,3)=xから、親ノード値a(2,2)が、a(2,2)=H(a(1,3)+a(1,4))によって取得される。
(b)取得されたa(2,2)及びVK内の次のノード値、すなわち次の非葉ノードレベルのa(2,1)から、親ノード値a(3,1)が、a(3,1)=H(a(2,1)+a(2,2))によって取得される。
(c)取得されたa(3,1)及びVK内の次のノード値、すなわち最後から2番目のノードレベルのa(3,2)から、ルートノード値Rが、R=H(a(3,1)+a(3,2))によって取得される。
したがって、木のルートノードの値は、R=H(H(a(2,1)+H(a(1,3)+a(1,4)))+a(3,2))のように取得され得る。
【0320】
(5)要素Aに対応するノードa(1,5)=x=H(D)の場合、検証鍵はVK={a(1,6),a(2,4),a(3,1)}であり、この検証鍵から、(木内のノード順序付け及び木連結順序付けに従って実行される)以下のステップによって、ルート値Rが取り出され得る。
(a)a(1,5)=x及びVK内のa(1,6)=xから、親ノード値a(2,3)が、a(2,3)=H(a(1,5)+a(1,6))によって取得される。
(b)取得されたa(2,3)及びVK内の次のノード値、すなわち次の非葉ノードレベルのa(2,4)から、親ノード値a(3,2)が、a(3,2)=H(a(2,3)+a(2,4))によって取得される。
(c)取得されたa(3,2)及びVK内の次のノード値、すなわち最後から2番目のノードレベルのa(3,1)から、ルートノード値Rが、R=H(a(3,1)+a(3,2))によって取得される。
したがって、木のルートノードの値は、R=H(a(3,1)+H(H(a(1,5)+a(1,6))+a(2,4)))のように取得され得る。
【0321】
(6)要素Aに対応するノードa(1,6)=x=H(D)の場合、検証鍵はk={a(1,5),a(2,4),a(3,1)}であり、この検証鍵から、(木内のノード順序付け及び木連結順序付けに従って実行される)以下のステップによって、ルート値Rが取り出され得る。
(a)a(1,6)=x及びVK内のa(1,5)=xから、親ノード値a(2,3)が、a(2,3)=H(a(1,5)+a(1,6))によって取得される。
(b)取得されたa(2,3)及びVK内の次のノード値、すなわち次の非葉ノードレベルのa(2,4)から、親ノード値a(3,2)が、a(3,2)=H(a(2,3)+a(2,4))によって取得される。
(c)取得されたa(3,2)及びVK内の次のノード値、すなわち最後から2番目のノードレベルのa(3,1)から、ルートノード値Rが、R=H(a(3,1)+a(3,2))によって取得される。
したがって、木のルートノードの値は、R=H(a(3,1)+H(H(a(1,5)+a(1,6))+a(2,4)))のように取得され得る。
【0322】
(7)要素Aに対応するノードa(1,7)=x=H(D)の場合、検証鍵はk={a(1,8),a(2,8),a(3,1)}であり、この検証鍵から、(木内のノード順序付け及び木連結順序付けに従って実行される)以下のステップによって、ルート値Rが取り出され得る。
(a)a(1,7)=x及びVK内のa(1,8)=xから、親ノード値a(2,4)が、a(2,4)=H(a(1,7)+a(1,8))によって取得される。
(b)取得されたa(2,4)及びVK内の次のノード値、すなわち次の非葉ノードレベルのa(2,3)から、親ノード値a(3,2)が、a(3,2)=H(a(2,3)+a(2,4))によって取得される。
(c)取得されたa(3,2)及びVK内の次のノード値、すなわち最後から2番目のノードレベルのa(3,1)から、ルートノード値Rが、R=H(a(3,1)+a(3,2))によって取得される。
したがって、木のルートノードの値は、R=H(a(3,1)+H(a(2,3)+H(a(1,7)+a(1,8))))のように取得され得る。
【0323】
(8)要素Aに対応するノードa(1,8)=x=H(D)の場合、検証鍵はk={a(1,7),a(2,3),a(3,1)}であり、この検証鍵から、(木内のノード順序付け及び木連結順序付けに従って実行される)以下のステップによって、ルート値Rが取り出され得る。
(a)a(1,8)=x及びVK内のa(1,7)=xから、親ノード値a(2,4)が、a(2,4)=H(a(1,7)+a(1,8))によって取得される。
(b)取得されたa(2,4)及びVK内の次のノード値、すなわち次の非葉ノードレベルのa(2,3)から、親ノード値a(3,2)が、a(3,2)=H(a(2,3)+a(2,4))によって取得される。
(c)取得されたa(3,2)及びVK内の次のノード値、すなわち最後から2番目のノードレベルのa(3,1)から、ルートノード値Rが、R=H(a(3,1)+a(3,2))によって取得される。
したがって、木のルートノードの値は、R=H(a(3,1)+H(a(2,3)+H(a(1,7)+a(1,8))))のように取得され得る。
【0324】
[317]一般に、(候補)ルートノード値、すなわち候補集約デジタル署名cADSを取り出すために、特定の葉ノード値、及び前述の葉ノードに関連付けられた検証鍵内で指定されたノード値から開始することによって、
検証鍵VK内のノード値のシーケンスから、特定の葉ノードのノード値以外の、同じ親ノードを有する木の他のすべての葉ノードのノード値(すなわち、デジタル署名値)を抽出し、特定のノード値、及び前述の他のすべての葉ノードの抽出されたノード値の連結のデジタル署名を、それぞれ木内のノードの順序付け及び木連結順序付けに従って計算し、このようにして、特定の葉ノードの前述の同じ親ノードのデジタル署名を取得するステップ、
木内のそれぞれ次のレベルで、最後から2番目のノードレベルまで連続的に、
検証鍵VKのノード値のシーケンスから、先行するステップで考慮された前の同じ親ノードのノード値以外の、同じ親ノードを有する木の他のすべての非葉ノードのノード値を抽出するステップ、及び
木内のノードの順序付け及び木連結順序付けに従って、前述の各他のすべての非葉ノードのノード値及び前述の前の同じ親ノードの取得されたデジタル署名の連結のデジタル署名を計算し、このようにして、前述の前の同じ親ノードの前述の同じ親ノードのノード値を取得するステップ、並びに
木内のノードの順序付け及び木連結順序付けに従って、木の最後から2番目のノードレベルに対応する非葉ノードの取得されたノード値の連結のデジタル署名を計算し、このようにして、木のルートノードのルートデジタル署名を取得するステップが実行される。
【0325】
[318]上の例から明確であるように、集約デジタル署名ADSとも呼ばれるルートノード値Rは、最終的に、対応する検証鍵内で指定されたノード値のみとの、この葉ノード値の連結のデジタル署名によって、任意の特定の葉ノード値から取り出され得る。したがって、ルートノード値Rを取り出すために必要な検証情報Vにおけるデータの量は、基準ルートノード値Rを(すなわち、木の中間レベルのすべての非葉ノード値を計算することによって葉ノード値のみに基づいて)計算するために必要なデータの量より明らかにはるかに少なく、これは、(2次元バーコードのような)セキュリティマーキングで使用可能な制限されたサイズの制約の点から見て、本発明の利点である。実施形態によれば、この検証情報Vは、デジタルデータD、すなわち許可データAD、すなわち任務命令のデータ、及び対応する検証鍵VKを含む(V=(D,VK))。
【0326】
[319]本発明によれば、要素のバッチのうちの特定の要素Aに対応するデジタルメッセージMは、光学式読み取り装置モジュールORによるなどの、従来の読み取り装置によって容易に読み取られ得る2次元機械可読バーコードのデータコンテンツと互換性があるレベルで、この検証情報Vのデジタル表現のビットサイズを維持しながら、要素のデータDと本物の要素の特定のバッチへの要素Aの所属の間の固有の変更不可能な偽造防止リンクを提供することによって、前述の特定の要素Aに含まれている許可データADの適合性に関する関連するデータの適合性の、デジタルメッセージMの信頼性のオンライン及びオフラインの両方のチェック動作を可能にする検証情報Vを含む。
【0327】
[320]これらのチェック動作は、要素デジタルデータD、すなわち許可データAD及び対応する検証鍵VKを、例えばQRコードQRC(A)などの機械可読の形態で最初に読み取り、次に、一方向性関数を用いて、読み取られた要素デジタルデータDの候補デジタル署名cxをcx=H(D)として計算し、上で説明されたように、検証鍵VKに示されたノード値のシーケンスに従って、x及び木のノード値の連結のデジタル署名から候補集約デジタル署名cADSとも呼ばれる候補ルートデジタル署名cRを計算することによって、バッチ値、又はバッチに関連付けられた木の基準ルートデジタル署名R、すなわち集約デジタル署名ADSを取り出すことを含む。データの暗号化、及びしたがって暗号鍵/復号鍵の管理を必要としない(特に、暗号鍵がセキュリティマーキングに含まれない)という利点を有するこの保護方式は、公開暗号鍵と秘密復号鍵を用いる(例えば、RSA「Rivest-Shamir-Adleman」システムのような)データの従来の暗号化と比較して、暗号解読攻撃に対してはるかに堅牢である。
【0328】
[321]その結果、本発明に従ってセキュリティマーキングにおいて表されるデジタルデータのサイズは、コンパクトになり、暗号解読攻撃に対する非常に高レベルの堅牢性をもたらしながら、従来の2Dバーコード(例えば、QRコード)、及びしたがって従来のバーコード読み取り装置(又はカメラを含んでいる単なるプログラムされたスマートフォン)を使用することを可能にする。さらに、この機械可読の形態は、デジタルメッセージMの信頼性及び許可データADの適合性に関するデータの適合性の(コード読み取り装置と通信するサーバを介する)オンラインのチェック及び(プログラムされたコード読み取り装置を介する)オフラインのチェックの両方と互換性がある。また、本発明によれば、デジタルデータDiの表現及び鍵データVKの表現は、異なってもよく、データ連結方式及び/又は一方向関数は、木のノードレベルに依存してもよく、それによって、暗号解読攻撃に関する堅牢性の追加のレベルをもたらす。
【0329】
[322]機械可読の形態に含まれるデジタルデータ(すなわち、検証情報V)のサイズをさらに減らすために、バッチの各元の要素Aの要素デジタルデータDが、バッチのすべての要素に共通している特定のフィールド間に分散されている場合、これらのフィールドに関連するデジタルデータは、各要素デジタルデータDに含まれず、要素のバッチに関連付けられた分離したフィールドデータブロックFDB(fields data block)にクラスタ化され、
次に、対応するデジタルデータDi及びフィールドデータブロックFDBのデジタルデータの連結の一方向関数H、すなわちxi=H(D+FDB)を使用して、バッチの要素Aのデジタル署名xiが計算され、
基準ルートデジタル署名R、すなわち集約デジタル署名ADSが、関連するフィールドデータブロックFDBと共に(これによってフィールドデータブロックも変更不可能にされる)、コントローラによる使用を可能にされるのが好ましい。
【0330】
[323]本発明の変形では、フィールドデータブロックFDBは、基準ルートデジタル署名、すなわち集約デジタル署名ADSとは無関係に、コントローラによるアクセスを可能にされる。
【0331】
[324]例えば、文書に印刷されるか、物理的表面に適用されるか、又はディスプレイモジュールDDによって表示される方法で情報をエンコードするための、多くの既知の方法が存在する。任意のそのような方法が、本発明の任意の実施形態の実装において使用されてもよい。光学機械可読の形態の1つの一般的な形態は、前に説明されたように、周知のQRコードである。
【0332】
[325]よく知られているように、特定の面積に関して、QRコードがエンコードすることができるデータが多いほど、QRコードが含むモジュール密度(おおよそ、黒色/白色の「正方形」の密度)が高くなり、印刷及び読み取りのためにQRコードが必要とする解像度が大きくなる。密度(正方形内のモジュールの数)に加えて、QRコードは、QRコードが含むエラー訂正のレベルに応じても、大まかに分類される。現在、4つの異なる標準的な「レベル」、L、M、Q、及びHが、それぞれ、QRコード画像が耐えて回復することができる「損傷」、すなわちデータ損失の程度を表す。レベルL、M、Q、及びHはそれぞれ、おおよそ7%、15%、25%、及び30%の損傷に耐えることができる。
【0333】
[326]次の表は、異なるQRコードのバージョンの少なくともおおよその値を示す。
【表1】
【0334】
[327]しかし、一部のモジュールがスキャンターゲット、マスクパターン、及びエラー訂正モジュールに使用されるため、データ「負荷」をエンコードするために、すべてのビットが使用されないことがある。したがって、QRコードがエンコードできる情報の量と、検証情報Vに含まれてエンコードされなければならない情報の量との間にはトレードオフが存在する。
【0335】
[328]したがって、エンコーディング容量が制限されている、QRコードなどの光学機械可読の形態の選択された種類に関して、適切な一方向関数Hも選択されるべきである。必要とされるビットに関して大き過ぎる出力を有する関数は、使用することが全く不可能であり、小さすぎる範囲を有する関数は、十分に安全でないことがある。さらに、多くの応用では、拡張性が問題になることがある。例えば、一部のデータセキュリティ方式は、バッチのメンバーの数が増えるにつれて増大する署名を含み、これが、光学機械可読の形態がエンコードできるビット数の観点から、バッチのサイズを許されないほど制限する可能性がある。そのため、本発明の好ましい実施形態によれば、選択される関数の種類は、SHA-2ファミリーの一方向ハッシュ関数である。
【0336】
[329]バッチの要素のデジタルデータDにデジタル署名する計算を実行するため、異なる要素の検証鍵を決定するため、及び対応する木の基準ルートデジタル署名を計算するために提供されたコードを実行するために、コントローラCによって計算モジュールが備えられて制御されるのが好ましい。
【0337】
[330]実施形態によれば、コントローラによって制御されるデバイスのプロセッシングユニットは、バッチの要素の要素デジタルデータにデジタル署名する計算を実行するため、異なる要素の検証鍵を決定するため、及び対応する木の基準ルートデジタル署名を計算するために提供されたコードを実行するように構成される。
【0338】
[331]コントローラCは、特定の要素(複数可)AのデジタルデータDに対応する(事前にプログラムされた)値を入力するための適切なモジュールを備えて制御してもよい。例えば、コントローラCのデバイスのプロセッシングユニットが本発明を実行すること、及び前述の木に基づいて前述のデジタルメッセージを発行することを可能にするために、要素のバッチは、許可データADを含んでいる1つの要素、及び複数の特定の要素を含むことができる。
【0339】
[332]例えば、要素がどこで作成されても、そのサイト(又は複数のサイト)からコントローラCに、ネットワークを経由して生の要素データDを送信する必要があることを、それが問題になる場合に防ぐために、要素に関連するハッシュ計算を外部で(例えば、接続された遠いサーバで)実行することが可能である。
【0340】
[333]例えば任務命令、すなわち許可データADなどの要素Aごとに、対応する検証情報Vがまとめられ、例えば光学機械可読の形態の何らかの形態で、エンコードされ(表され)、その後、印刷されるか、又は物理的に適用されるか、又はデジタル的に表示されるか、或いは他の方法で各デジタルメッセージM又は文書若しくはデジタル文書に関連付けられる。例えば、少なくとも検証情報Vを含んでいるデジタルメッセージMは、任務命令又は公式デジタル文書に添付されるか、又は文書に直接印刷される、光学的又は磁気的に読み取り可能なラベル、RFIDタグなどにエンコードされ得る。
【0341】
[334]任意の特定の要素Aに関して、コントローラCによって、対応する検証情報V=(D,k)が、内部で要素Aに関連付けられてよい。検証情報は、一般に、要素のバッチの任意の要素Aに関して、対応するデジタルデータD及び対応する検証鍵VK、すなわちV=(D,VK)を少なくとも含む。前述したように、デジタルデータDは、任務命令の詳細を含むことができる。
【0342】
[335]追加の要素データが、要素にさらに関連付けられてもよく、例えば、バッチ値、すなわち基準ルートデジタル署名R、或いは特定のコントローラの公開鍵PuK、動作Opを実行するための時間スロット、商品シリアル番号、バッチID、日付/時間情報、製品名、他のものを指し示すURL、特定のコントローラ(コントローラの、又はコントローラのラベルの画像など)若しくはバッチ又は供給業者/製造業者のいずれかに関連付けられたオンライン情報、検証のために呼び出すことができる電話番号などの、コントローラCが含むことを選択する任意の他の情報を含んでもよい。追加の要素データは、(情報データベースインターフェイスを介して)コントローラよってアクセスできる検索可能な情報データベースに格納されてもよい。
【0343】
[336]要素Aの検証鍵VKが計算されて、対応する要素デジタルデータDと共に、デジタルメッセージMに対応する光学機械可読の形態で含まれた(すなわち、エンコーディング又は任意の選択されたデータ表現によって含まれた)後に、結果として得られたデジタルメッセージM及び関連するデータが、偽造及び改ざんに対して実際に保護される。
【0344】
[337]次に、要素Aに関連する、QRコードの形態でのデジタルメッセージMの受信者であるコントローラは、デバイスの光学式読み取り装置モジュールORを使用して、デジタルメッセージMの光学機械可読の形態をスキャンし(又は他の方法で読み取り)、要素デジタルデータD及び検証鍵VK(及び前に説明されたように光学機械可読の形態にエンコードされていることが可能な任意の他の情報)を抽出してもよい。デジタルメッセージMの検証、及びしたがって要素Aの検証のために、コントローラは、前述のQRコードから検証情報V=(D,VK)を最初に取り出し、このようにして、抽出された要素デジタルデータDからデジタル署名xを計算しなければならず、これを実行するために、コントローラ又は少なくともコントローラのデバイスは、要素デジタル署名を計算するために使用される一方向関数、ここでは一方向関数H()(例えば、SHA-256ハッシュ)を知り、次に、演算x=H(D)を実行して、対応する候補ルートデジタル署名cR、すなわち対応する候補集約デジタル署名cADSを計算するために必要な完全なデータ(x,VK)を取得しなければならない。コントローラは、例えば、一方向関数を、(例えば、秘密鍵/公開鍵の対を使用して)安全に受け取るか、又は要素プロバイダに対して、又は署名及び鍵を作成したどの実体に対してでも、一方向関数を要求すること、或いはコントローラのデバイス、例えば、前に説明されたデバイスDBのプロセッシングユニットCPUにおいて一方向関数がすでにプログラムされていることによって、受け取ってもよい。
【0345】
[338]次に、そのような候補ルートデジタル署名cRを計算するために、コントローラは、計算に使用される(H(a(i,j)+a(i,k)によってノード値を連結するための)データ連結方式の種類をさらに知ることを必要としてもよく、コントローラは、この情報を任意の既知の方法で、安全に(例えば、公開鍵/秘密鍵の対を使用して)受け取るか、又は単に、要素プロバイダに対して、若しくは検証データを作成したどの実体、すなわちコントローラCに対してでも、この情報を要求すること、或いはコントローラのプロセッシングユニットCPUにおいてこの情報がすでにプログラムされていることによって、受け取ってもよい。しかし、連結方式は、実際には、2つのノード値にそれぞれ対応する2つのデジタルデータブロックの終端間の単なる従来の結合に対応してもよく、この場合、特定の方式がコントローラに送信されなければならないということはない。一部の変形では、連結方式は、木内の連結されたデジタルデータブロックのランク又はレベルに固有のデータを含むことができる連結ブロックをさらに挿入してもよく、その結果、暗号解読攻撃をさらにいっそう困難にする。
【0346】
[339]コントローラは、連結方式を知り、次に、上で説明されたように、例えば、木内のノード順序付け及び木連結順序付けに従って実行される、ノードa(1,1)に関連する検証鍵VKで指定されたノードのシーケンス(上の項目1を参照)に従って要素デジタル署名x及びノード値の連結に段階的にデジタル署名することによって、(例えば、適切にプログラムされたデバイスによって)候補ルートデジタル署名cR、すなわち候補集約デジタル署名cADSを計算することができる。ここで、候補ルートデジタル署名cRが、cR=H(H(H(a(1,1)+a(1,2))+a(2,2))+a(3,2))のように取得される(木内のノード順序付けが、レベル及びレベル内のランクの各インデックス(i,j)によって与えられる)。
【0347】
[340]次に、この計算された候補ルートデジタル署名cRは、使用可能な(又は公開された)基準R値に等しくなるべきであり、この値は、コントローラによって前もって取得されていてもよく、及び/又は前述のコントローラのデバイスのプロセッシングユニットCPUのメモリにすでに格納されていてもよく、この値は、コントローラが、任意の既知の方法でコントローラCに対して要求して受信する値であることもできる。候補cR、すなわちcADS、及び使用可能な基準ルートデジタル署名R、すなわちADSが一致する場合、この計算は、デジタルメッセージM内の情報を検証し、任務命令AがコントローラCによって発行されたことを確認する。
【0348】
[341]要素Aに対応するバッチの基準ルートデジタル署名Rにアクセスするためのリンクは、デジタルマークDMに含まれ得る(例えば、Rが対応するウェブサイトで取り出され得る場合は、ウェブアドレス)。
【0349】
[342]一部の実装では、デジタルメッセージMの受信者は、検証情報Vを、デジタルメッセージMから直接「視覚的に」抽出することができてもよい。例えば、検証情報Vは、シリアル番号などのテキスト、又は説明的文章におけるテキスト、又は要素上の他のどこかの、要素自体から人間が読める、何らかの英数字のエンコーディング、或いは要素に添付されるか、又は含まれる何かであってもよい。
【0350】
[343]デジタルメッセージMの受信者には、データを入力するか、又はスマートフォンのカメラを介して光学的にデータを読み取り、その後x=H(D)を計算する、スマートフォンなどのデバイス内の光学式読み取り装置モジュールなどの、適切なソフトウェアが提供されることも可能である。例えば、許可データADに関連する、標準的なQRコードであるデジタルメッセージMに含まれている光学機械可読の形態を使用すると、コントローラは、光学式読み取り装置モジュールORで、デバイ上で稼働する標準的なQRコード読み取り装置アプリケーションを使用してQRコードをスキャンすることによって、デジタルデータD及びVKを簡単に取得することができ、次に、コントローラのデバイス内の検証アプリケーションは、x及びcRを計算し、上で説明されたように、この値を使用可能な基準バッチ値Rと比較することができる。
【0351】
[344]基準ルートデジタル署名R、すなわちADSは、通信モジュールCMを備えているデバイスを用いてコントローラによって(通信リンクを介して)アクセスされ得る検索可能なルートデータベースに格納されるのが好ましい。デジタルメッセージMを検証する必要があるコントローラは、単に、スマートフォンを使用して、データベースのアクセスインターフェイスを介して、ルート要求をデータベースのアドレスに送信することができ、この要求は、対応する基準バッチ値Rを取り出すことを可能にする、デジタルメッセージM(又は計算されたデジタル署名x=H(D))の光学機械可読の形態で読み取られた検証情報Vを含み、アクセスインターフェイスは、基準ルートデジタル署名Rをスマートフォンに返す。データベースは、格納されたルートデジタル署名の不変性を強化するために、ブロックチェーンによって保護されてもよい。
【0352】
[345]実施形態によれば、デジタルメッセージMのコンテンツは、前述のデジタルメッセージMの前述のコンテンツを含んでいる特定の要素の偽造又は改ざんに対して保護する方法を使用して保護され、前述の特定の要素が、複数の要素のバッチに属し、各要素が、それ自身の関連する要素データ及び対応する要素デジタルデータを含み、この方法は、以下のステップを含むことによって特徴付けられる。
バッチの要素ごとに、一方向関数によって対応する要素デジタルデータの関連する要素デジタル署名を計算するステップ、
バッチの元の要素の複数の計算された要素デジタル署名に基づいて、木内の特定のノード順序付けに従って配置されたノードを含む木を形成するステップであって、前述の木が、バッチ内の複数の元の要素に関連付けられた複数の要素デジタル署名にそれぞれ対応する葉ノードから木のルートノードまでのノードレベルを含み、木のすべての非葉ノードが、木連結順序付けに従う子ノードの各デジタル署名の連結の一方向関数を用いるデジタル署名に対応し、ルートノードが、前述の木連結順序付けに従う木内の最後から2番目のノードレベルのノードのデジタル署名の連結の一方向関数を用いる基準ルートデジタル署名、すなわちデジタル署名に対応する、ステップ、
特定の要素の要素デジタル署名に対応する葉ノード以外の、木内の同じ親ノードを有する他のすべての葉ノードの、及び木内の連続的に各次のレベルでの、先行するレベルで考慮された前の同じ親ノード以外の、木内の同じ親ノードを有するすべての非葉ノードの、葉ノードレベルから最後から2番目のノードレベルまでの、各デジタル署名のシーケンスである対応する検証鍵を、特定の要素に関連付けるステップ、
木の基準ルートデジタル署名をコントローラによって使用可能にするステップ、及び
デジタルメッセージMが印刷される場合に、前述のデジタルメッセージMをエンコードし、したがって前述のデジタルデータの表現及び対応する検証鍵を含んでいる光学機械可読の形態を、特定の文書に適用するのが好ましい、ステップ、
以て、偽造又は改ざんに対して保護されたコンテンツを含む、前述の印刷されたデジタルメッセージMを含むマーク付けされた文書を取得するのが好ましい、ステップ。
【0353】
[346]実施形態によれば、木のルートノードの基準ルートデジタル署名は、コントローラによってアクセスできる媒体に公開されるか、又はコントローラによってアクセスできる検索可能なルートデータベースに格納されるか、或いはブロックチェーンに格納されるか、又はコントローラによってアクセスできるブロックチェーンによって保護されたデータベースに格納されるのが好ましい。
【0354】
[347]実施形態によれば、デジタルメッセージMは、印刷又はエンコードされた、コントローラが要素のバッチに対応する木のルートノードの基準ルートデジタル署名にアクセスすることを可能にするのに十分な情報を含んでいる、ルートノードアクセスデータをさらに含むことができ、前述の情報は、コントローラから、デジタルデータ又はデジタルデータのデジタル署名を含んでいる、デジタルメッセージMから、又は別の印刷された光学機械可読の形態から取得された、ルート要求を受信し、対応する木の基準ルートデジタル署名を返送するよう動作可能であるアクセスインターフェイスへのリンクであり、アクセスインターフェイスは、以下のうちの1つへのアクセスをそれぞれ可能にする。
基準ルートデジタル署名が公開される媒体、
基準ルートデジタル署名が格納される検索可能なルートデータベース、及び
ブロックチェーン、又はタイムスタンプが付与された基準ルートデジタル署名が格納される、ブロックチェーンによってそれぞれ保護されたデータベース。
【0355】
[348]実施形態によれば、デジタルメッセージMに関連付けられたデジタルデータに対応する追加のデジタルデータは、コントローラから、デジタルデータ又はデジタルデータのデジタル署名を含んでいる、デジタルメッセージMから、又は別の印刷された光学機械可読の形態から取得された、情報要求を受信し、対応する追加のデジタルデータを返送するよう動作可能である情報データベースインターフェイスを介してコントローラによってアクセスできる検索可能な情報データベースに格納される。
【0356】
[349]したがって、本発明は、受信者が、高い確実性を伴って特定のデジタルコンテンツの妥当性を確認することを可能にする。
図1
図2
図3
図4
図5
図6
図7
図8
【国際調査報告】