JP2009005163A - メッセージ認証子生成装置、メッセージ認証子検証装置、メッセージ認証子生成方法、メッセージ認証子検証方法、プログラム、および記録媒体 - Google Patents
メッセージ認証子生成装置、メッセージ認証子検証装置、メッセージ認証子生成方法、メッセージ認証子検証方法、プログラム、および記録媒体 Download PDFInfo
- Publication number
- JP2009005163A JP2009005163A JP2007165141A JP2007165141A JP2009005163A JP 2009005163 A JP2009005163 A JP 2009005163A JP 2007165141 A JP2007165141 A JP 2007165141A JP 2007165141 A JP2007165141 A JP 2007165141A JP 2009005163 A JP2009005163 A JP 2009005163A
- Authority
- JP
- Japan
- Prior art keywords
- padding
- bit
- bit string
- key
- message authenticator
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
【解決手段】本発明のメッセージ認証子生成装置は、パディング部と付加ビット生成部とハッシュ部を備える。パディング部は、第1パディングP1、第2パディングP2、第3パディングP3を定める。付加ビット生成部は、鍵K、第1パディングP1、データM、第2パディングP2、鍵K、第3パディングP3、付加ビットπを結合したビット列が、ハッシュ関数内の圧縮関数fで圧縮されるビット長dの整数倍となるように、付加ビットπを生成する。ハッシュ部は、 鍵K、第1パディングP1、データM、第2パディングP2、鍵K、第3パディングP3、付加ビットπの順番で結合されたビット列をハッシュ関数で変換した結果を、メッセージ認証子τとして出力する。
【選択図】図1
Description
送信者またはデータ作成者は、メッセージ認証子生成装置で、鍵KとデータMからメッセージ認証子τを生成する。そして、データMとメッセージ認証子とを送信または保存する。受信者またはデータ利用者は、メッセージ認証子検証装置で、鍵KとデータMからメッセージ認証子τ’を生成する。そして、τとτ’とを比較する。τ=τ’ならば、送信者またはデータ作成者の認証、およびデータ内容の整合性が検証されたとする。τ≠τ’ならば、送信者またはデータ作成者の詐称、もしくはデータの改ざんがあると判断する。
D‖π←Π(D) (2)
v←F(D‖π) (3)
vi←f(vi−1‖mi) (4)
ただし、vはハッシュ関数Hの出力であって、nビットのビット列である。Dはハッシュ関数への入力であって、任意のビット長のビット列である。“‖”はビット列の結合を意味する記号、πはビット列の長さを調整するために付加される付加ビットである。viはnビットのビット列であって、圧縮関数fをi回繰り返したときの圧縮結果である。miはビット列M‖πをdビットずつ区切った場合のi番目のビット列を示しており、dビットのビット列である。ビット列M‖πのビット長がdのL倍とすると、式(4)をL回繰り返したときの圧縮結果vLが式(3)の出力vとなる。なお、初期のビット列v0には、あらかじめ定めた初期ベクトルVが用いられる。つまり、式(3)は式(4)をL回繰り返すことで実現できる。また、式(2)と(3)との組合せによって、ハッシュ関数Hが構成される。
τ←H(K‖P‖M‖K’) (6)
ただし、Pはあらかじめ定められたパディング定数である。このメッセージ認証コードは、圧縮関数の擬似乱数性に基づく耐偽造安全性証明が可能である(非特許文献5)。しかし、鍵を効率的に回復される攻撃法が知られており、ぜい弱である(非特許文献6)。
τ←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).
非特許文献2のメッセージ認証コードは、圧縮関数の擬似乱数性に基づく耐偽造安全性証明が可能であり、圧縮関数を用いる計算の追加は1〜2回で済み、ハッシュ関数の呼び出しも1回でよい。しかし、鍵を2つ必要とし、鍵回復攻撃に対して安全でないという問題があった。
このような状況から、本発明の目的は、鍵が1つでよく、圧縮関数を用いる計算の追加は1〜2回で済み、ハッシュ関数の呼び出しが1回でよいメッセージ認証子生成装置、メッセージ認証子検証装置、メッセージ認証子生成方法、メッセージ認証子検証方法を実現することである。
(1)データMに第2パディングP2を結合したビット列から、データMを一意に求めることができるという条件。
(2)k+p1+m+p2がdの倍数であるという条件。
(3)k+p1がdであるという条件。
(4)第1パディングP1がいかなる付加ビットπとも異なり、第3パディングP3をなしとするという条件。
(6)データMをdビットずつに区切った時に最後に余るビット列をビット列ML(ただし、MLのビット長mLは0からd−1)とし、鍵K、第3パディングP3、前記ビット列ML、付加ビットπを結合したビット列のビット長がd以下となるビット長mLの最大値を最大ビット長mLmaxとし、あらかじめ定めた0以上mLmax以下の整数を整数Σとする。また、いかなる付加ビットπおよびいかなるビット列MLに対しても、第1パディングP1は、第3パディングの第1候補P3’と付加ビットπとを結合したビット列とは異なる、かつ、第1パディングP1は、第3パディングの第2候補P3”とビット列MLと付加ビットπとを結合したビット列とは異なるように、第1パディングP1と第3パディングの第1候補P3’と第3パディングの第2候補P3”とを定める。そして、ビット長mLが整数Σより大きい場合には、第1パディングP1、第2パディングP2を用いると共に、第3パディングP3として第1候補P3’を用いる。ビット長mLが整数Σ以下の場合には、第1パディングP1を用いると共に、第2パディングP2をなしとし、第3パディングP3として第2候補P3”にビット列MLを結合させたビット列を用いるという条件。
また、本発明のメッセージ認証子検証装置は、前述のメッセージ認証子生成装置と比較部とを備える。メッセージ認証子検証装置内のメッセージ認証子生成装置は、データMと鍵Kからメッセージ認証子τ’を生成する。比較部は、メッセージ認識子τとメッセージ認証子τ’とを比較してデータMの検証結果を出力する。
さらに、第1パディングP1、第2パディングP2、第3パディングP3を、上述のいくつかの条件を満たすように決定すれば、圧縮関数の擬似乱数性に基づく耐偽造安全性証明が可能であり、鍵回復攻撃に対する安全性を確保できる。例えば、(1)〜(4)の条件を満たせば、演算量を少なくしながら、安全性を確保できる。(1)と(2)と(5)の条件を満たせば、さらに演算量を少なくできる。(1)〜(3)と(6)の条件を満たせば、さらに圧縮率の低い圧縮関数を用いることができる。(1)〜(3)と(7)の条件を満たせば、(1)〜(4)の条件を満たす場合と同等の効果が得られる。このように、これらの条件は組み合わせることができる。
第1実施形態では、本発明のメッセージ認証子生成装置とメッセージ認証子生成方法を示す。図1に本発明のメッセージ認証子生成装置の機能構成例を示す。また、図2に本発明のメッセージ認証子生成装置の処理フローを示す。メッセージ認証子生成装置100は、パディング部110、付加ビット生成部120、ハッシュ部130、記録部190を備え、鍵K(ビット長k)とデータM(ビット長m)とが入力、メッセージ認証子τ(ビット長n)が出力である。
(2)k+p1+m+p2がdの倍数であるという条件。
(3)k+p1がdであるという条件。
(4)第1パディングP1がいかなる付加ビットπとも異なり、第3パディングP3をなしとするという条件。
(5)第1パディングP1のビット列が第3パディングP3のビット列の一部または全部とならない、かつ、第3パディングP3のビット列が第1パディングP1のビット列の一部または全部とならないという条件。
第1パディングP1、第2パディングP2、第3パディングP3を、上記のいくつかの条件を満たすように決定すれば、圧縮関数の擬似乱数性に基づく耐偽造安全性証明が可能であり、鍵回復攻撃に対する安全性を確保できる。
1つ目の組み合わせの例は、(1)〜(4)の条件を満たすことである。この例では、データMをdビットずつに区切った時に最後に余るビット列をビット列ML(ただし、MLのビット長mLは0からd−1)とする。この条件の具体例としては、第1パディングP1を(d−k)個の“0”が並んだビット列、第2パディングP2を“1”と(d−mL−1)個の“0”が並んだビット列、第3パディングP3をなしと定める例がある。
2つ目の組み合わせの例は、(1)と(2)と(5)の条件を満たすことである。この例では、鍵K、第1パディングP1、データMを結合したビット列を、dビットずつに区切った時に最後に余るビット列をビット列ML(ただし、MLのビット長mLは0からd−1)とする。この条件の具体例としては、次のような定め方がある。第1パディングP1を“0”とする。第2パディングP2を、(k+1+m)がdより小さいときは“1”と(d−k−m−2)個の“0”が並んだビット列、(k+1+m)がd以上のときは“1”と(d−mL−1)個の“0”が並んだビット列とする。第3パディングP3を“1”とする。
3つ目の組み合わせの例は、(1)〜(3)と(6)の条件を満たすことである。この例では、データMを結合したビット列を、dビットずつに区切った時に最後に余るビット列をビット列ML(ただし、MLのビット長mLは0からd−1)とする。この条件の具体例としては、次のような定め方がある。ビット長mLが0より大きい場合には、第1パディングP1を(d−k)個の“0”が並んだビット列、第2パディングP2を“1”と(d−mL−1)個の“0”が並んだビット列、第3パディングP3を“0”とする。ビット長mLが0の場合には、第1パディングP1を(d−k)個の“0”が並んだビット列、第2パディングP2をなし、第3パディングP3を“1”とする。
4つ目の組み合わせの例は、(1)〜(3)と(7)の条件を満たすことである。この例では、データMをdビットずつに区切った時に最後に余るビット列をビット列ML(ただし、MLのビット長mLは0からd−1)とする。この条件の具体例としては、第1パディングP1を(d−k)個の“0”が並んだビット列、第2パディングP2を“1”と(d−mL−1)個の“0”が並んだビット列、第3パディングP3を(d−k)個の“1”が並んだビット列と定める例がある。
なお、上述の条件や条件の組み合わせは例示である。条件は(1)〜(7)に限るものではなく、条件の組み合わせも上述の例に限るものでもない。
図8に本発明のメッセージ認証子検証装置の機能構成例を示す。また、図9に本発明のメッセージ認証子検証装置の処理フロー例を示す。メッセージ認証子検証装置200は、第1実施形態で示したメッセージ認証子生成装置100と比較部210と記録部290を備え、データM(ビット長m)とメッセージ認証子τ(ビット長n)が入力、検証結果が出力である。
図10に、コンピュータの機能構成例を示す。なお、本発明のメッセージ認証子生成装置およびメッセージ認証子検証装置は、コンピュータ2000の記録部2020に、本発明の各構成部としてコンピュータ2000を動作させるプログラムを読み込ませ、処理部2010、入力部2030、出力部2040などを動作させることで実現できる。また、コンピュータに読み込ませる方法としては、プログラムをコンピュータ読み取り可能な記録媒体に記録しておき、記録媒体からコンピュータに読み込ませる方法、サーバ等に記録されたプログラムを、電気通信回線等を通じてコンピュータに読み込ませる方法などがある。
以下では、第1実施形態の条件の組み合わせの例1で示した具体例で、安全性が確保されることを証明する。
まず、証明に使用する記号等を以下のように定義する。
“V”は、圧縮手段に入力する初期ベクトル(Initial Vector)である。
“0p”は、p個の“0”が並んだビット列である。
“攻撃者”は、オラクルを呼び出すアルゴリズムAである。
cAU(computationally Almost Universal):au攻撃者 Aはオラクルを呼び出さない。メッセージの組(M,M’)∈X×Xを出力するだけである。
Aを、最大値tの時間リソースと最大μビットの出力メッセージのfに対するau攻撃者とする。上記の定義より、
次の定理1は、条件の組み合わせ1による構成の安全性を示している。
圧縮関数fをf:{0,1}n+p→{0,1}n、fで構成される条件の組み合わせ1による構成SKをSK:{0,1}≦N→{0,1}nとすると、条件の組み合わせ1による構成Sは、
Aを、最大値tの時間リソースを持ち、最大q(≧2)回のオラクルへの質問とそれぞれ最大μビットのメッセージを出力するSに対するprf攻撃者とする。
ここで、一般性を失うことなく攻撃者Aは質問を繰り返さず、たとえAの質問へのどのような返答が行われたとしても、Aの質問の総数は常に最大値q以下であると仮定する。M1,…,Mqを順番にAの質問とする。
E’を、1≦i<j≦qに対する事象
圧縮関数fをf:{0,1}n+p→{0,1}nとすると、マークル・ダンガード繰返しによって圧縮関数fから構成された鍵付ハッシュ関数FK:{0,1}d*→{0,1}nがcAUならば、任意の1対1パディングを組み合わせて構成した
Aを、最大値tの時間リソースを持ち、それぞれ最大μビットのメッセージ(M,M’)を出力する、
圧縮関数fをf:{0,1}n+p→{0,1}nとすると、
命題4は非特許文献4で証明されている。
上述の命題から、以下の式が成り立つ。
なお、組み合わせの例2、条件の組み合わせの例3、条件の組み合わせの例4は、以下に示す定理2、定理3、定理4を同様に証明することで、安全性の証明ができる。具体的な証明は省略する。
圧縮関数fをf:{0,1}n+p→{0,1}n、fで構成される条件の組み合わせ2による構成 SKをSK:{0,1}≦N→{0,1}nとすると、
圧縮関数fをf:{0,1}n+p→{0,1}n、fで構成される条件の組み合わせ3による構成 SKをSK:{0,1}≦N→{0,1}nとすると、
圧縮関数fをf:{0,1}n+p→{0,1}n、fで構成される条件の組み合わせ4による構成 SKをSK:{0,1}≦N→{0,1}nとすると、
110 パディング部
120 付加ビット生成部
130 ハッシュ部
131 ビット列取り出し手段
132 圧縮手段
190 記録部
200 メッセージ認証子検証装置
210 比較部
290 記録部
Claims (30)
- 鍵KとデータMとを入力とし、メッセージ認証子τを出力するメッセージ認証子生成装置であって、
第1パディングP1、第2パディングP2、第3パディングP3を、少なくとも1つは前記鍵Kまたは前記データMを用いて定めるパディング部と、
鍵K、第1パディングP1、データM、第2パディングP2、鍵K、第3パディングP3、付加ビットπを結合したビット列が、当該メッセージ認証子生成装置で使用するハッシュ関数内の圧縮関数fで圧縮されるビット長dの整数倍となるように、付加ビットπを生成する付加ビット生成部と、
鍵K、第1パディングP1、データM、第2パディングP2、鍵K、第3パディングP3、付加ビットπの順番で結合されたビット列のハッシュ関数による変換結果を、メッセージ認証子τとして出力するハッシュ部と、
を備えるメッセージ認証子生成装置。 - 請求項1記載のメッセージ認証子生成装置であって、
前記圧縮関数fは、ビット長n+dのビット列をビット長nに圧縮する関数、初期ベクトルはあらかじめ定められたビット長がnのビット列とするときに、
前記ハッシュ部は、
鍵K、第1パディングP1、データM、第2パディングP2、鍵K、第3パディングP3、付加ビットπの順番でdビットずつ取り出すビット列取り出し手段と、
前記ビット列取り出し手段で取り出したビット列と、初期ベクトルVまたは前回の圧縮関数fによる圧縮結果とを入力として、圧縮関数fによる圧縮結果を求める圧縮手段と、
を備え、
前記ビット列取り出し手段でのビット列の取り出しと前記圧縮手段での圧縮を繰り返し、
鍵K、第1パディングP1、データM、第2パディングP2、鍵K、第3パディングP3、付加ビットπのすべてのビット列が圧縮に使用されたときの圧縮結果をメッセージ認証子τとする
ことを特徴とするメッセージ認証子生成装置。 - 請求項1または2記載のメッセージ認証子生成装置であって、
前記パディング部は、
データMに第2パディングP2を結合したビット列から、データMを一意に求めることができるという条件を満たすように第2パディングP2を定める
ことを特徴とするメッセージ認証子生成装置。 - 請求項3記載のメッセージ認証子生成装置であって、
鍵K、データM、第1パディングP1、第2パディングP2のビット長をそれぞれ、k、m、p1、p2とするときに、
前記パディング部は、
k+p1+m+p2がdの倍数となるという条件も満たすように第2パディングP2を定める
ことを特徴とするメッセージ認証子生成装置。 - 請求項4記載のメッセージ認証子生成装置であって、
前記パディング部は、
k+p1がdとなるという条件も満たすように第1パディングP1を定める
ことを特徴とするメッセージ認証子生成装置。 - 請求項5記載のメッセージ認証子生成装置であって、
前記パディング部は、
いかなる付加ビットπとも異なるという条件も満たすように第1パディングP1を定め、
第3パディングP3をなしとする
ことを特徴とするメッセージ認証子生成装置。 - 請求項1または2記載のメッセージ認証子生成装置であって、
鍵Kのビット長をkとし、
データMをdビットずつに区切った時に最後に余るビット列をビット列ML(ただし、MLのビット長mLは0からd−1)とするときに、
前記パディング部は、
第1パディングP1を(d−k)個の“0”が並んだビット列、
第2パディングP2を“1”と(d−mL−1)個の“0”が並んだビット列、
第3パディングP3をなし
と定める
ことを特徴とするメッセージ認証子生成装置。 - 請求項4記載のメッセージ認証子生成装置であって、
前記パディング部は、
第1パディングP1のビット列が第3パディングP3のビット列の一部または全部とならない、かつ、第3パディングP3のビット列が第1パディングP1のビット列の一部または全部とならないという条件も満たすように、第1パディングP1と第3パディングP3とを定める
ことを特徴とするメッセージ認証子生成装置。 - 請求項1または2記載のメッセージ認証子生成装置であって、
鍵K、データMのビット長をそれぞれ、k、mとし、
鍵K、第1パディングP1、データMを結合したビット列を、dビットずつに区切った時に最後に余るビット列をビット列ML(ただし、MLのビット長mLは0からd−1)とするときに、
前記パディング部は、
第1パディングP1を“0”、
第2パディングP2を、(k+1+m)がdより小さいときは“1”と(d−k−m−2)個の“0”が並んだビット列、(k+1+m)がd以上のときは“1”と(d−mL−1)個の“0”が並んだビット列、
第3パディングP3を“1”
と定める
ことを特徴とするメッセージ認証子生成装置。 - 請求項5記載のメッセージ認証子生成装置であって、
データMをdビットずつに区切った時に最後に余るビット列をビット列ML(ただし、MLのビット長mLは0からd−1)とし、
鍵K、第3パディングP3、前記ビット列ML、付加ビットπを結合したビット列のビット長がd以下となる前記ビット長mLの最大値を最大ビット長mLmaxとし、
あらかじめ定めた0以上mLmax以下の整数を整数Σとするときに、
前記パディング部は、
いかなる付加ビットπおよびいかなる前記ビット列MLに対しても、第1パディングP1は、第3パディングの第1候補P3’と付加ビットπとを結合したビット列とは異なるという条件と、第1パディングP1は、第3パディングの第2候補P3”と前記ビット列MLと付加ビットπとを結合したビット列とは異なるという条件も満たすように、第1パディングP1と第3パディングの第1候補P3’と第3パディングの第2候補P3”とを定め、
前記ビット長mLが前記整数Σより大きい場合には、前記第1パディングP1、前記第2パディングP2を用いると共に、第3パディングP3として前記第1候補P3’を用い、
前記ビット長mLが前記整数Σ以下の場合には、前記第1パディングP1を用いると共に、前記第2パディングP2にかかわらず第2パディングP2をなしとし、第3パディングP3として前記第2候補P3”に前記ビット列MLを結合させたビット列を用いる
ことを特徴とするメッセージ認証子生成装置。 - 請求項1または2記載のメッセージ認証子生成装置であって、
鍵Kのビット長をkとし、
データMをdビットずつに区切った時に最後に余るビット列をビット列ML(ただし、MLのビット長mLは0からd−1)とするときに、
前記パディング部は、
前記ビット長mLが0より大きい場合には、
第1パディングP1を(d−k)個の“0”が並んだビット列、
第2パディングP2を“1”と(d−mL−1)個の“0”が並んだビット列、
第3パディングP3を“0”
と定め、
前記ビット長mLが0の場合には、
第1パディングP1を(d−k)個の“0”が並んだビット列、
第2パディングP2をなし、
第3パディングP3を“1”
と定める
ことを特徴とするメッセージ認証子生成装置。 - 請求項5記載のメッセージ認証子生成装置であって、
前記パディング部は、
第1パディングP1と第3パディングP3とが異なるという条件も満たすように、第1パディングP1と第3パディングP3とを定める
ことを特徴とするメッセージ認証子生成装置。 - 請求項1または2記載のメッセージ認証子生成装置であって、
鍵Kのビット長をkとし、
データMをdビットずつに区切った時に最後に余るビット列をビット列ML(ただし、MLのビット長mLは0からd−1)とし、
前記パディング部は、
第1パディングP1を(d−k)個の“0”が並んだビット列、
第2パディングP2を“1”と(d−mL−1)個の“0”が並んだビット列、
第3パディングP3を(d−k)個の“1”が並んだビット列
と定める
ことを特徴とするメッセージ認証子生成装置。 - データMとメッセージ認識子τを入力とし、データMの検証を行うメッセージ認証子検証装置であって、
データMと鍵Kからメッセージ認証子τ’を生成する請求項1から13のいずれかに記載のメッセージ認証子生成装置と、
メッセージ認識子τとメッセージ認証子τ’とを比較してデータMの検証結果を出力する比較部と
を備えるメッセージ認証子検証装置。 - 鍵KとデータMとを入力とし、メッセージ認証子τを出力するメッセージ認証子生成方法であって、
パディング部で、第1パディングP1、第2パディングP2、第3パディングP3を、少なくとも1つは前記鍵Kまたは前記データMを用いて定めるパディングステップと、
付加ビット生成部で、鍵K、第1パディングP1、データM、第2パディングP2、鍵K、第3パディングP3、付加ビットπを結合したビット列が、当該メッセージ認証子生成装置で使用するハッシュ関数内の圧縮関数fで圧縮されるビット長dの整数倍となるように、付加ビットπを生成する付加ビット生成ステップと、
ハッシュ部で、鍵K、第1パディングP1、データM、第2パディングP2、鍵K、第3パディングP3、付加ビットπの順番で結合されたビット列のハッシュ関数による変換結果を、メッセージ認証子τとして出力するハッシュステップと、
を有するメッセージ認証子生成方法。 - 請求項15記載のメッセージ認証子生成方法であって、
前記圧縮関数fは、ビット長n+dのビット列をビット長nに圧縮する関数、初期ベクトルはあらかじめ定められたビット長がnのビット列とするときに、
前記ハッシュステップは、
鍵K、第1パディングP1、データM、第2パディングP2、鍵K、第3パディングP3、付加ビットπの順番でdビットずつ取り出すビット列取り出しサブステップと、
前記ビット列取り出し手段で取り出したビット列と、初期ベクトルVまたは前回の圧縮関数fによる圧縮結果とを入力として、圧縮関数fによる圧縮結果を求める圧縮サブステップと、
鍵K、第1パディングP1、データM、第2パディングP2、鍵K、第3パディングP3、付加ビットπのすべてのビット列が圧縮に使用されたことを確認する確認サブステップ
を有し、
前記ビット列取り出しサブステップでのビット列の取り出しと前記圧縮サブステップでの圧縮を繰り返し、
鍵K、第1パディングP1、データM、第2パディングP2、鍵K、第3パディングP3、付加ビットπのすべてのビット列が圧縮に使用されたときの圧縮結果をメッセージ認証子τとする
ことを特徴とするメッセージ認証子生成方法。 - 請求項15または16記載のメッセージ認証子生成方法であって、
前記パディングステップは、
データMに第2パディングP2を結合したビット列から、データMを一意に求めることができるという条件を満たすように第2パディングP2を定める
ことを特徴とするメッセージ認証子生成方法。 - 請求項17記載のメッセージ認証子生成方法であって、
鍵K、データM、第1パディングP1、第2パディングP2のビット長をそれぞれ、k、m、p1、p2とするときに、
前記パディングステップは、
k+p1+m+p2がdの倍数となるという条件も満たすように第2パディングP2を定める
ことを特徴とするメッセージ認証子生成方法。 - 請求項18記載のメッセージ認証子生成方法であって、
前記パディングステップは、
k+p1がdとなるという条件も満たすように第1パディングP1を定める
ことを特徴とするメッセージ認証子生成方法。 - 請求項19記載のメッセージ認証子生成方法であって、
前記パディングステップは、
いかなる付加ビットπとも異なるという条件も満たすように第1パディングP1を定め、
第3パディングP3をなしとする
ことを特徴とするメッセージ認証子生成方法。 - 請求項15または16記載のメッセージ認証子生成方法であって、
鍵Kのビット長をkとし、
データMをdビットずつに区切った時に最後に余るビット列をビット列ML(ただし、MLのビット長mLは0からd−1)とするときに、
前記パディングステップは、
第1パディングP1を(d−k)個の“0”が並んだビット列、
第2パディングP2を“1”と(d−mL−1)個の“0”が並んだビット列、
第3パディングP3をなし
と定める
ことを特徴とするメッセージ認証子生成方法。 - 請求項18記載のメッセージ認証子生成方法であって、
前記パディングステップは、
第1パディングP1のビット列が第3パディングP3のビット列の一部または全部とならない、かつ、第3パディングP3のビット列が第1パディングP1のビット列の一部または全部とならないという条件も満たすように、第1パディングP1と第3パディングP3とを定める
ことを特徴とするメッセージ認証子生成方法。 - 請求項15または16記載のメッセージ認証子生成方法であって、
鍵K、データMのビット長をそれぞれ、k、mとし、
鍵K、第1パディングP1、データMを結合したビット列を、dビットずつに区切った時に最後に余るビット列をビット列ML(ただし、MLのビット長mLは0からd−1)とするときに、
前記パディングステップは、
第1パディングP1を“0”、
第2パディングP2を、(k+1+m)がdより小さいときは“1”と(d−k−m−2)個の“0”が並んだビット列、(k+1+m)がd以上のときは“1”と(d−mL−1)個の“0”が並んだビット列、
第3パディングP3を“1”
と定める
ことを特徴とするメッセージ認証子生成方法。 - 請求項19記載のメッセージ認証子生成方法であって、
データMをdビットずつに区切った時に最後に余るビット列をビット列ML(ただし、MLのビット長mLは0からd−1)とし、
鍵K、第3パディングP3、前記ビット列ML、付加ビットπを結合したビット列のビット長がd以下となる前記ビット長mLの最大値を最大ビット長mLmaxとし、
あらかじめ定めた0以上mLmax以下の整数を整数Σとするときに、
前記パディングステップは、
いかなる付加ビットπおよびいかなる前記ビット列MLに対しても、第1パディングP1は、第3パディングの第1候補P3’と付加ビットπとを結合したビット列とは異なるという条件と、第1パディングP1は、第3パディングの第2候補P3”と前記ビット列MLと付加ビットπとを結合したビット列とは異なるという条件も満たすように、第1パディングP1と第3パディングの第1候補P3’と第3パディングの第2候補P3”とを定め、
前記ビット長mLが前記整数Σより大きい場合には、前記第1パディングP1、前記第2パディングP2を用いると共に、第3パディングP3として前記第1候補P3’を用い、
前記ビット長mLが前記整数Σ以下の場合には、前記第1パディングP1を用いると共に、前記第2パディングP2にかかわらず第2パディングP2をなしとし、第3パディングP3として前記第2候補P3”に前記ビット列MLを結合させたビット列を用いる
ことを特徴とするメッセージ認証子生成方法。 - 請求項15または16記載のメッセージ認証子生成方法であって、
鍵Kのビット長をkとし、
データMをdビットずつに区切った時に最後に余るビット列をビット列ML(ただし、MLのビット長mLは0からd−1)とするときに、
前記パディングステップは、
前記ビット長mLが0より大きい場合には、
第1パディングP1を(d−k)個の“0”が並んだビット列、
第2パディングP2を“1”と(d−mL−1)個の“0”が並んだビット列、
第3パディングP3を“0”
と定め、
前記ビット長mLが0の場合には、
第1パディングP1を(d−k)個の“0”が並んだビット列、
第2パディングP2をなし、
第3パディングP3を“1”
と定める
ことを特徴とするメッセージ認証子生成方法。 - 請求項19記載のメッセージ認証子生成方法であって、
前記パディングステップは、
第1パディングP1と第3パディングP3とが異なるという条件も満たすように、第1パディングP1と第3パディングP3とを定める
ことを特徴とするメッセージ認証子生成方法。 - 請求項15または16記載のメッセージ認証子生成方法であって、
鍵Kのビット長をkとし、
データMをdビットずつに区切った時に最後に余るビット列をビット列ML(ただし、MLのビット長mLは0からd−1)とし、
前記パディングステップは、
第1パディングP1を(d−k)個の“0”が並んだビット列、
第2パディングP2を“1”と(d−mL−1)個の“0”が並んだビット列、
第3パディングP3を(d−k)個の“1”が並んだビット列
と定める
ことを特徴とするメッセージ認証子生成方法。 - データMとメッセージ認識子τを入力とし、データMの検証を行うメッセージ認証子検証方法であって、
データMと鍵Kからメッセージ認証子τ’を生成する請求項15から27のいずれかに記載のメッセージ認証子生成方法の各ステップと、
比較部で、メッセージ認識子τとメッセージ認証子τ’とを比較してデータMの検証結果を出力する比較ステップと
を有するメッセージ認証子検証方法。 - 請求項1から14のいずれかに記載の装置として、コンピュータを動作させるプログラム。
- 請求項29記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007165141A JP4886614B2 (ja) | 2007-06-22 | 2007-06-22 | メッセージ認証子生成装置、メッセージ認証子検証装置、メッセージ認証子生成方法、メッセージ認証子検証方法、プログラム、および記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007165141A JP4886614B2 (ja) | 2007-06-22 | 2007-06-22 | メッセージ認証子生成装置、メッセージ認証子検証装置、メッセージ認証子生成方法、メッセージ認証子検証方法、プログラム、および記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009005163A true JP2009005163A (ja) | 2009-01-08 |
JP4886614B2 JP4886614B2 (ja) | 2012-02-29 |
Family
ID=40321052
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007165141A Expired - Fee Related JP4886614B2 (ja) | 2007-06-22 | 2007-06-22 | メッセージ認証子生成装置、メッセージ認証子検証装置、メッセージ認証子生成方法、メッセージ認証子検証方法、プログラム、および記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4886614B2 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010218237A (ja) * | 2009-03-17 | 2010-09-30 | Renesas Electronics Corp | プログラム検証装置及びその方法 |
JP6033504B1 (ja) * | 2015-07-15 | 2016-11-30 | 三菱電機株式会社 | メッセージ認証子生成装置 |
JP2018528627A (ja) * | 2015-07-03 | 2018-09-27 | インテル・コーポレーション | ウェアラブルデバイスにおけるデータ圧縮のための装置および方法 |
CN111052670A (zh) * | 2017-09-01 | 2020-04-21 | 三菱电机株式会社 | 加密装置、解密装置、加密方法、解密方法、加密程序和解密程序 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005031579A1 (ja) * | 2003-09-26 | 2005-04-07 | Nippon Telegraph And Telephone Corporation | タグプライバシー保護方法、タグ装置、バックエンド装置、更新装置、更新依頼装置、それらのプログラム及びこれらのプログラムを格納した記録媒体 |
WO2005091546A2 (en) * | 2004-03-15 | 2005-09-29 | Cardiac Pacemakers, Inc. | Cryptographic authentication for implantable medical device telemetry |
-
2007
- 2007-06-22 JP JP2007165141A patent/JP4886614B2/ja not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005031579A1 (ja) * | 2003-09-26 | 2005-04-07 | Nippon Telegraph And Telephone Corporation | タグプライバシー保護方法、タグ装置、バックエンド装置、更新装置、更新依頼装置、それらのプログラム及びこれらのプログラムを格納した記録媒体 |
WO2005091546A2 (en) * | 2004-03-15 | 2005-09-29 | Cardiac Pacemakers, Inc. | Cryptographic authentication for implantable medical device telemetry |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010218237A (ja) * | 2009-03-17 | 2010-09-30 | Renesas Electronics Corp | プログラム検証装置及びその方法 |
JP2018528627A (ja) * | 2015-07-03 | 2018-09-27 | インテル・コーポレーション | ウェアラブルデバイスにおけるデータ圧縮のための装置および方法 |
JP6033504B1 (ja) * | 2015-07-15 | 2016-11-30 | 三菱電機株式会社 | メッセージ認証子生成装置 |
WO2017009981A1 (ja) * | 2015-07-15 | 2017-01-19 | 三菱電機株式会社 | メッセージ認証子生成装置 |
CN107852331A (zh) * | 2015-07-15 | 2018-03-27 | 三菱电机株式会社 | 消息认证码生成装置 |
CN111052670A (zh) * | 2017-09-01 | 2020-04-21 | 三菱电机株式会社 | 加密装置、解密装置、加密方法、解密方法、加密程序和解密程序 |
CN111052670B (zh) * | 2017-09-01 | 2024-02-09 | 三菱电机株式会社 | 加密装置、解密装置、加密方法、解密方法和计算机能读取的存储介质 |
Also Published As
Publication number | Publication date |
---|---|
JP4886614B2 (ja) | 2012-02-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
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 | |
Wang et al. | Cryptanalysis of a symmetric fully homomorphic encryption scheme | |
Preneel | The state of cryptographic hash functions | |
JP5447510B2 (ja) | タグ生成装置、タグ検証装置、通信システム、タグ生成方法、タグ検証方法および記録媒体 | |
Kumar et al. | Novel noncommutative cryptography scheme using extra special group | |
Armknecht et al. | General impossibility of group homomorphic encryption in the quantum world | |
JP4886614B2 (ja) | メッセージ認証子生成装置、メッセージ認証子検証装置、メッセージ認証子生成方法、メッセージ認証子検証方法、プログラム、および記録媒体 | |
Shen et al. | Improved security bounds for generalized Feistel networks | |
Black et al. | MAC reforgeability | |
Döttling et al. | Maliciously circuit-private FHE from information-theoretic principles | |
Kim et al. | Quantum-Secure Hybrid Blockchain System for DID-based Verifiable Random Function with NTRU Linkable Ring Signature | |
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 | |
Pass et al. | Private coins versus public coins in zero-knowledge proof systems | |
Zhu et al. | Efficient construction of provably secure steganography under ordinary covert channels | |
Cayrel et al. | Critical attacks in code-based cryptography | |
Kiayias et al. | Directions in polynomial reconstruction based cryptography | |
Petit et al. | Cayley hashes: A class of efficient graph-based hash functions | |
JP4914329B2 (ja) | メッセージ認証子生成装置、メッセージ認証子検証装置、メッセージ認証子生成方法、メッセージ認証子検証方法、プログラム、および記録媒体 | |
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 | |
Abe et al. | Message recovery signature schemes from sigma-protocols | |
Sepahi et al. | Lattice-based completely non-malleable public-key encryption in the standard model |
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 |