[go: up one dir, main page]

KR20050069924A - 블록 암호/복호방법, 회로 및 장치 - Google Patents

블록 암호/복호방법, 회로 및 장치 Download PDF

Info

Publication number
KR20050069924A
KR20050069924A KR1020047008372A KR20047008372A KR20050069924A KR 20050069924 A KR20050069924 A KR 20050069924A KR 1020047008372 A KR1020047008372 A KR 1020047008372A KR 20047008372 A KR20047008372 A KR 20047008372A KR 20050069924 A KR20050069924 A KR 20050069924A
Authority
KR
South Korea
Prior art keywords
memory
data
block
plain text
encrypted
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
KR1020047008372A
Other languages
English (en)
Inventor
츠토무 이치노세
이와오 오오후지
노부타네 히데시마
Original Assignee
소니 가부시끼 가이샤
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 소니 가부시끼 가이샤 filed Critical 소니 가부시끼 가이샤
Publication of KR20050069924A publication Critical patent/KR20050069924A/ko
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
    • 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]
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04KSECRET COMMUNICATION; JAMMING OF COMMUNICATION
    • H04K1/00Secret communication
    • H04K1/06Secret communication by transmitting the information or elements thereof at unnatural speeds or in jumbled order or backwards
    • 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/12Details relating to cryptographic hardware or logic circuitry

Landscapes

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

Abstract

평문메모리(11)와, 원데이터를 블록 단위로 암호화처리 혹은 복호처리하는 암호화/복호회로(13)를 설치한다. 외부로부터 원데이터를 평문메모리(11)에 전송한다. 이 전송된 원데이터를, 암호화/복호회로(13)에 공급하여 블록단위로 암호화처리 혹은 복호처리한다. 이 처리결과의 데이터를, 평문메모리(11)의 원데이터와 치환한다. 평문메모리(11)에 전송된 원데이터의 모두가 처리결과의 데이터로 치환되었을 때, 이 처리결과의 데이터를 외부에 출력한다. 이에 따라, 가변장의 블록암호회로에 있어서, 구성을 간단화함과 동시에, 호스트 컴퓨터의 부담을 경감하게 한다.

Description

블록 암호/복호방법, 회로 및 장치{BLOCK ENCODING/DECODING METHOD, CIRCUIT, AND DEVICE}
본 발명은, 블록암호방법, 블록암호회로, 암호장치, 블록복호방법, 블록복호회로 및 복호장치에 관한 것이다.
평문데이터를 암호화하는 방법으로서, 평문데이터의 예를 들면 64비트를 1블록으로 하고, 이 블록 단위로 암호화를 하는 블록암호 처리법이 있다. 그리고, 이 블록암호처리는, 블록 및 열쇠의 사용방법에 의해, ECB, CBC, OFB, CFB의 4개의 모드로 분류할 수 있다.
그리고, CBC 모드에 있어서는 블록연쇄 암호화처리가 행해지지만, 이 CBC 모드의 블록암호회로를, 데이터의 흐름을 중심으로 하여 나타내면, 도 5에 나타내는바와 같다.
즉, 평문데이터의 제1번째의 블록 1A와, 초기값(초기화 벡터) IV가 익스컬시브 오어(Exclusive OR) 회로 2A에 공급되고, 그 출력이 암호화회로 3A에 공급되어 비밀키에 의해 암호문 데이터의 제1번째의 블록 4A가 작성된다. 다음에, 평문데이터의 제2번째의 블록 1B와, 제1번째의 암호문 데이터 4A가 익스컬시브 오어 회로 2B에 공급되고, 그 출력이 암호화회로 3B에 공급되어 비밀키에 의해 암호문 데이터의 제2번째의 블록 4B가 작성된다. 또한, 평문데이터의 제3번째의 블록 1C와, 제2번째의 암호문 데이터 4B가 익스컬시브 오어 회로 2C에 공급되고, 그 출력이 암호화회로 3C에 공급되어 비밀키에 의해 암호문 데이터의 제3번째의 블록 4C가 작성된다.
그리고, 이하와 마찬가지로, 평문데이터의 제n번째의 블록과, 1개 전의 제(n-1)번째의 암호문 데이터와의 익스컬시브 오어 출력이 비밀키에 의해 암호화되어 암호문 데이터의 제n번째의 블록이 작성된다(예를 들면, 일본특허공개 2000-338866호 공보 참조).
이렇게 해서, 도 5의 블록암호회로에 의하면, 평문데이터를 CBC 모드에 의해 암호화할 수 있다. 또한, 도 6에 나타내는 바와 같이, 신호의 흐름을 반대로 함과 동시에, 회로 3A, 3B, 3C, ··를 복호회로로서 사용하면, 암호문 데이터를 평문데이터에 복호할 수 있다.
이때, 도 5는 데이터의 흐름을 중심으로 하여 나타내는 것으로, 실제의 블록암호회로에서는, 익스컬시브 오어 회로 2A, 2B, 2C, ···는, 이 블록암호회로를 사용하는 호스트 컴퓨터의 소프트웨어 처리에 의해 실현된다. 또한, 암호화회로 3A, 3B, 3C, ···는, 하드웨어에 의해 구성되지만, 그 중의 하나만이 설치되고, 그 암호화회로가, 평문데이터의 블록 1A, 1B, 1C, ··· 및 암호문 데이터의 블록 4A, 4B, 4C, ···에 대하여 공통으로 사용된다.
또한, 익스컬시브 오어 회로 2A, 2B, 2C, ···등에서의 처리를 변경함으로써, ECB 모드의 블록암호처리 등을 실현할 수 있으므로, 익스컬시브 오어 회로 2A, 2B, 2C, ···등에서의 처리는, 모드처리라고도 부르고 있다.
그런데, 음악 등의 디지털 오디오 데이터를 디스크에 기록하여 판매하는 경우에, 부정카피를 방지하기 위해, 그 디지털 오디오 데이터를 암호화하여 디스크에 기록해 두는 것이 생각되고 있다. 그리고, 그 경우, 도 5에 의해 설명한 블록암호화를 적용할 수 있다.
그런데, 도 5의 블록암호회로에서는, 컴퓨터가 익스컬시브 오어 처리 등의 모드처리를 하는 경우, 예를 들면 64비트씩 블록 단위로 처리를 하므로, 평문데이터(디지털 오디오 데이터)가 길 때, 컴퓨터에 부담이 걸려 버린다. 예를 들면, 평문데이터의 길이가 2K 바이트이라고 하면, 컴퓨터는 모드처리를 256회(=2K바이트/64비트) 실행할 필요가 있어, 컴퓨터에 있어서 상당한 부담이 되어 버린다.
이 때문에, 블록암호화된 디스크를 재생하는 플레이어인 경우, 시스템 제어용의 마이크로 컴퓨터와는 별도로, 복호용의 마이크로 컴퓨터를 필요로 하거나, 혹은 시스템 제어용 겸 암호화용의 마이크로 컴퓨터로서 처리능력이 높은 것이 필요하게 되어 버린다.
본 발명은, 이러한 점에 감안하여, 컴퓨터의 부담이 가볍고, 더구나, 간단한 구성으로 임의의 길이의 평문데이터에 대응할 수 있는 블록암호회로를 제공하고자 하는 것이다.
(발명의 개시)
본 발명에 있어서는, 예를 들면,
평문데이터를 축적하는 메모리와,
상기 메모리에 축적된 평문데이터를 블록 단위로 암호화처리한 후, 해당 블록 단위로 암호화처리된 데이터를 상기 메모리에 전송하는 암호화수단과,
상기 메모리에 전송된 상기 블록 단위로 암호화처리된 데이터가, 해당 블록 단위이상의 소정의 양에 도달하였을 때, 해당 암호화처리된 데이터를 외부에 출력하는 출력수단으로 이루지는 블록암호화회로로 하는 것이다.
따라서, 호스트 컴퓨터는, 평문데이터 혹은 암호문 데이터를 평문메모리의 용량단위로 액세스하게 된다.
도 1은, 본 발명의 일형태를 나타내는 계통도이다.
도 2는, 도 1의 회로의 처리의 흐름을 나타내는 플로우차트이다.
도 3은, 본 발명의 일형태를 나타내는 계통도이다.
도 4는, 도 3의 회로의 처리를 나타내는 플로우차트이다.
도 5는, 본 발명을 설명하기 위한 계통도이다.
도 6은, 본 발명을 설명하기 위한 계통도이다.
① 블록암호회로의 구성 및 처리내용
도 1에서, 부호 10은, 본 발명에 의한 블록암호회로를 전체로서 나타내고, 부호 20은, 블록암호회로 10을 사용하는 호스트 컴퓨터를 나타낸다.
그리고, 블록암호회로(10)는, 평문메모리(11)와, 데이터 컨트롤회로(12)와, 암호화/복호회로(13)를 갖는다. 이 경우, 평문메모리(11)는, 평문데이터 및 암호문 데이터를 암호화 혹은 복호가 종료할 때까지 유지하기 위한 것으로, 평문데이터의 블록의 복수개분의 용량, 예를 들면 2K 바이트(=64비트×256블록)의 용량을 갖는다.
또한, 데이터 컨트롤회로(12)는, 도 5의 익스컬시브 오어 회로(2A)에 대응하는 익스컬시브 오어 회로(12A)와, 래치회로(12B)를 갖는다. 또한, 암호화/복호회로(13)는, 도 5의 암호화회로(3A)에 대응하는 것이지만, 범용의 블록암호화회로에 의해 구성되고, 입력된 데이터를 1블록 단위로 암호화하는 것이다. 이때, 암호화/복호회로(13)는 암호문 데이터의 복호에도 사용된다.
또한, 블록암호회로(10)는, 메모리 컨트롤회로(14)와, 초기값 메모리(15)와, 레지스터(16)를 갖는다. 이 경우, 메모리 컨트롤회로(14)는, 평문메모리(11)의 기록·판독 및 그 어드레스 등을 제어하기 위한 것이다. 또한, 메모리(15)는, 호스트 컴퓨터(20)로부터 공급되는 초기값 IV를 유지하는 것으로, 레지스터(16)는, 호스트 컴퓨터(20)로부터 공급되는 모드플래그 CBCF, IV 플래그 IVF, 암호플래그 CRYF를 유지하는 것이다.
여기서, 모드플래그 CBCF는, 암호·복호모드를 CBC 모드와 ECB 모드로 전환하기 위한 것으로, CBC 모드로 암호화·복호할 때에는, CBCF="1"로 되고, ECB 모드로 암호화·복호할 때에는, CBCF="0"으로 된다. 또한, IV 플래그 IVF는, 암호화 혹은 복호할 때에, 초기값 IV의 사용을 제어하기 위한 것으로, 평문데이터 혹은 암호문 데이터의 제1번째의 블록을 암호화 혹은 복호할 때(초기값 IV를 사용할 때)는, IVF="1"로 되고, 제2번째 이후의 블록을 암호화 혹은 복호할 때(초기값 IV를 사용하지 않을 때)는, IVF="0"으로 된다. 또한, 암호플래그 CRYF는, 암호화를 행할 때에는, CRYF="1"로 되고, 복호를 행할 때에는, CRYF="0"으로 된다.
그리고, 암호화/복호회로(13)는 데이터 컨트롤회로(12)에 접속되고, 나머지 회로 11, 12, 14∼17은, 블록암호회로(10)의 내부버스(19)를 통해 호스트 컴퓨터(20)에 접속된다. 또한, 호스트 컴퓨터(20)의 메모리(23)에는, 암호화하는 평문데이터 혹은 복호하는 암호문 데이터가 준비된다. 이 평문데이터 혹은 암호문 데이터는, 평문메모리(11)의 용량보다도 커도 된다. 또한, 그 평문데이터 혹은 암호문 데이터가 1블록 64비트의 정수배가 아닐 때에는, 최후에 더미데이터가 부가되어 정수배로 된다.
그리고, 블록암호회로(10)는, 호스트 컴퓨터(20)의 메모리(23)에 준비되어 있는 평문데이터 혹은 암호문 데이터를 암호화처리 혹은 복호처리를 할 때, 예를 들면 도 2의 플로우차트 100에 나타내는 것처럼 흐르고, 그 처리를 행하는 것이다. 이것을 이하에 설명한다.
①-1 CBC 모드에 의한 암호화
호스트 컴퓨터(20)가 블록암호회로(10)를 CBC 모드로 사용하여 평문의 암호화를 하는 경우에는, 플로우차트(100)의 스텝 101로서 나타내는 바와 같이, 호스트 컴퓨터(20)로부터 메모리(15)에 초기값 IV가 로드됨과 동시에, 레지스터(16)에 "1" 레벨의 플래그 CBCF, IVF, CRYF가 로드된다. 계속해서, 스텝 102로서 나타내는 바와 같이, 메모리(23)에 준비되어 있는 평문데이터 중, 최초의 2K 바이트가 평문메모리(11)에 전송된다. 이때, 이 전송은 메모리 컨트롤회로(14)의 DMA 전송에 의해 실행된다.
다음에, 스텝 111로서 나타내는 바와 같이, 평문메모리(11)의 평문데이터 중, 제n번째의 블록, 지금의 경우, 제1번째의 블록이 지정되고, 또한, 스텝 112로서 나타내는 바와 같이, 데이터 컨트롤회로(12)가 레지스터(16)의 암호플래그 CRYF를 체크함으로써, 암호화 및 복호 중 어느 쪽을 행하는 것인지가 판별된다. 지금의 경우는, CRYF="1"로 암호화이므로, 처리의 흐름은 스텝 112로부터 스텝 113으로 진행한다.
그리고, 스텝 113으로서 나타내는 바와 같이, 데이터 컨트롤회로(12)가 레지스터(16)의 모드플래그 CBCF를 체크함으로써, 암호화를 CBC 모드와 ECB 모드와의 어느 쪽에서 행하는 것인지가 판별된다. 지금의 경우는, CBCF="1"로 CBC 모드이므로, 처리의 흐름은 스텝 113으로부터 스텝 114로 진행한다. 그리고, 스텝 114로서 나타내는 바와 같이, IV 플래그 IVF를 체크함으로써, 스텝 111에 의해 지정된 블록이, 평문메모리(11)에서의 평문데이터의 제1번째의 블록인지 어떤지가 판별된다.
그리고, 제1번째의 블록일 때에는(이때, IVF="1"임), 처리의 흐름은 스텝 114로부터 스텝 115로 진행하고, 이 스텝 115에서, 스텝 111에 의해 지정된 제n번째의 블록, 지금의 경우, 제1번째의 블록과, 스텝 101에 의해 메모리(15)에 로드된 초기값 IV가, 익스컬시브 오어 회로(12A)에 공급된다. 또한, 이때, IVF="0" 레벨로 된다(따라서, 이후, 스텝 114가 실행되었을 때, 처리의 흐름은 스텝 114로부터 스텝 116으로 진행하게 됨).
또한, 스텝 114에서, 스텝 111에 의해 지정된 블록이, 평문메모리(11)에서의 평문데이터의 제2번째 이후의 블록일 때에는(이때, IVF="O"임), 처리의 흐름은 스텝 114로부터 스텝 116으로 진행하고, 이 스텝 116에서, 스텝 111에 의해 지정된 제n번째의 블록의 데이터와, 1개 전의 제(n-1)번째의 암호화된 블록의 데이터가, 익스컬시브 오어 회로(12A)에 공급된다. 이렇게 해서, 스텝 115 혹은 116에 의해, 익스컬시브 오어 출력이 형성된다.
그리고, 처리의 흐름은 스텝 115 혹은 116으로부터 스텝 117로 진행하고, 이 스텝 117에서, 스텝 115 혹은 116의 익스컬시브 오어 출력이, 암호화/복호회로(13)에 공급되어 암호문 데이터에 암호화되고, 평문메모리(11)의 원래의 평문데이터의 블록으로 치환된다. 다음에, 스텝 118로서 나타내는 바와 같이, 스텝 117에 의해 암호화된 블록이 래치회로 12B에 래치된다. 이 래치된 익스컬시브 오어 출력은, 전술한 바와 같이, 스텝 116에서, 1개 전의 제(n-1)번째의 블록의 데이터로서 사용된다.
계속해서, 스텝 119로서 나타내는 바와 같이, 평문메모리(11)의 모든 블록에 대하여 스텝 117의 암호화처리가 실행되었는지 어떤지가 판별되고, 암호화처리가 되어 있지 않은 블록이 남아 있을 때는, 처리의 흐름은 스텝 119로부터 스텝 111로 되돌아간다. 이렇게 해서, 평문메모리(11)의 평문데이터는, 1블록씩 암호문 데이터로 암호화되어 간다.
그리고, 평문메모리(11)의 모든 블록에 대하여 스텝 117의 암호화처리가 실행되었을 때에는, 처리의 흐름은 스텝 119로부터 스텝 131로 진행하고, 이 스텝 131에서, 평문메모리(11)에 작성된 암호문 데이터가 호스트 컴퓨터(20)의 메모리(23)에 전송된다. 이때, 이 전송도 메모리 컨트롤회로(14)의 DMA 전송에 의해 실행된다.
이상으로, 호스트 컴퓨터(20)의 메모리(23)에 준비되어 있는 평문데이터 중, 최초의 2K 바이트가 암호화된 것으로 되므로, 이것으로 플로우차트 100의 처리는 일단 종료한다. 그리고, 메모리(23)에 준비되어 있는 평문데이터가 2K 바이트보다도 많고, 따라서, 암호화되어 있지 않은 평문데이터가 남아 있을 때에는, 그 남아 있는 평문데이터에 대하여 플로우차트 100의 처리가 반복된다.
①-2 ECB 모드에 의한 암호화
호스트 컴퓨터(20)에 준비되어 있는 평문데이터를 ECB 모드로 암호화하는 경우에도, 플로우차트 100의 처리의 흐름으로 되지만, 스텝 101에서의 메모리(15)로의 초기값 IV의 로드는 행해지지 않는다. 또한, 레지스터(16)에 로드되는 모드플래그 CBCF는 "0" 레벨로 된다.
그렇게 하면, 플로우차트 100에서의 처리의 흐름은, 스텝 113으로부터 스텝 117로 진행하므로, 익스컬시브 오어 회로(12A)에서의 익스컬시브 오어 처리는 실행되지 않고, 제n번째의 평문데이터의 블록은, 그 블록만으로 암호화/복호회로(13)에 의해 암호화되게 된다. 따라서, ECB 모드의 암호문 데이터를 얻을 수 있게 된다.
①-3 CBC 모드에 의한 복호
호스트 컴퓨터(20)가 블록암호회로(10)를 CBC 모드로 사용하여 암호문의 복호를 하는 경우에는, 플로우차트 100의 스텝 101로서 나타내는 바와 같이, 호스트 컴퓨터(20)의 메모리(23)로부터 메모리(15)로 초기값 IV가 로드되고, 또한, 레지스터(16)에, "1" 레벨의 플래그 CBCP, IVF가 로드됨과 동시에, "0" 레벨의 암호플래그 CRYF가 로드된다.
그리고, 스텝 102로서 나타내는 바와 같이, 호스트 컴퓨터(20)의 메모리(23)에 준비되어 있는 암호문 데이터의 최초의 2K 바이트가 평문메모리(11)에 전송되고, 그 중의 제n번째(지금의 경우는 n=1)의 블록이 지정된다. 계속해서, 스텝 112로서 나타내는 바와 같이, 데이터 컨트롤회로(12)가 레지스터(16)의 암호플래그 CRYF를 체크함으로써, 암호화 및 복호 중 어느 쪽을 행하는 것인지가 판별되고, 지금의 경우, CRYF="0"으로 복호이므로, 처리의 흐름은 스텝 112로부터 스텝 121로 진행한다.
그리고, 스텝 121로서 나타내는 바와 같이, 평문메모리(11)의 암호문 중, 스텝 111에 의해 지정된 제n번째의 블록이. 래치회로(12B)에 래치되고, 다음에, 스텝 122로서 나타내는 바와 같이, 평문메모리(11)의 암호문 데이터 중, 스텝 111에 의해 지정된 제n번째의 블록이 암호화/복호회로(13)에 공급되어 평문데이터(익스컬시브 오어 처리 전의 평문데이터)에 복호된다. 이때, 래치회로(12B)에 래치된 블록은, 후술하는 바와 같이, 제n번째의 블록복호 데이터에 익스컬시브 오어 처리를 할 때, 그 1개 전의 제(n-1)번째의 블록으로서 사용된다.
다음에, 처리의 흐름은 스텝 123으로 진행하고, 데이터 컨트롤회로(12)가 레지스터(16)의 모드플래그 CBCF를 체크함으로써, 복호를 CBC 모드 및 ECB 모드 중 어느 쪽에서 행하는 것인지가 판별된다. 지금의 경우는, CBCF="1"로 CBC 모드이므로, 처리의 흐름은 스텝 123으로부터 스텝 124로 진행한다. 그리고, 스텝 124로서 나타내는 바와 같이, IV 플래그 IVF를 체크함으로써, 스텝 111에 의해 지정된 블록이, 평문메모리(11)에서의 암호문 데이터의 제1번째의 블록인지 어떤지가 판별된다.
그리고, 제1번째의. 블록일 때에는(이때, IVF="1"임), 처리의 흐름은 스텝 124로부터 스텝 125로 진행하고, 이 스텝 125에서, 스텝 122에 의해 복호된 평문데이터의 블록과, 스텝 101에 의해 메모리(15)에 로드된 초기값 IV가, 익스컬시브 오어 회로(12A)에 공급되어 원래의 평문데이터로 되고, 이 평문데이터가 평문메모리(11)의 원래의 암호문 데이터의 블록과 치환된다. 또한, 이때, IVF="0" 레벨로 된다.
또한, 스텝 124에서, 스텝 111에 의해 지정된 블록이, 평문메모리(11)에서의 암호문 데이터의 제2번째 이후의 블록일 때에는(이때, IVF="0"임), 처리의 흐름은 스텝 124로부터 스텝 126으로 진행한다. 그리고, 이 스텝 126에서, 스텝 122에 의해 복호된 평문데이터의 블록과, 스텝 121에 의해 래치회로 12B에 래치되어 있는 1개 전의 제(n-1)번째의 블록의 데이터가, 익스컬시브 오어 회로 12A에 공급되어 원래의 평문데이터로 되고, 이 평문데이터가 평문메모리(11)의 원래의 암호문 데이터의 블록의 위치에 기록된다.
그리고, 이후, ①-1의 암호화시와 마찬가지로 스텝 119 이후의 처리가 실행되고, 평문메모리(11)의 암호문 데이터는, 1블록씩 평문데이터에 복호되어 있어, 평문메모리(11)의 모든 블록에 대한 복호처리가 실행되면, 그 평문데이터가 호스트 컴퓨터(20)의 메모리(23)에 전송된다.
그리고, 호스트 컴퓨터(20)의 메모리(23)에, 복호되어 있지 않은 암호문 데이터가 남아 있을 때에는, 이상의 처리가 반복되고, 호스트 컴퓨터(20)의 메모리(23)에 준비되어 있는 모든 암호문 데이터가 복호되었을 때, 모든 처리를 종료한다.
①-4 ECB 모드에 의한 복호
호스트 컴퓨터(20)에 준비되어 있는 암호문 데이터를 ECB 모드로 복호하는 경우에는, 스텝 101에서의 메모리(15)로의 초기값 IV의 로드는 행해지지 않는다. 또한, 레지스터(16)에 로드되는 플래그 CBCF, CRYF는 "0" 레벨로 된다.
그렇게 하면, 플로우차트 100에서의 처리의 흐름은, 스텝 123으로부터 스텝 119로 진행하므로, 익스컬시브 오어 회로(12A)에서의 익스컬시브 오어 처리는 실행되지 않고, 제n번째의 평문데이터의 블록은, 그대로 평문메모리(11)의 원래의 암호문 데이터와 치환되게 된다. 따라서, ECB 모드의 평문데이터가 얻어지게 된다.
①-5 맺음말
전술한 바와 같이 하여, 평문데이터의 블록암호화(및 암호문 데이터의 블록복호)가 실행되지만, 그 경우, 호스트 컴퓨터(20)는, 평문데이터를 평문메모리(11)의 용량단위로 블록암호회로(10)에 액세스하면 되므로, 호스트 컴퓨터(20)의 부담이 경감된다.
즉, 도 5의 암호회로인 경우에는, 호스트 컴퓨터는, 1블록 64비트마다 평문데이터의 송신 및 암호문 데이터의 수신을 행할 필요가 있어, 그 송신 및 수신의 회수가 많아지므로, 호스트 컴퓨터의 부담이 커지지만, 도 1의 블록암호회로(10)인 경우에는, 호스트 컴퓨터(20)는, 예를 들면 32블록 2K 바이트마다 평문데이터의 송신 및 암호문 데이터의 수신을 행하면 되고, 그 송신 및 수신회수가 1/256(=64비트/2K 바이트)로 대폭 적어지므로, 호스트 컴퓨터(20)의 부담이 경감된다. 또한, 호스트 컴퓨터(20)가 암호화처리에 필요로 하는 시간도 단축할 수 있다.
또한, 호스트 컴퓨터(20)는, 블록암호회로(10)에 평문데이터를 송신한 후에는, 블록암호회로(10)로부터 암호화 데이터를 수신할 때까지, 블록의 익스컬시브 오어 처리나 블록의 관리 등의 처리를 할 필요가 없으므로, 이 점으로부터도 부담이 경감되고, 호스트 컴퓨터(20)는 원래의 처리에 집중할 수 있다. 예를 들면, CD 플레이어 등에 사용한 경우에는, 그 시스템 제어용의 컴퓨터가 호스트 컴퓨터(20)가 되지만, 시스템제어를 위한 처리에 집중할 수 있다. 또한, 이것에 의해, 특히 휴대용의 기기에 있어서는, 시스템 제어용의 컴퓨터로서 고도한 것을 사용할 필요가 없어진다.
또한, 암호화하는 평문데이터의 길이는, 평문메모리(11)의 용량의 정수배일 필요가 없고, 임의의 길이의 평문데이터를 암호화할 수 있다. 즉, 가변장의 블록암호회로이다. 또한, 평문메모리(11)의 용량을 단위로서 암호화처리 및 복호처리를 행할 수 있으므로, 연쇄암호처리시에서의 전송오류의 영향을 경감할 수 있다. 게다가, 이상의 효과를 얻기 위해, 특수한 회로를 필요로 하지 않는다.
② 기록재생장치
도 3은, 본 발명을 CD-R/RW 기록재생장치에 적용한 경우의 일형태를 나타낸다.
즉, 암호화 및 복호를 필요로 하지 않는 기록시에는, 신호원, 예를 들면 마이크로폰(31)으로부터의 오디오신호가 인터페이스회로(33)에 공급되어 디지털 오디오 데이터에 A/D 변환되고, 이 디지털 오디오 데이터가, 후술하는 마이크로 컴퓨터(40)의 시스템 버스(49)를 통해 디스크 인터페이스회로(34)에 공급되어 에러정정용의 인코드처리 및 기록용의 EFM 변조처리가 행해진다. 그리고, 이 인코드처리 및 변조처리가 행해진 신호가, 디스크 드라이브장치(35)에 공급되고, CD-R 혹은 CD-RW 등의 디스크(36)에 기록된다.
또한, 재생시에는, 디스크 드라이브장치(35)에 의해 디스크(36)로부터 신호가 재생되고, 이 재생신호가 디스크 인터페이스회로(34)에 공급되어 기록시와는 상보의 처리, 즉, EFM 복조처리 및 에러정정용의 디코드처리가 행해지고, 원래의 디지털 오디오 데이터가 추출된다. 그리고, 이 디지털 오디오 데이터가 시스템 버스(49)를 통해 인터페이스회로(33)에 공급되어 아날로그의 오디오신호로 D/A 변환되고, 이 오디오신호가 소정의 신호출력처, 예를 들면 스피커(32)에 공급된다.
이때, 디지털 오디오 데이터 이외의 디지털 데이터를 디스크(36)에 대하여 기록 혹은 재생하는 경우에는, 그 때문에 인코드처리나 디코드처리 등이 필요하게 되지만, 그것들의 처리도 디스크 인터페이스회로(34)에서 실행된다.
또한, 마이크로 컴퓨터(40)는, 이 기록재생장치 전체의 동작을 제어하는 시스템 컨트롤회로를 구성하고 있는 것으로, CPU(41), 각종의 프로그램 및 데이터가 기록된 ROM(42), 워크 에어리어용의 RAM(43)을 갖고, 이들이 시스템 버스(49)에 접속된다. 또한, ①에서 설명한 블록암호회로(10)가, 그 내부버스(19)를 통해 시스템 버스(49)에 접속된다. 이때, RAM 43은, 그 일부의 어드레스 에어리어가 메모리(23)로서 사용된다.
또한, 사용자 인터페이스로서, 각종의 조작키(44) 및 디스플레이, 예를 들면 LCD(45)도 시스템 버스(49)에 접속된다. 또한, 시스템 버스(49)에는, 외부 인터페이스로서 USB 인터페이스회로(46)가 접속되고, 이 USB 인터페이스회로(46)에, 외부기기로서 예를 들면 퍼스널 컴퓨터(50)가 접속된다.
그리고, 오디오신호의 암호화 및 기록과, 재생 및 복호의 처리가, 아래와 같이 행해진다.
②-1 오디오신호의 암호화 및 기록
오디오신호를 암호화하여 디스크(36)에 기록하는 경우에는, 마이크로폰(31)으로부터의 오디오신호가 인터페이스회로(33)에 공급되어 디지털 오디오 데이터로 A/D 변환되고, 이 디지털 오디오 데이터가 RAM(43)에 일단 버퍼링되고 나서 블록암호회로(10)에 공급된다. 이렇게 해서, RAM(43)의 디지털 오디오 데이터는, 블록암호회로(10)에 의해 예를 들면 2K 바이트마다 ①에서 설명한 바와 같이 암호화 데이터로 블록암호화된다.
그리고, 이 RAM(43)의 암호화 데이터가, 디스크 인터페이스회로(34)에 공급되어 에러정정용의 인코드처리 및 기록용의 EFM 변조처리가 행해지고, 그 후, 디스크 드라이브장치(35)에 공급되어, 디스크(36)에 기록된다.
②-2 오디오신호의 재생 및 복호
디스크(36)에 기록되어 있는 오디오신호를 복호하여 재생하는 경우에는, 디스크 드라이브장치(35)에 의해 디스크(36)로부터 신호가 재생되고, 이 재생신호가 디스크 인터페이스회로(34)에 공급되어 원래의 암호화 데이터가 디코드되어 추출된다. 그리고, 이 암호화 데이터가, RAM(43)에 일단 버퍼링되고 나서 예를 들면 2K 바이트씩 블록암호회로(10)에 공급되고, ①에서 설명한 바와 같이, 원래의 디지털 오디오 데이터에 블록복호된다.
그리고, 이 복호된 디지털 오디오 데이터가, RAM(43)으로부터 인터페이스회로(33)에 공급되어 원래의 아날로그의 오디오신호로 D/A 변환되고, 이 오디오신호가 예를 들면 스피커(32)에 공급된다.
②-3 암호화 데이터의 재암호화
이것은, 예를 들면, 디스크(36)에 암호화되어 기록되어 있는 오디오신호를, 일단 복호하고 나서 별도의 비밀키를 사용하여 다시 암호화하고, 그 재암호문 데이터를 퍼스널 컴퓨터(50)에 출력하는 경우이다. 또한, 이하는, 복호된 디지털 오디오 데이터를, 4K 바이트마다 재암호화하는 경우이다. 그리고, 이 경우에는, CPU(41)는, 예를 들면 도 4에 나타내는 루틴(200)을 실행한다.
즉, 디스크(36)의 재생이 시작되면, ②-2와 마찬가지로, 디스크(36)로부터의 재생신호가, 디스크 인터페이스회로(34)에 의해 원래의 암호문 데이터로 디코드되어 출력되지만, 스텝 201에서, 그 암호문 데이터가 RAM(43)에 순차 기록되어 간다. 이때, 스텝 202에서, RAM(43)에의 암호문 데이터의 기록이 2K 바이트에 도달했는지 어떤지가 판별되고, 도들하고 있지 않을 때에는, 스텝 201에 의해 암호문 데이터의 RAM(43)에의 기록이 속행된다.
그리고, RAM(43)에 기록된 암호문 데이터가 2K 바이트에 도달하면, CPU(41)의 처리는 스텝 202로부터 스텝 203으로 진행하고, 이 스텝 203에서, 플로우차트 100의 처리가 실행되어 RAM(43)의 암호문 데이터는 평문데이터(디지털 오디오 데이터)로 복호되며, 다음에 스텝 204에서, RAM(43)에서의 평문데이터가 4K 바이트에 도달했는지 어떤지가 판별되고, 도달하고 있지 않을 때에는, 처리는 스텝 201로 되돌아간다. 이렇게 해서, RAM(43)에는, 디스크(36)로부터 재생된 암호문 데이터가 순차 기록되어 감과 동시에, 그 암호문 데이터는 2K 바이트마다 평문데이터(디지털 오디오 데이터)에 복호되어 간다.
그리고, RAM(43)에서의 평문데이터가 4K 바이트에 도달하면, 이것이 스텝 204에서 판별되고, 처리는 스텝 204로부터 스텝 211로 진행하며, 이 스텝 211에서, 플로우차트 100의 처리가 실행되고, RAM(43)의 4K 바이트의 평문데이터 중, 전반의 2K 바이트의 평문데이터가 암호문 데이터로 암호화된다.
계속해서, 처리는 스텝 212로 진행하고, 이 스텝 212에서, 다시 플로우차트 100의 처리가 실행되며, RAM(43)의 4K 바이트의 평문데이터 중, 후반의 2K 바이트의 평문데이터가 암호문 데이터로 암호화된다. 이때, 이 경우, 스텝 212에서의 플로우차트 100의 처리일 때에는, 스텝 101의 초기화는 실행되지 않고, 스텝 211에서의 플로우차트 100의 처리일 때의 플래그 CBCF, IVF, CRYP의 값이 그대로 사용된다.
그리고, 스텝 213에서, 디스크(36)의 재생을 종료하는지 어떤지가 판별되고, 종료하지 않을 때에는, 처리는 스텝 213으로부터 스텝 201로 되돌아가, 스텝 201 이후의 처리가 반복된다. 따라서, RAM(43)에는, 재암호문 데이터가 4K 바이트씩 얻어지지만, 이 재암호문 데이터는, USB 인터페이스회로(46)를 통해 예를 들면 퍼스널 컴퓨터(50)에 공급된다.
이렇게 해서, 디스크(36)에 암호화되어 기록되어 있는 오디오신호는 재암호화되어 퍼스널 컴퓨터(50)에 출력되지만, 이 경우, 플로우차트 200으로부터도 명백해지는 바와 같이, 마이크로 컴퓨터(40)는, 암호문 데이터 혹은 평문데이터의 2K 바이트마다 처리를 실행하면 되므로, 상기한 바와 같이 디스크(36)를 재생하면서 리얼타임으로 처리를 실행할 수 있다.
③ 기타
플로우차트 100에서, 스텝 131의 처리가 종료한 경우에, 메모리(23)에 평문데이터가 남아 있을 때, 스텝 131에 계속해서 스텝 102로부터 처리를 반복하는 것도 할 수 있다.
[본 명세서에서 사용하고 있는 약어의 일람]
A/D : Analog to Digital
CBC : Cipher Block Chaining
CD : Compact Disc
CD-R : CD Recordable
CD-RW : CD Rewritable
CFB : K-bit Cipher FeedBack
CPU : Central Processing Unit
D/A : Digital to Analog
DMA : Direct Memory Access
ECB : Electronic Code Book
EFM : Eight to Fourteen Modulation
K : 1024
LCD : Liquid Crystal Display
OFB :K-bit Output FeedBack
RAM : Random Access Memory
ROM : Read Only Memory
USB : Universal Serial Bus
본 발명에 의하면, 호스트 컴퓨터는, 평문데이터(혹은 암호문 데이터)를 평문메모리의 용량단위로 암호회로에 액세스하면 되므로, 호스트 컴퓨터의 부담이 대폭 경감된다. 또한, 호스트 컴퓨터가 암호화처리에 필요로 하는 시간도 단축할 수 있다.
또한, 호스트 컴퓨터는, 암호회로에 평문데이터를 송신한 후는, 암호회로에서 암호화 데이터를 수신할 때까지, 블록의 익스컬시브 오어 처리나 블록의 관리 등의 처리를 할 필요가 없으므로, 이 점으로부터도 부담이 경감되고, 원래의 시스템 제어에 집중할 수 있다.
또한, 임의의 길이의 평문데이터를 암호화할 수 있고, 즉, 가변장의 블록암호회로이다. 또한, 평문메모리의 용량을 단위로서 암호화처리 및 복호처리를 행할 수 있으므로, 연쇄암호처리시에서의 전송오류의 영향을 경감할 수 있다. 더구나, 이상의 효과를 얻기 위해, 특수한 회로를 필요로 하는 것이 없다.
또한, 디스크 등으로 암호화되어 기록되어 있는 오디오신호를 재암호화하여 외부에 출력할 수 있지만, 이 경우, 호스트 컴퓨터는, 암호문 데이터 혹은 평문데이터를 평문메모리의 용량단위로 처리하면 되므로, 리얼타임으로 처리를 실행할 수 있다.

Claims (16)

  1. 제1 메모리에 축적된 평문데이터를 제2 메모리에 전송하고, 전송된 상기 평문데이터를 상기 제2 메모리로부터 소정의 블록 단위로 암호화회로에 전송하며,
    상기 암호화회로로 상기 평문데이터를 상기 소정의 블록 단위로 암호화처리하고,
    상기 암호화처리된 데이터를 상기 제2 메모리에 전송하며,
    상기 제2 메모리에 축적되는 암호화 데이터가 상기 블록 단위 이상의 소정의 양에 도달하였을 때, 해당 소정의 양에 도달한 암호화 데이터를 상기 제1 메모리에 전송하는 것을 특징으로 하는 블록암호화 방법.
  2. 제 1 항에 있어서,
    상기 소정의 양은, 상기 블록 단위의 정수배의 단위인 것을 특징으로 하는 블록암호화 방법.
  3. 제 2 항에 있어서,
    상기 평문데이터는, 상기 블록 단위의 정수배의 단위로써 상기 제1 메모리로부터 상기 제2 메모리에 전송되는 것을 특징으로 하는 블록암호화 방법.
  4. 제 1 항에 있어서,
    상기 암호화처리는, 소정의 초기값 또는 1개 전의 블록이 암호화처리된 데이터에 근거하여 블록으로 분할된 상기 평문데이터를 연산처리한 후 암호화처리하는 것을 특징으로 하는 블록암호화 방법.
  5. 제1 메모리에 축적된 암호화 데이터를 제2 메모리에 전송하고, 전송된 상기 암호화 데이터를 상기 제2 메모리로부터 소정의 블록 단위로 복호회로에 전송하며,
    상기 복호회로로 상기 암호화 데이터를 상기 소정의 블록 단위로 복호처리하고,
    상기 복호처리된 평문데이터를 상기 제2 메모리에 전송하며,
    상기 제2 메모리에 축적되는 평문데이터가 상기 블록 단위 이상의 소정의 양에 도달하였을 때, 해당 소정의 양에 도달한 평문데이터를 상기 제1 메모리에 전송하는 것을 특징으로 하는 블록복호방법.
  6. 제 5 항에 있어서,
    상기 소정의 양은, 상기 블록 단위의 정수배의 단위인 것을 특징으로 하는 블록복호방법.
  7. 제 6 항에 있어서,
    상기 평문데이터는, 상기 블록 단위의 정수배의 단위로 상기 제1 메모리로부터 상기 제2 메모리에 전송되는 것을 특징으로 하는 블록복호방법.
  8. 제 5 항에 있어서,
    상기 복호처리는, 소정의 초기값 또는 1개 전의 블록이 복호처리된 데이터에 근거하여 블록으로 분할된 상기 평문데이터를 연산처리한 후 복호처리하는 것을 특징으로 하는 블록복호방법.
  9. 평문데이터를 축적하는 메모리와,
    상기 메모리에 축적된 평문데이터를 블록 단위로 암호화처리한 후, 해당 블록 단위로 암호화처리된 데이터를 상기 메모리에 전송하는 암호화수단과,
    상기 메모리에 전송된 상기 블록 단위로 암호화처리된 데이터가, 해당 블록 단위 이상의 소정의 양에 도달하였을 때, 해당 암호화처리된 데이터를 외부에 출력하는 출력수단으로 이루어지는 것을 특징으로 하는 블록암호화회로.
  10. 제 9 항에 있어서,
    상기 소정의 양은, 상기 블록 단위의 정수배의 단위인 것을 특징으로 하는 블록암호화회로.
  11. 제 9 항에 있어서,
    상기 암호화수단은, 소정의 초기값 또는 1개 전의 블록이 암호화처리된 데이터에 근거하여 블록으로 분할된 상기 평문데이터를 연산처리한 후 암호화처리하는 것을 특징으로 하는 블록암호화회로.
  12. 암호화 데이터를 축적하는 메모리와,
    상기 메모리에 축적된 암호화 데이터를 블록 단위로 복호처리한 후, 해당 블록 단위로 복호처리된 암호화 데이터를 상기 메모리에 전송하는 복호수단과,
    상기 메모리에 전송된 상기 블록 단위로 복호처리된 데이터가, 해당 블록 단위 이상의 소정의 양에 도달하였을 때, 해당 복호처리된 데이터를 외부에 출력하는 출력수단으로 이루어지는 것을 특징으로 하는 블록복호회로.
  13. 제 12 항에 있어서,
    상기 소정의 양은, 상기 블록 단위의 정수배의 단위인 것을 특징으로 하는 블록복호회로.
  14. 제 12 항에 있어서,
    상기 암호화수단은, 소정의 초기값 또는 1개 전의 블록이 복호처리된 데이터에 근거하여 블록으로 분할된 상기 암호화 데이터를 연산처리한 후 복호처리하는 것을 특징으로 하는 블록복호회로.
  15. 평문데이터를 축적하는 제1 메모리와,
    상기 제1 메모리로부터 전송된 데이터를 축적하는 제2 메모리와,
    상기 제2 메모리에 축적된 평문데이터를 블록 단위로 암호화처리한 후, 해당 블록 단위로 암호화처리된 데이터를 상기 제2 메모리에 전송하는 암호화수단과,
    상기 제2 메모리에 전송된 상기 블록 단위로 암호화처리된 데이터가, 해당 블록 단위 이상의 소정의 양에 도달하였을 때, 해당 암호화처리된 데이터를 상기 제1 메모리에 전송시키는 제어수단으로 이루어지는 것을 특징으로 하는 블록암호화장치.
  16. 암호화 데이터를 축적하는 제1 메모리와,
    상기 제1 메모리로부터 전송된 암호화 데이터를 축적하는 제2 메모리와,
    상기 제2 메모리에 축적된 암호화 데이터를 블록 단위로 복호처리한 후, 해당 블록 단위로 복호처리된 데이터를 상기 제2 메모리에 전송하는 복호수단과,
    상기 제2 메모리에 전송된 상기 블록 단위로 복호처리된 데이터가, 해당 블록 단위 이상의 소정의 양에 도달하였을 때, 해당 복호처리된 데이터를 상기 제1 메모리에 전송시키는 제어수단으로 이루어지는 것을 특징으로 하는 블록복호장치.
KR1020047008372A 2002-10-04 2003-09-25 블록 암호/복호방법, 회로 및 장치 Withdrawn KR20050069924A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2002-00291949 2002-10-04
JP2002291949A JP2004126323A (ja) 2002-10-04 2002-10-04 ブロック暗号方法、ブロック暗号回路、暗号装置、ブロック復号方法、ブロック復号回路および復号装置

Publications (1)

Publication Number Publication Date
KR20050069924A true KR20050069924A (ko) 2005-07-05

Family

ID=32063904

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020047008372A Withdrawn KR20050069924A (ko) 2002-10-04 2003-09-25 블록 암호/복호방법, 회로 및 장치

Country Status (6)

Country Link
US (1) US7529366B2 (ko)
EP (1) EP1548688A1 (ko)
JP (1) JP2004126323A (ko)
KR (1) KR20050069924A (ko)
CN (1) CN1290069C (ko)
WO (1) WO2004032097A1 (ko)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI115356B (fi) * 2001-06-29 2005-04-15 Nokia Corp Menetelmä audiovisuaalisen informaation käsittelemiseksi elektroniikkalaitteessa, järjestelmä ja elektroniikkalaite
FI115257B (fi) * 2001-08-07 2005-03-31 Nokia Corp Menetelmä informaation käsittelemiseksi elektroniikkalaitteessa, järjestelmä, elektroniikkalaite ja suoritinlohko
JP2006229863A (ja) * 2005-02-21 2006-08-31 Seiko Epson Corp 暗号化/復号化装置、通信コントローラ及び電子機器
JP4843531B2 (ja) * 2006-09-29 2011-12-21 富士通株式会社 暗号変換装置、暗号変換方法および暗号変換プログラム
US20080084995A1 (en) * 2006-10-06 2008-04-10 Stephane Rodgers Method and system for variable and changing keys in a code encryption system
JP4347351B2 (ja) * 2007-02-15 2009-10-21 富士通株式会社 データ暗号化装置、データ復号化装置、データ暗号化方法、データ復号化方法およびデータ中継装置
JP2009069686A (ja) * 2007-09-14 2009-04-02 Konica Minolta Business Technologies Inc 暗号化回路及び復号化回路
US8526602B2 (en) 2008-04-15 2013-09-03 Nec Corporation Adjustment-value-attached block cipher apparatus, cipher generation method and recording medium
EP2287824A1 (en) * 2008-06-04 2011-02-23 Panasonic Corporation Encryption device and encryption system
JP4906800B2 (ja) * 2008-07-02 2012-03-28 三菱電機株式会社 通信装置及び暗号通信システム及び通信方法及び通信プログラム
CN101355421B (zh) * 2008-09-25 2011-05-11 中国电信股份有限公司 分组加解密数据长度适配的方法
JP5228803B2 (ja) * 2008-10-30 2013-07-03 富士通セミコンダクター株式会社 共通鍵ブロック暗号におけるスワップ回路及び、それを有する暗号化・復号化回路
US9680637B2 (en) * 2009-05-01 2017-06-13 Harris Corporation Secure hashing device using multiple different SHA variants and related methods
US20130042112A1 (en) * 2011-02-12 2013-02-14 CertiVox Ltd. Use of non-interactive identity based key agreement derived secret keys with authenticated encryption
KR20170005850A (ko) * 2014-05-14 2017-01-16 미쓰비시덴키 가부시키가이샤 암호 장치, 기억 시스템, 복호 장치, 암호 방법, 복호 방법, 암호 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 및 복호 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체
CN105391543A (zh) * 2015-11-09 2016-03-09 中国电子科技集团公司第三十研究所 一种基于iSCSI网络存储的加密实现方法及实现系统
CN111052670B (zh) * 2017-09-01 2024-02-09 三菱电机株式会社 加密装置、解密装置、加密方法、解密方法和计算机能读取的存储介质
PL233991B1 (pl) * 2019-03-29 2019-12-31 Politechnika Opolska Układ szyfrowania danych
CN112035866B (zh) * 2020-11-04 2021-07-23 湖北芯擎科技有限公司 一种数据加密方法、装置、设备和计算机可读存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0719124B2 (ja) * 1986-09-17 1995-03-06 株式会社日立製作所 暗号装置
US5008935A (en) * 1989-06-30 1991-04-16 At&T Bell Laboratories Efficient method for encrypting superblocks of data
US6708273B1 (en) * 1997-09-16 2004-03-16 Safenet, Inc. Apparatus and method for implementing IPSEC transforms within an integrated circuit
CN100428751C (zh) * 2000-12-25 2008-10-22 松下电器产业株式会社 安全通信包处理装置及其方法

Also Published As

Publication number Publication date
WO2004032097A1 (ja) 2004-04-15
CN1602508A (zh) 2005-03-30
EP1548688A1 (en) 2005-06-29
CN1290069C (zh) 2006-12-13
JP2004126323A (ja) 2004-04-22
US7529366B2 (en) 2009-05-05
US20050031123A1 (en) 2005-02-10

Similar Documents

Publication Publication Date Title
KR20050069924A (ko) 블록 암호/복호방법, 회로 및 장치
US5513262A (en) Device for enciphering and deciphering, by means of the DES algorithm, data to be written to be read from a hard disk
US7444480B2 (en) Processor, memory device, computer system, and method for transferring data
JP4060271B2 (ja) コンテンツ処理装置およびコンテンツ保護プログラム
US8745411B2 (en) Protecting external volatile memories using low latency encryption/decryption
US20050154912A1 (en) Firmware encrypting and decrypting method and an apparatus using the same
JP2000236325A (ja) デジタルデータファイルの暗号化装置及びその方法
TW200903254A (en) Performing AES encryption or decryption in multiple modes with a single instruction
JP2004226969A (ja) 暗号システム及び多様なモードを支援する方法
JPH07281596A (ja) 暗号化方法およびシステム
KR101117588B1 (ko) 암호화 표시정보를 갖는 기록매체
JP2003152703A (ja) 暗号化装置、暗号化方法、復号化装置、復号化方法、暗号化復号化装置及び暗号化復号化方法
GB2398213A (en) Encryption using the KASUMI algorithm
CN100524150C (zh) 分组密码方法及分组加密/解密电路
KR20080112082A (ko) 데이터 암호화방법, 암호화데이터 재생방법
JP2001184787A (ja) 情報記録媒体、情報記録・再生装置、そして、情報記録・再生方法
JP4733793B2 (ja) 暗号化・復号化システム、暗号化装置、復号化装置、暗号化方法、復号化方法、およびプログラム
EP1625584A4 (en) DEVICE AND SYSTEM FOR DATA COPY PROTECTION AND METHOD DAF R
JP2004184566A (ja) Aesブロック暗号方法およびその暗号回路
JP3588593B2 (ja) 複製制御方法及び複製制御装置
JP2004184567A (ja) Aesブロック暗号方法およびその暗号回路
KR20010025564A (ko) 기록 매체 드라이브의 보안 장치 및 방법
JPH0744375A (ja) 暗号化データ処理装置
KR100321934B1 (ko) 무단 복제를 방지하기 위한 휴대용 저장매체를 갖는 시스템
JP2001119386A (ja) データ送受信装置、マルチメディアコンテンツ再生システム、携帯型音楽再生システム、据置型音楽再生システム及びパーソナルコンピュータ

Legal Events

Date Code Title Description
PA0105 International application

Patent event date: 20040601

Patent event code: PA01051R01D

Comment text: International Patent Application

PG1501 Laying open of application
PC1203 Withdrawal of no request for examination
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid