JP4037601B2 - Digital signature method - Google Patents

Digital signature method Download PDF

Info

Publication number
JP4037601B2
JP4037601B2 JP2000301201A JP2000301201A JP4037601B2 JP 4037601 B2 JP4037601 B2 JP 4037601B2 JP 2000301201 A JP2000301201 A JP 2000301201A JP 2000301201 A JP2000301201 A JP 2000301201A JP 4037601 B2 JP4037601 B2 JP 4037601B2
Authority
JP
Japan
Prior art keywords
key
compressed
cks
digit
signature
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.)
Expired - Lifetime
Application number
JP2000301201A
Other languages
Japanese (ja)
Other versions
JP2002072875A (en
Inventor
二三夫 三田
治 渥美
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.)
Sangikyo Corp
Original Assignee
Sangikyo Corp
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 Sangikyo Corp filed Critical Sangikyo Corp
Priority to JP2000301201A priority Critical patent/JP4037601B2/en
Publication of JP2002072875A publication Critical patent/JP2002072875A/en
Application granted granted Critical
Publication of JP4037601B2 publication Critical patent/JP4037601B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、電子化された文書にデジタル署名文を付加して文書の正当性を検証するデジタル署名方法に関する。
【0002】
【発明が解決しようとする課題】
デジタル署名は、署名の利用者が文書と自分だけが知っている秘密鍵から署名文を作り、元の文書と一緒に検証者に送る。
検証者は、利用者の公開鍵と署名文と元の文書から文書の正当性を検証する。
【0003】
このとき、利用者の送る文書が長い場合、文書を短く分割してそれぞれに一々署名文をつけるのは面倒で、署名や検証に時間がかかりすぎる。
そこで、署名文をつける文書そのものではなく、文書を圧縮してそれに署名文をつけることを行う。
【0004】
文書の圧縮は、一般にハッシュ関数に任意の長さの文書を入力して出力がn未満の正整数であるような変換を行う。
ハッシュ関数は、長い文書を圧縮するものであるから、効率よく計算できるものでなければならない。
【0005】
ところが、ハッシュ関数は、改ざんを防ぐため、関数値から元の文書が求まるようなものであってはならず、一方向性が要求される。
そのため、べき乗剰余演算を用いるRSA署名や離散対数を求めるエルガマル署名などの署名方法が提案されているが、いずれも安全性を確保するための膨大な計算量を必要とする。
【0006】
そこで本発明は、一方向性を保ちながら膨大な計算量を必要としない簡単な圧縮方法によるデジタル署名方法を提案することを目的になされたものである。
【0007】
【課題を解決するための手段】
かかる目的を達成するために、本発明は以下のように構成した。
すなわち、請求項1の発明は、利用者の秘匿する秘密鍵Ksを所定の圧縮手順で圧縮秘密鍵Ks′に圧縮して公開鍵とし、
利用者が、
原文Mを前記秘密鍵Ksで暗文Cに暗号化して秘密鍵暗文CKsを組立て、
これを前記圧縮手順で圧縮秘密鍵暗文CKs’に圧縮して署名文とし、
この署名文CKs’を原文Mに付加して送信すると共に、
検証者が、
受信した原文Mを前記圧縮手順で圧縮した圧縮原文M’を、
さらに公開鍵Ks’で暗文C’に暗号化して公開鍵暗文C’Ks’を組立て、
これと前記署名文CKs’とを比較して認否を判定することを特徴とするデジタル署名方法である。
【0008】
請求項2の発明は、利用者と検証者が共通鍵Kcを共有し、
利用者と検証者が通信路を介して通信するときは、
この共通鍵Kcで前記原文Mと署名文CKs’を秘匿することを特徴とする請求項1記載のデジタル署名方法である。
【0009】
請求項3の発明は、利用者が、
前記秘密鍵暗文CKsを前記圧縮手順で途中まで圧縮した圧縮途中秘密鍵暗文CKs”を暫定署名文として送信し、
検証者が、
受信した暫定署名文CKs”を前記圧縮手順で署名文CKs’に完全圧縮して認否を判定することを特徴とする請求項1記載のデジタル署名方法である。
【0010】
請求項4の発明は、利用者が前記暫定署名文CKs”を送信するときは、
あらかじめ設定した攪乱鍵Kdで暗文C”に暗号化して攪乱鍵暫定署名文C”Kdを組立て、
この攪乱鍵暫定署名文C”Kdを前記暫定署名文CKs”に置換えて送信することを特徴とする請求項3記載のデジタル署名方法である。
【0011】
請求項5の発明は、前記圧縮手順を、
任意の長さの数字列を入力して順にn×nのマトリックスに配列するステップと、
マトリックスに配列した各行列のn桁の数字の合計値から10を法とする代数値のn+n桁の数字列を圧縮数字として出力するステップと、
前記ステップを数字列の入力の終りまで繰り返すステップと、
で構成してなる請求項1または3記載のデジタル署名方法である。
【0012】
請求項6の発明は、前記数字列を入力してマトリックスに配列するときは、
前のステップで出力したn+n桁の圧縮数字を入力した数字列に混合して配列することを特徴とする請求項5記載のデジタル署名方法である。
【0013】
請求項7の発明は、前記暗文C、C’、C”を
数字の原文と鍵の各桁の加算値から10を法とする代数値の数字列とする請求項1または4記載のデジタル署名方法である。
【0014】
請求項8の発明は、前記攪乱鍵Kdと前記暫定署名文CKs”を同じ長さとし、n×n桁の前記攪乱鍵Kdをn×nのマトリックスに配列したときに、各行列の数字の合計値が10の倍数となるように前記攪乱鍵Kdの各桁の数字を設定してなる請求項4記載のデジタル署名方法である。
【0015】
請求項9の発明は、n×n桁の前記攪乱鍵Kdをn×nのマトリックスに配列したときに、各行列の数字の合計値の2桁目が利用者の指定した数字になるように前記攪乱鍵Kdの各桁の数字を設定してなる請求項4記載のデジタル署名方法である。
【0016】
請求項10の発明は、n×n桁の前記攪乱鍵暫定署名文C”Kdをn×nのマトリックスに配列したときに、各行列の数字の合計値の2桁目が利用者の指定した数字になるように前記攪乱鍵Kdの各桁の数字を設定してなる請求項4記載のデジタル署名方法である。
【0017】
【発明の実施の形態】
以下に図面を参照して本発明の実施の形態について説明する。
図1に、本発明を実施したデジタル署名方法のブロック図を示す。
なお、実施例における各処理は、キーボード等の入力部と、メモリやCPU等より構成される演算処理部と、ディスプレイ等の出力部とより構成されたコンピュータ資源上において実行される。
また各処理は、演算処理部のメモリに記憶されたプログラムの処理構成と対応するものであり、演算処理部によって実行される。
デジタル署名方法は、送信者Sと受信者Rが共通鍵Kcを共有し、送信者Sの秘匿する秘密鍵Ksを所定の圧縮手順Pで圧縮した圧縮秘密鍵Ks’を公開鍵とする。
圧縮手順Pは、任意の長さの数字列a(k)を順にマトリックスA(n×n)に配列して圧縮数字A’(n+n)に圧縮する。
マトリックスA(n×n)のサイズは、数字列a(k)を10進数とする場合n=12〜24が適当である。
また、数字列a(k)を16進数とする場合n=18〜36が適当である。
これにより、10進数の場合24〜48桁の数字が圧縮数字A’(n+n)として出力され、16進数の場合36〜72桁の数字が圧縮数字A’(n+n)として
出力される。
【0018】
秘密鍵Ksは、コンピュータ資源を用いて署名の利用者が自分以外には秘密にする鍵を生成する。
例えば、コンピュータ資源の演算処理部は通信する情報量に相当する長さの10進や16進の乱数を生成する。
共通鍵Kcは、コンピュータ資源の演算処理部によって利用者と検証者の間で安全な通信を行うために生成される
例えば、ディフィ−ヘルマンの鍵共有プロトコルなどを使用して暗号通信のための共通鍵を生成する。
このとき、中間侵入を防止する必要があれば、利用者と検証者双方のID情報を付加して攻撃を防ぐ。
【0019】
図2のフローチャートを参照して圧縮手順Pについて説明する。
なお圧縮手順Pは、コンピュータ資源の演算処理部によって実行される。
圧縮手順Pは、まず、任意の長さの数字列a(k)を入力してマトリックスA(n×n)に配列する(ステップP01)。
数字列a(k)は、初回のみマトリックスA(n×n)の1行目から配列し、
配列は、左上隅の枠から数字列を1字ずつ右へ順次入力する。
n字入力し終わったら次の行へ同じようにn字配列する。
全ての枠に数字が埋めつくされたら配列を終了する。
【0020】
次に、マトリックスA(n×n)の各行列の数字を合計して10を法とする代数値(合計値が1桁の時はその数値、2桁以上のときは10で割った余りの数値)を圧縮数字A’(n+n)として出力する(ステップP02)。
これにより、各行列のn桁の数字を1桁に圧縮し、全体でn×n桁のマトリクスA(n×n)をn+n桁の圧縮数字A’(n+n)に圧縮する。
次に、数字列a(k)に入力する残りがあるかどうかを判定し、なければ処理を終了する(ステップP03)。
入力する残りがあれば、ステップP02で出力した圧縮数字A’(n+n)をマトリックスA(n×n)の1行目と2行目に配列してステップP01に戻る(ステップP04)。
【0021】
以下に、本発明を実施したデジタル署名方法の手順について説明する。
なお、以下に示す各手順はコンピュータ資源の演算処理部によって実行される。
送信者Sは、まず、コンピュータ資源の演算処理部を用いて原文Mを共通鍵Kcで暗文Cに暗号化して共通鍵暗文CKcを組立てる(ステップS01)。
暗号化は、原文Mと共通鍵Kcの各桁の加算値から10を法とする代数値を求めて行う。
次に、原文Mを秘密鍵Ksで暗文Cに暗号化して秘密鍵暗文CKsを組立てる(ステップS02)。
暗号化は、同様に原文Mと秘密鍵Ksの各桁の加算値から10を法とする代数値を求めて行う。
【0022】
次に、秘密鍵暗文CKsを圧縮手順Pで途中まで圧縮してn×n桁の圧縮途中秘密鍵暗文CKs”を生成し、これを暫定署名文とする(ステップS03)。
このn×n桁の暫定署名文CKs”は、完全圧縮するとn+n桁の圧縮署名文CKs′になる。
次に、暫定署名文CKs”をn×n桁の攪乱鍵Kdで暗号化して攪乱鍵暫定署名文C”Kdを組立てる(ステップS04)。
暗号化は、n×n桁の暫定署名文CKs”と攪乱鍵Kdの各桁の加算値から10を法とする代数値を求めて行う。
【0023】
攪乱鍵Kdは、n×nのマトリックスに配列したときに、各行列の数字の合計値が10の倍数となるように各桁の数字を設定する。
従って、攪乱鍵Kdを圧縮手順Pで完全圧縮すると、n+n桁の圧縮出力は全て0となる。
圧縮途中秘密鍵暗文CKs”は、秘密鍵暗文CKsの一部が検証者に知られることになるので、このように攪乱鍵Kdで圧縮途中秘密鍵暗文CKs”を暗号化する。
【0024】
また、撹乱鍵Kdの各行列の数字の合計値の2桁目の数はnの桁数が12以上であれば0〜9(16進数ではnが18以上で0〜F)の範囲を設定できるので、利用者だけが知る任意の秘密数を指定できる。
この秘密数は、検証者や第三者が知り得ないので、検証者や第三者によって不正が行われた場合の証明の根拠になる。
【0025】
さらに、攪乱鍵Kdで暗号化した攪乱鍵暫定署名文C”Kdの各行列の数字の合計値の2桁目の数も同様に0〜9(16進数では0〜F)の範囲を設定できるので、検証者が確認できる任意の秘密数を指定することができる。
この秘密数は、あらかじめ検証者に知らせておくことにより、認証などに利用することができる。
【0026】
次に、攪乱鍵暫定署名文C”Kdを共通鍵Kcで暗号化して共通鍵攪乱鍵暫定署名文C”KdKcを組立てる(ステップS05)。
暗号化は、n×n桁の攪乱鍵暫定署名文C”Kdと共通鍵Kcの各桁の加算値から10を法とする代数値を求めて行う。
【0027】
最後に、共通鍵暗文CKcに共通鍵攪乱鍵暫定署名文C”KdKcを付加して受信者Rに送信する(ステップS06)。
受信者Rは、まず、受信した共通鍵暗文CKcをコンピュータ資源の演算処理部を用いて共通鍵Kcで翻訳して原文Mに復号する(ステップR01)。
次に、原文Mを圧縮手順Pで圧縮して圧縮原文M’を生成する(ステップR02)。
次に、圧縮原文M’を公開鍵Ks’で暗文C’に暗号化して公開鍵圧縮暗文C’Ks’を組立てる(ステップR03)。
暗号化は、圧縮原文M’と公開鍵Ks’の各桁の加算値から10を法とする代数値を求めて行う。
【0028】
次に、受信した共通鍵攪乱鍵暫定署名文C”KdKcを共通鍵Kcで翻訳して攪乱鍵暫定署名文C”Kdに復号する(ステップR04)。
次に、n×n桁の攪乱鍵暫定署名文C”Kdを圧縮手順Pで完全圧縮してn+n桁の圧縮署名文CKs’を生成する(ステップR05)。
【0029】
このとき攪乱鍵Kdは、前述したように、圧縮手順Pで完全圧縮するとn+n桁の圧縮出力は全て0となるので、結果的に消去される。
また、暫定署名文CKs”は、完全圧縮するとn+n桁の圧縮署名文CKs’になる。
従って、攪乱鍵暫定署名文C”Kdを完全圧縮すると、圧縮署名文CKs’と等価になる。
最後に、公開鍵圧縮暗文C’Ks’と圧縮署名文CKs’を比較して一致すれば利用者の正当性を認証し、一致しなければ否認する(ステップR06)。
【0030】
【発明の効果】
以上説明したように、本発明のデジタル署名方法は、マトリックス演算と10を法とする加算による圧縮と暗号化を行い、秘密鍵を圧縮して公開鍵とし、利用者が圧縮した原文を秘密鍵で暗号化して署名文を作成し、検証者が圧縮した原文を公開鍵で暗号化して署名文と比較する。
【0031】
従って、本発明によれば、圧縮と暗号化の順序を入れ替えても10を法とする加算の計算結果が同じになるので、べき乗剰余演算のような複雑で計算負荷の大きい演算処理をしなくても、簡単な方法で一方向性演算が可能になる。
これにより、認証効率が向上すると共に、コンピュータ資源を小型化して経済性を高めることができる。
また、マトリックスのサイズを大きくして一方向性を高めることにより、所望の安全性を確保できる。
【図面の簡単な説明】
【図1】本発明を実施したデジタル署名方法のブロック図である。
【図2】本発明を実施した圧縮手順のフローチャートである。
【符号の説明】
A マトリックス
A′ 圧縮数字
P 圧縮手順
R 受信者
S 送信者
a 数字列
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a digital signature method for verifying the authenticity of a document by adding a digital signature sentence to an electronic document.
[0002]
[Problems to be solved by the invention]
In the digital signature, the signature user creates a signature sentence from the document and a private key known only to him and sends it to the verifier together with the original document.
The verifier verifies the validity of the document from the user's public key, signature text, and original document.
[0003]
At this time, if the document sent by the user is long, it is troublesome to divide the document into short parts and attach a signature sentence to each one, and it takes too much time for signature and verification.
Therefore, instead of the document itself to which the signature sentence is attached, the document is compressed and the signature sentence is attached thereto.
[0004]
In document compression, a document having an arbitrary length is generally input to a hash function, and conversion is performed so that the output is a positive integer less than n.
Since the hash function compresses a long document, it must be able to be calculated efficiently.
[0005]
However, in order to prevent falsification, the hash function should not be such that the original document can be obtained from the function value, and one-way property is required.
For this reason, signature methods such as an RSA signature using a power-residue calculation and an ElGamal signature for obtaining a discrete logarithm have been proposed, but all of them require a huge amount of calculation for ensuring safety.
[0006]
Therefore, the present invention has been made for the purpose of proposing a digital signature method based on a simple compression method that does not require an enormous amount of calculation while maintaining unidirectionality.
[0007]
[Means for Solving the Problems]
In order to achieve this object, the present invention is configured as follows.
That is, the invention of claim 1 compresses the secret key Ks concealed by the user into a compressed secret key Ks ′ by a predetermined compression procedure to obtain a public key,
The user
Encrypt the original text M into the secret text C with the secret key Ks to assemble the secret key secret text CKs,
This is compressed into the compressed secret key code CKs ′ by the compression procedure to form a signature text,
The signature text CKs ′ is added to the original text M and transmitted,
The verifier
A compressed original text M ′ obtained by compressing the received original text M by the compression procedure,
Furthermore, the public key Ks' is encrypted into the secret text C 'and the public key secret text C'Ks' is assembled.
This is a digital signature method characterized by comparing the signature sentence CKs ′ with the signature sentence CKs ′ to determine whether or not it is accepted.
[0008]
In the invention of claim 2, the user and the verifier share the common key Kc,
When a user and a verifier communicate via a communication channel,
2. The digital signature method according to claim 1, wherein the original text M and the signature text CKs ′ are concealed by the common key Kc.
[0009]
In the invention of claim 3, the user can
Sending the secret key cipher CKs ", which is compressed in the middle of the compression procedure by the compression procedure, as a provisional signature sentence;
The verifier
2. The digital signature method according to claim 1, wherein the received provisional signature sentence CKs ″ is completely compressed into a signature sentence CKs ′ by the compression procedure to determine whether or not the signature is accepted.
[0010]
In the invention of claim 4, when the user transmits the provisional signature CKs ",
Encrypt the secret text C "with the preset perturbation key Kd to assemble the perturbation key provisional signature text C" Kd,
4. The digital signature method according to claim 3, wherein the perturbation key provisional signature sentence C "Kd is replaced with the provisional signature sentence CKs" and transmitted.
[0011]
The invention of claim 5 provides the compression procedure as follows:
Inputting a string of numbers of arbitrary length and arranging them in an n × n matrix in order;
Outputting an algebraic value n + n digit number string modulo 10 as a compressed number from the total value of n digits of each matrix arranged in a matrix;
Repeating the steps until the end of the input of the number sequence;
4. The digital signature method according to claim 1 or 3, comprising:
[0012]
In the invention of claim 6, when the numeric strings are input and arranged in a matrix,
6. The digital signature method according to claim 5, wherein the n + n compressed numbers output in the previous step are mixed and arranged in the input number string.
[0013]
According to a seventh aspect of the present invention, the digital text according to claim 1 or 4, wherein the memorized text C, C ′, C ″ is an algebraic numeric string modulo 10 from the sum of the original text of the number and each digit of the key. It is a signing method.
[0014]
In the invention of claim 8, when the perturbation key Kd and the provisional signature sentence CKs ″ have the same length, and the n × n digits of the perturbation key Kd are arranged in an n × n matrix, the sum of the numbers in each matrix 5. The digital signature method according to claim 4, wherein each digit of the perturbation key Kd is set so that the value is a multiple of 10.
[0015]
The invention of claim 9 is such that when the n × n digits of the perturbation key Kd are arranged in an n × n matrix, the second digit of the total value of the numbers in each matrix is the number designated by the user. 5. The digital signature method according to claim 4, wherein a numerical value of each digit of the disturbance key Kd is set.
[0016]
In the invention of claim 10, when the n × n digits of the perturbed key provisional signature sentence C ″ Kd are arranged in an n × n matrix, the second digit of the total value of each matrix is designated by the user. 5. The digital signature method according to claim 4, wherein each digit of the perturbation key Kd is set to be a number.
[0017]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below with reference to the drawings.
FIG. 1 shows a block diagram of a digital signature method embodying the present invention.
Each process in the embodiment is executed on a computer resource including an input unit such as a keyboard, an arithmetic processing unit configured by a memory, a CPU, and the like, and an output unit such as a display.
Each processing corresponds to the processing configuration of the program stored in the memory of the arithmetic processing unit, and is executed by the arithmetic processing unit.
In the digital signature method, a sender S and a receiver R share a common key Kc, and a compressed secret key Ks ′ obtained by compressing a secret key Ks concealed by the sender S by a predetermined compression procedure P is used as a public key.
In the compression procedure P, a numeric string a (k) having an arbitrary length is sequentially arranged in a matrix A (n × n) and compressed into a compressed number A ′ (n + n).
As for the size of the matrix A (n × n), n = 12 to 24 is appropriate when the numeric string a (k) is a decimal number.
Further, when the numeric string a (k) is a hexadecimal number, n = 18 to 36 is appropriate.
Accordingly, in the case of a decimal number, a 24-48 digit number is output as the compressed number A ′ (n + n), and in the case of a hexadecimal number, a 36-72 digit number is output as the compressed number A ′ (n + n).
[0018]
The secret key Ks uses a computer resource to generate a key that the signature user keeps other than himself / herself.
For example, the computer resource calculation processing unit generates a decimal or hexadecimal random number having a length corresponding to the amount of information to be communicated.
The common key Kc is generated in order to perform secure communication between the user and the verifier by the computer resource calculation processing unit .
For example, a common key for cryptographic communication is generated using a Diffie-Hellman key agreement protocol.
At this time, if it is necessary to prevent intermediate intrusion, ID information of both the user and the verifier is added to prevent the attack.
[0019]
The compression procedure P will be described with reference to the flowchart of FIG.
The compression procedure P is executed by a computer resource calculation processing unit.
In the compression procedure P, first, a numeric string a (k) having an arbitrary length is input and arranged in a matrix A (n × n) (step P01).
The numerical sequence a (k) is arranged from the first row of the matrix A (n × n) only for the first time,
The array is sequentially input to the right one by one from the upper left corner frame.
When n characters have been entered, n characters are arranged in the same manner to the next line.
When all the boxes are filled with numbers, the array is finished.
[0020]
Next, the numbers of each matrix of the matrix A (n × n) are summed up and the algebraic value modulo 10 (the value when the total value is 1 digit, the remainder when divided by 10 when it is 2 digits or more) (Numerical value) is output as the compressed number A ′ (n + n) (step P02).
As a result, the n-digit number of each matrix is compressed to one digit, and the entire n × n-digit matrix A (n × n) is compressed into n + n-digit compressed numbers A ′ (n + n).
Next, it is determined whether or not there is a remaining input in the numeric string a (k), and if not, the process ends (step P03).
If there is a remaining input, the compressed numbers A ′ (n + n) output in step P02 are arranged in the first and second rows of the matrix A (n × n), and the process returns to step P01 (step P04).
[0021]
The procedure of the digital signature method embodying the present invention will be described below.
In addition, each procedure shown below is performed by the calculation processing part of a computer resource.
First, the sender S encrypts the original text M into the secret text C using the common key Kc by using the computer resource calculation processing unit, and assembles the common key secret text CKc (step S01).
The encryption is performed by obtaining an algebraic value modulo 10 from the added value of each digit of the original text M and the common key Kc.
Next, the original text M is encrypted into the secret text C with the secret key Ks to assemble the secret key secret text CKs (step S02).
Similarly, the encryption is performed by obtaining an algebraic value modulo 10 from the added value of each digit of the original text M and the secret key Ks.
[0022]
Next, the secret key cryptogram CKs is compressed halfway by the compression procedure P to generate an n × n-digit compressed mid-course secret key cryptogram CKs ″, which is used as a provisional signature text (step S03).
The n × n-digit provisional signature text CKs ″ becomes an n + n-digit compressed signature text CKs ′ when completely compressed.
Next, the provisional signature sentence CKs ″ is encrypted with the n × n digit disturbance key Kd to assemble the disturbance key provisional signature sentence C ″ Kd (step S04).
Encryption is performed by obtaining an algebraic value modulo 10 from the added value of each digit of the n × n-digit provisional signature text CKs ″ and the perturbation key Kd.
[0023]
When the disturbance key Kd is arranged in an n × n matrix, the digit of each digit is set so that the total value of the numbers in each matrix is a multiple of ten.
Therefore, when the disturbance key Kd is completely compressed by the compression procedure P, the n + n-digit compressed output is all zero.
Since the verifier verifies a part of the secret key cipher CKs ″ during the compression, the secret key cipher CKs ″ during the compression is thus encrypted with the disruption key Kd.
[0024]
Also, the number of the second digit of the total value of the numbers of each matrix of the disturbance key Kd is set to a range of 0 to 9 if n is 12 or more (n is 18 or more and 0 to F in hexadecimal). You can specify any number of secrets that only the user knows.
Since this verifier or third party cannot know this secret number, it becomes the basis for proof when fraud is performed by the verifier or third party.
[0025]
Further, the number of the second digit of the total value of each matrix of the disturbance key provisional signature sentence C ″ Kd encrypted with the disturbance key Kd can also be set in the range of 0 to 9 (0 to F in hexadecimal). Therefore, an arbitrary secret number that can be confirmed by the verifier can be designated.
This secret number can be used for authentication or the like by informing the verifier in advance.
[0026]
Next, the perturbation key provisional signature sentence C ″ Kd is encrypted with the common key Kc to assemble the common key perturbation key provisional signature sentence C ″ KdKc (step S05).
The encryption is performed by obtaining an algebraic value modulo 10 from the added value of each digit of the n × n digit perturbation key provisional signature text C ″ Kd and the common key Kc.
[0027]
Finally, the common key disruptive key provisional signature sentence C ″ KdKc is added to the common key secret sentence CKc and transmitted to the receiver R (step S06).
The recipient R first translates the received common key secret code CKc with the common key Kc using a computer resource processing unit and decrypts it into the original text M (step R01).
Next, the original text M is compressed by the compression procedure P to generate a compressed original text M ′ (step R02).
Next, the compressed original text M ′ is encrypted into the encrypted text C ′ with the public key Ks ′, and the public key compressed encrypted text C′Ks ′ is assembled (step R03).
Encryption is performed by obtaining an algebraic value modulo 10 from the added value of each digit of the compressed original text M ′ and the public key Ks ′.
[0028]
Next, the received common key disruptive key provisional signature sentence C ″ KdKc is translated with the common key Kc and decrypted into the disruption key provisional signature sentence C ″ Kd (step R04).
Next, the n × n digit disturbed key provisional signature text C ″ Kd is completely compressed by the compression procedure P to generate an n + n digit compressed signature text CKs ′ (step R05).
[0029]
At this time, as described above, when the compression key Pd is completely compressed by the compression procedure P, the n + n-digit compressed output is all 0, and is therefore erased as a result.
Further, the provisional signature sentence CKs ″ becomes an n + n-digit compressed signature sentence CKs ′ when completely compressed.
Therefore, when the perturbation key provisional signature sentence C ″ Kd is completely compressed, it becomes equivalent to the compressed signature sentence CKs ′.
Finally, if the public key compressed cipher text C′Ks ′ and the compressed signature text CKs ′ are compared and matched, the validity of the user is authenticated, and if not matched, the user is denied (step R06).
[0030]
【The invention's effect】
As described above, the digital signature method of the present invention performs compression and encryption by matrix operation and addition modulo 10, compresses the private key as a public key, and converts the original text compressed by the user into the private key. The signature text is created by encrypting the original text, and the original text compressed by the verifier is encrypted with the public key and compared with the signature text.
[0031]
Therefore, according to the present invention, even if the order of compression and encryption is changed, the calculation result of addition modulo 10 is the same, so that it is not necessary to perform complicated and heavy calculation processing such as exponentiation However, it is possible to perform unidirectional calculation by a simple method.
As a result, the authentication efficiency can be improved, and the computer resources can be reduced in size to improve the economic efficiency.
Further, the desired safety can be ensured by increasing the size of the matrix to enhance the unidirectionality.
[Brief description of the drawings]
FIG. 1 is a block diagram of a digital signature method embodying the present invention.
FIG. 2 is a flowchart of a compression procedure embodying the present invention.
[Explanation of symbols]
A Matrix A 'Compression number P Compression procedure R Recipient S Sender a Number string

Claims (7)

利用者側が、電子化された文書にデジタル署名文を付加して送信し、受信した検証者側が文書の正当性を検証するデジタル署名方法において、
署名の利用者の演算処理部が、通信する情報量に相当する長さの秘密鍵Ksを生成し、これをn×nのマトリックスに配列して各行列の合計値を求める所定の圧縮手順で圧縮秘密鍵Ks’に圧縮して公開鍵とし、
前記所定の圧縮手順は、任意の長さの数字列をn×nのマトリックスに順次入力して配列するステップと、前記マトリックスに配列した各行列の合計値から10を法とする代数値、すなわち合計値が1桁のときはその数字、2桁以上のときは10で割った余りの数値のn+n桁の数字列を圧縮数字として出力するステップと、前のステップで出力したn+n桁の圧縮数字を次のn×nのマトリックスに配列した後、残りの数字列を順次入力して配列し、これにつき前記と同様の圧縮数字を出力するステップを数字列の終わりまで繰り返すものであり、 さらに利用者側の演算処理部が、原文Mと前記秘密鍵Ksの各桁の加算値ごとに10を法とする代数値を求めて秘密鍵暗文CKsを組立て、これを前記所定の圧縮手順で途中まで圧縮してn×n桁の圧縮途中秘密鍵暗文CKs’’に圧縮して暫定署名文とし、
この暫定署名文CKs”を原文Mに付加して送信し、
検証者側の演算処理部が、受信した暫定署名文CKs”を前記所定の圧縮手順でn+n桁の署名文CKs’に完全圧縮すると共に、
受信した原文Mを前記利用者側の演算処理部において前記所定の圧縮手順で圧縮処理して圧縮原文M’を生成し、
さらに当該圧縮原文M’と公開鍵Ks’各桁の加算値ごとに10を法とする代数値を求めて公開鍵暗文C’Ks’を組立て、
当該C’Ks’と前記署名文CKs’とを比較して一致すれば利用者の正当性を認証し、一致しなければ否認するよう構成したことを特徴とするデジタル署名方法。
In a digital signature method in which a user side adds a digital signature text to a digitized document and transmits the digital document, and the received verifier verifies the validity of the document,
The processing unit of the signature user generates a secret key Ks having a length corresponding to the amount of information to be communicated, arranges it in a matrix of n rows × n columns , and obtains a total value of each matrix. Compressed into compressed private key Ks' in the procedure to make public key,
The predetermined compression procedure includes a step of sequentially inputting a numeric string of an arbitrary length into an n × n matrix and arranging it, and an algebraic value modulo 10 from the total value of each matrix arranged in the matrix, that is, When the total value is 1 digit, the number is 2 digits. When it is 2 digits or more, the remainder is divided by 10 n + n digit string as a compressed digit, and n + n compressed digits output in the previous step after you arranged in a matrix of the next n × n, arranged sequentially enter the remaining digit string, which repeats the step of outputting the same compression numbers per thereto until the end of the digit string, further use arithmetic processing unit of the finisher side, assembled private key Kurabun CKs seeking algebraic value modulo 10 for each sum value of each digit of the original sentence M secret key Ks, this with the predetermined compression procedure N × n compressed halfway And provisional signed statement to the middle of compression compression to secret key Kurabun CKs '',
The provisional signature text CKs ”is added to the original text M and transmitted.
The arithmetic processing unit on the verifier side completely compresses the received provisional signature sentence CKs ″ into the n + n-digit signature sentence CKs ′ by the predetermined compression procedure,
And compressed in the predetermined compression procedure generates compressed original M 'the received original text M by have you to the arithmetic processing unit of the user side,
Further assembled public key Kurabun C'Ks' seeking algebraic value modulo 10 for each sum of the digits of the compressed original M 'and the public key Ks',
Compared the C'Ks 'and the signature document CKs' and, if they match then authenticate the validity of the user, a digital signature method, characterized by being configured to deny If they do not match.
利用者側が、電子化された文書にデジタル署名文を付加して送信し、受信した検証者側が文書の正当性を検証するデジタル署名方法において、In a digital signature method in which a user side adds a digital signature text to a digitized document and transmits the digital document, and the received verifier verifies the validity of the document,
署名の利用者の演算処理部が、通信する情報量に相当する長さの秘密鍵Ksを生成し、これをn行×n列のマトリックスAに配列して各行列の合計値を求める所定の圧縮手順で圧縮秘密鍵Ks’に圧縮して公開鍵とし、A processing unit of the signature user generates a secret key Ks having a length corresponding to the amount of information to be communicated, and arranges this in a matrix A of n rows × n columns to obtain a total value of each matrix. Compressed into a compressed private key Ks ′ in the compression procedure to make a public key,
前記所定の圧縮手順は、入力数列の数字を順に、マトリックスA(n×n)につき1行目からn行目まで、各行n個ずつ配列し、各行各列ごとに数字を合計し、それぞれ10を法とする代数値、すなわち合計値が1桁のときはその数字、2桁以上のときは10で割った余りの数値を求めることによりn+n個の圧縮数字A’を得て、さらに入力数列に残りがあれば、前記圧縮数字A’(n+n)の最初のn個をマトリックスA(n×n)のIn the predetermined compression procedure, the numbers of the input sequence are arranged in order from the first row to the n-th row of the matrix A (n × n), and n rows are arranged, and the numbers are summed for each row and each column. N + n compressed numbers A ′ are obtained by calculating the algebraic value modulo, that is, the number when the total value is 1 digit, and the remainder when divided by 10 when the total value is 2 digits or more. , The first n of the compressed numbers A ′ (n + n) are replaced by the matrix A (n × n). 11 行目、残りのn個を2行目に配置し、前記入力数列の残りの数字のうちの最初のn個を3行目に配置し、これにつき前記と同様の圧縮操作により新たな圧縮数字A’(n+n)を得るというステップを繰り返すものであり、In the row, the remaining n are placed in the second row, and the first n of the remaining numbers in the input number sequence are placed in the third row. Repeat the step of obtaining A ′ (n + n),
さらに利用者側の演算処理部が、原文Mと前記秘密鍵Ksの各桁の加算値につきそれぞれ10を法とする代数値を求めて秘密鍵暗文CKsを組立て、これを前記所定の圧縮手順で途中まで圧縮してn×n桁の圧縮途中秘密鍵暗文CKs”に圧縮して暫定署名文とし、Further, the calculation processing unit on the user side obtains an algebraic value modulo 10 for each added value of the original text M and the secret key Ks, and assembles the secret key cipher CKs, which is used as the predetermined compression procedure. In the middle and compressed to n × n digits of compressed secret key code CKs ”as a provisional signature sentence,
この暫定署名文CKs”を原文Mに付加して送信し、The provisional signature text CKs ”is added to the original text M and transmitted.
検証者側の演算処理部が、受信した暫定署名文CKs”を前記所定の圧縮手順でn+n桁の署名文CKs’に完全圧縮すると共に、The arithmetic processing unit on the verifier side completely compresses the received provisional signature sentence CKs ″ into the n + n-digit signature sentence CKs ′ by the predetermined compression procedure,
受信した原文Mを前記利用者側の演算処理部において前記所定の圧縮手順で圧縮処理して圧縮原文M’を生成し、The received original text M is compressed in the predetermined compression procedure in the user-side arithmetic processing unit to generate a compressed original text M ′,
さらに当該圧縮原文M’と公開鍵Ks’の各桁の加算値につきそれぞれ10を法とする代数値を求めて公開鍵暗文C’Ks’を組立て、Further, an algebraic value modulo 10 is obtained for each added value of the compressed original text M ′ and the public key Ks ′, and a public key secret text C′Ks ′ is assembled.
当該C’Ks’と前記署名文CKs’とを比較して、一致すれば利用者の正当性を認証し、一致しなければ否認するよう構成したことを特徴とするデジタル署名方法。A digital signature method, wherein the C′Ks ′ and the signature text CKs ′ are compared, and if they match, the validity of the user is authenticated, and if they do not match, the digital signature method is rejected.
利用者側の演算処理部と検証者側の演算処理部が通信路を介して通信するときは、
利用者側の演算処理部または検証者側の演算処理部が、利用者側の演算処理部と検証者側の演算処理部の双方があらかじめ共有する共通鍵Kcを用い
利用者側の演算処理部が、この共通鍵Kcで前記原文Mと暫定署名文CKs”を暗号化して送信し、
これを受信した検証者側の演算処理部が、前記共通鍵Kcで原文Mと暫定署名文CKs”に復号化するよう構成したことを特徴とする請求項1又は請求項2記載のデジタル署名方法。
When the arithmetic processing unit on the user side and the arithmetic processing unit on the verifier side communicate via the communication path,
The calculation processing unit on the user side or the calculation processing unit on the verifier side uses the common key Kc shared in advance by both the calculation processing unit on the user side and the calculation processing unit on the verifier side,
The calculation processing unit on the user side encrypts and transmits the original text M and the provisional signature text CKs ”with the common key Kc,
3. The digital signature method according to claim 1 or 2 , wherein the processor on the verifier side that receives this decrypts the original text M and the provisional signature text CKs "with the common key Kc. .
利用者側の演算処理部が前記暫定署名文CKs”を送信するときは、
この暫定署名文CKs”と、あらかじめ設定したn×n桁の攪乱鍵Kdとの各桁の加算値から代数値を求めて暗文C”に暗号化して攪乱鍵暫定署名文C”Kdを組立て、
前記暫定署名文CKs”をこの攪乱鍵暫定署名文C”Kdに置換えて送信するように構成したことを特徴とする請求項1又は請求項2記載のデジタル署名方法。
When the arithmetic processing unit on the user side transmits the provisional signature CKs ”,
An algebraic value is obtained from the added value of each digit of this provisional signature sentence CKs "and a preset n × n digit perturbation key Kd, and encrypted into a secret text C" to assemble a perturbation key provisional signature sentence C "Kd. ,
3. The digital signature method according to claim 1, wherein the provisional signature sentence CKs ″ is transmitted by replacing the perturbation key provisional signature sentence C ″ Kd.
前記攪乱鍵Kdと前記暫定署名文CKs”を同じ長さとし、n×n桁の前記攪乱鍵Kdをn×nのマトリックスに配列したときに、各行列の数字の合計値が10の倍数となるように前記攪乱鍵Kdの各桁の数字を設定してなる請求項4記載のデジタル署名方法。When the perturbation key Kd and the provisional signature sentence CKs ″ have the same length and n × n digits of the perturbation key Kd are arranged in an n × n matrix, the total value of the numbers in each matrix is a multiple of 10. 5. The digital signature method according to claim 4 , wherein a numerical value of each digit of the perturbation key Kd is set as described above. n×n桁の前記攪乱鍵Kdをn×nのマトリックスに配列したときに、
各行列の数字の合計値の2桁目が利用者の指定した数字になるように前記攪乱鍵Kdの各桁の数字を設定してなる請求項4記載のデジタル署名方法。
When the n × n digits of the perturbation key Kd are arranged in an n × n matrix,
5. The digital signature method according to claim 4 , wherein each digit of the perturbation key Kd is set so that the second digit of the total value of each matrix is a number designated by the user.
n×n桁の前記攪乱鍵暫定署名文C”Kdをn×nのマトリックスに配列したときに、各行列の数字の合計値の2桁目が利用者の指定した数字になるように前記攪乱鍵Kdの各桁の数字を設定してなる請求項4記載のデジタル署名方法。When the n × n digits of the perturbation key provisional signature text C ″ Kd are arranged in an n × n matrix, the perturbation is performed so that the second digit of the total value of each matrix becomes the number designated by the user. 5. A digital signature method according to claim 4 , wherein a number of each digit of the key Kd is set.
JP2000301201A 2000-08-28 2000-08-28 Digital signature method Expired - Lifetime JP4037601B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000301201A JP4037601B2 (en) 2000-08-28 2000-08-28 Digital signature method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000301201A JP4037601B2 (en) 2000-08-28 2000-08-28 Digital signature method

Publications (2)

Publication Number Publication Date
JP2002072875A JP2002072875A (en) 2002-03-12
JP4037601B2 true JP4037601B2 (en) 2008-01-23

Family

ID=18782778

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000301201A Expired - Lifetime JP4037601B2 (en) 2000-08-28 2000-08-28 Digital signature method

Country Status (1)

Country Link
JP (1) JP4037601B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002132148A (en) * 2000-10-26 2002-05-09 Sangikyou:Kk Compression method for digital signature
CN102142072A (en) * 2010-11-15 2011-08-03 华为软件技术有限公司 Encryption processing and decryption processing method and device of electronic files
CN114499860A (en) * 2022-03-22 2022-05-13 深圳壹账通智能科技有限公司 Signature public key compression method and device, computer equipment and storage medium

Also Published As

Publication number Publication date
JP2002072875A (en) 2002-03-12

Similar Documents

Publication Publication Date Title
US8775794B2 (en) System and method for end to end encryption
US8799664B2 (en) Small public-key based digital signatures for authentication
US6298153B1 (en) Digital signature method and information communication system and apparatus using such method
US8589693B2 (en) Method for two step digital signature
Aufa et al. Security system analysis in combination method: RSA encryption and digital signature algorithm
EP1383265A1 (en) Method for generating proxy signatures
JPH10510692A (en) Computer assisted exchange method of encryption key between user computer unit U and network computer unit N
CN104104517A (en) Method and system for verification of one time password
WO2008031301A1 (en) A method for the point to point online identity authenticaiton
CN109951276B (en) Embedded equipment remote identity authentication method based on TPM
Shakiba Security analysis for chaotic maps-based mutual authentication and key agreement using smart cards for wireless networks
US7360238B2 (en) Method and system for authentication of a user
CN114257366A (en) Information homomorphic processing method, device, equipment and computer readable storage medium
CN111756722B (en) Multi-authorization attribute-based encryption method and system without key escrow
Juniawan RSA implementation for data transmission security in BEM chairman E-voting Android based application
Patel et al. Secure and privacy enhanced authentication framework for cloud computing
JP4037601B2 (en) Digital signature method
Sinnhofer et al. Patterns to establish a secure communication channel
EP3041165A1 (en) A method for the verification of the correct content of an encoded message
Surya et al. Single sign on mechanism using attribute based encryption in distributed computer networks
Zaw et al. User authentication in SSL handshake protocol with zero-knowledge proof
CN116170131B (en) Ciphertext processing method, ciphertext processing device, storage medium and trusted execution device
Soni et al. A User Convenient Secure Authentication Scheme for Accessing e-Governance Services
Verheul SECDSA: Mobile signing and authentication under classical``sole control''
JP3862397B2 (en) Information communication system

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040120

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040315

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040928

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041124

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20050113

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050113

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20050301

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20050624

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070625

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070903

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071101

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4037601

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101109

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111109

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121109

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131109

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term