JP4914329B2 - 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 PDFInfo
- Publication number
- JP4914329B2 JP4914329B2 JP2007312381A JP2007312381A JP4914329B2 JP 4914329 B2 JP4914329 B2 JP 4914329B2 JP 2007312381 A JP2007312381 A JP 2007312381A JP 2007312381 A JP2007312381 A JP 2007312381A JP 4914329 B2 JP4914329 B2 JP 4914329B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- message
- message authenticator
- integer
- tag
- 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
Links
Images
Description
本発明は、通信路上または記録媒体上のデータに対し、送信者またはデータ作成者の認証が行えるようにするためのメッセージ認証子生成装置、メッセージ認証子検証装置、メッセージ認証子生成方法、メッセージ認証子検証方法、プログラム、および記録媒体に関する。 The present invention relates to a message authenticator generation device, a message authenticator verification device, a message authenticator generation method, and message authentication for enabling authentication of a sender or a data creator for data on a communication path or a recording medium. The present invention relates to a child verification method, a program, and a recording medium.
メッセージ認証では、メッセージ認証コードMACは、kビットの鍵Kと任意のビット長のデータMからメッセージ認証子tagを生成する(tag←MACK(M))。送信者と受信者、またはデータ作成者とデータ利用者とは、メッセージ認証コードMACと鍵Kとを共有することで、次のように認証やデータ内容の検証を行うことができる。 In message authentication, the message authentication code MAC generates a message authenticator tag from a k-bit key K and data M having an arbitrary bit length (tag ← MAC K (M)). By sharing the message authentication code MAC and the key K, the sender and the receiver or the data creator and the data user can perform authentication and verification of the data contents as follows.
送信者またはデータ作成者は、メッセージ認証子生成装置で、鍵K(通常、鍵は1つだが、2つ以上の場合もある)とデータMからメッセージ認証子tagを生成する。そして、データMとメッセージ認証子とを送信または保存する。受信者またはデータ利用者は、メッセージ認証子検証装置で、鍵KとデータMからメッセージ認証子tag’を生成する。そして、tagとtag’とを比較する。tag=tag’ならば、送信者またはデータ作成者の認証、およびデータ内容の整合性が検証されたとする。tag≠tag’ならば、送信者またはデータ作成者の詐称、もしくはデータの改ざんがあると判断する。 The sender or the data creator generates a message authenticator tag from the key K (usually one key but may be two or more) and the data M at 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 tag ′ from the key K and the data M by the message authenticator verification device. Then, tag and tag ′ are compared. If tag = tag ′, it is assumed that the authentication of the sender or the data creator and the consistency of the data contents are verified. If tag ≠ tag ′, it is determined that the sender or the data creator is misrepresented or the data has been tampered with.
従来のメッセージ認証コードには、マークル・ダンガード反復を用いたハッシュ関数HMDを2回適用して安全性を高めたもの(非特許文献1)などがある。非特許文献1のメッセージ認証コードMACK(M)は、次式のようにメッセージ認証子tagを求める。
The conventional message authentication code, is applied twice a hash function H MD using Merkle Dangado repeat that improve safety (non-patent document 1), and the like. The message authentication code MAC K (M) of Non-Patent
vn←f(vn−1‖mn) (2)
をn=1からn=Nまで繰り返し、vNを求め、出力する。中間変数vnはcビットのビット列であり、fは(c+b)ビットのビット列をcビットのビット列に圧縮する圧縮関数である。なお、このメッセージ認証コードに用いる圧縮関数fの場合、cとbの値に対する制約はなく、c>bでもc<bでもかまわない。また、このメッセージ認証コードは、圧縮関数の擬似乱数性に基づく耐偽造安全性証明が可能である(非特許文献2、非特許文献3)。
v n <-f (v n−1 ‖m n ) (2)
Are repeated from n = 1 to n = N to obtain vN and output. Intermediate variable v n is the bit string c bits, f is a compression function that compresses the bit string of (c + b) bits in the bit string of c bits. In the case of the compression function f used for this message authentication code, there are no restrictions on the values of c and b, and c> b or c <b may be used. Further, this message authentication code can be forged security-proof based on the pseudo-random property of the compression function (Non-Patent Document 2, Non-Patent Document 3).
非特許文献1のメッセージ認証コードMACK(M)の安全性は、誕生日限界と呼ばれるレベルまでしか保証されておらず、実際に誕生日攻撃に弱い。そこで、本発明の目的は、誕生日限界を超える安全性を有するメッセージ認証コードを提供することである。
The security of the message authentication code MAC K (M) of Non-Patent
本発明のメッセージ認証子生成装置は、鍵パディング手段、DIL手段、cAU手段、擬似乱数手段を備える。鍵パディング手段は、L+1個のcビット(ただし、cはあらかじめ定めた整数)の鍵K1,…,KL,K’を出力する。あらかじめL+1個の鍵K1,…,KL,K’を記録しておいてもよいし、1つの鍵KからL+1個の鍵を生成してもよい。DIL手段は、DIL関数Φを用いて、データMから、L個(ただし、Lは2以上の整数)のbビット(ただし、bはあらかじめ定めた整数)の整数倍のデータD1,…,DLを生成する。cAU手段は、データDi(ただし、iは1以上L以下の整数)ごとに、cAU関数と鍵Kiを用いて、cビットの中間変数yiを求める。擬似乱数手段は、L個の前記中間変数y1,…,yLから、擬似乱数関数族を用いて、メッセージ認証子tagを求める。
なお、DIL関数Φは、Lを2以上の整数とするときに、
Φ={φi}1≦i≦L
と表される関数であり(ただし、φi:M→Di)、もしM≠M’ならば「φi(M)≠φi(M’)かつφj(M)≠φj(M’)となる1≦i<j≦Lが存在する」という条件を満たす関数である。
The message authenticator generation device of the present invention includes key padding means, DIL means, cAU means, and pseudo-random number means. The key padding means outputs L + 1 c bits (where c is a predetermined integer) keys K 1 ,..., K L , K ′. L + 1 keys K 1 ,..., K L , K ′ may be recorded in advance, or L + 1 keys may be generated from one key K. The DIL means uses the DIL function Φ to obtain data D 1 ,..., An integer multiple of L bits (where L is an integer of 2 or more) b bits (where b is a predetermined integer) from the data M. to generate a D L. The cAU means obtains a c-bit intermediate variable y i using the cAU function and the key K i for each data D i (where i is an integer of 1 to L). The pseudo random number means obtains a message authenticator tag from the L intermediate variables y 1 ,..., Y L using a pseudo random function family.
Note that the DIL function Φ is obtained when L is an integer of 2 or more.
Φ = {φ i } 1 ≦ i ≦ L
(Where φ i : M → D i ), and if M ≠ M ′, “φ i (M) ≠ φ i (M ′) and φ j (M) ≠ φ j (M This is a function that satisfies the condition that 1 ≦ i <j ≦ L exists.
DIL手段は、例えば、データMに対して、あらかじめ定めたパディングを行うことでbビットの整数倍にしたビット列を、すべてのデータD1,…,DLとしてもよい(この場合は、D1=D2=…=DL)。あるいは、DIL手段を以下のようにしてもよい。DIL手段に、パディング部、メッセージブロック生成部、データ生成部を備えさせる。そして、パディング部で、データMに対して、あらかじめ定めたパディングを行うことでbビットの整数倍にしたデータM*を求める。なお、DIL手段に入力されるデータMが、bビットの整数倍に限定されるのであれば、パディング部は不要である。メッセージブロック生成部で、bビットの整数倍のデータM*を、N個のbビットのメッセージブロックmn(ただし、nは1以上N以下の整数)に分割する。データ生成部で、i=1からi=L−1のデータDiを、メッセージブロックmi+(j−1)(L−1)(ただし、jは1以上の整数)を、j=1から For example, the DIL means may set all the data D 1 ,..., DL as a bit string obtained by performing predetermined padding on the data M to an integer multiple of b bits (in this case, D 1 = D 2 = ... = D L ). Alternatively, the DIL means may be as follows. The DIL unit includes a padding unit, a message block generation unit, and a data generation unit. Then, the padding unit obtains data M * which is an integer multiple of b bits by performing predetermined padding on the data M. If the data M input to the DIL means is limited to an integer multiple of b bits, a padding unit is not necessary. The message block generator divides the data M *, which is an integer multiple of b bits, into N b-bit message blocks m n (where n is an integer from 1 to N). In the data generation unit, the data D i from i = 1 to i = L−1 is converted to the message block m i + (j−1) (L−1) (where j is an integer of 1 or more), and j = 1.
本発明のメッセージ認証子検証装置は、本発明のメッセージ認証子生成装置と比較部とを備え、データMとメッセージ認証子τとを入力とし、データMの検証を行う。メッセージ認証子生成装置は、データMからメッセージ認証子tag’を生成する。比較部は、メッセージ認証子tagとメッセージ認証子tag’とを比較してデータMの検証結果を出力する。
The message authenticator verification device according to the present invention includes the message authenticator generation device according to the present invention and a comparison unit, and receives data M and a message authenticator τ as input, and verifies the data M. The message authenticator generation device generates a message authenticator tag ′ from the data M. The comparison unit compares the message authenticator tag and the message authenticator tag ′ and outputs a verification result of the data M.
本発明のメッセージ認証子生成装置は、DIL手段によって、メッセージが異なれば少なくとも2列分は異なっているL列分のデータが出力され、各データはそれぞれcAU手段によって並列に処理され、L個の出力全てが同時に擬似乱数手段によって処理される。したがって、従来のような1列のcAU手段と擬似乱数手段を用いた方法に比べ、セキュリティレベルは2倍となり、誕生日限界を超えるセキュリティを確保できる。 In the message authenticator generation device of the present invention, if the message is different, the DIL means outputs data for L columns which are different by at least two columns, and each data is processed in parallel by the cAU means, and L pieces of data are processed. All outputs are processed simultaneously by the pseudorandom means. Therefore, the security level is doubled as compared with the conventional method using one column of cAU means and pseudo random number means, and security exceeding the birthday limit can be ensured.
さらに、DIL手段で、例えば排他的論理和を用いた方法を採用すれば、データMを分割してデータD1,…,DLを生成でき、列ごとのcAU手段の処理量が減少するので、処理量を並列な処理を行わない場合に近づけることができる。したがって、処理量の増加を抑えながら、誕生日限界を超えたセキュリティレベルを確保できる。 Furthermore, in DIL means, for example by adopting an exclusive using logical sum method, the data D 1 by dividing the data M, ..., it can generate D L, since the processing amount of cAU means for each column is reduced The processing amount can be made close to the case where parallel processing is not performed. Therefore, a security level exceeding the birthday limit can be secured while suppressing an increase in the processing amount.
以下では、説明の重複を避けるため同じ機能を有する構成部や同じ処理を行う処理ステップには同一の番号を付与し、説明を省略する。 Below, in order to avoid duplication of description, the same number is given to the structural part which has the same function, and the process step which performs the same process, and description is abbreviate | omitted.
[第1実施形態]
図3に、本発明のメッセージ認証子生成装置の機能構成例を示す。また、図4に、本発明のメッセージ認証子生成装置の処理フローを示す。さらに、図5に、L=2の場合の本実施形態のDIL手段、cAU手段、擬似乱数手段での処理を示す。メッセージ認証子生成装置100は、鍵パディング手段110、DIL手段120、cAU手段130、擬似乱数手段140を備える。
[First Embodiment]
FIG. 3 shows a functional configuration example of the message authenticator generation device of the present invention. FIG. 4 shows a processing flow of the message authenticator generation device of the present invention. Further, FIG. 5 shows processing in the DIL means, cAU means, and pseudo-random number means of this embodiment when L = 2. The message
なお、以下の説明で使用するcAU関数と擬似乱数関数族の定義は非特許文献1に示されており、この定義に従う。DIL関数Φは、Lを2以上の整数とするときに、
Φ={φi}1≦i≦L
と表される関数であり(ただし、φi:M→Di)、もしM≠M’ならば「φi(M)≠φi(M’)かつφj(M)≠φj(M’)となる1≦i<j≦Lが存在する」という条件を満たす関数である。言い換えれば、「φi(M)=φi(M’)が少なくともL−1個の値i∈{1,2,…,L}について満たされるならば、M=M’が成立する」という条件を満たす関数である。
In addition, the definition of the cAU function and the pseudo random number function family used in the following description is shown in Non-Patent
Φ = {φ i } 1 ≦ i ≦ L
(Where φ i : M → D i ), and if M ≠ M ′, “φ i (M) ≠ φ i (M ′) and φ j (M) ≠ φ j (M This is a function that satisfies the condition that 1 ≦ i <j ≦ L exists. In other words, “M = M ′ holds if φ i (M) = φ i (M ′) is satisfied for at least L−1 values i∈ {1, 2,..., L}”. A function that satisfies the condition.
鍵パディング手段110は、cビット(ただし、cはあらかじめ定めた整数)のL+1個の鍵K1,…,KL,K’を出力する(S110)。なお、L+1個の鍵K1,…,KL,K’は、1つの鍵から生成することもできる。したがって、何個の鍵を記録しておき、どのようにL+1個の鍵K1,…,KL,K’を生成するのかは適宜設計すればよい。 The key padding means 110 outputs L + 1 keys K 1 ,..., K L , K ′ of c bits (where c is a predetermined integer) (S110). Note that L + 1 keys K 1 ,..., K L , K ′ can also be generated from one key. Therefore, how many keys are recorded and how L + 1 keys K 1 ,..., K L , K ′ are generated may be appropriately designed.
DIL手段120は、DIL関数Φを用いて、データMから、L個(ただし、Lは2以上の整数)のbビット(ただし、bはあらかじめ定めた整数)の整数倍のデータD1,…,DL=m1‖m2‖…‖mN(ただし、mnはbビットのビット列である。ここで、nは1以上N以下の整数である。)を生成する(S120)。データD1,…,DLは、データMに対して、あらかじめ定めたパディングを行うことでbビットの整数倍にしたビット列である(この場合は、D1=D2=…=DL)。または、データMをパディングなどによってbビットの整数倍にしたビット列M*を、DIL手段120への入力とし、DIL手段120ではパディングは行わないこととしてもよい。
The DIL means 120 uses the DIL function Φ to obtain data D 1 ,... Which is an integer multiple of L bits (where L is an integer of 2 or more) b bits (where b is a predetermined integer) from the data M. , D L = m 1 ‖m 2 ‖... ‖M N ( where mn is a bit string of b bits, where n is an integer of 1 to N) (S120). Data D 1 ,..., D L is a bit string that is an integer multiple of b bits by performing predetermined padding on the data M (in this case, D 1 = D 2 =... = D L ). . Alternatively, the bit string M * obtained by making the data M an integer multiple of b bits by padding or the like may be input to the
cAU手段130は、データDi(ただし、iは1以上L以下の整数)ごとに、cAU関数と鍵Kiを用いて、cビットの中間変数yiを求める(S130−1,…,S130−L)。具体的には、bビットのビット列m1とcビットの鍵Kiを圧縮関数fでcビットに圧縮する。そして、その圧縮の結果とbビットのビット列m2を圧縮関数fでcビットに圧縮する。このように、圧縮関数fを繰り返し呼び出すことで、中間変数yiを求める。なお、L個のcAU関数の処理(S130−1,…,S130−L)は、L個のcAU手段(130−1,…,130−L)によって実行してもよいし、1個のcAU手段130によって実行してもよい。また、代表的な圧縮関数には、c=160、b=512のsha1やc=256、b=512のsha256などがある(NIST, “Secure hash standard.” FIPS PUB 180-2 (2002))。
The
擬似乱数手段140は、L個の前記中間変数y1,…,yLから、擬似乱数関数族と鍵K’を用いて、メッセージ認証子tagを求める(S140)。例えば、圧縮関数fに、bビットのビット列y1‖…‖yL‖0b-Lcとcビットの鍵K’を入力し、メッセージ認証子tagを求めればよい。ただし、この例の場合、Lc≦bでなければならない。 The pseudo random number means 140 obtains a message authenticator tag from the L intermediate variables y 1 ,..., Y L using the pseudo random function family and the key K ′ (S140). For example, a b-bit bit string y 1 ‖... ‖Y L ‖0 b-Lc and a c-bit key K ′ may be input to the compression function f to obtain a message authenticator tag. However, in this example, Lc ≦ b must be satisfied.
本実施形態のメッセージ認証子生成装置は、cAU手段によってL列の並列な処理を行うので、セキュリティレベルを上げることができる。例えば、Lを2にすることでセキュリティレベルは2倍となり、誕生日限界を超えるセキュリティを確保できる。ただし、Lを増やしすぎても、セキュリティレベルが無駄に高くなるだけである。一方、Lを増やすと処理量が増加してしまうという欠点がある。 Since the message authenticator generation device of this embodiment performs parallel processing of L columns by the cAU means, the security level can be increased. For example, by setting L to 2, the security level is doubled, and security exceeding the birthday limit can be secured. However, even if L is increased too much, the security level is only increased unnecessarily. On the other hand, when L is increased, there is a disadvantage that the processing amount increases.
[第2実施形態]
第1実施形態では、Lを増やすと処理量が増加してしまった。本実施形態では、DIL関数の設計によってLを増やすことで処理量を軽減する方法を示す。
[Second Embodiment]
In the first embodiment, the amount of processing increases when L is increased. In the present embodiment, a method of reducing the processing amount by increasing L by designing the DIL function will be described.
本実施形態のメッセージ認証子生成装置の機能構成例も図3に示す。また、本発明のメッセージ認証子生成装置の処理フローも図4に示す。図6に本実施形態のDIL手段の機能構成、図7に本実施形態のDIL手段の処理フローを示す。さらに、図8に、L=3の場合の本実施形態のDIL手段、cAU手段、擬似乱数手段での処理を示す。 A functional configuration example of the message authenticator generation device of this embodiment is also shown in FIG. The processing flow of the message authenticator generation device of the present invention is also shown in FIG. FIG. 6 shows a functional configuration of the DIL unit of the present embodiment, and FIG. 7 shows a processing flow of the DIL unit of the present embodiment. Further, FIG. 8 shows processing in the DIL means, cAU means, and pseudo-random number means of this embodiment when L = 3.
メッセージ認証子生成装置200は、鍵パディング手段110、DIL手段220、cAU手段130、擬似乱数手段140を備える。
なお、第1実施形態と同じように、以下の説明で使用するcAU関数と擬似乱数関数族の定義は非特許文献1に示されており、この定義に従う。DIL関数Φは、Lを2以上の整数とするときに、
Φ={φi}1≦i≦L
と表される関数であり(ただし、φi:M→Di)、もしM≠M’ならば「φi(M)≠φi(M’)かつφj(M)≠φj(M’)となる1≦i<j≦Lが存在する」という条件を満たす関数である。言い換えれば、「φi(M)=φi(M’)が少なくともL−1個の値i∈{1,2,…,L}について満たされるならば、M=M’が成立する」という条件を満たす関数である。
The message authenticator generating
As in the first embodiment, the definition of the cAU function and the pseudorandom function family used in the following description is shown in
Φ = {φ i } 1 ≦ i ≦ L
(Where φ i : M → D i ), and if M ≠ M ′, “φ i (M) ≠ φ i (M ′) and φ j (M) ≠ φ j (M This is a function that satisfies the condition that 1 ≦ i <j ≦ L exists. In other words, “M = M ′ holds if φ i (M) = φ i (M ′) is satisfied for at least L−1 values i∈ {1, 2,..., L}”. A function that satisfies the condition.
鍵パディング手段110は、第1実施形態と同じであり、L+1個の鍵K1,…,KL,K’を出力する(S110)。DIL手段220は、図6に示すように、パディング部221、メッセージブロック生成部222、データ生成部223を備える。パディング部221で、データMに対して、あらかじめ定めたパディングを行うことでbビットの整数倍にしたデータM*を求める(S221)。なお、DIL手段220に入力されるデータMが、bビットの整数倍に限定されるのであれば、パディング部221は不要である。メッセージブロック生成部222で、データM*を、N個のbビットのメッセージブロックmn(ただし、nは1以上N以下の整数)に分割する(S222)。データ生成部223で、i=1からi=L−1のデータDiを、メッセージブロックmi+(j−1)(L−1)(ただし、jは1以上の整数)を、j=1から
The key padding means 110 is the same as that in the first embodiment, and outputs L + 1 keys K 1 ,..., K L , K ′ (S110). As shown in FIG. 6, the
cAU手段130は、第1実施形態と同じように、データDi(ただし、iは1以上L以下の整数)ごとに、cAU関数と鍵Kiを用いて、cビットの中間変数yiを求める(S130−1,…,S130−L)。
As in the first embodiment, the
擬似乱数手段140は、第1実施形態と同じように、L個の前記中間変数y1,…,yLから、擬似乱数関数族と鍵K’を用いて、メッセージ認証子tagを求める(S140)。 As in the first embodiment, the pseudo random number means 140 obtains the message authenticator tag from the L intermediate variables y 1 ,..., Y L using the pseudo random function family and the key K ′ (S140). ).
本実施形態のDIL手段では、データM*をデータD1,…,DL−1に分配するので、Diのビット数は、データM*のビット数のL−1分の1になる。したがて、cAU手段で圧縮関数fを呼び出す回数は、非特許文献1の方法で圧縮関数fを呼び出す回数の1+1/(L−1)倍となる。つまり、L=2の場合は2倍、L=3の場合は1.5倍、L=4の場合は1.33倍である。このようにLを増やすことで処理量を減少できる。ただし、Lを増やすと必要な鍵の数が増える。したがって、処理量、記録容量などを考慮し、Lの値を適宜設計すればよい。
The DIL means of the present embodiment, the data M * data D 1, ..., so partitioned D L-1, the number of bits of the D i becomes the data M * of the number of bits L-1
本実施形態のメッセージ認証子生成装置は、cAU手段によってL列の並列な処理を行うので、第1実施形態と同じように、誕生日限界を超えるセキュリティを確保できる。さらに、処理量を抑えながら誕生日限界を超えるセキュリティを確保できる(効率がよい)。 Since the message authenticator generation device of this embodiment performs parallel processing of L columns by the cAU means, it is possible to ensure security exceeding the birthday limit as in the first embodiment. In addition, security that exceeds the birthday limit can be secured while reducing the amount of processing (high efficiency).
[第3実施形態]
図9に本発明のメッセージ認証子検証装置の機能構成例を示す。また、図10に本発明のメッセージ認証子検証装置の処理フロー例を示す。メッセージ認証子検証装置500は、第1実施形態、第2実施形態で示したいずれかのメッセージ認証子生成装置100または200と比較部510と記録部590を備え、データMとメッセージ認証子tagが入力、検証結果が出力である。
[Third Embodiment]
FIG. 9 shows a functional configuration example of the message authenticator verification device of the present invention. FIG. 10 shows a processing flow example of the message authenticator verification device of the present invention. The message authenticator verification device 500 includes the message
メッセージ認証子検証装置500内のメッセージ認証子生成装置100(200)は、データMからメッセージ認証子tag’を生成する(S100、またはS200)。比較部510は、メッセージ認証子tagとメッセージ認証子tag’とを比較する。そして、tag=tag’ならば、送信者またはデータ作成者の認証、およびデータ内容の整合性が検証されたとする。tag≠tag’ならば、送信者またはデータ作成者の詐称、もしくはデータの改ざんがあると判断する。そして、検証結果を出力する(S510)。なお、記録部590を備えず、その他の構成部でこれらの情報を記録してもよい。
The message authenticator generation device 100 (200) in the message authenticator verification device 500 generates a message authenticator tag 'from the data M (S100 or S200). The
このような構成なので、メッセージ認証子検証装置500でも、メッセージ認証子生成装置100(200)と同じ効果を得ることができる。 With this configuration, the message authenticator verification device 500 can achieve the same effects as the message authenticator generation device 100 (200).
図11に、コンピュータの機能構成例を示す。なお、本発明のメッセージ認証子生成装置およびメッセージ認証子検証装置は、コンピュータ2000の記録部2020に、本発明の各構成部としてコンピュータ2000を動作させるプログラムを読み込ませ、処理部2010、入力部2030、出力部2040などを動作させることで実現できる。また、コンピュータに読み込ませる方法としては、プログラムをコンピュータ読み取り可能な記録媒体に記録しておき、記録媒体からコンピュータに読み込ませる方法、サーバ等に記録されたプログラムを、電気通信回線等を通じてコンピュータに読み込ませる方法などがある。
FIG. 11 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
100、200、900 メッセージ認証子生成装置
110、910 鍵パディング手段 120、220 DIL手段
130 cAU手段 140 擬似乱数手段
221、921 パディング部 222、922 メッセージブロック生成部
223 データ生成部 500 メッセージ認証子検証装置
510 比較部 590 記録部
920 ハッシュ手段 923 初期値設定部
924 中間変数計算部
100, 200, 900 Message
Claims (10)
L+1個のcビット(ただし、cはあらかじめ定めた整数)の鍵K1,…,KL,K’を出力する鍵パディング手段と、
Φ={φi}1≦i≦L(ただし、Lは2以上の整数、φi:M→Di)と表され、もしM≠M’ならば「φi(M)≠φi(M’)かつφj(M)≠φj(M’)となる1≦i<j≦Lが存在する」という条件を満たすDIL関数Φを用いて、前記データMから、L個のbビット(ただし、bはあらかじめ定めた整数)の整数倍のデータD1,…,DLを生成するDIL手段と、
前記データDi(ただし、iは1以上L以下の整数)ごとに、cAU関数と鍵Kiを用いて、cビットの中間変数yiを求めるcAU手段と、
L個の前記中間変数y1,…,yLから、擬似乱数関数族と鍵K’を用いて、メッセージ認証子tagを求める擬似乱数手段と
を備えるメッセージ認証子生成装置。 A message authenticator generation device that outputs a message authenticator tag for data M,
Key padding means for outputting L + 1 c bits (where c is a predetermined integer) K 1 ,..., K L , K ′;
Φ = {φ i } 1 ≦ i ≦ L (where L is an integer of 2 or more, φ i : M → D i ), and if M ≠ M ′, “φ i (M) ≠ φ i ( M ′) and φ j (M) ≠ φ j (M ′), and using the DIL function Φ that satisfies the condition that 1 ≦ i <j ≦ L exists, L b bits from the data M DIL means for generating data D 1 ,..., D L that is an integer multiple of (where b is a predetermined integer);
CAU means for obtaining a c-bit intermediate variable y i using a cAU function and a key K i for each data D i (where i is an integer of 1 to L);
A message authenticator generation device comprising: pseudo random number means for obtaining a message authenticator tag from the L intermediate variables y 1 ,..., Y L using a pseudo random function family and a key K ′.
前記データDiのいずれかは、前記データMに対して、あらかじめ定めたパディングを行うことでbビットの整数倍にしたビット列である
ことを特徴とするメッセージ認証子生成装置。 The message authenticator generation device according to claim 1,
Wherein any of the data D i, the relative data M, the message authentication code generation device, characterized in that a bit string that is an integer multiple of b bits by performing padding a predetermined.
Lは3以上の整数であり、
前記DIL手段は、
bビットの整数倍のデータM*を、N個のbビットのメッセージブロックmn(ただし、nは1以上N以下の整数)に分割するメッセージブロック生成部と、
i=1からi=L−1の前記データDiを、メッセージブロックmi+(j−1)(L−1)(ただし、jは1以上の整数)を、j=1から
を備えることを特徴とするメッセージ認証子生成装置。 The message authenticator generation device according to claim 1,
L is an integer greater than or equal to 3,
The DIL means includes
a message block generator that divides the data M *, which is an integer multiple of b bits, into N b-bit message blocks m n (where n is an integer between 1 and N);
The data D i from i = 1 to i = L−1 is converted from the message block m i + (j−1) (L−1) (where j is an integer of 1 or more) from j = 1.
前記データMからメッセージ認証子tag’を生成する請求項1から3のいずれかに記載のメッセージ認証子生成装置と、
前記メッセージ認証子tagと前記メッセージ認証子tag’とを比較してデータMの検証結果を出力する比較部と
を備えるメッセージ認証子検証装置。 A message authenticator verification device that receives data M and a message authenticator tag and performs verification of the data M,
The message authenticator generation device according to any one of claims 1 to 3, which generates a message authenticator tag 'from the data M;
A message authenticator verification device comprising: a comparison unit that compares the message authenticator tag and the message authenticator tag ′ and outputs a verification result of data M.
鍵パディング手段で、L+1個のcビット(ただし、cはあらかじめ定めた整数)の鍵K1,…,KL,K’を出力する鍵パディングステップと、
DIL手段で、Φ={φi}1≦i≦L(ただし、Lは2以上の整数、φi:M→Di)と表され、もしM≠M’ならば「φi(M)≠φi(M’)かつφj(M)≠φj(M’)となる1≦i<j≦Lが存在する」という条件を満たすDIL関数Φを用いて、前記データMから、L個のbビット(ただし、bはあらかじめ定めた整数)の整数倍のデータD1,…,DLを生成するDILステップと、
cAU手段で、前記データDi(ただし、iは1以上L以下の整数)ごとに、cAU関数と鍵Kiを用いて、cビットの中間変数yiを求めるcAUステップと、
擬似乱数手段で、L個の前記中間変数y1,…,yLから、擬似乱数関数族と鍵K’を用いて、メッセージ認証子tagを求める擬似乱数ステップと
を有するメッセージ認証子生成方法。 A message authenticator generation method for outputting a message authenticator tag for data M,
A key padding step for outputting L + 1 c bits (where c is a predetermined integer) K 1 ,..., K L , K ′ by key padding means;
In the DIL means, φ = {φ i } 1 ≦ i ≦ L (where L is an integer of 2 or more, φ i : M → D i ), and if M ≠ M ′, “φ i (M) Using the DIL function Φ satisfying the condition that 1 ≦ i <j ≦ L exists such that ≠ φ i (M ′) and φ j (M) ≠ φ j (M ′), L A DIL step for generating data D 1 ,..., D L that is an integer multiple of b bits (where b is a predetermined integer);
cAU step for obtaining c-bit intermediate variable y i by cAU means using cAU function and key K i for each data D i (where i is an integer of 1 or more and L or less);
A pseudo-random number means, comprising: a pseudo-random number step for obtaining a message authenticator tag from the L intermediate variables y 1 ,..., Y L using a pseudo-random function family and a key K ′.
前記データDiのいずれかは、前記データMに対して、あらかじめ定めたパディングを行うことでbビットの整数倍にしたビット列である
ことを特徴とするメッセージ認証子生成方法。 The message authenticator generation method according to claim 5, comprising:
Wherein any of the data D i, the relative data M, the message authentication code generation method which is a bit string that is an integer multiple of b bits by performing padding a predetermined.
Lは3以上の整数であり、
前記DILステップは、
bビットの整数倍のデータM*を、N個のbビットのメッセージブロックmn(ただし、nは1以上N以下の整数)に分割するメッセージブロック生成サブステップと、
i=1からi=L−1の前記データDiを、メッセージブロックmi+(j−1)(L−1)(ただし、jは1以上の整数)を、j=1から
を有することを特徴とするメッセージ認証子生成方法。 The message authenticator generation method according to claim 5, comprising:
L is an integer greater than or equal to 3,
The DIL step includes
a message block generation sub-step for dividing the data M *, which is an integer multiple of b bits, into N b-bit message blocks m n (where n is an integer between 1 and N);
The data D i from i = 1 to i = L−1 is converted from the message block m i + (j−1) (L−1) (where j is an integer of 1 or more) from j = 1.
前記データMからメッセージ認証子tag’を生成する請求項5から7のいずれかに記載のメッセージ認証子生成方法の各ステップと、
比較部で、前記メッセージ認証子tagと前記メッセージ認証子tag’とを比較してデータMの検証結果を出力する比較ステップと
を有するメッセージ認証子検証方法。 A message authenticator verification method in which data M and a message authenticator tag are input, and data M is verified.
Each step of the message authenticator generation method according to claim 5, wherein a message authenticator tag ′ is generated from the data M;
A comparison step of comparing the message authenticator tag with the message authenticator tag ′ and outputting a verification result of the data M in a comparison unit;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007312381A JP4914329B2 (en) | 2007-12-03 | 2007-12-03 | 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 |
---|---|---|---|
JP2007312381A JP4914329B2 (en) | 2007-12-03 | 2007-12-03 | 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 |
---|---|
JP2009141407A JP2009141407A (en) | 2009-06-25 |
JP4914329B2 true JP4914329B2 (en) | 2012-04-11 |
Family
ID=40871629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007312381A Expired - Fee Related JP4914329B2 (en) | 2007-12-03 | 2007-12-03 | 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) | JP4914329B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5427117B2 (en) * | 2010-06-11 | 2014-02-26 | 日本電信電話株式会社 | Message authenticator generation device, message authenticator verification device, message authenticator generation method, message authenticator verification method, and program |
CN115174125A (en) * | 2022-09-07 | 2022-10-11 | 北京笔新互联网科技有限公司 | Method and device for acquiring trusted true random number in trusted execution environment |
-
2007
- 2007-12-03 JP JP2007312381A patent/JP4914329B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2009141407A (en) | 2009-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5447510B2 (en) | Tag generation device, tag verification device, communication system, tag generation method, tag verification method, and recording medium | |
JP6519473B2 (en) | Authentication encryption apparatus, authentication encryption method and program for authentication encryption | |
EP2691906B1 (en) | Method and system for protecting execution of cryptographic hash functions | |
JP6305642B2 (en) | Message authenticator generating apparatus, message authenticator generating method, and message authenticator generating program | |
JP5704159B2 (en) | Block encryption device, block decryption device, block encryption method, block decryption method, and program | |
JP6386198B1 (en) | Encryption device and decryption device | |
JP6884284B2 (en) | White box calculation of keyed message authentication code | |
Maetouq et al. | Comparison of hash function algorithms against attacks: A review | |
WO2014136386A1 (en) | Tag generation device, tag generation method, and tag generation program | |
CN111066077B (en) | Encryption device, encryption method, decryption device, and decryption method | |
US8526602B2 (en) | Adjustment-value-attached block cipher apparatus, cipher generation method and recording medium | |
Sadeghi-Nasab et al. | A comprehensive review of the security flaws of hashing algorithms | |
JP4914329B2 (en) | Message authenticator generation device, message authenticator verification device, message authenticator generation method, message authenticator verification method, program, and recording medium | |
JP5427117B2 (en) | Message authenticator generation device, message authenticator verification device, message authenticator generation method, message authenticator verification method, and program | |
KR19990053174A (en) | How to Check Integrity of Information Using Hash Function | |
JP4914381B2 (en) | Message authenticator generation device, message authenticator verification device, message authenticator generation method, message authenticator verification method, program, and recording medium | |
JP2009169316A (en) | Hash function operational device, signature device, program and hash function operational method | |
JP6305643B2 (en) | Message authenticator generating apparatus, message authenticator generating method, and message authenticator generating program | |
Shahapure et al. | Variation and security enhancement of block ciphers by embedding | |
JP6033504B1 (en) | Message authenticator generator | |
JP5006770B2 (en) | Message authenticator generation device, message authenticator verification device, message authenticator generation method, message authenticator verification method, program, and recording medium | |
Sagar | Cryptographic Hashing Functions-MD5 | |
CN113761561B (en) | SHA1 encryption method and device based on convolution optimization | |
CN114244552B (en) | Data encryption transmission method and device based on block chain | |
Oo et al. | IMPLEMENTATION OF SECURE IMAGE TRANSFERRING BY USING RSA AND SHA-1 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100114 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20110812 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111222 |
|
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: 20120110 |
|
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: 20120120 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150127 Year of fee payment: 3 |
|
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 |