JP2000013369A - Encryption circuit - Google Patents
Encryption circuitInfo
- Publication number
- JP2000013369A JP2000013369A JP10171287A JP17128798A JP2000013369A JP 2000013369 A JP2000013369 A JP 2000013369A JP 10171287 A JP10171287 A JP 10171287A JP 17128798 A JP17128798 A JP 17128798A JP 2000013369 A JP2000013369 A JP 2000013369A
- Authority
- JP
- Japan
- Prior art keywords
- data
- block cipher
- unit
- memory
- circuit
- 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.)
- Pending
Links
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は主にブロック暗号を
実現する暗号化回路に関するものである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an encryption circuit for realizing a block cipher.
【0002】[0002]
【従来の技術】図3は、従来のブロック暗号及びCCB
C(Converted-Cipher Block Chaining)方式の回路構成
を示すブロック図である。図3において、図3(1)は
ブロック暗号回路の基本単位1を示し、この基本単位1
は暗号方式に応じて様々な中身を持つブロック暗号ファ
ンクション部3と、排他的論理和回路2とで構成され
る。入力される平文は64bitのデータ幅を持つ。ま
ず、ブロック暗号回路の基本単位1の動作を説明する
と、基本単位1の回路では入力データの上位32bitと
下位32bitとに分け、上位32bitにブロック暗号ファ
ンクション部3により処理を施し、その後、排他的論理
和回路2で下位32bitのデータとの和をとり、そして
和をとったデータを次のデータの上位bitとし、入力デ
ータの上位32bitを次のデータの下位bitとする。FIG. 3 shows a conventional block cipher and CCB.
It is a block diagram which shows the circuit structure of C (Converted-Cipher Block Chaining) system. In FIG. 3, FIG. 3A shows a basic unit 1 of the block cipher circuit.
Is composed of a block cipher function unit 3 having various contents according to the encryption method, and an exclusive OR circuit 2. The input plain text has a data width of 64 bits. First, the operation of the basic unit 1 of the block cipher circuit will be described. In the circuit of the basic unit 1, the input data is divided into upper 32 bits and lower 32 bits, and the upper 32 bits are processed by the block cipher function unit 3 and then exclusive. The logical sum circuit 2 calculates the sum with the lower 32 bits of data, sets the sum data as the upper bits of the next data, and sets the upper 32 bits of the input data as the lower bits of the next data.
【0003】図3(2)はブロック暗号のコア部を示
し、これは前述の基本単位1をN個直列(π1,π2,
……πN)に組み合わせたものと、キースケジュールを
行う鍵データ制御部5とで構成される。このブロック暗
号のコア部の動作を説明すると、入力された40bitの
鍵長のデータから鍵データ制御部5で64bitの鍵を生
成し、前述の基本単位1に入力し、基本単位1をN回繰
り返すことで暗号化処理を行う。FIG. 3 (2) shows a core portion of a block cipher, which includes N basic units 1 in series (π1, π2,
... ΠN) and a key data control unit 5 for performing a key schedule. The operation of the core part of this block cipher will be described. A key of 64 bits is generated by the key data control unit 5 from the input data of the key length of 40 bits, and the key is input to the above-mentioned basic unit 1, and the basic unit 1 is used N times. The encryption process is performed by repeating.
【0004】図3(3)はCCBC方式の暗号化回路を
示し、CCBC方式では前述のブロック暗号コア部4に
加えて、暗号文の変換を行うCCBCファンクション部
7と、このCCBCファンクション部7の結果と現在の
鍵データとの排他的論理和をとる排他的論理和回路6と
で構成される。CCBC方式の動作を説明すると、ま
ず、入力の64bitの平文データからブロック暗号コア
部4により同じく64bitの暗号文を得て後、CCBC
ファンクション部7により40bitのデータに変換し、
現在の鍵との排他的論理和を排他的論理和回路6でと
り、鍵データ制御部5でブロック暗号コア部4に使用す
る64bitの鍵を生成し、次の平文データの暗号化の鍵
として使用する。このとき現在の鍵との排他的論理和を
とる暗号文は前述のブロック暗号コア部4の中間データ
であり、基本単位1の繰り返しの回数がN/2回目の暗
号文を用いる。FIG. 3 (3) shows an encryption circuit of the CCBC system. In the CCBC system, in addition to the above-mentioned block cipher core unit 4, a CCBC function unit 7 for converting a ciphertext, and a CCBC function unit 7 An exclusive OR circuit 6 for taking an exclusive OR of the result and the current key data. The operation of the CCBC method will be described. First, a 64-bit ciphertext is also obtained from the input 64-bit plaintext data by the block cipher core unit 4, and then the CCBC is obtained.
The data is converted into 40-bit data by the function unit 7,
The exclusive OR with the current key is taken by the exclusive OR circuit 6, and the key data control unit 5 generates a 64-bit key to be used for the block cipher core unit 4 as a key for encrypting the next plaintext data. use. At this time, the ciphertext that is exclusive-ORed with the current key is the intermediate data of the block cipher core unit 4 described above, and the ciphertext in which the basic unit 1 is repeated N / 2 times is used.
【0005】ここで説明したようにCCBC方式では現
在の平文データに対応する暗号文を次の平文の暗号鍵の
一部として使用する仕組であるため、ひとつの平文に対
するブロック暗号の処理が完結するまでデータを保持し
ておく必要があり、通常はメモリーを持つことになる。[0005] As described above, the CCBC method uses a ciphertext corresponding to the current plaintext data as a part of the next plaintext encryption key, so that the block cipher processing for one plaintext is completed. You need to keep the data until, and usually have memory.
【0006】この従来の構成をハード化する場合、デー
タを保持するためのメモリーが図3の暗号化回路のハー
ドよりも大きな面積を有する。When this conventional configuration is implemented by hardware, a memory for holding data has a larger area than the hardware of the encryption circuit shown in FIG.
【0007】[0007]
【発明が解決しようとする課題】しかしながら従来の構
成では、この構成をハード化する場合、データを保持す
るためのメモリーが暗号化回路のハードよりも大きくな
る傾向にある。However, in the conventional configuration, when this configuration is hardened, the memory for holding data tends to be larger than the hardware of the encryption circuit.
【0008】特に、高いデータ転送レートの平文に対し
ては、暗号化回路のデータ処理能力により平文を蓄える
メモリーがより多く必要となってくる。In particular, for plaintext with a high data transfer rate, more memory for storing plaintext is required due to the data processing capability of the encryption circuit.
【0009】たとえばMPEG2TSパケットの処理を
考えると、データバリッドの期間はMax100Mbpsで
あり、従来構成の暗号化回路をシステムクロック25MH
z、ブロック暗号コア部が100cycleとすると16Mbps
である。この場合、平文を蓄えるメモリーにMPEG2
TSパケットの6パケット分の容量が必要となる。この
ときのメモリーの容量は暗号化のハード処理能力と入力
データの転送レートとの比で決まり、入力データの転送
レートがあがるほどより多くのメモリー容量が必要にな
る。For example, considering the processing of an MPEG2 TS packet, the data valid period is Max 100 Mbps, and the encryption circuit of the conventional configuration is connected to the system clock 25 MHz.
z, 16Mbps if the block cipher core is 100 cycles
It is. In this case, the memory for storing the plaintext is MPEG2
A capacity for six TS packets is required. The capacity of the memory at this time is determined by the ratio between the hardware processing capacity of encryption and the transfer rate of the input data, and the higher the transfer rate of the input data, the more memory capacity is required.
【0010】本発明は上記従来の課題を解決するもので
あり、暗号化回路の処理能力を向上させることを目的と
するものである。The present invention has been made to solve the above-mentioned conventional problems, and has as its object to improve the processing capability of an encryption circuit.
【0011】[0011]
【課題を解決するための手段】この目的を達成するため
に本発明の暗号化回路においては、ブロック暗号コア部
を並列に2組配置し、それぞれの暗号文を隣の組に渡す
たすき掛け構造と、入力データを制御するメモリー制御
部(データラッチ)と、暗号文を制御するセレクタを備
えたものである。In order to achieve this object, in an encryption circuit according to the present invention, two sets of block cipher cores are arranged in parallel, and each ciphertext is passed to an adjacent set. And a memory control unit (data latch) for controlling input data, and a selector for controlling ciphertext.
【0012】この構成により、暗号化回路の処理能力を
従来の約2倍に向上させることができる。With this configuration, the processing capability of the encryption circuit can be improved to about twice that of the related art.
【0013】[0013]
【発明の実施の形態】本発明の請求項1記載の発明は、
ブロック暗号のコア部と、鍵データ制御部と、入力平文
をメモリーより読み出すメモリー制御部(データラッ
チ)とを2組並列に配置し、それぞれの暗号文の出力回
路をたすき掛けに接続し、並列処理したデータをセレク
タにより切り替えることで最終的な暗号文を得ることを
特徴とする。BEST MODE FOR CARRYING OUT THE INVENTION
Two sets of a block cipher core unit, a key data control unit, and a memory control unit (data latch) for reading an input plaintext from a memory are arranged in parallel, and the output circuits of the respective ciphertexts are connected in a crossing manner. A final ciphertext is obtained by switching the processed data by a selector.
【0014】以下、本発明の実施の形態について、図面
を参照しながら説明する。Hereinafter, embodiments of the present invention will be described with reference to the drawings.
【0015】図1は本発明の実施の形態における暗号化
回路の構成を示すブロック図である。図1において、1
0は平文データを保持するメモリー、4は前述した従来
例を示す図3と同一の作用を成すブロック暗号のコア部
であり、基本単位1をN個組み合わせたものとキースケ
ジュールを行う鍵データ制御部5とで構成される。また
14はブロック暗号コア部4と同一の作用を成すブロッ
ク暗号のコア部であり、同じく基本単位1をN個組み合
わせたものとキースケジュールを行う鍵データ制御部1
5とで構成される。これは鍵データ制御部5と同一の作
用を成す回路である。16は排他的論理和回路6と同一
の作用を成す回路である。17はCCBCファンクショ
ン部7と同一の作用を成す回路である。8は平文を蓄え
るためのメモリー10からブロック暗号にかけるデータ
を読み出すメモリー制御部(データラッチ)である。9
はメモリー制御部8と同じく平文を蓄えるためのメモリ
ー10からブロック暗号にかけるデータを読み出すメモ
リー制御部(データラッチ)であり、メモリー制御部
(データラッチ)8に対して読み出しタイミング(もし
くはブロック暗号コア部4にデータを送り出すタイミン
グ)を基本単位1がN/2回の繰り返し分だけ遅らせた
ものである。20はブロック暗号コア部4とブロック暗
号コア部14とで並列に処理された暗号文を連続したデ
ータとして変換するためのセレクタである。FIG. 1 is a block diagram showing a configuration of an encryption circuit according to an embodiment of the present invention. In FIG. 1, 1
Reference numeral 0 denotes a memory for storing plaintext data, and reference numeral 4 denotes a block cipher core unit having the same operation as that shown in FIG. 3 showing the above-mentioned conventional example, and a combination of N basic units 1 and key data control for key scheduling. And 5. Reference numeral 14 denotes a block cipher core unit having the same function as the block cipher core unit 4. Similarly, a combination of N basic units 1 and a key data control unit 1 for performing a key schedule.
And 5. This is a circuit having the same operation as the key data control unit 5. Reference numeral 16 denotes a circuit having the same function as the exclusive OR circuit 6. Reference numeral 17 denotes a circuit having the same function as the CCBC function unit 7. Reference numeral 8 denotes a memory control unit (data latch) for reading data to be subjected to block cipher from a memory 10 for storing plain text. 9
Is a memory control unit (data latch) for reading out data to be subjected to block ciphering from the memory 10 for storing plain text, similarly to the memory control unit 8. The timing at which data is sent to the unit 4 is delayed by N / 2 repetitions of the basic unit 1. Reference numeral 20 denotes a selector for converting ciphertext processed in parallel by the block cipher core unit 4 and the block cipher core unit 14 as continuous data.
【0016】次に本実施の形態における暗号化回路の動
作を説明する。まずメモリー10からメモリー制御部8
とメモリー制御部9により2つの平文データを読み出
す。メモリー制御部8は1つ目の平文をブロック暗号コ
ア部4に送る。メモリー制御部9はブロック暗号コア部
4の処理が基本単位1をN/2回繰り返すまで2つ目の
平文を保持しておく。ブロック暗号コア部4の処理が基
本単位1をN/2回繰り返した後、メモリー制御部9は
ブロック暗号コア部14にデータを渡す。同時にブロッ
ク暗号コア部4の暗号文からは排他的論理和回路16に
より現在の鍵データとの論理和をとり、2つ目の平文の
ための鍵を生成するための鍵データ制御部15に送られ
る。そしてブロック暗号コア部14によりメモリー制御
部9から出力された2つ目の平文の暗号化処理を行う。
ブロック暗号コア部14の処理が基本単位1をN/2回
繰り返した後、メモリー制御部8はブロック暗号コア部
4にデータを渡す。同時にブロック暗号コア部14の暗
号文からは排他的論理和回路6により現在の鍵データと
の論理和をとり、3つ目の平文のための鍵を生成するた
めの鍵データ制御部5に送られる。そしてブロック暗号
コア部4によりメモリー制御部8から出力された3つ目
の平文の暗号化処理を行う。Next, the operation of the encryption circuit according to the present embodiment will be described. First, from the memory 10 to the memory control unit 8
And the memory control unit 9 reads out two plaintext data. The memory control unit 8 sends the first plaintext to the block cipher core unit 4. The memory control unit 9 holds the second plaintext until the processing of the block cipher core unit 4 repeats the basic unit 1 N / 2 times. After the processing of the block cipher core unit 4 repeats the basic unit 1 N / 2 times, the memory control unit 9 passes the data to the block cipher core unit 14. At the same time, the exclusive-OR circuit 16 performs an OR operation on the ciphertext of the block cipher core unit 4 with the current key data, and sends the result to the key data control unit 15 for generating a key for the second plaintext. Can be Then, the second ciphertext output from the memory control unit 9 is encrypted by the block cipher core unit 14.
After the process of the block cipher core unit 14 repeats the basic unit 1 N / 2 times, the memory control unit 8 passes the data to the block cipher core unit 4. At the same time, the exclusive-OR circuit 6 performs an OR operation on the ciphertext of the block cipher core unit 14 with the current key data, and sends the result to the key data control unit 5 for generating a third plaintext key. Can be Then, the third ciphertext output from the memory control unit 8 is encrypted by the block cipher core unit 4.
【0017】以降の処理は同様にブロック暗号コア部4
とブロック暗号コア部14の処理を交互に繰り返し行
い、平文の暗号化を行う。最終的な暗号文はブロック暗
号コア部4とブロック暗号コア部14の結果を順にセレ
クタ20で取り出し生成する。The subsequent processing is similarly performed for the block cipher core unit 4.
And the process of the block cipher core unit 14 are alternately repeated to encrypt the plaintext. The final cipher text is generated by extracting the results of the block cipher core unit 4 and the block cipher core unit 14 in order by the selector 20.
【0018】また、例として図2にMPEG2TSパケ
ットの暗号化処理のタイミングチャートを示す。FIG. 2 shows a timing chart of an encryption process of an MPEG2 TS packet as an example.
【0019】[0019]
【発明の効果】以上説明したように本発明は、ブロック
暗号回路にたすき掛け構造のCCBC方式を追加するこ
とで処理能力を約2倍に向上させ、メモリーの容量を削
減することができる優れた暗号化回路を実現するもので
ある。前述のMPEGTSパケットを例にとると暗号化
処理能力を31Mbpsまで高めることが可能となり、平文
を蓄えるメモリーの容量を3パケット分に減らすことが
できる。As described above, according to the present invention, the processing capacity can be approximately doubled and the memory capacity can be reduced by adding a cross-flow CCBC system to the block cipher circuit. This implements an encryption circuit. Taking the above-mentioned MPEGTS packet as an example, the encryption processing capacity can be increased to 31 Mbps, and the capacity of the memory for storing plaintext can be reduced to three packets.
【図1】本発明の実施の形態における暗号化回路の構成
を示すブロック図FIG. 1 is a block diagram illustrating a configuration of an encryption circuit according to an embodiment of the present invention.
【図2】本発明の実施の形態におけるブロック暗号化の
タイミングチャートFIG. 2 is a timing chart of block encryption according to the embodiment of the present invention.
【図3】従来のブロック暗号及びCCBC方式の回路の
構成を示すブロック図FIG. 3 is a block diagram showing the configuration of a conventional block cipher and CCBC circuit;
1 ブロック暗号回路の基本単位 2,6,16 排他的論理和回路 3 ブロック暗号ファンクション部 4,14 ブロック暗号コア部 5,15 鍵データ制御部 7,17 CCBCファンクション部 8,9 メモリー制御部(データラッチ) 10 メモリー 20 セレクタ 1 Basic unit of block encryption circuit 2, 6, 16 Exclusive OR circuit 3 Block encryption function unit 4, 14 Block encryption core unit 5, 15 Key data control unit 7, 17 CCBC function unit 8, 9 Memory control unit (data Latch) 10 memory 20 selector
Claims (1)
部と、入力平文をメモリーより読み出すメモリー制御部
とを2組並列に配置し、それぞれの暗号文の出力回路を
たすき掛けに接続し、並列処理したデータをセレクタに
より切り替えることで最終的な暗号文を得ることを特徴
とする暗号化回路。1. A block cipher core unit, a key data control unit, and a memory control unit for reading input plaintext from a memory are arranged in two sets in parallel, and an output circuit for each ciphertext is connected in a crossing manner. An encryption circuit characterized in that a final ciphertext is obtained by switching data processed in parallel by a selector.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10171287A JP2000013369A (en) | 1998-06-18 | 1998-06-18 | Encryption circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10171287A JP2000013369A (en) | 1998-06-18 | 1998-06-18 | Encryption circuit |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2000013369A true JP2000013369A (en) | 2000-01-14 |
Family
ID=15920525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10171287A Pending JP2000013369A (en) | 1998-06-18 | 1998-06-18 | Encryption circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2000013369A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007333854A (en) * | 2006-06-13 | 2007-12-27 | New Japan Radio Co Ltd | Random number generation circuit |
JP2008061118A (en) * | 2006-09-01 | 2008-03-13 | Toshiba Corp | Encryption processing circuit and ic card |
JP2009201115A (en) * | 2009-02-24 | 2009-09-03 | Hitachi Communication Technologies Ltd | Optical access system with encryption apparatus, and encryption method thereof |
US8675870B2 (en) | 2006-12-21 | 2014-03-18 | Hitachi, Ltd. | Encryption apparatus |
-
1998
- 1998-06-18 JP JP10171287A patent/JP2000013369A/en active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007333854A (en) * | 2006-06-13 | 2007-12-27 | New Japan Radio Co Ltd | Random number generation circuit |
JP2008061118A (en) * | 2006-09-01 | 2008-03-13 | Toshiba Corp | Encryption processing circuit and ic card |
US8675870B2 (en) | 2006-12-21 | 2014-03-18 | Hitachi, Ltd. | Encryption apparatus |
JP2009201115A (en) * | 2009-02-24 | 2009-09-03 | Hitachi Communication Technologies Ltd | Optical access system with encryption apparatus, and encryption method thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7194090B2 (en) | Encryption apparatus, decryption apparatus, expanded key generating apparatus and method therefor, and recording medium | |
EP1271839B1 (en) | AES Encryption circuit | |
US5745577A (en) | Symmetric cryptographic system for data encryption | |
US5809147A (en) | Device for cryptographically processing data packets and method of generating cryptographic processing data | |
Rodriguez-Henriquez et al. | 4.2 Gbits/sec Single-Chip FPGA Implementation of the AES Algorithm. | |
US8625781B2 (en) | Encrypton processor | |
JPH06266284A (en) | Coding device | |
JPH11509940A (en) | Cryptographic method and apparatus for non-linearly combining data blocks and keys | |
Knudsen et al. | Truncated differentials and Skipjack | |
US20030059054A1 (en) | Apparatus for generating encryption or decryption keys | |
Biham et al. | Differential-linear cryptanalysis of serpent | |
JP2000066587A (en) | Data processor and communication system as well as recording medium | |
EP0719007A2 (en) | Small size product cipher apparatus | |
El-meligy et al. | 130nm Low power asynchronous AES core | |
Kouser et al. | FPGA implementation of advanced Encryption Standard algorithm | |
JP2000295212A (en) | Method and device for decoding processing of encrypted data | |
Mohurle et al. | Review on realization of AES encryption and decryption with power and area optimization | |
JPH1152849A (en) | Ciphering device and recording medium on which program is recorded to realize device readable with computer | |
US7257229B1 (en) | Apparatus and method for key scheduling | |
Balamurugan et al. | High speed low cost implementation of advanced encryption standard on fpga | |
JP2000013369A (en) | Encryption circuit | |
KR100362170B1 (en) | Apparatus of encryption for round key generating and encryption processing | |
JP2000075785A (en) | High-speed cipher processing circuit and processing method | |
JP2002108205A (en) | Block ciphering method and decoding method | |
JPH09269727A (en) | Ciphering method and ciphering device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060314 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060711 |