KR920001575B1 - 암호화 및 해독장치 - Google Patents
암호화 및 해독장치 Download PDFInfo
- Publication number
- KR920001575B1 KR920001575B1 KR1019880700146A KR880700146A KR920001575B1 KR 920001575 B1 KR920001575 B1 KR 920001575B1 KR 1019880700146 A KR1019880700146 A KR 1019880700146A KR 880700146 A KR880700146 A KR 880700146A KR 920001575 B1 KR920001575 B1 KR 920001575B1
- Authority
- KR
- South Korea
- Prior art keywords
- code
- shift register
- bit
- memory
- input
- Prior art date
Links
- 230000015654 memory Effects 0.000 claims description 67
- 230000005540 biological transmission Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 7
- 238000000034 method Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 238000013507 mapping Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000000737 periodic effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 235000014121 butter Nutrition 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001784 detoxification Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
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
-
- 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/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04K—SECRET COMMUNICATION; JAMMING OF COMMUNICATION
- H04K1/00—Secret communication
-
- 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/12—Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
-
- 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/12—Details relating to cryptographic hardware or logic circuitry
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Storage Device Security (AREA)
Abstract
내용 없음.
Description
제1도는 본 발명에 따른 암호화장치의 블록다이어그램.
제2도는 제1도의 암호화장치에 대응하는 해독장치의 블록다이어그램.
제3도는 2개의 코드장치를 구비한 암호화장치의 1 실시예를 보이는 블록다이어그램.
제4도는 2개의 코드장치 사이에 놓인 EX-OR 게이트와 쉬프트 레지스터를 구비한 암호화장치의 1 실시예를 보이는 블록다이어그램.
제5도는 2개의 코드장치 사이에 설치된 프로그램가능한 메모리와 쉬프트 레지스터를 구비한 암호화장치의 1 실시예를 보이는 블록다이어그램.
제6도는 2개의 코드장치 사이에 설치된 코드처리시스템을 포함하는 암호화장치의 1 실시예를 나타낸 블록다이어그램.
본 발명은 직렬전송되는 정보를 암호화시키기 위한 장치에 관한 것이며, 또한 이 암호화장치에 연관되어 암호를 해독하기 위한 장치에 관한 것이다.
상기 암호화장치는 암호화되어질 비트열의 입력단과, 암호화된 비트열에 대한 출력단, 그리고 이 입력단과 출력단 사이에 연결된 믹싱장치, 이 믹싱장치는 암호화되어질 비트열과 이 비트열을 암호화하기 위한 코드비트열 모두를 수신하도록 되어 있고, 믹싱동작에 의해 암호화된 비트열을 발생하며, 그리고 코드비트를 발생하는 한편 암호화된 비트열로부터의 비트가 쉬프트되어지는 쉬프트레지스터를 포함하는 코드 유니트와, 코드비트를 포함하고 또 쉬프트레지스터되는 메모리로 이루어진다.
암호의 해독장치 또는 상기와 같은 구성을 가지면서 직렬전송되어진 정보를 해독하게 된다.
컴퓨터의 사용, 특히 컴퓨터간의 데이터 전송에 있어서 심각한 보안상의 문제가 점증되고 있다. 사실상 전송로로부터 데이터전송을 도청하기는 비교적 손쉬운 일이며, 이것은 중요한 정보가 제3자의 순으로 넘어갈 수 있다는 것을 의미한다. 이와같은 위험을 방지하기 위해서 종종 전송되는 정보를 암호화시킨다.
데이터 통신은 통상 2진형태로 이루어지고, 이제까지 알려진 암호화 시스템의 대부분에 있어서 암호화는 비트레벨에서 이루어지며 여기서 메시지를 구성하는 “1”과 “0”의 비트열이 코드비트열과 함께 암호화장치에서 혼합된다. 메시지를 해독할 때, 암호화된 비트열은 동일한 코드비트열과 혼합되고, 이에 의해 메시지는 원상으로 복구된다.
종래의 암호화장치에 있어서, 코드비트를 발생하는데 시간이 오래걸림으로써 정보의 전달이 지연될 수 있다. 이것은 송신기의 정보의 전송비율을 낮추게하거나 또는 암호화장치에 버퍼를 설치하는 것이 필요하게 됨을 뜻한다. 후자의 경우에 있어서, 수신장치가 정보를 수신할 준비가 되어 있지 않다는 신호를 발생할 때 정보가 손실되지 않도록 보장해주는 조치가 수반되어야만 한다.
또다른 문제점은 코드비트를 발생시키는 것에 있어서의 동기화에 있다. 어떤 장치(예를들면 GB 1, 388,035호 참조)에서는 암호화장치 및 해독장치내의 코드비트가 동기화되었는지를 검사하기 위해 일정간격마다 정보의 전송을 중단시키고 있다. 또 하나의 문제점으로서는 데이터 전송의 중단후에 필수적으로 암호화장치와 해독장치가 상호연결될 때 발생한다. 이와같은 연결은 어떠한 정보의 손실없이 또 코드비트가 어떻게 발생되는가를 표시하는 정보의 전송없이 신속하고 손쉽게 이루어져야만 한다.
상술한 바와같은 문제점은 종래의 암호화장치가 동기화 및 연결(link-up)문제를 해결하는데 있어 수많은 복잡하고 정교한 회로장치를 필요로 하기 때문에 가격이 매우 비싸진다는 단점을 수반한다. 더욱이, 종래의 장치는 매우높은 전송율을 요구하는 시스템에서는 사용될 수 없다.
병렬전송에 있어, 상술한 바와같은 동기화 및 연결문제는 미합중국특허 제4, 431,865호에서 발표된 암호화 장치에 의해 해결하고 있다. 그 암호화장치는 암호화된 워드를 얻기위해 암호화될 병렬전송된 워드를 코드워드와 혼합시키는 논리장치를 포함한다. 코드워드는 논리장치로부터의 출력신호, 즉 암호화된 워드를 병렬-직렬 변환기, 쉬프트레지스터 및 선택회로로 구성되는 어드레싱회로에 공급하여 처리하게 함으로써 발생된다. 선택회로는 논리장치로 공급되는 코드워드를 포함하는 메모리를 어드레싱하기 위해 레지스터내의 어떠한 비트 혹은 전부의 비트를 선택한다. 이 장치는 또한 코드워드를 메모리로 공급하도록 작용하는 컴퓨터를 포함하며, 그 동작중에 레지스터와 선택회로를 분리시킨다. 이와같은 암호화장치에 대응하는 해독장치는 다만 해독된 텍스트를 얻기위해 코드화된 워드가 논리장치에서 코드워드와 혼합된다는 것을 제외하고는 암호화장치와 유사한 방식으로 설계된다.
상술한 바와같이, 위와같은 장치는 정보를 병렬로 전송하는 것에 관련하여 사용하기 위한 것이며 미리 수정을 가하지 않고는 직렬 정보전송용에 사용할 수 없는 것이다. 더욱이, 이 장치는 텔레텍스트 시스템으로부터 정보를 암호화하도록 설계되어진다. 따라서, 서비스요금을 내지 않고 정보를 상업적 및/또는 불법적으로 사용하고자하는 사람으로부터 전송된 정보를 보호하도록 설계된 것은 아니다. 그 전송된 정보를 해독하고자 하는 사람은 비밀정보에 대해 접근하고자 하는 것은 아니고 단지 사적으로 사용될 수 있는 정보에 대한 것이다. 이러한 관점에서 보아 상기 장치는 컴퓨터간의 정보전송에 사용하기 위한 암호화장치에 필수적으로 제공되어야할 높은 보안성에 대한 요구를 충족시키지 못하였다. 특히 위와같은 정보는 전송후에도 한동안 비밀로 유지되어야 하기 때문에 뒤이어 해독되어서도 않된다. 이 장치의 본래의 문제점은 코드화 되어질 각 워드에 대해 메모리에 단지 하나의 어드레스가 발생하고, 이 어드레스상의 전체 워드가 코딩에 사용된다는 사실에 있다. 만일 동일한 정보가 반복전송된다면 코딩이 같은 방식으로 발생될 우려가 있으며, 이것은 허가받지 않은 해독을 가능케할 수 있다. 더욱이, 해독장치가 분실되었을 경우 그전에 도청된 정보가 해독장치를 통해 쉽게 해독될 수 있는 것이다.
따라서 본 발명의 목적은 전송중이나 전송후에 정보를 암호화하기 위한 시스템에 수반하는 보안성에 대한 요구를 충족시키면서 종래의 시스템보다 가격이 저렴하고, 전송율을 크게 제한하지 않으며 동기화 및 연결에 관한 문제를 해결하는 직렬 정보전송용 암호화 및 해독 시스템을 제공하는데 있다.
본 발명에 따르면, 위와같은 목적은 본 명세서의 서두부분에 언급한 형태의 암호화장치를 통해 실현되며, 이 장치는 암호화되어질 비트열내의 비트가 코드비트와 혼합될 것인가를 선택하는 제1의 수단을 특징으로 한다. 또한 본 발명의 목적은 서두부분에서 언급한 것과 같은 형태의 해독장치에 의해 실현될 수 있으며, 이 장치는 해독되어질 비트열내의 비트가 코드비트와 혼합될 것인가를 선택하는 제1의 수단을 특징으로 한다.
본 발명의 양호한 실시예에서, 본 발명의 장치는 암호화된 비트열내에서 어떤 비트가 메모리로가는 어드레스로 사용된 것인가를 선택하는 수단을 포함한다. 이들 수단은 상기 비트열내의 어떤 비트가 코드비트와 혼합될 것인가를 선택하는 수단과 같이 프로그램가능한 장치에 의해 제어되게 하는 것이 유익하다.
이와같은 암호화장치 및 해독장치는 외부의 도청이나 해독하고자 하는 시도에 대해 충분히 보호기능을 제공한다. 암호화된 형태 또는 원래형태의 메시지를 입수한 사람이 메모리의 내용을 맵핑하여 그 도청된 정보를 해독하는데 사용하는 것을 방지하기 위하여 본 발명의 다른 실시예에 있어서의 암호화 및 해독장치는 그 입력단이 제1의 코드장치로 연결된 또하나의 코드장치를 구비하고, 코드비트를 포함하며 쉬프트레지스터로부터의 비트로 어드레스된 쉬프트레지스터와 메모리를 포함하고, 그 출력신호가 비트열을 암호화하기위한 코드비트열을 구성하게 된다. 이와같은 부가적인 코드장치를 사용할 때 암호화된 형태의 메시지를 입수한 사람이 2개 코드장치의 메모리 내용을 맵핑하는 것은 불가능하게 된다.
그러나, 메모리의 특정내용을 설정하는 것 대신에 다른 2개 메모리를 대신하는 매우 큰 용량의 메모리를 결정할 수 있어야 한다. 이러한 문제를 극복하는 한가지 방법은 그 특정한 어드레스를 갖게 하도록 메모리에 필요한 비트의 수를 증가시키는 것이다. 따라서 본 발명의 또다른 실시예에서는 2개 코드 장치 사이에 배치되고 그 입력단이 제1의 코드장치로 연결된 쉬프트레지스터와, 그 입력단에서 쉬프트레지스터로부터의 비트를 수신하고 그 출력단이 제2의 코드장치의 쉬프트레지스터로 연결되어 있는 EX-OR 게이트를 구비한다. 따라서, 대치 메모리에 대한 어드레스의 수를 증가시키는 것이 가능해지고, 알맞은 시간내에 맵핑하기에는 그 용량이 매우 커진다.
본 발명에 의해 해결될 또다른 문제점으로서 전송후에 정보를 긴 시간동안 비밀로 유지해야만 하는 것이있다. 종래의 장치에서는 허가받지 않은 사람이 정보의 전송을 도청할 수 있고 따라서 도청된 정보를 해독하기 위해 해독장치를 탈취할 수 있는 위험성이 있었다. 이를 방지하기 위해 본 발명의 다른 실시예에서는 2개 코드장치 사이에 배치되고 그 입력단이 제1의 코드장치에 연결된 쉬프트레지스터와, 이 쉬프트레지스터로부터의 비트로 어드레스되고 그 출력단이 제2의 코드장치로 연결되는 읽기/쓰기 메모리를 구비하고 있다. 이 장치는 예정된 알고리즘에 따라 코드비트를 발생하고 또 일정간격으로 발생된 코드비트를 메모리에 기입하도록 동작하는 컴퓨터를 포함한다. 만일 알고리즘이 정해진 시간에 수학적으로 뒤로 거슬러 올라갈 수 없는 코드를 발생하는 형태의 것이라면 해독장치에 의해 미리 도청한 정보를 해독하기란 불가능한 것이 된다. 따라서 전송후에 유지되어야할 정보의 보안성에 대한 요구가 만족된다.
본 발명에 따른 시스템은 종래기술의 장치에서 볼수 있는 고유한 문제점들을 해결할 수 있다. 따라서, 본 발명의 시스템은 신호를 버퍼링 또는 제어, 검사 및 동기화에 필요한 회로를 필요로 하지 않고 몇 개의 표준회로만으로 구성될 수 있으며, 이는 다른 종래의 시스템에 비해 현저히 저렴한 가격의 시스템을 제공할 수 있다.
본 발명은 이제 첨부된 도면을 참고로한 몇가지 실시예에 대해 상세히 설명된다.
제1도를 참조하면, 송신 및 수신장치사이, 양호하게 송신측의 데이터 링크에 연결되도록 설계된 양호한 장치의 블록다이어그램이 도시되어 있다. 이 암호화장치는 송신장치로부터 원래의 정보를 받아들이는 데이터 입력단(1)과, 암호화된 정보를 출력하는 EX-OR 게이트로 구성된 혼합장치(3), 코드비트열내의 코드비트를 발생하는 코드장치(4), 그리고 이후 상세히 설명되어질 장치내의 어떤 선택작용을 제어하는 수단(6), (7), (8)으로 구성되어 있다. 코드장치(4)의 입력은 혼합장치(3)의 출력에 연결되며, 이 코드장치(4)는 16비트 쉬프트레지스터(9), 바이트구조의 ROM 또는 EPROM으로 될수 있는 메모리(5), 멀리플렉서(10)로 구성된다. 쉬프트레지스터(9)의 제1의 13개 비트는 메모리(5)의 어드레스 입력에 연결되고, 그 나머지 3개 비트는 멀티플렉서(10)의 어드레스 입력으로 연결된다. 메모리(5)의 출력단은 멀티플렉서(10)의 데이터 입력단으로 연결된다. 상술한 바와같이, 어떠한 선택은 암호화장치내에서 이루어질 수 있다. 그 선택은 인입하는 데이터비트가 암호화될 것인지의 여부와, 암호화된 비트가 쉬프트레지스터(9)내로 로드될 것인가의 선택이다. 이 선택은 프로그램가능한 제어장치(8)에 의해 제어된다. 그 프로그램은 암호화 과정에서 1워드(=1바이트)를 따라서 가고 그 다음 워드는 시작에서 다시 개시한다. 워드내의 각 비트에 대해 하나의 신호가 AND게이트로 구성될 수 있는 수단(7)의 1입력으로 공급되어 비트가 암호화될 것인가의 여부를 판단한다. 그리고 또 하나의 신호가 AND게이트로 구성될 수 있는 수단(6)의 1입력으로 공급되어 암호화된 비트가 레지스터내로 로드될 것인지 아닌지를 판단한다. 수단(7)의 게이트는 그 다른 입력에서 멀티플렉서(10)으로부터의 코드비트를 수신하고, 그 출력은 혼합장치(3)로 연결되어 있다. 수단(6)의 게이트의 출력은 레지스터(9)의 인에이블입력단자에 연결되어 있다.
제2도에 도시한 해독장치는 암호화장치가 연결되는 데이터 링크의 다른 일단, 즉 수신장치의 전단에 설치하기 위한 것이다. 그 입력단(11)에서, 해독장치는 암호화장치로부터의 암호화된 데이터를 수신하고, 그리고 그 출력단(12)에서 해독된 데이터를 수신장치로 공급한다. 해독장치는 단지 쉬프트레지스터(10)가 입력단(11)에 연결되어 있는 점을 제외하고는 암호화장치와 동일한 방식으로 만들어진다.따라서, 동일한 부품으로 구성되고 동일한 정보(메모리 및 제어장치내의)를 포함하는 암호화장치 및 해독장치에 있어서 해독장치에 대해서는 더 이상 상세히 설명하지 않는다.
이후의 설명에서는 코드비트의 발생에 대한 것을 시작으로 하여 암호화장치의 작용에 대한 것을 설명한다. 암호화장치가 동작할 때, 쉬프트레지스터(9)는 혼합장치(3)의 출력으로부터 발생되는 암호화된 비트로 로딩된다. 메모리(5)내의 메모리셀은 레지스터내의 첫 번째 13개 비트로 어드레스된다. 이 메모리셀의 내용은 멀티플렉서(10)의 데이터 입력으로 공급되고 레지스터(9)내의 마지막 3개 비트에 의하여 어드레스된 메모리워드내의 어떤 8개 비트로 코드비트를 구성할 것인가를 선택한다.
이러한 코드비트 발생방식은 2진수 “0”만으로 메모리와 멀티플렉서에 대한 어드레스를 형성할 수 있으므로 혼합장치(3)의 출력으로부터 어떠한 코드비트가 쉬프트레지스터(9)내로 로드되기전에도 작용할 수 있다. 따라서 암호화장치를 개시시킬 때 아무런 특별한 개시루틴이 필요하지 않다.
암호화되어질 비트열의 어떤 비트가 혼합장치(3)의 입력에 나타날 때, 제어장치(8)는 멀티플렉서(10)의 출력에 나타나는 코드비트가 혼합장치(3)의 입력으로 공급되어 연관된 비트와 혼합될것인가 또는 이 비트가 암호화되지 않고 혼합장치로 통과할 것인가의 여부를 나타내는 신호를 게이트(7)로 공급한다. 이러한 비트의 암호와 여부에 대한 선택은 시스템을 보다 신뢰성 있게 만들고, 더욱이 예를들어 스타트 및 스톱비트가 암호화되지 않고 통과할 수 있는 가능성을 제공한다.
더욱이, 제어장치(8)는 상기 연관된 비트가 혼합장치(3)를 통과한 후에 그 비트가 레지스터(9)내로 로드되어질 것인가의 여부를 표시하는 신호를 게이트(6)으로 공급한다. 만일 비트가 레지스터내로 로드되면, 메모리(5)와 멀티플렉서(10)에 대한 어드레스가 변화되고, 새로운 코드비트가 얻어진다. 어떤 경우에 있어서는 혼합장치(3)로부터 레지스터(9)내로 비트를 로드시키지 않는 것이 편리할 수 있다. 예를들자면 암호화되지 않고 통과되는 스타트 및 스톱비트는 항상 동일하게 보이기 때문이다. 자연스럽게 이러한 선택은 시스템의 보안성을 증진시켜준다.
해독장치 역시 동일한 방식으로 동작한다. 제어장치(18)내의 프로그램이 동일하기 때문에 동일한 비트가 레지스터(19)내로 로드되며, 그 내용이 암호화장치의 메로리(5)내의 내용과 동일해야하는 메모리(15)내에서 동일한 메모리셀이 어드레스됨으로써 동일한 코드비트가 발생되고, 이 동일한 비트는 암호화되지 않은 채로 혼합장치(13)를 통과한다. 따라서, 암호화된 비트는 암호화장치내에서 혼합되는 것과 마찬가지로 동일한 코드비트와 혼합되고, 그 혼합장치가 EX-OR 게이트로 구성되기 때문에 본래의 메시지는 깨끗하게 그 출력단에서 복구될 수 있다.
임시적인 중단이 데이터 링크에서 발생되면, 그 중단기간동안 출력되는 데이터만이 상실된다. 연결이 다시되었을 때, 레지스터(9), (19)의 내용은 완전히 다른것이 될수 있으나 동일한 정보가 2개 레지스터로 공급되기 때문에, 장치는 조만간 다시 동기화된다. 장치가 동기화되는데 소요되는 시간은 제어장치내의 프로그램과 쉬프트레지스터의 길이에 의존한다. 본 실시예에서, 그 시간은 많아야 3바이트(워드)동안이다.
상기 암호화장치는 매우 높은 전송속도를 갖는다. 이 장치는 2메가보오 정도의 속도로 2중통신이 가능하다. 암호화장치에는 최소한이 지연이 있을뿐이다. 데이터 비트는 T가 데이터 비트의 활성시간을 나타낼 때 단지 T/2후에 암호화된 형태로 혼합장치를 벗어난다. 이와같은 짧은 지연시간은 RS-232 포오트의 인터페이스라인이 암호화장치에서 처리될 필요가 없음을 나타내며 단지 처리되지 않은 상태로 전송이 가능하다.
암호화장치가 위와같은 간단한 설계로 되어있다해도, 이 장치가 어떻게 동작하는지를 확실히 아는 사람에 대해서도 완전히 보호를 할 수 있다. 암호화 작용의 결과는 암호화된 메시지, 메모리(5)내의 내용 및 제어장치(8)내의 프로그램에따라 좌우된다. 메시지를 해독하기 위해서는 필히 메모리내의 내용과 제어장치내의 프로그램을 액세스하는 것이 필요하다. 만일 메모리의 내용 및/또는 제어장치내의 프로그램이 조금이라도 알려졌다고 하는 의심이가면, 그 메모리의 내용 및/또는 제어장치내의 프로그램은 매우 쉽게 변경될 수 있는 것이다. 제어장치는 이와 연관된 일단의 푸시버튼을 통해 선택적으로 연결되어 있는 몇 개의 프로그램을 기억할 수 있다.
제3도는 원상태 및 암호화된 형태로된 메시지에 접급한 사람이 다음의 식 “clear EXOR ciphered text=code”을 사용함에 의해 메모리내의 내용을 맵핑하는 것을 방지하는 암호화장치의 일실시예를 나타낸다. 제3도에서 제1도에 나타낸 구성요소와 동일한 것에는 같은 참조부호로서 나타내었다. 이들 구성요소는 제1도에 나타낸 장치와 동일한 방식으로 동작하기 때문에 여기서 설명하지 않는다. 이들 장치에 부가하여, 본 실시예의 장치는 그 입력이 제1코드장치(4)의 출력에 연결되고 16비트 쉬프트레지스터(9´)에서와 동일한 방식으로 설계된 제2의 코드장치(4´)와, 바이트 구성의 ROM 또는 EPROM으로 될 수 있는 메모리(5´) 및 멀티플렉서(10´)를 포함한다.본 발명의 실시예에서, 코드장치(4´)에 의해 발생된 코드비트는 쉬프트레지스터(9´)로 공급되고, 그 처음의 13개 비트는 메모리(5´)를 어드레싱하는데 사용되고, 그 나머지 3개 비트는 멀티플렉서(10´)로 공급되는 입력신호로 사용되어 메모리(5´)내로 어드레스된 워드중의 어떤 비트가 코드비트로 구성할 것인가를 선택한다. 본 실시예에서, 제1코드장치내의 메모리장치(9)에 대한 어드레스와 제2코드장치내의 메모리(5´)로부터의 코드는 서로 아무런 연관이 없으며, 따라서 장치로부터 입력 및 출력되는 신호를 도청하여 메모리(5) 및 (5´)내의 내용을 맵핑하는 것이 불가능하게 된다. 본 암호화장치에 대응하는 해독장치는 동일방식으로 설계되어 있고 따라서 이에대한 설명은 여기서 생략한다.
제4도에 있어서, 제3도의 장치는 쉬프트레지스터(40)와 EX-OR 게이트(41)에 이해 보충된다. 쉬프트레지스터(40)는 그 입력단에서 코드장치(4)에 의해 발생된 코드비트를 수신한다. 쉬프트레지스터(40)내의 처음비트와 마지막 비트는 EX-OR 게이트(41)로 공급되는 입력신호로 사용되고, 이 EX-OR 게이트(41)의 출력은 제2도의 코드장치(4´)내의 쉬프트레지스터(9´)에 연결되어 있다. 장치내에서 이들 2개 구성요소를 결합시킴에 의해서, 메모리(5) 및 (5´)에 대한 대체 메모리를 형성하기 위해 맵핑되어야할 어드레스의 수가 현저하게 증가된다. 쉬프트레지스터(40)와 쉬프트레지스터(9) 및 (9´)의 길이가 각각 16비트라면, 필요한 어드레스의 수는 2.81×1014이 된다. 쉬프트레지스터(40)와 EX-OR 게이트(41)가 결합되어 있으면 다른 2개 메모리에 대한 대체 메모리를 적절한 시간내에 만들어낼 수 없게 된다. 더욱이, 시스템이 빠르게 사용될 때 주기적인 입력데이터에 관련하여 암호문내에서 나타나는 주기적인 출력데이터에 대한 위험성은 쉬프트레지스터(40)에 의한 레지스터의 확장 때문에 명백하게 제거된다. 대응하는 해독장치(도시않됨)는 동일한 방식으로 연결된 쉬프트레지스터와 EX-OR 게이트를 가진다.
제5도에서는 제4도에 도시한 장치의 변형예를 나타내며, 여기서 EX-OR 게이트(41)는 읽기/쓰기 메모리(42)에 의해 대치되었고 이 메모리(42)는 쉬프트레지스터(40)내의 내용에 의해 어드레스되며, 그 출력단은 제2의 코드장치(4´)내의 쉬프트레지스터(9´)로 연결되어 있다. 메모리(42)의 내용은 키보오드(43)로부터 새로운 코드를 프로그래밍함에 의해 교체된다. 메모리(42)의 목적은 전송 및 암호화된 정보가 도청되고 난 후에 해독되는 것을 방지하기 위한 것이다. 메시지를 해독하기 위해서는 암호화 작업중에 메모리(42)에 기입되는 코드를 입수하는 것이 필요하다. 만일, 이 코드가 일정한 간격으로 변경된다면 차후의 해독은 불가능하게 된다. 확실시되어야할 한가지 점은 메모리가 충분한 양의 코드를 포함하게하여 메모리가 포함할 수 있는 가능한 많은 코드를 시험해봄에 의해 차후의 해독이 실시될 수 없게 하는 것이다. 다음 실시예에서와 같이, 해독장치(도시않됨) 역시 동일하게 설계되었다.
제6도를 참조하면, 메모리(42)로 공급되는 코드를 해독장치로 전송하고, 이 코드를 일정간격으로 공급하고 처리하는 것에 관련된 실제적인 문제들을 해결하기 위한 제5도의 암호화장치에 대한 변형실시예가 도시되어 있다. 제6도에 나타낸 암호화장치는 쉬프트레지스터(40)와 메모리(42)에 부가하여 컴퓨터(43)를 포함한다. 컴퓨터(43)는 라인(51)을 통해 혼합장치(3)의 출력에 연결된 입력단과, 어드레스버스(44)를 통해 메모리(42)에 연결되어 있는 어드레스출력단, 데이터라인(45)을 통해 메모리(42)로 연결된 입출력단, 그리고 라인(46)상에서 읽기/쓰기 신호를 메모리(42)로 전송하기 위한 전송신호 출력단을 가지고 있다. 본 장치는 또한 쉬프트레지스터(40)에 연결된 버퍼(47)를 포함하며, 쉬프트레지스터(40)의 내용은 임시적으로 기억되고 어드레스버스(44)에 연결된 3상태 출력단을 가진다. 또한, 본 장치는 클록(48)을 포함하고 불휘발성 및 휘발성 메모리를 가지는 원-칩 컴퓨터로 구성될 수 있는 컴퓨터(43)로부터 프로그램이 가능하다. 컴퓨터의 메모리는 소프트웨어내에 기억된 알고리즘을 포함하고, 이를 통해 컴퓨터는 메모리(42)에 대한 새로운 코드를 발생한다. 이 코드는 상이한 시간주기동안 생성되며, 현재시간주기의 길이는 선행시간주기동안 생성된 코드에 의해 결정된다. 클록(48)은 시간주기가 종료되었을 때 설정을 위해 사용된다. 시간주기동안 발생된 코드가 최종적으로 생성되었을 때, 그 코드는 버퍼에 임시적으로 기억되고, 메모리(42)로의 전송을 대기한다. 컴퓨터(43)는 혼합장치(3)의 출력에 나타나는 신호들을 분석함으로써 전송에 대한 알맞는 시점을 설정한다. 예를들어 출력에 아무런 신호도 발생하지 않는 것과 같이 예정된 사상이 발생하면 버퍼에 임시적으로 기억된 코드는 메모리로 전송된다. 그후 컴퓨터는 라인(50)상의 제어신호에 의해 버터(47)의 출력을 어드레스버스로부터 분리시키고, 라인(46)에서 쓰기신호를 발생하는 동시에 어드레스버스(44)를 통해 메모리를 어드레싱하여 발생된 코드가 데이터라인(45)에 의해 메모리(42)로 전송될 수 있게 만든다.
본 실시예의 암호화장치에 대응하는 해독장치(도시않됨)는 쉬프트레지스터, 버퍼, 컴퓨터, 메모리등이 동일한 방식으로 설계된다. 해독장치내의 컴퓨터는 암호화장치의 컴퓨터(43)에서 사용된 것과 같은 알고리즘을 통해 그 메모리로 공급되는 새로운 코드를 발생한다. 해독장치의 컴퓨터는 새로운 코드를 메모리로 전송하는 것이 언제 이루어질것인가를 결정하기 위해 컴퓨터(43)와 동일한 표준에 의존한다. 이러한 식으로 2개 메모리내의 내용은 항상 동일하게 된다.
미리 도청된 정보의 해독을 방지하기 위한 코드는 수학적으로 시간을 뒤로 거슬러 따라갈 수 없는 방식으로 발생되어야 한다는 것이 중요하다. 이분야의 숙련된 사람에게는 어떠한 형태의 알고리즘이 잘 알려져 있는 것이어서 더 상세히 설명하지 않는다.
상술한 바와같이, 본 코드 발생방법의 주된 이점은 전송후에도 비밀로 유지될 수 있다는 것이고, 양쪽 장치사이에서 코드를 전송할 필요가 없으며, 코드발생이 암호화장치와 해독장치 사이의 전송라인상의 정보에 의존하지 않고 양쪽장치에서 동시에 이루어진다는 것이다.
새로운 코드가 최종적으로 생성되었을 때 설정하는 것 이외에도 클록(48)은 동기화의 목적으로 사용될 수 있다. 동기화는 정보전송중의 중단 또는 어떤 비트 패턴과 같은 예정된 사상이 발생될 때 클록은 알려진 상태로 세트된다. 이 동기화처리의 이점은 양쪽장치에 대해 공통의 정보가 사용된다는 것이고, 이는 동기화를 매우 정확히 만든다.
많은 수정과 변경이 첨부된 청구범위의 범주에서 벗어남이 없이 본 발명내에서 이루어질 수 있으며, 상기 설명은 본 발명의 제한없이 다소 예시적인 것으로 간주되어야 할 것이다. 예를들어, 2개 코드장치 이상을 직렬로 연결할 수 있으며 인접한 코드장치의 각쌍 사이에 제4도 내지 제6도에 도시한 구성부품을 설치하여도 된다.
Claims (8)
- 암호화 되어질 비트열에 대한 입력단(1)과, 암호화된 비트열에 대한 출력단(2)과, 상기 암호화될 비트열에 대한 제1의 입력단, 상기 비트열을 암호화하기 위한 코드비트에 대한 제2의 입력단, 그리고 상기 암호화된 비트열에 대한 출력단을 갖는 혼합장치(3)와, 그리고 쉬프트레지스터(9)와 이 쉬프트레지스터(9)로부터의 비트로 어드레스되는 메모리(5)를 포함하는 제1의 코드장치(4)를 포함하는 직렬 전송되는 정보를 암호화하기 위한 장치에 있어서, 상기 쉬프트레지스터(9)는 암호화된 비트열에 대한 입력단을 갖고; 상기 제1의 코드장치(4)에 연결되어 있고, 쉬프트레지스터(9´)와 이 쉬프트레지스터(9´)로부터의 비트로 어드레스되는 메모리(5´)를 포함하고, 그리고 상기 혼합장치(3)의 제2의 입력단에 연결되는 출력단을 갖는 제2의 코드장치(4´)를 포함하는 것을 특징으로 하는 암호화장치.
- 제1항에 있어서, 2개의 코드장치(4, 4´) 사이에 배치되고, 그 입력이 제1의 코드장치(4)에 연결되어 있는 제3의 쉬프트레지스터(40)와, 그 입력단에서 상기 쉬프트레지스터(40)로부터의 비트를 수신하고, 그 출력단이 상기 제2의 코드장치(4´)의 쉬프트레지스터(9´)에 연결되어 있는 EX-OR 게이트(41)를 포함하는 것을 특징으로 하는 암호화장치.
- 제1항에 있어서, 코드장치(4, 4´) 사이에 배치되고, 그 입력이 제1의 코드장치(4)에 연결되어있는 제3의 쉬프트레지스터(40)와, 이 쉬프트레지스터(40)로부터의 비트열로 어드레스되고, 그 출력단이 상기 제2의 코드장치(4´)의 쉬프트레지스터(9´)에 연결되어 있는 읽기/쓰기 메모리(42)를 포함하는 것을 특징으로 하는 암호화장치.
- 제3항에 있어서, 예정된 알고리즘에 따라 코드비트를 발생하고, 발생된 코드비트를 메모리(42)에 기입하는 컴퓨터(43)를 포함하는 것을 특징으로 하는 암호화장치.
- 해독되어질 비트열에 대한 입력단(11)과, 해독된 비트열에 대한 출력단(12)과, 상기 해독될 비트열에 대한 제1의 입력단, 상기 비트열을 해독하기위한 코드비트에 대한 제2의 입력단, 그리고 상기 해독된 비트열에 대한 출력단을 갖는 혼합장치(13)와, 그리고 쉬프트레지스터(19)와 이 쉬프트레지스터(19)로부터의 비트로 어드레스되는 메모리(15)를 포함하는 제1의 코드장치(14)를 포함하는 직렬 전송되는 정보를 해독하기 위한 장치에 있어서, 상기 쉬프트레지스터(19)는 해독된 비트열에 대한 입력을 갖고; 상기 제1의 코드장치(14)에 연결되어 있고, 쉬프트레지스터와 이 쉬프트레지스터로부터의 비트로 어드레스되는 메모리를 포함하고, 그리고 상기 혼합장치의 제2이 입력단에 연결되는 출력단을 갖는 제2의 코드장치를 포함하는 것을 특징으로 하는 해독장치.
- 제5항에 있어서, 2개의 코드장치(14) 사이에 비치되고, 그 입력단이 제1의 코드장치(14)에 연결되어 있는 제3의 쉬프트레지스터와, 그 입력단에서 쉬프트레지스터로부터의 비트를 수신하고, 그 출력단이 상기 제2의 코드장치를 쉬프트레지스터에 연결되어 있는 EX-OR 게이트를 포함하는 것을 특징으로 하는 해독장치.
- 제5항에 있어서, 2개의 코드장치(14) 사이에 배치되고, 그 입력단이 제1의 코드장치(14)에 연결되어 있는 제3의 쉬프트레지스터와, 이 쉬프트레지스터로부터의 비트로 어드레스되고, 그 출력단이 상기 제2의 코드장치의 쉬프트레지스터에 연결되어 있는 읽기/쓰기 메모리를 포함하는 것을 특징으로 하는 해독장치.
- 제7항에 있어서, 예정된 알고리즘에 따라 코드비트를 발생하고, 발생된 코드비트를 메모리에 기입하는 컴퓨터를 포함하는 것을 특징으로 하는 해독장치.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE8406242A SE447859B (sv) | 1984-12-10 | 1984-12-10 | Krypteringsanordning samt dekrypteringsanordning |
PCT/SE1986/000275 WO1987007796A1 (en) | 1984-12-10 | 1986-06-09 | Ciphering and deciphering device |
Publications (2)
Publication Number | Publication Date |
---|---|
KR880701502A KR880701502A (ko) | 1988-07-27 |
KR920001575B1 true KR920001575B1 (ko) | 1992-02-18 |
Family
ID=20358096
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019880700146A KR920001575B1 (ko) | 1984-12-10 | 1986-06-09 | 암호화 및 해독장치 |
Country Status (3)
Country | Link |
---|---|
KR (1) | KR920001575B1 (ko) |
SE (1) | SE447859B (ko) |
WO (1) | WO1987007796A1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2027105A6 (es) * | 1990-05-10 | 1992-05-16 | Amper Datos S A | Equipo de cifrado. |
NL9400428A (nl) * | 1994-03-18 | 1995-11-01 | Nederland Ptt | Inrichting voor het cryptografisch bewerken van datapakketten, alsmede werkwijze voor het genereren van cryptografische bewerkingsdata. |
US5825889A (en) * | 1996-10-15 | 1998-10-20 | Ericsson Inc. | Use of duplex cipher algorithms for satellite channels with delay |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CH539989A (de) * | 1971-04-19 | 1973-07-31 | Gretag Ag | Verfahren und Vorrichtung zur chiffrierten Nachrichtenübermittlung |
US4176247A (en) * | 1973-10-10 | 1979-11-27 | Sperry Rand Corporation | Signal scrambler-unscrambler for binary coded transmission system |
SE380696B (sv) * | 1974-03-20 | 1975-11-10 | Philips Svenska Ab | Sett att alstra en pseudoslumpbitfoljd och anordning for utforande av settet. |
US4133974A (en) * | 1976-11-05 | 1979-01-09 | Datotek, Inc. | System for locally enciphering prime data |
FR2467515A1 (fr) * | 1979-10-10 | 1981-04-17 | Telediffusion Fse | Systeme de chiffrement et de dechiffrement d'un signal numerique |
-
1984
- 1984-12-10 SE SE8406242A patent/SE447859B/sv not_active IP Right Cessation
-
1986
- 1986-06-09 KR KR1019880700146A patent/KR920001575B1/ko not_active IP Right Cessation
- 1986-06-09 WO PCT/SE1986/000275 patent/WO1987007796A1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
SE8406242L (sv) | 1986-06-11 |
KR880701502A (ko) | 1988-07-27 |
SE447859B (sv) | 1986-12-15 |
SE8406242D0 (sv) | 1984-12-10 |
WO1987007796A1 (en) | 1987-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4322576A (en) | Message format for secure communication over data links | |
EP0002389B1 (en) | Multiple domain data communication | |
US5345508A (en) | Method and apparatus for variable-overhead cached encryption | |
JP4703791B2 (ja) | データ再暗号化装置および方法 | |
EP0002388A1 (en) | Data processing terminal | |
US5444781A (en) | Method and apparatus for decryption using cache storage | |
US5008938A (en) | Encryption apparatus | |
Campbell | Design and specification of cryptographic capabilities | |
CA2441392A1 (en) | Encrypting apparatus | |
KR860000754A (ko) | 통신 네트 워어크 시스템 | |
JPS6127751B2 (ko) | ||
WO1996002992A1 (fr) | Procede d'emission de signaux et systeme de communication | |
KR20090131696A (ko) | 암/복호화 장치 및 이를 포함하는 보안 저장 장치 | |
US6363152B1 (en) | Hybrid one time pad encryption and decryption apparatus with methods for encrypting and decrypting data | |
US5199072A (en) | Method and apparatus for restricting access within a wireless local area network | |
EP0309447B1 (en) | Ciphering and deciphering device | |
JPH0380645A (ja) | 暗号化方法および非暗号化方法 | |
KR100284482B1 (ko) | 데이터 암호화 방법 | |
KR920001575B1 (ko) | 암호화 및 해독장치 | |
JP3195288B2 (ja) | 暗号通信装置 | |
JPH045298B2 (ko) | ||
US20070258582A1 (en) | Hardware key encryption for data scrambling | |
JPS6363232A (ja) | 暗号化通信方式 | |
JPS63219244A (ja) | 暗号化情報処理方式 | |
JPH04304730A (ja) | データ暗号装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |