JPWO2008053650A1 - 共通鍵ブロック暗号化装置、その方法、そのプログラム、及び記録媒体 - Google Patents

共通鍵ブロック暗号化装置、その方法、そのプログラム、及び記録媒体 Download PDF

Info

Publication number
JPWO2008053650A1
JPWO2008053650A1 JP2008542017A JP2008542017A JPWO2008053650A1 JP WO2008053650 A1 JPWO2008053650 A1 JP WO2008053650A1 JP 2008542017 A JP2008542017 A JP 2008542017A JP 2008542017 A JP2008542017 A JP 2008542017A JP WO2008053650 A1 JPWO2008053650 A1 JP WO2008053650A1
Authority
JP
Japan
Prior art keywords
block
unit block
ciphertext
cipher
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008542017A
Other languages
English (en)
Other versions
JP5141558B2 (ja
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2008542017A priority Critical patent/JP5141558B2/ja
Publication of JPWO2008053650A1 publication Critical patent/JPWO2008053650A1/ja
Application granted granted Critical
Publication of JP5141558B2 publication Critical patent/JP5141558B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/30Compression, e.g. Merkle-Damgard construction

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

高い安全性を持つ暗号処理と高速な暗号処理とを組合せ、大きいブロックサイズのブロック暗号を構築する共通鍵ブロック暗号化装置、その方法、そのプログラム、及び記録媒体を提供する。大きいブロックサイズのブロック暗号において、ユニバーサルハッシュ関数を用いた置換により平文を処理した後、1ブロック分について高い安全性を持つブロック暗号で暗号化し、このブロック暗号の入力と出力の和を入力とした擬似乱数生成器の出力と残りのブロックとを加算する。最後に、ユニバーサルハッシュ関数を用いた置換を適用する。構成されたブロック暗号は、使用するブロック暗号が選択暗号文攻撃に安全で、かつ擬似乱数生成器が既知平文攻撃に対して安全であれば、選択暗号文攻撃への安全性が保証される。また、大きいブロックサイズにおいてはブロック暗号の速度は問題とならず、擬似乱数生成器とユニバーサルハッシュ関数の速度が主になる。

Description

本発明は、共通鍵ブロック暗号化装置、その方法、そのプログラム、及び記録媒体に関し、特に、安全性の高い暗号処理と、高速な暗号処理と、の組み合わせを用いて、大きなブロックサイズのブロック暗号を構築する共通鍵ブロック暗号化装置、その方法、そのプログラム、及び記録媒体に関する。
近年、ブロック暗号やハッシュ関数などの暗号処理を暗号部品とし、新たな暗号を構成するアプローチが数多く知られている。
例えば、ファイル暗号では、暗号化データのセクタ単位での処理を容易とするために、標準的なブロックサイズ(128bitなど)のブロック暗号を用いて、セクタのサイズに対応した、より大きなブロックサイズ(512bitなど)のブロック暗号を構成する研究が行われている。
通常、このような暗号部品の組み合わせは、該暗号部品の選択平文攻撃への安全性が、該暗号部品により新たに構成される暗号の十分な安全性を確保するために必要とされてきた。なお、新たに構成される暗号の十分な安全性とは、新たに構成される暗号がブロック暗号の場合には、選択平文攻撃への安全性、もしくは、選択平文攻撃と選択暗号文攻撃を任意に組み合わせた攻撃への安全性を示している。新たに構成される暗号がストリーム暗号の場合には、初期ベクトルを攻撃者が選択できるというモデルにおける選択平文攻撃への安全性を示している。
なお、選択平文攻撃又は選択暗号文攻撃に安全な部品のみを用いた方法の場合には、新たに構成されるスループット(単位時間当たりの処理量)が、暗号部品のスループットを上回ることはできない。
これに対し、選択平文攻撃又は選択暗号文攻撃に安全な暗号部品のみを用いるのではなく、選択平文攻撃に安全な暗号部品と既知平文攻撃に安全な部品とを組み合わせる方法がある(例えば、特許文献1、非特許文献2参照)。
なお、上記特許文献1、上記非特許文献2は、ブロック暗号の出力を、ハッシュ関数やストリーム暗号で拡大することによりストリーム暗号を構成するものである。なお、上記特許文献1には、選択平文攻撃に安全なブロック暗号と、既知平文攻撃に安全なハッシュ関数やストリーム暗号と、を用いれば、新たに構成されるストリーム暗号は安全である旨が記載されている。
既知平文攻撃は、選択平文攻撃より弱いクラスの攻撃である。既知平文攻撃に安全な暗号部品は、安全性への要求が低いため、選択平文攻撃や選択暗号文攻撃に安全な暗号部品より高速に動作することが期待できる。さらに、上記特許文献1の手法において、選択平文攻撃に安全なブロック暗号と、既知平文攻撃に安全なハッシュ関数やストリーム暗号と、を用いれば、新たに構成される暗号のスループットを、既知平文攻撃に安全な暗号部品のスループットとほぼ同等にすることが可能となる。
また、非特許文献1には、選択平文/暗号文攻撃に安全なブロック暗号と、既知平文攻撃に安全な暗号(必ずしもブロック暗号とは限らない)とを組み合わせ、任意の大きいブロックサイズのブロック暗号を構成する手法が示されている。ここに示されている方法を、nビットブロックの選択暗号文攻撃に安全なブロック暗号Eと、nビットブロックの既知平文攻撃に安全な暗号Fを用いて実現する場合を考える。構成する対象がnmビットブロックサイズの選択平文攻撃に安全なブロック暗号の場合、Eの呼び出し回数は1回、Fの呼び出し回数はm-1回となっている。また構成する対象がnmビットブロックサイズの選択暗号文攻撃に安全なブロック暗号の場合、Eの呼び出し回数は2回、Fの呼び出し回数はm-2回となっている。
米国特許第6104811号明細書 Kazuhiko Minematsu, Yukiyasu Tsunoo: Hybrid Symmetric Encryption Using Known-Plaintext Attack-Secure Componets. pp. 242-260, Information Security and Cryptology-ICISC 2002, 5th International Conference Seoul, Korea, November 28-29, 2002. Lecture Notes in Computer Science 2587 Springer 2003, ISBN 3-540-00716-4 W. Aiello, R. Rajagopalan and V. Venkatesan, High-Speed Pseudorandom Number Generation With Small Memory, Fast Software Encryption, 6th International Workshop, FSE'99, Lecture Notes in Computer Science; Vol. 1636, Mar. 1999 IEEE Computer Society Security in Storage Working Group (SISWG), Draft Proposal for Tweakable Wide-block Encryption, http://www.siswg.org/docs/EME-AES-03-22-2004.pdf S. Halevi and H. Krawczyk, MMH:Software Message Authentication in the Gbit/second rates, Fast Software Encryption, 4th Internatioanl Workshop, FSE '97, Lecture Notes in Computer Science; Vol. 1267, Feb. 1997 The Poly1305-AES Message Authentication Code, D.J.Bernstein, Fast Software Encryption, FSE 2005, Lecture notes in computer science 3557, pp.32-49, Springer, 2005. J. Daemen, V. Rijmen, "AES Proposal: Rijndael", AES submission, 1998. U. Maurer and Johan Sjoedin, From Known-Plaintext to Chosen- Ciphertext Security, Cryptology ePrint Archive 2006/071, http://eprint.iacr. org/2006/071.pdf P. Rogaway and D. Coppersmith, A Software-Optimized Encryption Algorithm, Fast Software Encryption, 1st InternatioanlWorkshop, FSE '93, Lecture Notes in Computer Science; Vol. 809, Feb. 1993.
しかし、上記の発明は以下の問題を有している。
上記非特許文献1には、選択暗号文攻撃に安全な大きいブロックサイズのブロック暗号を構成する場合において、ブロック暗号の構成要素である小さいブロックサイズの選択暗号文攻撃に安全なブロック暗号を2回呼び出す必要があり、またそれぞれの鍵も変える必要がある。
また、選択暗号文攻撃に安全で、かつブロックサイズが任意の大きさにできるということは非特許文献3でも述べられているように、ディスクセクタ暗号化に望まれる要件でもある。
そこで、本発明は、上記事情に鑑みてなされたものであり、選択暗号文攻撃に安全な固定長ブロック暗号Eと、既知平文攻撃に安全な暗号F(必ずしもブロック暗号とは限らない)とを組み合わせ、選択暗号文攻撃に安全な、任意の大きいブロックサイズのブロック暗号を効率よい方法で提供する共通鍵ブロック暗号化装置、その方法、そのプログラム、及び記録媒体を提案することを目的とするものである。具体的には、非特許文献1では、固定長ブロック暗号Eを2回呼び出す必要があるが、本発明は固定長ブロック暗号Eを1回だけ呼び出す。
請求項1記載の共通鍵ブロック暗号化装置は、暗号化される平文を、第1のブロックと、第2のブロックと、に分割し、該分割した第1のブロックをハッシュ関数により圧縮し、該圧縮した第1のブロックと、前記第2のブロックと、を加算し単位ブロック中間文を生成し、該生成した単位ブロック中間文と、前記第1のブロックと、を出力する第1のハッシュ手段と、前記単位ブロック中間文を暗号化し、単位ブロック中間暗号文を生成する単位ブロック暗号化手段と、前記単位ブロック中間文と、前記単位ブロック中間暗号文と、の和を基に中間乱数を生成する擬似乱数生成手段と、前記中間乱数と、前記第1のブロックと、を加算し、第1の加算結果を出力する加算手段と、前記第1の加算結果をハッシュ関数により圧縮し、該圧縮した第1の加算結果及び前記単位ブロック中間暗号文から暗号文を算出する第2のハッシュ手段と、前記第2のハッシュ手段から出力された暗号文を出力する暗号文出力手段とを有することを特徴とする。
請求項2記載の発明は、請求項1記載の共通鍵ブロック暗号化装置において、前記第2のハッシュ手段は、前記単位ブロック中間暗号文をハッシュ関数により置換し、該置換された単位ブロック中間暗号文と、前記圧縮した第1の加算結果と、を加算した第2の加算結果と、前記第1の加算結果と、を連結させ、暗号文として出力することを特徴とする。
請求項3記載の発明は、請求項2記載の共通鍵ブロック暗号化装置において、第1のハッシュ手段は、秘密鍵を変数とした有限体上の多項式ハッシュ関数を用いて前記第1のブロックを圧縮し、第2のハッシュ手段は、該秘密鍵の指数倍と、単位ブロック中間暗号文と、の積を算出し、該秘密鍵を変数とした有限体上の多項式ハッシュ関数を用いて前記第1の加算結果を圧縮し、該算出された積と、該圧縮した第1の加算結果と、を加算して第2の加算結果を算出することを特徴とする。
請求項4記載の発明は、請求項1から3のいずれか1項記載の共通鍵ブロック暗号化装置において、前記単位ブロック暗号化手段は、ブロック暗号を用いて前記単位ブロック中間文を前記単位ブロック中間暗号文に変換し、前記擬似乱数生成手段は、前記ブロック暗号を簡略化して得られる簡易ブロック暗号を複数回用いた拡大処理に、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を入力として適用した結果を中間乱数とすることを特徴とする。
請求項5記載の発明は、請求項1から3のいずれか1項記載の共通鍵ブロック暗号化装置においいて、前記単位ブロック暗号化手段は、ブロック暗号を複数回組み合わせて得られる強化ブロック暗号を用いて前記単位ブロック中間文を前記単位ブロック中間暗号文に変換し、前記擬似乱数生成手段は、前記ブロック暗号を複数回用いた拡大処理に、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を入力として適用した結果を中間乱数とすることを特徴とする。
請求項6記載の発明は、請求項1から3のいずれか1項記載の共通鍵ブロック暗号化装置において、前記単位ブロック暗号化手段は、ブロック暗号を用いて前記単位ブロック中間平文を前記単位ブロック中間暗号文に変換し、前記擬似乱数生成手段は、初期ベクトルを付加的な入力として受け付けるストリーム暗号へ、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を初期ベクトルとして入力して得られる鍵ストリームを中間乱数とすることを特徴とする。
請求項7記載の発明は、情報処理装置において行う共通鍵ブロック暗号化方法であって、暗号化される平文を、第1のブロックと、第2のブロックと、に分割し、該分割した第1のブロックをハッシュ関数により圧縮し、該圧縮した第1のブロックと、前記第2のブロックと、を加算し単位ブロック中間文を生成し、該生成した単位ブロック中間文と、前記第1のブロックと、を出力する第1のハッシュ工程と、前記単位ブロック中間文を暗号化し、単位ブロック中間暗号文を生成する単位ブロック暗号化工程と、前記単位ブロック中間文と、前記単位ブロック中間暗号文と、の和を基に中間乱数を生成する擬似乱数生成工程と、前記中間乱数と、前記第1のブロックと、を加算し、第1の加算結果を出力する加算工程と、前記第1の加算結果をハッシュ関数により圧縮し、該圧縮した第1の加算結果及び前記単位ブロック中間暗号文から暗号文を算出する第2のハッシュ工程と、前記第2のハッシュ工程から出力された暗号文を出力する暗号文出力工程とを有することを特徴とする。
請求項8記載の発明は、請求項7記載の共通鍵ブロック暗号化方法において、前記第2のハッシュ工程は、前記単位ブロック中間暗号文をハッシュ関数により置換し、該置換された単位ブロック中間暗号文と、前記圧縮した第1の加算結果と、を加算した第2の加算結果と、前記第1の加算結果と、を連結させ、暗号文として出力することを特徴とする。
請求項9記載の発明は、請求項8記載の共通鍵ブロック暗号化方法において、第1のハッシュ工程は、秘密鍵を変数とした有限体上の多項式ハッシュ関数を用いて前記第1のブロックを圧縮し、第2のハッシュ工程は、該秘密鍵の指数倍と、単位ブロック中間暗号文と、の積を算出し、該秘密鍵を変数とした有限体上の多項式ハッシュ関数を用いて前記第1の加算結果を圧縮し、該算出された積と、該圧縮した第1の加算結果と、を加算して第2の加算結果を算出することを特徴とする。
請求項10記載の発明は、請求項7から9のいずれか1項記載の共通鍵ブロック暗号化方法において、前記単位ブロック暗号化工程は、ブロック暗号を用いて前記単位ブロック中間文を前記単位ブロック中間暗号文に変換し、前記擬似乱数生成工程は、前記ブロック暗号を簡略化して得られる簡易ブロック暗号を複数回用いた拡大処理に、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を入力として適用した結果を中間乱数とすることを特徴とする。
請求項11記載の発明は、請求項7から9のいずれか1項記載の共通鍵ブロック暗号化方法において、前記単位ブロック暗号化工程は、ブロック暗号を複数回組み合わせて得られる強化ブロック暗号を用いて前記単位ブロック中間文を前記単位ブロック中間暗号文に変換し、前記擬似乱数生成工程は、前記ブロック暗号を複数回用いた拡大処理に、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を入力として適用した結果を中間乱数とすることを特徴とする。
請求項12記載の発明は、請求項7から9のいずれか1項記載の共通鍵ブロック暗号化方法において、前記単位ブロック暗号化工程は、ブロック暗号を用いて前記単位ブロック中間平文を前記単位ブロック中間暗号文に変換し、前記擬似乱数生成工程は、初期ベクトルを付加的な入力として受け付けるストリーム暗号へ、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を初期ベクトルとして入力して得られる鍵ストリームを中間乱数とすることを特徴とする。
請求項13記載の発明は、情報処理装置において実行させる共通鍵ブロック暗号化プログラムであって、暗号化される平文を、第1のブロックと、第2のブロックと、に分割し、該分割した第1のブロックをハッシュ関数により圧縮し、該圧縮した第1のブロックと、前記第2のブロックと、を加算し単位ブロック中間文を生成し、該生成した単位ブロック中間文と、前記第1のブロックと、を出力する第1のハッシュ処理と、前記単位ブロック中間文を暗号化し、単位ブロック中間暗号文を生成する単位ブロック暗号化処理と、前記単位ブロック中間文と、前記単位ブロック中間暗号文と、の和を基に中間乱数を生成する擬似乱数生成処理と、前記中間乱数と、前記第1のブロックと、を加算し、第1の加算結果を出力する加算処理と、前記第1の加算結果をハッシュ関数により圧縮し、該圧縮した第1の加算結果及び前記単位ブロック中間暗号文から暗号文を算出する第2のハッシュ処理と、前記第2のハッシュ処理から出力された暗号文を出力する暗号文出力処理とを有することを特徴とする。
請求項14記載の発明は、請求項13記載の共通鍵ブロック暗号化プログラムにおいて、前記第2のハッシュ処理は、前記単位ブロック中間暗号文をハッシュ関数により置換し、該置換された単位ブロック中間暗号文と、前記圧縮した第1の加算結果と、を加算した第2の加算結果と、前記第1の加算結果と、を連結させ、暗号文として出力することを特徴とする。
請求項15記載の発明は、請求項14記載の共通鍵ブロック暗号化プログラムにおいて、第1のハッシュ処理は、秘密鍵を変数とした有限体上の多項式ハッシュ関数を用いて前記第1のブロックを圧縮し、第2のハッシュ処理は、該秘密鍵の指数倍と、単位ブロック中間暗号文と、の積を算出し、該秘密鍵を変数とした有限体上の多項式ハッシュ関数を用いて前記第1の加算結果を圧縮し、該算出された積と、該圧縮した第1の加算結果と、を加算して第2の加算結果を算出することを特徴とする。
請求項16記載の発明は、請求項13から15のいずれか1項記載の共通鍵ブロック暗号化プログラムにおいて、前記単位ブロック暗号化処理は、ブロック暗号を用いて前記単位ブロック中間文を前記単位ブロック中間暗号文に変換し、前記擬似乱数生成処理は、前記ブロック暗号を簡略化して得られる簡易ブロック暗号を複数回用いた拡大処理に、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を入力として適用した結果を中間乱数とすることを特徴とする。
請求項17記載の発明は、請求項13から15のいずれか1項記載の共通鍵ブロック暗号化プログラムにおいて、前記単位ブロック暗号化処理は、ブロック暗号を複数回組み合わせて得られる強化ブロック暗号を用いて前記単位ブロック中間文を前記単位ブロック中間暗号文に変換し、前記擬似乱数生成処理は、前記ブロック暗号を複数回用いた拡大処理に、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を入力として適用した結果を中間乱数とすることを特徴とする。
請求項18記載の発明は、請求項13から15のいずれか1項記載の共通鍵ブロック暗号化プログラムにおいて、前記単位ブロック暗号化処理は、ブロック暗号を用いて前記単位ブロック中間平文を前記単位ブロック中間暗号文に変換し、前記擬似乱数生成処理は、初期ベクトルを付加的な入力として受け付けるストリーム暗号へ、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を初期ベクトルとして入力して得られる鍵ストリームを中間乱数とすることを特徴とする。
請求項19記載の記録媒体は、請求項13から18のいずれか1項記載の共通鍵ブロック暗号化プログラムを記録することを特徴とする。
本発明は、選択暗号文攻撃に安全なブロック暗号と、既知平文攻撃に安全な暗号関数とを組み合わせることにより、1ブロックの暗号化につき選択暗号文攻撃に安全なブロック暗号の呼び出し回数はブロックサイズに関わらず1回で済むことになるため、もし第一および第二のハッシュ手段で用いるハッシュ関数が十分高速であれば、大きいブロックサイズでは暗号化のスループットは、既知平文攻撃に安全な関数のスループットにほぼ一致することになり、選択暗号文攻撃に安全な、かつ任意の大きいブロックサイズのブロック暗号を効率よく提供できる。
まず、図1を参照しながら、本実施形態における共通鍵ブロック暗号化装置について説明する。
本実施形態における共通鍵ブロック暗号化装置は、図1に示すように、暗号化される平文を入力する平文入力手段101と、平文を、PAブロックと、PBブロックと、に分割し、該分割したPBブロックをAXUハッシュ関数H1により圧縮し、該圧縮したPBブロックと、PAブロックと、を加算した単位ブロック中間文を生成し、該生成した単位ブロック中間文と、PBブロックと、を出力する第1のハッシュ手段102と、単位ブロック中間文を暗号化し、単位ブロック中間暗号文を生成する単位ブロック暗号化手段103と、単位ブロック中間暗号文及び単位ブロック中間文から中間乱数を生成する擬似乱数生成手段104と、中間乱数と、PBブロックと、を加算し、加算結果を出力する加算手段105と、AXUハッシュ関数H1と独立なAXUハッシュ関数H2によって加算結果を圧縮し、該圧縮した加算結果と、AXUハッシュ関数H1,H2と独立なAXU置換G3によって単位ブロック中間暗号文を変換した結果と、を加算した加算結果と、加算手段105の加算結果と、を連結して暗号文として出力する第2のハッシュ手段106と、暗号文を出力する暗号文出力手段107と、を有することを特徴とするものである。これにより、選択平文/暗号文攻撃に安全な暗号部品と、既知平文攻撃に安全な暗号部品と、を組み合わせ、安全なブロック暗号を提供することが可能となる。
<第1の実施形態>
まず、図1を参照しながら、第1の実施形態における共通鍵ブロック暗号化装置の構成について説明する。なお、図1は、第1の実施形態における共通鍵ブロック暗号化装置の構成を示すブロック図である。
第1の実施形態における共通鍵ブロック暗号化装置は、平文入力手段101と、第1のハッシュ手段102と、単位ブロック暗号化手段103と、擬似乱数生成手段104と、加算手段105と、第2のハッシュ手段106と、暗号文出力手段107と、を有して構成される。
なお、本実施形態における共通鍵ブロック暗号化装置は、CPUとメモリとディスクとにより実現することは可能である。共通鍵ブロック暗号化装置の各手段は、上記各手段を実行するためのプログラムをディスクに格納し、該格納したプログラムをCPUが実行することで実現することになる。
次に、共通鍵ブロック暗号化装置を構成する各手段について説明する。
<平文入力手段101>
平文入力手段101は、暗号化される対象となる平文を入力するものである。例えば、キーボードなどの文字入力装置により実現されることになる。
<第1のハッシュ手段102>
第1のハッシュ手段102は、平文入力手段101から入力された平文をPAブロックと、PBブロックと、に分割し、該分割したPBブロックをハッシュ関数により圧縮し、該圧縮したPBブロックと、PAブロックと、を加算する。そして、第1のハッシュ手段102は、ハッシュ関数により圧縮したPBブロックと、ハッシュ関数により圧縮していないPAブロックとの和を、ハッシュ関数により圧縮する前のPBブロックと、を連結して出力する。
第1のハッシュ手段102の条件を以下に示す。平文全体のブロックサイズをnmビット(ただし、mは2以上の整数)とし、単位ブロック暗号化手段103へ入力される単位ブロック中間文のビット幅をnとする。入力の左側のnビット(PAブロック)を取り出す関数をleft、入力の右側n(m-1)ビット(PBブロック)を取り出す関数をrightとする。第一のハッシュ手段102をG1とすると、G1は鍵付きのnmビット置換であり、任意の異なる2つの入力長x、x'についてleft(G1(x))=left(G1(x'))となる確率が小さいことが必要である。
実際には、第1のハッシュ手段102は、almost XOR universal(以下、AXUとする)と呼ばれる性質を持つ鍵付きのハッシュ関数により実現可能である。これは、鍵付きハッシュ関数への異なる2つの入力について、それぞれに対するハッシュ関数の出力の和がほぼ一様に分布することを意味する。このようなハッシュ関数Hは、一般にユニバーサルハッシュ関数と呼ばれ、例えば有限体の積や、非特許文献4に記載のMultimodular Hash Functionを使うことで実現可能である。
具体的には、AXUハッシュ関数によるフェイステル型置換により実現可能である。これは、n(m-1)ビット入力、nビット出力のAXUハッシュ関数をH1とした場合、入力長xについて第1のハッシュ手段102の出力は、式1となる。
G1(x)=(left(x)+H1(right(x))||right(x))・・・(式1)
ここで、left(x)+H1(right(x))を単位ブロック中間文とする。
+記号は、ビットごとの排他的論理和をあらわすとする。例えば、right(x)をnビットベクトルr_1,...,r_[m-1]を用いてright(x)=(r_1,...,r_[m-1])とあらわした場合、H1はnビットの秘密鍵K1を変数とし、nビットベクトルr_1,...,r_[m-1]を係数とした有限体上の多項式計算により実現可能である。具体的には、式2となる。
H1(right(x))=mul(r_[m-1],K1^[m-1])+mul(r_[m-2],K1^[m-2])+...+mul(r_[1],K1)・・・(式2)
ここで、K1^[i]はK1のi乗を指し、mul(a,b)は変数aと係数bの有限体上の積を表す。積を高速に行うアルゴリズムは、例えば非特許文献5に示されている。
<単位ブロック暗号化手段103>
単位ブロック暗号化手段103は、単位ブロック中間文の暗号文である単位ブロック中間暗号文を生成する手段である。単位ブロック中間暗号文は、非特許文献6に開示されているAES(Advanced Encryption Standard)などの選択暗号文攻撃に安全なブロック暗号や、そのシリアル連結などにより実現可能である。
<擬似乱数生成手段104>
擬似乱数生成手段104は、単位ブロック中間文と単位ブロック中間暗号文とを基に、それらの和を用いて中間乱数を生成する手段である。
擬似乱数生成手段104において、単位ブロック中間文と単位ブロック中間暗号文の和を入力される乱数生成器は、既知平文攻撃に安全であることが求められる。すなわち、攻撃者がランダムに入力を選択できるモデルのもとで中間乱数を得たときに、中間乱数と、真の乱数と、の判別が困難となればよい。一般に、擬似乱数生成手段104で用いる乱数生成器の出力長は入力長より大幅に長くなるが、このような処理は、特許文献1や非特許文献8の手法を利用することで、出力幅が固定された小さい値である、既知平文攻撃に安全な関数から実現可能である。
また、擬似乱数生成手段104で用いる乱数生成器は、初期ベクトルと呼ばれる付加的な入力を持つストリーム暗号でも実現可能である。このようなストリーム暗号は、例えば、非特許文献8に記載のストリーム暗号SEALにより実現可能である。
<加算手段105>
加算手段105は、中間乱数と平文の一部であるPBブロックとの加算を行う手段である。平文全体のブロックサイズがnmビットの場合、PBブロックは右側n(m-1)ビットに相当する。
<第2のハッシュ手段106>
第2のハッシュ手段106は、加算手段105の出力と単位ブロック中間暗号文から出力となる暗号文を求める手段である。
第2のハッシュ手段106の条件を以下に示す。平文全体のブロックサイズをnmビット(ただし、mは2以上の整数)とし、単位ブロック暗号化手段103へ入力される単位ブロック中間文のビット幅をnとする。入力の左側nビット(単位ブロック中間暗号文)を取り出す関数をleft、入力の右n(m-1)ビット(加算手段105による加算結果)を取り出す関数をrightとする。第1のハッシュ手段102をG1、第2のハッシュ手段106をG2とする。G1、G2ともに鍵付きのnmビット置換であり、それぞれの逆関数をG1^[-1]、G2^[-1]とする。
このとき、G1への任意の異なる2つの入力長x、x'及びG2^[-1]への任意の異なる2つの入力長y、y'について、left(G1(x)+G2^[-1](y))=left(G1(x')+G2^[-1](y'))となる確率と、left(G2^[-1](y))=left(G2^[-1](y'))となる確率の両方が小さいことが必要である。これは正確にはG1とG2両方を考慮した条件となる。
具体的に、第1のハッシュ手段102をAXUハッシュ関数H1によるフェイステル型置換とした場合、第2のハッシュ手段106は、式3となる。
G2(x)=G3(left(x))+H2(right(x))||right(x))・・・(式3)
ここで、||は系列の連結を表す。H2はH1と独立な、n(m-1)ビット入力nビット出力のAXUハッシュ関数である。また、G3はnビットのAXU置換であることが必要である。これは、任意のcと異なる2つのnビットの入力長z、z'について、G3(z)-G3(z')=cとなる確率が小さくなることを意味する。例えば、G3の鍵をnビットの独立な、0以外の値を一様にとる乱数K3とし、G3(z)=mul(z,K3)とすることで実現可能である。ただしmul(a,b)は有限体GF(2^n)上での積をあらわす。
もし、第1のハッシュ手段102が秘密鍵K1を用いて(式2)であらわされるH1を実現し、これを(式1)で用いる場合、第2のハッシュ手段106は、(式3)において、H2をG1と同じ秘密鍵K1を用いて、(式2)のH1と同じ関数とし、AXU置換をG3(left(x))=mul(left(x),K1^[m])とすることでも実現可能である。ただし、この場合、秘密鍵K1は0以外の値を一様にとる乱数でなくてはならない。
<暗号文出力手段107>
暗号文出力手段107は、第2のハッシュ手段106から入力された出力結果を暗号文として出力する手段である。コンピュータディスプレイやプリンターなどで実現可能である。
次に、図2を参照しながら、図1に示す第1の実施形態における共通鍵ブロック暗号化装置の処理動作について説明する。
まず、平文入力手段101は、暗号化される平文(PAブロック、PBブロック)を第1のハッシュ手段102に入力することになる(ステップA1)。
第1のハッシュ手段102は、平文入力手段101から入力された平文(PAブロック、PBブロック)をPAブロックと、PBブロックと、に分割し、該分割したPBブロックをAXUハッシュ関数H1により圧縮し、該圧縮したPBブロックと、PAブロックと、を加算し単位ブロック中間文を生成し、該生成した単位ブロック中間文と、PBブロックと、を出力する(ステップA2)。
単位ブロック暗号化手段103は、第1のハッシュ手段102から入力された単位ブロック中間文を暗号化し、単位ブロック中間暗号文を生成し、該生成した単位ブロック中間暗号文を、擬似乱数生成手段104と、第2のハッシュ手段106と、に出力することになる(ステップA3)。
擬似乱数生成手段104は、単位ブロック中間文と、単位ブロック暗号化手段103から入力された単位ブロック中間暗号文と、を基に中間乱数を生成し、該生成した中間乱数を加算手段105に出力する(ステップA4)。
加算手段105は、擬似乱数生成手段104から入力された中間乱数と、第1のハッシュ手段102から入力されたPBブロックと、の加算処理を行い、該加算処理を行った加算値を第2のハッシュ手段106に出力することになる(ステップA5)。
第2のハッシュ手段106は、単位ブロック暗号化手段103から入力された単位ブロック中間暗号文をAXU置換G3により変換し(ステップA6)、AXU置換G3により変換された単位ブロック中間暗号文と、AXUハッシュ関数H2により圧縮された加算手段105から入力された加算結果と、を加算した該加算結果と、加算手段105から入力された加算結果と、を連結して暗号文として出力する(ステップA7)。
暗号文出力手段107は、第2のハッシュ手段106から入力された暗号文を出力する(ステップA8)。
これにより、本実施形態における共通鍵ブロック暗号化装置は、選択暗号文攻撃に安全なブロック暗号と、既知平文攻撃に安全な暗号関数とを組み合わせることにより、高速で安全なブロック暗号を大きいブロックサイズに対して実現することが可能となる。本実施形態における共通鍵ブロック暗号化装置は、1ブロックの暗号化につき選択暗号文攻撃に安全なブロック暗号の呼び出し回数はブロックサイズに関わらず1回で済むことになるため、もし第1および第2のハッシュ手段で用いるハッシュ関数が十分高速であれば、大きいブロックサイズでは暗号化のスループットは、既知平文攻撃に安全な関数のスループットにほぼ一致することになる。本実施形態における共通鍵ブロック暗号化装置で用いるハッシュ関数は、ユニバーサル性を満たせば十分であり、このようなハッシュ関数は既存の高速な有限体の演算アルゴリズムなどにより、通常の共通鍵暗号と比べ大幅に高速にできる。既知平文攻撃は、選択平文攻撃よりも弱いクラスの攻撃であるため、既知平文攻撃に安全な関数は一般にそれより弱い定義の安全性を満たす関数よりも高速に動作することになる。したがって、ブロック暗号とその短縮段などを組み合わせることにより、従来の暗号運用モードよりも高速なブロック暗号を構築できる。
また、AESなどの代表的なブロック暗号よりも高速なストリーム暗号も近年多数提案されており、AESと組み合わせて用いることで、AESベースの従来方式よりも高速な方式が実現可能である。反対に、既存のブロック暗号をシリアルに鍵を変えて連結した連結ブロック暗号と、ブロック暗号そのものとを組み合わせて本実施形態における共通鍵ブロック暗号化装置に適用すると、これを破るには連結ブロック暗号を選択暗号文攻撃で破るか、ブロック暗号そのものを既知平文攻撃で破ることが必要となる。これは、従来の暗号運用モードと同等の速度を有し、かつ従来より高い安全性を実現していることを意味している。
この出願は、2006年10月30日に出願された日本出願特願2006−294536を基礎とする優先権を主張し、その開示の全てをここに取り込む。
本発明によれば、2者間で暗号化通信を行うシステムや、映画や音楽などのコンテンツを安全に配信するシステム、また、コンピュータサーバ上のデータを安全に運用するためのファイル暗号化といった用途に適用できる。
本実施形態に係る共通鍵ブロック暗号化装置の構成を示すブロック図である。 本実施形態に係る共通鍵ブロック暗号化装置の動作の流れを示すフローチャートである。
符号の説明
101 平文入力手段
102 第1のハッシュ手段
103 単位ブロック暗号化手段
104 擬似乱数生成手段
105 加算手段
106 第2のハッシュ手段
107 暗号文出力手段

Claims (19)

  1. 暗号化される平文を、第1のブロックと、第2のブロックと、に分割し、該分割した第1のブロックをハッシュ関数により圧縮し、該圧縮した第1のブロックと、前記第2のブロックと、を加算し単位ブロック中間文を生成し、該生成した単位ブロック中間文と、前記第1のブロックと、を出力する第1のハッシュ手段と、
    前記単位ブロック中間文を暗号化し、単位ブロック中間暗号文を生成する単位ブロック暗号化手段と、
    前記単位ブロック中間文と、前記単位ブロック中間暗号文と、の和を基に中間乱数を生成する擬似乱数生成手段と、
    前記中間乱数と、前記第1のブロックと、を加算し、第1の加算結果を出力する加算手段と、
    前記第1の加算結果をハッシュ関数により圧縮し、該圧縮した第1の加算結果及び前記単位ブロック中間暗号文から暗号文を算出する第2のハッシュ手段と、
    前記第2のハッシュ手段から出力された暗号文を出力する暗号文出力手段とを有することを特徴とする共通鍵ブロック暗号化装置。
  2. 前記第2のハッシュ手段は、前記単位ブロック中間暗号文をハッシュ関数により置換し、該置換された単位ブロック中間暗号文と、前記圧縮した第1の加算結果と、を加算した第2の加算結果と、前記第1の加算結果と、を連結させ、暗号文として出力することを特徴とする請求項1記載の共通鍵ブロック暗号化装置。
  3. 第1のハッシュ手段は、秘密鍵を変数とした有限体上の多項式ハッシュ関数を用いて前記第1のブロックを圧縮し、
    第2のハッシュ手段は、該秘密鍵の指数倍と、単位ブロック中間暗号文と、の積を算出し、該秘密鍵を変数とした有限体上の多項式ハッシュ関数を用いて前記第1の加算結果を圧縮し、該算出された積と、該圧縮した第1の加算結果と、を加算して第2の加算結果を算出することを特徴とする請求項2記載の共通鍵ブロック暗号化装置。
  4. 前記単位ブロック暗号化手段は、ブロック暗号を用いて前記単位ブロック中間文を前記単位ブロック中間暗号文に変換し、
    前記擬似乱数生成手段は、前記ブロック暗号を簡略化して得られる簡易ブロック暗号を複数回用いた拡大処理に、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を入力として適用した結果を中間乱数とすることを特徴とする請求項1から3のいずれか1項記載の共通鍵ブロック暗号化装置。
  5. 前記単位ブロック暗号化手段は、ブロック暗号を複数回組み合わせて得られる強化ブロック暗号を用いて前記単位ブロック中間文を前記単位ブロック中間暗号文に変換し、
    前記擬似乱数生成手段は、前記ブロック暗号を複数回用いた拡大処理に、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を入力として適用した結果を中間乱数とすることを特徴とする請求項1から3のいずれか1項記載の共通鍵ブロック暗号化装置。
  6. 前記単位ブロック暗号化手段は、ブロック暗号を用いて前記単位ブロック中間平文を前記単位ブロック中間暗号文に変換し、
    前記擬似乱数生成手段は、初期ベクトルを付加的な入力として受け付けるストリーム暗号へ、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を初期ベクトルとして入力して得られる鍵ストリームを中間乱数とすることを特徴とする請求項1から3のいずれか1項記載の共通鍵ブロック暗号化装置。
  7. 情報処理装置において行う共通鍵ブロック暗号化方法であって、
    暗号化される平文を、第1のブロックと、第2のブロックと、に分割し、該分割した第1のブロックをハッシュ関数により圧縮し、該圧縮した第1のブロックと、前記第2のブロックと、を加算し単位ブロック中間文を生成し、該生成した単位ブロック中間文と、前記第1のブロックと、を出力する第1のハッシュ工程と、
    前記単位ブロック中間文を暗号化し、単位ブロック中間暗号文を生成する単位ブロック暗号化工程と、
    前記単位ブロック中間文と、前記単位ブロック中間暗号文と、の和を基に中間乱数を生成する擬似乱数生成工程と、
    前記中間乱数と、前記第1のブロックと、を加算し、第1の加算結果を出力する加算工程と、
    前記第1の加算結果をハッシュ関数により圧縮し、該圧縮した第1の加算結果及び前記単位ブロック中間暗号文から暗号文を算出する第2のハッシュ工程と、
    前記第2のハッシュ工程から出力された暗号文を出力する暗号文出力工程とを有することを特徴とする共通鍵ブロック暗号化方法。
  8. 前記第2のハッシュ工程は、前記単位ブロック中間暗号文をハッシュ関数により置換し、該置換された単位ブロック中間暗号文と、前記圧縮した第1の加算結果と、を加算した第2の加算結果と、前記第1の加算結果と、を連結させ、暗号文として出力することを特徴とする請求項7記載の共通鍵ブロック暗号化方法。
  9. 第1のハッシュ工程は、秘密鍵を変数とした有限体上の多項式ハッシュ関数を用いて前記第1のブロックを圧縮し、
    第2のハッシュ工程は、該秘密鍵の指数倍と、単位ブロック中間暗号文と、の積を算出し、該秘密鍵を変数とした有限体上の多項式ハッシュ関数を用いて前記第1の加算結果を圧縮し、該算出された積と、該圧縮した第1の加算結果と、を加算して第2の加算結果を算出することを特徴とする請求項8記載の共通鍵ブロック暗号化方法。
  10. 前記単位ブロック暗号化工程は、ブロック暗号を用いて前記単位ブロック中間文を前記単位ブロック中間暗号文に変換し、
    前記擬似乱数生成工程は、前記ブロック暗号を簡略化して得られる簡易ブロック暗号を複数回用いた拡大処理に、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を入力として適用した結果を中間乱数とすることを特徴とする請求項7から9のいずれか1項記載の共通鍵ブロック暗号化方法。
  11. 前記単位ブロック暗号化工程は、ブロック暗号を複数回組み合わせて得られる強化ブロック暗号を用いて前記単位ブロック中間文を前記単位ブロック中間暗号文に変換し、
    前記擬似乱数生成工程は、前記ブロック暗号を複数回用いた拡大処理に、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を入力として適用した結果を中間乱数とすることを特徴とする請求項7から9のいずれか1項記載の共通鍵ブロック暗号化方法。
  12. 前記単位ブロック暗号化工程は、ブロック暗号を用いて前記単位ブロック中間平文を前記単位ブロック中間暗号文に変換し、
    前記擬似乱数生成工程は、初期ベクトルを付加的な入力として受け付けるストリーム暗号へ、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を初期ベクトルとして入力して得られる鍵ストリームを中間乱数とすることを特徴とする請求項7から9のいずれか1項記載の共通鍵ブロック暗号化方法。
  13. 情報処理装置において実行させる共通鍵ブロック暗号化プログラムであって、
    暗号化される平文を、第1のブロックと、第2のブロックと、に分割し、該分割した第1のブロックをハッシュ関数により圧縮し、該圧縮した第1のブロックと、前記第2のブロックと、を加算し単位ブロック中間文を生成し、該生成した単位ブロック中間文と、前記第1のブロックと、を出力する第1のハッシュ処理と、
    前記単位ブロック中間文を暗号化し、単位ブロック中間暗号文を生成する単位ブロック暗号化処理と、
    前記単位ブロック中間文と、前記単位ブロック中間暗号文と、の和を基に中間乱数を生成する擬似乱数生成処理と、
    前記中間乱数と、前記第1のブロックと、を加算し、第1の加算結果を出力する加算処理と、
    前記第1の加算結果をハッシュ関数により圧縮し、該圧縮した第1の加算結果及び前記単位ブロック中間暗号文から暗号文を算出する第2のハッシュ処理と、
    前記第2のハッシュ処理から出力された暗号文を出力する暗号文出力処理とを有することを特徴とする共通鍵ブロック暗号化プログラム。
  14. 前記第2のハッシュ処理は、前記単位ブロック中間暗号文をハッシュ関数により置換し、該置換された単位ブロック中間暗号文と、前記圧縮した第1の加算結果と、を加算した第2の加算結果と、前記第1の加算結果と、を連結させ、暗号文として出力することを特徴とする請求項13記載の共通鍵ブロック暗号化プログラム。
  15. 第1のハッシュ処理は、秘密鍵を変数とした有限体上の多項式ハッシュ関数を用いて前記第1のブロックを圧縮し、
    第2のハッシュ処理は、該秘密鍵の指数倍と、単位ブロック中間暗号文と、の積を算出し、該秘密鍵を変数とした有限体上の多項式ハッシュ関数を用いて前記第1の加算結果を圧縮し、該算出された積と、該圧縮した第1の加算結果と、を加算して第2の加算結果を算出することを特徴とする請求項14記載の共通鍵ブロック暗号化プログラム。
  16. 前記単位ブロック暗号化処理は、ブロック暗号を用いて前記単位ブロック中間文を前記単位ブロック中間暗号文に変換し、
    前記擬似乱数生成処理は、前記ブロック暗号を簡略化して得られる簡易ブロック暗号を複数回用いた拡大処理に、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を入力として適用した結果を中間乱数とすることを特徴とする請求項13から15のいずれか1項記載の共通鍵ブロック暗号化プログラム。
  17. 前記単位ブロック暗号化処理は、ブロック暗号を複数回組み合わせて得られる強化ブロック暗号を用いて前記単位ブロック中間文を前記単位ブロック中間暗号文に変換し、
    前記擬似乱数生成処理は、前記ブロック暗号を複数回用いた拡大処理に、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を入力として適用した結果を中間乱数とすることを特徴とする請求項13から15のいずれか1項記載の共通鍵ブロック暗号化プログラム。
  18. 前記単位ブロック暗号化処理は、ブロック暗号を用いて前記単位ブロック中間平文を前記単位ブロック中間暗号文に変換し、
    前記擬似乱数生成処理は、初期ベクトルを付加的な入力として受け付けるストリーム暗号へ、前記単位ブロック中間暗号文と前記単位ブロック中間文との和を初期ベクトルとして入力して得られる鍵ストリームを中間乱数とすることを特徴とする請求項13から15のいずれか1項記載の共通鍵ブロック暗号化プログラム。
  19. 請求項13から18のいずれか1項記載の共通鍵ブロック暗号化プログラムを記録した記録媒体。
JP2008542017A 2006-10-30 2007-09-26 共通鍵ブロック暗号化装置、その方法、そのプログラム、及び記録媒体 Expired - Fee Related JP5141558B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008542017A JP5141558B2 (ja) 2006-10-30 2007-09-26 共通鍵ブロック暗号化装置、その方法、そのプログラム、及び記録媒体

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2006294536 2006-10-30
JP2006294536 2006-10-30
PCT/JP2007/068622 WO2008053650A1 (en) 2006-10-30 2007-09-26 Common key block encrypting device, its method, its program, and recording medium
JP2008542017A JP5141558B2 (ja) 2006-10-30 2007-09-26 共通鍵ブロック暗号化装置、その方法、そのプログラム、及び記録媒体

Publications (2)

Publication Number Publication Date
JPWO2008053650A1 true JPWO2008053650A1 (ja) 2010-02-25
JP5141558B2 JP5141558B2 (ja) 2013-02-13

Family

ID=39343999

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008542017A Expired - Fee Related JP5141558B2 (ja) 2006-10-30 2007-09-26 共通鍵ブロック暗号化装置、その方法、そのプログラム、及び記録媒体

Country Status (3)

Country Link
US (1) US20100067686A1 (ja)
JP (1) JP5141558B2 (ja)
WO (1) WO2008053650A1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102008010789B4 (de) * 2008-02-22 2010-09-30 Fachhochschule Schmalkalden Verfahren zur zugriffs- und kommunikationsbezogenen Zufallsver- und Entschlüsselung von Daten
JP5365750B2 (ja) 2011-01-31 2013-12-11 日本電気株式会社 ブロック暗号化装置、復号装置、暗号化方法、復号方法およびプログラム
US9792451B2 (en) * 2011-12-09 2017-10-17 Echarge2 Corporation System and methods for using cipher objects to protect data
US8886926B2 (en) * 2012-11-07 2014-11-11 Centri Technology, Inc. Single-pass data compression and encryption
JP6740902B2 (ja) * 2014-08-20 2020-08-19 日本電気株式会社 認証暗号化方法、認証復号方法および情報処理装置
WO2018154642A1 (ja) * 2017-02-22 2018-08-30 三菱電機株式会社 メッセージ認証子生成装置
US10887080B2 (en) 2017-03-16 2021-01-05 King Fahd University Of Petroleum And Minerals Double-hashing operation mode for encryption
EP4395229A1 (en) 2017-11-09 2024-07-03 nChain Licensing AG Systems and methods for ensuring correct execution of computer program using a mediator computer system
TW201919361A (zh) * 2017-11-09 2019-05-16 張英輝 以雜文加強保護之區塊加密及其解密之方法
CN117640170A (zh) 2017-11-09 2024-03-01 区块链控股有限公司 用于简化可执行指令以优化可验证计算的系统
SG11202005567QA (en) * 2017-12-13 2020-07-29 Nchain Holdings Ltd System and method for securely sharing cryptographic material
CN114757766B (zh) * 2022-06-07 2022-09-23 浙江数秦科技有限公司 一种基于区块链的扶贫贷款审批系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6104811A (en) * 1996-08-16 2000-08-15 Telcordia Technologies, Inc. Cryptographically secure pseudo-random bit generator for fast and secure encryption
US5949884A (en) * 1996-11-07 1999-09-07 Entrust Technologies, Ltd. Design principles of the shade cipher
US6192129B1 (en) * 1998-02-04 2001-02-20 International Business Machines Corporation Method and apparatus for advanced byte-oriented symmetric key block cipher with variable length key and block
CA2282051A1 (en) * 1998-10-20 2000-04-20 Lucent Technologies, Inc. Efficient block cipher method
FR2851862B1 (fr) * 2003-02-27 2006-12-29 Radiotelephone Sfr Procede de generation d'une permutation pseudo-aleatoire d'un mot comportant n digits

Also Published As

Publication number Publication date
JP5141558B2 (ja) 2013-02-13
WO2008053650A1 (en) 2008-05-08
US20100067686A1 (en) 2010-03-18

Similar Documents

Publication Publication Date Title
JP5141558B2 (ja) 共通鍵ブロック暗号化装置、その方法、そのプログラム、及び記録媒体
JP5402632B2 (ja) 共通鍵ブロック暗号化装置、共通鍵ブロック暗号化方法及びプログラム
JP4735644B2 (ja) メッセージ認証装置、メッセージ認証方法、メッセージ認証プログラムとその記録媒体
JP5229315B2 (ja) 共通鍵暗号機能を搭載した暗号化装置及び組込装置
JP4967544B2 (ja) 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム
JP4793268B2 (ja) 共通鍵ブロック暗号化装置、共通鍵ブロック暗号化方法及び共通鍵ブロック暗号化プログラム
JP6035459B2 (ja) 暗号化装置、復号化装置、及びプログラム
JPH0863097A (ja) データを暗号化するための対称暗号化方法およびシステム
JP7031580B2 (ja) 暗号化装置、暗号化方法、復号化装置、及び復号化方法
JP2008058830A (ja) データ変換装置、およびデータ変換方法、並びにコンピュータ・プログラム
US8526602B2 (en) Adjustment-value-attached block cipher apparatus, cipher generation method and recording medium
CN109714154B (zh) 一种代码体积困难白盒安全模型下的白盒密码算法的实现方法
JP5365750B2 (ja) ブロック暗号化装置、復号装置、暗号化方法、復号方法およびプログラム
JP5680016B2 (ja) 復号処理装置、情報処理装置、および復号処理方法、並びにコンピュータ・プログラム
Murtaza et al. Fortification of aes with dynamic mix-column transformation
CN107493164B (zh) 一种基于混沌系统的des加密方法和系统
JP5772934B2 (ja) データ変換装置、およびデータ変換方法、並びにコンピュータ・プログラム
Augustine et al. Implementation of AES To Encrypt and Decrypt Speech Using LUT With Mux Gates
Cook et al. Elastic aes
JP2024053189A (ja) 暗号処理装置、暗号処理装置の暗号処理方法およびプログラム
JP3017725B2 (ja) データ変換装置
Siddavaatam et al. A New Adaptive Security Architecture with Extensible Computation Complexity for Generic Ciphers
WO2000064096A1 (fr) Systeme de communications cryptees
JP4015608B2 (ja) 公開鍵暗号システムと復号装置
Bagheri et al. Cryptanalysis of an Iterated Halving-based hash function: CRUSH

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100713

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20110705

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

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

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

Free format text: PAYMENT UNTIL: 20151130

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5141558

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees