JPH1173101A - 高速ブロック暗号化方法,及び,コンピュータで使用可能な媒体 - Google Patents
高速ブロック暗号化方法,及び,コンピュータで使用可能な媒体Info
- Publication number
- JPH1173101A JPH1173101A JP10175844A JP17584498A JPH1173101A JP H1173101 A JPH1173101 A JP H1173101A JP 10175844 A JP10175844 A JP 10175844A JP 17584498 A JP17584498 A JP 17584498A JP H1173101 A JPH1173101 A JP H1173101A
- Authority
- JP
- Japan
- Prior art keywords
- block
- key
- data
- bits
- blocks
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0625—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/002—Countermeasures against attacks on cryptographic mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/08—Randomization, e.g. dummy operations or using noise
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/24—Key scheduling, i.e. generating round keys or sub-keys for block encryption
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
して安全性を保障することが可能な高速暗号化アルゴリ
ズムを提供する。 【解決手段】 8ビット単位で分割されたサブブロック
が256*8のS−ボックスを介しながらその線形性と
差分均一性が下がって出力されるようにしている。同時
に,隣り合うS−ボックスの入力データブロックにも影
響を与えるようにし,ブロックは一個ずつ右側に移動し
ながら次のラウンドで影響を与え全体的に16ラウンド
を通る全体データブロックに対して影響を及ぼす。S−
ボックスを通過したデータが低い線形性と低い差分均一
性を持つため,差分解読法,線型解読法に対する安定性
を保障する事ができ,暗号化網の安定性を基にしてS−
ボックスの函数を限定しないで,可能な限り良いS−ボ
ックスを選択的に使用する事ができ,暗号化速度を上げ
ることができる。
Description
(data encryption method)
と,差分解読法(differental crypt
analysis),線形解読法(linear cr
yptanalysis),高階差分解読法(high
er−order differential cry
ptanalysis)等に対して安全性を保障する高
速ブロック暗号化アルゴリズム(fast block
cipher algorithm),及び,コンピ
ュータで使用可能な媒体にかかり,特に,従来のブロッ
ク暗号化アルゴリズムと比較して,速く遂行でき,かつ
簡単に実現できるブロック暗号化アルゴリズムに関す
る。
直観的なあるいは実質的な暗号化設計者の実務的な経験
を通してできあがる。こうした理由から安全性に対する
多くの実験が必要とされる。
ゴリズムは,1977年現在アメリカ標準技術研究所
(United States Standard T
echnology Office:USST)の前身
であるアメリカ標準局(United States
Data Processing Standard:
USDPS)によってアメリカ連邦情報処理標準46
(FIPS PUB46)に採択されたDES(Dat
a Encryption Standard)に基づ
いている。DESはブロック暗号である。これは64ビ
ットブロックの集合にデータを暗号化する。
暗号化されていない文の64ビットブロックはアルゴリ
ズムのある部分では入力として使われ,暗号化文(ci
pher text)の64ビットブロックは別の部分
では出力になる。従って,DESは対称的なアルゴリズ
ムである。
ースケジューリング(key scheduling)
におけるわずかな差を除けば,暗号化と解読化に同じく
使用される。キーの大きさは56ビットである。キーは
一般的に64ビットの数字で表現され,そのうち8ビッ
トは,パリティ検査(parity checkin
g)に使われるためである。パリティ検査に使われる8
ビットは暗号化/解読化が行われる間は無視される。パ
リティビットの8ビットは,キーバイトのうち最も価値
のないビットである。キーは任意の56ビット数字にで
き,いつでも変える事ができる。いくつかの数字は弱い
キー(weak key)であると思われるが,これら
の弱いキーは簡単に避ける事ができる。それはあらゆる
安全性はそのキーの内にあるためである。
2つの基本的な技術,すなわち,混沌(confusi
on)と拡散(diffusion)の結合にすぎな
い。DESの基本的な構成ブロックは,混沌と拡散の結
合の1つである。すなわち,キーに基づく並び替えとそ
れに続く置換である。これは通常ラウンド(roun
d)と称される。
ウンドとは,上記暗号化の2つの基本的な技術である混
沌と拡散の技術を適用する一単位である。すなわち,1
6のラウンドを持つとは,平文に対して同じ技術等の結
合を16回適用するということである。DESアルゴリ
ズムは最大64ビットに対して標準的な数学的及び論理
的演算だけ使う。かかる演算は,1970年後半期のハ
ードウェア技術で簡単に実現する事ができた。アルゴリ
ズムは反復的な特性を有するので,特殊な用途のチップ
に理想的に使用できるようになった。初期のソフトウェ
アの実現は粗末なものであったが,現在ではかなり改善
されている。
初期順列(initial permutation)
の後に,上記のブロックは各32ビットの長さで左右半
分ずつ分けられる。そして,16ラウンドの函数fによ
る同一の演算が行われる。函数fではデータがキーに結
合される。上記16番目のラウンドの後に右側のブロッ
クと左側のブロックは1つに結合される。そして最後の
置換として,最初の置換の逆置換を行うことによりアル
ゴリズムを終える。
8ビットはキーの56ビットから選択される。データの
右側の半分は,拡張順列(expansion per
mutation)を経由して48ビットに拡張され,
排他的論理和演算を経由して遷移され順列キーの48ビ
ットと結合された次の8つのS−boxを通して新しい
32ビットを作り再び順列処理をするように送られる。
上記の4つの段階はラウンド函数fを構成する。函数f
の出力は,他の排他的論理和演算を経由して左側の半分
と結合する。上記の演算の結果は新しい右側の半分にな
り以前の右側の半分は新しい左側の半分になる。上記の
演算は16回反復され,DESの16ラウンドを作る。
暗号解読に基づいてDESは攻撃を受けることがある。
すなわち,差分暗号解読を経由して選択された247の
暗号文や,線形暗号解読を経由することで知られている
243の暗号文の使用によって,DESは攻撃を受ける
ことがある。
号化アルゴリズムが適用されている。そして上述した差
分暗号解読と線形暗号解読の攻撃に抵抗する暗号化アル
ゴリズムは安定性を保障するだろうと思いついたのであ
る。この安定性において,差分暗号解読と線形暗号解読
に対する防御の理論的・論理的な証明方法による暗号化
アルゴリズムを構成することにより開発されている付加
的な安定性があるのだが,この暗号化アルゴリズムは非
常に難しい。
本のMISTYアルゴリズムである。MISTYアルゴ
リズムでは,7ビットと9ビットで構成されたS−ボッ
クスは簡単な代数の形式を持つ。しかし,MISTYア
ルゴリズムは,その遂行に複雑な回帰構造(recur
sive structure)が必要であるという問
題があった。
ブロック暗号化アルゴリズムが有する上記問題点に鑑み
てなされたものであり,本発明の目的は,高差分解読法
と差分解読法そして線形解読法に対して安全性を保障す
ることの可能な新規かつ改良された高速ブロック暗号化
アルゴリズムを提供することである。
め,請求項1の記載によれば,フレキシブル暗号化ブロ
ック(flexible encryption bl
ock)がデータストリーム(data strea
m)を2Nバイトのデータブロックに分け,前記ブロッ
クを2つの部分に半分ずつ分ける工程と;前記ブロック
の2番目の部分とMバイトラウンドキー(round
key)に対して排他的論理和演算を実行する工程と;
前記排他的論理和演算の実行結果をL個の8ビットブロ
ックに分けて,最初のブロックを最初のS−boxに送
り,その他のブロックを対応するS−boxに送った後
に,L−1個のS−boxの出力データと最初のS−b
oxの出力データを結合する工程と;前記S−boxの
各出力を左側に8ビット回転させる工程と;前記回転さ
れた結果を新しい2番目の部分に送り以前の2番目の部
分を新しい1番目の部分に送る工程と;を含むキースケ
ジューリングアルゴリズム(key scheduli
ng algorithm)を含むことを特徴とする,
高速ブロック暗号化方法が提供される。
データをM個の8ビットブロックに分ける工程と;任意
の隣接した2つのブロックを排他的論理和演算と256
モジュラ和(modular−addition)のう
ち1つを通して結合する工程と;前記工程で結合された
結果と無理数とを排他的論理和演算で結合する工程と;
前記排他的論理和演算で結合された結果を左側に5ビッ
ト回転演算させる工程と;128シードキー(seed
key)からラウンドキーを生成する工程と;を含む
キースケジューリングアルゴリズム(key sche
dulingalgorithm)を含むことを特徴と
する,高速ブロック暗号化方法が提供される。
ータで使用可能な媒体において:フレキシブル暗号化ブ
ロックがデータストリームを2Nバイトのデータブロッ
クに分け,前記ブロックを2つの部分に半分ずつ分ける
工程と;前記工程で分けられたブロックの2番目の部分
とMバイトラウンドキー(round key)に対し
て排他的論理和演算を実行する工程と;前記排他的論理
和の実行結果をL個の8ビットブロックに分けて,最初
のブロックを最初のS−boxに送り,その他のブロッ
クを対応するS−boxに送った後に,L−1個のS−
boxの出力データと最初のS−boxの出力データを
結合する工程と;前記S−boxの各出力を左側に8ビ
ット回転させる工程と;前記回転された結果を新しい2
番目の部分に送り以前の2番目の部分を新しい1番目の
部分に送る工程と;を遂行する機械によって実行できる
コンピュータプログラムが,所定数の増大階層(enh
ancement layer)と1つのベースの階層
を持つ階層化されたデータストリームにオーディオ信号
を暗号化するため前記媒体の上に実現されたことを特徴
とする,コンピュータで使用可能な媒体が提供される。
ータで使用可能な媒体において:NバイトデータをM個
の8ビットブロックに分ける工程と;任意の隣接した2
つのブロックを排他的論理和演算と256モジュラ和
(modular−addition)のうち1つを通
して結合する工程と;前記工程で結合された結果と無理
数とを排他的論理和演算で結合する工程と;前記排他的
論理和演算で結合された結果を左側に5ビット回転演算
させる工程と;128シードキー(seed key)
からラウンドキーを生成する工程と;を遂行する機械に
よって実行できるコンピュータプログラムが,所定数の
増大階層(enhancement layer)と1
つのベースの階層を持つ階層化されたデータストリーム
にオーディオ信号を暗号化するため前記媒体の上に実現
されたことを特徴とする,コンピュータで使用可能な媒
体が提供される。
本発明にかかる高速ブロック暗号化アルゴリズムの好適
な実施の形態について詳細に説明する。なお,本明細書
及び図面において,実質的に同一の機能構成を有する構
成要素については,同一の符号を付することにより重複
説明を省略する。
撃に対する安全性を保障し,さらに,高差分解読法の安
全性をも保障する高速暗号化アルゴリズムを提供する。
以下では,SNAKEと称されるアルゴリズムについて
説明する。SNAKEアルゴリズムは64ビットブロッ
クでデータを暗号化する。
ブロックがアルゴリズムに入力され64ビット暗号文字
ブロックが出力される。従ってこれは対称的アルゴリズ
ム(symmetric algorithm)であ
る。すなわち,キースケジューリング(key sch
eduling)において微かな差を除いて,同じアル
ゴリズムとキーは,暗号化と解読化に使用される。シー
ドキー(seed key)の長さは128ビットであ
る。データを暗号化または解読化する前に,各ラウンド
(round)で使われる16個のラウンドキーはシー
ドキーからキースケジューリング処理によって決定され
る。本発明の内容は以下の通りである。
cheduling) 128ビットシードキーSは,以下のように4つの32
ビットブロックで分けられる。 S=S4||S3||S2||S1 右側から128ビット整数であるLSBが配列され,連
結される。ここでS1とS2は,それぞれ1番目及び2
番目のラウンドキーになる。
Eのラウンド函数の構造を説明する。ブロック10は,
32ビットのラウンド入力データX=X1||X2||
X3||X4とラウンドキーとが排他的論理和演算によ
り結合されることを示している。32ビットラウンドキ
ーは,上述のキー発生方法によってラウンド函数にスケ
ジュールされたものである。ブロック20は,32ビッ
ト入力データXのうち,8ビットごとに分割されたデー
タのうちの一のデータX1を示している。ブロック30
は排他的論理和演算子を表す。ブロック40は,8ビッ
ト入力データの8ビット出力データに対する非線形函数
である256*8のS−boxを表す。ブロック50
は,S−boxの8ビット出力ブロックからの連結され
た32ビットデータの1バイト(8ビット)回転を表
す。ブロック60はラウンド函数からの32ビット出力
データを表す。
ため,32ビットデータが入力され,同じ長さのデータ
を出力するSCROL函数について,図2,図3を参照
しながら説明する。図2に示したブロック70は,ラウ
ンドキーを発生するSCROL函数に対する32ビット
入力データブロックXを示している。ブロック80は,
32ビット入力データブロックXからSCROL函数へ
の8ビットに分割されたサブデータブロックX1を表
す。ブロック90は,8ビットモジュラ和(mod25
6)演算子を表す。ブロック100は排他的論理和演算
子を表す。ブロック110は,排他的論理和演算子を通
して32ビット無理常数(constant irra
tional number)GN(Golden N
umber)と結合する過程を表す。ここでGNは任意
のビット列でのと同じ特性を持つ。ブロック120は,
以前の段階の32ビットデータの5ビット左側回転を表
す。ブロック130はSCROL函数からの最終的な3
2ビット出力データを表す。
キー発生過程のため32ビットサブブロックS1,S
2,S3,S4に分割される128ビットシードキーS
を表す。ブロック150は,128ビットシードキーS
から32ビットに分割されたサブシードキーブロックS
1,S2,S3,S4を表す。ブロック160は,キー
発生過程によって発生されたラウンドキーK1〜K8を
表す。なお,ラウンドキーKiは32ビットのi番目の
ラウンドキーを表す。
2||X1,(Xi:8ビット)がSCROL函数に入
力されると,SCROL函数の出力Yは以下のように表
す事ができる。
tenation)を意味し,記号
+”は256モジュラ和を意味し,記号”<<<5”は
5ビット左側に回転する事を意味する。
下のようにその他のラウンドキーKi(i=3,4,…
16)を生成する。例えば,
und function) S−ボックスはラウンド函数Fで使用される。SNAK
Eの具体化の一例に4つのS−ボックスがある。これら
4つのS−ボックスS1,S2,S3,S4は以下のよ
うに2つの形態を持つ。 TYPE1:S1=S2=S3=S4=f(x); TYPE2:S1=S3=f(x),S2=S4=g
(x); ここで,f(x)=x−1はガロワフィールド(Gal
ois Field)GF(256)の代数的逆変換
(algebraic inversion)である。
また,g(x)=h(h(x))であり,h(x)は,
45を底とするモジュラ指数関数(modular e
xponent function)の自己構成(se
lf−composition)である。すなわち,h
(x)=45Xmod257である。
ソフトウェアの実現にはTYPE1を使用し,ソフトウ
ェアの実現にはTYPE2が使用される。TYPE1は
ロムテーブルを使うかわりにゲートレベルでチップ(c
hip)のための回路を設計する時実現可能である。
る。32ビットデータ
て一番右側からLSBの順に連結されており,Kiはi
番目ラウンドキーである。)がラウンド函数fに入力さ
れると,出力Y=Y4||Y3||Y2||Y1にな
る。ラウンド函数Fは以下の形式で与えられる。
4ビット入力平文のサイファスネイク(cipher
SNAKE)への左側32ビットを表す。ブロック18
0は64ビット入力平文のサイファスネイクへの右側3
2ビットを表す。ブロック190は,図1に示したスネ
イクのラウンド函数を表す。ブロック200は,図2,
図3に示したスネイクのキースケジューリング過程から
発生したラウンドキーを表す。ブロック210は排他的
論理和演算子を表す。ブロック220は1回のラウンド
過程(one−round process)を実行す
るスネイクの16ラウンド過程を16回繰り返す事によ
って,解読されたデータ(encrypted dat
a)または暗号文(cipher text)のような
64ビット最終出力データの32ビット左側部を表す。
ブロック230は,1回のラウンド過程(one−ro
und process)を実行するスネイクの16ラ
ウンド過程を16回繰り返す事によって,解読されたデ
ータ(encrypteddata)または暗号文(c
ipher text)のような64ビット最終出力デ
ータの32ビット右側部を表す。
文に対して動作する。このブロックは各32ビットずつ
左右に分けられる。そして図4に示された,同一な演算
を16ラウンド行う。データがラウンド函数F内で排他
的論理和演算を通してキーと結合される。16番目ラウ
ンドの後,左右のブロックが結合しアルゴリズムが終わ
る。ラウンドごとに以前のラウンド出力データの右側3
2ビットが排他的論理和演算を通してラウンドキーと結
合し,その結果データは4つの8ビットデータブロック
X1,X2,X3,X4に分けられる。
は,上述したラウンド函数Fの入力データを構成する。
また,函数Fの出力データは排他的論理和演算を通して
左側32ビットデータブロックと結合され,次のまたは
新しいラウンドの右側データブロックになる。なお,以
前の右側データブロックは新しい左側データブロックに
なる。上記演算が16回反復され16ラウンドのスネイ
クを作る。
jとRjは,Bjの各左右の半分ずつを表し,Kjはj
番目のラウンドキーを表す。またFは上述のラウンド函
数を表す。この時ラウンドは次のように表せる。
データ(Output Difference Dat
a)から推論できるSNAKEの安全性を,入力差を持
つ一双のデータ値が可変パラメータとして与えられ,い
わゆる遷移差分行列(Transient Diffe
rential Matrix)と呼ばれる係数行列
(Coefficient Matrix)を得るた
め,差分可変パラメータ(difference va
riable parameter)方程式の線形シス
テムを形成すると察する事ができる。暗号をそのランク
(Rank)に限定させるとゆう条件を作ったり捜すこ
とによって,SNAKEのラウンド函数構造を推論でき
る。安定性に対する証明は,Chang−hyiLe
e,Young−tae Cha,”A simple
Block Cipher withProvabl
e Resistance against DC&L
C Attacks”,JW−ISC,(1997)に
示されている。
い。SNAKEに対する模擬実験(Simulatio
n)で,120MHz Pentium PCでC++
言語で実行した場合,本発明の暗号化処理速度は16M
bpsであるのに対して,DESでは同じ装備を使用し
て10.4Mbpsの速度を示した。
たりする,情報格納手段(例えばロム,フロッピーディ
スク,ハードディスク等),光読出手段(例えばCD−
ROM,DVD等)及び搬送波(carrier wa
ve。例えばインターネット上での電送)にも適用され
るが,これらに限定されるものではなく,媒体から始ま
るプログラムやプログラムセグメント(segment
s)が動作する汎用デジタルコンピュータにおいても適
用できる。本発明の実施の形態の内容から,分野で熟練
したコンピュータプログラマによって本発明を適用する
のに用いられる機能的プログラム(functiona
l program),コード及びコードセグメントが
誘導できる。
かる高速ブロック暗号化アルゴリズムの好適な実施形態
について説明したが,本発明はかかる例に限定されな
い。当業者であれば,特許請求の範囲に記載された技術
的思想の範疇内において各種の変更例または修正例に想
到し得ることは明らかであり,それらについても当然に
本発明の技術的範囲に属するものと了解される。
リズムは,日本のMISTYアルゴリズムのように回帰
的構造を持つのではなく,単純に各S−ボックスを通過
した8ビットデータがシフトするのと同時に,すぐ次の
S−ボックスに入力で軌還される構造を持つので8ビッ
ト単位で分割されたブロックがS−ボックスを通りなが
らその線形性(linearity)と差分均一性(d
ifferentialuniformity)が低く
なって出力されるようにし,それと同時にこれらが隣り
合うS−ボックスの入力に対して影響を及ぼすようにし
て全体の出力値等に対して影響を与えるようにした。
暗号化攻略法である差分解読法と線型解読法に対する安
定性を持っており,暗号化網(encryption
network)構造の安全性を利用してS−ボックス
の函数を限定しないで,可能な限り良いS−ボックス函
数を選択的に使用出来る事にその利点がある。又,本発
明によるブロック暗号化アルゴリズムはハードウエア
的,あるいはソフトウエア的に全て具現し安く,特にソ
フトウエア的に構成した場合,DESブロック暗号化ア
ルゴリズムと比べて2倍程速い暗号化速度を得る事がで
きる。
具現した場合,暗号化速度はペンティアム120MHz
上でC++プログラミングを利用し模擬実験(simu
lation)した結果,DESアルゴリズムが約1.
3Mbytes/sec,本発明によるCipher
Snakeアルゴリズムは約2.0Mbytes/se
cという結果を得て従来のDESアルゴリズムより優秀
である事が分った。
KEのラウンド函数の構造を示す説明図である。
CROL函数を示す説明図である。
る。
istel)タイプの構造を示す説明図である。
Claims (4)
- 【請求項1】 フレキシブル暗号化ブロック(flex
ible encryption block)がデー
タストリーム(data stream)を2Nバイト
のデータブロックに分け,前記ブロックを2つの部分に
半分ずつ分ける工程と;前記工程で分けられたブロック
の2番目の部分とMバイトのラウンドキー(round
key)に対して排他的論理和演算を実行する工程
と;前記排他的論理和演算の実行結果をL個の8ビット
ブロックに分けて,最初のブロックを最初のS−box
に送り,その他のブロックを対応するS−boxに送っ
た後に,L−1個のS−boxの出力データと最初のS
−boxの出力データを結合する工程と;前記S−bo
xの各出力を左側に8ビット回転させる工程と;前記回
転された結果を新しい2番目の部分に送り以前の2番目
の部分を新しい1番目の部分に送る工程と;を含むキー
スケジューリングアルゴリズム(key schedu
ling algorithm)を含むことを特徴とす
る,高速ブロック暗号化方法。 - 【請求項2】 NバイトデータをM個の8ビットブロッ
クに分ける工程と,任意の隣接した2つのブロックを排
他的論理和演算と256モジュラ和(256−modu
lar−addition)のうち1つを通して結合す
る工程と;前記工程で結合された結果と無理数とを排他
的論理和演算で結合する工程と;前記排他的論理和演算
で結合された結果を左側に5ビット回転演算させる工程
と;128シードキー(seed key)からラウン
ドキーを生成する工程と;を含むキースケジューリング
アルゴリズム(key scheduling alg
orithm)を含むことを特徴とする,高速ブロック
暗号化方法。 - 【請求項3】 コンピュータで使用可能な媒体におい
て:フレキシブル暗号化ブロック(flexible
encryption block)がデータストリー
ムを2Nバイトのデータブロックに分け,前記ブロック
を2つの部分に半分ずつ分ける工程と;前記工程で分け
られたブロックの2番目の部分とMバイトのラウンドキ
ー(round key)に対して排他的論理和演算を
実行する工程と;前記排他的論理和演算の実行結果をL
個の8ビットブロックに分けて,最初のブロックを最初
のS−boxに送り,その他のブロックを対応するS−
boxに送った後に,L−1個のS−boxの出力デー
タと最初のS−boxの出力データを結合する工程と;
前記S−boxの各出力を左側に8ビット回転させる工
程と;前記回転された結果を新しい2番目の部分に送り
以前の2番目の部分を新しい1番目の部分に送る工程
と;を遂行する機械によって実行できるコンピュータプ
ログラムを備え,該コンピュータプログラムは,一の基
本となる階層と,複数の増大する階層(enhance
ment layer)とから成る階層化されたデータ
ストリームに音声信号を暗号化することを特徴とする,
コンピュータで使用可能な媒体。 - 【請求項4】 コンピュータで使用可能な媒体におい
て:NバイトデータをM個の8ビットブロックに分ける
工程と;任意の隣接した2つのブロックを排他的論理和
演算と256モジュラ和(256−modular−a
ddition)のうち1つを通して結合する工程と;
前記工程で結合された結果と無理数とを排他的論理和演
算で結合する工程と;前記排他的論理和演算で結合され
た結果を左側に5ビット回転演算させる工程と;128
シードキー(seed key)からラウンドキーを生
成する工程と;を遂行する機械によって実行できるコン
ピュータプログラムを備え,該コンピュータプログラム
は,一の基本となる階層と,複数の増大する階層(en
hancement layer)とから成る階層化さ
れたデータストリームに音声信号を暗号化することを特
徴とする,コンピュータで使用可能な媒体。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970026558A KR100389902B1 (ko) | 1997-06-23 | 1997-06-23 | 차분해독법과선형해독법에대하여안전성을보장하는고속블럭암호화방법 |
KR1997P26558 | 1997-06-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1173101A true JPH1173101A (ja) | 1999-03-16 |
JP3148181B2 JP3148181B2 (ja) | 2001-03-19 |
Family
ID=19510735
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP17584498A Expired - Fee Related JP3148181B2 (ja) | 1997-06-23 | 1998-06-23 | ブロック暗号化方法,及び,ブロック暗号化装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US6314186B1 (ja) |
JP (1) | JP3148181B2 (ja) |
KR (1) | KR100389902B1 (ja) |
DE (1) | DE19827904C2 (ja) |
FR (1) | FR2765056B1 (ja) |
GB (1) | GB2327581B (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100401225B1 (ko) * | 1999-09-30 | 2003-10-10 | 가시오게산키 가부시키가이샤 | 데이터베이스관리장치 |
JP2017531209A (ja) * | 2014-10-10 | 2017-10-19 | クアルコム,インコーポレイテッド | 回転ベース暗号 |
JP2018109750A (ja) * | 2016-12-16 | 2018-07-12 | ザ・ボーイング・カンパニーThe Boeing Company | ビットミキサにより暗号ラウンド鍵を生成するためのシステム及び方法 |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100434558B1 (ko) * | 1997-12-09 | 2004-09-30 | 삼성전자주식회사 | 고속블록암호화방법및이를위한키스케쥴링방법 |
CA2299538C (en) * | 1998-06-02 | 2004-08-03 | Nippon Telegraph And Telephone Corporation | Apparatus and method for evaluating randomness of functions, random function generating apparatus and method, and recording medium having recorded thereon programs for implementing the methods. |
GB2345229B (en) * | 1998-12-23 | 2003-12-03 | Motorola Ltd | Method for encrypting data |
KR100316025B1 (ko) * | 1999-06-30 | 2001-12-12 | 박종섭 | 데이터 암호 표준 알고리즘을 이용한 암호 및 복호 장치 |
KR100362170B1 (ko) * | 2000-05-04 | 2002-11-23 | 한국전자통신연구원 | 라운드 키 생성 및 암호처리용 암호화장치 |
KR100377175B1 (ko) * | 2000-06-08 | 2003-03-26 | 주식회사 하이닉스반도체 | 데이터 암호화 표준 알고리즘을 이용한 암호화 장치 |
WO2002003605A1 (en) * | 2000-07-04 | 2002-01-10 | Koninklijke Philips Electronics N.V. | Substitution-box for symmetric-key ciphers |
KR100425956B1 (ko) * | 2000-07-15 | 2004-04-03 | (주)시큐어피아 | 동작 진행 중 라운드 키 계산 방식을 이용한 seed 암호 및 복호 회로 |
JP3770584B2 (ja) * | 2000-10-31 | 2006-04-26 | シャープ株式会社 | 暗号鍵生成回路 |
CA2438599C (en) * | 2001-02-26 | 2011-09-20 | Nagravision S.A. | Encryption of a compressed video stream |
US7212631B2 (en) * | 2001-05-31 | 2007-05-01 | Qualcomm Incorporated | Apparatus and method for performing KASUMI ciphering |
JP3851115B2 (ja) * | 2001-06-28 | 2006-11-29 | 富士通株式会社 | 暗号回路 |
JP2003023421A (ja) * | 2001-07-09 | 2003-01-24 | C4 Technology Inc | 暗号方法、そのプログラム、そのプログラムを記録した記録媒体および暗号装置並びに復号方法および復号装置 |
DE10149191C2 (de) * | 2001-10-05 | 2003-12-18 | Infineon Technologies Ag | Verfahren und Vorrichtung zum Ermitteln von Ursprungsausgangsdaten aus Ursprungseingangsdaten auf der Basis einer kryptographischen Operation |
US7099469B2 (en) * | 2001-10-17 | 2006-08-29 | Motorola, Inc. | Method of scrambling and descrambling data in a communication system |
US7103180B1 (en) * | 2001-10-25 | 2006-09-05 | Hewlett-Packard Development Company, L.P. | Method of implementing the data encryption standard with reduced computation |
JP2003223098A (ja) * | 2002-01-29 | 2003-08-08 | Sony Corp | ブーリアン・マトリクスに基づく暗号化処理方法、および復号処理方法、並びにデータ通信システム |
KR100418575B1 (ko) * | 2002-04-03 | 2004-02-14 | 주식회사 하이닉스반도체 | 암호블럭연쇄 방식의 디이에스 암호화 장치 |
US7343011B2 (en) * | 2002-07-15 | 2008-03-11 | Conexant, Inc. | Secure telecommunications system for wireless local area networks |
FR2853424B1 (fr) * | 2003-04-04 | 2005-10-21 | Atmel Corp | Architecture de multiplicateurs polynomial et naturel combines |
US7310421B2 (en) * | 2003-10-06 | 2007-12-18 | National Institute Of Information And Communications Technology | Particular plaintext detector |
US7545928B1 (en) | 2003-12-08 | 2009-06-09 | Advanced Micro Devices, Inc. | Triple DES critical timing path improvement |
US7580519B1 (en) | 2003-12-08 | 2009-08-25 | Advanced Micro Devices, Inc. | Triple DES gigabit/s performance using single DES engine |
JP4574344B2 (ja) | 2004-01-20 | 2010-11-04 | キヤノン株式会社 | 情報処理装置及び方法 |
KR20050087271A (ko) * | 2004-02-26 | 2005-08-31 | 삼성전자주식회사 | 가변 키 길이를 가지는 초기 라운드 키에 대응하는 암호라운드 키와 복호 라운드 키를 선택적으로 발생하는 키스케쥴 장치 |
US7885405B1 (en) * | 2004-06-04 | 2011-02-08 | GlobalFoundries, Inc. | Multi-gigabit per second concurrent encryption in block cipher modes |
US8817979B2 (en) * | 2004-06-04 | 2014-08-26 | Broadcom Corporation | Standalone hardware accelerator for advanced encryption standard (AES) encryption and decryption |
US7526085B1 (en) | 2004-07-13 | 2009-04-28 | Advanced Micro Devices, Inc. | Throughput and latency of inbound and outbound IPsec processing |
US7760874B2 (en) * | 2004-07-14 | 2010-07-20 | Broadcom Corporation | Method and system for implementing FI function in KASUMI algorithm for accelerating cryptography in GSM/GPRS/EDGE compliant handsets |
US7783037B1 (en) | 2004-09-20 | 2010-08-24 | Globalfoundries Inc. | Multi-gigabit per second computing of the rijndael inverse cipher |
US7546461B2 (en) | 2005-06-28 | 2009-06-09 | Microsoft Corporation | Strengthening secure hash functions |
CN104683096B (zh) * | 2013-11-29 | 2017-12-22 | 中国航天科工集团第三研究院第八三五七研究所 | 动态s盒变换方法及*** |
US9584310B2 (en) * | 2014-03-19 | 2017-02-28 | Nxp B.V. | Protecting a white-box implementation against attacks |
US9578469B2 (en) | 2014-10-02 | 2017-02-21 | Motorola Solutions, Inc. | Method and system for direct mode communication within a talkgroup |
WO2016059870A1 (ja) * | 2014-10-14 | 2016-04-21 | ソニー株式会社 | 暗号処理装置、および暗号処理方法、並びにプログラム |
US9960909B2 (en) | 2014-12-08 | 2018-05-01 | Open-Silicon Inc. | High speed and low power hashing system and method |
US10015009B2 (en) * | 2015-11-25 | 2018-07-03 | Nxp B.V. | Protecting white-box feistel network implementation against fault attack |
KR102424922B1 (ko) | 2020-03-02 | 2022-07-26 | 국방과학연구소 | Dlbn이 3 이상인 조건을 만족하는 확장 에스박스 및 이를 이용한 비트 연산 방법 |
JP7443833B2 (ja) | 2020-03-05 | 2024-03-06 | Tdk株式会社 | 圧力センサ |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4195200A (en) * | 1976-06-30 | 1980-03-25 | International Business Machines Corporation | Key controlled block-cipher cryptographic system employing a multidirectional shift matrix |
US5003597A (en) * | 1989-12-21 | 1991-03-26 | Xerox Corporation | Method and apparatus for data encryption |
JPH05249891A (ja) * | 1992-03-06 | 1993-09-28 | Hitachi Ltd | 暗号処理装置およびこれを用いる暗号処理方法 |
JP3029381B2 (ja) * | 1994-01-10 | 2000-04-04 | 富士通株式会社 | データ変換装置 |
US5778074A (en) * | 1995-06-29 | 1998-07-07 | Teledyne Industries, Inc. | Methods for generating variable S-boxes from arbitrary keys of arbitrary length including methods which allow rapid key changes |
CA2164768C (en) * | 1995-12-08 | 2001-01-23 | Carlisle Michael Adams | Constructing symmetric ciphers using the cast design procedure |
US5838794A (en) | 1996-01-11 | 1998-11-17 | Teledyne Electronic Technologies | Method and apparatus for inter-round mixing in iterated block substitution systems |
-
1997
- 1997-06-23 KR KR1019970026558A patent/KR100389902B1/ko not_active IP Right Cessation
-
1998
- 1998-06-04 GB GB9811900A patent/GB2327581B/en not_active Expired - Fee Related
- 1998-06-11 US US09/095,845 patent/US6314186B1/en not_active Expired - Lifetime
- 1998-06-19 FR FR9807753A patent/FR2765056B1/fr not_active Expired - Fee Related
- 1998-06-23 DE DE19827904A patent/DE19827904C2/de not_active Expired - Fee Related
- 1998-06-23 JP JP17584498A patent/JP3148181B2/ja not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100401225B1 (ko) * | 1999-09-30 | 2003-10-10 | 가시오게산키 가부시키가이샤 | 데이터베이스관리장치 |
JP2017531209A (ja) * | 2014-10-10 | 2017-10-19 | クアルコム,インコーポレイテッド | 回転ベース暗号 |
JP2018109750A (ja) * | 2016-12-16 | 2018-07-12 | ザ・ボーイング・カンパニーThe Boeing Company | ビットミキサにより暗号ラウンド鍵を生成するためのシステム及び方法 |
Also Published As
Publication number | Publication date |
---|---|
FR2765056B1 (fr) | 2000-09-01 |
FR2765056A1 (fr) | 1998-12-24 |
KR19990002840A (ko) | 1999-01-15 |
DE19827904A1 (de) | 1999-01-14 |
KR100389902B1 (ko) | 2003-09-22 |
GB2327581A (en) | 1999-01-27 |
GB2327581B (en) | 1999-08-04 |
US6314186B1 (en) | 2001-11-06 |
DE19827904C2 (de) | 2000-05-11 |
GB9811900D0 (en) | 1998-07-29 |
JP3148181B2 (ja) | 2001-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH1173101A (ja) | 高速ブロック暗号化方法,及び,コンピュータで使用可能な媒体 | |
EP0839418B1 (en) | Cryptographic method and apparatus for non-linearly merging a data block and a key | |
US6199162B1 (en) | Block cipher method | |
US7190791B2 (en) | Method of encryption using multi-key process to create a variable-length key | |
US20040107341A1 (en) | Parallelizable authentication tree for random access storage | |
US20110211688A1 (en) | Data converter, data conversion method and program | |
JP2004531778A (ja) | データ暗号化のための方法および装置 | |
US20010033654A1 (en) | W-EC1 encryption and decryption method and system | |
US7103180B1 (en) | Method of implementing the data encryption standard with reduced computation | |
WO1999014889A1 (en) | Improved block cipher method | |
JP2001282103A (ja) | 暗号化方法 | |
JPH0697930A (ja) | ブロック暗号処理装置 | |
KR20030019365A (ko) | 메시지 인증 코드에 대한 키 정수 치환 발생 방법 및 장치 | |
CN110247754B (zh) | 一种分组密码fbc的实现方法及装置 | |
KR100434558B1 (ko) | 고속블록암호화방법및이를위한키스케쥴링방법 | |
JPH09269727A (ja) | 暗号化方法および暗号化装置 | |
JPH10153954A (ja) | 暗号装置 | |
JP3748184B2 (ja) | 秘話通信装置 | |
Pal et al. | A novel block cipher technique using binary field arithmetic based substitution (BCTBFABS) | |
JP2000089666A (ja) | 暗号化/復号化装置 | |
KR20030000720A (ko) | 키와 평문 사이에 연산이 이루어지지 않는 대칭키 블록암호 알고리즘 설계방법 | |
Haunts et al. | Symmetric Encryption | |
RU2199826C2 (ru) | Способ итеративного шифрования блоков цифровых данных | |
JP2870532B2 (ja) | 暗号変換装置 | |
KR20030001888A (ko) | 키를 사용하지 않고 블록 정보만을 이용하는 암호알고리즘 설계 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20001219 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080112 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090112 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090112 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100112 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |