JPH09233066A - 暗号化/解読化方法および装置 - Google Patents

暗号化/解読化方法および装置

Info

Publication number
JPH09233066A
JPH09233066A JP8060328A JP6032896A JPH09233066A JP H09233066 A JPH09233066 A JP H09233066A JP 8060328 A JP8060328 A JP 8060328A JP 6032896 A JP6032896 A JP 6032896A JP H09233066 A JPH09233066 A JP H09233066A
Authority
JP
Japan
Prior art keywords
decryption
key
encryption
work key
algorithm
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.)
Withdrawn
Application number
JP8060328A
Other languages
English (en)
Inventor
Masahiko Enari
正彦 江成
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP8060328A priority Critical patent/JPH09233066A/ja
Priority to TW086101487A priority patent/TW382872B/zh
Priority to SG9700350A priority patent/SG83093A1/en
Priority to IDP970508A priority patent/ID16092A/id
Priority to KR1019970006189A priority patent/KR970064060A/ko
Priority to CN97104852A priority patent/CN1168041A/zh
Priority to US08/806,286 priority patent/US6504930B2/en
Publication of JPH09233066A publication Critical patent/JPH09233066A/ja
Withdrawn legal-status Critical Current

Links

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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • 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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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/24Key scheduling, i.e. generating round keys or sub-keys for block encryption

Abstract

(57)【要約】 【課題】解読化側の構成の規模を低減できるようにす
る。 【解決手段】送信側のスクランブラにおいてはデータ鍵
とシステム鍵からワーク鍵を生成するDecryptor 16
と、OFBモードの暗号化を行うDecryptor 14の解読
アルゴリズムを同一とする。すると、受信側のデスクラ
ンブラにおいては、データ鍵とシステム鍵からワーク鍵
を生成するDecryptor 26とOFBモードの暗号化を行
うDecryptor 14の解読アルゴリズムを同一とできる。
さらに、Decryptor 21の解読アルゴリズムも同一とす
ることができるので、Decryptor 21,25,26を1
つのDecryptor を兼用して実現することができる。これ
により、デスクランブラの構成の規模を小さいものとす
ることができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、平文を暗号化する
暗号化方法および装置、および暗号文を解読化する解読
化方法および装置に関するものである。
【0002】
【従来の技術】通信や記録等における情報を秘匿するた
めに、情報を暗号化することが従来から知られている。
この暗号化では、情報を意味のわからない情報になるよ
う暗号化し、暗号化された情報を送信したり、記録媒体
等に記録する。そして、暗号化された情報を受けて、解
読化することにより、元の情報を得るようにする。この
ような暗号化・解読化には、大きく分けて秘密鍵暗号方
式(慣用鍵暗号方式)と、公開鍵暗号方式とがある。秘
密鍵暗号方式は、暗号化と解読化とに同じ鍵を利用して
おり、暗号化側と解読化側とで同じ鍵を秘密に持つ方式
である。一方、公開鍵暗号方式は、暗号化側と解読化側
とで異なる鍵を使用し、暗号化側の鍵は公開するが、解
読化側の鍵は公開しない方式である。
【0003】このような暗号化・解読化方式の慣用鍵暗
号方式の一つとして、米国における標準方式であるDE
S(Data Encryption Standard)方式の暗号アルゴリズ
ムが知られている。このDES方式は、暗号アルゴリズ
ムを公開し、暗号鍵だけで暗号強度を保っている。暗号
アルゴリズムを公開するのは、公開しても暗号鍵がなけ
れば、解読するための演算が膨大な量となり、高速な演
算装置を使用しても数100年ないし数1000年以上
かかると予想されているからである。ところで、暗号化
は基本的には文字の順序を入れ替える転置と、一定の規
則にしたがってある文字を別の文字に置き換える換字と
を組み合わせて実施している。そして、どのような順序
で文字を入れ替えるか、どの文字とどの文字とを置き換
えるかを示すのが暗号アルゴリズムと暗号鍵となる。
【0004】ところで、暗号アルゴリズムにはDESに
限らず多種・多様なものがあり、より安全性・高速性に
優れた方式が開発されている。この一例として、米国特
許第4,982,429号明細書、米国特許第5,10
3,479号明細書、および特開平1−276189号
公報等に記載されている暗号方式(MULTI2方式)が知ら
れている。また、国際標準化機構(ISO)においても
ISO9979/0009として登録された暗号化方式
や、ISO/IEC10116として登録された暗号化
利用モードがある。
【0005】上記MULTI2方式の暗号化方式においては、
入力データサイズが64ビット、出力データサイズが6
4ビットであり、暗号化を行うための256ビットサイ
ズのワーク鍵を、256ビットサイズのシステム鍵と、
64ビットサイズのデータ鍵から生成している。また、
暗号化段数は正の整数段とされている。このMULTI2方式
における暗号化アルゴリズムの概略構成を図12に示
す。MULTI2方式は、図12に示すように64ビットのデ
ータ鍵Ksに256ビットのシステム鍵Jを用いて暗号
アルゴリズムを実行することにより、256ビットのワ
ーク鍵Kwを生成する。これを鍵スケジュール処理とい
い、この鍵スケジュール処理は暗号アルゴリズム実行手
段Cにより実行される。生成されたワーク鍵Kwは、暗
号アルゴリズム実行手段Fに供給されて入力された64
ビットブロックの平文が暗号化される。なお、暗号アル
ゴリズム実行手段Cと暗号アルゴリズム実行手段Fとで
実行される暗号アルゴリズムは、同一の暗号アルゴリズ
ムとすることができる。
【0006】このような暗号化がMULTI2方式の基本的な
暗号化アルゴリズムであるが、これでは予め文字、ある
いは単語が出現する頻度の分布を統計処理しておき、入
手した暗号化文の文字列パターンの頻度分布とのマッチ
ングを取ることにより、平文が推定(解読)されてしま
うおそれがある。そこで、暗号化された64ビットの暗
号ブロックと、次に入力される64ビットの入力データ
との排他的論理和を演算して暗号文を作成する手法があ
る。この手法を行って暗号化するモードをCBC(Ciph
er Block Chaining)モードとよんでいる。なお、前記し
た暗号アルゴリズム実行手段Fにおいては、このような
CBCモードの暗号アルゴリズムが実行されている。
【0007】また、例えばパケット通信のように通信を
行うデータの単位が予め決められている通信方式がある
が、64ビットを1ブロックとするようなブロック暗号
化方式では、1ブロックのビット数で割り切れないデー
タ単位が入力された場合に、1ブロックに満たない端数
データがでることになる。そこで、その端数処理をOF
B(Output Feedback )モードで処理するようにしてい
る。すなわち、データに端数部分がある場合は、データ
の端数部分が暗号アルゴリズム実行手段Gに供給され、
ワーク鍵Kw用いて生成された乱数を使用して暗号化す
るようにしたOFBモードとされる。これにより、64
ビットを1ブロックとした時に64ビットに満たないデ
ータの暗号文を得ることができるようになる。なお、C
BCモードおよびOFBモードは暗号化利用モードと呼
ばれる。
【0008】また、MULTI2方式における解読化アルゴリ
ズムの概略構成を図13に示す。図13に示すように、
64ビットのデータ鍵Ksに256ビットのシステム鍵
Jを用いて暗号アルゴリズムを実行することにより25
6ビットのワーク鍵Kwを生成する。このワーク鍵の生
成は、暗号化側と同一の暗号アルゴリズムの鍵スケジュ
ール処理により行われる。この暗号アルゴリズムは暗号
アルゴリズム実行手段cにより実行される。生成された
ワーク鍵Kwは、解読アルゴリズム実行手段fに供給さ
れて入力された64ビットの暗号文が解読化される。
【0009】この解読アルゴリズムでは、暗号アルゴリ
ズム実行手段Fの暗号アルゴリズムにおける、換字と転
置のアルゴリズムが逆の順序のアルゴリズムで行われる
ことになる。なお、OFBモードで暗号化されている暗
号文は、暗号アルゴリズム実行手段gに供給され、ワー
ク鍵Kwを用いて生成された乱数を使用することにより
解読化される。これにより、1ブロック64ビットの暗
号文を解読化して64ビットブロックの平文を得ること
ができる。また、解読アルゴリズム実行手段fはCBC
モードの解読アルゴリズムを実行するようにされてい
る。
【0010】ここで、暗号化利用モードの説明を図14
を参照しながら行うが、図14(a)にCBCモードの
暗号化・解読化の概略構成を示し、図14(b)にOF
Bモードの暗号化・解読化の概略構成を示している。C
BCモードでは、図14(a)に示すようにi番目の平
文ブロックM(i) が、排他的論理和回路101に入力さ
れ、レジスタ(REG)103により遅延されてフィー
ドバックされた1ブロック前の暗号文ブロックC(i-1)
との排他的論理和が演算される。演算されたデータは暗
号アルゴリズム実行手段102において、データ鍵Ks
に基づいて生成されたワーク鍵により暗号化される。こ
の暗号化されたi番目の暗号文ブロックC(i) は、 C(i) =EKs(M(i) .EOR.C(i-1) ) と表せる。ただし、EKs(m)はmをKsで暗号化す
ることを意味しており、EORは排他的論理和の演算を
行うことを示している。
【0011】そして、この暗号文ブロックC(i) は送信
され、受信側において受信されることになる。受信され
た暗号文ブロックC(i) は、解読アルゴリズム実行手段
111においてデータ鍵Ksに基づいて生成されたワー
ク鍵を用いて解読され、排他的論和回路113に供給さ
れる。この排他的論理和回路113にはレジスタ(RE
G)112において遅延された、1ブロック前の暗号文
ブロックC(i-1) が入力されて、両者の排他的論和が演
算される。この時、送信側と受信側のデータ鍵Ksは等
しく、これにより、排他的論理和回路113からi番目
の平文ブロックM(i) が解読される。i番目の平文ブロ
ックM(i) は次のように表せる。 M(i) =DKs(C(i) .EOR.C(i-1) ) ただし、DKs(c)はKsでcを解読化することを示
している。
【0012】また、OFBモード時では、i番目の平文
ブロックM(i) は排他的論理和回路105に供給され
る。この排他的論理和回路105には、データ鍵Ksに
基づいて生成されたワーク鍵により乱数化された暗号ア
ルゴリズム実行手段104の出力が供給されている。な
お、暗号アルゴリズム実行手段104の出力は、レジス
タ103により1ブロック遅延されて暗号アルゴリズム
実行手段104に1ブロック遅延されて戻されている。
これにより、排他的論理和回路105からは乱数により
暗号化された暗号文ブロックC(i) が出力される。
【0013】そして、この暗号文ブロックC(i) は送信
され、受信側において受信されることになる。受信され
た暗号文ブロックC(i) は、排他的論和回路114に供
給される。この排他的論和回路114には、暗号アルゴ
リズム実行手段115においてデータ鍵Ksに基づいて
生成されたワーク鍵を用いて乱数化された出力が供給さ
れている。この暗号アルゴリズム実行手段115の出力
は、レジスタ(REG)112において1ブロック遅延
されて暗号アルゴリズム実行手段115に戻されてい
る。この場合、排他的論理和回路114に供給される乱
数は、排他的論理和回路105に供給される乱数と等し
く、これにより、排他的論理和回路114から解読され
たi番目の平文ブロックM(i) が得られる。
【0014】以上説明した暗号化利用モードを有する暗
号化・解読化方式の概略構成を図15に示す。この図に
おいて、送信側にはデータを暗号化するスクランブラ1
00が備えられており、スクランブラ100により入力
データがスクランブル、すなわち暗号化されて送信され
ている。このスクランブルされた送信データは、空間等
の伝送路を伝播されて受信側で受信される。受信側に
は、デスクランブラ110が備えられており、このデス
クランブラ110によりスクランブルされた送信データ
がデスクランブル、すなわち解読化されて、元のデータ
に戻されて出力されるようになる。
【0015】スクランブラ100は、入力された入力デ
ータ(平文)を暗号化する暗号アルゴリズム実行手段で
あるEncryptor 102と、レジスタ103と、排他的論
理和回路(EX−OR)101からなるCBCモード暗
号化部と、暗号アルゴリズム実行手段であるEncryptor
104と、排他的論理和回路(EX−OR)105から
なるOFBモード暗号化部から構成されている。なお、
データ鍵とシステム鍵からワーク鍵を生成するEncrypto
r 106もスクランブラ100内に備えられている。生
成されたワーク鍵はEncryptor 102,104に供給さ
れる。ところで、Encryptor 102、Encryptor 10
4、Encryptor 106は同一の暗号アルゴリズムとする
ことができるので、1つのEncryptor により3つのEncr
yptor を兼用することができる。CBCモード暗号化部
およびOFBモード暗号化部の動作は前述したとおりで
あるので、ここでは省略する。
【0016】また、受信側に備えられたデスクランブラ
110は、入力された受信データ(暗号文)を解読化す
る解読アルゴリズム実行手段であるDecryptor 111
と、レジスタ112と、排他的論理和回路(EX−O
R)113からなるCBCモード解読化部と、暗号アル
ゴリズム実行手段であるEncryptor 115と、排他的論
理和回路(EX−OR)114からなるOFBモード解
読化部から構成されている。なお、データ鍵とシステム
鍵からワーク鍵を生成するEncryptor 116もデスクラ
ンブラ110内に備えられている。生成されたワーク鍵
はDecryptor 111と、Encryptor 115に供給され
る。なお、Encryptor 115、Encryptor 116は同一
の暗号アルゴリズムとすることができるので、1つのEn
cryptor により2つのEncryptor を兼用することができ
る。また、CBCモード解読化部およびOFBモード解
読化部の動作は前述したとおりであるので、ここでは省
略する。
【0017】
【発明が解決しようとする課題】ところで、上述した図
15に示すような暗号化・解読化方式においては、暗号
化側では暗号アルゴリズムを実行するだけでよいが、解
読化側では解読処理を行う解読アルゴリズムと、解読処
理に必要なワーク鍵を生成する暗号アルゴリズムを実行
することが必要となる。すなわち、解読化側において
は、解読アルゴリズムと暗号アルゴリズムを実行するハ
ードウェアをそれぞれ設けなければならず、そのために
暗号化側に比べ解読側のハードウェアが大型化するとい
う問題点があった。しかも、この暗号化・解読化方式が
衛星放送等の放送システムに応用された場合は、送信側
より受信設備のコスト上昇につながり、ひいては放送シ
ステムの普及促進が妨げられることになる。
【0018】そこで、本発明は所定の暗号アルゴリズム
で暗号化された暗号文を、受信側において簡単な構成で
解読処理を行えるようにした暗号化/解読化方法および
装置を提供することを目的としている。
【0019】
【課題を解決するための手段】上記の目的を達成するた
めに、本発明の暗号化方法は、解読アルゴリズムを実行
することによりワーク鍵を生成するワーク鍵生成ステッ
プと、該ワーク鍵生成ステップで生成されたワーク鍵を
用いて、平文に所定の暗号アルゴリズムの暗号処理を施
すことにより暗号文を作成する暗号処理ステップと、を
備えている。
【0020】また、本発明の解読化方法は、暗号処理に
使用されたワーク鍵を解読アルゴリズムを実行すること
により生成するワーク鍵生成ステップと、該ワーク鍵生
成ステップで生成されたワーク鍵を用いて暗号文に前記
解読アルゴリズムの解読処理を施すことにより元の平文
を得る解読ステップと、を備えている。
【0021】さらに、本発明の暗号化/解読化方法は、
暗号化側に、解読アルゴリズムを実行することによりワ
ーク鍵を生成する暗号用ワーク鍵生成ステップと、該暗
号用ワーク鍵生成ステップで生成されたワーク鍵を用い
て、平文に所定の暗号アルゴリズムの暗号処理を施すこ
とにより暗号文を作成する暗号処理ステップとが備えら
れ、解読化側に、暗号処理に使用された前記ワーク鍵を
前記解読アルゴリズムを実行することにより生成する解
読用ワーク鍵生成ステップと、該解読用ワーク鍵生成ス
テップで生成された前記ワーク鍵を用いて前記暗号文に
前記解読アルゴリズムの解読処理を施すことにより前記
平文を得る解読処理ステップとが備えられている。
【0022】さらにまた、本発明の暗号化装置は、鍵情
報を用いて解読アルゴリズムを実行することによりワー
ク鍵を生成する鍵スケジュール手段と、該鍵スケジュー
ル手段により生成されたワーク鍵を用いて、平文に所定
の暗号アルゴリズムの暗号処理を施すことにより暗号文
を作成する暗号処理手段と、を少なくとも備えている。
【0023】さらにまた、本発明の解読化装置は、暗号
処理に使用されたワーク鍵を解読アルゴリズムを実行す
ることにより生成する鍵スケジュール手段と、該鍵スケ
ジュール手段で生成されたワーク鍵を用いて暗号文に前
記解読アルゴリズムの解読処理を施すことにより元の平
文を得る解読手段と、を少なくとも備えている。
【0024】さらにまた、本発明の暗号化/解読化装置
においては、暗号化側に、解読アルゴリズムを実行する
ことによりワーク鍵を生成する暗号用鍵スケジュール手
段と、該暗号用鍵スケジュール手段で生成されたワーク
鍵を用いて、平文に所定の暗号アルゴリズムの暗号処理
を施すことにより暗号文を作成する暗号処理手段とが備
えられ、解読化側に、前記暗号処理手段で使用された前
記ワーク鍵を前記解読アルゴリズムを実行することによ
り生成する解読用鍵スケジュール手段と、該解読用鍵ス
ケジュール手段で生成された前記ワーク鍵を用いて前記
暗号文に前記解読アルゴリズムの解読処理を施すことに
より前記平文を得る解読処理手段とが備えられている。
【0025】このような本発明の暗号化方法および解読
化方法によれば、解読処理を行うために必要なワーク鍵
を解読アルゴリズムを実行することにより生成すること
ができる。したがって、ワーク鍵を生成する解読アルゴ
リズムの実行手段と、暗号文を解読処理する解読アルゴ
リズムの実行手段とを兼用することができるようにな
り、解読化側の構成を簡略化することができる。また、
OFBモード時に解読アルゴリズムを実行することによ
り生成した乱数を用いて暗号化されている場合は、OF
Bモードで暗号化された暗号文を、解読アルゴリズムを
実行することにより生成された乱数を用いて解読するこ
とができるため、OFBモードにおける乱数を生成する
ための解読アルゴリズムの実行手段も兼用することがで
きる。したがって、いっそう解読化側の構成を簡略化す
ることができる。
【0026】
【発明の実施の形態】本発明の暗号化利用モードを有す
る暗号化/解読化方法を実行する本発明の暗号化/解読
化装置の実施の形態の概略構成例を示すブロック図を図
1に示す。なお、送信側において本発明の暗号化方法が
実施されており、受信側において本発明の解読化方法が
実施されている。この図において、送信側にはスクラン
ブラ1が備えられており、スクランブラ1により送信す
べき入力データがスクランブル、すなわち暗号化されて
送信されている。このスクランブルされた送信データ
は、空間等の伝送路を伝播されて受信側で受信される。
受信側には、デスクランブラ2が備えられており、この
デスクランブラ2によりスクランブルされた送信データ
がデスクランブル、すなわち解読化されて、元のデータ
に戻されるようになる。
【0027】この場合、送信データ(受信データ)のフ
ォ−マットは、例えばISO/IEC13818として
規定されているトランスポートストリーム(TS)とさ
れている。トランスポートストリームは、188バイト
のパケット構造とされており、1パケットは通常4バイ
トのヘッダの後に184バイトのペイロードが続くよう
にされている。さらに、伝送エラーに対するエラー訂正
のために、16バイトのパリティーを付加するダミー期
間がパケットに付加されている。トランスポートストリ
ームは、このようなパケットの繰り返しのストリームと
される。
【0028】このトランスポートストリームのヘッダに
は、そのパケットがビデオデータで構成されているの
か、オーディオデータで構成されているのか、あるいは
他のデータ列で構成されているのかを示すPID(Pack
et Identification )情報や、暗号化されているのか否
かを示すTSC(Transport Scrambling Control)情報
等の、パケットの属性情報が含まれている。なお、パケ
ットのヘッダを解釈した結果、受信データが暗号化され
ていないと判断された場合は、デスクランブラ2からは
遅延部を通すだけで、トランスポートストリームがその
まま出力される。この遅延部の遅延時間は、デスクラン
ブラ2においてデスクランブルに要する時間とされる。
【0029】ここで、スクランブラ1は、入力された平
文を暗号化する暗号アルゴリズム実行手段であるEncryp
tor 12の出力を1ブロック遅延するレジスタ(re
g)13と、排他的論理和回路(EX−OR)11から
なるCBCモード暗号化部と、解読アルゴリズム実行手
段であるDecryptor 14と、排他的論理和回路(EX−
OR)15からなるOFBモード暗号化部から構成され
ている。なお、データ鍵とシステム鍵からワーク鍵を生
成する解読アルゴリズム実行手段であるDecryptor 16
もスクランブラ1内に備えられている。ここで、生成さ
れたワーク鍵はEncryptor 12およびDecryptor 14に
供給される。
【0030】次に、スクランブラ1の動作を説明する
と、CBCモードの場合は、切り換え手段30、切り換
え手段31が共に端子a側に切り換えられ、入力された
ブロック毎の入力データ(平文)は排他的論理和回路
(EX−OR)11に入力される。そして、Encryptor
12の出力を1ブロック遅延するレジスタ(reg)1
3からの出力との排他的論理和が演算され、演算された
EX−OR11からの出力は、暗号アルゴリズム実行手
段であるEncryptor 12に入力される。Encryptor12
では、ワーク鍵を用いて暗号アルゴリズムが実行されて
平文が暗号化される。暗号化された暗号文は、切り換え
手段31を介して送信される。
【0031】また、ブロック化した時に端数とされた入
力データはOFBモードで暗号化されるが、OFBモー
ド時には、切り換え手段30、切り換え手段31が共に
端子b側に切り換えられ、入力されたブロック毎の入力
データ(平文)は排他的論理和回路(EX−OR)15
に入力される。そして、Decryptor 14からの乱数出力
との排他的論理和が演算されて暗号化される。この場
合、Decryptor 14はワーク鍵を用いて解読アルゴリズ
ムを実行し、乱数を出力している。そして、暗号化され
た暗号文は、切り換え手段31を介して送信される。な
お、Encryptor 12およびDecryptor 14に供給されて
いるワーク鍵は、暗号化処理に先だって、予めデータ鍵
とシステム鍵とを用いて解読アルゴリズムをDecryptor
16において実行することにより生成されている。
【0032】ところで、Decryptor 14、Decryptor 1
6は暗号化処理において同時に使用することはないと共
に、Decryptor 14、Decryptor 16の実行する解読ア
ルゴリズムは同一とすることができるため、1つのDecr
yptor で2つのDecryptor 14,16を兼用するように
している。
【0033】また、受信側に備えられたデスクランブラ
2は、入力された受信データ(暗号文)を解読化する解
読アルゴリズム実行手段であるDecryptor 21と、入力
された受信データを1ブロック遅延するレジスタ22
と、排他的論理和回路(EX−OR)23からなるCB
Cモード解読化部と、解読アルゴリズム実行手段である
Decryptor 25と、排他的論理和回路(EX−OR)2
4からなるOFBモード解読化部から構成されている。
なお、データ鍵とシステム鍵からワーク鍵を生成するDe
cryptor 26もデスクランブラ2内に備えられている。
ここで生成されたワーク鍵はDecryptor 21と、Decryp
tor 25に供給される。
【0034】次に、デスクランブラ2の動作を説明する
と、受信データがCBCモードで暗号化されている場合
は、切り換え手段32、切り換え手段33が共に端子a
側に切り換えられ、入力されたブロック毎の受信データ
(暗号文)はDecryptor 21に入力される。Decryptor
21にはDecryptor 26により生成された暗号処理に使
用されたワーク鍵と同じワーク鍵が供給されており、こ
のワーク鍵を用いて解読アルゴリズムを実行することに
より、暗号文が解読される。解読されたブロック毎のデ
ータは、排他的論理和回路(EX−OR)23に入力さ
れ、1ブロック遅延されたレジスタ(reg)22から
の受信された暗号文との排他的論理和が演算される。こ
の演算結果が解読処理された平文となり、この平文は、
切り換え手段33を介して出力される。
【0035】また、ブロックした時に端数とされたOF
Bモードで暗号化された暗号文を解読するOFBモード
時は、切り換え手段32、切り換え手段33が共に端子
b側に切り換えられ、受信されたブロック毎の受信デー
タ(暗号文)は排他的論理和回路(EX−OR)24に
入力される。そして、Decryptor 25からの乱数出力と
の排他的論理和が演算されて解読化される。この場合、
Decryptor 25は前記したDecryptor 26により生成さ
れたワーク鍵を用いて解読アルゴリズムを実行すること
により、送信側と同じ乱数を作成して出力している。そ
して、解読化された平文は、切り換え手段33を介して
出力される。なお、Decryptor 21、Decryptor 25に
供給されているワーク鍵は、解読化処理に先だって、予
め送信側と同じデータ鍵とシステム鍵とを用いて、解読
アルゴリズムをDecryptor 26において実行することに
より生成されている。
【0036】ところでスクランブラ1とデスクランブラ
2とにおいて、Decryptor 14とDecryptor 25とは同
一の解読アルゴリズムとする必要があり、Decryptor 1
6とDecryptor 26も同一の解読アルゴリズムとする必
要がある。さらに、スクランブラ1においてDecryptor
14とDecryptor 16とを兼用している場合は、デスク
ランブラ2において、Decryptor 25とDecryptor 26
の解読アルゴリズムは同一となる。
【0037】また、スクランブラ1においてDecryptor
14の解読アルゴリズムを、Encryptor 12の暗号アル
ゴリズムを解読する解読アルゴリズムとすることがで
き、このようにすると、デスクランブラ2においてDecr
yptor 21とDecryptor 25との解読アルゴリズムを同
一とすることができる。すなわち、デスクランブラ2に
おいて、Decryptor 21、Decryptor 25、Decryptor
26の解読アルゴリズムを同一とすることができる。さ
らに、Decryptor 21、Decryptor 25、Decryptor 2
6は解読処理時に同時に使用することがないので、これ
らのDecryptor 21,25,26を兼用して1つのDecr
yptor で構成することができる。本発明は、このように
Decryptor を兼用して使用することを特徴としており、
本発明はデスクランブラ2の構成、すなわち解読手段の
構成を大幅に簡略化することができる。
【0038】次に、本発明の暗号化方法を実行する暗号
化アルゴリズムを図2を参照しながら説明する。図2に
示す本発明の暗号化アルゴリズムにおいては、入力デー
タサイズが64ビット、出力データサイズが64ビット
にブロック化されており、暗号化を行うための256ビ
ットサイズのワーク鍵を、256ビットサイズのシステ
ム鍵と、64ビットサイズのデータ鍵から生成してい
る。また、暗号化段数は正の整数段とされている。すな
わち、64ビットのデータ鍵Ksに256ビットのシス
テム鍵Jを用いて解読アルゴリズムを実行することによ
り、256ビットのワーク鍵Kwを生成する。これを鍵
スケジュール処理といい、この鍵スケジュール処理は解
読アルゴリズム実行手段E3により実行される。生成さ
れたワーク鍵Kwは、暗号アルゴリズム実行手段E6に
供給されて入力された64ビットブロックの平文が暗号
化される。なお、解読アルゴリズム実行手段E3で実行
される解読アルゴリズムは、暗号アルゴリズム実行手段
E6で実行される暗号アルゴリズムを解読することがで
きる解読アルゴリズムとされている。
【0039】また、このように暗号化された暗号文で
は、予め文字、あるいは単語が出現する頻度の分布を統
計処理しておき、入手した暗号化文の文字列パターンの
頻度分布とのマッチングを取ることにより、平文が推定
(解読)されてしまうおそれがある。そのため、前述し
たように、暗号化された64ビットの暗号ブロックと、
次に入力される64ビットブロックの入力データ(平
文)との排他的論理和を演算して暗号文を作成している
CBC(Cipher Block Chaining)モードが採用されてい
る。なお、前記した暗号アルゴリズム実行手段E6にお
いては、このようなCBCモードの暗号アルゴリズムが
実行されている。
【0040】また、データの単位が予め決められている
方式とされて、例えば64ビットを1ブロックとして暗
号化処理が行われる場合には、1ブロックのビット数で
割り切れないデータ単位が入力された場合に、暗号化さ
れない端数データがでることになる。そこで、前述した
ようにその端数処理をOFB(Output Feedback )モー
ドで処理するようにしている。すなわち、データに端数
部分がある場合は、データの端数部分が解読アルゴリズ
ム実行手段E7に供給され、256ビットの幅のワーク
鍵Kwを用いて生成された乱数を使用することにより暗
号化するようにしたOFBモードとされる。これによ
り、64ビットを1ブロックとして暗号化処理しても6
4ビットに満たない入力データの暗号文を得ることがで
きるようになる。なお、CBCモードおよびOFBモー
ドは暗号化利用モードと呼ばれる。
【0041】なお、前述したようにワーク鍵Kwを生成
する解読アルゴリズム実行手段E3と、OFBモードの
暗号化手段である解読アルゴリズム実行手段E7の解読
アルゴリズムは同一の解読アルゴリズムであり、実際に
は1つの解読アルゴリズム実行手段が2つの処理を兼用
して行っている。そこで、1つの解読アルゴリズム実行
手段が2つの処理を兼用するようにしたスクランブラ1
の構成を図4に示す。なお、図4においては図1に示す
Decryptor 14およびDecryptor 16の2つを兼用して
いるDecryptor を14(16)として示し、2つのEX
−ORを兼用しているEX−ORを11(15)として
示している。
【0042】この図において、64ビット幅のデータ鍵
はデータ鍵レジスタ(Data_Key Register )17に予め
書き込まれており、256ビット幅のシステム毎に割り
当てられたシステム鍵はシステム鍵レジスタ(System_K
ey Register )18に暗号化処理に先立ち予め書き込ま
れている。なお、データ鍵は暗号強度を高めるために数
秒ないし数十秒毎に更新される。この状態において、ま
ず、切り換え手段42および切り換え手段43を共に端
子a側に切り換えるようにする。すると、Decryptor 1
4(16)にはデータ鍵レジスタ17に記憶されている
64ビット幅のデータ鍵と、システム鍵レジスタ18に
記憶されているからの256ビット幅のシステム鍵とが
供給され、Decryptor 14(16)において解読アルゴ
リズムが実行されることにより256ビット幅のワーク
鍵が生成される。このワーク鍵はワーク鍵レジスタ(Wo
rk_Key Register )19に書き込まれる。
【0043】このようにしてワーク鍵が生成されると、
切り換え手段41および切り換え手段44が共に端子b
側へ切り換えられる。すると、64ビット幅にブロック
化された入力データはEX−OR11(15)に入力さ
れ、レジスタ13により1ブロック遅延された暗号化さ
れたデータとの排他的論理和が演算される。演算結果
は、Encryptor 12に入力され、Encryptor 12に供給
されているワーク鍵レジスタ19から読み出されたワー
ク鍵を用いて暗号アルゴリズムが実行されることにより
暗号化される。このEncryptor 12から出力される暗号
化された暗号文はCBCモードの暗号文であり、切り換
え手段44を介して出力される。なお、電源投入時等に
初期処理が行われた時は、レジスタ13には初期値がセ
ットされる。
【0044】また、端数データが入力されると、切り換
え手段42および切り換え手段43が端子c側に切り換
えられると共に、切り換え手段41および切り換え手段
44が共に端子c側へ切り換えられる。すると、レジス
タ13により遅延された暗号化されたデータが切り換え
手段42を介してDecryptor 14(16)に入力され、
Decryptor 14(16)に供給されているワーク鍵レジ
スタ19から読み出されたワーク鍵を用いて解読アルゴ
リズムが実行されることにより、さらに乱数化される。
このDecryptor 14(16)により生成された乱数は切
り換え手段41を介してEX−OR11(15)に入力
されて、端数の入力データとの排他的論理和が演算さ
れ、暗号化される。このようにして暗号化されたOFB
モードの暗号文は切り換え手段44を介して出力され
る。
【0045】次に、本発明の解読化方法を実行する解読
化アルゴリズムを図3を参照しながら説明する。図3に
示すように、64ビットのデータ鍵Ksに256ビット
のシステム鍵Jを用いて解読アルゴリズムを実行するこ
とにより256ビットのワーク鍵Kwが生成される。こ
のワーク鍵の生成は、暗号化側と同一の解読アルゴリズ
ムの鍵スケジュール処理により行われる。この解読アル
ゴリズムは解読アルゴリズム実行手段D3により実行さ
れる。生成されたワーク鍵Kwは、解読アルゴリズム実
行手段D6に供給されて入力されたCBCモードの64
ビットブロックの暗号文が解読化される。この解読アル
ゴリズムでは、図2に示す暗号アルゴリズム実行手段E
6の暗号アルゴリズムにおける、換字と転置のアルゴリ
ズムが逆の順序で行われるアルゴリズムとなる。
【0046】また、OFBモードで暗号化されている暗
号文は、解読アルゴリズム実行手段D7に供給され、ワ
ーク鍵Kwを用いて生成された乱数を使用することによ
り解読化される。また、解読アルゴリズム実行手段D7
は図2に示す解読アルゴリズム実行手段E7と同じ解読
アルゴリズムを実行するようにされている。なお、前述
したようにワーク鍵Kwを生成する解読アルゴリズム実
行手段D3と、OFBモードの暗号化手段である解読ア
ルゴリズム実行手段D7の解読アルゴリズムは同一のア
ルゴリズムであると共に、暗号文を解読する解読アルゴ
リズム実行手段D6の解読アルゴリズムも同一であり、
解読化処理では、1つの解読アルゴリズム実行手段で3
つの処理を兼用して行うようにしている。そこで、1つ
の解読アルゴリズム実行手段が3つの処理を兼用してい
るデスクランブラ2の構成を図5に示す。なお、図5に
おいては図1に示すDecryptor 21、Decryptor 25お
よびDecryptor 26の3つを兼用しているDecryptor を
21(25,26)として示し、2つのEX−ORを兼
用しているEX−ORを23(24)として示してい
る。
【0047】図5において、64ビット幅のデータ鍵は
データ鍵レジスタ(Data_Key Register )27に予め書
き込まれており、256ビット幅のシステム鍵はシステ
ム鍵レジスタ(System_Key Register )28に予め書き
込まれている。この状態において、まず、切り換え手段
50および切り換え手段51を共に端子a側に切り換え
るようにする。すると、Decryptor 21(25,26)
にはデータ鍵レジスタ27に記憶されている64ビット
幅のデータ鍵と、システム鍵レジスタ28に記憶されて
いる256ビット幅のシステム鍵とが供給され、Decryp
tor 21(25,26)において解読アルゴリズムが実
行されることにより256ビット幅のワーク鍵が生成さ
れる。このワーク鍵はワーク鍵レジスタ(Work_Key Reg
ister )29に書き込まれる。
【0048】このようにしてワーク鍵が生成されてワー
ク鍵レジスタ29に格納されると、CBCモードの時は
切り換え手段50、切り換え手段51および切り換え手
段52が共に端子b側へ切り換えられる。すると、64
ビットブロックの暗号化された受信データは切り換え手
段50を介してDecryptor 21(25,26)に入力さ
れる。Decryptor 21(25,26)は、ワーク鍵レジ
スタ29から読み出されたワーク鍵を用いて解読アルゴ
リズムを実行することにより、受信データが解読され
る。解読されたデータは、EX−OR23(24)に入
力されて、切り換え手段52を介してEX−OR23
(24)に入力されているレジスタ22により1ブロッ
ク遅延された受信データとの排他的論理和が演算され、
CBCモードの暗号文が解読化された平文が得られる。
【0049】また、暗号化された端数データが入力され
ると、切り換え手段50および切り換え手段52が端子
c側に切り換えられる。すると、レジスタ22により1
ブロック遅延された受信データが切り換え手段50を介
してDecryptor 21(25,26)に入力され、Decryp
tor 21(25,26)に供給されているワーク鍵レジ
スタ29から読み出されたワーク鍵を用いて解読アルゴ
リズムが実行されることにより、さらに乱数化される。
このDecryptor 21(25,26)により生成された乱
数はEX−OR23(24)に入力されて、切り換え手
段52を介して入力された暗号化された端数の受信デー
タとの排他的論理和が演算され、OFBモードの暗号文
を解読した平文が得られる。このように、本発明の解読
化方法が実行される本発明の解読化装置であるデスクラ
ンブラ2においては、解読アルゴリズムを実行する1つ
のDecryptor により、3つのDecryptor を兼用すること
ができるため、その構成を大幅に低減することができ
る。
【0050】次に、Encryptor が実行する暗号アルゴリ
ズムと、Decryptor が実行する解読アルゴリズムの詳細
を図6ないし図11を参照して説明する。図6は暗号ア
ルゴリズムを示しており、64ビット幅の入力データ
は、上位32ビットのデータと下位の32ビットのデー
タに分割されて4段の演算段60,61からなる最初の
暗号8段に入力される。この4段の演算段60,61で
は、それぞれ異なる関数の演算が行われる。すなわち、
入力された上位32ビットのデータと下位の32ビット
のデータに、4段の演算段60内の初段において関数π
1の演算が施される。ついで、第2段において初段の出
力に関数π2の演算が施される。この場合、第2段には
32ビット幅のワーク鍵K1が入力され、このワーク鍵
K1を用いて第2段の演算が行われている。
【0051】さらに、第3段において第2段の出力に関
数π3の演算が施される。この場合、第3段には32ビ
ット幅のワーク鍵K2,K3が入力され、このワーク鍵
K2,K3を用いて演算が行われている。続いて、第4
段において第3段の出力に関数π4の演算が施される。
この場合、第4段には32ビット幅のワーク鍵K4が入
力され、このワーク鍵K4を用いて演算が行われてい
る。さらに残る4段の演算を行う演算段61の初段にお
いて、演算段60からの出力に関数π1の演算が施され
る。ついで、第2段において初段の出力に関数π2の演
算が施される。この場合、第2段には32ビット幅のワ
ーク鍵K5が入力され、このワーク鍵K5を用いて演算
が行われている。
【0052】さらに、第3段において第2段の出力に関
数π3の演算が施される。この場合、第3段には32ビ
ット幅のワーク鍵K6,K7が入力され、このワーク鍵
K6,K7を用いて演算が行われている。続いて、第4
段において第3段の出力に関数π4の演算が施される。
この場合、第4段には32ビット幅のワーク鍵K8が入
力され、このワーク鍵K8を用いて演算が行われてい
る。このように256ビットのワーク鍵が32ビット幅
に8分割(鍵K1〜鍵K8)されて各演算段に供給さ
れ、暗号処理の行われた上位32ビット、下位32ビッ
トの合計64ビット幅のデータは、さらに暗号8段62
に入力される。この暗号8段62においては、上述した
暗号8段の演算と同様の演算が施されて、上位32ビッ
ト、下位32ビットの合計64ビット幅のさらにランダ
ム化された出力データが得られる。
【0053】なお図示しているように、暗号8段の繰返
し数は2回に限らず、所望の回数繰り返すことができ
る。この回数を多く繰り返すほど、出力データは高度に
ランダム化されて、暗号強度を高めることができる。な
お、演算段の各段で行われている関数の演算は、一定の
規則に従ってある文字を他の文字に置き換える換字と、
文字の順序を入れ替える転置を行う演算とされている。
【0054】次に、解読アルゴリズムを図7に示すが、
解読アルゴリズムは、前述した暗号アルゴリズムの出力
側からの演算を逆に行うようにしている。すなわち、暗
号8段のうちの最初の4段の演算段63の初段におい
て、上位32ビットと下位32ビットに分割された64
ビット幅の暗号化されている入力データに、32ビット
幅のワーク鍵K8を用いて関数π4の演算を施してい
る。次いで、第2段において、初段の出力データにワー
ク鍵K7,K6を用いて関数π3の演算を施している。
さらに、第3段において、第2段の出力データにワーク
鍵5を用いて関数π2の演算を施している。さらにまた
第4段において、第3段の出力データに関数π1の演算
を施している。
【0055】このような4段の演算が、次の4段の演算
段64においてワーク鍵K4〜K1を用いて同様に行わ
れる。さらに、上記した暗号8段の演算が縦続されてい
る暗号8段65においても同様の処理が実行されて、解
読化された上位32ビット、下位32ビットの計64ビ
ット幅の出力データが得られるようになる。なお、暗号
8段の繰り返し回数は、暗号アルゴリズムにおいて実行
された暗号8段の繰返し回数と同じ回数とされる。
【0056】次に、演算段で行われている演算の詳細を
暗号アルゴリズムの演算段60を例に上げて図8を参照
しながらに詳細に説明する。初段の関数π1の演算で
は、入力された32ビットに分割された上位ビットは、
演算されることなくそのまま出力され、一方、上位ビッ
トと下位ビットのビット毎の排他的論理和が演算されて
下位ビットとして出力される。続く、第2段の関数π2
の演算では、下位32ビットのデータxにワーク鍵K1
が232を法として加算されて、x+K1がまず演算され
る。次いで、x+K1をyとした時に、yを1ビット左
巡回シフトし、その値に232を法として演算されたy−
1を加算してzを得る。次に、zを4ビット左巡回シフ
トし、その値とzとのビット毎の排他的論理和を得る。
この演算結果と、上位32ビットのビット毎の排他的論
理和が演算されて、上位32ビットの演算データが出力
される。この場合、下位32ビットは入力されたデータ
が、演算されることなくそのまま出力される。
【0057】また、第3段の関数π3の演算では、上位
32ビットのデータxにワーク鍵K2が232を法として
加算されて、x+K2がまず演算される。次いで、x+
K2をyとした時に、yを2ビット左巡回シフトし、そ
の値に232を法として演算されたy+1を加算してzを
得る。次に、zを8ビット左巡回シフトし、その値とz
とのビット毎の排他的論理和aを得る。さらに、aにワ
ーク鍵K3が232を法として加算されて、a+K3が演
算される。次いで、a+K3をbとした時に、bを1ビ
ット左巡回シフトし、その値に−bを232を法として加
算してcを得る。次に、aとxのビット毎の論理和と、
cを16ビット左巡回シフトした値とのビット毎の排他
的論理和を演算する。この演算結果と、下位32ビット
のデータとのビット毎の排他的論理和を演算して、演算
された下位32ビットのデータを出力する。なお、上位
32ビットのデータは、演算されることなくそのまま上
位32ビットの出力データとなる。
【0058】さらにまた、第4段の関数π4の演算で
は、下位32ビットのデータxにワーク鍵K4が232
法として加算されて、x+K4がまず演算される。次い
で、x+K4をyとした時に、yを2ビット左巡回シフ
トし、その値に232を法として演算されたy+1を加算
する。この演算結果と、上位32ビットの排他的論理和
が演算されて、演算された上位32ビットのデータが出
力される。この場合、下位32ビットのデータは演算さ
れることなく、そのまま下位32ビットのデータとして
出力される。
【0059】上記演算において、ワーク鍵K1〜K4を
データに加算することにより、文字を他の文字で置き換
える換字処理が行われ、データを巡回シフトさせること
により文字の位置を入れ替える転置が行われている。こ
のように、換字と転置のアルゴリズムを行うことにより
平文がランダム化されて暗号化されることになる。ま
た、解読化する場合には、暗号化と逆の換字と転置のア
ルゴリズムを行うことにより元の平文に解読することが
できる。
【0060】次に、上述した関数の演算を行う構成をさ
らに詳細に説明するが、関数π2の演算例を図9に上げ
て説明するものとする。図9において、第1の32ビッ
ト加算器Add80において、下位32ビットの入力デ
ータxと32ビットのワーク鍵K1とが加算され、加算
データyが出力される。この加算データyは第1左巡回
シフター81において1ビット左巡回シフトされると共
に、第2の32ビット加算器82において、第1左巡回
シフター81の出力と加算される。この加算結果に第3
の32ビット加算器84において−1が加算されて、デ
ータzが演算される。このデータzは第2左巡回シフタ
ー85において4ビット左巡回シフトされると共に、排
他的論理和回路86に供給される。この排他的論理和回
路86には第2左巡回シフター85の出力データ、デー
タz、上位32ビット入力データが入力され、3つのデ
ータのビット毎の排他的論理和が演算される。排他的論
理和回路86の演算結果は、次段に入力される上位32
ビット入力データとなる。また、下位32ビット入力デ
ータは、演算されることなく次段に入力される下位32
ビット入力データとなる。
【0061】次に、64ビット幅のデータ鍵と256ビ
ット幅のシステム鍵から256ビット幅のワーク鍵を生
成する鍵スケジュール処理のアルゴリズムを図10に示
す。鍵スケジュール処理は図10に示すように4段の演
算段66,67が2段と、1段の演算段68が縦続接続
されたアルゴリズムとされている。すなわち、最初の4
段の演算段66の初段において、上位32ビットと下位
32ビットに分割された64ビット幅のデータ鍵に、3
2ビット幅のシステム鍵J4を用いて関数π4の演算が
施される。次いで、第2段において初段の出力データに
32ビット幅のシステム鍵J3,J2を用いて関数π3
の演算が施され、上位32ビット幅の出力がワーク鍵K
1として出力される。次いで、第3段において、第2段
の出力データにシステム鍵J1を用いて関数π2の演算
が施され、下位32ビット幅の出力がワーク鍵K2とし
て出力される。さらに、第4段において、第3段の出力
データに関数π1の演算が施され、上位32ビット幅の
出力がワーク鍵K3として出力される。
【0062】続いて、次の4段の演算段67の初段にお
いて、演算段66の出力データに32ビット幅のシステ
ム鍵J8を用いて関数π4の演算が施され、下位32ビ
ット幅の出力がワーク鍵K4として出力される。次い
で、第2段において初段の出力データに32ビット幅の
システム鍵J7,J6を用いて関数π3の演算が施され
て、上位32ビット幅の出力がワーク鍵K5として出力
される。次いで、第3段において、第2段の出力データ
にシステム鍵J5を用いて関数π2の演算が施され、下
位32ビット幅の出力がワーク鍵K6として出力され
る。さらに、第4段において、第3段の出力データに関
数π1の演算が施されて、上位32ビット幅の出力がワ
ーク鍵K7として出力される。さらに、続く演算段68
において、演算段67の出力データに32ビット幅のシ
ステム鍵J4を用いて関数π4の演算が施され、下位3
2ビット幅の出力がワーク鍵K8として出力される。
【0063】ところで、上述した暗号アルゴリズムを実
行するEncryptor は、暗号アルゴリズムの基本アルゴリ
ズムが前記図6に示すように繰り返されている。そこ
で、図6に示す4段の演算段をEncryptor コアとする
と、図11(a)に示すように、Encryptor コアを循環
させて使用することにより、Encryptor の暗号アルゴリ
ズムを実行することができる。なお、この場合Encrypto
r コアに供給するワーク鍵は、最初はワーク鍵Ks1〜
Ks4を供給し、循環させた2度目はワーク鍵Ks5〜
Ks8を供給するようにする。
【0064】また、上述した解読アルゴリズムを実行す
るDecryptor は、解読アルゴリズムの基本アルゴリズム
が前記図7に示すように繰り返されている。そこで、図
7に示す4段の演算段をDecryptor コアとすると、図1
1(b)に示すように、Decryptor コアを少なくとも4
回循環させて使用することにより、Decryptor の解読ア
ルゴリズムを実行することができる。なお、この場合De
cryptor コアに供給するワーク鍵は、最初はワーク鍵K
s8〜Ks5を供給し、循環させた2度目はワーク鍵K
s4〜Ks1を供給するようにする。さらに、このよう
なDecryptor コアを2回と1/4循環させて使用するこ
とにより、図10に示す鍵スケジュール処理のアルゴリ
ズムを実行することもできる。この場合は、ワーク鍵に
替えてシステム鍵を供給すると共に、データ鍵を入力す
ることはいうまでもない。
【0065】このように、Encryptor コアだけで暗号ア
ルゴリズムを実行することができ、Decryptor コアだけ
で解読アルゴリズムおよび鍵スケジュール処理のアルゴ
リズムを実行することができるようになる。したがっ
て、そのハードウェアの規模を小さくすることができ
る。特に、デスクランブラにおいてはその効果が大き
い。さらに、このような本発明を適用したデスクランブ
ラが放送システムの受信機に搭載されている場合、デス
クランブラを備える受信機は各ユーザが備えることにな
るが、その受信機のコストを削減することができるた
め、放送システムの普及促進を図ることができる。
【0066】以上の説明では、64ビットブロックの平
文を64ビットのデータ鍵、および256ビットのシス
テム鍵を用いて64ビットブロックの暗号文を生成し、
64ビットブロックの暗号文を64ビットのデータ鍵、
および256ビットのシステム鍵を用いて64ビットブ
ロックの平文に解読するものとして説明したが、本発明
はこれらのビット数に限定されるものではなく、任意の
ビット数とすることができる。さらに、本発明は上述し
た転置および換字を繰り返すような暗号化・解読化方式
に限定されるものではなく、他の暗号化・解読化方式に
も適用することができるものである。
【0067】また、本発明はCATV、衛星通信、ネッ
トワーク等に適用することができる。この場合、システ
ム鍵やデータ鍵等を通信データ中で伝送したり、あるい
はプリペイドカードや電話等の手段を用いてユーザが取
得できるようにして、聴取料を支払ったユーザだけが解
読できるようにすることができる。
【0068】
【発明の効果】本発明は以上のように構成されているの
で、解読処理を行うために必要なワーク鍵を解読アルゴ
リズムを実行することにより生成することができる。し
たがって、ワーク鍵を生成する解読アルゴリズムの実行
手段と、暗号文を解読処理する解読アルゴリズムの実行
手段とを兼用することができるようになり、解読化側の
構成を簡略化することができる。
【0069】また、OFBモード時に解読アルゴリズム
を実行することにより生成した乱数を用いて暗号化され
ている場合は、OFBモードで暗号化された暗号文を、
解読アルゴリズムを実行することにより生成された乱数
を用いて解読することができるため、OFBモードにお
ける乱数を生成するための解読アルゴリズムの実行手段
も兼用することができる。したがって、いっそう解読化
側の構成を簡略化することができる。さらに、本発明を
放送システムに応用した場合には、受信設備の構成を簡
略化してコストを低減することができるので、放送シス
テムの普及の促進を図ることができる。
【図面の簡単な説明】
【図1】本発明の暗号化方法および解読化方法を実行す
る本発明の暗号化装置および解読化装置の実施の形態の
構成例を示すブロック図である。
【図2】本発明の暗号化方法を実行する暗号アルゴリズ
ムを示す図である。
【図3】本発明の解読化方法を実行する解読アルゴリズ
ムを示す図である。
【図4】本発明の暗号方法を適用したスクランブラの構
成を示すブロック図である。
【図5】本発明の解読方法を適用したデスクランブラの
構成を示すブロック図である。
【図6】本発明の暗号方法および装置の暗号アルゴリズ
ムを示す図である。
【図7】本発明の解読方法および装置の解読アルゴリズ
ムを示す図である。
【図8】図6に示す暗号アルゴリズムの基本関数の詳細
を示す図である。
【図9】図8に示す基本関数中の関数π2を演算するた
めの詳細な構成を示す図である。
【図10】本発明の鍵スケジュール処理のアルゴリズム
を示す図である。
【図11】Encryptor コアとDecryptor コアの構成を示
す図である。
【図12】従来の暗号化のアルゴリズムを示す図であ
る。
【図13】従来の解読化のアルゴリズムを示す図であ
る。
【図14】CBCモードとOFBモードの暗号化利用モ
ードの構成を示す図である。
【図15】従来の暗号化・解読化方式の構成を示す図で
ある。
【符号の説明】
1 スクランブラ、2 デスクランブラ、11,15,
23,24,86 排他的論理和回路(EX−O
R)、12 Encryptor 、13,22 レジスタ、1
4,16,21,25,26 Decryptor 、17,27
データ鍵レジスタ、18,28 システム鍵レジス
タ、19,29 ワーク鍵レジスタ、30,31,3
2,33,41,42,43,4450,51,52
切り換え手段、60,61,62,63,64,65,
66,67,68 演算段、80,82,8432ビッ
ト加算器、81,85 左巡回シフター
フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H04L 9/18 H04L 9/00 651

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 解読アルゴリズムを実行することによ
    りワーク鍵を生成するワーク鍵生成ステップと、 該ワーク鍵生成ステップで生成されたワーク鍵を用い
    て、平文に所定の暗号アルゴリズムの暗号処理を施すこ
    とにより暗号文を作成する暗号処理ステップと、 を備えていることを特徴とする暗号化方法。
  2. 【請求項2】 暗号処理に使用されたワーク鍵を解読
    アルゴリズムを実行することにより生成するワーク鍵生
    成ステップと、 該ワーク鍵生成ステップで生成されたワーク鍵を用いて
    暗号文に前記解読アルゴリズムの解読処理を施すことに
    より元の平文を得る解読ステップと、 を備えていることを特徴とする解読化方法。
  3. 【請求項3】 暗号化側に、解読アルゴリズムを実行
    することによりワーク鍵を生成する暗号用ワーク鍵生成
    ステップと、 該暗号用ワーク鍵生成ステップで生成されたワーク鍵を
    用いて、平文に所定の暗号アルゴリズムの暗号処理を施
    すことにより暗号文を作成する暗号処理ステップとが備
    えられ、 解読化側に、暗号処理に使用された前記ワーク鍵を前記
    解読アルゴリズムを実行することにより生成する解読用
    ワーク鍵生成ステップと、 該解読用ワーク鍵生成ステップで生成された前記ワーク
    鍵を用いて前記暗号文に前記解読アルゴリズムの解読処
    理を施すことにより前記平文を得る解読処理ステップと
    が備えられていることを特徴とする暗号化/解読化方
    法。
  4. 【請求項4】 鍵情報を用いて解読アルゴリズムを実
    行することによりワーク鍵を生成する鍵スケジュール手
    段と、 該鍵スケジュール手段により生成されたワーク鍵を用い
    て、平文に所定の暗号アルゴリズムの暗号処理を施すこ
    とにより暗号文を作成する暗号処理手段と、 を少なくとも備えていることを特徴とする暗号化装置。
  5. 【請求項5】 暗号処理に使用されたワーク鍵を解読
    アルゴリズムを実行することにより生成する鍵スケジュ
    ール手段と、 該鍵スケジュール手段で生成されたワーク鍵を用いて暗
    号文に前記解読アルゴリズムの解読処理を施すことによ
    り元の平文を得る解読手段と、 を少なくとも備えていることを特徴とする解読化装置。
  6. 【請求項6】 暗号化側に、解読アルゴリズムを実行
    することによりワーク鍵を生成する暗号用鍵スケジュー
    ル手段と、 該暗号用鍵スケジュール手段で生成されたワーク鍵を用
    いて、平文に所定の暗号アルゴリズムの暗号処理を施す
    ことにより暗号文を作成する暗号処理手段とが備えら
    れ、 解読化側に、前記暗号処理手段で使用された前記ワーク
    鍵を前記解読アルゴリズムを実行することにより生成す
    る解読用鍵スケジュール手段と、 該解読用鍵スケジュール手段で生成された前記ワーク鍵
    を用いて前記暗号文に前記解読アルゴリズムの解読処理
    を施すことにより前記平文を得る解読処理手段とが備え
    られていることを特徴とする暗号化/解読化装置。
JP8060328A 1996-02-23 1996-02-23 暗号化/解読化方法および装置 Withdrawn JPH09233066A (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP8060328A JPH09233066A (ja) 1996-02-23 1996-02-23 暗号化/解読化方法および装置
TW086101487A TW382872B (en) 1996-02-23 1997-02-11 Encryption/decryption method and its device
SG9700350A SG83093A1 (en) 1996-02-23 1997-02-17 Encryption/decryption method and encryption/ decryption apparatus
IDP970508A ID16092A (id) 1996-02-23 1997-02-20 Tata cara encripsi dan decripsi serta pesawat encripsi dan decripsi
KR1019970006189A KR970064060A (ko) 1996-02-23 1997-02-21 암호화/해독화 방법 및 장치
CN97104852A CN1168041A (zh) 1996-02-23 1997-02-23 加密和解密方法以及加密和解密装置
US08/806,286 US6504930B2 (en) 1996-02-23 1997-02-25 Encryption and decryption method and apparatus using a work key which is generated by executing a decryption algorithm

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8060328A JPH09233066A (ja) 1996-02-23 1996-02-23 暗号化/解読化方法および装置

Publications (1)

Publication Number Publication Date
JPH09233066A true JPH09233066A (ja) 1997-09-05

Family

ID=13139002

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8060328A Withdrawn JPH09233066A (ja) 1996-02-23 1996-02-23 暗号化/解読化方法および装置

Country Status (7)

Country Link
US (1) US6504930B2 (ja)
JP (1) JPH09233066A (ja)
KR (1) KR970064060A (ja)
CN (1) CN1168041A (ja)
ID (1) ID16092A (ja)
SG (1) SG83093A1 (ja)
TW (1) TW382872B (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100316025B1 (ko) * 1999-06-30 2001-12-12 박종섭 데이터 암호 표준 알고리즘을 이용한 암호 및 복호 장치
JP2006279488A (ja) * 2005-03-29 2006-10-12 Toshiba Information Systems (Japan) Corp 暗号文生成装置、暗号文復号装置、暗号文生成プログラム及び暗号文復号プログラム
JP2008523728A (ja) * 2004-12-09 2008-07-03 インテル コーポレイション 暗号化処理のスピードを向上させるための方法及び装置
JP2009175544A (ja) * 2008-01-25 2009-08-06 Ntt Electornics Corp 暗号化方法および復号方法
US11838402B2 (en) 2019-03-13 2023-12-05 The Research Foundation For The State University Of New York Ultra low power core for lightweight encryption

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7809138B2 (en) * 1999-03-16 2010-10-05 Intertrust Technologies Corporation Methods and apparatus for persistent control and protection of content
KR100331863B1 (ko) * 1998-11-03 2002-05-09 서평원 네트워크암호화장치및방법
US6714926B1 (en) * 1999-02-02 2004-03-30 Amazon.Com, Inc. Use of browser cookies to store structured data
JP3824121B2 (ja) * 1999-04-01 2006-09-20 株式会社日立製作所 暗号データの復号化処理方法および装置
JP2002082732A (ja) * 2000-09-06 2002-03-22 Nec Corp プログラムコードの不正改竄防止システム及びその方法並びにその制御プログラムを記録した記録媒体
KR100525389B1 (ko) * 2001-01-17 2005-11-02 엘지전자 주식회사 실시간 입력 스트림의 암호화/복호화 장치
JPWO2002089397A1 (ja) * 2001-04-24 2004-08-19 株式会社 エヌティーアイ データ伝送方法、データ伝送装置及びデータ送信装置並びにデータ受信装置、ファイル装置
US7318160B2 (en) * 2002-02-01 2008-01-08 Hewlett-Packard Development Company, L.P. Cryptographic key setup in queued cryptographic systems
JP2003333032A (ja) * 2002-05-15 2003-11-21 Oki Electric Ind Co Ltd 暗号処理方法,及び,暗号処理装置
US6925357B2 (en) * 2002-07-25 2005-08-02 Intouch Health, Inc. Medical tele-robotic system
KR100446336B1 (ko) * 2003-05-20 2004-09-01 엔에이치엔(주) 데이터 암호화 방법 및 장치
US7200226B2 (en) * 2003-09-04 2007-04-03 Intel Corporation Cipher block chaining decryption
US7636842B2 (en) 2005-01-10 2009-12-22 Interdigital Technology Corporation System and method for providing variable security level in a wireless communication system
FR2890201A1 (fr) * 2005-08-31 2007-03-02 Proton World Internatinal Nv Protection d'un contenu numerique sur un support physique
US8874477B2 (en) 2005-10-04 2014-10-28 Steven Mark Hoffberg Multifactorial optimization system and method
US7725719B2 (en) 2005-11-08 2010-05-25 International Business Machines Corporation Method and system for generating ciphertext and message authentication codes utilizing shared hardware
JP4972970B2 (ja) * 2006-03-17 2012-07-11 富士通株式会社 ソースプログラム中の関数呼出し異常パターン検出プログラム
IL174784A0 (en) * 2006-04-04 2006-12-31 Nds Ltd Robust cipher design
US8099603B2 (en) * 2006-05-22 2012-01-17 Corestreet, Ltd. Secure ID checking
US8452935B2 (en) 2007-01-19 2013-05-28 Holtek Semiconductor Inc. Read-only memory device with securing function and accessing method thereof
US7630982B2 (en) 2007-02-24 2009-12-08 Trend Micro Incorporated Fast identification of complex strings in a data stream
US20090046848A1 (en) * 2007-08-15 2009-02-19 Lockheed Martin Corporation Encryption management system
US8578175B2 (en) * 2011-02-23 2013-11-05 International Business Machines Corporation Secure object having protected region, integrity tree, and unprotected region
US9298894B2 (en) 2009-06-26 2016-03-29 International Business Machines Corporation Cache structure for a computer system providing support for secure objects
US8954752B2 (en) 2011-02-23 2015-02-10 International Business Machines Corporation Building and distributing secure object software
US8819446B2 (en) 2009-06-26 2014-08-26 International Business Machines Corporation Support for secure objects in a computer system
US9846789B2 (en) 2011-09-06 2017-12-19 International Business Machines Corporation Protecting application programs from malicious software or malware
US9954875B2 (en) 2009-06-26 2018-04-24 International Business Machines Corporation Protecting from unintentional malware download
US9864853B2 (en) 2011-02-23 2018-01-09 International Business Machines Corporation Enhanced security mechanism for authentication of users of a system
US9223965B2 (en) 2013-12-10 2015-12-29 International Business Machines Corporation Secure generation and management of a virtual card on a mobile device
US9235692B2 (en) 2013-12-13 2016-01-12 International Business Machines Corporation Secure application debugging
KR101590351B1 (ko) * 2015-06-16 2016-02-01 동국대학교 산학협력단 분산 네트워크 프로토콜 기반의 데이터 전송 장치 및 그의 데이터 암호화 방법

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4203166A (en) * 1977-12-05 1980-05-13 International Business Machines Corporation Cryptographic file security for multiple domain networks
US4776011A (en) * 1983-10-24 1988-10-04 Sony Corporation Recursive key schedule cryptographic system
US4802217A (en) * 1985-06-07 1989-01-31 Siemens Corporate Research & Support, Inc. Method and apparatus for securing access to a computer facility
JP2760799B2 (ja) 1988-04-28 1998-06-04 株式会社日立製作所 暗号方式
US5111504A (en) * 1990-08-17 1992-05-05 General Instrument Corporation Information processing apparatus with replaceable security element
US5081676A (en) * 1990-10-04 1992-01-14 Chou Wayne W Method and apparatus for protecting multiple copies of computer software from unauthorized use
JP3053106B2 (ja) * 1990-11-02 2000-06-19 株式会社日立製作所 暗号化処理装置、及び復号化処理装置
US5224166A (en) * 1992-08-11 1993-06-29 International Business Machines Corporation System for seamless processing of encrypted and non-encrypted data and instructions
US5323464A (en) * 1992-10-16 1994-06-21 International Business Machines Corporation Commercial data masking
US5633930A (en) * 1994-09-30 1997-05-27 Electronic Payment Services, Inc. Common cryptographic key verification in a transaction network
US5613012A (en) * 1994-11-28 1997-03-18 Smarttouch, Llc. Tokenless identification system for authorization of electronic transactions and electronic transmissions
US5701343A (en) * 1994-12-01 1997-12-23 Nippon Telegraph & Telephone Corporation Method and system for digital information protection
US5784683A (en) * 1995-05-16 1998-07-21 Bell Atlantic Network Services, Inc. Shared use video processing systems for distributing program signals from multiplexed digitized information signals
US5870473A (en) * 1995-12-14 1999-02-09 Cybercash, Inc. Electronic transfer system and method
US5602918A (en) * 1995-12-22 1997-02-11 Virtual Open Network Environment Corp. Application level security system and method

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100316025B1 (ko) * 1999-06-30 2001-12-12 박종섭 데이터 암호 표준 알고리즘을 이용한 암호 및 복호 장치
JP2008523728A (ja) * 2004-12-09 2008-07-03 インテル コーポレイション 暗号化処理のスピードを向上させるための方法及び装置
JP2006279488A (ja) * 2005-03-29 2006-10-12 Toshiba Information Systems (Japan) Corp 暗号文生成装置、暗号文復号装置、暗号文生成プログラム及び暗号文復号プログラム
JP2009175544A (ja) * 2008-01-25 2009-08-06 Ntt Electornics Corp 暗号化方法および復号方法
JP4658150B2 (ja) * 2008-01-25 2011-03-23 Nttエレクトロニクス株式会社 暗号化方法および復号方法
US11838402B2 (en) 2019-03-13 2023-12-05 The Research Foundation For The State University Of New York Ultra low power core for lightweight encryption

Also Published As

Publication number Publication date
ID16092A (id) 1997-09-04
US6504930B2 (en) 2003-01-07
US20010010722A1 (en) 2001-08-02
KR970064060A (ko) 1997-09-12
SG83093A1 (en) 2001-09-18
TW382872B (en) 2000-02-21
CN1168041A (zh) 1997-12-17

Similar Documents

Publication Publication Date Title
JPH09233066A (ja) 暗号化/解読化方法および装置
EP1063811B1 (en) Cryptographic apparatus and method
US8416947B2 (en) Block cipher using multiplication over a finite field of even characteristic
US7945049B2 (en) Stream cipher using multiplication over a finite field of even characteristic
US8358781B2 (en) Nonlinear feedback mode for block ciphers
JP3864675B2 (ja) 共通鍵暗号装置
US7613297B2 (en) Method and apparatus for data encryption
WO2006012363A1 (en) Stream cipher combining system and method
JP2013047822A (ja) メッセージ認証のための暗号化方法
Blazhevski et al. Modes of operation of the AES algorithm
WO2001050676A2 (en) Cryptographic isolator using multiplication
JP3769804B2 (ja) 解読化方法および電子機器
CN114826587A (zh) 一种数据加密方法、解密方法及其装置、设备
US20070183594A1 (en) Data processing apparatus for performing a cryptographic method
JP2003516659A (ja) 1の補数暗号コンバイナ
CN116488795B (zh) 一种gcm-aes处理方法和装置
KR100494560B1 (ko) Rijndael암호를 이용한 블록 데이터 실시간암호복호화 장치 및 방법
Karthigaikumar et al. Partially pipelined VLSI implementation of Blowfish encryption/decryption algorithm
Huang et al. Real-time mode hopping of block cipher algorithms for mobile streaming
JPH09233065A (ja) 暗号化装置及び暗号化方法
JPH09230788A (ja) 暗号化方法および暗号化装置
JP4708914B2 (ja) 解読化方法
JP5293612B2 (ja) 暗号化装置、復号装置、暗号化方法、復号方法およびプログラム
Pathak et al. Towards the Proposal of Mobile Security Encryption Algorithm:“RHINO256”
da Silva Palmeira et al. An Implementation of AES Algorithm in FPGA

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20030506