KR100355620B1 - 암호 통신 방법 및 장치 - Google Patents

암호 통신 방법 및 장치 Download PDF

Info

Publication number
KR100355620B1
KR100355620B1 KR1020017000028A KR20017000028A KR100355620B1 KR 100355620 B1 KR100355620 B1 KR 100355620B1 KR 1020017000028 A KR1020017000028 A KR 1020017000028A KR 20017000028 A KR20017000028 A KR 20017000028A KR 100355620 B1 KR100355620 B1 KR 100355620B1
Authority
KR
South Korea
Prior art keywords
key
sequence
permutations
integer multiple
symbol
Prior art date
Application number
KR1020017000028A
Other languages
English (en)
Other versions
KR20010074633A (ko
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 KR20010074633A publication Critical patent/KR20010074633A/ko
Application granted granted Critical
Publication of KR100355620B1 publication Critical patent/KR100355620B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04KSECRET COMMUNICATION; JAMMING OF COMMUNICATION
    • H04K1/00Secret communication
    • 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/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Storage Device Security (AREA)
  • Facsimile Transmission Control (AREA)
  • Telephonic Communication Services (AREA)

Abstract

시작 스페이스, 통신 채널, 및 통신 채널을 통하여 시작 스페이스와 연계된 목적지 스페이스를 포함하는 통신 시스템. 시작 스페이스는 입력 심볼(It)에 기초하여 출력 심볼(Ot)을 발생하기 위한 암호화 엔진 및 암호 키, 암호 텍스트/키 관계 및 입력 심볼을 수신하기 위한 수단을 포함한다. 목적지 스페이스는 통신 채널을 통하여 시작 스페이스로부터 수신된 출력 심볼에 기초하여 해독된 심볼(I't)을 발생하기 위한 해독 엔진 및 해독 키 및 해독 텍스트/키 관계를 수신하기 위한 수단을 포함한다. 암호 텍스트/키 관계는 OtN(t) + πNN-1(t) + πN-1N-2(t) + . . . + π21(t) + π1[It+ α0(t)]] . . .]], mod W 가 되도록 암호화 엔진을 제어하며, 여기서, αN, αN-1, . . . ,α1, α0는 암호 키에 의해 정의되는 N+1 부가 변환이며, πN, πN-1, . . . ,π2, π0는 암호 키에 의해 정의되는 N 순열이고, W는 암호 키에 의해 정의되는 각 순열에 대한 확률을 표시한다. 해독 텍스트/키 관계는 I't1 -12 -13 -1. . . [πN-1 -1N -1[Ot-α'N(t)]-α'N-1(t)]- . . . -α'3(t)]-α'2(t)]-α'1(t)]-α'0(t), mod W 가 되도록 해독 엔진을 제어하며, 여기서, πi -1는 순열(πi)의 역수로서 해독 키에 의해 정의되고, α'N, α'N-1, . . . ,α'1, α'0는 해독 키에 의해 정의되는 N+1 부가 변환이며, W는 해독 키에 의해 정의되는 각각의 역 순열에 대한 확률을 표시한다.

Description

암호 통신 방법 및 장치{CRYPTOGRAPHIC COMMUNICATION PROCESS AND APPARATUS}
현대 세계에서 많은 상이한 통신매체를 이용한 다양한 방법으로 당사자들 사이에 통신이 이루어지고 있다. 전자 통신이 정보를 전송하는 효율적인 방식으로 더욱더 대중화되어 가고 있고, 특히 전자 메일은 매체의 즉시성으로 인하여 급격히 늘어가고 있다.
불행하게도 특히 프라이버시 영역에서 전자 통신이 제공하는 이익은 단점을 동반하고 있다. 전자 통신은 의도하지 않은 수령인에 의해 인터셉트 당할 수 있다. 셀룰러폰에 의한 음성통신과 같은 무선통신과 전자 메일은 이러한 인터셉트에 특히 민감하다.
전자 통신 프라이버시의 문제가 역점을 두어 다루어져오고 있으며, 이 문제의 해법들이 제시되고 있다. 하나의 형태의 해법은 전자 통신에 프라이버시를 제공하기 위한 암호화를 사용하는 것이다. 암호화는 전송 또는 기억된 메시지의 암호화 또는 엔코딩과 수신 또는 검색된 메시지의 해독 또는 디코딩을 포함하는 것이다.이 메시지는 통상적으로 디지털 신호 또는 계수화된(digitized) 아날로그 신호의 형태를 갖는다. 만약 통신이 전송하는 도중에 인터셉트 당하거나 또는 승인되지 않은 엔티티(entity)에 의해 기억장치로부터 추출되는 경우 이 메시지는 암호화된 메시지를 해독하기 위한 수단을 갖고 있지 않는 인터로퍼(interloper)에게는 쓸모 없게 된다.
암호화를 이용하는 시스템에서 통신의 암호화측은 엔코딩 장치 또는 암호화 엔진을 포함한다. 엔코딩 장치는 원문(암호화되지 않은) 메시지와 암호화키를 받아들여서 원문 통신과 키에 대하여 미리 결정된 암호화 관계(encrypt relation)에 따라 키를 가지고 원문 메시지를 암호화한다. 즉, 메시지는 텍스트/키 관계에 따라 정해지는 미리 결정된 방식으로 키에 따라 조정되어 암호문(암호화된) 메시지를 생성한다.
유사하게 통신의 해독측은 디코딩 장치 또는 해독 엔진을 포함한다. 디코딩 장치는 암호문 메시지와 암호화키를 받아들여 암호문 메시지와 키에 대하여 미리 결정된 해독 관계에 따라 키를 가지고 암호문 메시지를 해독한다. 즉, 메시지는 텍스트/키 관계에 따라 정해지는 미리 결정된 방식으로 키에 따라 조정되어 원래의 원문 메시지에 대응하는 새로운 원문 메시지를 생성한다.
통신 절차에 키와 관계(relation)가 적용되는 방식과 키가 관리되는 방식이 암호화 스킴(scheme)을 정의한다. 많은 종래의 암호화 스킴이 현재 사용되고 있다. 예를들어, 아마도 이들 중 가장 인기 있는 것은 공용키(public key) 암호화 스킴이다. 이 스킴에 따르면 사용되는 키는 실제로 누구에게나 또는 대 그룹의 엔티티에유용한 공용키 요소와 특정 통신에 특유한 개인키(private key) 요소의 조합으로 된다.
특정 암호화 스킴이 적용에 적합한 지를 결정하는데 중요한 고려사항은 암호화를 깨는데 필요한 난이도, 즉 승인되지 않은 사람이 암호화된 메시지를 해독하는 데 요구되는 노력의 양이다. 승인되지 않은 사람이 시스템의 암호화를 깨기 위하여 끊임없이 시도하는 다수의 방법이 있다. 암호화 시스템에 대한 3개의 가장 인기 있는 공격은 키 소모 공격(시행 착오)과, 차등 암호분석 및 대수적 공격이다. 좀더 복잡한 텍스트/키 관계와 더 긴 키를 선택하는 것이 공격에 좀더 약점이 없는 암호화 스킴을 만드는 2개의 방법이나, 이는 더욱더 값비싸고 속도가 느린 시스템이 되게 한다. 따라서, 현명한 암호화 스킴은 성공적인 공격을 피하도록 수정되지 않는 한 제공될 프라이버시의 레벨을 결정할 때 트레이드오프(tradeoff)가 이루어져야 한다.
일단 암호화를 수행하는 스킴이 선택되어 특정 어플리케이션의 제한에 적용되면 텍스트/키 관계는 항상 암호화가 공격을 깨트리는 데 얼마나 성공적인 지를 결정하는 요인이 된다. 이는 교대로 통신의 상대방이 그들의 통신이 비밀로 존재할거라는 것을 갖게 하는 신뢰성에 영향을 미친다.
본 발명은 암호화 시스템에 관한 것이다. 특히, 본 발명은 원문 메시지를 암호화하고 암호문 통신을 해독하기 위한 시스템에 관한 것이다.
본 발명의 이들 및 다른 목적, 특징 및 이점은 바람직한 그러나 제한되지 않는 실시예를 포함하는 다음의 상세한 설명을 통하여 명확하게 될 것이다. 첨부도면을 참고한 설명이 이루어진다:
도 1은 통신 이벤트 특징 암호화의 블록도를 보여준다.
도 2는 본 발명의 텍스트/키의 구현을 보여주는 블록도이다.
따라서 본 발명은 전자 통신의 프라이버시를 보호하기 위한 방법과 장치를 제공하는 데 있다.
본 발명의 다른 목적은 디지털 데이터를 엔코딩 및 디코딩하기 위한 방법 및장치를 제공하는 데 있다.
본 발명의 일 실시예는 시작 스페이스, 통신 채널, 및 통신 채널을 통하여 시작 스페이스와 연계된 목적지 스페이스를 포함하는 통신 시스템을 포함한다. 시작 스페이스는 입력 심볼(It)에 기초하여 출력 심볼(Ot)을 발생하기 위한 암호화 엔진 및 암호 키, 암호 텍스트/키 관계 및 입력 심볼을 수신하기 위한 수단을 포함한다. 목적지 스페이스는 통신 채널을 통하여 시작 스페이스로부터 수신된 출력 심볼에 기초하여 해독된 심볼(I't)을 발생하기 위한 해독 엔진 및 해독 키 및 해독 텍스트/키 관계를 수신하기 위한 수단을 포함한다.
암호 텍스트/키 관계는 OtN(t) + πNN-1(t) + πN-1N-2(t) + . . . + π21(t) + π1[It+ α0(t)]] . . .]], mod W 가 되도록 암호화 엔진을 제어하며, 여기서, αN, αN-1, . . . ,α1, α0는 암호 키에 의해 정의되는 N+1 부가 변환이며, πN, πN-1, . . . ,π2, π0는 암호 키에 의해 정의되는 N 순열이고, W는 암호 키에 의해 정의되는 각 순열에 대한 확률을 표시한다.
해독 텍스트/키 관계는 I't1 -12 -13 -1. . . [πN-1 -1N -1[Ot-α'N(t)]-α'N-1(t)]- . . . -α'3(t)]-α'2(t)]-α'1(t)]-α'0(t), mod W 가 되도록 해독 엔진을 제어하며, 여기서, πi -1는 순열(πi)의 역수로서 해독 키에 의해 정의되고,α'N, α'N-1, . . . ,α'1, α'0는 해독 키에 의해 정의되는 N+1 부가 변환이며, W는 해독 키에 의해 정의되는 각각의 역 순열에 대한 확률을 표시한다.
이 실시예의 일 특징에 따르면, 암호화 엔진은 가능한 W 세트의 순열 각각을 기억하기 위한 W 탐색 테이블을 더 포함한다. 이 실시예의 다른 특징에 따르면, 암호화 엔진은 가능한 W 세트의 순열 중 M 유용한 세트를 기억하기 위한 M<W 탐색 테이블을 더 포함한다. 이 실시예의 다른 특징에 따르면, 암호화 엔진은 가능한 W 세트의 순열 중 M 유용한 세트로부터 미리 선택된 N 세트의 순열을 기억하기 위한 N<M<W 탐색 테이블을 더 포함한다.
이 실시예의 다른 특징에 따르면, α(t)는 스텝 함수이다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 증분시킨다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 감소시킨다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 증분시킨다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 감소시킨다. 이 실시예의 다른 특징에 따르면, I't는 It에 대응한다.
본 발명의 다른 실시예는 시작 스페이스, 통신 채널 및 통신 채널을 통하여 시작 스페이스와 연계된 목적지 스페이스로 구성된다. 시작 스페이스는 입력 심볼(It), 암호 키 및 암호 텍스트/키 관계를 수신하기 위한 수신기, 및 암호 텍스트/키 관계에 따라 제어 가능하며 OtN(t) + πNN-1(t) + πN-1N-2(t) + . . . + π21(t) + π1[It+ α0(t)]] . . .]], mod W 가 되도록 입력 심볼에 기초하여 출력 심볼(Ot)을 발생하기 위한 암호화 엔진을 포함하고, 여기서, αN, αN-1, . . . ,α1, α0는 암호 키에 의해 정의되는 N+1 부가 변환이며, πN, πN-1, . . . ,π2, π0는 암호 키에 의해 정의되는 N 순열이고, W는 암호 키에 의해 정의되는 각 순열에 대한 확률을 표시한다.
목적지 스페이스는 해독 키 및 해독 텍스트/키 관계를 수신하기 위한 수신기 및 I't1 -12 -13 -1. . . [πN-1 -1N -1[Ot-α'N(t)]-α'N-1(t)]- . . . -α'3(t)]-α'2(t)]-α'1(t)]-α'0(t), mod W 가 되도록 통신 채널을 통하여 시작 스페이스로부터 수신된 출력 심볼에 기초하여 해독된 심볼(I't)을 발생하기 위해 제어 가능한 해독 엔진을 포함하며, 여기서, πi -1는 순열(πi)의 역수로서 해독 키에 의해 정의되고, α'N, α'N-1, . . . ,α'1, α'0는 해독 키에 의해 정의되는 N+1 부가 변환이며, W는 해독 키에 의해 정의되는 각각의 역 순열에 대한 확률을 표시한다.
이 실시예의 일 특징에 따르면, 암호화 엔진은 가능한 W 세트의 순열 각각을 기억하기 위한 W 탐색 테이블을 더 포함한다. 이 실시예의 다른 특징에 따르면, 암호화 엔진은 가능한 W 세트의 순열 중 M 유용한 세트를 기억하기 위한 M<W 탐색 테이블을 더 포함한다. 이 실시예의 다른 특징에 따르면, 암호화 엔진은 가능한 W 세트의 순열 중 M 유용한 세트로부터 미리 선택된 N 세트의 순열을 기억하기 위한 N<M<W 탐색 테이블을 더 포함한다.
이 실시예의 다른 특징에 따르면, α(t)는 스텝 함수이다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 증분시킨다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 감소시킨다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 증분시킨다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 감소시킨다. 이 실시예의 다른 특징에 따르면, I't는 It에 대응한다.
본 발명의 다른 실시예는 제1컴퓨터, 통신 채널 및 통신 채널을 통하여 제1컴퓨터와 결합된 제2컴퓨터로 구성된다. 제1컴퓨터는 입력 심볼(It)을 수신하기 위한 심볼 입력 포트, 암호 키를 수신하기 위한 암호 키 입력 포트, 암호 텍스트/키 관계를 저장하기 위한 제1메모리 및 암호 텍스트/키 관계에 따라 제어 가능하며 OtN(t) + πNN-1(t) + πN-1N-2(t) + . . . + π21(t) + π1[It+ α0(t)]] . . .]], mod W 가 되도록 입력 심볼에 기초하여 출력 심볼(Ot)을 발생하기 위한 제1마이크로컴퓨터를 포함하고, 여기서, αN, αN-1, . . . ,α1, α0는 암호 키에 의해 정의되는 N+1 부가 변환이며, πN, πN-1, . . . ,π2, π0는 암호 키에 의해 정의되는 N 순열이고, W는 암호 키에 의해 정의되는 각 순열에 대한 확률을 표시한다.
제2컴퓨터는 해독 키를 수신하기 위한 해독 키 입력 포트, 해독 텍스트/키 관계를 저장하기 위한 제2메모리 및 I't1 -12 -13 -1. . . [πN-1 -1N -1[Ot-α'N(t)]-α'N-1(t)]- . . . -α'3(t)]-α'2(t)]-α'1(t)]-α'0(t), mod W 가 되도록 해독 텍스트/키 관계에 의해 제어되어 통신 채널을 통하여 시작 스페이스로부터 수신된 출력 심볼에 기초하여 해독된 심볼(I't)을 발생하기 위한 제2마이크로프로세서를 포함하며, 여기서, πi -1는 순열(πi)의 역수로서 해독 키에 의해 정의되고, α'N, α'N-1, . . . ,α'1, α'0는 해독 키에 의해 정의되는 N+1 부가 변환이며, W는 해독 키에 의해 정의되는 각각의 역 순열에 대한 확률을 표시한다.
이 실시예의 일 특징에 따르면, 제1컴퓨터는 가능한 W 세트의 순열 각각을 기억하기 위한 W 탐색 테이블을 더 포함한다. 이 실시예의 다른 특징에 따르면, 제1컴퓨터는 가능한 W 세트의 순열 중 M 유용한 세트를 기억하기 위한 M<W 탐색 테이블을 더 포함한다. 이 실시예의 다른 특징에 따르면, 제1컴퓨터는 가능한 W 세트의 순열 중 M 유용한 세트로부터 미리 선택된 N 세트의 순열을 기억하기 위한 N<M<W 탐색 테이블을 더 포함한다.
이 실시예의 다른 특징에 따르면, α(t)는 스텝 함수이다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 증분시킨다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 감소시킨다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 증분시킨다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 감소시킨다. 이 실시예의 다른 특징에 따르면, I't는 It에 대응한다.
본 발명은 시작 스페이스와 목적지 스페이스 사이의 통신방법을 또한 제공한다. 통신방법은 시작 스페이스에서 입력 심볼(It)을 수신하는 단계 및 OtN(t) +πNN-1(t) + πN-1N-2(t) + . . . + π21(t) + π1[It+ α0(t)]] . . .]], mod W 가 되도록 입력 심볼에 기초하여 출력 심볼(Ot)을 발생하는 단계를 포함하며, 여기서, αN, αN-1, . . . ,α1, α0는 암호 키에 의해 정의되는 N+1 부가 변환이며, πN, πN-1, . . . ,π2, π0는 암호 키에 의해 정의되는 N 순열이고, W는 암호 키에 의해 정의되는 각 순열에 대한 확률을 표시한다.
출력 심볼은 그후 목적지 스페이스에서 수신되며, 해독된 심볼(I't)은 I't1 -12 -13 -1. . . [πN-1 -1N -1[Ot-α'N(t)]-α'N-1(t)]- . . . -α'3(t)]-α'2(t)]-α'1(t)]-α'0(t), mod W 가 되도록 수신된 출력 심볼에 기초하여 발생되며, 여기서, πi -1는 순열(πi)의 역수로서 해독 키에 의해 정의되고, α'N, α'N-1, . . . ,α'1, α'0는 해독 키에 의해 정의되는 N+1 부가 변환이며, W는 해독 키에 의해 정의되는 각각의 역 순열에 대한 확률을 표시한다.
통신방법의 다른 특징에 따르면, 출력 심볼을 발생하기 전에 가능한 W 세트의 순열이 W 탐색 테이블로부터 검색된다. 통신방법의 다른 특징에 따르면, 출력 심볼을 발생하기 전에 가능한 W 세트의 순열 중 M 유용한 세트가 M<W 탐색 테이블로부터 검색된다. 통신방법의 다른 특징에 따르면, 출력 심볼을 발생하기 전에 가능한 W 세트의 순열 중 M 유용한 세트로부터 미리 선택된 N 세트의 순열이 N<M<W 탐색 테이블로부터 검색된다.
통신방법의 다른 특징에 따르면, α(t)는 스텝 함수이다. 통신방법의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}가 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 증분시키는데 사용된다. 통신방법의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}가 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 감소시키는데 사용된다. 통신방법의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}가 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 증분시키는데 사용된다. 통신방법의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}가 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 감소시키는데 사용된다. 통신방법의 다른 특징에 따르면, I't는 It에 대응한다.
본 발명의 다른 실시예는 인터페이스, 및 OtN(t) + πNN-1(t) + πN-1N-2(t) + . . . + π21(t) + π1[It+ α0(t)]] . . .]], mod W 가 되도록 출력 심볼(Ot)을 발생하기 위하여 인터페이스를 통하여 마이크로프로세서를 제어하기 위한 콘트롤러를 포함하는 자기 기억매체를 포함하며, 여기서, It는 입력 심볼이고, αN, αN-1, . . . ,α1, α0는 키에 의해 정의되는 N+1 부가 변환이며, πN, πN-1, . . . ,π2, π0는 키에 의해 정의되는 N 순열이고, W는 키에 의해 정의되는 각순열에 대한 확률을 표시한다.
이 실시예의 다른 특징에 따르면, α(t)는 스텝 함수이다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 증분시킨다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 감소시킨다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 증분시킨다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 감소시킨다. 이 실시예의 다른 특징에 따르면, I't는 It에 대응한다.
본 발명의 다른 실시예는 인터페이스, 및 I't1 -12 -13 -1. . . [πN-1 -1N -1[OtN(t)]-αN-1(t)]- . . . -α3(t)]-α2(t)]-α1(t)]-α0(t), mod W 가 되게 발생된 심볼(I't)을 생성하도록 인터페이스를 통하여 마이크로프로세서를 제어하기 위한 콘트롤러를 포함하는 자기 기억매체를 포함하며, 여기서, Ot는 수신된 심볼이고, αN, αN-1, . . . ,α1, α0는 키에 의해 정의되는 N+1 부가 변환이며,π1 -12 -13 -1. . . ,πN-1 -1N -1는 키에 의해 정의되는 N 역 순열이고, W는 키에 의해 정의되는 각각의 역 순열에 대한 확률을 표시한다.
이 실시예의 다른 특징에 따르면, α(t)는 스텝 함수이다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 증분시킨다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 감소시킨다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 증분시킨다. 이 실시예의 다른 특징에 따르면, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 감소시킨다. 이 실시예의 다른 특징에 따르면, I't는 It에 대응한다.
도 1을 참고하면, 통신은 시작 스페이스(origination space)(2)와 목적지 스페이스(destination space)(4)를 갖는다. 시작 스페이스(2)는 통신이 시작되는 장소와 시간을 정의한다. 목적지 스페이스(4)는 통신이 디코딩되거나 또는 디코딩될 장소와 시간을 정의한다. 시작 스페이스(2)와 목적지 스페이스(4)는 위치적으로 원거리에 위치할 수 있다. 이와 반대로 이들은 한곳에 배치되나 시간적으로 차이가 날 수 있다. 시작 스페이스(2)와 목적지 스페이스(4) 사이에 스페이스와 시간 대응은 특정 통신의 성질에 영향을 받는다. 시작 스페이스(2)와 목적지 스페이스(4)는 공통 통신 채널(6)로 연계되어 있다. 이 통신 채널(6)은 셀룰러 음성 전화호출의 경우에 빈 공기와 같은 물리적인 스페이스를 연결한다. 이와 다르게 통신 채널(6)은 시작 스페이스(2)와 목적지 스페이스(4) 사이에 시간이 흐른 동안에 통신에 대한 임시 기억장치가 될 수 있으며, 이 경우 제1사용자가 컴퓨터 상의 메모리에 남긴 메시지는 제2사용자가 동일한 컴퓨터 상에서 그후의 시간에 판독할 수 있다. 또한 통신 채널(6)은 전자 메일 전송의 경우 전화 케이블과 기억 메모리와 같은 2가지의 조합일 수 있다.
시작 스페이스(2)에서는 오리지널 원문 메시지(8)를 수신하여 제공된 암호 키(10)를 사용하여 암호문 메시지(16)를 생성하기 위하여 암호 텍스트/키 관계(14)에 따라 암호화한다. 암호문 메시지(16)는 통신 채널(6)을 통하여 목적지 스페이스(4)에 수신된다. 적절한 해독 키(20)를 갖는 인증된 엔티티는 그후 목적지스페이스(4)에 해독 키(20)를 제공할 수 있으며, 그것은 해독 텍스트/키 관계(20)에 따라 암호문 메시지(16)에 적용되어 오리지널 원문 메시지(8)에 대응하는 새로운 원문 메시지(24)를 생성한다.
시작 스페이스(2)와 목적지 스페이스(4)는 예를들어, 컴퓨터 또는 동일한 컴퓨터일 수 있다. 예를들어 컴퓨터는 텍스트/키 관계를 기억하기 위한 메모리 형태의 일정량의 기억 스페이스를 가질 수 있다. 사용자에 의해 제공되는 오리지널 원문과 키를 기억하기 위한 램(RAM)과 제어 조직과 함께 마이크로프로세서 또는 유사한 콘트롤러가 각각의 스페이스에 포함되어 암호화/해독 엔진의 기능을 수행할 수 있다.
키보드, 플로피 디스크 드라이브, CD-ROM 드라이브, 바이오메트릭스 리더, 또는 가시 광신호 소스의 형태 기능을 읽을 수 있는 장치와 같은 입력장치(26,28)가 또한 시작지 사용자로부터 키와 원문 메시지 그리고 목적지 사용자로부터 키를 받아들이도록 제공될 수 있다. 목적지 스페이스(4)에서는 모니터, 디스크 드라이브 또는 오디오 스피커와 같은 출력장치(30)가 또한 목적지 사용자에게 새로운 원문 메시지를 제공하도록 구비될 수 있다. 텍스트/키 관계는 컴퓨터의 하드 기억장치보다는 플로피 디스크 또는 다른 영구 또는 임시 포터블 기억장치에 기억될 수 있으며, 이는 상이한 텍스트/키 관계가 상이한 사용자들에 의해 또는 상이한 상황에서 적용되는 것을 가능하게 한다.
본 발명의 텍스트/키 관계는 N+1의 부가 변환(Additive Transformation)과 함께 N 세트의 순열(Permutation)의 비월 관계(interlaced relationship)에 기초를두고 있다. 입력 통신이 블록으로 암호화될 때 t 블록으로 구성된 입력 평문 메시지(It)는 관계에 따라 암호화되어 출력 암호문 메시지(Ot)를 발생한다. 순열, 부가 변환의 초기값 및 텍스트/키 관계의 다른 파라미터는 키에 의해 결정된다.
도 2에 도시된 바와같이 본 발명의 텍스트/키 관계에 따른 맵핑은 다음과 같이 입력 심볼(symbol)(It)로부터 출력 심볼(Ot)을 생성한다.
Ot=Ft(It)=αN(t) + πNN-1(t) + πN-1N-2(t) + . . . + π21(t) + π1[It+ α0(t)]] . . .]], mod W
여기서, αN, αN-1, . . . ,α1, α0는 N+1 부가 변환, πN, πN-1, . . . ,π2, π0은 N 순열, W는 각 순열에 대한 확률을 표시한다. 즉, 입력 심볼(symbol)(It)은 α0(t)에 모듈로-W(modulo-W) 가산되고, 그 결과는 순열 테이블(π1)에서 탐색된다. π1탐색으로부터 출력은 α1(t)에 모듈로-W 가산된다. 단계(t)에서 입력 심볼(It)의 맵핑은 출력 심볼(Ot)을 발생하는데 사용된다.
대응하는 해독 동작(Ft -1)은 단계(t)에서 입력 심볼(It)이 출력 심볼(Ot)로부터 유도되는 것을 필요로 한다. 이것은 다음과 같이 수행된다:
It=F-1(Ot)=π1 -12 -13 -1. . . [πN-1 -1N -1[OtN(0)]-αN-1(0)]- . . . -α3(0)]-α2(0)]-α1(0)]-α0(0), mod W
여기서, πi -1는 순열(πi)의 역수이다.
즉, αN(0)는 출력 심볼(Ot)로부터 모듈로-W 감산되며, 그 결과는 πN -1순열 테이블에서 탐색된다. αN-1(0) 탐색 결과는 이 결과로부터 모듈로-W 감산되어 πN-1 -1등에서 탐색된다.
순열(π1, π2, . . . , πN-1, πN)은 π에 대한 W! 확률로 귀착되는 스페이스(0-W)에 대하여 취하여진다. 실제로 π에 대한 W! 확률 테이블 중 작은 수(M)가 사용자에게 유용하게 될 수 있으며, 특정한 N 테이블이 키에서의 정보에 기초하여 결정된 상태로 작은 수(N)가 특정한 암호주기를 위해 선택될 수 있다. 일단 N 순열이 선정된 경우 각 순열을 처음으로 적용하는 시작점은 키에서의 정보에 의해 제공된다.
부가 변환(α01, . . . , αN-1N)은 다음 순열이 탐색되기 전에 순열이 어떻게 스텝될 것인 지를 결정하는 값이 된다. 부가 변환에 의해 제공되는 증분 함수는 카운트 종속 또는 가치 종속이 될 수 있다. 예를들어, 카운트 종속 부가 변환은 R이 바람직하게는 큰 소수(prime number)일 때 암호화 처리를 하는 동안 매 R번째마다 한번씩 다음의 순열 테이블의 시퀀스를 증분시키도록 제공될 수 있다. 다른 카운트 종속 부가 변환은 J가 바람직하게는 상이하게 큰 소수일 때 암호화 처리를 하는 동안 매 J번째마다 한번씩 다음의 순열 테이블의 시퀀스를 증분시키도록 제공될 수 있다.
또 다른 카운트 종속 부가 변환은 주저, 즉 L이 바람직하게는 상이하게 큰 소수일 때 암호화 처리를 하는 동안 매 L번째를 제외하고 암호화 처리를 하는 동안 매 시간마다 한번씩 다음의 순열 테이블의 시퀀스를 증분시키도록 제공될 수 있다. 가치 종속 부가 변환은 예를들어, 종전의 순열 테이블 또는 종전의 심볼로부터의 종전 출력값에 따라 다음의 순열 테이블의 시퀀스를 증분시킬 수 있다. 이 값은 다음 시퀀스가 증분될 것인 지를 판단할 뿐 아니라 증분되는 정도를 판단하는 데 사용될 수 있다.
제한되지 않는 예로서, 8 순열과 9 부가 변환을 갖는 특정 텍스트/키 관계를 설명한다. 8 순열(Π=π1, π2, π3, π4, π5, π6, π7, π8)이 오리지널 원문 메시지의 256 심볼 블록의 심볼(0,1,2,??, 255)에 대하여 실행된다. 이 예에서 8 순열은 기억된 25 순열 세트로부터 선택되며 예를들어, 암호화 키에서 첫 번째 8 심볼에 의해 결정된다. 관계(relation)의 단계(t)에서 이용되는 9 부가 변환은 A(t)=α0(t),α1(t),α2(t),α3(t),α4(t),α5(t),α6(t),α7(t),α8(t) 로 지정된다. t=0에서 초기값(A(0))은 예를들어, 암호화 키에서 첫 번째 8심볼에 의해 결정된다. 이 예에서 텍스트/키 관계의 각 적용의 말미에 부가 변환(A(t))은 결정론적으로 변형되나, 키가 변경될 때까지 선택된 8순열은 동일한 자리에 남아 있게 된다. A(t)를 변경하는 절차는 텍스트/키 관계의 다른 모드로 변화한다.
A(t)를 변경하는 예시적인 프로세스는 블록 암호 모드의 부분으로서 다음과설명된다. S(t)=S4(t),S3(t),S2(t),S1(t)은 암호화될 것으로 시간(t)에서 4-심볼 원문 입력을 나타낸다. 시간 i=0에서 원문의 초기값(S(0))은 4 심볼 입력 워드이다.
I(0)=I4(0),I3(0),I2(0),I1(0);즉, Sj(0)=Ij(0), j=1,??,4
i=0,??,15 인 경우(16) 라운드의 암호화가 이 예의 각 데이터 블록에 실행된다), S(t+1)가 예를들어, 상태(S(t))로부터 다음과 같이 계산된다:
S4(t+1)=Ft(S1(t))
S3(t+1)=S4(t+1)
S2(t+1)=S3(t+1)
S1(t+1)=Ft(S1(t))+S2(t)
여기서, Ft는 Π에 의해 정의되는 t번째 F함수이다. A(t)=α0(t),α1(t),α2(t),α3(t),α4(t),α5(t),α6(t),α7(t),α8(t) 이며 다음과 같이 발생된다.
만약 키로부터 A(T), t=1,2,3, . . ., 16을 발생하기 위하여 사용되는 Π, A(0) 및 X(4),X(3),X(2),X(1)가 주어진 경우 블록 암호의 36 4-심볼 출력 워드가 계산된다. 이러한 전체 프로세스 동안 키로부터 세팅(A(0))이 텍스트/키 관계에 사용되며 이는 변경되지 않는다.
이것은 전체 144 심볼을 생성하며, 이는 그후 16 9-심볼 시퀀스(A(1),??,A(16))로 다음과 같이 분할된다:
A(1)=첫번째 9 출력 심볼
A(2)=두번째 9 출력 심볼
??
A(16)=마지막 9 출력 심볼
이러한 A(1),??,A(16)의 계산은 키가 로딩될 때 수행되는 것이 바람직하다. 이것은 통신의 처리를 더욱더 빠르게 하며 기억장치의 필요량을 최소화하게 한다.
시간 t=16일 때 암호문 출력(S(16))은 출력(O(0)), 즉 입력 워드(I(0))는
S(16)=S4(16),S3(16),S2(16),S1(16)=O(0)=O4(0),O3(0),O2(0),O1(0)
시퀀스(A(1),A(2),??,A(16))는 블록 암호 모드를 암호화하기 위하여 16 순열을 정의하는데 사용되는 부가항(Additives) 세트이다. 출력을 해독하기 위하여 역 순열과 부가항이 역순으로 즉, A(16),A(15),??,A(1)와 같이 사용된다.
블록 암호 모드의 보안은 텍스트/키 관계 및 반복된 비선형 피드백 함수의 암호해석 저항 혼합 성질의 보안에 달려 있다. 텍스트/키 관계는 W 원소에 대한 W! 순열의 풀 세트로부터 선택된 M 순열 세트에서 선택되는 N 랜덤 선택 순열의 곱(product)으로 구성되는 심볼 순열로 이루어진다. n 순열은 결정론(deterministic)에 따라 변경되나, 알려지지 않은, 함수의 각각의 적용에 따라 정해진다. 따라서, 동일한 심볼이 단일 블록의 처리 내에서 2개의 다른 라운드에서 텍스트/키 관계로 제공될지라도 그 심볼에 적용되는 순열은 1/W의 확률에 따라 단지 동일하게 될 수 있다. 이것은 블록 암호의 전체 라운드 수 사이에 불확실성을 최대화한다.
이 시스템에서 텍스트/키 관계의 사용은 공격을 매우 어렵게 한다. 입력이 랜덤한 성분을 가지며 길이로 제한된다. 출력은 결과적으로 고정 길이 출력으로부터 서브셋(subset) 비트로 제한된다. 따라서, 누구라도 입력-출력 워드를 맞추기 어려우며, 이 입력-출력 워드는 본 발명의 암호 블록과 같이 복잡한 관계를 해석하는 것이 정상적으로는 필요하다. 더욱이, 키는 예를들어, 30 마다 주기적으로 변경될 수 있으며, 단일 키를 사용하여 처리되는 입력 수는 제한된다. 따라서, 비교적 작은 수의 함수 값으로 결합된 규칙적인 함수 관계의 불완전 성질은 본 발명의 블록 암호의 암호해석을 매우 어렵게 만든다.
블록 암호 모드의 처리 라운드 수(예; 16)는 레지스터 내용의 비 선형 혼합을 최대화하도록 선택될 수 있다. 이는 각 레지스터의 데이터가 텍스트/키 관계에 따라 매우 큰 회수로 처리되는 것을 보장한다. 예를들어, 단계(1)에서 초기 심볼은 16 라운드 처리 각각에 대하여 텍스트/키 관계에 따라 조정되나, 반면에 레지스터의 단계(4)의 초기 및 텍스트/키 관계에 따라 처리될 마지막 심볼은 12번 조정된다. 따라서, 블록 암호 레지스터 각 단계의 내용은 출력을 입력에 관련시켜 주는 매우 많이 중첩된 비선형 함수이다.
피드백의 구성은 적어도 2 가지 이로운 효과를 야기한다. 첫째로 선형 요소가 존재하는 어떤 비-무작위성을 감소시킨다. 둘째로 피드백의 위치가 비선형 시프트 레지스터로 차이를 빠르게 도입하며 랜덤하게 예상하는 것과 동일한 확률을 갖고 일단 차이가 나타나는 경우 그들을 유지한다. 다른 심볼이 단계(1)에서 처리를 위해 제공되자마자 텍스트/키 관계가 불확실성을 갖고 다음 단계에서 레지스터의단계(4)에서 차이를 판단하며 또한 레지스터의 단계(1)에 차이를 확률적으로 설정한다. 따라서, 레지스터의 단계(1)에서 단일 차이는 다음 단계의 블록 암호 처리시에 높은 확률로 그 자신을 증배시키는 효과가 있다.
더욱이, 항상 취소의 확률이 존재하나 선택된 블록 암호 구성에서는 이러한 사건발생 확률은 랜덤한 경우와 동일하다. 형태(DSSS)의 레지스터의 초기 구성, 즉 레지스터의 다른 3 단계들은 동일한 내용을 포함하는 반면에 레지스터의 단계(4)의 초기상태는 상이한 심볼을 포함하는 2 다른 기회를 고려하여야 한다. 이 구성은 텍스트/키 관계가 적용되기 전에 최대의 지연이 이루어진다. 그후 텍스트/키 관계의 각 단계는 순열이므로, 단계(6)의 블록 암호 처리에서 레지스터의 내용은 확률 p=1일 때 DDDD이다. 단계(10)의 처리에서 레지스터의 내용은 랜덤시에 사람들이 예상하는 단지 (1/2)32의 확률일 때 SSSS이다. 그러나, 출력이 생성되기 전에 그 점에서 가야할 6 단계가 아직 존재한다. 임의의 다른 초기 입력 구성은 프로세스에서 더욱더 빨리 차이를 도입할 것이다. 따라서, 이러한 설계는 차등 암호해석 기술에 대하여 안전하다.
만약 예를들어, 시스템의 M=25 기본 순열이 선택되는 256 요소 중에서 전체 W=256! 순열이 존재하는 경우 25 기본 순열의 세트 수는 약 엄청난 수인 W25/M!이다. 그러나 순열의 세트를 알려진 것으로 고려할지라도 키의 수는 아직 너무 크다. 만약 8 순열이 변위되는 25 순열로부터 선택되는 경우 순열의 가능 세트 수는 약 258=1011이 된다. 이제 블록 암호를 위해 필요한 16 선형 부가항은 고정된 알려지지않은 부가항이 72비트 시퀀스로 정의된 상태에서 레지스터의 알려지지 않은 32비트 초기 상태에 따라 동작하는 블록 암호에 의해 발생된다. 이는 부가적으로 2104=1031확률을 제공한다. 알려진 25 순열 세트에 대한 전체 키 스페이스는 1042정도이다. 이는 소모적인 키 검색을 다음 세기까지 막을 수 있고 또한 지름길 암호해석 공격을 저항할 수 있는 충분히 큰 키 스페이스이다.
키 변수가 선택되는 256 요소에 대한 기본 세트 순열의 선택에 부가하여 인증 목적으로 독창성을 제공하는 블록 암호의 많은 변수가 존재한다. 이들 변수 각각은 성능 충격과 보안 충격을 갖고 있다. 예를들어, 비선형 레지스터의 길이는 더 길거나 또는 더 짧은 도전을 수용하도록 변경될 수 있다. 레지스터에 대한 비선형 피드백은 변경될 수 있고 또한 레지스터의 증분의 라운드 수는 변화성을 얻도록 변경될 수 있다. 블록 암호 처리동안 부가항 세트를 발생하기 위한 기술은 그들이 블록 암호 모드 자체에 관련이 없도록 변경될 수 있다.
본 발명의 텍스트/키 관계의 블록 암호 모드의 견고성을 알기 위하여 세상에 암호 해석 문헌에 알려진 3 가지의 가장 전형적인 공격방법을 설명한다. 이들 방법은 키 소모 또는 시행착오 공격; 차등 암호해석 및 대수학적 공격이다.
키 소모 공격은 모든 가능한 비트 조합이 잠재 키로서 발생되어 유효 키를 우연히 생성하도록 시도하여 시스템에 적용되는 무식한 방법이다. 여기에는 8 순열(π12345678)에 대한 25×24×23×22×21×20×19×18× =43,609,104,000 = 1010.64가능한 선택이 존재하며 초기 부가항 변환에 대한 9 심볼(A(0))에 대한 2569=1021.67가능한 선택이 존재한다. 끝으로 A(t), t=1,2,3, . . . , 16을 개발하기 위하여 사용되는 초기 키 충전값(X(1),X(2),X(3),X(4))에 대한 2564= 109.63의 가능한 선택이 존재한다.
따라서, 키 다양성 또는 키 스페이스의 카디널리티(cardinality)는 1010.64+21.67+9.63= 1041.94이다. 만약 어떤 사람이 시행착오 공격의 일종으로 모든 가능한 키를 시도하는 경우 평균하여 프로세스 도중에 정확한 키를 발견하는 것을 예상하거나 또는 약 1041.94의 시행착오 이후에 가능하다. 이러한 공격은 실용적이지 못하며, 현재의 기술을 사용하는 경우 1세기 이내에 완료할 수 없다. 만약 키가 단지 고정된 시간량, 예를들어 30분 동안 유효한 것으로 정의되는 경우에도 키 소모 공격은 성공하기에 매우 가망이 없다.
아마도 오늘날 가장 전형적인 지름길 암호해석 공격은 차등 암호해석이다. 공격 저변의 기본 아이디어는 출력의 차이가 몇 개의 서브셋 키 또는 아마도 더 작은 다양성을 갖는 관련 키에 관련이 있다는 가정에 따라 매우 적은 차이를 갖는 2(또는 그 이상) 입력 워드의 암호화된 변형을 비교하는 것이다.
다음의 가장 우수한 시나리오를 공격자가 계획할 수 있다:
1. 단지 단일 비트 차이를 갖는 32비트 입력 워드 쌍을 선택한다.
2. 블록 암호에 16 단계 각각에 대하여 각 단계 이후에 결과를 비교한다.
3. 이들 차이 사이의 관계와 키의 21 심볼에 대한 특별한 선택을 탐색한다.
첫 번째 8단계를 통하여 키 선택에 관련된 결정론적인 차이를 관찰한다. 그러나, 16 단계 중 9 단계 이후에 차이 패턴은 232가능한 차이 패턴의 랜덤한 선택으로 구별 될 수 없다. 9번째 단계 이후에 암호해석이 어떤 테스팅의 결과를 사용할 수 있도록 출력이 발생되기 전에 알고리즘은 7 이상의 단계를 갖는다. 이들 7 단계는 더욱이 차이 패턴을 랜덤화한다. 따라서, 이러한 유형의 공격은 성공하는 것이 매우 가망이 없다.
그 결과는 대수학적 공격에 대하여 더 좋게 얻어지지 않는다. 만약 순열이 순열 매트릭스 형태로 쓰여진 경우 결과는 각 행과 열로 정확하게 하나의 값을 갖는 0,1 매트릭스이다. 본 발명의 텍스트/키 관계의 대수학적 표시에서 이들 매트릭스는 부가항 변환과의 다양한 조합과 함께 증배된다. 그 결과는 단일 입력/출력 매핑에 대한 대수식이 8차 다항식인 것이다. 블록 암호 모드에 대하여 입력항에서 출력에 대한 대수식은 고차이며 아주 매우 복잡하다. 비록 고차 다항식의 시스템을 풀기 위한 방법을 발견할지라도 블록 암호 모드에 대한 방정식은 실제적으로 풀 수 없는 것이다.
본 발명의 암호화 시스템에 대한 하나의 실제적인 응용으로서 식별 프랜드 오어 포(Identification Friend or Foe : IFF) 시스템이 있다. 이 시스템에서 목표(target)는 식별되며 암호화된 질의 신호로 질의된다. 만약 목표가 우호적인 경우 질의를 해독하여 질의에 포함된 정보를 판독하고 정보에 기초하여 질의자에 대한 전송을 위한 암호화된 답변(reply)을 발생할 수 있는 트랜스폰더를 구비하게될 것이다. 만약 질의자가 적절한 응답 윈도우 동안 적절한 답변을 수신하는 경우 답변은 유효한 것으로 평가되며 목표는 우호적 목표로서 식별된다. 만약 유효한 답변이 수신되지 않는 경우 목표는 적으로서 처리된다.
질의자와 트랜스폰더 사이에 암호화된 신호가 전송되기 때문에 각각은 유효키 또는 만약 키가 주기적으로 변경되어야 하는 경우 유효 세트의 키를 갖고 있어야 한다. 다음의 예에서 유효키는 보안 이유로 30분마다 변경된다. 따라서, 각 질의자와 트랜스폰더는 각각 매일의 임무에 대한 48키로 로딩되거나 채워져 있어야 한다.
IFF 장비에서 매일 입력되는 48키 각각은 21 심볼(K1,K2,K3,??,K21)이며, 이들은 다음의 예와 같이 사용된다:
K1,K2,K3,K4,K5,K6,K7,K812345678
K9,K10,K11,K12,K13,K14,K15,K16,K170(t),α1(t),α2(t),α3(t),α4(t),α5(t),α6(t),
α7(t),α8(t)
K18,K19,K20,K21=X(1),X(2),X(3),X(4)
각각의 키가 장비에 로딩될 때 144 부가 심볼(A(1),A(2), . . . ,A(16))이 IFF 도전/답변의 처리를 더욱더 빠르게 하기 위하여 계산되며 이들은 전체 165 심볼(K1,K2,K3,??,K165)에 대한21 키 심볼에 첨부된다. 매일 48 키에 대한 기억장치 필요량은 따라서 48×165=7920 또는 약 8K 심볼이다.
상기한 바와같이 본 발명의 암호화 시스템과 관련하여 사용하기 위한 바람직한 키는 3 부분으로 이루어져 있다:
1. 정수(1,??,25) 사이에서 랜덤하게 선택된 8 심볼.
2. 9 랜덤 심볼.
3. 4 랜덤 심볼.
첫 번째 8 심볼은 1 내지 25 범위에서 랜덤 선택된 수라는 요건을 제외하고, 키의 발생에 어떤 제약이 없다. 그러나, 키 발생 프로세스는 어떤 결함 또는 비 랜덤한 성질을 나타내지 않는 다는 것을 보장하도록 주의 깊게 검토되어야 한다. 임의의 우수한 주지된 랜덤화기가 이러한 목적에 적합하다.
일단 키가 발생되면 키들은 전송을 위해 암호화된다. 그들은 1달 공급분 31×48=1488 키를 포함하는 각 그룹으로 그룹화되는 것이 바람직하다.
각 월 단위 키 그룹은 상기한 바와 같이 키 암호화 키(Key Encrypting Key:KEK)를 사용하여 블록 암호에 의해 암호화될 수 있으며, KEK는 물리적인 보안이 KEK에 대하여 예를 들어, 1년의 설정된 암호기간을 지지하는데 적합하도록 빈도를 갖는 주기적인 체제로 수동으로 분배된다.
다른 가이드라인은 동작중인 IFF 장비에서 키를 운영하는데 적절하게 한다. IFF 장비가 매 2일 기간 내에 메인 베이스로 리턴되는 것으로 가정하면 예를들어, 단지 2일치의 키, 즉 오늘과 내일의 키가 장비에 기억되어 있어야 한다. 만약 그렇지 않는 경우 이 가이드라인은 장비가 베이스로부터 이동할 때 2일을 최대 시간으로 교체하도록 이완될 수 있다. 본 발명의 시스템에 대한 다른 적용시에 유사한 보안 고려가 이루어져야 한다.
본 발명은 예시적이고 바람직한 실시예를 사용하여 설명되었다. 그러나, 본 발명의 범위는 이들 특정한 개시된 실시예에 제한되지 않는다. 역으로 본 발명은다양한 변형과 유사한 장치로 확장하도록 의도된다. 따라서, 청구항의 범위는 모든 이러한 변형과 유사한 장치를 포함하도록 가장 넓게 해석되어야 한다. 예를들어, 본 발명의 예시적인 블록 암호 모드는 상세하게 설명되었다. 그러나, 여기에 설명된 방법과 장치는 본 발명의 정신과 범위를 벗어나지 않고 블록이 아니라 스트림으로서 수신되어 처리되는 원문 메시지에 쉽게 적용될 수 있다는 것을 당분야의 통상의 지식을 가진 자에게 명확할 것이다.

Claims (52)

  1. a) 시작 스페이스;
    b) 통신 채널; 및
    c) 통신 채널을 통하여 시작 스페이스와 연계된 목적지 스페이스로 구성되며;
    d) 시작 스페이스는:
    1) 입력 심볼(It)에 기초하여 출력 심볼(Ot)을 발생하기 위한 암호화 엔진; 및
    2) 암호 키, 암호 텍스트/키 관계 및 입력 심볼을 수신하기 위한 수단을 포함하며;
    e) 목적지 스페이스는:
    1) 통신 채널을 통하여 시작 스페이스로부터 수신된 출력 심볼에 기초하여 해독된 심볼(I't)을 발생하기 위한 해독 엔진; 및
    2) 해독 키 및 해독 텍스트/키 관계를 수신하기 위한 수단을 포함하며;
    f) 암호 텍스트/키 관계는 OtN(t) + πNN-1(t) + πN-1N-2(t) + . . . + π21(t) + π1[It+ α0(t)]] . . .]], mod W 가 되도록 암호화 엔진을 제어하며, 여기서, αN, αN-1, . . . ,α1, α0는 암호 키에 의해 정의되는 N+1 부가 변환이며, πN, πN-1, . . . ,π2, π0는 암호 키에 의해 정의되는 N 순열이고, W는 암호 키에 의해 정의되는 각 순열에 대한 확률을 표시하며; 그리고
    g) 해독 텍스트/키 관계는 I't1 -12 -13 -1. . . [πN-1 -1N -1[Ot-α'N(t)]-α'N-1(t)]- . . . -α'3(t)]-α'2(t)]-α'1(t)]-α'0(t), mod W 가 되도록 해독 엔진을 제어하며, 여기서, πi -1는 순열(πi)의 역수로서 해독 키에 의해 정의되고, α'N, α'N-1, . . . ,α'1, α'0는 해독 키에 의해 정의되는 N+1 부가 변환이며, W는 해독 키에 의해 정의되는 각각의 역 순열에 대한 확률을 표시하는 것을 특징으로 하는 통신 시스템.
  2. 제1항에 있어서, 암호화 엔진은 가능한 W 세트의 순열 각각을 기억하기 위한 W 탐색 테이블을 더 포함하는 것을 특징으로 하는 통신 시스템.
  3. 제1항에 있어서, 암호화 엔진은 가능한 W 세트의 순열 중 M 유용한 세트를 기억하기 위한 M<W 탐색 테이블을 더 포함하는 것을 특징으로 하는 통신 시스템.
  4. 제1항에 있어서, 암호화 엔진은 가능한 W 세트의 순열 중 M 유용한 세트로부터 미리 선택된 N 세트의 순열을 기억하기 위한 N<M<W 탐색 테이블을 더 포함하는 것을 특징으로 하는 통신 시스템.
  5. 제1항에 있어서, α(t)는 스텝 함수인 것을 특징으로 하는 통신 시스템.
  6. 제5항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 증분시키는 것을 특징으로 하는 통신 시스템.
  7. 제5항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 감소시키는 것을 특징으로 하는 통신 시스템.
  8. 제5항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 증분시키는 것을 특징으로 하는 통신 시스템.
  9. 제5항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 감소시키는 것을 특징으로 하는 통신 시스템.
  10. 제1항에 있어서, I't는 It에 대응하는 것을 특징으로 하는 통신 시스템.
  11. a) 시작 스페이스;
    b) 통신 채널; 및
    c) 통신 채널을 통하여 시작 스페이스와 연계된 목적지 스페이스로 구성되며;
    d) 시작 스페이스는:
    1) 입력 심볼(It), 암호 키 및 암호 텍스트/키 관계를 수신하기 위한 수단; 및
    2) 암호 텍스트/키 관계에 따라 제어 가능하며 OtN(t) + πNN-1(t) + πN-1N-2(t) + . . . + π21(t) + π1[It+ α0(t)]] . . .]], mod W 가 되도록 입력 심볼에 기초하여 출력 심볼(Ot)을 발생하기 위한 암호화 엔진을 포함하고, 여기서, αN, αN-1, . . . ,α1, α0는 암호 키에 의해 정의되는 N+1 부가 변환이며, πN, πN-1, . . . ,π2, π0는 암호 키에 의해 정의되는 N 순열이고, W는 암호 키에 의해 정의되는 각 순열에 대한 확률을 표시하며;
    e) 목적지 스페이스는:
    1) 해독 키 및 해독 텍스트/키 관계를 수신하기 위한 수단; 및
    2) I't1 -12 -13 -1. . . [πN-1 -1N -1[Ot-α'N(t)]-α'N-1(t)]- . . . -α'3(t)]-α'2(t)]-α'1(t)]-α'0(t), mod W 가 되도록 통신 채널을 통하여 시작 스페이스로부터 수신된 출력 심볼에 기초하여 해독된 심볼(I't)을 발생하기 위해 제어 가능한 해독 엔진을 포함하며, 여기서, πi -1는 순열(πi)의 역수로서 해독 키에 의해 정의되고, α'N, α'N-1, . . . ,α'1, α'0는 해독 키에 의해 정의되는 N+1 부가 변환이며, W는 해독 키에 의해 정의되는 각각의 역 순열에 대한 확률을 표시하는 것을 특징으로 하는 통신 시스템.
  12. 제11항에 있어서, 암호화 엔진은 가능한 W 세트의 순열 각각을 기억하기 위한 W 탐색 테이블을 더 포함하는 것을 특징으로 하는 통신 시스템.
  13. 제11항에 있어서, 암호화 엔진은 가능한 W 세트의 순열 중 M 유용한 세트를 기억하기 위한 M<W 탐색 테이블을 더 포함하는 것을 특징으로 하는 통신 시스템.
  14. 제11항에 있어서, 암호화 엔진은 가능한 W 세트의 순열 중 M 유용한 세트로부터 미리 선택된 N 세트의 순열을 기억하기 위한 N<M<W 탐색 테이블을 더 포함하는 것을 특징으로 하는 통신 시스템.
  15. 제11항에 있어서, α(t)는 스텝 함수인 것을 특징으로 하는 통신 시스템.
  16. 제15항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 증분시키는 것을 특징으로 하는 통신 시스템.
  17. 제15항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 감소시키는 것을 특징으로 하는 통신 시스템.
  18. 제15항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 증분시키는 것을 특징으로 하는 통신 시스템.
  19. 제15항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 감소시키는 것을 특징으로 하는 통신 시스템.
  20. 제11항에 있어서, I't는 It에 대응하는 것을 특징으로 하는 통신 시스템.
  21. a) 제1컴퓨터;
    b) 통신 채널; 및
    c) 통신 채널을 통하여 제1컴퓨터와 결합된 제2컴퓨터로 구성되며;
    d) 제1컴퓨터는:
    1) 입력 심볼(It)을 수신하기 위한 심볼 입력 포트;
    2) 암호 키를 수신하기 위한 암호 키 입력 포트;
    3) 암호 텍스트/키 관계를 저장하기 위한 제1메모리; 및
    4) 암호 텍스트/키 관계에 따라 제어 가능하며 OtN(t) + πNN-1(t) + πN-1N-2(t) + . . . + π21(t) + π1[It+ α0(t)]] . . .]], mod W 가 되도록 입력 심볼에 기초하여 출력 심볼(Ot)을 발생하기 위한 제1마이크로컴퓨터를 포함하고, 여기서, αN, αN-1, . . . ,α1, α0는 암호 키에 의해 정의되는 N+1 부가 변환이며, πN, πN-1, . . . ,π2, π0는 암호 키에 의해 정의되는 N 순열이고, W는 암호 키에 의해 정의되는 각 순열에 대한 확률을 표시하며;
    e) 제2컴퓨터는:
    1) 해독 키를 수신하기 위한 해독 키 입력 포트;
    2) 해독 텍스트/키 관계를 저장하기 위한 제2메모리; 및
    3) I't1 -12 -13 -1. . . [πN-1 -1N -1[Ot-α'N(t)]-α'N-1(t)]- . . . -α'3(t)]-α'2(t)]-α'1(t)]-α'0(t), mod W 가 되도록 해독 텍스트/키 관계에 의해 제어되어 통신 채널을 통하여 시작 스페이스로부터 수신된 출력 심볼에 기초하여 해독된 심볼(I't)을 발생하기 위한 제2마이크로프로세서를 포함하며, 여기서, πi -1는 순열(πi)의 역수로서 해독 키에 의해 정의되고, α'N, α'N-1, . . . ,α'1, α'0는 해독 키에 의해 정의되는 N+1 부가 변환이며, W는 해독 키에 의해 정의되는 각각의 역 순열에 대한 확률을 표시하는 것을 특징으로 하는 통신 시스템.
  22. 제21항에 있어서, 제1컴퓨터는 가능한 W 세트의 순열 각각을 기억하기 위한 W 탐색 테이블을 더 포함하는 것을 특징으로 하는 통신 시스템.
  23. 제21항에 있어서, 제1컴퓨터는 가능한 W 세트의 순열 중 M 유용한 세트를 기억하기 위한 M<W 탐색 테이블을 더 포함하는 것을 특징으로 하는 통신 시스템.
  24. 제21항에 있어서, 제1컴퓨터는 가능한 W 세트의 순열 중 M 유용한 세트로부터 미리 선택된 N 세트의 순열을 기억하기 위한 N<M<W 탐색 테이블을 더 포함하는 것을 특징으로 하는 통신 시스템.
  25. 제21항에 있어서, α(t)는 스텝 함수인 것을 특징으로 하는 통신 시스템.
  26. 제25항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 증분시키는 것을 특징으로 하는 통신 시스템.
  27. 제25항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 감소시키는 것을 특징으로 하는 통신 시스템.
  28. 제25항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 증분시키는 것을 특징으로 하는 통신 시스템.
  29. 제25항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 감소시키는 것을 특징으로 하는 통신 시스템.
  30. 제21항에 있어서, I't는 It에 대응하는 것을 특징으로 하는 통신 시스템.
  31. 시작 스페이스와 목적지 스페이스 사이의 통신방법에 있어서,
    a) 시작 스페이스에서 입력 심볼(It)을 수신하는 단계;
    b) OtN(t) + πNN-1(t) + πN-1N-2(t) + . . . + π21(t) + π1[It+ α0(t)]] . . .]], mod W 가 되도록 입력 심볼에 기초하여 출력 심볼(Ot)을 발생하는 단계, 여기서, αN, αN-1, . . . ,α1, α0는 암호 키에 의해 정의되는 N+1 부가 변환이며, πN, πN-1, . . . ,π2, π0는 암호 키에 의해 정의되는 N 순열이고, W는 암호 키에 의해 정의되는 각 순열에 대한 확률을 표시하며;
    c) 목적지 스페이스에서 출력 심볼을 수신하는 단계; 및
    d) I't1 -12 -13 -1. . . [πN-1 -1N -1[Ot-α'N(t)]-α'N-1(t)]- . . . -α'3(t)]-α'2(t)]-α'1(t)]-α'0(t), mod W 가 되도록 수신된 출력 심볼에 기초하여 해독된 심볼(I't)을 발생하는 단계로 구성되며, 여기서, πi -1는 순열(πi)의 역수로서 해독 키에 의해 정의되고, α'N, α'N-1, . . . ,α'1, α'0는 해독 키에 의해 정의되는 N+1 부가 변환이며, W는 해독 키에 의해 정의되는 각각의 역 순열에 대한확률을 표시하는 것을 특징으로 하는 통신방법.
  32. 제31항에 있어서, 더욱이 출력 심볼을 발생하기 전에 가능한 W 세트의 순열을 W 탐색 테이블로부터 검색하는 단계를 더 포함하는 것을 특징으로 하는 통신방법.
  33. 제31항에 있어서, 더욱이 출력 심볼을 발생하기 전에 가능한 W 세트의 순열 중 M 유용한 세트를 M<W 탐색 테이블로부터 검색하는 단계를 더 포함하는 것을 특징으로 하는 통신방법.
  34. 제31항에 있어서, 더욱이 출력 심볼을 발생하기 전에 가능한 W 세트의 순열 중 M 유용한 세트로부터 미리 선택된 N 세트의 순열을 N<M<W 탐색 테이블로부터 검색하는 단계를 더 포함하는 것을 특징으로 하는 통신방법.
  35. 제31항에 있어서, α(t)는 스텝 함수인 것을 특징으로 하는 통신방법.
  36. 제35항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}를 사용하여 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 증분시키는 단계를 더 포함하는 것을 특징으로 하는 통신방법.
  37. 제35항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}를 사용하여 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 감소시키는 단계를 더 포함하는 것을 특징으로 하는 통신방법.
  38. 제35항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}를 사용하여 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 증분시키는 단계를 더 포함하는 것을 특징으로 하는 통신방법.
  39. 제35항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}를 사용하여 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 감소시키는 단계를 더 포함하는 것을 특징으로 하는 통신방법.
  40. 제31항에 있어서, I't는 It에 대응하는 것을 특징으로 하는 통신방법.
  41. 인터페이스 수단, 및
    OtN(t) + πNN-1(t) + πN-1N-2(t) + . . . + π21(t) + π1[It+ α0(t)]] . . .]], mod W 가 되도록 출력 심볼(Ot)을 발생하기 위하여 인터페이스수단을 통하여 마이크로프로세서를 제어하기 위한 수단으로 구성되며,
    여기서, It는 입력 심볼이고, αN, αN-1, . . . ,α1, α0는 키에 의해 정의되는 N+1 부가 변환이며, πN, πN-1, . . . ,π2, π0는 키에 의해 정의되는 N 순열이고, W는 키에 의해 정의되는 각 순열에 대한 확률을 표시하는 것을 특징으로 하는 기억매체.
  42. 제41항에 있어서, α(t)는 스텝 함수인 것을 특징으로 하는 기억매체.
  43. 제42항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 증분시키는 것을 특징으로 하는 기억매체.
  44. 제42항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 감소시키는 것을 특징으로 하는 기억매체.
  45. 제42항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 증분시키는 것을특징으로 하는 기억매체.
  46. 제42항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 감소시키는 것을 특징으로 하는 기억매체.
  47. 인터페이스 수단, 및
    I't1 -12 -13 -1. . . [πN-1 -1N -1[OtN(t)]-αN-1(t)]- . . . -α3(t)]-α2(t)]-α1(t)]-α0(t), mod W 가 되게 발생된 심볼(I't)을 생성하도록 인터페이스 수단을 통하여 마이크로프로세서를 제어하기 위한 수단으로 구성되며,
    여기서, Ot는 수신된 심볼이고, αN, αN-1, . . . ,α1, α0는 키에 의해 정의되는 N+1 부가 변환이며, π1 -12 -13 -1. . . ,πN-1 -1N -1는 키에 의해 정의되는 N 역 순열이고, W는 키에 의해 정의되는 각각의 역 순열에 대한 확률을 표시하는 것을 특징으로 하는 기억매체.
  48. 제47항에 있어서, α(t)는 스텝 함수인 것을 특징으로 하는 기억매체.
  49. 제48항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 증분시키는 것을 특징으로 하는 기억매체.
  50. 제48항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 각 값에 대하여 Πx의 시퀀스를 감소시키는 것을 특징으로 하는 기억매체.
  51. 제48항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 증분시키는 것을 특징으로 하는 기억매체.
  52. 제48항에 있어서, αx(t), X={0,1,2, . . . , N-1,N}는 R이 소수이고 t가 R의 정수 배수인 경우를 제외하고 각 값에 대하여 Πx의 시퀀스를 감소시키는 것을 특징으로 하는 기억매체.
KR1020017000028A 1998-07-01 1998-07-02 암호 통신 방법 및 장치 KR100355620B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/108,312 US6075865A (en) 1998-07-01 1998-07-01 Cryptographic communication process and apparatus
US09/108,312 1998-07-01

Publications (2)

Publication Number Publication Date
KR20010074633A KR20010074633A (ko) 2001-08-04
KR100355620B1 true KR100355620B1 (ko) 2002-10-11

Family

ID=22321489

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020017000028A KR100355620B1 (ko) 1998-07-01 1998-07-02 암호 통신 방법 및 장치

Country Status (22)

Country Link
US (2) US6075865A (ko)
EP (1) EP1260052B1 (ko)
JP (1) JP4053730B2 (ko)
KR (1) KR100355620B1 (ko)
CN (1) CN1636343A (ko)
AP (1) AP2001002031A0 (ko)
AT (1) ATE307436T1 (ko)
AU (1) AU748259B2 (ko)
BR (1) BR9815922A (ko)
CA (1) CA2336291C (ko)
CZ (1) CZ299773B6 (ko)
DE (1) DE69831982T2 (ko)
EA (1) EA003231B1 (ko)
HU (1) HUP0204260A2 (ko)
IL (1) IL140637A (ko)
MX (1) MXPA01000220A (ko)
NO (1) NO20006673D0 (ko)
NZ (1) NZ509290A (ko)
OA (1) OA11628A (ko)
PL (1) PL347367A1 (ko)
WO (1) WO2000002340A2 (ko)
ZA (1) ZA200100561B (ko)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10361802B1 (en) 1999-02-01 2019-07-23 Blanding Hovenweep, Llc Adaptive pattern recognition based control system and method
ATE325478T1 (de) * 1998-01-02 2006-06-15 Cryptography Res Inc Leckresistentes kryptographisches verfahren und vorrichtung
US7587044B2 (en) 1998-01-02 2009-09-08 Cryptography Research, Inc. Differential power analysis method and apparatus
EP1090480B1 (en) 1998-06-03 2019-01-09 Cryptography Research, Inc. Improved des and other cryptographic processes with leak minimization for smartcards and other cryptosystems
CA2334597C (en) * 1998-07-02 2007-09-04 Cryptography Research, Inc. Leak-resistant cryptographic indexed key update
US7292693B1 (en) * 1998-08-13 2007-11-06 Teledyne Technologies Incorporated Deterministically generating block substitution tables which meet a given standard of nonlinearity
US6578061B1 (en) * 1999-01-19 2003-06-10 Nippon Telegraph And Telephone Corporation Method and apparatus for data permutation/division and recording medium with data permutation/division program recorded thereon
US6735174B1 (en) * 2000-03-29 2004-05-11 Intel Corporation Method and systems for flow control of transmissions over channel-based switched fabric connections
US7280663B1 (en) * 2000-05-22 2007-10-09 University Of Southern California Encryption system based on crossed inverse quasigroups
KR100889465B1 (ko) * 2000-07-04 2009-03-20 코닌클리케 필립스 일렉트로닉스 엔.브이. 대칭-키 암호들을 위한 치환-박스
US7181017B1 (en) 2001-03-23 2007-02-20 David Felsher System and method for secure three-party communications
EP1472816A4 (en) 2002-01-30 2010-01-27 Tecsec Inc ACCESS SYSTEM USING MULTI-FACTOR IDENTIFICATION AND AUTHENTICATION
US20070195960A1 (en) * 2002-04-12 2007-08-23 General Dynamics Advanced Information Systems Apparatus and method for encrypting data
FR2831365B1 (fr) * 2002-05-06 2004-02-13 Sagem Procede de controle d'acces a un reseau
US20040022390A1 (en) * 2002-08-02 2004-02-05 Mcdonald Jeremy D. System and method for data protection and secure sharing of information over a computer network
KR100456599B1 (ko) * 2002-11-12 2004-11-09 삼성전자주식회사 병렬 디이에스 구조를 갖는 암호 장치
US9818136B1 (en) 2003-02-05 2017-11-14 Steven M. Hoffberg System and method for determining contingent relevance
AU2003257091A1 (en) * 2003-07-31 2005-03-07 Thomson Licensing S.A. Generation and validation of diffie-hellman digital signatures
US7366299B2 (en) * 2003-09-26 2008-04-29 International Business Machines Corporation Method for encrypting and decrypting data using derivative equations and factors
US8031865B2 (en) * 2004-01-08 2011-10-04 Encryption Solutions, Inc. Multiple level security system and method for encrypting data within documents
US7526643B2 (en) * 2004-01-08 2009-04-28 Encryption Solutions, Inc. System for transmitting encrypted data
US7752453B2 (en) 2004-01-08 2010-07-06 Encryption Solutions, Inc. Method of encrypting and transmitting data and system for transmitting encrypted data
US7711120B2 (en) * 2004-07-29 2010-05-04 Infoassure, Inc. Cryptographic key management
US20060282681A1 (en) * 2005-05-27 2006-12-14 Scheidt Edward M Cryptographic configuration control
US8874477B2 (en) 2005-10-04 2014-10-28 Steven Mark Hoffberg Multifactorial optimization system and method
CN101931623B (zh) * 2010-07-06 2013-06-12 华南理工大学 一种适用于受控制端能力有限的远程控制的安全通信方法
WO2014177938A2 (en) 2013-03-15 2014-11-06 Assa Abloy Ab Digital credential with embedded authentication instructions
US9547767B2 (en) * 2013-11-13 2017-01-17 Via Technologies, Inc. Event-based apparatus and method for securing bios in a trusted computing system during execution
DE102014016548A1 (de) * 2014-11-10 2016-05-12 Giesecke & Devrient Gmbh Verfahren zum Testen und zum Härten von Softwareapplikationen

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4316055A (en) * 1976-12-30 1982-02-16 International Business Machines Corporation Stream/block cipher crytographic system
US5375169A (en) * 1993-05-28 1994-12-20 Tecsec, Incorporated Cryptographic key management method and apparatus
US5454039A (en) * 1993-12-06 1995-09-26 International Business Machines Corporation Software-efficient pseudorandom function and the use thereof for encryption

Also Published As

Publication number Publication date
HUP0204260A2 (en) 2003-04-28
DE69831982T2 (de) 2006-04-27
CA2336291C (en) 2007-03-27
AU8277598A (en) 2000-01-24
US6075865A (en) 2000-06-13
PL347367A1 (en) 2002-04-08
EP1260052B1 (en) 2005-10-19
ZA200100561B (en) 2002-03-27
IL140637A (en) 2005-08-31
WO2000002340A3 (en) 2002-09-12
MXPA01000220A (es) 2002-04-24
US6266417B1 (en) 2001-07-24
EP1260052A2 (en) 2002-11-27
BR9815922A (pt) 2001-02-20
JP2003516552A (ja) 2003-05-13
IL140637A0 (en) 2002-02-10
EA003231B1 (ru) 2003-02-27
ATE307436T1 (de) 2005-11-15
WO2000002340A2 (en) 2000-01-13
CZ299773B6 (cs) 2008-11-19
NO20006673D0 (no) 2000-12-28
CA2336291A1 (en) 2000-01-13
NZ509290A (en) 2003-07-25
DE69831982D1 (de) 2005-11-24
AU748259B2 (en) 2002-05-30
KR20010074633A (ko) 2001-08-04
JP4053730B2 (ja) 2008-02-27
EP1260052A4 (en) 2004-04-14
CZ20004935A3 (cs) 2001-08-15
CN1636343A (zh) 2005-07-06
AP2001002031A0 (en) 2001-03-31
OA11628A (en) 2004-09-10
EA200100093A1 (ru) 2001-12-24

Similar Documents

Publication Publication Date Title
KR100355620B1 (ko) 암호 통신 방법 및 장치
US7974410B2 (en) Cryptographic key split combiner
US6885747B1 (en) Cryptographic key split combiner
US7079653B2 (en) Cryptographic key split binding process and apparatus
US5193115A (en) Pseudo-random choice cipher and method
AU1132199A (en) A non-deterministic public key encryption system
WO1998036520A1 (en) Cryptographic key split combiner
US20100169657A1 (en) Message authentication code with blind factorization and randomization
AU753951B2 (en) Voice and data encryption method using a cryptographic key split combiner
US20040174994A1 (en) Time based encryption algorithm
Limbong et al. IMPLEMENTATION OF ELGAMAL AND LEAST SIGNIFICANT BIT (LSB) ALGORITHM FOR ENDING AND HIDDEN MESSAGES IN DIGITAL IMAGES
GB2386523A (en) Symmetric key cryptosystem
Verma et al. Digital Right Management Model based on Cryptography for Text Contents
EP0698320A1 (en) A repertoire of mappings for a cryptosystem

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee