JP4886614B2 - Message authenticator generation device, message authenticator verification device, message authenticator generation method, message authenticator verification method, program, and recording medium - Google Patents

Message authenticator generation device, message authenticator verification device, message authenticator generation method, message authenticator verification method, program, and recording medium Download PDF

Info

Publication number
JP4886614B2
JP4886614B2 JP2007165141A JP2007165141A JP4886614B2 JP 4886614 B2 JP4886614 B2 JP 4886614B2 JP 2007165141 A JP2007165141 A JP 2007165141A JP 2007165141 A JP2007165141 A JP 2007165141A JP 4886614 B2 JP4886614 B2 JP 4886614B2
Authority
JP
Japan
Prior art keywords
padding
bit string
bit
message authenticator
key
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 - Fee Related
Application number
JP2007165141A
Other languages
Japanese (ja)
Other versions
JP2009005163A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2007165141A priority Critical patent/JP4886614B2/en
Publication of JP2009005163A publication Critical patent/JP2009005163A/en
Application granted granted Critical
Publication of JP4886614B2 publication Critical patent/JP4886614B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、データに対する認証子を生成または検証するための、メッセージ認証子生成装置、メッセージ認証子検証装置、メッセージ認証子生成方法、メッセージ認証子検証方法、およびそれらの方法を用いたプログラムと記録媒体に関する。   The present invention relates to a message authenticator generating device, a message authenticator verifying device, a message authenticator generating method, a message authenticator verifying method, and a program and recording using these methods, for generating or verifying an authenticator for data. It relates to the medium.

メッセージ認証では、メッセージ認証コードGは、kビットの鍵Kと任意のビット長のデータMからメッセージ認証子τを生成する(τ←G(M))。送信者と受信者、またはデータ作成者とデータ利用者とは、メッセージ認証コードGと鍵Kとを共有することで、次のように認証やデータ内容の検証を行うことができる。
送信者またはデータ作成者は、メッセージ認証子生成装置で、鍵KとデータMからメッセージ認証子τを生成する。そして、データMとメッセージ認証子とを送信または保存する。受信者またはデータ利用者は、メッセージ認証子検証装置で、鍵KとデータMからメッセージ認証子τ’を生成する。そして、τとτ’とを比較する。τ=τ’ならば、送信者またはデータ作成者の認証、およびデータ内容の整合性が検証されたとする。τ≠τ’ならば、送信者またはデータ作成者の詐称、もしくはデータの改ざんがあると判断する。
In message authentication, the message authentication code G generates a message authenticator τ from a k-bit key K and data M having an arbitrary bit length (τ ← G K (M)). By sharing the message authentication code G and the key K, the sender and the receiver or the data creator and the data user can perform authentication and verify the data contents as follows.
The sender or the data creator generates a message authenticator τ from the key K and the data M with the message authenticator generating device. Then, the data M and the message authenticator are transmitted or stored. The receiver or the data user generates a message authenticator τ ′ from the key K and the data M by the message authenticator verification device. Then, τ and τ ′ are compared. If τ = τ ′, it is assumed that the authentication of the sender or the data creator and the consistency of the data contents are verified. If τ ≠ τ ′, it is determined that the sender or the data creator is misrepresented or the data is falsified.

メッセージ認証コードGは、ハッシュ関数Hを用いて鍵KとデータMからメッセージ認証子τを生成することが多い。また、ハッシュ関数Hは、マークル・ダンガード強化関数Πとマークル・ダンガード反復による関数Fから構成されるものがある。マークル・ダンガード強化関数Πは、任意のビット長のビット列(“0”または“1”が並んだ列)をあらかじめ定めたブロック長dの整数倍に変換する。マークル・ダンガード反復による関数Fは、圧縮関数fを繰り返し用いることでブロック長dの整数倍のビット列を、あらかじめ定めたビット長nのビット列に変換する。具体的には、以下のような関数である。   The message authentication code G often generates a message authenticator τ from a key K and data M using a hash function H. Some hash functions H are composed of a Merkle Dungard enhancement function Π and a Merkle Dungard iteration function F. The Merkle Dungard enhancement function Π converts a bit string having an arbitrary bit length (a string in which “0” or “1” is arranged) into an integer multiple of a predetermined block length d. The function F by Merkle Dungard iteration converts a bit string that is an integral multiple of the block length d into a bit string of a predetermined bit length n by repeatedly using the compression function f. Specifically, the function is as follows.

v←H(D) (1)
D‖π←Π(D) (2)
v←F(D‖π) (3)
←f(vi−1‖m) (4)
ただし、vはハッシュ関数Hの出力であって、nビットのビット列である。Dはハッシュ関数への入力であって、任意のビット長のビット列である。“‖”はビット列の結合を意味する記号、πはビット列の長さを調整するために付加される付加ビットである。vはnビットのビット列であって、圧縮関数fをi回繰り返したときの圧縮結果である。mはビット列M‖πをdビットずつ区切った場合のi番目のビット列を示しており、dビットのビット列である。ビット列M‖πのビット長がdのL倍とすると、式(4)をL回繰り返したときの圧縮結果vが式(3)の出力vとなる。なお、初期のビット列vには、あらかじめ定めた初期ベクトルVが用いられる。つまり、式(3)は式(4)をL回繰り返すことで実現できる。また、式(2)と(3)との組合せによって、ハッシュ関数Hが構成される。
v ← H (D) (1)
D‖π ← Π (D) (2)
v ← F (D‖π) (3)
v i ← f (v i−1 ‖m i ) (4)
However, v is the output of the hash function H and is a bit string of n bits. D is an input to the hash function, and is a bit string having an arbitrary bit length. “‖” Is a symbol indicating a combination of bit strings, and π is an additional bit added to adjust the length of the bit string. v i is a bit string of n bits, and is a compression result when the compression function f is repeated i times. m i represents the i-th bit string when the bit string M‖π is divided by d bits, and is a d-bit bit string. Assuming that the bit length of the bit string MLπ is L times d, the compression result v L when Expression (4) is repeated L times is the output v of Expression (3). Note that the initial bit string v 0, the initial vector V is used a predetermined. That is, Expression (3) can be realized by repeating Expression (4) L times. Further, the hash function H is configured by a combination of the expressions (2) and (3).

従来のメッセージ認証コードには、ハッシュ関数Hを2回適用して安全性を高めたもの(非特許文献1)、2つの鍵を用いてハッシュ関数Hは1回適用したもの(非特許文献2)、その2つの鍵を同一のものとし、ハッシュ関数は1回適用したもの(非特許文献3)などがある。   In the conventional message authentication code, the hash function H is applied twice to improve security (Non-Patent Document 1), and the hash function H is applied once using two keys (Non-Patent Document 2). ), The two keys are the same, and the hash function is applied once (Non-Patent Document 3).

非特許文献1のメッセージ認証コードG(M)は、次式のようにメッセージ認証子τを求める。

Figure 0004886614
ただし、IPADとOPADは、dビットのあらかじめ定められた定数である。このメッセージ認証コードは、圧縮関数の擬似乱数性に基づく耐偽造安全性証明が可能である(非特許文献4)。 The message authentication code G K (M) of Non-Patent Document 1 calculates a message authenticator τ as shown in the following equation.
Figure 0004886614
However, IPAD and OPAD are d-bit predetermined constants. This message authentication code can be forged security-proof based on the pseudo-randomness of the compression function (Non-Patent Document 4).

非特許文献2のメッセージ認証コードGK,K’(M)は、次式のようにメッセージ認証子τを求める。
τ←H(K‖P‖M‖K’) (6)
ただし、Pはあらかじめ定められたパディング定数である。このメッセージ認証コードは、圧縮関数の擬似乱数性に基づく耐偽造安全性証明が可能である(非特許文献5)。しかし、鍵を効率的に回復される攻撃法が知られており、ぜい弱である(非特許文献6)。
The message authentication code G K, K ′ (M) of Non-Patent Document 2 calculates a message authenticator τ as shown in the following equation.
τ ← H (K‖P‖M‖K ') (6)
Here, P is a predetermined padding constant. This message authentication code can be forged security-proof based on the pseudo-randomness of the compression function (Non-Patent Document 5). However, attack methods that can recover keys efficiently are known and are weak (Non-Patent Document 6).

非特許文献3のメッセージ認証コードG(M)は、次式のようにメッセージ認証子τを求める。
τ←H(K‖P‖M‖K) (7)
ただし、Pはあらかじめ定められたパディング定数である。
M. Bellare, R. Canetti, H. Krawczyk, “Keying hash functions for message authentication,” CRYPTO 1996, LNCS vol.1109, pp.1-15, Springer, Heidelberg (1996). G. Tsudik, “Message authentication with one-way hash functions,” ACM Computer Communication Review 22(5) pp.29-38 (1992). P. Metzger, W. A. Simpson, “IP authentication using keyed MD5,” RFC 1828, IETF (1995). M. Bellare, “New proofs for NMAC and HMAC: Security without collision-resistance,” CRYPTO 2006, LNCS vol.4117, pp.602-619, Springer, Heidelberg (2006). M. Bellare, R. Canetti, H. Krawczyk, “Pseudorandom functions revisited: The cascade construction and its concrete security,” IEEE Symposium on Foundations of Computer Science, pp.514-523 (1996). B. Preneel, P. C. van Oorschot, “On the security of two MAC algorithms,” EUROCRYPT 1996, LNCS vol.1070, pp.19-32, Springer, Heidelberg (1996).
The message authentication code G K (M) of Non-Patent Document 3 calculates a message authenticator τ as shown in the following equation.
τ ← H (K‖P‖M‖K) (7)
Here, P is a predetermined padding constant.
M. Bellare, R. Canetti, H. Krawczyk, “Keying hash functions for message authentication,” CRYPTO 1996, LNCS vol.1109, pp.1-15, Springer, Heidelberg (1996). G. Tsudik, “Message authentication with one-way hash functions,” ACM Computer Communication Review 22 (5) pp.29-38 (1992). P. Metzger, WA Simpson, “IP authentication using keyed MD5,” RFC 1828, IETF (1995). M. Bellare, “New proofs for NMAC and HMAC: Security without collision-resistance,” CRYPTO 2006, LNCS vol.4117, pp.602-619, Springer, Heidelberg (2006). M. Bellare, R. Canetti, H. Krawczyk, “Pseudorandom functions revisited: The cascade construction and its concrete security,” IEEE Symposium on Foundations of Computer Science, pp.514-523 (1996). B. Preneel, PC van Oorschot, “On the security of two MAC algorithms,” EUROCRYPT 1996, LNCS vol.1070, pp.19-32, Springer, Heidelberg (1996).

非特許文献1のメッセージ認証コードは、鍵は1つだけでよく、圧縮関数の擬似乱数性に基づく耐偽造安全性証明が可能であり、鍵回復攻撃に対しても安全である。しかし、圧縮関数を用いる繰り返し回数が、3回分増える(圧縮関数を用いる計算が3回分追加される)。また、ハッシュ関数を2回呼び出さなければならないという問題があった。
非特許文献2のメッセージ認証コードは、圧縮関数の擬似乱数性に基づく耐偽造安全性証明が可能であり、圧縮関数を用いる計算の追加は1〜2回で済み、ハッシュ関数の呼び出しも1回でよい。しかし、鍵を2つ必要とし、鍵回復攻撃に対して安全でないという問題があった。
The message authentication code of Non-Patent Document 1 requires only one key, and can provide a forgery-proof security proof based on the pseudo-randomness of the compression function, and is safe against key recovery attacks. However, the number of repetitions using the compression function is increased by three (addition of three calculations using the compression function). There is also a problem that the hash function has to be called twice.
The message authentication code of Non-Patent Document 2 can provide forgery-proof security proof based on the pseudo-randomness of the compression function, and the calculation using the compression function can be added once or twice, and the hash function is called once. It's okay. However, there is a problem that it requires two keys and is not secure against a key recovery attack.

非特許文献3のメッセージ認証コードは、鍵は1つでよく、圧縮関数を用いる計算の追加は1〜2回で済み、ハッシュ関数の呼び出しも1回でよい。しかし、耐偽造安全性の証明は知られていない。また、鍵回復攻撃に対して安全でないという問題があった。
このような状況から、本発明の目的は、鍵が1つでよく、圧縮関数を用いる計算の追加は1〜2回で済み、ハッシュ関数の呼び出しが1回でよいメッセージ認証子生成装置、メッセージ認証子検証装置、メッセージ認証子生成方法、メッセージ認証子検証方法を実現することである。
The message authentication code of Non-Patent Document 3 may have only one key, and the calculation using the compression function may be added once or twice, and the hash function may be called once. However, no proof of anti-counterfeit safety is known. There is also a problem that it is not secure against key recovery attacks.
From such a situation, the object of the present invention is to provide a message authenticator generating apparatus and message that require only one key, add a calculation using a compression function once or twice, and call a hash function only once. An authenticator verification device, a message authenticator generation method, and a message authenticator verification method are realized.

本発明のメッセージ認証子生成装置は、少なくともパディング部と付加ビット生成部とハッシュ部を備え、鍵K(ビット長k)とデータM(ビット長m)とを入力、メッセージ認証子τ(ビット長n)を出力とする。パディング部は、第1パディングP(ビット長p)、第2パディングP(ビット長p)、第3パディングP(ビット長p)を、少なくとも1つは鍵KまたはデータMを用いて定める。付加ビット生成部は、鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπを結合したビット列が、当該メッセージ認証子生成装置で使用するハッシュ関数内の圧縮関数fで圧縮されるビット長dの整数倍となるように、付加ビットπを生成する。ハッシュ部は、鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπの順番で結合されたビット列をハッシュ関数で変換した結果を、メッセージ認証子τとして出力する。 The message authenticator generating apparatus of the present invention includes at least a padding part, an additional bit generating part, and a hash part, and inputs a key K (bit length k) and data M (bit length m), and a message authenticator τ (bit length). Let n) be the output. The padding unit includes a first padding P 1 (bit length p 1 ), a second padding P 2 (bit length p 2 ), and a third padding P 3 (bit length p 3 ), at least one of which is a key K or data M Determined using The additional bit generation unit uses a bit string obtained by combining the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, the third padding P 3 , and the additional bit π in the message authenticator generation device. The additional bits π are generated so as to be an integral multiple of the bit length d compressed by the compression function f in the hash function to be performed. The hash unit converts the result of converting a bit string combined in the order of the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, the third padding P 3 , and the additional bit π with a hash function, Output as message authenticator τ.

なお、「付加ビット生成部は、鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπを結合したビット列が、当該メッセージ認証子生成装置で使用するハッシュ関数内の圧縮関数fで圧縮されるビット長dの整数倍となるように、付加ビットπを生成する。」とは、鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπの順番で結合されたビット列を、実際に作成するものに限定されない。例えば、付加ビット生成部は、鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングPのビット長の情報だけから付加ビットπを求めればよい。また、「ハッシュ部は、鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπの順番で結合されたビット列をハッシュ関数で変換した結果を、メッセージ認証子τとして出力する。」も、鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπの順番で結合されたビット列を、実際に作成するものに限定されない。例えば、ハッシュ部は、ビット列取り出し手段と圧縮手段とを備えればよい。この場合、ビット列取り出し手段は、結合したビット列を作成せずに、鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπの順番でdビットずつ取り出せばよい。また、圧縮手段は、取り出したビット列と、初期ベクトルVまたは前回の圧縮関数fによる圧縮結果とを入力として、圧縮関数fによる圧縮結果を求めればよい。そして、ビット列取り出し手段でのビット列の取り出しと圧縮手段での圧縮を繰り返し、鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπのすべてのビット列が圧縮に使用されたときの圧縮結果をメッセージ認証子τとすればよい。このような処理によって、実際には結合したビット列を作成しなくても、結合したビット列をハッシュ関数で変換した結果を得ることができる。 “The additional bit generation unit generates a message authenticator by generating a bit string combining the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, the third padding P 3 , and the additional bit π. The additional bit π is generated so as to be an integral multiple of the bit length d compressed by the compression function f in the hash function used in the apparatus. ”Means that the key K, the first padding P 1 , the data M, the first It is not limited to the one that actually creates a bit string that is combined in the order of 2 paddings P 2 , key K, third padding P 3 , and additional bits π. For example, the additional bit generation unit may obtain the additional bit π from only the information on the bit length of the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, and the third padding P 3 . In addition, “the hash part converts a bit string combined in the order of key K, first padding P 1 , data M, second padding P 2 , key K, third padding P 3 , and additional bits π with a hash function. The result is output as a message authenticator τ ”in the order of key K, first padding P 1 , data M, second padding P 2 , key K, third padding P 3 , and additional bit π. The bit string is not limited to what is actually created. For example, the hash unit may include a bit string extraction unit and a compression unit. In this case, the bit string extraction means does not create a combined bit string, but in the order of key K, first padding P 1 , data M, second padding P 2 , key K, third padding P 3 , and additional bit π. What is necessary is just to take out d bits at a time. Further, the compression means may obtain the compression result by the compression function f by using the extracted bit string and the initial vector V or the compression result by the previous compression function f as inputs. Then, the extraction of the bit string by the bit string extraction means and the compression by the compression means are repeated, and the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, the third padding P 3 , and the additional bits π The compression result when all the bit strings are used for compression may be the message authenticator τ. By such processing, it is possible to obtain a result obtained by converting the combined bit string using a hash function without actually generating the combined bit string.

パディング部は以下に示す条件の中からいくつかの条件を満足するように、第1パディングP、第2パディングP、第3パディングPを定める。
(1)データMに第2パディングPを結合したビット列から、データMを一意に求めることができるという条件。
(2)k+p+m+pがdの倍数であるという条件。
(3)k+pがdであるという条件。
(4)第1パディングPがいかなる付加ビットπとも異なり、第3パディングPをなしとするという条件。
The padding section defines the first padding P 1 , the second padding P 2 , and the third padding P 3 so as to satisfy some conditions from the following conditions.
(1) the condition that a bit string obtained by combining the second padding P 2 in the data M, can be obtained data M uniquely.
(2) A condition that k + p 1 + m + p 2 is a multiple of d.
(3) A condition that k + p 1 is d.
(4) The condition that the first padding P 1 is different from any additional bits π and the third padding P 3 is absent.

(5)第1パディングPのビット列が第3パディングPのビット列の一部または全部とならない、かつ、第3パディングPのビット列が第1パディングPのビット列の一部または全部とならないという条件。
(6)データMをdビットずつに区切った時に最後に余るビット列をビット列M(ただし、Mのビット長mは0からd−1)とし、鍵K、第3パディングP、前記ビット列M、付加ビットπを結合したビット列のビット長がd以下となるビット長mの最大値を最大ビット長mLmaxとし、あらかじめ定めた0以上mLmax以下の整数を整数Σとする。また、いかなる付加ビットπおよびいかなるビット列Mに対しても、第1パディングPは、第3パディングの第1候補P’と付加ビットπとを結合したビット列とは異なる、かつ、第1パディングPは、第3パディングの第2候補P”とビット列Mと付加ビットπとを結合したビット列とは異なるように、第1パディングPと第3パディングの第1候補P’と第3パディングの第2候補P”とを定める。そして、ビット長mが整数Σより大きい場合には、第1パディングP、第2パディングPを用いると共に、第3パディングPとして第1候補P’を用いる。ビット長mが整数Σ以下の場合には、第1パディングPを用いると共に、第2パディングPをなしとし、第3パディングPとして第2候補P”にビット列Mを結合させたビット列を用いるという条件。
(5) The bit string of the first padding P 1 does not become part or all of the bit string of the third padding P 3 , and the bit string of the third padding P 3 does not become part or all of the bit string of the first padding P 1 That condition.
(6) A bit string M L (where M L has a bit length m L from 0 to d−1) when the data M is divided into d bits, and the key K, the third padding P 3 , bit string M L, the bit length of the bit string obtained by combining the additional bits π is the maximum value of the bit length m L equal to or less than d and the maximum bit length m Lmax, the following integer 0 or m Lmax a predetermined integer sigma. Also, for any additional bits π and any bit string M L, first padding P 1 is different from the bit string obtained by combining the added bit π first candidate P 3 'of the third padding, and the first padding P 1, the third is different from in the padding second candidate P 3 "and bit string M L and the additional bits π bit string that combines the first padding P 1 and the first candidate P 3 of the third padding ' And a second candidate P 3 ″ for the third padding. When the bit length m L is larger than the integer Σ, the first padding P 1 and the second padding P 2 are used, and the first candidate P 3 ′ is used as the third padding P 3 . If the bit length m L is equal to or less than an integer Σ, along with using the first padding P 1, a second padding P 2 and No, to bind the bit string M L to the second candidate P 3 "as the third padding P 3 The condition that a bit string is used.

(7)第1パディングPと第3パディングPとが異なるという条件。
また、本発明のメッセージ認証子検証装置は、前述のメッセージ認証子生成装置と比較部とを備える。メッセージ認証子検証装置内のメッセージ認証子生成装置は、データMと鍵Kからメッセージ認証子τ’を生成する。比較部は、メッセージ認識子τとメッセージ認証子τ’とを比較してデータMの検証結果を出力する。
(7) first padding P 1 and the third padding P 3 and the condition that differ.
The message authenticator verification device of the present invention includes the above-described message authenticator generation device and a comparison unit. The message authenticator generation device in the message authenticator verification device generates a message authenticator τ ′ from the data M and the key K. The comparison unit compares the message recognizer τ and the message authenticator τ ′ and outputs a verification result of the data M.

本発明のメッセージ認証子生成装置はこのような構成なので、鍵が1つでよく、圧縮関数を用いる計算の追加は原則1〜2回で済み、ハッシュ関数の呼び出しが1回でよい。
さらに、第1パディングP、第2パディングP、第3パディングPを、上述のいくつかの条件を満たすように決定すれば、圧縮関数の擬似乱数性に基づく耐偽造安全性証明が可能であり、鍵回復攻撃に対する安全性を確保できる。例えば、(1)〜(4)の条件を満たせば、演算量を少なくしながら、安全性を確保できる。(1)と(2)と(5)の条件を満たせば、さらに演算量を少なくできる。(1)〜(3)と(6)の条件を満たせば、さらに圧縮率の低い圧縮関数を用いることができる。(1)〜(3)と(7)の条件を満たせば、(1)〜(4)の条件を満たす場合と同等の効果が得られる。このように、これらの条件は組み合わせることができる。
Since the message authenticator generation device of the present invention has such a configuration, only one key is required, and the calculation using the compression function may be added only once or twice in principle, and the hash function may be called once.
Furthermore, if the first padding P 1 , the second padding P 2 , and the third padding P 3 are determined so as to satisfy the above-mentioned several conditions, the anti-counterfeit safety proof based on the pseudo-randomness of the compression function is possible. Therefore, security against key recovery attacks can be secured. For example, if the conditions (1) to (4) are satisfied, safety can be ensured while reducing the amount of calculation. If the conditions (1), (2), and (5) are satisfied, the amount of calculation can be further reduced. If the conditions (1) to (3) and (6) are satisfied, a compression function having a lower compression rate can be used. If the conditions (1) to (3) and (7) are satisfied, the same effects as those obtained when the conditions (1) to (4) are satisfied can be obtained. Thus, these conditions can be combined.

[第1実施形態]
第1実施形態では、本発明のメッセージ認証子生成装置とメッセージ認証子生成方法を示す。図1に本発明のメッセージ認証子生成装置の機能構成例を示す。また、図2に本発明のメッセージ認証子生成装置の処理フローを示す。メッセージ認証子生成装置100は、パディング部110、付加ビット生成部120、ハッシュ部130、記録部190を備え、鍵K(ビット長k)とデータM(ビット長m)とが入力、メッセージ認証子τ(ビット長n)が出力である。
[First Embodiment]
In the first embodiment, a message authenticator generating apparatus and a message authenticator generating method of the present invention are shown. FIG. 1 shows an example of the functional configuration of a message authenticator generation device of the present invention. FIG. 2 shows a processing flow of the message authenticator generation device of the present invention. The message authenticator generating apparatus 100 includes a padding unit 110, an additional bit generating unit 120, a hash unit 130, and a recording unit 190. A key K (bit length k) and data M (bit length m) are input, and a message authenticator. τ (bit length n) is the output.

パディング部110は、第1パディングP(ビット長p)、第2パディングP(ビット長p)、第3パディングP(ビット長p)を定める(S110)。付加ビット生成部120は、鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπを結合したビット列が、使用するハッシュ関数内の圧縮関数fで圧縮されるビット長dの整数倍となるように、付加ビットπを生成する(S120)。ハッシュ部130は、鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπの順番で結合されたビット列をハッシュ関数で変換した結果を、メッセージ認証子τとして出力する(S130)。記録部190は、鍵K、データM、第1パディングP、第2パディングP、第3パディングP、付加ビットπなどを記録する。なお、記録部190を備えず、その他の構成部でこれらの情報を記録してもかまわない。 The padding unit 110 determines a first padding P 1 (bit length p 1 ), a second padding P 2 (bit length p 2 ), and a third padding P 3 (bit length p 3 ) (S110). The additional bit generation unit 120 compresses the hash sequence used by the bit string that combines the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, the third padding P 3 , and the additional bit π. An additional bit π is generated so as to be an integral multiple of the bit length d compressed by the function f (S120). The hash unit 130 converts the result of converting a bit string combined in the order of the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, the third padding P 3 , and the additional bits π with a hash function. The message authenticator τ is output (S130). The recording unit 190 records the key K, data M, first padding P 1 , second padding P 2 , third padding P 3 , additional bits π, and the like. Note that the recording unit 190 may not be provided, and these pieces of information may be recorded by other components.

なお、付加ビット生成部120とハッシュ部130は、鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπを結合したビット列を作成するとは限らない。例えば、付加ビット生成部120は、鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングPのビット長の情報だけから付加ビットπを求めれば、結合したビット列を作成する必要は無い。また、例えば、ハッシュ部130に、図1に点線で示すように、ビット列取り出し手段131と圧縮手段132とを備えさせる。この場合の処理フローを、図2に点線で示す。この処理では、ビット列取り出し手段131は、結合したビット列を作成せずに、鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπの順番でdビットずつ取り出す(S131)。圧縮手段132は、取り出したビット列と、初期ベクトルVまたは前回の圧縮関数fによる圧縮結果とを入力として、圧縮関数fによる圧縮結果を求める(S132)。そして、鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπのすべてのビット列が圧縮に使用されたかを確認する(S133)。ステップS133がNoの場合は、ビット列取り出し手段131でのビット列の取り出しと圧縮手段での圧縮を繰り返す(ビット列取り出し手段131で次のdビットを取り出し、処理を続ける)。ステップS133がYesの場合は、このときの圧縮手段132の圧縮結果をメッセージ認証子τとする。 When the additional bit generation unit 120 and the hash unit 130 create a bit string that combines the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, the third padding P 3 , and the additional bit π. Is not limited. For example, if the additional bit generation unit 120 obtains the additional bit π from only the bit length information of the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, and the third padding P 3 , There is no need to create a bit string. Further, for example, the hash unit 130 is provided with a bit string extraction unit 131 and a compression unit 132 as indicated by a dotted line in FIG. The processing flow in this case is shown by a dotted line in FIG. In this processing, the bit string extraction means 131 does not create a combined bit string, but the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, the third padding P 3 , and the additional bits π. D bits are extracted in order (S131). The compression means 132 receives the extracted bit string and the initial vector V or the compression result by the previous compression function f as input, and obtains the compression result by the compression function f (S132). Then, it is confirmed whether all the bit strings of the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, the third padding P 3 , and the additional bit π are used for compression (S133). When step S133 is No, the extraction of the bit string by the bit string extraction unit 131 and the compression by the compression unit are repeated (the next d bits are extracted by the bit string extraction unit 131 and the processing is continued). When step S133 is Yes, the compression result of the compression means 132 at this time is set as the message authenticator τ.

図3に、あらかじめ定めた条件にしたがって第1パディングPを定めるステップ(S111)、第2パディングPを定めるステップ(S112)、第3パディングPを定めるステップ(S113)を示した処理フローの例を示す。パディング部110は、例えば、以下に示す条件の例の中からいくつかの条件を満足するように、第1パディングP、第2パディングP、第3パディングPを定める。 3, step (S111) for determining a first padding P 1 in accordance with a predetermined condition, a second step of determining the padding P 2 (S112), the process flow diagram illustrating step (S113) for determining a third padding P 3 An example of For example, the padding unit 110 determines the first padding P 1 , the second padding P 2 , and the third padding P 3 so as to satisfy some conditions from the following example conditions.

(1)データMに第2パディングPを結合したビット列から、データMを一意に求めることができるという条件。
(2)k+p+m+pがdの倍数であるという条件。
(3)k+pがdであるという条件。
(4)第1パディングPがいかなる付加ビットπとも異なり、第3パディングPをなしとするという条件。
(5)第1パディングPのビット列が第3パディングPのビット列の一部または全部とならない、かつ、第3パディングPのビット列が第1パディングPのビット列の一部または全部とならないという条件。
(1) the condition that a bit string obtained by combining the second padding P 2 in the data M, can be obtained data M uniquely.
(2) A condition that k + p 1 + m + p 2 is a multiple of d.
(3) A condition that k + p 1 is d.
(4) The condition that the first padding P 1 is different from any additional bits π and the third padding P 3 is absent.
(5) The bit string of the first padding P 1 does not become part or all of the bit string of the third padding P 3 , and the bit string of the third padding P 3 does not become part or all of the bit string of the first padding P 1 That condition.

(6)データMをdビットずつに区切った時に最後に余るビット列をビット列M(ただし、Mのビット長mは0からd−1)とし、鍵K、第3パディングP、前記ビット列M、付加ビットπを結合したビット列のビット長がd以下となるビット長mの最大値を最大ビット長mLmaxとし、あらかじめ定めた0以上mLmax以下の整数を整数Σとする。また、いかなる付加ビットπおよびいかなるビット列Mに対しても、第1パディングPは、第3パディングの第1候補P’と付加ビットπとを結合したビット列とは異なる、かつ、第1パディングPは、第3パディングの第2候補P”とビット列Mと付加ビットπとを結合したビット列とは異なるように、第1パディングPと第3パディングの第1候補P’と第3パディングの第2候補P”とを定める。そして、ビット長mが整数Σより大きい場合には、第1パディングP、第2パディングPを用いると共に、第3パディングPとして第1候補P’を用いる。ビット長mが整数Σ以下の場合には、第1パディングPを用いると共に、第2パディングPをなしとし、第3パディングPとして第2候補P”にビット列Mを結合させたビット列を用いるという条件。 (6) A bit string M L (where M L has a bit length m L from 0 to d−1) when the data M is divided into d bits, and the key K, the third padding P 3 , bit string M L, the bit length of the bit string obtained by combining the additional bits π is the maximum value of the bit length m L equal to or less than d and the maximum bit length m Lmax, the following integer 0 or m Lmax a predetermined integer sigma. Also, for any additional bits π and any bit string M L, first padding P 1 is different from the bit string obtained by combining the added bit π first candidate P 3 'of the third padding, and the first padding P 1, the third is different from in the padding second candidate P 3 "and bit string M L and the additional bits π bit string that combines the first padding P 1 and the first candidate P 3 of the third padding ' And a second candidate P 3 ″ for the third padding. When the bit length m L is larger than the integer Σ, the first padding P 1 and the second padding P 2 are used, and the first candidate P 3 ′ is used as the third padding P 3 . If the bit length m L is equal to or less than an integer Σ, along with using the first padding P 1, a second padding P 2 and No, to bind the bit string M L to the second candidate P 3 "as the third padding P 3 The condition that a bit string is used.

(7)第1パディングPと第3パディングPとが異なるという条件。
第1パディングP、第2パディングP、第3パディングPを、上記のいくつかの条件を満たすように決定すれば、圧縮関数の擬似乱数性に基づく耐偽造安全性証明が可能であり、鍵回復攻撃に対する安全性を確保できる。
(7) first padding P 1 and the third padding P 3 and the condition that differ.
If the first padding P 1 , the second padding P 2 , and the third padding P 3 are determined so as to satisfy the above-mentioned several conditions, the anti-counterfeit safety proof based on the pseudorandomness of the compression function is possible. Security against key recovery attacks can be secured.

条件の組み合わせの例1
1つ目の組み合わせの例は、(1)〜(4)の条件を満たすことである。この例では、データMをdビットずつに区切った時に最後に余るビット列をビット列M(ただし、Mのビット長mは0からd−1)とする。この条件の具体例としては、第1パディングPを(d−k)個の“0”が並んだビット列、第2パディングPを“1”と(d−m−1)個の“0”が並んだビット列、第3パディングPをなしと定める例がある。
Condition combination example 1
An example of the first combination is to satisfy the conditions (1) to (4). In this example, the last remaining bit string when the data M is divided into d bits is a bit string M L (where M L has a bit length m L of 0 to d−1). As a specific example of this condition, the first padding P 1 is a bit string in which (d−k) “0” s are arranged, the second padding P 2 is “1” and (d−m L −1) “ 0 "bit string aligned, there is an example for determining that no third padding P 3.

この例のイメージを図4に示す。圧縮手段132は、図1に示したように1つであるが、図4では繰り返し回数が分かるように、圧縮手段132を繰り返し回数だけ並べて示している。なお、圧縮手段を示す番号の添え字は、何回目の繰り返しに相当するのかを示している。繰り返しの1回目では、あらかじめ定められた初期ベクトルV(nビット)と、鍵Kと第1パディングPを結合したビット列(dビット)とが、圧縮手段132に入力される。そして、繰り返しの2回目では、1回目の圧縮結果(nビット)と、データMをdビットずつに区切った最初のビット列Mとが、圧縮手段132に入力される。このように繰り返し処理が行われ、L+1回目の繰り返しでは、L回目の圧縮結果(nビット)と、ビット列Mと第2パディングPを結合したビット列(dビット)が、圧縮手段132入力される。L+2回目の繰り返しでは、L+1回目の圧縮結果(nビット)と、鍵Kと付加ビットπを結合したビット列(dビット)が、圧縮手段132入力される。そして、L+2回目の圧縮結果が、メッセージ認証子τとして、ハッシュ部130から出力される。 An image of this example is shown in FIG. The number of the compression means 132 is one as shown in FIG. 1, but in FIG. 4, the compression means 132 is shown side by side by the number of repetitions so that the number of repetitions can be understood. Note that the number suffix indicating the compression means indicates the number of repetitions. In the first iteration, a predetermined initial vector V (n bits) and a bit string (d bits) obtained by combining the key K and the first padding P 1 are input to the compression unit 132. In the second repetition, the first compression result (n bits) and the first bit string M 1 obtained by dividing the data M into d bits are input to the compression unit 132. Thus repetition processing is performed, the L + 1 th iteration, L th compression results (n bits), the bit string M L and the bit string obtained by combining the second padding P 2 (d bits) is compressed unit 132 inputs The In the (L + 2) th repetition, the compression result 132 is input to the L + 1 compression result (n bits) and a bit string (d bits) obtained by combining the key K and the additional bit π. The compression result of the (L + 2) th time is output from the hash unit 130 as the message authenticator τ.

このように、(1)〜(4)の条件を満たせば、鍵は1つでよく、圧縮関数を用いる計算の追加は2回で済み、ハッシュ関数の呼び出しも1回でよい。また、この条件の組み合わせの場合は、圧縮関数の擬似乱数性に基づく耐偽造安全性証明が可能であり、鍵回復攻撃に対しても安全である。   As described above, if the conditions (1) to (4) are satisfied, the number of keys may be one, the calculation using the compression function may be added twice, and the hash function may be called once. Further, in the case of this combination of conditions, forgery-proof security proof based on the pseudo-randomness of the compression function is possible, and it is safe against key recovery attacks.

条件の組み合わせの例2
2つ目の組み合わせの例は、(1)と(2)と(5)の条件を満たすことである。この例では、鍵K、第1パディングP、データMを結合したビット列を、dビットずつに区切った時に最後に余るビット列をビット列M(ただし、Mのビット長mは0からd−1)とする。この条件の具体例としては、次のような定め方がある。第1パディングPを“0”とする。第2パディングPを、(k+1+m)がdより小さいときは“1”と(d−k−m−2)個の“0”が並んだビット列、(k+1+m)がd以上のときは“1”と(d−m−1)個の“0”が並んだビット列とする。第3パディングPを“1”とする。
Condition combination example 2
An example of the second combination is to satisfy the conditions (1), (2), and (5). In this example, the key K, the first padding P 1, a bit string obtained by combining the data M, the bit string a bit string intolerable last time separated one by d bits M L (however, the bit length of M L m L from 0 d -1). A specific example of this condition is as follows. The first padding P 1 is set to "0". The second padding P 2 is a bit string in which “1” and (d−k−m−2) “0” are arranged when (k + 1 + m) is smaller than d, and “1” when (k + 1 + m) is greater than or equal to d. ”And (d−m L −1)“ 0 ”are arranged in a bit string. The third padding P 3 is set to "1".

この例のイメージを図5に示す。図5の(a)は、(k+1+m)がdより小さいときの処理を示している。この場合は、繰り返しの1回目では、あらかじめ定められた初期ベクトルV(nビット)と、鍵Kと第1パディングPとデータMと第2パディングPを結合したビット列(dビット)とが、圧縮手段132に入力される。繰り返しの2回目では、1回目の圧縮結果(nビット)と、鍵Kと第3パディングPと付加ビットπが結合したビット列(dビット)が、圧縮手段132入力される。そして、2回目の圧縮結果が、メッセージ認証子τとして、ハッシュ部130から出力される。 An image of this example is shown in FIG. FIG. 5A shows processing when (k + 1 + m) is smaller than d. In this case, in the first iteration, the predetermined initial vector V (n bits), a key K and a first padding P 1 and the data M and the bit string obtained by combining the second padding P 2 (d bits) but , And input to the compression means 132. The repeated second and first compression result (n bits), key K and the third padding P 3 to the bit string added bit π bound (d bits) are compression means 132 inputs. Then, the second compression result is output from the hash unit 130 as the message authenticator τ.

図5の(b)は、(k+1+m)がd以上のときの処理を示している。この場合は、繰り返しの1回目では、あらかじめ定められた初期ベクトルV(nビット)と、鍵Kと第1パディングPとデータMの最初の(d−k−1)ビットMを結合したビット列(dビット)とが、圧縮手段132に入力される。繰り返しの2回目では、1回目の圧縮結果(nビット)と、データMの次のdビットMとが、圧縮手段132に入力される。このように繰り返し処理が行われ、L回目の繰り返しでは、L−1回目の圧縮結果(nビット)と、ビット列Mと第2パディングPを結合したビット列(dビット)が、圧縮手段132入力される。L+1回目の繰り返しでは、L回目の圧縮結果(nビット)と、鍵Kと第3パディングPと付加ビットπを結合したビット列(dビット)が、圧縮手段132入力される。そして、L+1回目の圧縮結果が、メッセージ認証子τとして、ハッシュ部130から出力される。 FIG. 5B shows processing when (k + 1 + m) is equal to or greater than d. In this case, in the first iteration, bound to a predetermined initial vector V (n bits), key K and the first of the first padding P 1 and the data M to (d-k-1) bits M 1 A bit string (d bits) is input to the compression means 132. In the second repetition, the first compression result (n bits) and the next d bits M 2 of the data M are input to the compression means 132. Thus repetition processing is performed, the L iteration, L-1 th compression results (n bits), the bit string M L and the bit string obtained by combining the second padding P 2 (d bits), compression means 132 Entered. In L + 1 th iteration, L th compression results (n bits), key K and the third padding P 3 a bit string obtained by combining the additional bit [pi (d bits) are compression means 132 inputs. Then, the L + 1-th compression result is output from the hash unit 130 as the message authenticator τ.

このように、(1)と(2)と(5)の条件を満たせば、鍵は1つでよく、圧縮関数を用いる計算の追加は1回で済み、ハッシュ関数の呼び出しも1回でよい。したがって、1つ目の組み合わせの例よりも、さらに演算量を少なくできる。また、この条件の組み合わせの場合も、圧縮関数の擬似乱数性に基づく耐偽造安全性証明が可能であり、鍵回復攻撃に対しても安全である。   As described above, if the conditions (1), (2), and (5) are satisfied, one key is required, and the calculation using the compression function is added once, and the hash function is called only once. . Therefore, the amount of calculation can be further reduced as compared with the first combination example. Also in the case of this combination of conditions, forgery-proof security proof based on the pseudo-randomness of the compression function is possible, and it is safe against key recovery attacks.

条件の組み合わせの例3
3つ目の組み合わせの例は、(1)〜(3)と(6)の条件を満たすことである。この例では、データMを結合したビット列を、dビットずつに区切った時に最後に余るビット列をビット列M(ただし、Mのビット長mは0からd−1)とする。この条件の具体例としては、次のような定め方がある。ビット長mが0より大きい場合には、第1パディングPを(d−k)個の“0”が並んだビット列、第2パディングPを“1”と(d−m−1)個の“0”が並んだビット列、第3パディングPを“0”とする。ビット長mが0の場合には、第1パディングPを(d−k)個の“0”が並んだビット列、第2パディングPをなし、第3パディングPを“1”とする。
Condition combination example 3
An example of the third combination is to satisfy the conditions (1) to (3) and (6). In this example, a bit string obtained by combining the data M, the bit string a bit string intolerable last time separated one by d bits M L (however, the bit length m L of M L from 0 d-1) a. A specific example of this condition is as follows. When the bit length m L is larger than 0, the first padding P 1 is a bit string in which (d−k) “0” s are arranged, and the second padding P 2 is “1” and (d−m L −1 ) A bit string in which “0” s are arranged, and the third padding P 3 is “0”. When the bit length m L is 0, the first padding P 1 is a bit string in which (d−k) “0” s are arranged, the second padding P 2 is formed, and the third padding P 3 is set to “1”. To do.

この例のイメージを図6に示す。図6の(a)は、ビット長mが0より大きい場合の処理を示している。この場合は、繰り返しの1回目では、あらかじめ定められた初期ベクトルV(nビット)と、鍵Kと第1パディングPを結合したビット列(dビット)とが、圧縮手段132に入力される。繰り返しの2回目では、1回目の圧縮結果(nビット)と、データMをdビットずつに区切った最初のビット列Mとが、圧縮手段132に入力される。このように繰り返し処理が行われ、L+1回目の繰り返しでは、L回目の圧縮結果(nビット)と、ビット列Mと第2パディングPを結合したビット列(dビット)が、圧縮手段132入力される。L+2回目の繰り返しでは、L+1回目の圧縮結果(nビット)と、鍵Kと第3パディングPと付加ビットπが結合したビット列(dビット)が、圧縮手段132入力される。そして、L+2回目の圧縮結果が、メッセージ認証子τとして、ハッシュ部130から出力される。 An image of this example is shown in FIG. FIG. 6A shows processing when the bit length m L is larger than zero. In this case, in the first iteration, a predetermined initial vector V (n bits) and a bit string (d bits) obtained by combining the key K and the first padding P 1 are input to the compression unit 132. In the second repetition, the first compression result (n bits) and the first bit string M 1 obtained by dividing the data M into d bits are input to the compression unit 132. Thus repetition processing is performed, the L + 1 th iteration, L th compression results (n bits), the bit string M L and the bit string obtained by combining the second padding P 2 (d bits) is compressed unit 132 inputs The The L + 2 iteration, L + 1 th compression results (n bits), key K and the third padding P 3 to the bit string added bit π bound (d bits) are compression means 132 inputs. The compression result of the (L + 2) th time is output from the hash unit 130 as the message authenticator τ.

図6の(b)は、ビット長mが0の場合の処理を示している。この場合は、繰り返しの1回目では、あらかじめ定められた初期ベクトルV(nビット)と、鍵Kと第1パディングPを結合したビット列(dビット)とが、圧縮手段132に入力される。繰り返しの2回目では、1回目の圧縮結果(nビット)と、データMをdビットずつに区切った最初のビット列Mとが、圧縮手段132に入力される。このように繰り返し処理が行われ、L回目の繰り返しでは、L−1回目の圧縮結果(nビット)と、データMをdビットずつに区切ったときのL−1番目のビット列ML−1とが、圧縮手段132入力される。L+1回目の繰り返しでは、L回目の圧縮結果(nビット)と、鍵Kと第3パディングPと付加ビットπを結合したビット列(dビット)が、圧縮手段132入力される。そして、L+1回目の圧縮結果が、メッセージ認証子τとして、ハッシュ部130から出力される。なお、ビット長mが0の場合とは、ビット列Mがない場合を意味しているので、ビット列Mを圧縮手段132に入力することはない。 FIG. 6B shows processing when the bit length m L is zero. In this case, in the first iteration, a predetermined initial vector V (n bits) and a bit string (d bits) obtained by combining the key K and the first padding P 1 are input to the compression unit 132. In the second repetition, the first compression result (n bits) and the first bit string M 1 obtained by dividing the data M into d bits are input to the compression unit 132. Thus repetition processing is performed, the L iteration, L-1 th compression results (n bits), the bit string M L-1 L-1 th when the separated data M one by d bits Is input to the compression means 132. In L + 1 th iteration, L th compression results (n bits), key K and the third padding P 3 a bit string obtained by combining the additional bit [pi (d bits) are compression means 132 inputs. Then, the L + 1-th compression result is output from the hash unit 130 as the message authenticator τ. Note that the case where the bit length m L is zero, this means if there is no bit string M L, it does not enter the bit string M L to the compression unit 132.

このように、(1)〜(3)と(6)の条件を満たせば、鍵は1つでよく、圧縮関数を用いる計算の追加は1回または2回で済み、ハッシュ関数の呼び出しも1回でよい。したがって、1つ目の組み合わせの例よりも、さらに演算量を少なくできる。特に、圧縮率が小さい圧縮関数を使うことができるという効果もある。また、この条件の組み合わせの場合も、圧縮関数の擬似乱数性に基づく耐偽造安全性証明が可能であり、鍵回復攻撃に対しても安全である。   As described above, if the conditions (1) to (3) and (6) are satisfied, the number of keys is one, the calculation using the compression function is added once or twice, and the hash function is called one time. Times. Therefore, the amount of calculation can be further reduced as compared with the first combination example. In particular, there is an effect that a compression function having a small compression rate can be used. Also in the case of this combination of conditions, forgery-proof security proof based on the pseudo-randomness of the compression function is possible, and it is safe against key recovery attacks.

条件の組み合わせの例4
4つ目の組み合わせの例は、(1)〜(3)と(7)の条件を満たすことである。この例では、データMをdビットずつに区切った時に最後に余るビット列をビット列M(ただし、Mのビット長mは0からd−1)とする。この条件の具体例としては、第1パディングPを(d−k)個の“0”が並んだビット列、第2パディングPを“1”と(d−m−1)個の“0”が並んだビット列、第3パディングPを(d−k)個の“1”が並んだビット列と定める例がある。
Condition combination example 4
An example of the fourth combination is to satisfy the conditions (1) to (3) and (7). In this example, the last remaining bit string when the data M is divided into d bits is a bit string M L (where M L has a bit length m L of 0 to d−1). As a specific example of this condition, the first padding P 1 is a bit string in which (d−k) “0” s are arranged, the second padding P 2 is “1” and (d−m L −1) “ 0 there are examples to determine "the bit string arranged, the third padding P 3 (d-k) pieces of" 1 "bit string aligned.

この例のイメージを図7に示す。繰り返しの1回目では、あらかじめ定められた初期ベクトルV(nビット)と、鍵Kと第1パディングPを結合したビット列(dビット)とが、圧縮手段132に入力される。そして、繰り返しの2回目では、1回目の圧縮結果(nビット)と、データMをdビットずつに区切った最初のビット列Mとが、圧縮手段132に入力される。このように繰り返し処理が行われ、L+1回目の繰り返しでは、L回目の圧縮結果(nビット)と、ビット列Mと第2パディングPを結合したビット列(dビット)が、圧縮手段132入力される。L+2回目の繰り返しでは、L+1回目の圧縮結果(nビット)と、鍵Kと第3パディングPを結合したビット列(dビット)が、圧縮手段132入力される。L+3回目の繰り返しでは、L+2回目の圧縮結果(nビット)と、付加ビットπが、圧縮手段132入力される。そして、L+3回目の圧縮結果が、メッセージ認証子τとして、ハッシュ部130から出力される。 An image of this example is shown in FIG. In the first iteration, a predetermined initial vector V (n bits) and a bit string (d bits) obtained by combining the key K and the first padding P 1 are input to the compression unit 132. In the second repetition, the first compression result (n bits) and the first bit string M 1 obtained by dividing the data M into d bits are input to the compression unit 132. Thus repetition processing is performed, the L + 1 th iteration, L th compression results (n bits), the bit string M L and the bit string obtained by combining the second padding P 2 (d bits) is compressed unit 132 inputs The The L + 2 iteration, the L + 1 th compression result (n bits), key K and the bit string obtained by combining the third padding P 3 (d bits) are compression means 132 inputs. In the repetition of the (L + 3) th time, the compression result 132 is input to the L + 2th compression result (n bits) and the additional bit π. The compression result of the (L + 3) th time is output from the hash unit 130 as the message authenticator τ.

このように、(1)〜(3)と(7)の条件を満たせば、圧縮関数を用いる計算の追加は3回となってしまうが、鍵は1つでよく、ハッシュ関数の呼び出しも1回でよい。また、この条件の組み合わせの場合は、圧縮関数の擬似乱数性に基づく耐偽造安全性証明が可能であり、鍵回復攻撃に対しても安全である。
なお、上述の条件や条件の組み合わせは例示である。条件は(1)〜(7)に限るものではなく、条件の組み合わせも上述の例に限るものでもない。
As described above, if the conditions (1) to (3) and (7) are satisfied, the calculation using the compression function is added three times, but only one key is required, and the hash function is called one. Times. Further, in the case of this combination of conditions, forgery-proof security proof based on the pseudo-randomness of the compression function is possible, and it is safe against key recovery attacks.
The above conditions and combinations of conditions are examples. The conditions are not limited to (1) to (7), and the combination of conditions is not limited to the above example.

[第2実施形態]
図8に本発明のメッセージ認証子検証装置の機能構成例を示す。また、図9に本発明のメッセージ認証子検証装置の処理フロー例を示す。メッセージ認証子検証装置200は、第1実施形態で示したメッセージ認証子生成装置100と比較部210と記録部290を備え、データM(ビット長m)とメッセージ認証子τ(ビット長n)が入力、検証結果が出力である。
[Second Embodiment]
FIG. 8 shows a functional configuration example of the message authenticator verification device of the present invention. FIG. 9 shows a processing flow example of the message authenticator verification device of the present invention. The message authenticator verification device 200 includes the message authenticator generation device 100, the comparison unit 210, and the recording unit 290 shown in the first embodiment, and data M (bit length m) and message authenticator τ (bit length n) are stored. Input and verification results are output.

メッセージ認証子検証装置200内のメッセージ認証子生成装置100は、データMとあらかじめ記録しておいた鍵Kからメッセージ認証子τ’を生成する(S100)。比較部210は、メッセージ認識子τとメッセージ認証子τ’とを比較する。そして、τ=τ’ならば、送信者またはデータ作成者の認証、およびデータ内容の整合性が検証されたとする。τ≠τ’ならば、送信者またはデータ作成者の詐称、もしくはデータの改ざんがあると判断する。そして、検証結果を出力する(S210)。なお、記録部290を備えず、その他の構成部でこれらの情報を記録してもよい。   The message authenticator generation device 100 in the message authenticator verification device 200 generates a message authenticator τ ′ from the data M and the key K recorded in advance (S100). The comparison unit 210 compares the message recognizer τ and the message authenticator τ ′. If τ = τ ′, the authentication of the sender or the data creator and the consistency of the data contents are verified. If τ ≠ τ ′, it is determined that the sender or the data creator is misrepresented or the data is falsified. Then, the verification result is output (S210). Note that the recording unit 290 may not be provided, and these pieces of information may be recorded by other components.

このような構成なので、メッセージ認証子検証装置200でも、メッセージ認証子生成装置100と同じ効果を得ることができる。
図10に、コンピュータの機能構成例を示す。なお、本発明のメッセージ認証子生成装置およびメッセージ認証子検証装置は、コンピュータ2000の記録部2020に、本発明の各構成部としてコンピュータ2000を動作させるプログラムを読み込ませ、処理部2010、入力部2030、出力部2040などを動作させることで実現できる。また、コンピュータに読み込ませる方法としては、プログラムをコンピュータ読み取り可能な記録媒体に記録しておき、記録媒体からコンピュータに読み込ませる方法、サーバ等に記録されたプログラムを、電気通信回線等を通じてコンピュータに読み込ませる方法などがある。
With this configuration, the message authenticator verification device 200 can achieve the same effects as the message authenticator generation device 100.
FIG. 10 shows a functional configuration example of a computer. Note that the message authenticator generation device and the message authenticator verification device of the present invention cause the recording unit 2020 of the computer 2000 to read a program that causes the computer 2000 to operate as each component of the present invention, and the processing unit 2010 and the input unit 2030. This can be realized by operating the output unit 2040 or the like. In addition, as a method of causing the computer to read, the program is recorded on a computer-readable recording medium, and the program recorded on the server or the like is read into the computer through a telecommunication line or the like. There is a method to make.

[安全性の証明]
以下では、第1実施形態の条件の組み合わせの例1で示した具体例で、安全性が確保されることを証明する。
[Proof of safety]
In the following, it will be proved that the safety is ensured by the specific example shown in the example 1 of the combination of conditions of the first embodiment.

定義
まず、証明に使用する記号等を以下のように定義する。
“V”は、圧縮手段に入力する初期ベクトル(Initial Vector)である。
“0”は、p個の“0”が並んだビット列である。
“攻撃者”は、オラクルを呼び出すアルゴリズムAである。
Definition First, the symbols used for proof are defined as follows.
“V” is an initial vector input to the compression means.
“0 p ” is a bit string in which p “0” s are arranged.
“Attacker” is Algorithm A that calls Oracle.

Figure 0004886614
は、集合Xから要素xを一様ランダムに選ぶことである。
Figure 0004886614
Is to uniformly select elements x from the set X.

Figure 0004886614
は、オラクルOにアクセスする攻撃者Aがxを出力することを表す。
Figure 0004886614
Represents that an attacker A accessing Oracle O outputs x.

オラクルOはしばしばゲームGで定義される。その場合、

Figure 0004886614
Oracle O is often defined in game G. In that case,
Figure 0004886614

PRFs:“PRF(擬似乱数関数族)”は、安全なMACであり、本明細書中の全てのMACは、RFP型である。関数{f:X→Y}K∈KEYについて考えると、prf攻撃者は2つのオラクル

Figure 0004886614
を区別する。 PRFs: “PRF (Pseudo Random Function Family)” is a secure MAC, and all MACs in this specification are of RFP type. Function {f K : X → Y} Considering K∈KEY , the prf attacker has two oracles
Figure 0004886614
To distinguish.

Figure 0004886614
をfに対するAのprfアドバンテージと定義する。
cAU(computationally Almost Universal):au攻撃者 Aはオラクルを呼び出さない。メッセージの組(M,M’)∈X×Xを出力するだけである。
Figure 0004886614
Is defined as the prf advantage of A over f.
cAU (computationally Almost Universal): au attacker A does not call Oracle. It simply outputs the message set (M, M ′) εX × X.

Figure 0004886614
をfに対するAのauアドバンテージと定義する。
リソース:攻撃者 Aのリソースは、時間リソースt、オラクルへの質問回数q、各質問のビット数μで評価される。
Figure 0004886614
Is defined as A's au advantage over f.
Resource: Attacker A's resource is evaluated by time resource t, number of questions to Oracle q, and bit number μ of each question.

Figure 0004886614
と定義する。ここで、*はprf、au等である。また、T(μ)は、ビット数μの入力があった場合に、関数fの計算に必要な時間リソースである。
Figure 0004886614
It is defined as Here, * is prf, au or the like. T f (μ) is a time resource necessary for calculating the function f when there is an input of the number of bits μ.

命題1
任意のtに対して、

Figure 0004886614
が成り立つ。 Proposition 1
For any t
Figure 0004886614
Holds.

証明
Aを、最大値tの時間リソースと最大μビットの出力メッセージのfに対するau攻撃者とする。上記の定義より、

Figure 0004886614
ここで、(M,M’)は、最大μビットの異なるメッセージの組である。よって、
Figure 0004886614
が成り立つメッセージの組(M,M’)が存在する。したがって、定数M,M’が組み込まれた新しい攻撃者Bを構成することにより、証明したい不等式を得る。 Let proof A be an au attacker against the time resource of the maximum value t and the maximum μ-bit output message f. From the above definition,
Figure 0004886614
Here, (M, M ′) is a set of different messages having a maximum μ bit. Therefore,
Figure 0004886614
There exists a message pair (M, M ′) that holds. Therefore, by constructing a new attacker B incorporating the constants M and M ′, the inequality that we want to prove is obtained.

安全性の証明
次の定理1は、条件の組み合わせ1による構成の安全性を示している。
Proof of Safety The following Theorem 1 shows the safety of the configuration by the condition combination 1.

定理1
圧縮関数fをf:{0,1}n+p→{0,1}、fで構成される条件の組み合わせ1による構成SをS:{0,1}≦N→{0,1}とすると、条件の組み合わせ1による構成Sは、

Figure 0004886614
がPRFであることを条件として、PRFである。言い換えると、次式が成り立つ。 Theorem 1
The compression function f f: {0,1} n + p → {0,1} n, the structure S K by the combination 1 consists condition f S K: {0,1} ≦ N → {0,1} Assuming n , the configuration S according to the condition combination 1 is
Figure 0004886614
Is a PRF, provided that is a PRF. In other words, the following equation holds.

Figure 0004886614
ただし、
Figure 0004886614
は、fの入力のn+1からn+kビット目までを鍵とした関数であり、
Figure 0004886614
は、fの入力の最初のnビットを鍵とした関数である。
定理1は、後述の3つの命題により証明できる。
Figure 0004886614
However,
Figure 0004886614
Is a function with the keys from the (n + 1) th bit to the (n + k) th bit of the input of f as a key,
Figure 0004886614
Is a function using the first n bits of the input of f as a key.
Theorem 1 can be proved by the following three propositions.

命題2

Figure 0004886614
条件の組み合わせの例1による構成SはPRFである。言い換えると、次式が成り立つ。
Figure 0004886614
Proposition 2
Figure 0004886614
The configuration S according to the condition combination example 1 is a PRF. In other words, the following equation holds.
Figure 0004886614

証明
Aを、最大値tの時間リソースを持ち、最大q(≧2)回のオラクルへの質問とそれぞれ最大μビットのメッセージを出力するSに対するprf攻撃者とする。
Let proof A be a prf attacker against S who has a time resource of the maximum value t, and outputs a maximum of q (≧ 2) questions to Oracle and a maximum μ-bit message respectively.

Figure 0004886614
を、図11に示すようにサブルーチンとしてAを用いて構築する。ここで、Bは最大値tの時間リソースを持ち、最大q+1回の質問をオラクルに対して行う。Cは、それぞれ最大μビットの2つのメッセージを出力する。したがって、次式のように表現できる。
Figure 0004886614
Is constructed using A as a subroutine as shown in FIG. Here, B has a time resource of the maximum value t, and makes a maximum of q + 1 questions to the Oracle. C outputs two messages of up to μ bits each. Therefore, it can be expressed as:

Figure 0004886614
G、G’を図12に定義された2つのゲームとする。これらのゲームは、攻撃者Aのためのオラクルである。
Figure 0004886614
Let G and G ′ be the two games defined in FIG. These games are oracles for attacker A.

主張:次式が成り立つ。

Figure 0004886614
Claim: The following equation holds.
Figure 0004886614

証明

Figure 0004886614
である。一方、
Figure 0004886614
である。 Proof
Figure 0004886614
It is. on the other hand,
Figure 0004886614
It is.

主張:全てのMに対してπ(λ(M))≠0とする。よって、ゲームGでは、すべての質問Mに対して

Figure 0004886614
であり、Aの質問への返答の間は、ランダム関数(オラクル) Claim: π (λ (M)) ≠ 0 p for all M. Therefore, in game G, for all questions M
Figure 0004886614
And during the answer to question A, a random function (Oracle)

Figure 0004886614
は、入力値V‖10に対応する値を出力することはない。これは、ゲームGでは、
Figure 0004886614
Does not output a value corresponding to the input value V‖10 p . This is in game G

Figure 0004886614
は、Aの質問とは独立なランダムな値であることを意味する。よって、ゲームGとゲームG’は等価である。
ここで、一般性を失うことなく攻撃者Aは質問を繰り返さず、たとえAの質問へのどのような返答が行われたとしても、Aの質問の総数は常に最大値q以下であると仮定する。M,…,Mを順番にAの質問とする。
Figure 0004886614
Means a random value independent of question A. Therefore, the game G and the game G ′ are equivalent.
Here, without loss of generality, the attacker A does not repeat the question, and it is assumed that the total number of questions of A is always less than or equal to the maximum value q, no matter what response is made to the question of A. To do. Let M 1 ,..., M q be the questions of A in order.

Eを、1≦i<j≦qに対して発生する事象

Figure 0004886614
とする。Eが発生しない限り、ゲーム G’中でのAとオラクル
Figure 0004886614
に対して実行されたAは、正確に同じ処理を行う。Game Playingの基本的な命題は、非特許文献(M. Bellare, P. Rogaway, “The security of triple encryption and a framework for code-based game-playing proofs,” In:Vaudenay, S. (ed.) EUROCRYPT 2006, LNCS vol.4004, pp.409-426, Springer, Heidelberg (2006).)に示されている。このGame Playningの基本的な命題により、次式が成り立つ。
Figure 0004886614
An event that occurs for 1 ≦ i <j ≦ q
Figure 0004886614
And As long as E doesn't occur, A and Oracle in the game G '
Figure 0004886614
A executed for, performs exactly the same processing. The basic proposition of Game Playing is non-patent literature (M. Bellare, P. Rogaway, “The security of triple encryption and a framework for code-based game-playing proofs,” In: Vaudenay, S. (ed.) EUROCRYPT 2006, LNCS vol.4004, pp.409-426, Springer, Heidelberg (2006)). The following formula holds based on the basic proposition of Game Playning.
Figure 0004886614

主張:次式が成り立つ。

Figure 0004886614
Claim: The following equation holds.
Figure 0004886614

証明
E’を、1≦i<j≦qに対する事象
Proof E ′ is an event for 1 ≦ i <j ≦ q

Figure 0004886614
であって、Pr[E]≦Pr[E’]とする。1≦α<β≦qに対して、E’α,βを、
Figure 0004886614
が発生しているという事象とする。1≦α<β≦qに対して、事象E’α,βは互いに素であり、
Figure 0004886614
である。よって、次式が成り立つ。
Figure 0004886614
In this case, Pr [E] ≦ Pr [E ′]. For 1 ≦ α <β ≦ q, E ′ α, β is
Figure 0004886614
It is assumed that an event has occurred. For 1 ≦ α <β ≦ q, the events E ′ α, β are disjoint,
Figure 0004886614
It is. Therefore, the following equation holds.

Figure 0004886614
また、
Figure 0004886614
である。
Figure 0004886614
Also,
Figure 0004886614
It is.

命題3
圧縮関数fをf:{0,1}n+p→{0,1}とすると、マークル・ダンガード繰返しによって圧縮関数fから構成された鍵付ハッシュ関数F:{0,1}d*→{0,1}がcAUならば、任意の1対1パディングを組み合わせて構成した

Figure 0004886614
もcAUである。言い換えると、次式の関係が成り立つ。 Proposition 3
When the compression function f is f: {0, 1} n + p → {0, 1} n , the keyed hash function F K : {0, 1} d * → {configured by the Merkle Dungard iteration is used. 0,1} If n is cAU, any one-to-one padding is combined
Figure 0004886614
Is also a cAU. In other words, the following relationship holds.

Figure 0004886614
Figure 0004886614

証明
Aを、最大値tの時間リソースを持ち、それぞれ最大μビットのメッセージ(M,M’)を出力する、

Figure 0004886614
に対するau攻撃者とする。そして、Bの出力を組
Figure 0004886614
とすることで、Fに対するau攻撃者Bを容易に構築できる。ここで、M≠M’であれば、
Figure 0004886614
である。 Proof A has a time resource of maximum value t and outputs a message (M, M ′) of maximum μ bits respectively.
Figure 0004886614
Au attacker against. And set the output of B
Figure 0004886614
By doing so, the au attacker B against F can be easily constructed. Here, if M ≠ M ′,
Figure 0004886614
It is.

命題4
圧縮関数fをf:{0,1}n+p→{0,1}とすると、

Figure 0004886614
がPRFであれば、マークル・ダンガード繰返しによって圧縮関数fから構成された鍵付ハッシュ関数F:{0,1}d*→{0,1}がcAUである。言い換えると、次式の関係が成り立つ。 Proposition 4
If the compression function f is f: {0, 1} n + p → {0, 1} n ,
Figure 0004886614
Is PRF, the keyed hash function F K : {0, 1} d * → {0, 1} n , which is composed of the compression function f by Merkle Dungard iteration, is cAU. In other words, the following relationship holds.

Figure 0004886614
Figure 0004886614

証明
命題4は非特許文献4で証明されている。
上述の命題から、以下の式が成り立つ。
Proof Proposition 4 is proved in Non-Patent Document 4.
From the above proposition, the following equation holds.

Figure 0004886614
このように、定理1が証明できた。したがって、第1実施形態の条件の組み合わせの例1の条件を満足するように第1パディングP、第2パディングP、第3パディングPを定めれば、安全性が確保できる。
なお、組み合わせの例2、条件の組み合わせの例3、条件の組み合わせの例4は、以下に示す定理2、定理3、定理4を同様に証明することで、安全性の証明ができる。具体的な証明は省略する。
Figure 0004886614
Thus, Theorem 1 could be proved. Therefore, if the first padding P 1 , the second padding P 2 , and the third padding P 3 are determined so as to satisfy the condition of the condition combination example 1 of the first embodiment, safety can be ensured.
The combination example 2, the condition combination example 3 and the condition combination example 4 can prove safety by proving the following theorems 2, 3 and 4 in the same manner. Specific proof is omitted.

定理2
圧縮関数fをf:{0,1}n+p→{0,1}、fで構成される条件の組み合わせ2による構成 SをS:{0,1}≦N→{0,1}とすると、

Figure 0004886614
がPRFであることを条件として、次式が成り立つ。
Figure 0004886614
Theorem 2
The compression function f f: {0,1} n + p → {0,1} n, the structure S K by combining 2 consists condition f S K: {0,1} ≦ N → {0,1} If n ,
Figure 0004886614
The following equation holds on the condition that is a PRF.
Figure 0004886614

定理3
圧縮関数fをf:{0,1}n+p→{0,1}、fで構成される条件の組み合わせ3による構成 SをS:{0,1}≦N→{0,1}とすると、
Theorem 3
The compression function f f: {0,1} n + p → {0,1} n, the structure S K by combining 3 consists conditions f S K: {0,1} ≦ N → {0,1} If n ,

Figure 0004886614
がPRFであることを条件として、次式が成り立つ。
Figure 0004886614
The following equation holds on the condition that is a PRF.

Figure 0004886614
Figure 0004886614

定理4
圧縮関数fをf:{0,1}n+p→{0,1}、fで構成される条件の組み合わせ4による構成 SをS:{0,1}≦N→{0,1}とすると、

Figure 0004886614
がPRFであることを条件として、次式が成り立つ。 Theorem 4
The compression function f is composed of f: {0, 1} n + p → {0, 1} n , condition combination 4 composed of f S K is represented by S K : {0, 1} ≦ N → {0, 1} If n ,
Figure 0004886614
The following equation holds on the condition that is a PRF.

Figure 0004886614
Figure 0004886614

本発明のメッセージ認証子生成装置およびメッセージ認証子検証装置は、例えば携帯電話、パソコン、ルータ、サーバなどに組み込み、送受信されるデータや蓄積されたデータに対する認証子を生成することまたは検証することに利用できる。   The message authenticator generation device and the message authenticator verification device of the present invention are incorporated into, for example, a mobile phone, a personal computer, a router, a server, etc., and generate or verify an authenticator for data to be transmitted / received or stored data Available.

本発明のメッセージ認証子生成装置の機能構成例を示す図。The figure which shows the function structural example of the message authenticator production | generation apparatus of this invention. 本発明のメッセージ認証子生成装置の処理フローを示す図。The figure which shows the processing flow of the message authenticator production | generation apparatus of this invention. あらかじめ定めた条件にしたがって第1パディングPを定めるステップ、第2パディングPを定めるステップ、第3パディングPを定めるステップを示した処理フローの例を示す図。Step of determining a first padding P 1 in accordance with a predetermined condition, the step of defining a second padding P 2, illustrating an example of a processing flow diagram illustrating step defining a third padding P 3. 条件の組み合わせの例1の場合のハッシュ部の処理のイメージを示す図。The figure which shows the image of the process of the hash part in the case of the example 1 of a combination of conditions. 条件の組み合わせの例2の場合のハッシュ部の処理のイメージを示す図。The figure which shows the image of the process of the hash part in the case of the example 2 of a combination of conditions. 条件の組み合わせの例3の場合のハッシュ部の処理のイメージを示す図。The figure which shows the image of the process of the hash part in the case of the example 3 of a combination of conditions. 条件の組み合わせの例4の場合のハッシュ部の処理のイメージを示す図。The figure which shows the image of the process of the hash part in the case of the example 4 of a combination of conditions. 本発明のメッセージ認証子検証装置の機能構成例を示す図。The figure which shows the function structural example of the message authenticator verification apparatus of this invention. 本発明のメッセージ認証子検証装置の処理フロー例を示す図。The figure which shows the example of a processing flow of the message authenticator verification apparatus of this invention. コンピュータの機能構成例を示す図。The figure which shows the function structural example of a computer. 攻撃者Bと攻撃者Cの記述を示す図。The figure which shows the description of the attacker B and the attacker C. ゲーム Gとゲーム G’を示す図。The figure which shows the game G and the game G '.

符号の説明Explanation of symbols

100 メッセージ認証子生成装置
110 パディング部
120 付加ビット生成部
130 ハッシュ部
131 ビット列取り出し手段
132 圧縮手段
190 記録部
200 メッセージ認証子検証装置
210 比較部
290 記録部
DESCRIPTION OF SYMBOLS 100 Message authenticator production | generation apparatus 110 Padding part 120 Additional bit production | generation part 130 Hash part 131 Bit sequence extraction means 132 Compression means 190 Recording part 200 Message authenticator verification apparatus 210 Comparison part 290 Recording part

Claims (30)

鍵KとデータMとを入力とし、メッセージ認証子τを出力するメッセージ認証子生成装置であって、
第1パディングP、第2パディングP、第3パディングPを、少なくとも1つは前記鍵Kまたは前記データMを用いて定めるパディング部と、
鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπを結合したビット列が、当該メッセージ認証子生成装置で使用するハッシュ関数内の圧縮関数fで圧縮されるビット長dの整数倍となるように、付加ビットπを生成する付加ビット生成部と、
鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπの順番で結合されたビット列のハッシュ関数による変換結果を、メッセージ認証子τとして出力するハッシュ部と、
を備えるメッセージ認証子生成装置。
A message authenticator generation device that receives a key K and data M and outputs a message authenticator τ,
A first padding P 1 , a second padding P 2 , a third padding P 3 , at least one of which is defined by using the key K or the data M;
A bit string obtained by combining the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, the third padding P 3 , and the additional bit π is compressed in a hash function used in the message authenticator generation device. An additional bit generation unit that generates the additional bit π so as to be an integer multiple of the bit length d compressed by the function f;
A conversion result by a hash function of a bit string combined in the order of the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, the third padding P 3 , and the additional bits π is used as a message authenticator τ. The hash part to output,
A message authenticator generation device comprising:
請求項1記載のメッセージ認証子生成装置であって、
前記圧縮関数fは、ビット長n+dのビット列をビット長nに圧縮する関数、初期ベクトルはあらかじめ定められたビット長がnのビット列とするときに、
前記ハッシュ部は、
鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπの順番でdビットずつ取り出すビット列取り出し手段と、
前記ビット列取り出し手段で取り出したビット列と、初期ベクトルVまたは前回の圧縮関数fによる圧縮結果とを入力として、圧縮関数fによる圧縮結果を求める圧縮手段と、
を備え、
前記ビット列取り出し手段でのビット列の取り出しと前記圧縮手段での圧縮を繰り返し、
鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπのすべてのビット列が圧縮に使用されたときの圧縮結果をメッセージ認証子τとする
ことを特徴とするメッセージ認証子生成装置。
The message authenticator generation device according to claim 1,
The compression function f is a function for compressing a bit string having a bit length n + d to a bit length n, and the initial vector is a bit string having a predetermined bit length n.
The hash part is
A bit string extracting means for extracting d bits in the order of key K, first padding P 1 , data M, second padding P 2 , key K, third padding P 3 , and additional bits π;
Compression means for obtaining the compression result by the compression function f by using the bit string extracted by the bit string extraction means and the compression result by the initial vector V or the previous compression function f;
With
Repeating the extraction of the bit string by the bit string extraction means and the compression by the compression means,
A compression result obtained when all the bit strings of the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, the third padding P 3 , and the additional bit π are used for compression is represented as a message authenticator τ. A message authenticator generating device characterized in that:
請求項1または2記載のメッセージ認証子生成装置であって、
前記パディング部は、
データMに第2パディングPを結合したビット列から、データMを一意に求めることができるという条件を満たすように第2パディングPを定める
ことを特徴とするメッセージ認証子生成装置。
The message authenticator generating device according to claim 1 or 2,
The padding part is
A bit string that combines second padding P 2 in the data M, the message authentication code generation apparatus characterized by defining a second padding P 2 so as to satisfy the condition that it is possible to obtain data M uniquely.
請求項3記載のメッセージ認証子生成装置であって、
鍵K、データM、第1パディングP、第2パディングPのビット長をそれぞれ、k、m、p、pとするときに、
前記パディング部は、
k+p+m+pがdの倍数となるという条件も満たすように第2パディングPを定める
ことを特徴とするメッセージ認証子生成装置。
The message authenticator generation device according to claim 3, wherein
When the bit lengths of the key K, data M, first padding P 1 , and second padding P 2 are k, m, p 1 , and p 2 , respectively,
The padding part is
A message authenticator generating device characterized in that the second padding P 2 is determined so as to satisfy a condition that k + p 1 + m + p 2 is a multiple of d.
請求項4記載のメッセージ認証子生成装置であって、
前記パディング部は、
k+pがdとなるという条件も満たすように第1パディングPを定める
ことを特徴とするメッセージ認証子生成装置。
The message authenticator generating device according to claim 4, wherein
The padding part is
A message authenticator generation device characterized in that the first padding P 1 is determined so as to satisfy a condition that k + p 1 is d.
請求項5記載のメッセージ認証子生成装置であって、
前記パディング部は、
いかなる付加ビットπとも異なるという条件も満たすように第1パディングPを定め、
第3パディングPをなしとする
ことを特徴とするメッセージ認証子生成装置。
The message authenticator generation device according to claim 5, wherein
The padding part is
The first padding P 1 is determined so as to satisfy the condition that it is different from any additional bits π,
Message authentication code generation apparatus characterized by a without the third padding P 3.
請求項1または2記載のメッセージ認証子生成装置であって、
鍵Kのビット長をkとし、
データMをdビットずつに区切った時に最後に余るビット列をビット列M(ただし、Mのビット長mは0からd−1)とするときに、
前記パディング部は、
第1パディングPを(d−k)個の“0”が並んだビット列、
第2パディングPを“1”と(d−m−1)個の“0”が並んだビット列、
第3パディングPをなし
と定める
ことを特徴とするメッセージ認証子生成装置。
The message authenticator generating device according to claim 1 or 2,
The bit length of the key K is k,
The data M bit string bit string left over at the end when separated one by d bits M L (however, the bit length m L of M L from 0 d-1) when the,
The padding part is
The first padding P 1 is a bit string in which (d−k) “0” s are arranged,
The second padding P 2 is a bit string in which “1” and (d−m L −1) “0” s are arranged;
Message authentication code generation apparatus characterized by determining that no third padding P 3.
請求項4記載のメッセージ認証子生成装置であって、
前記パディング部は、
第1パディングPのビット列が第3パディングPのビット列の一部または全部とならない、かつ、第3パディングPのビット列が第1パディングPのビット列の一部または全部とならないという条件も満たすように、第1パディングPと第3パディングPとを定める
ことを特徴とするメッセージ認証子生成装置。
The message authenticator generating device according to claim 4, wherein
The padding part is
First padding bit string P 1 is not a part or all of the bit string of the third padding P 3, and also the condition that the bit string of the third padding P 3 is not a part or all of the first bit sequence of the padding P 1 satisfying manner, a message authentication code generation apparatus characterized by determining a first padding P 1 and the third padding P 3.
請求項1または2記載のメッセージ認証子生成装置であって、
鍵K、データMのビット長をそれぞれ、k、mとし、
鍵K、第1パディングP、データMを結合したビット列を、dビットずつに区切った時に最後に余るビット列をビット列M(ただし、Mのビット長mは0からd−1)とするときに、
前記パディング部は、
第1パディングPを“0”、
第2パディングPを、(k+1+m)がdより小さいときは“1”と(d−k−m−2)個の“0”が並んだビット列、(k+1+m)がd以上のときは“1”と(d−m−1)個の“0”が並んだビット列、
第3パディングPを“1”
と定める
ことを特徴とするメッセージ認証子生成装置。
The message authenticator generating device according to claim 1 or 2,
The bit lengths of the key K and data M are k and m, respectively.
Key K, the first padding P 1, a bit string obtained by combining the data M, d bit by bit string bit string left over at the end when separated into M L (however, the bit length m L 0 of M L d-1) and When
The padding part is
1st padding P 1 is set to “0”,
The second padding P 2 is a bit string in which “1” and (d−k−m−2) “0” are arranged when (k + 1 + m) is smaller than d, and “1” when (k + 1 + m) is greater than or equal to d. ”And (d−m L −1) bit strings in which“ 0 ”are arranged,
Third padding P 3 "1"
A message authenticator generation device characterized in that:
請求項5記載のメッセージ認証子生成装置であって、
データMをdビットずつに区切った時に最後に余るビット列をビット列M(ただし、Mのビット長mは0からd−1)とし、
鍵K、第3パディングP、前記ビット列M、付加ビットπを結合したビット列のビット長がd以下となる前記ビット長mの最大値を最大ビット長mLmaxとし、
あらかじめ定めた0以上mLmax以下の整数を整数Σとするときに、
前記パディング部は、
いかなる付加ビットπおよびいかなる前記ビット列Mに対しても、第1パディングPは、第3パディングの第1候補P’と付加ビットπとを結合したビット列とは異なるという条件と、第1パディングPは、第3パディングの第2候補P”と前記ビット列Mと付加ビットπとを結合したビット列とは異なるという条件も満たすように、第1パディングPと第3パディングの第1候補P’と第3パディングの第2候補P”とを定め、
前記ビット長mが前記整数Σより大きい場合には、前記第1パディングP、前記第2パディングPを用いると共に、第3パディングPとして前記第1候補P’を用い、
前記ビット長mが前記整数Σ以下の場合には、前記第1パディングPを用いると共に、前記第2パディングPにかかわらず第2パディングPをなしとし、第3パディングPとして前記第2候補P”に前記ビット列Mを結合させたビット列を用いる
ことを特徴とするメッセージ認証子生成装置。
The message authenticator generation device according to claim 5, wherein
Bit string bit string left over at the end when the data M, separated one by d bits M L (however, the bit length m L of M L from 0 d-1) and,
The maximum value of the bit length m L where the bit length of the bit string obtained by combining the key K, the third padding P 3 , the bit string M L , and the additional bit π is equal to or less than d is the maximum bit length m Lmax ,
When an integer of 0 or more and L Lmax or less that is determined in advance is an integer Σ,
The padding part is
For any additional bits π and any said bit string M L, first padding P 1 is a condition that is different from the first candidate P 3 'and the additional bits π bit string that combines the third padding, first padding P 1, as the third second candidate P 3 "and the bit string M L and the additional bits π bit string that combines padding also satisfy the condition that different, the first padding P 1 and the third padding Define one candidate P 3 ′ and a second candidate P 3 ″ for the third padding,
When the bit length m L is larger than the integer Σ, the first padding P 1 and the second padding P 2 are used, and the first candidate P 3 ′ is used as the third padding P 3 .
When the bit length m L is equal to or smaller than the integer Σ, the first padding P 1 is used, the second padding P 2 is not used regardless of the second padding P 2 , and the third padding P 3 is used as the third padding P 3. message authentication code generation device which comprises using a bit string said bound bit string M L to the second candidate P 3 ".
請求項1または2記載のメッセージ認証子生成装置であって、
鍵Kのビット長をkとし、
データMをdビットずつに区切った時に最後に余るビット列をビット列M(ただし、Mのビット長mは0からd−1)とするときに、
前記パディング部は、
前記ビット長mが0より大きい場合には、
第1パディングPを(d−k)個の“0”が並んだビット列、
第2パディングPを“1”と(d−m−1)個の“0”が並んだビット列、
第3パディングPを“0”
と定め、
前記ビット長mが0の場合には、
第1パディングPを(d−k)個の“0”が並んだビット列、
第2パディングPをなし、
第3パディングPを“1”
と定める
ことを特徴とするメッセージ認証子生成装置。
The message authenticator generating device according to claim 1 or 2,
The bit length of the key K is k,
The data M bit string bit string left over at the end when separated one by d bits M L (however, the bit length m L of M L from 0 d-1) when the,
The padding part is
If the bit length m L is greater than 0,
The first padding P 1 is a bit string in which (d−k) “0” s are arranged,
The second padding P 2 is a bit string in which “1” and (d−m L −1) “0” s are arranged;
Third padding P 3 "0"
And
When the bit length m L is 0,
The first padding P 1 is a bit string in which (d−k) “0” s are arranged,
The second without the padding P 2,
Third padding P 3 "1"
A message authenticator generation device characterized in that:
請求項5記載のメッセージ認証子生成装置であって、
前記パディング部は、
第1パディングPと第3パディングPとが異なるという条件も満たすように、第1パディングPと第3パディングPとを定める
ことを特徴とするメッセージ認証子生成装置。
The message authenticator generation device according to claim 5, wherein
The padding part is
As a first padding P 1 and the third padding P 3 is also satisfied condition that different, the message authentication code generation apparatus characterized by determining a first padding P 1 and the third padding P 3.
請求項1または2記載のメッセージ認証子生成装置であって、
鍵Kのビット長をkとし、
データMをdビットずつに区切った時に最後に余るビット列をビット列M(ただし、Mのビット長mは0からd−1)とし、
前記パディング部は、
第1パディングPを(d−k)個の“0”が並んだビット列、
第2パディングPを“1”と(d−m−1)個の“0”が並んだビット列、
第3パディングPを(d−k)個の“1”が並んだビット列
と定める
ことを特徴とするメッセージ認証子生成装置。
The message authenticator generating device according to claim 1 or 2,
The bit length of the key K is k,
Bit string bit string left over at the end when the data M, separated one by d bits M L (however, the bit length m L of M L from 0 d-1) and,
The padding part is
The first padding P 1 is a bit string in which (d−k) “0” s are arranged,
The second padding P 2 is a bit string in which “1” and (d−m L −1) “0” s are arranged;
The third padding P 3 (d-k) pieces of "1" message authentication code generation unit, wherein a prescribed bit string aligned.
データMとメッセージ認識子τを入力とし、データMの検証を行うメッセージ認証子検証装置であって、
データMと鍵Kからメッセージ認証子τ’を生成する請求項1から13のいずれかに記載のメッセージ認証子生成装置と、
メッセージ認識子τとメッセージ認証子τ’とを比較してデータMの検証結果を出力する比較部と
を備えるメッセージ認証子検証装置。
A message authenticator verification device that receives data M and a message recognizer τ and performs verification of the data M,
The message authenticator generation device according to any one of claims 1 to 13, which generates a message authenticator τ 'from the data M and the key K.
A message authenticator verification device comprising: a comparison unit that compares a message recognizer τ and a message authenticator τ ′ and outputs a verification result of data M.
鍵KとデータMとを入力とし、メッセージ認証子τを出力するメッセージ認証子生成方法であって、
パディング部で、第1パディングP、第2パディングP、第3パディングPを、少なくとも1つは前記鍵Kまたは前記データMを用いて定めるパディングステップと、
付加ビット生成部で、鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπを結合したビット列が、当該メッセージ認証子生成装置で使用するハッシュ関数内の圧縮関数fで圧縮されるビット長dの整数倍となるように、付加ビットπを生成する付加ビット生成ステップと、
ハッシュ部で、鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπの順番で結合されたビット列のハッシュ関数による変換結果を、メッセージ認証子τとして出力するハッシュステップと、
を有するメッセージ認証子生成方法。
A method for generating a message authenticator that receives a key K and data M and outputs a message authenticator τ,
A padding step for determining at least one of the first padding P 1 , the second padding P 2 , and the third padding P 3 by using the key K or the data M in the padding unit;
In the additional bit generation unit, a bit string obtained by combining the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, the third padding P 3 , and the additional bit π is used in the message authenticator generation device. An additional bit generation step of generating additional bits π so as to be an integral multiple of the bit length d compressed by the compression function f in the hash function
In the hash part, the conversion result by the hash function of the bit string combined in the order of the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, the third padding P 3 , and the additional bit π is sent to the message A hash step to be output as the authenticator τ;
A message authenticator generation method comprising:
請求項15記載のメッセージ認証子生成方法であって、
前記圧縮関数fは、ビット長n+dのビット列をビット長nに圧縮する関数、初期ベクトルはあらかじめ定められたビット長がnのビット列とするときに、
前記ハッシュステップは、
鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπの順番でdビットずつ取り出すビット列取り出しサブステップと、
前記ビット列取り出し手段で取り出したビット列と、初期ベクトルVまたは前回の圧縮関数fによる圧縮結果とを入力として、圧縮関数fによる圧縮結果を求める圧縮サブステップと、
鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπのすべてのビット列が圧縮に使用されたことを確認する確認サブステップ
を有し、
前記ビット列取り出しサブステップでのビット列の取り出しと前記圧縮サブステップでの圧縮を繰り返し、
鍵K、第1パディングP、データM、第2パディングP、鍵K、第3パディングP、付加ビットπのすべてのビット列が圧縮に使用されたときの圧縮結果をメッセージ認証子τとする
ことを特徴とするメッセージ認証子生成方法。
A message authenticator generation method according to claim 15, comprising:
The compression function f is a function for compressing a bit string having a bit length n + d to a bit length n, and the initial vector is a bit string having a predetermined bit length n.
The hash step includes
A bit string extracting substep for extracting d bits in the order of key K, first padding P 1 , data M, second padding P 2 , key K, third padding P 3 , and additional bits π;
A compression sub-step for obtaining a compression result by the compression function f using the bit string extracted by the bit string extraction means and the initial vector V or the compression result by the previous compression function f as inputs;
A confirmation sub-step for confirming that all the bit strings of the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, the third padding P 3 , and the additional bits π have been used for compression ,
Repeat the bit string extraction in the bit string extraction sub-step and the compression in the compression sub-step,
A compression result obtained when all the bit strings of the key K, the first padding P 1 , the data M, the second padding P 2 , the key K, the third padding P 3 , and the additional bit π are used for compression is represented as a message authenticator τ. A message authenticator generation method characterized by:
請求項15または16記載のメッセージ認証子生成方法であって、
前記パディングステップは、
データMに第2パディングPを結合したビット列から、データMを一意に求めることができるという条件を満たすように第2パディングPを定める
ことを特徴とするメッセージ認証子生成方法。
The message authenticator generation method according to claim 15 or 16,
The padding step includes
A bit string that combines second padding P 2 in the data M, the message authentication code generation method characterized by defining a second padding P 2 so as to satisfy the condition that it is possible to obtain data M uniquely.
請求項17記載のメッセージ認証子生成方法であって、
鍵K、データM、第1パディングP、第2パディングPのビット長をそれぞれ、k、m、p、pとするときに、
前記パディングステップは、
k+p+m+pがdの倍数となるという条件も満たすように第2パディングPを定める
ことを特徴とするメッセージ認証子生成方法。
A message authenticator generation method according to claim 17, comprising:
When the bit lengths of the key K, data M, first padding P 1 , and second padding P 2 are k, m, p 1 , and p 2 , respectively,
The padding step includes
A method for generating a message authenticator, wherein the second padding P 2 is determined so as to satisfy a condition that k + p 1 + m + p 2 is a multiple of d.
請求項18記載のメッセージ認証子生成方法であって、
前記パディングステップは、
k+pがdとなるという条件も満たすように第1パディングPを定める
ことを特徴とするメッセージ認証子生成方法。
The message authenticator generation method according to claim 18, comprising:
The padding step includes
A method for generating a message authenticator, wherein the first padding P 1 is determined so as to satisfy a condition that k + p 1 is d.
請求項19記載のメッセージ認証子生成方法であって、
前記パディングステップは、
いかなる付加ビットπとも異なるという条件も満たすように第1パディングPを定め、
第3パディングPをなしとする
ことを特徴とするメッセージ認証子生成方法。
The message authenticator generation method according to claim 19, comprising:
The padding step includes
The first padding P 1 is determined so as to satisfy the condition that it is different from any additional bits π,
Message authentication code generation method characterized by the without the third padding P 3.
請求項15または16記載のメッセージ認証子生成方法であって、
鍵Kのビット長をkとし、
データMをdビットずつに区切った時に最後に余るビット列をビット列M(ただし、Mのビット長mは0からd−1)とするときに、
前記パディングステップは、
第1パディングPを(d−k)個の“0”が並んだビット列、
第2パディングPを“1”と(d−m−1)個の“0”が並んだビット列、
第3パディングPをなし
と定める
ことを特徴とするメッセージ認証子生成方法。
The message authenticator generation method according to claim 15 or 16,
The bit length of the key K is k,
The data M bit string bit string left over at the end when separated one by d bits M L (however, the bit length m L of M L from 0 d-1) when the,
The padding step includes
The first padding P 1 is a bit string in which (d−k) “0” s are arranged,
The second padding P 2 is a bit string in which “1” and (d−m L −1) “0” s are arranged;
Message authentication code generation method characterized by determining that no third padding P 3.
請求項18記載のメッセージ認証子生成方法であって、
前記パディングステップは、
第1パディングPのビット列が第3パディングPのビット列の一部または全部とならない、かつ、第3パディングPのビット列が第1パディングPのビット列の一部または全部とならないという条件も満たすように、第1パディングPと第3パディングPとを定める
ことを特徴とするメッセージ認証子生成方法。
The message authenticator generation method according to claim 18, comprising:
The padding step includes
First padding bit string P 1 is not a part or all of the bit string of the third padding P 3, and also the condition that the bit string of the third padding P 3 is not a part or all of the first bit sequence of the padding P 1 satisfying manner, a message authentication code generation method characterized by determining a first padding P 1 and the third padding P 3.
請求項15または16記載のメッセージ認証子生成方法であって、
鍵K、データMのビット長をそれぞれ、k、mとし、
鍵K、第1パディングP、データMを結合したビット列を、dビットずつに区切った時に最後に余るビット列をビット列M(ただし、Mのビット長mは0からd−1)とするときに、
前記パディングステップは、
第1パディングPを“0”、
第2パディングPを、(k+1+m)がdより小さいときは“1”と(d−k−m−2)個の“0”が並んだビット列、(k+1+m)がd以上のときは“1”と(d−m−1)個の“0”が並んだビット列、
第3パディングPを“1”
と定める
ことを特徴とするメッセージ認証子生成方法。
The message authenticator generation method according to claim 15 or 16,
The bit lengths of the key K and data M are k and m, respectively.
Key K, the first padding P 1, a bit string obtained by combining the data M, d bit by bit string bit string left over at the end when separated into M L (however, the bit length m L 0 of M L d-1) and When
The padding step includes
1st padding P 1 is set to “0”,
The second padding P 2 is a bit string in which “1” and (d−k−m−2) “0” are arranged when (k + 1 + m) is smaller than d, and “1” when (k + 1 + m) is greater than or equal to d. ”And (d−m L −1) bit strings in which“ 0 ”are arranged,
Third padding P 3 "1"
A method for generating a message authenticator, characterized by:
請求項19記載のメッセージ認証子生成方法であって、
データMをdビットずつに区切った時に最後に余るビット列をビット列M(ただし、Mのビット長mは0からd−1)とし、
鍵K、第3パディングP、前記ビット列M、付加ビットπを結合したビット列のビット長がd以下となる前記ビット長mの最大値を最大ビット長mLmaxとし、
あらかじめ定めた0以上mLmax以下の整数を整数Σとするときに、
前記パディングステップは、
いかなる付加ビットπおよびいかなる前記ビット列Mに対しても、第1パディングPは、第3パディングの第1候補P’と付加ビットπとを結合したビット列とは異なるという条件と、第1パディングPは、第3パディングの第2候補P”と前記ビット列Mと付加ビットπとを結合したビット列とは異なるという条件も満たすように、第1パディングPと第3パディングの第1候補P’と第3パディングの第2候補P”とを定め、
前記ビット長mが前記整数Σより大きい場合には、前記第1パディングP、前記第2パディングPを用いると共に、第3パディングPとして前記第1候補P’を用い、
前記ビット長mが前記整数Σ以下の場合には、前記第1パディングPを用いると共に、前記第2パディングPにかかわらず第2パディングPをなしとし、第3パディングPとして前記第2候補P”に前記ビット列Mを結合させたビット列を用いる
ことを特徴とするメッセージ認証子生成方法。
The message authenticator generation method according to claim 19, comprising:
Bit string bit string left over at the end when the data M, separated one by d bits M L (however, the bit length m L of M L from 0 d-1) and,
The maximum value of the bit length m L where the bit length of the bit string obtained by combining the key K, the third padding P 3 , the bit string M L , and the additional bit π is equal to or less than d is the maximum bit length m Lmax ,
When an integer of 0 or more and L Lmax or less that is determined in advance is an integer Σ,
The padding step includes
For any additional bits π and any said bit string M L, first padding P 1 is a condition that is different from the first candidate P 3 'and the additional bits π bit string that combines the third padding, first padding P 1, as the third second candidate P 3 "and the bit string M L and the additional bits π bit string that combines padding also satisfy the condition that different, the first padding P 1 and the third padding Define one candidate P 3 ′ and a second candidate P 3 ″ for the third padding,
When the bit length m L is larger than the integer Σ, the first padding P 1 and the second padding P 2 are used, and the first candidate P 3 ′ is used as the third padding P 3 .
When the bit length m L is equal to or smaller than the integer Σ, the first padding P 1 is used, the second padding P 2 is not used regardless of the second padding P 2 , and the third padding P 3 is used as the third padding P 3. message authentication code generation method, which comprises using a bit string said bound bit string M L to the second candidate P 3 ".
請求項15または16記載のメッセージ認証子生成方法であって、
鍵Kのビット長をkとし、
データMをdビットずつに区切った時に最後に余るビット列をビット列M(ただし、Mのビット長mは0からd−1)とするときに、
前記パディングステップは、
前記ビット長mが0より大きい場合には、
第1パディングPを(d−k)個の“0”が並んだビット列、
第2パディングPを“1”と(d−m−1)個の“0”が並んだビット列、
第3パディングPを“0”
と定め、
前記ビット長mが0の場合には、
第1パディングPを(d−k)個の“0”が並んだビット列、
第2パディングPをなし、
第3パディングPを“1”
と定める
ことを特徴とするメッセージ認証子生成方法。
The message authenticator generation method according to claim 15 or 16,
The bit length of the key K is k,
The data M bit string bit string left over at the end when separated one by d bits M L (however, the bit length m L of M L from 0 d-1) when the,
The padding step includes
If the bit length m L is greater than 0,
The first padding P 1 is a bit string in which (d−k) “0” s are arranged,
The second padding P 2 is a bit string in which “1” and (d−m L −1) “0” s are arranged;
Third padding P 3 "0"
And
When the bit length m L is 0,
The first padding P 1 is a bit string in which (d−k) “0” s are arranged,
The second without the padding P 2,
Third padding P 3 "1"
A method for generating a message authenticator, characterized by:
請求項19記載のメッセージ認証子生成方法であって、
前記パディングステップは、
第1パディングPと第3パディングPとが異なるという条件も満たすように、第1パディングPと第3パディングPとを定める
ことを特徴とするメッセージ認証子生成方法。
The message authenticator generation method according to claim 19, comprising:
The padding step includes
As a first padding P 1 and the third padding P 3 is also satisfied condition that different, the message authentication code generation method characterized by determining a first padding P 1 and the third padding P 3.
請求項15または16記載のメッセージ認証子生成方法であって、
鍵Kのビット長をkとし、
データMをdビットずつに区切った時に最後に余るビット列をビット列M(ただし、Mのビット長mは0からd−1)とし、
前記パディングステップは、
第1パディングPを(d−k)個の“0”が並んだビット列、
第2パディングPを“1”と(d−m−1)個の“0”が並んだビット列、
第3パディングPを(d−k)個の“1”が並んだビット列
と定める
ことを特徴とするメッセージ認証子生成方法。
The message authenticator generation method according to claim 15 or 16,
The bit length of the key K is k,
Bit string bit string left over at the end when the data M, separated one by d bits M L (however, the bit length m L of M L from 0 d-1) and,
The padding step includes
The first padding P 1 is a bit string in which (d−k) “0” s are arranged,
The second padding P 2 is a bit string in which “1” and (d−m L −1) “0” s are arranged;
Message authentication code generation method characterized by defining a third padding P 3 and (d-k) pieces of "1" bit string aligned.
データMとメッセージ認識子τを入力とし、データMの検証を行うメッセージ認証子検証方法であって、
データMと鍵Kからメッセージ認証子τ’を生成する請求項15から27のいずれかに記載のメッセージ認証子生成方法の各ステップと、
比較部で、メッセージ認識子τとメッセージ認証子τ’とを比較してデータMの検証結果を出力する比較ステップと
を有するメッセージ認証子検証方法。
A message authenticator verification method in which data M and a message recognizer τ are input and data M is verified,
Each step of the message authenticator generation method according to any one of claims 15 to 27, wherein the message authenticator τ 'is generated from the data M and the key K.
A comparison unit that compares the message recognizer τ and the message authenticator τ ′ and outputs a verification result of the data M in the comparison unit.
請求項1から14のいずれかに記載の装置として、コンピュータを動作させるプログラム。   A program for causing a computer to operate as the apparatus according to claim 1. 請求項29記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。   A computer-readable recording medium on which the program according to claim 29 is recorded.
JP2007165141A 2007-06-22 2007-06-22 Message authenticator generation device, message authenticator verification device, message authenticator generation method, message authenticator verification method, program, and recording medium Expired - Fee Related JP4886614B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007165141A JP4886614B2 (en) 2007-06-22 2007-06-22 Message authenticator generation device, message authenticator verification device, message authenticator generation method, message authenticator verification method, program, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007165141A JP4886614B2 (en) 2007-06-22 2007-06-22 Message authenticator generation device, message authenticator verification device, message authenticator generation method, message authenticator verification method, program, and recording medium

Publications (2)

Publication Number Publication Date
JP2009005163A JP2009005163A (en) 2009-01-08
JP4886614B2 true JP4886614B2 (en) 2012-02-29

Family

ID=40321052

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007165141A Expired - Fee Related JP4886614B2 (en) 2007-06-22 2007-06-22 Message authenticator generation device, message authenticator verification device, message authenticator generation method, message authenticator verification method, program, and recording medium

Country Status (1)

Country Link
JP (1) JP4886614B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010218237A (en) * 2009-03-17 2010-09-30 Renesas Electronics Corp Program verification device, and method therefor
WO2017007546A1 (en) * 2015-07-03 2017-01-12 Intel Corporation Apparatus and method for data compression in a wearable device
JP6033504B1 (en) * 2015-07-15 2016-11-30 三菱電機株式会社 Message authenticator generator
CN111052670B (en) * 2017-09-01 2024-02-09 三菱电机株式会社 Encryption device, decryption device, encryption method, decryption method, and computer-readable storage medium

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100720602B1 (en) * 2003-09-26 2007-05-21 니뽄 덴신 덴와 가부시키가이샤 Tag privacy protection method, tag device, backend apparatus, updater, update solicitor, programs therefor and record medium carrying such programs in storage
US7228182B2 (en) * 2004-03-15 2007-06-05 Cardiac Pacemakers, Inc. Cryptographic authentication for telemetry with an implantable medical device

Also Published As

Publication number Publication date
JP2009005163A (en) 2009-01-08

Similar Documents

Publication Publication Date Title
Bellare et al. The knowledge-of-exponent assumptions and 3-round zero-knowledge protocols
Lin et al. Two-round and non-interactive concurrent non-malleable commitments from time-lock puzzles
Buchmann et al. On the security of the Winternitz one-time signature scheme
Preneel The state of cryptographic hash functions
Mironov Hash functions: Theory, attacks, and applications
Canetti et al. On the random-oracle methodology as applied to length-restricted signature schemes
JPWO2010131563A1 (en) Tag generation device, tag verification device, communication system, tag generation method, tag verification method, and recording medium
Kuznetsov et al. Code-based electronic digital signature
JP4886614B2 (en) Message authenticator generation device, message authenticator verification device, message authenticator generation method, message authenticator verification method, program, and recording medium
Armknecht et al. General impossibility of group homomorphic encryption in the quantum world
Black et al. MAC reforgeability
Shen et al. Improved security bounds for generalized Feistel networks
Deshpande et al. Proofs of ignorance and applications to 2-message witness hiding
Maurer et al. Computational indistinguishability amplification: Tight product theorems for system composition
Döttling et al. Maliciously circuit-private FHE from information-theoretic principles
Zhu et al. Efficient construction of provably secure steganography under ordinary covert channels
Hirose et al. Forward-secure sequential aggregate message authentication revisited
Kiayias et al. Directions in polynomial reconstruction based cryptography
Mani et al. Enhancing security in cryptographic algorithm based on LECCRS
Petit et al. Cayley hashes: A class of efficient graph-based hash functions
JP4914329B2 (en) Message authenticator generation device, message authenticator verification device, message authenticator generation method, message authenticator verification method, program, and recording medium
Gauravaram et al. 3C-A provably secure pseudorandom function and message authentication code. A new mode of operation for cryptographic hash function
RP Keyed-CAHASH: a new fast keyed hash function based on cellular automata for authentication
Katti et al. Nonce Generation For The Digital Signature Standard.
Nguyen et al. New Key Extraction Attacks on Threshold ECDSA Implementations

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090729

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20110810

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: 20111129

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111209

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

Free format text: PAYMENT UNTIL: 20141216

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees