JP3769804B2 - 解読化方法および電子機器 - Google Patents
解読化方法および電子機器 Download PDFInfo
- Publication number
- JP3769804B2 JP3769804B2 JP03909996A JP3909996A JP3769804B2 JP 3769804 B2 JP3769804 B2 JP 3769804B2 JP 03909996 A JP03909996 A JP 03909996A JP 3909996 A JP3909996 A JP 3909996A JP 3769804 B2 JP3769804 B2 JP 3769804B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- key
- key information
- bits
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
-
- 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/0637—Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- 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)
- Storage Device Security (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
【発明の属する技術分野】
本発明は、暗号化されることによりスクランブルされた送信データを受けて、解読するようにした解読化方法および電子機器に関する。
【0002】
【従来の技術】
通信における情報を秘匿するために、送信情報を暗号化し、暗号化された送信情報を受信して解読することにより、元の情報を得るようにした暗号化・解読化方式が従来から知られている。このような暗号化・解読化方式としては、米国における標準方式であるDES(Data Encryption Standard)等の暗号アルゴリズムが知られている。
【0003】
ところで、暗号アルゴリズムには多種・多様なものがあり、より安全性・高速性に優れた方式が開発されている。この一例として、米国特許第4,982,429号明細書、米国特許第5,103,479号明細書、および特開平1−276189号公報等に記載されている暗号方式(MULTI2方式)が知られている。
また、国際標準化機構(ISO)においてもISO9979/0009として登録された暗号化方式や、ISO/IEC10116として登録された暗号化利用モードがある。
【0004】
上記MULTI2方式の暗号化方式においては、入力データサイズが64ビット、出力データサイズが64ビットとされており、256ビットサイズのシステム鍵と64ビットのデータ鍵から、暗号化を行うために必要な256ビットサイズのワーク鍵が生成されている。さらに、暗号化段数は正の整数段とされている。
このMULTI2方式における暗号化アルゴリズムの概略構成を図17に示す。MULTI2方式は、図17に示すように64ビットのデータ鍵Ksに256ビットのシステム鍵Jを用いて暗号アルゴリズムの演算を施すことにより256ビットのワーク鍵Kwを生成する。この暗号アルゴリズムの演算は暗号アルゴリズム実行手段Cにより実行される。生成されたワーク鍵Kwは、暗号アルゴリズム実行手段Fに供給されて入力された64ビットの平文が暗号化される。なお、暗号アルゴリズム実行手段Cと暗号アルゴリズム実行手段Fとで実行される暗号アルゴリズムは、同一の暗号アルゴリズムである。
【0005】
このような暗号化がMULTI2方式の基本的な暗号化アルゴリズムであるが、これでは予め文字、あるいは単語が出現する頻度の分布を統計処理しておき、入手した暗号化文の文字列パターンの頻度分布とのマッチングを取ることにより、平文が推定されてしまうおそれがある。
そこで、暗号化された64ビットの暗号ブロックと、次に入力される64ビットの入力データとの排他的論理和を演算して暗号文を作成する手法がある。この手法を行って暗号化するモードをCBC(Cipher Block Chaining)モードとよんでいる。前記した暗号アルゴリズム実行手段Fにおいては、このようなCBCモードの暗号アルゴリズムが実行されている。
【0006】
また、例えばパケット通信のように通信を行うデータの単位が予め決められている通信方式があるが、64ビットを1ブロックとするようなブロック暗号化方式では、1ブロックのビット数で割り切れないデータ単位が入力された場合に、データが余ってしまうようになる。そこで、その端数処理をOFB(Output Feedback )モードで処理するようにしている。
このOFBモードでは、データの端数部分が暗号アルゴリズム実行手段Gに供給され、乱数を使用して暗号化される。この乱数は、ワーク鍵Kwを用いて暗号アルゴリズム実行手段Gにより生成されている。これにより、64ビットを1ブロックとする暗号文を得ることができるようになる。なお、CBCモードおよびOFBモードは暗号化利用モードと呼ばれる。
【0007】
また、MULTI2方式における解読化アルゴリズムの概略構成を図18に示す。図18に示すように、64ビットのデータ鍵Ksに256ビットのシステム鍵Jを用いて暗号アルゴリズムの演算を施すことにより256ビットのワーク鍵Kwを生成する。この暗号アルゴリズムの演算は暗号アルゴリズム実行手段cにより実行される。生成されたワーク鍵Kwは、解読アルゴリズム実行手段fに供給されて入力された64ビットの暗号文が解読化される。
なお、OFBモードで暗号化されている暗号文は、暗号アルゴリズム実行手段gに供給され、ワーク鍵Kwを用いて暗号アルゴリズム実行手段gにより生成した乱数を使用することにより解読化される。これにより、1ブロック64ビットの暗号文を解読化して64ビットの平文を得ることができる。また、CBCモードとされている場合は、解読アルゴリズム実行手段fがCBCモードの解読アルゴリズムを実行するようにされる。
【0008】
ここで、暗号化利用モードの説明を図19を参照しながら行うが、図19(a)にCBCモードの暗号化・解読化の概略構成を示し、図19(b)にOFBモードの暗号化・解読化の概略構成を示している。
CBCモードでは、図19(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は排他的論理和の演算を行うことを示している。
【0009】
そして、この暗号文ブロックC(i) は送信され、受信側において受信されることになる。受信された暗号文ブロックC(i) は、解読アルゴリズム実行手段111においてデータ鍵Ksに基づいて生成されたワーク鍵を用いて解読され、排他的論和回路113に供給される。この排他的論理和回路113にはレジスタ(REG)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を解読化することを示している。
【0010】
また、OFBモード時では、i番目の平文ブロックM(i) は排他的論理和回路105に供給される。この排他的論理和回路105には、データ鍵Ksに基づいて生成されたワーク鍵により乱数化された暗号アルゴリズム実行手段104の出力が供給されている。なお、暗号アルゴリズム実行手段104の出力は、レジスタ103により1ブロック遅延されて暗号アルゴリズム実行手段104に戻されている。これにより、排他的論理和回路105からは乱数により暗号化された暗号文ブロックC(i) が出力される。
【0011】
そして、この暗号文ブロックC(i) は送信され、受信側において受信されることになる。受信された暗号文ブロックC(i) は、排他的論和回路114に供給される。この排他的論和回路114には、暗号アルゴリズム実行手段115においてデータ鍵Ksに基づいて生成されたワーク鍵を用いて乱数化された出力が供給されている。この暗号アルゴリズム実行手段115の出力は、レジスタ(REG)112において1ブロック遅延されて暗号アルゴリズム実行手段115に戻されている。この場合、排他的論理和回路114に供給される乱数は、排他的論理和回路105に供給される乱数と等しく、これにより、排他的論理和回路114からi番目の平文ブロックM(i) が得られる。
【0012】
以上説明した暗号化利用モードを有する暗号化・解読化方式の概略構成を図20に示す。
この図において、送信側にはスクランブラ100が備えられており、スクランブラ100により入力データがスクランブルされて送信されている。このスクランブルされた送信データは、空間等の伝送路を伝播されて受信側で受信される。受信側には、デスクランブラ110が備えられており、このデスクランブラ110によりスクランブルされた送信データがデスクランブルされて、元のデータに戻され出力されるようになる。
【0013】
スクランブラ100は、入力された入力データ(平文)を暗号化する暗号アルゴリズム実行手段であるEncryptor 102と、レジスタ103と、排他的論理和回路(EX−OR)101からなるCBCモード暗号化部と、暗号アルゴリズム実行手段であるEncryptor 104と、排他的論理和回路(EX−OR)105からなるOFBモード暗号化部から構成されている。なお、データ鍵とシステム鍵からワーク鍵を生成するEncryptor 106もスクランブラ100内に備えられている。生成されたワーク鍵はEncryptor 102,104に供給される。
ところで、Encryptor 102、Encryptor 104、Encryptor 106は同一構成とされているので、1つのEncryptor により3つのEncryptor を兼用することができる。CBCモード暗号化部およびOFBモード暗号化部の動作は前述したとおりであるので、ここでは省略する。
【0014】
また、デスクランブラ110は、入力された受信データ(暗号文)を解読化する解読アルゴリズム実行手段であるDecryptor 111と、レジスタ112と、排他的論理和回路(EX−OR)113からなるCBCモード解読化部と、暗号アルゴリズム実行手段であるEncryptor 115と、排他的論理和回路(EX−OR)114からなるOFBモード解読化部から構成されている。なお、データ鍵とシステム鍵からワーク鍵を生成するEncryptor 116もデスクランブラ110内に備えられている。生成されたワーク鍵はDecryptor 111と、Encryptor 115に供給される。
なお、Encryptor 115、Encryptor 116は同一構成とされているので、1つのEncryptor により2つのEncryptor を兼用することができる。また、CBCモード解読化部およびOFBモード解読化部の動作は前述したとおりであるので、ここでは省略する。
【0015】
【発明が解決しようとする課題】
ところで、上述したMULTI2方式のような高度な暗号化・解読化方式を、ソフトウェアで実現して使用する場合には、現在の演算手段の演算速度ではリアルタイム処理を行うことができない。すなわち、例えば衛星ディジタルテレビジョン放送等に適用した場合は、画像や音声を途切らせないでリアルタイム再生する必要があることから、受信側における解読化処理は高速な処理の可能なハードウェアで行わなければならないことになる。
しかしながら、受信側においてリアルタイムで全ての解読処理を完了することができるハードウェアは、複雑な処理を行うことから大型なものになるという問題点があった。
【0016】
そこで、本発明は高度な暗号化方式でスクランブルされたデータを、受信側においてリアルタイムで全ての解読処理を小型かつ安価なハードウェアを用いて完了することができる解読化方法を提供することを第1の目的としている。
また、本発明は高度な暗号化方式でスクランブルされたデータを、受信側においてリアルタイムで全ての解読処理を完了することができる解読化手段を備える小型かつ安価な電子機器を提供することを第2の目的としている。
【0017】
【課題を解決するための手段】
上記第1の目的を達成するために、本発明の解読化方法は、一つの種類のデータに対して交互に使用される互いに異なる鍵情報で暗号化されたデータを解読するために択一的に選択されて使用される複数の鍵情報であって、交互に使用される二つの群に分けられた複数の鍵情報を、メモリ手段に書き込む書き込みステップと、前記暗号化されたデータの構成を示す所定ビット数のデータをデータ鍵間接検索手段に供給して前記所定ビット数より少ないmビットのデータに変換し、このmビットのデータと、前記二つの群に分けられた複数の鍵情報のいずれの群の鍵情報が使用されているかを示すnビットのデータとを組み合わせてkビットのデータを生成し、このkビットのデータを鍵アドレスとして、前記メモリ手段から鍵情報を読み出す読み出しステップと(但し、k、mとnは1以上の整数であって、k>m+n。)、該読み出しステップで読み出された鍵情報に基づいて前記入力データを解読する解読ステップとからなり、前記書き込みステップの実行期間と、前記読み出しステップの実行期間とが重なった場合であって、書き込みアドレスと読み出しアドレスとが一致している場合は、前記書き込みステップの実行を禁止するようにしている。
【0018】
また、上記第1の目的を達成するために、本発明の他の解読化方法は、一つの種類のデータに対して交互に使用される互いに異なる鍵情報で暗号化されたデータを解読するために択一的に選択されて使用される複数の鍵情報であって、交互に使用される二つの群に分けられた複数の鍵情報を記憶しているメモリ手段から、前記暗号化されたデータの構成を示す所定ビット数のデータをデータ鍵間接検索手段に供給して前記所定ビット数より少ないmビットのデータに変換し、このmビットのデータと、前記二つの群に分けられた複数の鍵情報のいずれの群の鍵情報が使用されているかを示すnビットのデータとを組み合わせてkビットのデータを生成し、このkビットのデータを鍵アドレスとして、鍵情報を読み出す読み出しステップと(但し、k、mとnは1以上の整数であって、k>m+n。)、該読み出しステップで読み出された鍵情報に基づいて前記入力データを解読する解読ステップとからなり、前記読み出しステップでは、前記指示データにより鍵テーブルを参照することにより、前記メモリ手段から読み出す鍵情報をサーチしており、前記指示データに該当する前記鍵情報を読み出すための鍵アドレスが、前記鍵テーブルに2つ以上存在する場合は、最も少ない鍵アドレスを選択するようにしている。
【0019】
さらにまた、上記第1の目的を達成するために、本発明のさらに他の解読化方法は、一つの種類のデータに対して交互に使用される互いに異なる鍵情報で暗号化されたデータを解読するために択一的に選択されて使用される複数の鍵情報であって、交互に使用される二つの群に分けられた複数の鍵情報を記憶しているメモリ手段から、前記暗号化されたデータの構成を示す所定ビット数のデータをデータ鍵間接検索手段に供給して前記所定ビット数より少ないmビットのデータに変換し、このmビットのデータと、前記二つの群に分けられた複数の鍵情報のいずれの群の鍵情報が使用されているかを示すnビットのデータとを組み合わせてkビットのデータを生成し、このkビットのデータを鍵アドレスとして、鍵情報を読み出す読み出しステップと(但し、k、mとnは1以上の整数であって、k>m+n。)、該読み出しステップで読み出された鍵情報に基づいて前記入力データを解読する解読ステップとからなり、前記読み出しステップでは、前記指示データによりテーブルを参照することにより、前記メモリ手段から読み出す鍵情報の鍵アドレスをサーチしており、前記指示データにより参照される鍵アドレスが前記テーブルに存在していない場合は、鍵アドレスのサーチを行わないようにしている。
【0020】
さらにまた、上記第1の目的を達成するために、本発明のさらに他の解読化方法は、初期設定を行う初期ステップと、一つの種類のデータに対して交互に使用される互いに異なる鍵情報で暗号化されたデータを解読するために択一的に選択されて使用される複数の鍵情報であって、交互に使用される二つの群に分けられた複数の鍵情報を、メモリ手段に書き込む書き込みステップと、前記暗号化されたデータの構成を示す所定ビット数のデータをデータ鍵間接検索手段に供給して前記所定ビット数より少ないmビットのデータに変換し、このmビットのデータと、前記二つの群に分けられた複数の鍵情報のいずれの群の鍵情報が使用されているかを示すnビットのデータとを組み合わせてkビットのデータを生成し、このkビットのデータを鍵アドレスとして、前記メモリ手段から鍵情報を読み出す読み出しステップと(但し、k、mとnは1以上の整数であって、k>m+n。)、該読み出しステップで読み出された鍵情報に基づいて前記入力データを解読する解読ステップとからなり、前記読み出しステップでは、前記指示データにより鍵テーブルを参照することにより、前記メモリ手段から読み出す鍵情報の鍵アドレスをサーチしており、初期化期間内においては、サーチした結果、該当する鍵アドレスがないように、前記初期ステップにおいて初期処理されるようにしている。
【0021】
さらにまた、上記第2の目的を達成する本発明の電子機器は、上記したいずれかの解読化方法を実行する解読手段を少なくとも備えるようにしている。
【0022】
このような本発明の解読化方法によれば、解読処理を行うために必要な鍵情報が格納されているメモリ手段の読み出しおよび書き込み制御を適切に行うことができるため、メモリ制御を容易に行うことのできる解読化方法とすることができる。したがって、受信側においてリアルタイムで全ての解読処理を行うことのできる解読化方法とすることができる。
また、このような解読化方法を実行する解読手段を備える電子機器においては、メモリ制御手段の構成を簡単化することができるので、電子機器を小型かつ安価に提供することができるようになる。
【0023】
【発明の実施の形態】
本発明の解読化方法の実施の形態である解読装置の構成例を示すブロック図を図1に示す。
この図において、解読装置AはCBCモードの解読化部Bと、OFBモードの解読化部Cと、パケットID(PID)テーブルを備えるデータ鍵間接検索器(IDT)16と、入力データの暗号化に使用されたデータ鍵を解読化部B,Cに渡すデュアルポートメモリ(DPMEM)17と、DPMEM17の書き込みアドレスと読み出しアドレスとを比較する比較器(COMP)11から構成されている。
【0024】
解読装置Aの端子1には受信データである暗号文データが入力され、この暗号文データは切換手段3に入力される。この時、CBCモードとされた場合は、切換手段3、および切換手段4が共に端子a側に切り換えられ、入力された暗号文データはCBCモード解読化部Bに供給されて解読化されて出力される。また、OFBモードとされた時は、切換手段3、および切換手段4は共に端子b側に切り換えられて、暗号文データはOFBモード解読化部C側に入力される。そして、入力された暗号文データは、OFBモード解読化部Cにおいて解読化されて平文データが出力される。
CBCモード解読化部B、およびOFBモード解読化部Cにおいて、入力された暗号文データは解読処理されて平文データとされるが、その解読化アルゴリズムは、前記図18に示す解読化アルゴリズムと同様である。なお、この場合解読処理に必要なデータ鍵はDPMEM17から供給される。
【0025】
また、端子1に入力される受信データのフォ−マットは、例えばISO/IEC13818として規定されているトランスポートストリーム(以下、TSと記す。)とされる。TSは188バイトのパケット構造とされており、通常4バイトのヘッダのあとに184バイトのペイロードが続くようにされている。さらに、伝送エラーに対するエラー訂正のためにパリティーを付加することから、16バイトのパリティ用のダミー期間が付加されて、これらの繰返しのストリームとされる。
【0026】
このTSのヘッダにはパケットが映像データで構成されているのか、音声データで構成されているのか、あるいは他のデータで構成されているのかを示すPID情報や、暗号化されているTSなのか否かを示すTSC(Transport Scrambling Control)フラグ等が含まれており、図示しない解析部においてヘッダを解析することにより、これらのパケットの属性が解釈されている。
この時、TSCにより暗号化されていないパケットと解釈された場合は、解読化処理を施すことなくTSを遅延部を通してそのまま出力するようにする。この遅延部の遅延時間は、解読装置Aが解読処理に要する時間と等しくされる。
【0027】
また、1つのPIDに対しては、データ鍵Kse(Ks_even )とデータ鍵Kso(Ks_odd)との2つが割り当てられている。これは、データ鍵が数秒ないし数十秒毎に更新されるため、更新に間に合うようにデータ鍵の書き替えを行う必要があること、および、解読処理時にはデータ鍵Kseとデータ鍵Ksoはその一方しか使用されず、使用されていないデータ鍵を更新可能として、そのデータ鍵を更新することができるからである。すなわち、データ鍵を更新する更新制御を容易に行うためである。
なお、前記解析部は図示しないが、例えばCBCモード解読化部Bに備えられており、CBCモード解読化部Bから15ビットのデータサイズのPID/TSC情報がIDT16に送られている。
【0028】
IDT16においては、受けた13ビットサイズのPID情報を用いてPIDテーブルを参照し、PIDから読出されたアドレス情報と、2ビットサイズのTSC情報とを組み合わせてDPMEM17の読出アドレスRA(データサイズは9ビット)を生成している。生成された読出アドレスRAはAO端子からDPMEM17のRA端子に供給され、この時にリードイネーブル(RE)信号がアクティブ状態になるよう制御して、読出アドレスRAに該当するデータ鍵をDPMEM17から読み出している。読み出されたデータ鍵は、入力されたTSの暗号化時に使用されたデータ鍵と等しく、端子RDから出力されてDecryptor 5に供給される。
Decryptor 5は、供給されたデータ鍵と、システム毎に異なるシステム鍵からワーク鍵を生成して、生成されたワーク鍵に基づいて入力された暗号文データの解読処理を行う。
なお、システム鍵は予めCPU10から解読装置Aに渡されている。
【0029】
また、CPU10は解読化部B,Cで必要とされる更新されるデータ鍵を、解読処理において必要になる前にDPMEM17に書き込むようにされており、書き込む場合には、ライトイネーブル(WE)をアクティブ状態とすると共に、9ビットのデータサイズの書込アドレス(WA)と、8ビットのデータサイズのデータ鍵の書込データ(WD)をDPMEM17に供給している。この場合、CPU10にはROMやRAMが備えられており、これらのメモリに解読装置Aに与えるデータが書き込まれている。
なお、DPMEM17にデータ鍵情報を書き込む時に、書込アドレスと同一の読出アドレスでIDT16がデータ鍵を読み出すようになった場合は、読み出されたデータが不定となることから、この時はDPMEM17への書き込みを禁止している。
【0030】
このために、比較器11とアンドゲート12、オアゲート13,14、インバータ15が設けられている。この動作を説明すると、IDT16から出力される読出アドレスRAと、CPU10から出力される書込アドレスWAとが比較器11のP端子およびQ端子にそれぞれ入力される。そして、P端子の入力データとQ端子の入力データとが一致(P=Q)した時に、比較器11からハイレベル信号が出力される。この時、反転REがローレベルでアクティブ状態になっていると、インバータ15からハイレベルが出力されるので、結局のところアンドゲート12からハイレベルが出力されることになる。このアンドゲート12の出力はオアゲート13に入力されて、オアゲート13の出力がハイレベルとされるので、反転WEは非アクティブ状態となり、DPMEM17への書き込みが禁止されることになる。
【0031】
次に、CPU10から見た解読装置Aのレジスタのメモリ空間を図3に示すが、9ビットのデータサイズのアドレス(HADD)の上位6ビットが”000100”とされた64bit ×1のエリアが、CBCモードの初期値テーブル(CBC Initial value table )に割り当てられている。この初期値テーブルに記憶される初期値は、電源投入時等に実行される初期処理時に、CBCモード解読化部Bに供給されてレジスタ6にセットされる。
また、アドレス(HADD)の上位4ビットが”0010”とされた256bit ×1のエリアが、システム鍵テーブル(SYSTEM_Key table)に割り当てられている。このシステム鍵はシステム毎に異なるものとされるが、1つのシステムでは固定された鍵である。
【0032】
さらに、アドレス(HADD)の上位4ビットが”0100”とされた13bit ×12のエリアが、PIDテーブル(PID value table )に割り当てられている。このPIDテーブルはパケット化されたデータ種類を示す情報であり、1チャンネルでは最大12種類とされデータ種類毎に異なるPIDとされる。
なお、システム鍵テーブルは所定のレジスタに、PIDテーブルの情報はIDT16に、初期処理時にCPU10から書き込まれる。
【0033】
さらにまた、アドレス(HADD)の上位2ビットが”10”とされた64bit ×12のエリアが、データ鍵Kseテーブル(Ks_even value table )に割り当てられ、アドレス(HADD)の上位2ビットが”11”とされた64bit ×12のエリアが、データ鍵Ksoテーブル(Ks_odd value table)に割り当てられている。このデータ鍵Kseテーブル、およびデータ鍵Ksoテーブルの情報はDPMEM17に書き込まれるが、数秒ないし数10秒の所定タイミング毎に、CPU10により更新されている。
【0034】
次に、IDT16の詳細構成の一例を示すブロック図を図2に示す。この図において、41〜52はそれぞれ13ビット幅を有する12個のフリップフロップ(DF0〜DF11)であり、61〜72はそれぞれ13ビット幅を有する12個の比較器(CP0〜CP11)である。また、40はアドレスデコーダ(ADEC)であり、9ビットのデータサイズのアドレス情報が入力されると、12本の出力のうちの1本だけに、DF0〜DF11のいずれかをアクティブにする出力が出される。さらに、39はプライオリティ・エンコーダ(PE)であり、TSC情報と組み合わされるアドレス情報TMP0〜TMP3が出力される。
【0035】
このIDT16において、端子30にはCPU10から出力された8ビットのデータサイズのPID情報が、13ビットのデータサイズに展開されて入力される。また、端子32にはCPU10から出力された9ビットのデータサイズのアドレス情報が入力され、ADEC40においてデコードされる。このデコード出力はストローブ信号としてDF0〜DF11に入力され、DF0〜DF11のうちのいずれか1つのみがラッチ可能とされる。
この時、入力された13ビットのデータサイズのPID情報は、12個のDF0〜DF11に共通に入力されており、ADEC40のデコード出力によりDF0〜DF11が順次1つづつ選択されて、供給されているPID情報がラッチされる。このようにして、DF0〜DF11に最大12種類のPID情報をラッチすることができ、DF0〜DF11によりPIDテーブルが構成されるようになる。
【0036】
また、端子33には13ビットのデータサイズのPID情報が入力され、比較器CP0〜CP11のB入力端子に共通に入力される。このPID情報は、CBCモード解読化部Bにおいて、受信データであるパケットのヘッダから抽出されてIDT16に供給された15ビットのデータサイズのPID/TSC情報のうちの13ビットのデータサイズのPID情報である。
この場合、比較器CP0〜CP11にはDF0〜DF11よりのPID情報がそれぞれA端子に入力されており、端子33より入力されたPID情報と一致するPID情報がA端子に入力されている比較器から一致信号が出力される。従って、PIDテーブルにあるPID情報が端子33から入力されると、CP0〜CP11のいずれか1つから一致信号が出力される。
【0037】
このCP0〜CP11の論理表を図4に示すが、CP0〜CP11のA端子およびB端子にオール”1”が入力されていない時は、一致した時(A=B)に”1”信号が出力される。また、一致してない時は”0”が出力される。
さらに、PE39の論理表を図5に示す。このPE39の論理表において、例えば、CP2から”1”信号が出力された時は、PE39からは”0010”の4ビット(TMP0〜TMP3)のデータが出力される。このPE39では図5に示すように、D0が最も優先された入力とされ、D11が最下位の優先度の入力とされる。
ところで、DF0〜DF11に設定されたPIDテーブルのPID情報と一致しないPID情報が入力されることがあるが、この場合にはPEにオール”0”が入力されることになる。この時、PEのNK出力が”1”となる。なお、NK出力が”1”の時には、後述するデータ鍵の鍵テーブルを読みに行くことが禁止される。
【0038】
また、電源投入時等の初期処理時には端子31のレベルが”0”となり、DF0〜DF11が全てプリセットされることから、DF0〜DF11から”1”が出力される。従って、この場合はCP0〜CP11からオール”0”が出力されることになり、上述のようにデータ鍵の鍵テーブルを読みに行くことが禁止される。
なお、鍵テーブルを読みに行くことが禁止されている時は、鍵テーブルが使用されないので、この鍵テーブルにCPU10からデータ鍵を書き込むことができる。すなわち、データ鍵の初期設定をすることができる。また、端子31はパワーオンリセット端子であり、所定時間後にそのレベルは”1”に復帰する。
【0039】
次に、受信データ中のPID情報とTSC情報により、データ鍵の鍵テーブルをサーチする動作を図6を参照しながら説明する。
図6に示すステップS20にて、受信データのヘッダから13ビットのデータサイズのPID情報として”PID−F”が、2ビットのデータサイズのTSC情報として”10”が入力されたとする。この”10”は、データ鍵Kseでスクランブルされていることを示しているものとする。
次いで、ステップS21にてこのPID情報はCP0〜CP11のA端子に入力されて、DF0〜DF11に格納されているPID情報と比較される。この結果、CP5から”1”信号が出力され、PE39のTEMP3〜TEMP0の出力TMP[3..0]が、”0101”となる。すなわち、”PID−F”がサーチされる。この、PE39の出力である”0101”は、アドレスHADDの第4ビットから第1ビットとされる。
【0040】
次いで、ステップS22にてTSC情報TSC[1..0]の2ビット(”10”)がHADDの第5ビット,第6ビットとされて、6ビットサイズのアドレスHADD[8..3]が生成される。したがって、アドレスHADD[8..3]は”100101”となる。
そして、ステップS23にて、生成された”100101”のアドレスHADD[8..3]により鍵テーブルを参照すると、Ks_even Table から64ビット幅のデータ鍵Kse−Fが得られるようになる。そして、得られたデータ鍵Kse−Fに基づいて入力された暗号文の解読が解読装置Aで実行される。
このように、本発明の解読化方法では間接的にデータ鍵を検索する間接検索方法としているので、PID情報に対応する13ビット幅のテーブルを用意することなく、6ビット幅の鍵テーブルを用意すればよいのでメモリの容量を削減して小型化することができる。
【0041】
なお、このように解読中では鍵テーブルのKs_even Table ,Ks_odd Table の一方しか使用されないため、使用していない鍵テーブルのデータ鍵を更新することができる。これは、前述したようにCPU10が実行するが、CPU10のタイミングと解読装置Aのタイミングとは非同期で動作するので、CPU10は非同期で更新するデータ鍵を書き込みに行く。
このため、鍵テーブルの格納されるデュアルポートメモリ17においては、前述したように書き込みと読み出しが同時に同一アドレスで行われる場合が生じるのである。この時のタイミング例を図9に示すが、図示するタイミングで8クロック幅の反転REが発生した場合には、この8クロック期間においては、前述したようにCPU10からの同一アドレスの書き込みが禁止される。
【0042】
ところで、何らかの原因によりPIDテーブルに同一のPIDが格納されている場合が生じる。例えば、1チャンネル当り最大12種類のPID情報とされるが、12種類のPIDを必要としない場合はPIDテーブルには12種類のPIDを書き込む必要はなく、必要する種類のPIDだけを書き込むことになる。すると、書き込まれていないPIDの欄のデータが偶然PIDと同じデータになることがある。
このような場合には、誤ったデータ鍵を読み出して解読できなくなってしまう恐れがあるので、本発明においては次のようにしてこれを防止している。
【0043】
図7に示すようにPIDテーブルに複数の”PID−F”がある場合は、その内のアドレスHADDが小さい方を優先するようにしている。これは、アドレスHADDの小さい方からPIDテーブルに書き込みに行くので、アドレスHADDの大きい方が誤っている確率が高いからである。
これにより、PID情報として”PID−F”が入力されると、アドレスHADD[8..1]として”01000101”が得られるようになり、前述した処理と同様の処理が行われ、Ks_even Table から64ビット幅のデータ鍵Kse−Fが得られるようになる。
【0044】
また、入力データのヘッダからのPID情報により、PIDテーブルを参照しても該当するPIDがない場合がある。例えば、図8に示すようにPID情報として”PID−F”が入力されても、PIDテーブル中には”PID−F”に該当するPIDがない。
このような場合には、鍵テーブルのKs_even Table ,Ks_odd Table のいずれも読みに行くことなく、データ鍵を読み出さない。この場合は、入力データであるTSはそのまま出力することになる。
【0045】
次に、図1に示す解読装置Aの解読フローを図10に示すが、トランスポートストリーム(TS)が入力されると、ステップS10にてスクランブルされているか否かが判定される。この判定はスクランブルされたことを示すヘッダ中のフラグが立っているか否かを検出することにより判定される。この場合、フラグが立っている場合はスクランブルonと判定されて、ステップS11に進み、ここで所望のフラグ等の書き換えが行われる。次いで、ステップS12にてヘッダからPID情報が抽出されて、鍵テーブルが参照される。この場合の鍵テーブルは、鍵テーブル処理のステップS16にてホストインターフェース処理が行われて、ステップS17にて書き込まれた鍵テーブルが参照される。
なお、ステップS12の処理は、前記図6に示す処理である。
【0046】
以上のステップS10ないしステップS12の処理がヘッダコントロール処理である。なお、ステップS10にてスクランブルoffと判定された場合には、TSはそのまま出力される。
次いで、ステップS13にてCBCモードの解読処理が行われ、ステップS14にて解読処理される暗号文が64ビットの整数倍か否かが判定される。暗号文に端数がありNoと判定された場合は、ステップS15にて端数部分についてOFBモードの解読処理が行われ、解読処理された平文が出力される。また、ステップS14にて64ビットの整数倍と判定された場合は、解読処理された64ビットの平文が出力されるようになる。
【0047】
ところで、図10に示すような解読フローの実行は、前記図18に示す解読化アルゴリズムにより実行されている。図18に示す解読化アルゴリズムは前述したとおりであるのでここでは省略するが、解読化アルゴリズム中の解読アルゴリズムおよび暗号アルゴリズムを実行する構成の詳細を図11ないし図15を参照して説明する。
図11は暗号アルゴリズムを実行する暗号処理の構成を示す。図11において、64ビット幅の入力データは、上位32ビットのデータと下位の32ビットのデータに分割されて最初の暗号8段に入力される。この暗号8段は、関数の演算を行う4段の演算段が2回繰り返された構成とされる。そして、入力された上位32ビットのデータと下位の32ビットのデータに、演算段20の初段において関数π1の演算が施される。ついで、第2段において初段の出力に関数π2の演算が施される。この場合、第2段には32ビット幅のワーク鍵K1が入力され、このワーク鍵K1を用いて第2段の演算が行われている。
【0048】
さらに、第3段において第2段の出力に関数π3の演算が施される。この場合、第3段には32ビット幅のワーク鍵K2,K3が入力され、このワーク鍵K2,K3を用いて演算が行われている。続いて、第4段において第3段の出力に関数π4の演算が施される。この場合、第4段には32ビット幅のワーク鍵K4が入力され、このワーク鍵K4を用いて演算が行われている。
さらに残る4段の演算を行う演算段21において、演算段20からの出力に初段において関数π1の演算が施される。ついで、第2段において初段の出力に関数π2の演算が施される。この場合、第2段には32ビット幅のワーク鍵K5が入力され、このワーク鍵K5を用いて演算が行われている。
【0049】
さらに、第3段において第2段の出力に関数π3の演算が施される。この場合、第3段には32ビット幅のワーク鍵K6,K7が入力され、このワーク鍵K6,K7を用いて演算が行われている。続いて、第4段において第3段の出力に関数π4の演算が施される。この場合、第4段には32ビット幅のワーク鍵K8が入力され、このワーク鍵K8を用いて演算が行われている。
このようにして暗号処理の行われた上位32ビット、下位32ビットの合計64ビット幅のデータは、さらに暗号8段22に入力される。この暗号8段22において、上述した暗号8段の演算と同様の演算が施されて、上位32ビット、下位32ビットの合計64ビット幅のランダム化された出力データが得られる。
【0050】
なお図示しているように、暗号8段の繰返し数は2回に限らず、所望の回数繰り返すことができる。この回数を多く繰り返すほど、出力データは高度にランダム化されて、暗号強度を強いものとすることができる。
なお、演算段の格段で行われている関数の演算は、一定の規則に従ってある文字を他の文字に置き換える換字と、文字の順序を入れ替える転置を行う演算とされている。
【0051】
次に、解読アルゴリズムを実行する解読処理の構成を図12に示すが、前述した暗号処理と異なる点は、暗号処理の構成の出力側から逆に演算を行うようにしている点である。すなわち、暗号8段のうちの最初の4段の演算段23においては、上位32ビットと下位32ビットに分割された64ビット幅の暗号化されている入力データに、32ビット幅のワーク鍵K8を用いて関数π4の演算を施している。次いで、第2段目において、初段の出力データにワーク鍵K7を用いて関数π3の演算を施している。さらに、第3段目において、第2段の出力データにワーク鍵K6,K7を用いて関数π2の演算を施している。さらにまた第3段目において、第2段の出力データにワーク鍵K5を用いて関数π2の演算を施し、第4段目において、第3段の出力データに関数π1の演算を施している。
【0052】
このような4段の演算が、演算24においてワーク鍵K4〜K1を用いて同様に行われる。
さらに、上記した暗号8段の演算が縦続されている暗号8段25においても実行されて、解読化された上位32ビット、下位32ビットの計64ビット幅の出力データが得られるようになる。なお、暗号8段の繰り返し回数は、暗号処理において実行された暗号8段の繰返し回数と同じ回数とされる。
【0053】
次に、演算段で行われている演算の詳細を暗号処理の演算段20を例に上げて図13を参照しながらに詳細に説明する。
初段の関数π1の演算では、入力された32ビットに分割された上位ビットは、演算されることなくそのまま出力され、上位ビットと下位ビットの排他的論理和が演算されて下位ビットとして出力される。
続く、第2段の関数π2の演算では、下位32ビットのデータxにワーク鍵K1が加算されて、x+K1がまず演算される。次いで、x+K1をyとした時に、yを1ビット左巡回シフトし、その値にy−1を加算してzを得る。次に、zを4ビット左巡回シフトし、その値とzとの排他的論理和を得る。この演算結果と、上位32ビットの排他的論理和が演算されて、演算された上位32ビットのデータが出力される。この場合、下位32ビットは入力されたデータが、演算されることなくそのまま出力される。
【0054】
また、第3段の関数π3の演算では、上位32ビットのデータxにワーク鍵K2が加算されて、x+K2がまず演算される。次いで、x+K2をyとした時に、yを2ビット左巡回シフトし、その値にy+1を加算してzを得る。次に、zを8ビット左巡回シフトし、その値とzとの排他的論理和aを得る。
さらに、aにワーク鍵K3が加算されて、a+K3が演算される。次いで、a+K3をbとした時に、bを1ビット左巡回シフトし、その値に−bを加算してcを得る。次に、aとxのビット毎の論理和と、cを16ビット左巡回シフトした値との排他的論理和を演算する。この演算結果と、下位32ビットのデータとの排他的論理和を演算して、演算された下位32ビットのデータを出力する。なお、上位32ビットのデータは、演算されることなくそのまま上位32ビットの出力データとなる。
【0055】
さらにまた、第4段の関数π4の演算では、下位32ビットのデータxにワーク鍵K4が加算されて、x+K4がまず演算される。次いで、x+K4をyとした時に、yを2ビット左巡回シフトし、その値にy+1を加算する。この演算結果と、上位32ビットの排他的論理和が演算されて、演算された上位32ビットのデータが出力される。この場合、下位32ビットのデータは演算されることなく、そのまま下位32ビットのデータとして出力される。
【0056】
上記演算において、ワーク鍵K1〜K4をデータに加算することにより、文字を他の文字で置き換える換字処理が行われ、データを巡回シフトさせることにより文字の位置を入れ替える転置が行われる。このように、換字と転置のアルゴリズムを行うことにより平文が暗号文に暗号化される。
また、解読化する場合には、暗号化と逆の換字と転置のアルゴリズムを行うことにより元の平文に解読することができる。
【0057】
次に、上述した関数の演算を行う構成をさらに詳細に説明するが、関数π2の例を図14に上げて説明するものとする。
図14において、第1加算器Add80において、下位32ビットの入力データxと32ビットのワーク鍵K1とが加算され、加算データyが出力される。この加算データyは第1左巡回シフター81において1ビット左巡回シフトされると共に、第2加算器82において、第1左巡回シフター81の出力と加算される。この加算結果に第3加算器84において−1が加算されて、データzが演算される。このデータzは第2左巡回シフター85において4ビット左巡回シフトされると共に、排他的論理和回路86に供給される。この排他的論理和回路86には第2左巡回シフター85の出力データ、データz、上位32ビット入力データが入力され、3つのデータの排他的論理和が演算される。
この演算結果は、次段に入力される上位32ビット入力データとなる。また、下位32ビット入力データは、演算されることなく次段に入力される下位32ビット入力データとなる。
【0058】
次に、64ビット幅のデータ鍵と256ビット幅のシステム鍵から256ビット幅のワーク鍵を生成する鍵スケジュール処理の構成を図15に示す。
鍵スケジュール処理は図15に示すように4段の演算段26,27が2段と、1段の演算段28が1段縦続接続された構成とされている。また、4段の演算段26,27においては、初段において関数π1の演算が行われ、2段目において関数π2の演算が行われ、3段目において関数π3の演算が行われ、4段目において関数π4の演算が行われている。
【0059】
このような演算アルゴリズムは、前述した暗号処理のアルゴリズムと同じであるのでその説明は省略するが、鍵スケジュール処理においては、入力データが64ビットのデータ鍵とされ、それぞれ32ビットのシステム鍵J1〜J8を用いて関数π1ないし関数π4の演算が行われて、それぞれ32ビットの8つのワーク鍵K1〜K8が生成されている。ただし、全体で9段の演算を行っており、最終段において関数π1の演算を行う点で、前述した暗号処理のアルゴリズムと相違している。
【0060】
なお、演算段26の関数π2演算後の上位32ビット出力データがワーク鍵K1として出力され、関数π3演算後の下位32ビット出力データがワーク鍵K2として出力され、関数π4演算後の上位32ビット出力データがワーク鍵K3として出力されている。
さらに、演算段27の関数π1演算後の下位32ビット出力データがワーク鍵K4として出力され、関数π2演算後の上位32ビット出力データがワーク鍵K5として出力され、関数π3演算後の上位32ビット出力データがワーク鍵K6として出力され、関数π4演算後の上位32ビット出力データがワーク鍵K7として出力され、最終段28の関数π1演算後の下位32ビット出力データがワーク鍵K8として出力されている。
【0061】
上述した、図11に示す暗号処理と図13に示す鍵スケジュール処理を参照すると、4段の演算段の構成、すなわち演算アルゴリズムは等しくされており、この4段の演算段の演算を繰り返し行うことにより、暗号処理あるいは鍵スケジュール処理を実行することができる。このことから、演算コアを図16(a)に示すように、関数π1の演算段、関数π2の演算段、関数π3の演算段、関数π4の演算段を縦続接続した構成とすれば、演算コアを繰返し実行することで、暗号処理あるいは鍵スケジュール処理を実行することができる。
なお、この演算コアは、図20に示すデータ鍵とシステム鍵からワーク鍵を生成すると共に、CBCモードおよびOFBモードで暗号処理を行っているEncryptor に相当し、Encryptor コアとされる。この場合、Encryptor コアにはデータ鍵Ks1〜Ks4とデータ鍵Ks5〜Ks8とが時分割で供給される。
【0062】
また、図12を参照すると、4段の演算段の構成、すなわち演算アルゴリズムは等しくされており、この4段の演算段の演算を繰り返し行うことにより、解読処理を実行することができる。このことから、解読演算コアを図16(b)に示すように、関数π4の演算段、関数π3の演算段、関数π2の演算段、関数π1の演算段を縦続接続した構成とすれば、解読演算コアを繰返し実行することで、解読処理を実行することができる。
なお、この解読演算コアは、図20に示すCBCモードおよびOFBモードの解読処理を行っているDecryptor に相当し、Decryptor コアとされる。この場合、Decryptor コアにはデータ鍵Ks8〜Ks5とデータ鍵Ks4〜Ks1とが時分割で供給される。
このように、Encryptor コアを繰返し実行することにより暗号処理および鍵スケジュールのアルゴリズムを実行することができ、Decryptor コアを繰返し実行することにより解読アルゴリズムを実行することができる。
【0063】
以上、本発明の解読化方法を実行する解読装置の説明をしたが、本発明の電子機器は、このような解読装置を少なくとも備えているチューナーやテレビジョン装置等である。
また、以上の説明では64ビットブロックの暗号文を64ビットのデータ鍵、および256ビットのシステム鍵を用いて64ビットブロックの平文を生成するものとして説明したが、本発明がこれらの数値に限定されるものではなく、任意の数値とすることができる。
さらに、本発明は上述した転置および換字を繰り返すような暗号化・解読化方式に限定されるものではなく、他の暗号化・解読化方式にも適用することができる。
【0064】
【発明の効果】
本発明は以上のように構成されているので、解読処理を行うための鍵情報が格納されているメモリ手段の読み出しおよび書き込み制御を適切に行うことができ、メモリ制御を容易に行うことのできる解読化方法とすることができる。したがって、受信側においてリアルタイムで全ての解読処理を実行することのできる解読化方法とすることができる。
また、このような解読化方法を実行する解読手段を備える電子機器におけるメモリ制御手段の構成を小さくすることができるので、電子機器を小型かつ安価に提供することができるようになる。
【図面の簡単な説明】
【図1】本発明の解読化方法の実施の形態である解読装置の構成例を示すブロック図である。
【図2】図1に示す解読装置におけるIDTの構成を示すブロック図である。
【図3】図1に示すCPUから見た解読装置におけるレジスタのメモリ空間を示す図表である。
【図4】図2に示すIDTの比較器CP0〜CP11の論理表を示す図表である。
【図5】図2に示すIDTのPEの論理表を示す図表である。
【図6】図1に示す解読装置において、入力データのヘッダ中の情報から間接検索方法によりデータ鍵をサーチする方法を説明するための図である。
【図7】PIDテーブル中にPIDが重複している場合の動作を説明するための図である。
【図8】PIDテーブル中に該当するPIDが存在しない場合の動作を説明するための図である。
【図9】図1に示す解読装置におけるDPMEMのリードタイミングの例を示す図である。
【図10】図1に示す解読装置の解読フローを示すフローチャートである。
【図11】暗号処理の構成を示す図である。
【図12】解読処理の構成を示す図である。
【図13】暗号処理における基本関数の詳細を示す図である。
【図14】基本関数中の関数π2を演算するための詳細な構成を示す図である。
【図15】鍵スケジュール処理の構成を示す図である。
【図16】 Encryptor コアとDecryptor コアの構成を示す図である。
【図17】従来の暗号化のアルゴリズムを示す図である。
【図18】従来の解読化のアルゴリズムを示す図である。
【図19】CBCモードとOFBモードの暗号化利用モードの構成を示す図である。
【図20】従来の暗号化・解読化方式の構成を示す図である。
【符号の説明】
1 受信データ、2 出力データ、3,4 切り換え手段、5 Decryptor 、6レジスタ、7,9,86 排他的論理和回路、8 Encryptor 、10 CPU、11 比較器、12 アンドゲート、13,14 オアゲート、15 インバータ、16 IDT、17 DPMEM、20〜28 演算段、39 PE、40 ADEC、41〜52 フリップフロップ、61〜72 比較器、80,82,84 加算器、81,85 左巡回シフター
Claims (8)
- 一つの種類のデータに対して交互に使用される互いに異なる鍵情報で暗号化されたデータを解読するために択一的に選択されて使用される複数の鍵情報であって、交互に使用される二つの群に分けられた複数の鍵情報を、メモリ手段に書き込む書き込みステップと、
前記暗号化されたデータの構成を示す所定ビット数のデータをデータ鍵間接検索手段に供給して前記所定ビット数より少ないmビットのデータに変換し、このmビットのデータと、前記二つの群に分けられた複数の鍵情報のいずれの群の鍵情報が使用されているかを示すnビットのデータとを組み合わせてkビットのデータを生成し、このkビットのデータを鍵アドレスとして、前記メモリ手段から鍵情報を読み出す読み出しステップと(但し、k、mとnは1以上の整数であって、k>m+n。)、
該読み出しステップで読み出された鍵情報に基づいて前記入力データを解読する解読ステップとからなり、
前記書き込みステップの実行期間と、前記読み出しステップの実行期間とが重なった場合であって、書き込みアドレスと読み出しアドレスとが一致している場合は、前記書き込みステップの実行を禁止するようにしたことを特徴とする解読化方法。 - 一つの種類のデータに対して交互に使用される互いに異なる鍵情報で暗号化されたデータを解読するために択一的に選択されて使用される複数の鍵情報であって、交互に使用される二つの群に分けられた複数の鍵情報を記憶しているメモリ手段から、前記暗号化されたデータの構成を示す所定ビット数のデータをデータ鍵間接検索手段に供給して前記所定ビット数より少ないmビットのデータに変換し、このmビットのデータと、前記二つの群に分けられた複数の鍵情報のいずれの群の鍵情報が使用されているかを示すnビットのデータとを組み合わせてkビットのデータを生成し、このkビットのデータを鍵アドレスとして、鍵情報を読み出す読み出しステップと(但し、k、mとnは1以上の整数であって、k>m+n。)、
該読み出しステップで読み出された鍵情報に基づいて前記入力データを解読する解読ステップとからなり、
前記読み出しステップでは、前記指示データにより鍵テーブルを参照することにより、前記メモリ手段から読み出す鍵情報をサーチしており、前記指示データに該当する前記鍵情報を読み出すための鍵アドレスが、前記鍵テーブルに2つ以上存在する場合は、最も少ない鍵アドレスを選択することを特徴とする解読化方法。 - 一つの種類のデータに対して交互に使用される互いに異なる鍵情報で暗号化されたデータを解読するために択一的に選択されて使用される複数の鍵情報であって、交互に使用される二つの群に分けられた複数の鍵情報を記憶しているメモリ手段から、前記暗号化されたデータの構成を示す所定ビット数のデータをデータ鍵間接検索手段に供給して前記所定ビット数より少ないmビットのデータに変換し、このmビットのデータと、前記二つの群に分けられた複数の鍵情報のいずれの群の鍵情報が使用されているかを示すnビットのデータとを組み合わせてkビットのデータを生成し、このkビットのデータを鍵アドレスとして、鍵情報を読み出す読み出しステップと(但し、k、mとnは1以上の整数であって、k>m+n。)、
該読み出しステップで読み出された鍵情報に基づいて前記入力データを解読する解読ステップとからなり、
前記読み出しステップでは、前記指示データによりテーブルを参照することにより、前記メモリ手段から読み出す鍵情報の鍵アドレスをサーチしており、前記指示データにより参照される鍵アドレスが前記テーブルに存在していない場合は、鍵アドレスのサーチを行わないようにしたことを特徴とする解読化方法。 - 初期設定を行う初期ステップと、
一つの種類のデータに対して交互に使用される互いに異なる鍵情報で暗号化されたデータを解読するために択一的に選択されて使用される複数の鍵情報であって、交互に使用される二つの群に分けられた複数の鍵情報を、メモリ手段に書き込む書き込みステップと、
前記暗号化されたデータの構成を示す所定ビット数のデータをデータ鍵間接検索手段に供給して前記所定ビット数より少ないmビットのデータに変換し、このmビットのデータと、前記二つの群に分けられた複数の鍵情報のいずれの群の鍵情報が使用されているかを示すnビットのデータとを組み合わせてkビットのデータを生成し、このkビットのデータを鍵アドレスとして、前記メモリ手段から鍵情報を読み出す読み出しステップと(但し、k、mとnは1以上の整数であって、k>m+n。)、
該読み出しステップで読み出された鍵情報に基づいて前記入力データを解読する解読ステップとからなり、
前記読み出しステップでは、前記指示データにより鍵テーブルを参照することにより、前記メモリ手段から読み出す鍵情報の鍵アドレスをサーチしており、初期化期間内においては、サーチした結果、該当する鍵アドレスがないように、前記初期ステップにおいて初期処理されることを特徴とする解読化方法。 - メモリ手段に一つの種類のデータに対して交互に使用される互いに異なる鍵情報で暗号化されたデータを解読するために択一的に選択されて使用される複数の鍵情報であって、交互に使用される二つの群に分けられた複数の鍵情報を書き込む書き込み手段と、
前記暗号化されたデータの構成を示す所定ビット数のデータをデータ鍵間接検索手段に供給して前記所定ビット数より少ないmビットのデータに変換し、このmビットのデータと、前記二つの群に分けられた複数の鍵情報のいずれの群の鍵情報が使用されているかを示すnビットのデータとを組み合わせてkビットのデータを生成し、このkビットのデータを鍵アドレスとして、鍵情報を(但し、k、mとnは1以上の整数であって、k>m+n。)、前記メモリ手段から読み出す読み出し手段と、
該読み出し手段で読み出された鍵情報に基づいて前記入力データを解読する解読手段とからなり、
前記書き込み手段の実行期間と、前記読み出し手段の実行期間とが重なった場合であって、書き込みアドレスと読み出しアドレスとが一致している場合は、前記書き込み手段の実行を禁止するようにした前記解読手段を少なくとも備えている電子機器。 - 一つの種類のデータに対して交互に使用される互いに異なる鍵情報で暗号化されたデータを解読するために択一的に選択されて使用される複数の鍵情報であって、交互に使用される二つの群に分けられた複数の鍵情報を記憶しているメモリ手段から、前記暗号化されたデータの構成を示す所定ビット数のデータをデータ鍵間接検索手段に供給して前記所定ビット数より少ないmビットのデータに変換し、このmビットのデータと、前記二つの群に分けられた複数の鍵情報のいずれの群の鍵情報が使用されているかを示すnビットのデータとを組み合わせてkビットのデータを生成し、このkビットのデータを鍵アドレスとして、鍵情報(但し、k、mとnは1以上の整数であって、k>m+n。)を読み出す読み出し手段と、
該読み出し手段で読み出された鍵情報に基づいて前記入力データを解読する解読手段とからなり、
前記読み出し手段では、前記指示データにより鍵テーブルを参照することにより、前記メモリ手段から読み出す鍵情報をサーチしており、前記指示データに該当する前記鍵情報を読み出すための鍵アドレスが、前記鍵テーブルに2つ以上存在する場合は、最も少ない鍵アドレスを選択する前記解読手段を少なくとも備えている電子機器。 - 一つの種類のデータに対して交互に使用される互いに異なる鍵情報で暗号化されたデータを解読するために択一的に選択されて使用される複数の鍵情報であって、交互に使用される二つの群に分けられた複数の鍵情報を記憶しているメモリ手段から、前記暗号化されたデータの構成を示す所定ビット数のデータをデータ鍵間接検索手段に供給して前記所定ビット数より少ないmビットのデータに変換し、このmビットのデータと、前記二つの群に分けられた複数の鍵情報のいずれの群の鍵情報が使用されているかを示すnビットのデータとを組み合わせてkビットのデータを生成し、このkビットのデータを鍵アドレスとして、鍵情報(但し、k、mとnは1以上の整数であって、k>m+n。)を読み出す読み出し手段と、
該読み出し手段で読み出された鍵情報に基づいて前記入力データを解読する解読手段とからなり、
前記読み出し手段では、前記指示データによりテーブルを参照することにより、前記メモリ手段から読み出す鍵情報の鍵アドレスをサーチしており、前記指示データにより参照される鍵アドレスが前記テーブルに存在していない場合は、鍵アドレスのサーチを行わないようにした前記解読手段を少なくとも備えている電子機器。 - 初期設定を行う初期設定手段と、
メモリ手段に一つの種類のデータに対して交互に使用される互いに異なる鍵情報で暗号化されたデータを解読するために択一的に選択されて使用される複数の鍵情報であって、交互に使用される二つの群に分けられた複数の鍵情報を書き込む書き込み手段と、
前記メモリ手段から、前記暗号化されたデータの構成を示す所定ビット数のデータをデータ鍵間接検索手段に供給して前記所定ビット数より少ないmビットのデータに変換し、このmビットのデータと、前記二つの群に分けられた複数の鍵情報のいずれの群の鍵情報が使用されているかを示すnビットのデータとを組み合わせてkビットのデータを生成し、このkビットのデータを鍵アドレスとして、鍵情報(但し、k、mとnは1以上の整数であって、k>m+n。)を読み出す読み出し手段と、
該読み出し手段で読み出された鍵情報に基づいて前記入力データを解読する解読手段とからなり、
前記読み出し手段では、前記指示データにより鍵テーブルを参照することにより、前記メモリ手段から読み出す鍵情報の鍵アドレスをサーチしており、初期化期間内においては、サーチした結果、該当する鍵アドレスがないように、前記初期設定手段において初期処理される前記解読手段を少なくとも備えている電子機器。
Priority Applications (7)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP03909996A JP3769804B2 (ja) | 1996-02-02 | 1996-02-02 | 解読化方法および電子機器 |
| SG9700153A SG87756A1 (en) | 1996-02-02 | 1997-01-23 | Method for decryption & apparatus using the same |
| TW086100871A TW336305B (en) | 1996-02-02 | 1997-01-27 | Decoding method and the electronic device |
| US08/791,227 US6014442A (en) | 1996-02-02 | 1997-01-30 | Decrypting method and electronic device |
| KR1019970003379A KR100458339B1 (ko) | 1996-02-02 | 1997-01-31 | 해독화방법및전자기기 |
| CN97101287A CN1108040C (zh) | 1996-02-02 | 1997-02-02 | 解密方法及电子装置 |
| IDP970330A ID15875A (id) | 1996-02-02 | 1997-02-03 | Metode penterjemahan tulisan rahasia dan peralatan elektronik |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP03909996A JP3769804B2 (ja) | 1996-02-02 | 1996-02-02 | 解読化方法および電子機器 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2005235212A Division JP4708914B2 (ja) | 2005-08-15 | 2005-08-15 | 解読化方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH09212090A JPH09212090A (ja) | 1997-08-15 |
| JP3769804B2 true JP3769804B2 (ja) | 2006-04-26 |
Family
ID=12543639
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP03909996A Expired - Fee Related JP3769804B2 (ja) | 1996-02-02 | 1996-02-02 | 解読化方法および電子機器 |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US6014442A (ja) |
| JP (1) | JP3769804B2 (ja) |
| KR (1) | KR100458339B1 (ja) |
| CN (1) | CN1108040C (ja) |
| ID (1) | ID15875A (ja) |
| SG (1) | SG87756A1 (ja) |
| TW (1) | TW336305B (ja) |
Families Citing this family (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4273535B2 (ja) | 1998-05-12 | 2009-06-03 | ソニー株式会社 | データ伝送制御方法、データ伝送システム、データ受信装置及びデータ送信装置 |
| JP3816689B2 (ja) * | 1999-03-31 | 2006-08-30 | 株式会社東芝 | 情報配信装置、情報受信装置及び通信方法 |
| DE19935286A1 (de) * | 1999-07-27 | 2001-02-01 | Deutsche Telekom Ag | Verfahren zur sicheren verteilten Generierung eines Chiffrierschlüssels |
| KR100605825B1 (ko) * | 1999-09-14 | 2006-07-31 | 삼성전자주식회사 | 하드 디스크 드라이브를 구비하는 방송 수신 시스템의 복사 방지장치 및 방법 |
| US7421411B2 (en) * | 2001-07-06 | 2008-09-02 | Nokia Corporation | Digital rights management in a mobile communications environment |
| WO2003019899A2 (fr) | 2001-08-24 | 2003-03-06 | Thomson Licensing S.A. | Reseau numerique local, procedes d'installation de nouveaux dispositifs et procedes de diffusion et de reception de donnees dans un tel reseau |
| DE10161769A1 (de) * | 2001-12-15 | 2003-07-03 | Bosch Gmbh Robert | Verfahren und Vorrichtung zur Bereitstellung von Schlüsselfeldern für ein Ver- bzw. Entschlüsselungsmodul zur Echtzeitverschlüsselung von Daten, insbesondere multimedialer Daten |
| JP2005527853A (ja) * | 2002-05-23 | 2005-09-15 | アトメル・コーポレイション | 高度暗号化規格(aes)のハードウェア暗号法エンジン |
| JP2007181198A (ja) * | 2006-12-04 | 2007-07-12 | Sony Corp | データ伝送制御方法 |
| JP5100497B2 (ja) * | 2008-05-14 | 2012-12-19 | 三菱電機株式会社 | 復号装置 |
| US8958550B2 (en) * | 2011-09-13 | 2015-02-17 | Combined Conditional Access Development & Support. LLC (CCAD) | Encryption operation with real data rounds, dummy data rounds, and delay periods |
| 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 |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0193537B1 (en) * | 1984-08-17 | 1992-04-15 | Computerized Security Systems Incorporated | Microcomputer controlled locking system |
| JPH0685517B2 (ja) * | 1985-06-28 | 1994-10-26 | ソニー株式会社 | 情報サ−ビスシステム |
| JPS6313639A (ja) * | 1986-07-05 | 1988-01-20 | Sanden Corp | ピストンリングの加工方法 |
| JP2760799B2 (ja) * | 1988-04-28 | 1998-06-04 | 株式会社日立製作所 | 暗号方式 |
| US5237611A (en) * | 1992-07-23 | 1993-08-17 | Crest Industries, Inc. | Encryption/decryption apparatus with non-accessible table of keys |
| US5661799A (en) * | 1994-02-18 | 1997-08-26 | Infosafe Systems, Inc. | Apparatus and storage medium for decrypting information |
| US5481610A (en) * | 1994-02-28 | 1996-01-02 | Ericsson Inc. | Digital radio transceiver with encrypted key storage |
| US5509071A (en) * | 1994-04-01 | 1996-04-16 | Microelectronics And Computer Technology Corporation | Electronic proof of receipt |
| US5539828A (en) * | 1994-05-31 | 1996-07-23 | Intel Corporation | Apparatus and method for providing secured communications |
| US5692049A (en) * | 1995-02-13 | 1997-11-25 | Eta Technologies Corporation | Personal access management system |
| US5812666A (en) * | 1995-03-31 | 1998-09-22 | Pitney Bowes Inc. | Cryptographic key management and validation system |
-
1996
- 1996-02-02 JP JP03909996A patent/JP3769804B2/ja not_active Expired - Fee Related
-
1997
- 1997-01-23 SG SG9700153A patent/SG87756A1/en unknown
- 1997-01-27 TW TW086100871A patent/TW336305B/zh not_active IP Right Cessation
- 1997-01-30 US US08/791,227 patent/US6014442A/en not_active Expired - Lifetime
- 1997-01-31 KR KR1019970003379A patent/KR100458339B1/ko not_active Expired - Fee Related
- 1997-02-02 CN CN97101287A patent/CN1108040C/zh not_active Expired - Fee Related
- 1997-02-03 ID IDP970330A patent/ID15875A/id unknown
Also Published As
| Publication number | Publication date |
|---|---|
| CN1167304A (zh) | 1997-12-10 |
| KR970063005A (ko) | 1997-09-12 |
| JPH09212090A (ja) | 1997-08-15 |
| KR100458339B1 (ko) | 2005-04-06 |
| ID15875A (id) | 1997-08-14 |
| SG87756A1 (en) | 2002-04-16 |
| CN1108040C (zh) | 2003-05-07 |
| US6014442A (en) | 2000-01-11 |
| TW336305B (en) | 1998-07-11 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3901909B2 (ja) | 暗号化装置およびプログラムを記録した記録媒体 | |
| US10256972B2 (en) | Flexible architecture and instruction for advanced encryption standard (AES) | |
| US7864950B2 (en) | Block encryption device using auxiliary conversion | |
| US8416947B2 (en) | Block cipher using multiplication over a finite field of even characteristic | |
| KR100362458B1 (ko) | 암호화 처리장치, 암호화 처리방법 및 보안성을 손상시키지 않고 고속으로 암호화 처리를 실현하는 암호화 처리 프로그램을 기록하는 기록매체 | |
| US8913740B2 (en) | Method and apparatus for generating an Advanced Encryption Standard (AES) key schedule | |
| JP2000162965A (ja) | 暗復号装置及び記憶媒体 | |
| JPH09233066A (ja) | 暗号化/解読化方法および装置 | |
| JP4025722B2 (ja) | データ暗号化のための方法および装置 | |
| JP3769804B2 (ja) | 解読化方法および電子機器 | |
| US6931127B2 (en) | Encryption device using data encryption standard algorithm | |
| KR100930036B1 (ko) | 암호화된 프레임의 다음 패킷 내의 중복된 스트림 암호 정보 | |
| Blaze et al. | The MacGuffin block cipher algorithm | |
| JP2004157535A (ja) | データ暗号化方法 | |
| JP4708914B2 (ja) | 解読化方法 | |
| US12463794B2 (en) | High-speed circuit combining AES and SM4 encryption and decryption | |
| US20070183594A1 (en) | Data processing apparatus for performing a cryptographic method | |
| US7583800B2 (en) | Encryption apparatus and method in a wireless communications system | |
| JP2005027358A (ja) | 共通鍵暗号方法及び装置 | |
| KR100965874B1 (ko) | Ckc 암호화/복호화 장치 및 방법 | |
| JP2002297031A (ja) | 復号化方法/装置とこの方法/装置を用いたデジタル放送受信方法/装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20041118 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041207 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050207 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050614 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20050714 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050815 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20050906 |
|
| 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: 20060117 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060130 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100217 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100217 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110217 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120217 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130217 Year of fee payment: 7 |
|
| LAPS | Cancellation because of no payment of annual fees |