JP2021145388A - デジタル署名方法、署名情報検証方法、関連装置及び電子機器 - Google Patents

デジタル署名方法、署名情報検証方法、関連装置及び電子機器 Download PDF

Info

Publication number
JP2021145388A
JP2021145388A JP2021098421A JP2021098421A JP2021145388A JP 2021145388 A JP2021145388 A JP 2021145388A JP 2021098421 A JP2021098421 A JP 2021098421A JP 2021098421 A JP2021098421 A JP 2021098421A JP 2021145388 A JP2021145388 A JP 2021145388A
Authority
JP
Japan
Prior art keywords
tensor
signature information
electronic device
character string
character strings
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2021098421A
Other languages
English (en)
Other versions
JP7164672B2 (ja
Inventor
俣▲コウ▼ 陳
Yu'ao Chen
俣▲コウ▼ 陳
潤堯 段
Runyao Duan
潤堯 段
力京 晋
Lijing Jin
力京 晋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Publication of JP2021145388A publication Critical patent/JP2021145388A/ja
Application granted granted Critical
Publication of JP7164672B2 publication Critical patent/JP7164672B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

【課題】量子計算における情報安全性の分野に関し、デジタル署名の安全性が比較的低いという問題を解決するデジタル署名方法、署名情報検証方法、関連装置、デジタル署名装置、署名情報検証装置、電子機器、記憶媒体及コンピュータプログラムプロダクトを提供する。【解決手段】デジタル署名方法において、送信対象ファイル及び第1電子機器がデジタル署名のために使用する秘密鍵であって、第1可逆行列を含む秘密鍵を取得することと、ランダムに生成された第2可逆行列と第1テンソルとに基づいて、第1テンソルと同型の第2テンソルを生成することと、第2テンソルに基づいて、ハッシュ関数を用いて送信対象ファイルにデジタル署名を行い、第1文字列を得ることと、第1電子機器による送信対象ファイルに対する署名情報を、第1文字列、第1可逆行列及び第2可逆行列に基づいて生成することと、を含む。【選択図】図1

Description

本願は、量子計算の技術分野に関し、特に量子計算における情報安全性の分野に関し、具体的にデジタル署名方法、署名情報検証方法、関連装置及び電子機器に関する。
デジタル署名は、基本的には、公開可能な公開鍵と秘密鍵とを暗号スキームに含む公開鍵暗号であって、2つのユーザが通信を確立することなく暗号解読と身元確認を行うことができる公開鍵暗号の役割を果たす。デジタル署名の目的は、ファイル送信者の身元確認を行うことによって、ファイルの送信者が真実であることを確保することであり、電子商取引やインターネットプロトコルにおいて基礎的な重要性がある。
現在、インターネット通信において、一般的に用いられているデジタル署名スキームは、ディフィ−ヘルマン鍵交換に基づく非対称暗号アルゴリズムのように、大きい整数の分解と離散対数の困難性に基づくものである。
本開示は、デジタル署名方法、署名情報検証方法、関連装置及び電子機器を提供する。
本開示の第1態様によれば、第1電子機器に応用されるデジタル署名方法を提供し、送信対象ファイル、及び、前記第1電子機器がデジタル署名のために使用する秘密鍵であって、第1可逆行列を含む秘密鍵を取得することと、ランダムに生成された第2可逆行列と第1テンソルとに基づいて、前記第1テンソルと同型の第2テンソルを生成することと、前記第2テンソルに基づいて、ハッシュ関数を用いて前記送信対象ファイルにデジタル署名を行い、第1文字列を得ることと、前記第1電子機器による前記送信対象ファイルに対する署名情報を、前記第1文字列、第1可逆行列及び第2可逆行列に基づいて生成することとを含む。
本開示の第2態様によれば、第2電子機器に応用される署名情報検証方法を提供し、送信対象ファイル、前記送信対象ファイルの署名情報、及び、前記第2電子機器が署名情報の検証に使用する公開鍵であって、前記署名情報に関連付けられた秘密鍵に対応し、第1テンソルと第3テンソルとを含む公開鍵を取得することと、前記署名情報及び前記公開鍵に含まれる第1テンソルと第3テンソルに基づいて、第4テンソルを生成することと、前記第4テンソルに基づいて、ハッシュ関数を用いて前記送信対象ファイルにデジタル署名を行い、第2文字列を得ることと、前記第2文字列に基づいて前記署名情報を検証することとを含む。
本開示の第3態様によれば、第1電子機器に応用されるデジタル署名装置を提供し、送信対象ファイル、及び、前記第1電子機器がデジタル署名のために使用する秘密鍵であって、第1可逆行列を含む秘密鍵を取得する第1取得モジュールと、ランダムに生成された第2可逆行列と第1テンソルとに基づいて、前記第1テンソルと同型の第2テンソルを生成する第1生成モジュールと、前記第2テンソルに基づいて、ハッシュ関数を用いて前記送信対象ファイルにデジタル署名を行い、第1文字列を得る第1デジタル署名モジュールと、前記第1電子機器による前記送信対象ファイルに対する署名情報を、前記第1文字列、第1可逆行列及び第2可逆行列に基づいて生成する第2生成モジュールとを含む。
本開示の第4態様によれば、第2電子機器に応用される署名情報検証装置を提供し、送信対象ファイル、前記送信対象ファイルの署名情報、及び、前記第2電子機器が署名情報の検証に使用する公開鍵であって、前記署名情報に関連付けられた秘密鍵に対応し、第1テンソルと第3テンソルとを含む公開鍵を取得する第2取得モジュールと、前記署名情報及び前記公開鍵に含まれる第1テンソルと第3テンソルに基づいて、第4テンソルを生成する第5生成モジュールと、前記第4テンソルに基づいて、ハッシュ関数を用いて前記送信対象ファイルにデジタル署名を行い、第2文字列を得る第2デジタル署名モジュールと、前記第2文字列に基づいて前記署名情報を検証する検証モジュールとを含む。
本開示の第5態様によれば、少なくとも1つのプロセッサと、及び少なくとも1つのプロセッサと通信可能に接続されたメモリを含む電子機器を提供し、ここで、メモリには、少なくとも1つのプロセッサによって実行可能なコマンドが格納されており、該コマンドが少なくとも1つのプロセッサによって実行されると、第1態様のいずれかの方法又は第2態様のいずれかの方法の少なくとも1つのプロセッサによる実行を可能にする。
本開示の第6態様によれば、コンピュータコマンドが格納されている非一時的コンピュータ読み取り可能な記憶媒体を提供し、該コンピュータコマンドは、第1態様のいずれかの方法又は第2態様のいずれかの方法をコンピュータに実行させる。
本開示の第7態様によれば、コンピュータプログラムプロダクトを提供し、前記コンピュータプログラムプロダクトが電子機器で実行されると、前記電子機器は、第1態様のいずれかの方法を実行し、又は第2態様のいずれかの方法を実行する。
本願の技術によれば、デジタル署名の安全性が比較的低いという問題が解決され、デジタル署名の安全性が向上する。
このセクションに記載された内容は、本開示の実施例のポイントや重要な特徴を特定することを意図するものではなく、また、本開示の範囲を限定するために使用されるものでもないことを理解されたい。本開示の他の特徴は、以下の明細書から容易に理解される。
図面は、本構成をよりよく理解するためのものであり、本開示の限定にならない。
本願の実施例1に係るデジタル署名方法のフローチャートである。 本願の実施例2に係る署名情報検証方法のフローチャートである。 本願の実施例3に係るデジタル署名装置の構造図である。 本願の実施例4に係る署名情報検証装置の構造図である。 本開示の実施例を実施するための例示的な電子機器500のブロック図である。
以下、図面を参照して本願の例示的な実施例を説明し、理解することに寄与する本願の実施例の様々な詳細が含まれるが、それらは、単に例示的なものであると考えるべきである。よって、当業者にとって、ここに記載の実施例に対し、本願の範囲や趣旨から逸脱することなく様々な変更や修正を行うことができることを認識すべきである。同様に、明確及び簡潔のために、以下の記載では、既知の機能や構造の記載を省略している。
実施例1
図1に示すように、本願は、第1電子機器に応用されるデジタル署名方法を提供し、以下のステップを含む。
ステップS101において、送信対象ファイル、及び、前記第1電子機器がデジタル署名のために使用する秘密鍵であって、第1可逆行列を含む秘密鍵を取得する。
本実施例において、デジタル署名方法は、量子計算の技術分野に関し、特に量子計算における情報安全性の分野に関し、電子商取引、身元確認、ソフトウェア配布などの様々な場面で広く利用可能である。
例えば、身元確認の応用場面では、甲側から1つのファイルを乙側に送信する必要があり、乙側において、そのファイルが甲側以外の者ではなく確かに甲側から送信されたものであることを検証する必要があるとする。このとき、甲側は、そのファイルにデジタル署名を行い、乙側は、ファイルとそれに対応する署名情報を受け取り、甲側によって公開された公開鍵を取得して、そのファイルの送信者が確かに甲側であることを検証することができる。
また例えば、ソフトウェア配布の応用場面では、入手したソフトウェアに対して配布者の身元確認を行うことによって、そのソフトウェアの出所が特定される。
実際に使用する場合、本願の実施例のデジタル署名方法は、本願の実施例のデジタル署名装置によって実行される。本願の実施例に係るデジタル署名装置は、本願の実施例に係るデジタル署名方法を実行するために、任意の第1電子機器に構成されてもよい。第1電子機器は、サーバであってもよいし、端末であってもよく、ここでは特に限定されない。
前記第1電子機器は、通信の送信側として、他の電子機器と通信を行うことによって、ファイルを送信することができる。第1電子機器は、ファイルを送信する前に、受信したファイルが確かに第1電子機器によって送信されたものであることを他の電子機器が検証し且つ送信側の真正性を検証することができるように、デジタル署名技術を用いて送信対象ファイルにデジタル署名を行う。
前記送信対象ファイルとは、前記第1電子機器から他の電子機器に送信する必要があるファイルであり、そのタイプとして、テキスト、圧縮パケット、音声映像等である。
前記秘密鍵は、第1電子機器に事前に記憶され、第1電子機器の送信対象ファイルに暗号化及びデジタル署名を行うためのパラメータである。前記秘密鍵は、公開鍵に対応する。秘密鍵と公開鍵との組み合わせは、鍵ペアと称される。且つ、前記公開鍵は、他の電子機器が該公開鍵を使用して前記第1電子機器の署名情報を解読及び署名解除できるように、一般的に他の電子機器によって他の電子機器に公開される。
公開鍵暗号の役割として、デジタル署名の安全性を保証するために、デジタル署名スキームは、何らかのアルゴリズム問題の困難性に基づく必要がある。一方、量子コンピュータの発展に伴い、従来のデジタル署名スキームの基礎となるアルゴリズム問題は、一般的に量子コンピュータにとって困難ではない可能性がある。即ち、基礎となるアルゴリズム問題は、量子攻撃に対抗できない可能性がある。従って、デジタル署名の安全性が脅かされる。
ここで、上記の困難性は、微妙な概念である。まず、一般的に最悪の意味で考えられる困難性とは異なり、ここでは平均的な意味での困難性である必要があり、即ち、入力の大部分に対して有効なアルゴリズムが存在しない。次に、全ての困難性アルゴリズムが適切なデジタル署名プロトコルに対応するわけではないので、この問題に基づいて、対応するプロトコルを更に設計する必要がある。最後に、量子アルゴリズム設計の観点から、この問題のホスト量子暗号の範囲内での利用可能性を検討する必要もある。例えば、大きい整数の分解問題は、古典的なコンピュータの観点からは困難であるが、量子計算の観点からは容易である。
テンソル同型問題は、計算の複雑さの観点から、同型タイプの問題の中で比較的困難な問題と見なされる。量子計算の観点から、テンソル同型問題の求解困難性により、テンソル同型問題を用いて設計されたデジタル署名は、量子アルゴリズムの観点から安全性が保障される。従って、本願の実施例において、基礎となるアルゴリズム問題は、テンソル同型問題を用い、ほとんどのコンピュータ(量子コンピュータを含む)の観点からのテンソル同型問題の求解困難性を利用して、デジタル署名の設計を行う。
テンソル同型問題は、以下に説明する。
pを1つの素数とし、GF(p)でモジュロpドメインを表し、GL(n,p)でGF(p)上の大きさn×nの可逆行列の集合を表す。GF(p)上の多次元行列は、テンソルと呼ぶ。ここで、テンソルの次数は、一般的に2より大きい。
テンソルは、3次行列であることを例にとると、n×n×nの行列と呼び、n×n×n個の成分を有し、nがテンソルの次元数と呼ばれる。1つのテンソルをAとし、A=(aijk)で示し、もう1つのテンソルをBとし、B=(bijk)で示す場合、各次元のデータの長さは、いずれもnであり、即ち、テンソルの下付き文字i、j、kは、それぞれ1〜nを取り、
Figure 2021145388
で示し、
Figure 2021145388
は、それぞれ2つのテンソルのiスライス目、j行目、k列目の元素であり、これらの元素が羅列されてテンソル(aijk)及び(bijk)が構成される。テンソル同型問題は、即ち、可逆行列の存在の有無を解くことであり、
Figure 2021145388
で表し、
Figure 2021145388
とする。即ち、テンソル同型問題は、2つのテンソルが同型テンソルであるか否かを決定し、且つ2つのテンソルが同型テンソルである場合に、2つのテンソルが互いに変換する可逆行列を解くことである。
ここで、式
Figure 2021145388
における「°」は、テンソルの3方向からそれぞれ3つの行列を掛け合わせていることを示し、即ち、テンソルの3方向に同時に3つの行列を掛け合わせていることを示し、3つの行列は、同じ可逆行列Cであってもよい。これを掛け合わせたものも、1つのテンソルであり、B’で示し、ここで、B’=(b’ijk)。b’ijkは、テンソルB’中の下付き文字の位置の1つの数であり、
Figure 2021145388
なお、テンソルが高次行列である場合、テンソル同型問題は、高次行列のテンソルにまで広がることができ、つまり、高次行列のテンソル同型問題は、3次行列のテンソル同型問題から類推することができる。例えば、4次行列である2つのテンソルについて、それぞれ、A=(aijk)及びB=(bijk)で示し、テンソル同型問題は、
Figure 2021145388
とする可逆行列Cが存在するか否かを意味する。
テンソル同型問題を前提に、2つのテンソルが同型であることが分かっていても、その間に変換された可逆行列を解くことは困難であるため、デジタル署名の安全性を確保するために、第1電子機器がデジタル署名に用いる秘密鍵は、行列形式に設定して、秘密鍵が解読される困難性を保証する。
具体的には、前記秘密鍵は、第1可逆行列を含み、公開鍵は、テンソル形式で設定され、公開鍵を公開する。このように、他の電子機器が、送信対象ファイルに対する第1電子機器の署名情報を偽造する必要が生じた場合、公開鍵を用いて秘密鍵を解読して取得する必要がある。これは、他の電子機器が、1つのテンソル同型問題を解く必要があることと等価である。テンソル同型問題の求解困難性のため、他の電子機器は、公開鍵を用いて第1電子機器の秘密鍵を解読することが困難である。このように、第1電子機器の署名を他の電子機器が偽造することが困難となり、デジタル署名の安全性を確保することができる。
実際の応用では、テンソル同型問題に基づいて、古典的な図同型問題のゼロ知識型インタラクティブプロトコルを用いて身元確認プロトコルを構築する。要求される安全性に応じて、そのプロトコルは、複数ラウンドにわたって実行されてもよく、各ラウンドにおいて複数のテンソルが生成される。この身元確認プロトコルに基づき、古典的な身元識別プロトコルFiat−Shamir変換プロセスを使用して、デジタル署名スキームを構築する。
プロトコルにおける主要なパラメータ(例えば、nは、テンソルの次元数、pは、ドメインのサイズ、rは、ラウンド数、tは、ラウンド当たりの発生テンソル数)及びテンソル同型問題に対する最良のアルゴリズム実行時間の理解に基づいて、例えば128bit又は256bitの安全性などの所望のデジタル署名の安全性を達成するために、適切なパラメータ選択が行われる。
前記送信対象ファイルの取得方式は、様々であり、例えば予め記憶したファイルから送信対象ファイルを取得し、また例えば、送信対象ファイルを能動的に生成する。
前記秘密鍵は、第1電子機器によって予め生成され、データベースに格納されてもよく、開発者によって予め設定され、データベースに格納されてもよく、ここで特に限定されない。
前記秘密鍵は、第1電子機器によって予め生成され、データベースに格納されていることを例にとる。前記第1電子機器は、少なくとも1つの第1可逆行列をランダムに生成し、例えば、
Figure 2021145388
で示される第1可逆行列をランダムにt−1個生成する。ここで、2以上であるtは、実際の状況に応じて設定される。前記第1電子機器の秘密鍵は、複数の可逆行列を含み、それぞれC0,C1,…,Ct-1である。ここで、C0は、大きさnの単位行列である。
ステップS102において、ランダムに生成された第2可逆行列と第1テンソルとに基づいて、前記第1テンソルと同型の第2テンソルを生成する。
3次行列を用いたテンソル同型問題でデジタル署名スキームを設計することを例にとると、第1電子機器の秘密鍵及び公開鍵を構築する際に、1つの第1テンソル
Figure 2021145388
をランダムに生成する。この第1テンソルは、初期テンソルとしてテンソル同型を行い、公開鍵の一部とする。
一方、
Figure 2021145388
について、rは、正の整数である。第1電子機器は、
Figure 2021145388
で示される少なくとも1つの第2可逆行列をランダムに生成する。即ち、ランダムに生成された第2可逆行列と第1テンソルとに基づいて、
Figure 2021145388
によって、前記第1テンソルと同型の少なくとも1つの第2テンソルを構築する。
ステップS103において、前記第2テンソルに基づいて、ハッシュ関数を用いて前記送信対象ファイルにデジタル署名を行い、第1文字列を得る。
ハッシュ関数(Hで示す)を用いて、前記送信対象ファイル(Mで示す)にデジタル署名を行う。具体的には、送信対象ファイルMと第2テンソルB1,…,Brを文字列として連結し、その後、連結した文字列に対してハッシュ演算
Figure 2021145388
を行い、第1文字列を得る。
ここで、
Figure 2021145388
は、送信対象ファイルMと第2テンソルB1,…,Brを文字列として連結することを示す。前記第1文字列は、バイナリ文字列、即ち01文字列であり、その長さがr※sである。パラメータsも、身元確認プロトコルのパラメータであり、パラメータtの間では、t=2sが満たされる。ハッシュ関数であるHは、入力が任意の長さの文字列であり、出力される文字列長がr※sであり、且つ01文字列が出力される。
ステップS104において、前記第1電子機器による前記送信対象ファイルに対する署名情報を、前記第1文字列、第1可逆行列及び第2可逆行列に基づいて生成する。
前記第1電子機器による前記送信対象ファイルに対する署名情報は、前記第1文字列、第1可逆行列及び第2可逆行列に基づいて生成される。前記署名情報は、第1文字列、及び、第1文字列と第1可逆行列と第2可逆行列とから生成された目的行列を含む。代替的な実施形態において、前記署名情報は、第1文字列から分割された複数文字列、及び、これら複数の文字列と第1可逆行列と第2可逆行列とから生成された目的行列を含む。
本実施例では、第1電子機器の秘密鍵を可逆行列の形式に設定し、初期テンソルと同型の第2テンソルを、ランダムに生成された第2可逆行列と初期テンソルとで構築することで、第2テンソルに基づき、ハッシュ関数を用いて前記送信対象ファイルにデジタル署名を行う。このように、他の電子機器が、送信対象ファイルに対する第1電子機器の署名情報を偽造する必要が生じた場合、公開鍵を用いて秘密鍵を解読して取得する必要がある。これは、他の電子機器が、テンソル同型問題を解く必要があることと等価である。テンソル同型問題の求解困難性のため、他の電子機器が、公開鍵を用いて第1電子機器の秘密鍵を解読することが困難である。このように、第1電子機器の署名を他の電子機器が偽造することが困難となり、デジタル署名の安全性を確保することができる。
代替的に、前記ステップS104は、具体的に、前記第1文字列を分割してP(Pは、1より大きい正の整数である)個の文字列を得ることと、前記P個の文字列、第1可逆行列及び第2可逆行列に基づいて、目的行列を生成することとを含み、ここで、前記署名情報は、前記P個の文字列と、前記目的行列とを含む。
本実施形態では、前記第1文字列を分割して複数の文字列を得、例えば長さsの01文字列をr個得て、このr個の文字列をそれぞれf1,…,frで示す。ここで、rは、1より大きい。
前記P個の文字列、第1可逆行列及び第2可逆行列に基づいて目的行列を生成する。具体的には、
Figure 2021145388
について、前記第1電子機器は、式
Figure 2021145388
を用いて前記目的行列を計算する。ここで、Eiは、目的行列であり、その数が複数であってもよい。
Figure 2021145388
は、秘密鍵におけるfi番目の可逆行列の逆行列を示す。例えば、01文字列fiが1である場合、
Figure 2021145388
は、秘密鍵における可逆行列C1の逆行列である。即ち、目的行列は、第2可逆行列Diと秘密鍵における可逆行列Cf1の逆行列との行列乗算によって得られる。
最後に、前記第1電子機器による前記送信対象ファイルに対する署名情報(f1,…,fr,E1,…,Er)は、このr個の文字列及び複数の目的行列に基づいて決定される。
他の電子機器、例えば第3電子機器が第1電子機器に成りすまして送信対象ファイルMに署名を生成したい場合、第3電子機器は、秘密鍵を持たないため、秘密鍵に基づいて目的行列を生成することができず、即ち、式
Figure 2021145388
を用いて目的行列E1,…,Erを生成することができない。秘密鍵を解読するには、テンソル同型問題を解く必要があるため、第3電子機器は、第1電子機器の秘密鍵を取得することが困難となる。
また、第3電子機器によるプロトコル直接攻撃方法は、
Figure 2021145388
で示される01文字列を複数生成し、
Figure 2021145388
を計算した後に、H(M|B1|…|Br)を計算して得られるf1,…,frは、すべての
Figure 2021145388
について、fi=giを満たすことに帰結する。ハッシュ関数の性質上、このような攻撃が成功する確率は、著しく1/2rs超えない。
従って、上記の2点を踏まえると、第3電子機器は、第1電子機器の署名情報を偽造することが非常に困難である。
更に、プロトコルにおけるパラメータの組み合わせは、以下の表1に示すように、128bitの安全性を達成するように設定することができる。
Figure 2021145388
本実施形態では、前記第1文字列を分割してP個の文字列を得て、前記P個の文字列、第1可逆行列及び第2可逆行列に基づいて、目的行列を生成し、最終的に前記P個の文字列と前記目的行列とを含む署名情報を得る。このように、ランダムに生成された第2可逆行列と公開鍵を用いて署名を生成することにより、他の電子機器は、秘密鍵を知らずに、既知の複数のテンソルによってそれらの間の可逆行列を偽造し、即ち、秘密鍵を偽造することが困難であり、デジタル署名を偽造することが非常に困難となり、デジタル署名の安全性が向上する。
代替的に、前記ステップS101の前に、前記第1可逆行列及び第1テンソルに基づいて、前記第1テンソルと同型の第3テンソルを生成することと、前記第1テンソルと第3テンソルとを含む公開鍵であって、前記秘密鍵に対応する公開鍵を生成することと、前記公開鍵を公開することとを更に含む。
本実施形態は、秘密鍵に基づいて公開鍵を生成するプロセスであり、且つ、他の電子機器が、前記第1電子機器が送信した署名情報と送信対象ファイルを受信した場合に、送信対象ファイルの送信元である第1電子機器の身元確認を可能とするために、秘密鍵に対応する公開鍵を公開する必要がある。
前記秘密鍵は、第1可逆行列
Figure 2021145388
と大きさnの単位行列C0とを含み、前記第1可逆行列及び前記第1テンソルに基づいて、前記第1テンソルと同型の第3テンソルを生成する。前記公開鍵は、前記第1テンソル及び
Figure 2021145388
で示す第3テンソルを含む。
具体的には、式
Figure 2021145388
に基づいて、前記第1テンソルと同型の第3テンソルを生成する。前記第1電子機器の公開鍵は、前記第1テンソル及び第3テンソルを含み、即ちA0,A1,…,At-1である。
その後、生成された前記公開鍵を公開する。これに応じて、他の電子機器は、前記第1電子機器の公開鍵を取得することができる。
本実施形態では、秘密鍵とランダムに生成された初期テンソルから、この初期テンソルと同型の第3テンソルを構築し、初期テンソルと第3テンソルとを第1電子機器の公開鍵として公開する。このように、公開鍵を同型テンソルの形式とすることにより、他の電子機器は、第1電子機器の署名情報を、第1電子機器が公開した公開鍵に基づいてのみ解読して第1電子機器の身元確認を行うことができ、公開鍵における同型テンソルに基づいて、同型テンソル間の可逆行列である秘密鍵を解くことが困難となり、テンソル同型問題を解くことと等価となり、デジタル署名の安全性を高め、量子コンピュータの攻撃に有効に対抗することができる。
実施例2
図2に示すように、本願は、第2電子機器に応用される署名情報検証方法を提供し、送信対象ファイル、前記送信対象ファイルの署名情報、及び、前記第2電子機器が署名情報の検証に使用する公開鍵であって、前記署名情報に関連付けられた秘密鍵に対応し、第1テンソルと第3テンソルとを含む公開鍵を取得するステップS201と、前記署名情報及び前記公開鍵に含まれる第1テンソルと第3テンソルに基づいて、第4テンソルを生成するステップS202と、前記第4テンソルに基づいて、ハッシュ関数を用いて前記送信対象ファイルにデジタル署名を行い、第2文字列を得るステップS203と、前記第2文字列に基づいて前記署名情報を検証するステップS204とを含む。
本実施例において、前記第2電子機器は、送信対象ファイルを受信する電子機器である。第1電子機器は、送信対象ファイル及び前記送信対象ファイルの署名情報を第2電子機器に送信する。これに応じて、第2電子機器は、前記送信対象ファイル、送信対象ファイルの署名情報を受信する。
前記第1電子機器は、送信対象ファイル及び前記送信対象ファイルの署名情報を送信する前に、その身元確認に用いる公開鍵を公開する。これに応じて、第2電子機器は、前記第1電子機器が公開している公開鍵を取得する。
前記公開鍵は、前記署名情報に関連付けられた秘密鍵に対応する。即ち、前記公開鍵は、前記署名情報を生成する秘密鍵とは鍵ペアである。前記公開鍵には、第3テンソル、及び前記第1電子機器によってランダムに生成された初期テンソルが含まれる。
前記署名情報及び前記公開鍵に含まれる第1テンソルと第3テンソルとに基づいて、
Figure 2021145388
で示す第4テンソルを生成する。具体的には、
Figure 2021145388
について、前記第2電子機器は、式
Figure 2021145388
を用いて、少なくとも1つの第4テンソルを生成する。
その後、前記第4テンソルに基づいて、ハッシュ関数を用いて前記送信対象ファイルにデジタル署名を行い、第2文字列を得る。具体的には、送信対象ファイルMと第4テンソル
Figure 2021145388
、…、
Figure 2021145388
を文字列として連結し、その後、連結した文字列に対してハッシュ演算
Figure 2021145388
を行い、第2文字列を得る。
ここで、
Figure 2021145388
は、送信対象ファイルMと第4テンソル
Figure 2021145388
、…、
Figure 2021145388
を文字列として連結することを示す。前記第2文字列は、バイナリ文字列、即ち01文字列であり、その長さがr※sである。
最後に、前記第2文字列に基づいて前記署名情報を検証し、前記第2文字列が前記署名情報内の文字列と全て同じである場合、前記署名情報の検証に成功し、即ち、前記送信対象ファイルは、確かに前記第1電子機器によって送信されたものである。前記第2文字列と前記署名情報内の文字列とが完全一致ではない場合、前記署名情報の検証に失敗し、即ち、前記送信対象ファイルは、第1電子機器ではなく他の電子機器から送信されたものである。
本実施例では、公開鍵のテンソルと署名情報とに基づいて第4テンソルを生成し、前記第4テンソルに基づいて、ハッシュ関数を用いて前記送信対象ファイルにデジタル署名を行うことによって、第2文字列を得て、前記第2文字列に基づいて前記署名情報を検証する。このように、第2電子機器は、第1電子機器が公開している公開鍵を取得した場合に、公開鍵と、受信した送信対象ファイル及び前記送信対象ファイルの署名情報に基づいて、送信対象ファイルの送信元の身元確認をするために署名情報の検証を非常に容易に行うことができる。
代替的に、前記署名情報は、P(Pは、1より大きい正の整数である)個の文字列を含み、前記ステップS204は、具体的に、前記第2文字列を分割してM(M=P)個の文字列を得ることと、前記P個の文字列と前記M個の文字列とが1対1で等しい場合、前記署名情報の検証に成功したと決定し、又は、前記P個の文字列のうちの第1目的文字列と、前記M個の文字列のうちの第2目的文字列とが等しくない場合、前記署名情報の検証に失敗したと決定することとを含む。ここで、前記第1目的文字列の前記P個の文字列における位置が、前記第2目的文字列の前記M個の文字列における位置に対応し、前記第1目的文字列が、前記P個の文字列のうちのいずれかの文字列である。
前記第2文字列を分割して複数の文字列を得、例えば、長さsの01文字列をr個得て、このr個の文字列は、それぞれ
Figure 2021145388
で示す。
Figure 2021145388
について、
Figure 2021145388
が存在すれば、前記署名情報の検証に成功するが、さもなければ前記署名情報の検証に失敗する。
本実施形態では、前記第2文字列を分割して複数の文字列を得て、これら複数の文字列と前記署名情報における複数の文字列とを一対一に照合し、いずれも同じ場合には前記署名情報の検証に成功し、いずれかの文字列が異なる場合には前記署名情報の検証に失敗する。このように、非常に便利に署名情報を検証することができる。
実施例3
図3に示すように、本願は、第1電子機器に応用されるデジタル署名装置300を提供し、送信対象ファイル、及び、前記第1電子機器がデジタル署名のために使用する秘密鍵であって、第1可逆行列を含む秘密鍵を取得する第1取得モジュール301と、ランダムに生成された第2可逆行列と第1テンソルとに基づいて、前記第1テンソルと同型の第2テンソルを生成する第1生成モジュール302と、前記第2テンソルに基づいて、ハッシュ関数を用いて前記送信対象ファイルにデジタル署名を行い、第1文字列を得る第1デジタル署名モジュール303と、前記第1電子機器による前記送信対象ファイルに対する署名情報を、前記第1文字列、第1可逆行列及び第2可逆行列に基づいて生成する第2生成モジュール304とを含む。
代替的に、前記第2生成モジュール304は、具体的に、前記第1文字列を分割してP(Pは、1より大きい正の整数である)個の文字列を得て、前記P個の文字列、第1可逆行列及び第2可逆行列に基づいて目的行列を生成し、ここで、前記署名情報は、前記P個の文字列と、前記目的行列とを含む。
代替的に、前記装置は、前記第1可逆行列及び第1テンソルに基づいて、前記第1テンソルと同型の第3テンソルを生成する第3生成モジュールと、前記第1テンソルと第3テンソルとを含む公開鍵であって、前記秘密鍵に対応する公開鍵を生成する第4生成モジュールと、前記公開鍵を公開する公開モジュールとを更に含む。
本願に係るデジタル署名装置300は、デジタル署名方法の実施例によって実現される各プロセスを実現可能であり、同じ技術効果を奏することもでき、重複を避けるために、ここでは繰り返して記載しない。
実施例4
図4に示すように、本願は、第2電子機器に応用される署名情報検証装置400を提供し、送信対象ファイル、前記送信対象ファイルの署名情報、及び、前記第2電子機器が署名情報の検証に使用する公開鍵であって、前記署名情報に関連付けられた秘密鍵に対応し、第1テンソルと第3テンソルとを含む公開鍵を取得する第2取得モジュール401と、前記署名情報及び前記公開鍵に含まれる第1テンソルと第3テンソルに基づいて、第4テンソルを生成する第5生成モジュール402と、前記第4テンソルに基づいて、ハッシュ関数を用いて前記送信対象ファイルにデジタル署名を行い、第2文字列を得る第2デジタル署名モジュール403と、前記第2文字列に基づいて前記署名情報を検証する検証モジュール404とを含む。
代替的に、前記署名情報は、P(Pは、1より大きい正の整数である)個の文字列を含む。前記検証モジュール404は、具体的に、前記第2文字列を分割してM(M=P)個の文字列を得て、前記P個の文字列と前記M個の文字列とが1対1で等しい場合、前記署名情報の検証に成功したと決定し、又は、前記P個の文字列のうちの第1目的文字列と、前記M個の文字列のうちの第2目的文字列とが等しくない場合、前記署名情報の検証に失敗したと決定する。ここで、前記第1目的文字列の前記P個の文字列における位置が、前記第2目的文字列の前記M個の文字列における位置に対応し、前記第1目的文字列が、前記P個の文字列のうちのいずれかの文字列である。
本願に係る署名情報検証装置400は、署名情報検証方法の実施例によって実現される各プロセスを実現可能であり、同じ技術効果を奏することもでき、重複を避けるために、ここでは繰り返して記載しない。
本願の実施例によれば、本願は、電子機器、読み取り可能な記憶媒体及びコンピュータプログラムプロダクトを更に提供する。
図5は、本開示の実施例を実施するための例示的な電子機器500のブロック図である。電子機器は、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレームコンピュータ、及び他の適切なコンピュータなどの様々な形態のデジタルコンピュータを表すことが意図される。電子機器は、パーソナルデジタルプロセシング、セルラー電話、スマートフォン、ウェアラブルデバイス、及び他の同様のコンピューティングデバイスなど、様々な形態のモバイルデバイスを表してもよい。本明細書に示される構成要素、それらの接続及び関係、並びにそれらの機能は、単なる例であり、本明細書に記載及び/又は特許請求される本願の実現を限定することを意図しない。
図5に示すように、機器500は、リードオンリーメモリ(ROM)に記憶されたコンピュータプログラム、又は、記憶ユニット508からランダムアクセスメモリ(RAM)にロードされたコンピュータプログラムに基づいて、各種類の適切な動作や処理を実行する計算ユニット501を含む。RAM503には、機器500の動作に必要な各種類のプログラム及びデータも記憶されている。計算ユニット501,ROM502及びRAM503は、バス504を介して互いに接続される。入出力(I/O)インタフェース505もバス504に接続される。
キーボード、マウスなどの入力ユニット506と、各種類のディスプレイ、スピーカーなどの出力ユニット507と、磁気ディスク、光ディスクなどの記憶ユニット508と、ネットワークカード、モデム、無線通信送受信機などの通信ユニット509を含む機器500内の複数の部材は、I/Oインタフェース505に接続される。通信ユニット509は、インターネットのコンピュータネットワーク及び/又は各種類の電気通信ネットワークを介した機器500と他の機器との情報/データのやり取りを許容する。
計算ユニット501は、処理及び計算能力を有する各種類の汎用及び/又は専用処理構成要素である。計算ユニット501の例として、中央処理ユニット(CPU)、グラフィック処理ユニット(GPU)、各種類の専用の人工知能(AI)計算チップ、機械学習モデルアルゴリズムを実行する各種類の計算ユニット、デジタル信号プロセッサ(DSP)、及び任意の適切なプロセッサ、コントローラ、マイクロコントローラなどを含み、それらに限られない。計算ユニット501は、上記の各方法及び処理を実行し、例えばデジタル署名方法又は署名情報検証方法を実行する。例えば、一部の実施例において、デジタル署名方法又は署名情報検証方法は、コンピュータソフトウェアプログラムとして実現され、記憶ユニット508のような機械読み取り可能な媒体に有形構成として含まれる。一部の実施例において、コンピュータプログラムの一部又はすべては、ROM502及び/又は通信ユニット509を介して機器500にロード/インストールされる。コンピュータプログラムがRAM503にロードされて計算ユニット501によって実行されると、上記のデジタル署名方法及び署名情報検証方法の1つ又は複数のステップを実行する。オプションとして、他の実施例において、計算ユニット501は、それ以外の任意の適切な方法(又はファームウェアを介して)によって、デジタル署名方法又は署名情報検証方法を実行するように構成される。
ここに記載するシステム及び技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、特殊用途向け汎用品(ASSP)、システムオンチップ(SOC)、コンプレックスプログラマブルロジックデバイス(CPLD)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせにおいて実現される。これらの様々な実施形態は、記憶システム、少なくとも1つの入力装置、及び少なくとも1つの出力装置からデータ及びコマンドを受信し、該記憶システム、該少なくとも1つの入力装置、及び該少なくとも1つの出力装置にデータ及びコマンドを送信することができる専用又は汎用のプログラマブルプロセッサである少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行及び/又は解釈可能な1つ又は複数のコンピュータプログラムで実現することを含む。
本開示の方法を実施するためのプログラムコードは、1つ以上の編集言語の任意の組合せを用いて記述することができる。これらのプログラムコードは、汎用コンピュータ、専用コンピュータ、又は他のプログラマブルデータ処理装置のプロセッサ又はコントローラに提供され、プログラムコードがプロセッサ又はコントローラによって実行されると、フローチャート及び/又はブロック図に規定された機能/動作が実行される。プログラムコードは、完全にマシン上で実行され、部分的にマシン上で実行され、個別パッケージとして部分的にマシン上で実行され、部分的にリモートマシン上で実行され、又はリモートマシン又はサーバ上で完全に実行される。
本開示の記載において、機械読み取り可能な媒体は、有形媒体であってもよく、命令実行システム、デバイス、又はデバイスに使用されるか、又は命令実行システム、デバイス、又はデバイスと組み合わせて使用するためのプログラムを含むか、又は格納することができる。機械読み取り可能な媒体は、機械読み取り可能な信号媒体又は機械読み取り可能な記憶媒体である。機械読み取り可能な媒体は、限定されないが、電子的、磁気的、光学的、電磁的、赤外線的、又は半導体システム、装置若しくは機器、又は上記の任意の適切な組み合わせを含む。機械読み取り可能な憶媒体のより具体的な例としては、1つ以上のラインに基づく電気的接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、消去可能なプログラマブル読み取り専用メモリ(EPROM 又はフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み取り専用メモリ(CD−ROM)、光記憶装置、磁気記憶装置、又はこれらの任意の適切な組み合わせを含む。
ユーザとの対話を提供するために、本明細書に記載されたシステム及び技術は、ユーザに情報を表示するための表示装置(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ)モニタ)と、ユーザがコンピュータに入力を提供することができるキーボード及びポインティングデバイス(例えば、マウス又はトラックボール)とを有するコンピュータ上で実施される。他の種類の装置を使用して、ユーザとの対話を提供してもよい。例えば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよい。ユーザからの入力は、音声入力、又は触覚入力を含む任意の形態で受信される。
ここに記載のシステム及び技術は、バックエンド構成要素を含むコンピューティングシステム(例えば、データサーバとして)、又はミドルウェア構成要素を含むコンピューティングシステム(例えば、アプリケーションサーバ)、又はフロントエンド構成要素を含むコンピューティングシステム(例えば、ユーザが本明細書に記載のシステム及び技術の実施形態と相互作用するグラフィカルユーザインターフェース又はウェブブラウザを有するユーザコンピュータ)、又はそのようなバックエンド構成要素、ミドルウェア構成要素、又はフロントエンド構成要素の任意の組み合わせを含むコンピューティングシステムにおいて実施される。システムの構成要素は、任意の形式又は媒体(例えば、通信ネットワーク)のデジタルデータ通信によって互いに接続される。通信ネットワークとしては、例えば、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネット、ブロックチェーンネットワークなどが挙げられる。
コンピュータシステムは、クライアント及びサーバを含む。クライアント及びサーバは、一般に、互いから離れており、通常、通信ネットワークを介して対話する。クライアントとサーバの関係は、それぞれのコンピュータ上で実行され、互いにクライアント−サーバ関係を有するコンピュータプログラムによって生成される。サーバは、クラウドサーバであってよく、クラウドコンピューティングサーバ又はクラウドホストとも称され、クラウドコンピューティングサービスアーキテクチャにおけるホスト製品の1つであり、従来の物理ホスト及びVPS(Virtual Private Server)サービスにおける管理困難性が高く、トラフィック拡張性が低いという欠点を解決する。サーバは、分散システムのサーバ又はブロックチェーンを結合したサーバであってもよい。
上記に示された様々な形態のフローが、ステップの順序変更、追加、又は削除のために使用されることが理解されるべきである。例えば、本願に記載された各ステップは、並列に実行されても、順次的に実行されても、異なる順序で実行されてもよく、本願に開示された技術的解決手段の所望の結果を実現できる限り、本明細書ではこれについて限定しない。
上述した具体的な実施形態は、本願の保護範囲への制限にならない。当業者にとって、設計の要求や他の要素によって様々な修正、組み合わせ、サブ組み合わせ及び置換を行うことができることは、明らかである。本願の趣旨や原則内に為した修正、均等置換及び改良などは、すべて本願の保護範囲に含まれるべきである。

Claims (13)

  1. 第1電子機器に応用されるデジタル署名方法であって、
    送信対象ファイル、及び、前記第1電子機器がデジタル署名のために使用する秘密鍵であって、第1可逆行列を含む秘密鍵を取得することと、
    ランダムに生成された第2可逆行列と第1テンソルとに基づいて、前記第1テンソルと同型の第2テンソルを生成することと、
    前記第2テンソルに基づいて、ハッシュ関数を用いて前記送信対象ファイルにデジタル署名を行い、第1文字列を得ることと、
    前記第1電子機器による前記送信対象ファイルに対する署名情報を、前記第1文字列、第1可逆行列及び第2可逆行列に基づいて生成することとを含む、デジタル署名方法。
  2. 前記の前記第1電子機器による前記送信対象ファイルに対する署名情報を、前記第1文字列、第1可逆行列及び第2可逆行列に基づいて生成することは、
    前記第1文字列を分割してP(Pは、1より大きい正の整数である)個の文字列を得ることと、
    前記P個の文字列、第1可逆行列及び第2可逆行列に基づいて、目的行列を生成することとを含み、
    ここで、前記署名情報は、前記P個の文字列と、前記目的行列とを含む、請求項1に記載の方法。
  3. 送信対象ファイル及び前記第1電子機器がデジタル署名のために使用する秘密鍵を取得する前に、
    前記第1可逆行列及び第1テンソルに基づいて、前記第1テンソルと同型の第3テンソルを生成することと、
    前記第1テンソルと第3テンソルとを含む公開鍵であって、前記秘密鍵に対応する公開鍵を生成することと、
    前記公開鍵を公開することとを更に含む、請求項1に記載の方法。
  4. 第2電子機器に応用される署名情報検証方法であって、
    送信対象ファイル、前記送信対象ファイルの署名情報、及び、前記第2電子機器が署名情報の検証に使用する公開鍵であって、前記署名情報に関連付けられた秘密鍵に対応し、第1テンソルと第3テンソルとを含む公開鍵を取得することと、
    前記署名情報及び前記公開鍵に含まれる第1テンソルと第3テンソルに基づいて、第4テンソルを生成することと、
    前記第4テンソルに基づいて、ハッシュ関数を用いて前記送信対象ファイルにデジタル署名を行い、第2文字列を得ることと、
    前記第2文字列に基づいて前記署名情報を検証することとを含む、署名情報検証方法。
  5. 前記署名情報は、P(Pは、1より大きい正の整数である)個の文字列を含み、
    前記の前記第2文字列に基づいて前記署名情報を検証することは、
    前記第2文字列を分割してM(M=P)個の文字列を得ることと、
    前記P個の文字列と前記M個の文字列とが1対1で等しい場合、前記署名情報の検証に成功したと決定し、又は、前記P個の文字列のうちの第1目的文字列と、前記M個の文字列のうちの第2目的文字列とが等しくない場合、前記署名情報の検証に失敗したと決定することとを含み、
    ここで、前記第1目的文字列の前記P個の文字列における位置が、前記第2目的文字列の前記M個の文字列における位置に対応し、前記第1目的文字列が、前記P個の文字列のうちのいずれかの文字列である、請求項4に記載の方法。
  6. 第1電子機器に応用されるデジタル署名装置であって、
    送信対象ファイル、及び、前記第1電子機器がデジタル署名のために使用する秘密鍵であって、第1可逆行列を含む秘密鍵を取得する第1取得モジュールと、
    ランダムに生成された第2可逆行列と第1テンソルとに基づいて、前記第1テンソルと同型の第2テンソルを生成する第1生成モジュールと、
    前記第2テンソルに基づいて、ハッシュ関数を用いて前記送信対象ファイルにデジタル署名を行い、第1文字列を得る第1デジタル署名モジュールと、
    前記第1電子機器による前記送信対象ファイルに対する署名情報を、前記第1文字列、第1可逆行列及び第2可逆行列に基づいて生成する第2生成モジュールとを含む、デジタル署名装置。
  7. 前記第2生成モジュールは、具体的に、
    前記第1文字列を分割してP(Pは、1より大きい正の整数である)個の文字列を得て、前記P個の文字列、第1可逆行列及び第2可逆行列に基づいて目的行列を生成し、
    ここで、前記署名情報は、前記P個の文字列と、前記目的行列とを含む、請求項6に記載の装置。
  8. 前記第1可逆行列及び第1テンソルに基づいて、前記第1テンソルと同型の第3テンソルを生成する第3生成モジュールと、
    前記第1テンソルと第3テンソルとを含む公開鍵であって、前記秘密鍵に対応する公開鍵を生成する第4生成モジュールと、
    前記公開鍵を公開する公開モジュールとを更に含む、請求項6に記載の装置。
  9. 第2電子機器に応用される署名情報検証装置であって、
    送信対象ファイル、前記送信対象ファイルの署名情報、及び、前記第2電子機器が署名情報の検証に使用する公開鍵であって、前記署名情報に関連付けられた秘密鍵に対応し、第1テンソルと第3テンソルとを含む公開鍵を取得する第2取得モジュールと、
    前記署名情報及び前記公開鍵に含まれる第1テンソルと第3テンソルに基づいて、第4テンソルを生成する第5生成モジュールと、
    前記第4テンソルに基づいて、ハッシュ関数を用いて前記送信対象ファイルにデジタル署名を行い、第2文字列を得る第2デジタル署名モジュールと、
    前記第2文字列に基づいて前記署名情報を検証する検証モジュールとを含む、署名情報検証装置。
  10. 前記署名情報は、P(Pは、1より大きい正の整数である)個の文字列を含み、
    前記検証モジュールは、具体的に、
    前記第2文字列を分割してM(M=P)個の文字列を得て、前記P個の文字列と前記M個の文字列とが1対1で等しい場合、前記署名情報の検証に成功したと決定し、又は、前記P個の文字列のうちの第1目的文字列と、前記M個の文字列のうちの第2目的文字列とが等しくない場合、前記署名情報の検証に失敗したと決定し、
    ここで、前記第1目的文字列の前記P個の文字列における位置が、前記第2目的文字列の前記M個の文字列における位置に対応し、前記第1目的文字列が、前記P個の文字列のうちのいずれかの文字列である、請求項9に記載の装置。
  11. 少なくとも1つのプロセッサと、及び
    前記少なくとも1つのプロセッサと通信可能に接続されたメモリを含み、
    ここで、前記メモリには、前記少なくとも1つのプロセッサによって実行可能なコマンドが格納されており、前記コマンドが前記少なくとも1つのプロセッサによって実行されると、請求項1〜3のいずれか1項に記載の方法、又は請求項4〜5のいずれか1項に記載の方法の前記少なくとも1つのプロセッサによる実行を可能にする、電子機器。
  12. コンピュータコマンドが格納されている非一時的コンピュータ読み取り可能な記憶媒体であって、
    前記コンピュータコマンドは、請求項1〜3のいずれか1項に記載の方法、又は請求項4〜5のいずれか1項に記載の方法を前記コンピュータに実行させる、コンピュータコマンドが格納されている非一時的コンピュータ読み取り可能な記憶媒体。
  13. コンピュータプログラムプロダクトであって、
    前記コンピュータプログラムプロダクトが電子機器で実行されると、前記電子機器は、請求項1〜3のいずれか1項に記載の方法、又は請求項4〜5のいずれか1項に記載の方法を実行する、コンピュータプログラムプロダクト。
JP2021098421A 2020-12-17 2021-06-14 デジタル署名方法、署名情報検証方法、関連装置及び電子機器 Active JP7164672B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202011493443.0 2020-12-17
CN202011493443.0A CN112560091B (zh) 2020-12-17 2020-12-17 数字签名方法、签名信息的验证方法、相关装置及电子设备

Publications (2)

Publication Number Publication Date
JP2021145388A true JP2021145388A (ja) 2021-09-24
JP7164672B2 JP7164672B2 (ja) 2022-11-01

Family

ID=75064327

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021098421A Active JP7164672B2 (ja) 2020-12-17 2021-06-14 デジタル署名方法、署名情報検証方法、関連装置及び電子機器

Country Status (4)

Country Link
US (1) US20210377048A1 (ja)
JP (1) JP7164672B2 (ja)
CN (1) CN112560091B (ja)
AU (1) AU2021204543B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115225277A (zh) * 2022-05-20 2022-10-21 中国人民解放军国防科技大学 一种数字签名分组验证方法、系统、设备及计算机介质

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113098691B (zh) * 2021-03-25 2021-11-23 北京百度网讯科技有限公司 数字签名方法、签名信息的验证方法、相关装置及电子设备
CN113407976B (zh) * 2021-07-20 2022-08-02 北京百度网讯科技有限公司 数字签名方法、签名信息的验证方法、相关装置及电子设备
CN113407975A (zh) * 2021-07-20 2021-09-17 北京百度网讯科技有限公司 数字签名方法、签名信息的验证方法、相关装置及电子设备
CN113572594A (zh) * 2021-07-26 2021-10-29 晋商博创(北京)科技有限公司 Cpk密钥生成方法、装置、实体及密钥中心
CN114710293B (zh) * 2022-04-02 2023-06-13 建信金融科技有限责任公司 数字签名方法、装置、电子设备及存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2737370B1 (fr) * 1995-07-27 1997-08-22 Bull Cp8 Procede de communication cryptographique
CN101221566A (zh) * 2007-07-15 2008-07-16 杨筑平 信息搜索和存取授权方法
CN101383705A (zh) * 2007-09-05 2009-03-11 索尼(中国)有限公司 多变量公钥加密方法和装置及其解密方法和装置
EP2229750B1 (en) * 2008-01-02 2019-04-10 National University of Ireland, Galway A method and apparatus for authenticating a user
CN101419702B (zh) * 2008-05-30 2012-03-28 董申 用于彩色图像篡改定位与恢复的半脆弱数字水印方法
CN103490897B (zh) * 2013-09-17 2017-04-05 华南理工大学 一种多变量公钥签名/验证系统及签名/验证方法
US20150326392A1 (en) * 2014-05-06 2015-11-12 Cavalry Storage, Inc. Matrix-based cryptosystem
US10277403B2 (en) * 2016-02-25 2019-04-30 Onboard Security, Inc. Digital signature method and apparatus
US10222441B2 (en) * 2016-04-03 2019-03-05 Q Bio, Inc. Tensor field mapping
CN109672518B (zh) * 2019-03-02 2022-04-12 西安安盟智能科技股份有限公司 抗量子攻击的区块链的节点数据处理
CN110046116B (zh) * 2019-04-23 2020-08-21 上海燧原智能科技有限公司 一种张量填充方法、装置、设备及存储介质
CN110198214B (zh) * 2019-06-02 2022-02-22 四川虹微技术有限公司 身份标识生成方法、验证方法及装置
CN113378195A (zh) * 2021-06-21 2021-09-10 上海盛付通电子支付服务有限公司 一种进行加密通信的方法、设备、介质及程序产品

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JI, Z. ET AL.: "General Linear Group Action on Tensors: A Candidate for Post-Quantum Cryptography", CRYPTOLOGY EPRINT ARCHIVE, JPN6022014242, June 2019 (2019-06-01), pages 1 - 38, ISSN: 0004749157 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115225277A (zh) * 2022-05-20 2022-10-21 中国人民解放军国防科技大学 一种数字签名分组验证方法、系统、设备及计算机介质

Also Published As

Publication number Publication date
AU2021204543B2 (en) 2023-09-14
CN112560091B (zh) 2021-07-13
AU2021204543A1 (en) 2022-07-07
CN112560091A (zh) 2021-03-26
JP7164672B2 (ja) 2022-11-01
US20210377048A1 (en) 2021-12-02

Similar Documents

Publication Publication Date Title
JP7164672B2 (ja) デジタル署名方法、署名情報検証方法、関連装置及び電子機器
WO2021012574A1 (zh) 多重签名方法、签名中心、介质及电子设备
CN106487503B (zh) 基于剪裁的霍普菲尔德神经网络的多元公钥密码系统和方法
CN113098691B (zh) 数字签名方法、签名信息的验证方法、相关装置及电子设备
CN108269062B (zh) 基于h5的电子合同制作方法、装置、设备及介质
CN105794145A (zh) 服务器辅助的具有数据传输的私有集交集(psi)
US20150358167A1 (en) Certificateless Multi-Proxy Signature Method and Apparatus
EP3871365B1 (en) Computer implemented system and method for distributing shares of digitally signed data
JP7312293B2 (ja) デジタル署名方法、署名情報の検証方法、関連装置及び電子機器
CN110719172B (zh) 区块链系统中的签名方法、签名系统以及相关设备
JP2021086158A (ja) 格子ベースの暗号鍵生成方法及び電子署名方法
WO2022116175A1 (zh) 数字签名的生成方法、装置和服务器
Kahrobaei et al. Public key exchange using extensions by endomorphisms and matrices over a Galois field
TWI782701B (zh) 區塊鏈錢包的非互動式批核系統及其方法
CN113722739A (zh) 梯度提升树模型的生成方法、装置、电子设备和存储介质
JP7492508B2 (ja) コンピュータにより実施される、デジタル署名されたデータのシェアを分配するシステム及び方法
TWI783804B (zh) 基於線性整數秘密共享的共享單元生成系統及其方法
CN108040068B (zh) 基于云安全平台的快速访问控制系统
CN109361504B (zh) 一种基于区块链的多用户通信密钥协商方法
TWI737956B (zh) 基於秘密共享的門檻式簽章系統及其方法
CN113407975A (zh) 数字签名方法、签名信息的验证方法、相关装置及电子设备
CN115603911A (zh) 一种属性基加密方法、装置、电子设备及存储介质
CN114090893A (zh) 数据查询方法、系统、装置、计算机可读介质及电子设备
CN116305286A (zh) 信息处理方法、装置及相关设备
Visalakshi et al. Secure Cloud-based Access Control Optimization (SCACO)

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210614

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220323

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220412

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220711

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221004

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221020

R150 Certificate of patent or registration of utility model

Ref document number: 7164672

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150