KR100297154B1 - 의사난수발생회로및이를채용한데이터통신시스템 - Google Patents
의사난수발생회로및이를채용한데이터통신시스템 Download PDFInfo
- Publication number
- KR100297154B1 KR100297154B1 KR1019970076810A KR19970076810A KR100297154B1 KR 100297154 B1 KR100297154 B1 KR 100297154B1 KR 1019970076810 A KR1019970076810 A KR 1019970076810A KR 19970076810 A KR19970076810 A KR 19970076810A KR 100297154 B1 KR100297154 B1 KR 100297154B1
- Authority
- KR
- South Korea
- Prior art keywords
- circuit
- register
- pseudo random
- random number
- circuits
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/582—Pseudo-random number generators
- G06F7/586—Pseudo-random number generators using an integer algorithm, e.g. using linear congruential method
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/582—Pseudo-random number generators
- G06F7/584—Pseudo-random number generators using finite field arithmetic, e.g. using a linear feedback shift register
-
- 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
- H04L9/0656—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
- H04L9/0662—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/58—Indexing scheme relating to groups G06F7/58 - G06F7/588
- G06F2207/581—Generating an LFSR sequence, e.g. an m-sequence; sequence may be generated without LFSR, e.g. using Galois Field arithmetic
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/58—Indexing scheme relating to groups G06F7/58 - G06F7/588
- G06F2207/583—Serial finite field implementation, i.e. serial implementation of finite field arithmetic, generating one new bit or trit per step, e.g. using an LFSR or several independent LFSRs; also includes PRNGs with parallel operation between LFSR and outputs
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Tests Of Electronic Circuits (AREA)
- Semiconductor Integrated Circuits (AREA)
- Information Transfer Systems (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Storage Device Security (AREA)
Abstract
의사 난수들의 발생 타이밍들이 램덤하게 변하는 의사 난수 발생 회로 (2) 가 개시된다. 의사 난수 발생 회로 (2) 는, 네 종류의 클럭을 발생시키는 클럭 발생 회로 (4), 선택 신호들을 랜덤하게 발생시키는 선택 신호 발생 회로 (8), 상기 선택 신호들에 기초하여 네 종류의 클럭 중의 어느 하나를 선택하는 선택 회로 (6), 및 상기 선택 회로 (6) 에 기초하여 선택된 클럭에 기초하여 쉬프트 동작을 수행하는 선형 피드백 쉬프트 레지스터 (LFSR) (10)를 포함한다. LFSR (10) 은, 상기 선택된 클럭들에 응하여 의사 난수를 생성한다. 상기 클럭의 선택이 상기 선택 신호 발생 회로 (8) 에 의해 랜덤하게 수행되므로, 상기 LFSR (10) 에 의해 생성된 의사 난수들의 타이밍들의 생성 또한 랜덤하다.
Description
본 발명은 선형 피이드백 쉬프트 레지스터 (Linear Feedback Shift Register: 이하 "LFSR" 이라 함)를 사용하는 의사 난수 (疑似 亂數) 발생 회로 및 그 회로를 채용하는 데이터 통신 시스템에 관한 것이며, 특히, 난수의 사이클에 불규칙성을 부여하는 의사 난수 발생 회로 및 그 회로를 채용한 데이터 통신 시스템에 관한 것이다.
여태껏, 난수를 사용하는 암호법 알고리즘들이, 안전성에 비추어 데이터 통신 시스템에서 활용되어져 왔다. 암호법 알고리즘에서 난수들이 사용되었듯이, 소프트웨어 수단에 의해 용이하게 생성될 수 있는 의사 난수들이, 다루기에 쉽고 처리에서의 단순성 때문에, 진성 난수들보다 훨씬 더 빈번하게 사용되었다.
의사 난수들을 발생시키는 의사 난수 발생 회로에 대해, LFSR 을 사용하는 회로들이 잘 알려져 있다. LFSR 은 직렬로 연결된 복수의 레지스터들 및 배타적 OR 회로를 포함한다. 상기 복수의 레지스터들 중의 두 개의 특정 레지스터들의 출력 신호가, 상기 배타적 OR 회로의 입력 노드로 공급되며, 상기 배타적 OR 회로의 출력 신호는 선도 (leading) 레지스터로 피이드백된다. 더욱이, 쉬프트 클럭이 이들 레지스터들 모두로 공통으로 공급된다. 이러한 구성에 의해, 비교적 긴 사이클의 의사 난수 계열을 획득하는 것이 가능하다.
예를들면, n 레지스터로 이루어지는 LFSR 에 의해 생성된 의사 난수 계열의 주기는, n 차의 선형 최대 주기열 ("M-계열"이라 함) 의 것과 동등한 바, 그것은 2n-1 이다. 여기서 주기로 정의되는 것은 시간을 나타내는 것이 아니라는 것에 주목하여야 하며, 차라리 그것은, 생성된 의사 난수가 상이한 종류인 것으로서 여겨질 수 있는 방식의 개수 (혹은 길이) 를 나타내는 것이다. 달리 말하면, 의사 난수들의 식별 세트는 매 사이클에 대해 반복적으로 생성될 수 있다.
도 8 에, 7단 레지스터들을 갖는 LFSR을 채용하는 종래의 의사 난수 발생 회로 (50) 의 블록도가 도시되어 있다. 의사 난수 발생 회로 (50) 는, 직렬로 연결되어 있는 7개의 레지스터 50-1 내지 50-7 중에서, 제 2 단 째의 레지스터 (50-2) 의 출력 및 최종단 째의 레지스터 (50-7) 의 출력이, 배타적 OR 회로 (52) 의 입력 노드에 접속되며, 배타적 OR 회로 (52) 의 출력 노드는 선도 레지스터 (50-1) 로 피이드백된다. 쉬프트 클럭 (SCK) 이 모든 레지스터들 50-1 내지 50-7 에 공통으로 제공되며, LFSR 이 SCK 에 응하여 구동된다. 해당 레지스터들의 출력 B1 내지 B7 이, 의사 난수를 형성함에 따라 취출된다.
M-계열의 비트 스트링이 LFSR 을 채용하는 의사 난수 발생 회로의 경우에 생성되며, 7단 레지스터들로 이루어지는 LFSR 은, 127 (즉, 27-1) 가지의 의사 난수들을 생성한다.
그러나, 의사 난수 발생 회로 (50) 에 의해 생성된 의사 난수 계열이 암호 회로에 대해 시드 (seeds) 로서, 즉 암호 키로서 사용될 때, 암호문이 비교적 용이하게 디코드될 수 있다. 예를들면, 스트림형 암호에서는, 의사 난수 발생 회로에 의해 생성된 2진 의사 난수 계열 및 평문 (plain text) 의 2진 계열의 배타적 OR를 취함으로써, 스트림 암호가 발생된다. 그러나, 의사 난수 계열 혹은 의사 난수 계열 생성 논리가 판명된 경우, 획득된 암호문으로부터 평문을 재생하는 것이 용이하다. 결국, 회로는 더 이상 암호화 회로로서 기능하지 않는다.
따라서, 암호화 회로에 의해 암호화된 암호문에 대하여 디코드를 시도하는 것이 거의 성공하지 못하게 될 그러한 예측 불가능한 암호문 계열을 효과적으로 생성하는 것은, 의사 난수 발생 회로에 대해 요구되는 중요한 기능이다. 용이한 데이터 분석에 그 자체로서 기꺼이 제공되어지지 않을 의사 난수 계열들을 생성하는 가장 단순한 방법은, M-계열의 차수 n (레지스터의 수) 을 증가시키는 것이다. 그러나, 그것은 의사 난수 계열들의 주기를 단순히 확장하는 것이므로, 그 문제에 필수적인 해법이라고 여겨질 수 없다. 따라서, 본 방법을 사용함으로서 분석되기에 어려운 의사 난수 계열들을 생성하기 위해서는, 아주 큰 개수의 레지스터들을 채용하는 것이 필요한 바, 그것은 회로 크기의 증가에 이르게 한다.
적은 개수의 레지스터들을 사용하는 의사 난수 계열들을 생성하는 의사 난수 발생 회로가, 일본 특허 공개 평 5-327427 호의 공보에 개시되어 있다. 그러나, 이 회로에 의해 생성된 의사 난수 계열들은 단지 외관상 긴 주기를 가지며, 용이한 디코딩에 대한 측정은 반드시 해결되지 않은 채 그대로 남게된다.
따라서, 본 발명의 목적은, 본질적으로 디코딩이 곤란한 의사 난수 계열들을 생성할 수 있는 의사 난수 발생 회로를 제공하는 것이다.
본 발명의 또다른 목적은, 본질적으로 디코딩이 곤란한 의사 난수 계열들을 생성할 수 있는 의사 난수 발생 회로들을 채용하는 데이터 통신 시스템을 제공하는 것이다.
도 1 은 본 발명의 제 1 실시례를 보이는 의사 난수 발생 회로 (2) 의 블럭도.
도 2 는 도 1 의 의사 난수 발생 회로 (2)를 활용한 데이터 통신 시스템을 보이는 블럭도.
도 3 은 의사 난수 발생 회로 (2) 의 동작을 보이는 타이밍도.
도 4 는 본 발명의 제 2 실시례에 따른 의사 난수 발생 회로 (30)를 보이는 블럭도.
도 5 는 의사 난수 발생 회로 (30) 의 동작을 보이는 타이밍도.
도 6 은 본 발명의 제 3 실시례에 따른 의사 난수 발생 회로 (40)를 보이는 블럭도.
도 7 은 의사 난수 발생 회로 (40) 의 동작을 보이는 타이밍도.
도 8 은 종래의 의사 난수 발생 회로 (2)를 보이는 블럭도.
본 발명에 따른 의사 난수 발생 회로는, 선택 신호를 생성하는 선택 신호 발생 회로, 서로 상이한 주파수들을 갖는 복수의 클럭 신호들을 생성하는 클럭 발생 회로, 상기 선택 신호에 응하여 상기 클럭 신호들 중의 하나를 선택하는 선택 회로, 상기 선택 회로에 의해 선택된 상기 선택된 클럭 신호에 응하여 쉬프트 동작을 수행하는 직렬로 접속된 복수의 제 1 레지스터 회로들을 포함하는 제 1 쉬프트 레지스터 회로, 상기 복수의 제 1 레지스터 회로들 중 두 개의 출력 신호를 수신하는 제 1 배타적 OR 회로, 상기 제 1 쉬프트 레지스터 회로의 제 1 단의 상기 제 1 배타적 OR 회로의 출력 신호를 공급하는 수단, 및 상기 제 1 레지스터 회로들의 적어도 일부의 내용을 추출하는 수단을 구비하고 있다.
더욱이, 본 발명에 따른 데이터 통신 시스템은, 제 1 및 제 2 암호 키를 각각 생성하는 제 1 및 제 2 암호 키 발생 회로, 상기 제 1 암호 키에 기초하여 원래 데이터를 암호 데이터로 암호화하는 암호화 회로, 및 상기 제 2 암호 키에 기초하여 상기 암호 데이터를 해독된 데이터로 해독하는 해독 회로를 구비하되, 상기 제 1 암호 키 발생 회로는, 제 1 의사 난수를 생성하는 제 1 의사 난수 발생 회로, 상기 제 1 의사 난수에 기초하여 제 1 클럭 신호를 생성하는 제 1 클럭 발생기, 상기 제 1 클럭 신호에 응하여 제 2 의사 난수를 생성하는 제 2 의사 난수 발생 회로, 및 상기 제 1 암호 키로서 상기 암호화 회로로 상기 제 2 의사 난수를 공급하는 수단을 포함하며, 상기 제 2 암호 키 발생 회로는, 제 3 의사 난수를 생성하는 제 3 의사 난수 발생 회로, 상기 제 3 의사 난수에 기초하여 제 2 클럭 신호를 생성하는 제 2 클럭 발생기, 상기 제 2 클럭 신호에 응하여 제 4 의사 난수를 생성하는 제 4의사 난수 발생 회로, 및 상기 제 2 암호 키로서 상기 해독 회로로 상기 제 4 의사 난수를 공급하는 수단을 포함한다.
본 발명의 상기 및 다른 목적, 장점 및 특징은 첨부 도면과 관련하여 설명되는 다음의 기재로부터 더 명백하게 될 것이다.
도면을 참조하여 본 발명의 실시례들이 기술될 것이다.
이제 도 1 을 참조하면, 본 발명의 제 1 실시례에 따른 의사 난수 발생 회로는, 클럭 발생 회로 (4), 선택 회로 (6), 선택 신호 발생 회로 (8), 및 LFSR (10)을 포함한다.
클럭 발생 회로 (4) 는, 클럭 신호 CLK0 를 수신함으로써 상호 상이한 주파수를 갖는 네 개의 클럭 신호 CLK1 내지 CLK4를 생성한다. 이들 클럭 신호 CLK1 내지 CLK4 의 주파수들은 특별히 제한되지는 않으나, 예를 들어 CLK1 의 주파수는 CLK2 의 주파수의 2배, CLK2 의 주파수는 CLK3 의 주파수의 2배, 및 CLK3 의 주파수는 CLK4 의 주파수의 2배와 같은 식으로 설정된다.
선택 회로 (6) 는, 클럭 신호 CLK1 내지 CLK4 및 선택 신호 b1 내지 b2를 수신하며, 상기 선택 신호 b1 내지 b2 에 기초하여 상기 클럭 신호 CLK1 내지 CLK4 중의 하나를 선택하며, 그것을 쉬프트 클럭 SCK 로서 출력하는 회로이다. 선택 회로 (6) 는, 선택 신호 b1 및 b2 가 모두 "0" (로우 레벨) 일 때 클럭 신호 CLK1 을 선택하고, 선택 신호 b1 이 "0" (로우 레벨) 이고 선택 신호 b2 가 "1" (하이 레벨) 일 때 클럭 신호 CLK2 를 선택하고, 선택 신호 b1 이 "1" 이고 선택 신호 b2 가 "1" 일 때 클럭 신호 CLK3 을 선택하고, 선택 신호 b1 및 b2 가 모두 "1" 일 때클럭 신호 CLK4 를 선택한다.
선택 신호 발생 회로 (8) 는, 도 1 에 보인 바와 같은 LFSR 구조를 가지며, 5단 레지스터 8-1 내지 8-5 및 배타적 OR 회로 (12) 로 구성된다. 제 3 단 레지스터 (8-3) 의 출력 신호 및 제 5 단 (최종 단) 의 레지스터 (8-5) 의 출력이 배타적 OR 회로 (12) 의 입력 노드로 공급되며, 배타적 OR 회로 (12) 의 출력 신호가 제 1 단 레지스터 (8-1) 로 공급된다. 클럭 신호 CLK4 가 상기 5개의 레지스터 8-1 내지 8-5 로 쉬프트 클럭으로서 공통으로 공급된다. 레지스터 8-1 내지 8-5 는 클럭 신호 CLK4 에 응하여 쉬프트 동작을 수행한다. 이 실시례에서, 선택 신호 발생 회로 (8) 는, 5단 LFSR 구조로서 사용되나, 본 발명은 5단으로 한정되는 것은 아니며, 예를들면, 7단 구조일 수도 있다. 더욱이, CLK4 가 본 실시례에서 선택 신호 발생 회로 (8) 의 쉬프트 클럭으로서 채택되었으나, 본 발명은 이 경우로 제한되는 것이 아니며, 또다른 클럭이 쉬프트 클럭으로서 사용될 수 있다.
LFSR (10) 은, 7단 레지스터 10-1 내지 10-7 및 배타적 OR 회로 (14) 로 구성된다. 제 2 단 레지스터 (10-2) 의 출력 신호 및 제 7 단 (최종 단) 의 레지스터 (10-7) 의 출력이 배타적 OR 회로 (14) 의 입력 노드로 공급되며, 배타적 OR 회로 (14) 의 출력 신호가 제 1 단 레지스터 (10-1) 로 공급된다. 쉬프트 클럭 SCK 가 상기 7단의 레지스터 10-1 내지 10-7 로 공통으로 공급된다. 레지스터 10-1 내지 10-7 은 쉬프트 클럭 SCK 에 응하여 쉬프트 동작을 수행하며, 레지스터들의 출력 B1 내지 B7 이 의사 난수로서 외부로 출력된다. LFSR (10) 의 구조는 7단의 것으로 제한되는 것이 아니며, 그것은 예를 들어 9단일 수도 있다. 더욱이, LFSR(10)에서, 배타적 OR 회로 (14) 의 입력 단자들은 제 2 단 레지스터 (10-2) 및 제 7 단 레지스터 (10-7) 에 접속되나, 본 발명은 이 경우만으로 한정되는 것이 아니고, 그것은 M-계열의 의사 난수들이 발생되는 한, 다른 레지스터들에 접속될 수도 있다.
더욱이, 리셋 신호 (RST) 가 레지스터들 8-1 내지 8-5 및 10-1 내지 10-7 에 공통으로 공급된다. 리셋 신호 (RST) 가 "1" (하이 레벨) 로 진행할 때, 이들 레지스터들의 각각의 출력은 "1" (하이 레벨) 로 초기화된다. 이 초기값들은 모두 "1" 인 경우로 제한되는 것이 아니며, 레지스터 그룹 8-1 내지 8-5 또는 10-1 내지 10-7 의 어느 한쪽이 모두 "0" (로우 레벨) 이 아닌 한, 다른 값이어도 된다.
다음, 도 3을 참조하여, 의사 난수 발생 회로 (2) 의 동작이 기술될 것이다. 먼저, 리셋 신호 RST 가 하이 레벨에 있는 주기 동안, 선택 신호 발생 회로 (8) 및 LFSR (10) 의 어느 쪽도 쉬프트 동작을 수행하지 않으며, 그들의 출력 b1 및 b2, 그리고 B1 내지 B7 은 그들의 초기 값 "1" 로 고정된다 (모두 "1"). 이 경우에 선택 신호 b1 및 b2 모두가 값 "1"을 가지므로, 선택 회로 (6) 는 클럭 신호 CLK4를 선택하며, 이들을 쉬프트 클럭 SCK 로서 출력한다. 그러나, 상기 언급된 바와 같이 레지스터들 10-1 내지 10-7 은 리셋 신호 (RST) 로서 하이 레벨로 초기화되며, 출력 B1 내지 B7 은 쉬프트 클럭 (SCK) 에 관계없이 모두 "1" 인 상태로 유지된다.
그후, 리셋 신호 (RST) 가 "0" (로우 레벨) 으로 절환되고, 초기 상태가 해제되어 쉬프트 동작을 수행한다. 즉, 선택 신호 발생 회로 (8) 가 클럭 신호 CLK4 에 응하여 쉬프트 동작을 수행하며, LFSR 이 쉬프트 클럭 SCK 에 응하여 쉬프트 동작을 수행한다.
선택 신호 발생 회로 (8) 에 의해 출력된 선택 신호 b1 및 b2 가 쉬프트 동작의 결과로서 전환됨에 따라, 선택 회로 (6) 의 선택이 또한 스위치되며, 쉬프트 클럭 (SCK) 의 주파수가 변환된다. 도 3 에, 선택 신호 b1 및 b2 가 (1,1) 로부터 (0,1) 로 전환되는 상황이 도시되며, 이에 기초하여 쉬프트 클럭 (SCK) 의 주파수가 클럭 신호 CLK4 의 주파수로부터 클럭 신호 CLK2 의 주파수로 스위칭된다. 유사하게, 선택 신호 b1 및 b2 가 (1,0) 으로 전환됨에 따라, 쉬프트 클럭 (SCK) 의 주파수가 클럭 주파수 CLK3 의 주파수로 진행하며, 선택 신호 b1 및 b2 가 (0,0) 으로 전환됨에 따라, 쉬프트 클럭 (SCK) 의 주파수가 클럭 주파수 CLK1 의 주파수로 진행한다.
상기에서처럼, 본 실시례의 의사 난수 발생 회로 (2)에서, LFSR (10) 용 쉬프트 클럭으로서 단일 주파수를 갖는 클럭을 갖는 대신, 선택 신호 b1 및 b2 를 사용하는 상호 상이한 주파수를 갖는 복수의 클럭 주파수 CLK1 내지 CLK4 로부터 선택이 이루어지며, 상기 선택된 클럭 신호에 기초하여 쉬프트 동작이 수행된다. 쉬프트 클럭의 주파수가 이와 같이 순간 순간 변하므로, 생성된 의사 난수에 기초하여 암호화된 데이터를 디코드하는 것이 매우 곤란하다. 더욱이, 본 실시례에 따른 의사 난수 발생 회로 (2)에서, 5단 LFSR (10) 로 이루어진 선택 신호 발생 회로 (8) 가 선택 신호 b1 및 b2 의 발생을 위해 사용된다. 그리하여, 선택 신호 자신들이 의사 난수들이며, 결국, 선택 회로 (6) 의 선택 스위칭의 타이밍 자체가 랜덤하게 변한다. 이와 같이, 상기 발생된 의사 난수들 B1 - B7 의 분석은 더욱 곤란하게 되며, 따라서, 그러한 의사 난수들 B1 - B7 에 기초하여 암호화된 데이터의 디코딩은 극히 곤란하게 된다.
더욱이, 본 실시례에 따른 의사 난수 발생 회로에서, 선택된 클럭 신호 CLK1 내지 CLK4 는, 상호 동기되어 있는 신호들인 것으로 가정되어 있으나, 이들 신호들은 비동기된 것으로 가정될 수도 있다. 만약 그들이 비동기적이라면, 상기 암호화된 데이터의 디코딩은 한층 더 곤란하게 될 것이다.
이제, 이러한 의사 난수 발생 회로 (2)를 채용하는 데이터 통신 시스템이 도 2 에 보여진다. 이 데이터 통신 시스템은 암호화 회로 (16), 해독 회로 (18), 및 의사 난수 발생 회로 (2) 를 포함한다. 암호화 회로 (16) 는 송신기에 의해 보내어진 평문 (20) 을 암호화된 데이터 (22) 로 암호화한다. 암호화된 데이터는 전화선 또는 라디오를 통해 해독 회로 (18) 로 전송된다. 암호화된 데이터 (24) 는 원래의 평문에 완전히 일치하는 데이터를 포함한다.
암호화 회로 (16) 및 해독 회로 (18) 는, 그들 각각에 대응하여 설치된 의사 난수 발생 회로 (2) 에 의하여 공급된 의사 난수 B1 - B7 에 기초하여 암호화 및 해독을 수행한다. 예를들면, 평문 (20) 이 7비트 데이터를 포함한다면, 암호화 회로 (16) 는, 7비트의 평문 데이터의 각 비트 및 7비트의 의사 난수 B1 - B7 의 각 비트에 대한 배타적 OR 데이터를 생성하며, 그 결과를 암호화된 데이터로서 출력한다. 한편, 해독 회로 (18) 는, 7비트의 암호화된 데이터의 각 비트 및 7비트의 의사 난수 B1 - B7 의 각 비트에 대한 배타적 OR 데이터를 생성하며, 그 결과를 해독된 데이터로서 출력한다.
여기서, 암호화 회로 (16) 및 해독 회로 (18) 의 각각에 대해 구비된 의사 난수 발생 회로 (2) 가 상호 동일한 회로이도록 제작된다면, 그리고 리셋 신호 (RST) 가 동시에 해제된다면, 획득된 의사 난수들 B1 - B7 은 상호 동일하게 되며, 따라서 암호화 및 해독이 수행될 수 있다. 상기 언급된 바와 같이, 의사 난수 발생 회로 (2) 에 의해 생성된 의사 난수 B1 - B7 가 27-1 의 사이클을 가지나, 그 사이클이 단조롭게 반복되는 것이 아니다. 즉, 일차 의사 난수들인 선택 신호 b1 및 b2 에 기초하여 이차 의사 난수들 B1 - B7 이 생성되므로, 의사 난수들 B1 - B7 뿐만 아니라 그들의 전환의 타이밍들 조차도 랜덤하게 발생한다. 따라서, 통상적인 방식을 사용하는 암호화된 데이터를 디코드하는 시도는, 극히 곤란한 상황에 직면하게 될 것이며, 이는, 데이터 통신의 안정성이 보장된다는 사실을 의미한다.
다음, 도 4를 참조하면, 본 발명의 의사 난수 발생 회로 (30) 의 제 2 실시례가 기술될 것이다.
본 실시례의 의사 난수 발생 회로 (30) 는 9단의 레지스터들을 포함하며, 쉬프트 클럭 (SCK) 에 응하여 쉬프트 동작을 수행하는 LFSR, 및 클럭 발생 수단 (미도시됨) 에 의해 출력되는 클럭 CLK1, CLK2, CLK3 및 CLK4 중의 하나를 선택하는 선택 회로 (6) 를 가지며, 그것을 쉬프트 클럭 (SCK) 으로서 출력한다.
LFSR 은, 생성된 의사 난수들 (B1-B7) 의 비트 폭과 동등한 개수 (여기서는 7) 로 직렬로 접속된 레지스터들 (30-3 내지 30-9), LFSR 의 상부측에 접속된 그리고 그 출력이 외부에서 판독되지 않는 용장 레지스터들 (redundant registers : 30-1 및 30-2), 및 레지스터들 30-4 내지 30-9 의 출력 신호들을 그의 출력 신호들로서 수신하는 그리고 레지스터 30-1 의 출력 신호를 그의 입력 신호로서 피이드백하는 배타적 OR 회로 (32)를 포함한다. 레지스터들 30-1 내지 30-8 의 각 출력 신호는 다음 단의 레지스터의 입력에 접속되어 있다. 선택 회로 (6) 는, 용장 레지스터 30-1 및 30-2 의 출력 신호 b3 및 b4를 디코드하며, 상기 디코딩의 결과에 기초하여 클럭 CLK1, CLK2, CLK3 및 CLK4 의 출력 중의 하나를 선택한다. 본 실시례에서, 용장 레지스터 30-1 및 30-2 의 출력 신호가 모두 "0" 일 때 CLK1 이 선택되며, 그들이 "0" 및 "1" 일 때 CLK2 가 선택되며, 그들이 "1" 및 "0" 일 때 CLK3 이 선택되며, 그들이 모두 "1" 일 때 CLK4 가 선택되는 것으로 가정된다.
더욱이, 각 레지스터의 출력 신호의 각각이 리셋 신호 (RST) 의 입력에 의해 "1"로 초기화된다. 상기 초기화 후 상기 리셋이 해제될 때, 쉬프트 클럭 (SCK) 의 상승 에지의 시점에서 쉬프트 동작이 수행된다. 여기서, 리셋 신호 (RST) 는 '하이-액티브'이며, 따라서 그것이 "1" 일 때 인에이블 (리셋) 하며, 그것이 "0" 일 때 디스에이블 (리셋을 해제) 한다.
이와 같은 방식으로, 레지스터들 30-3 내지 30-9 의 값 B1 내지 B7 이 7비트 폭으로서 의사 난수로서 출력된다. 의사 난수의 출력이 연속적으로 판독될 때, 같은 숫자가 출력되는 상황을 피하기 위해, 클럭 CLK1 내지 CLK4 의 주파수들은, 그 판독 주파수의 최고 값의 두배 이상으로 설정되는 것이 바람직하다.
다음, 용장 레지스터 30-1 및 30-2 , 그리고 레지스터들 30-3 내지 30-9 의 시계열 변화가 표 1 에 보여질 것이다. 표 1 은 레지스터들의 출력값들을 나타낸다.
레지스터타임 | 30-1 | 30-2 | 30-3 | 30-4 | 30-5 | 30-6 | 30-7 | 30-8 | 30-9 |
t0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
t1 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
t2 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
t3 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 |
t4 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 |
t5 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 |
상기 표에서, 도 5 에 보인 바와 같이, t0 는 리셋 신호 (RST) 가 이네이블 상태에 있을 때의 초기 상태 타이밍이고, t1 내지 t5 는 리셋 해제 후 쉬프트 클럭 (SCK) 의 상승 타이밍이다.
먼저, 레벨 "1" 의 리셋 신호의 입력으로, 레지스터 30-1 내지 30-9 의 모든 레지스터의 출력이 "1" 로 초기화된다 (타이밍 t0).
용장 레지스터 30-1 및 30-2 의 출력 값 b3 및 b4 가 이 경우에 모두 "1" 이므로, 도 5(f)에서 보는 바와 같이, 선택 회로 (6) 는 클럭 CLK4 를 선택하며, 그것을 쉬프트 클럭 (SCK) 으로서 출력한다.
다음, 리셋 신호 (RST) 가 디스에이블 상태로 진행한 후, 즉 "0" 로 진행한 후, 용장 레지스터 30-1 및 30-2 그리고 레지스터들 30-3 내지 30-9 는, 쉬프트 클럭 (SCK) 의 상승 에지 (타이밍 t1)에서 쉬프트 동작을 수행한다.
용장 레지스터 30-1 및 30-2 의 출력이 각각 "0" 및 "1" 로 진행하므로, 선택 회로 (6) 는, 클럭 CLK2 를 선택하며, 그것을 쉬프트 클럭 (SCK) 으로서 출력한다.
이후, 쉬프트 클럭 (SCK) 의 상승시 (타이밍 t2에서), 레지스터들 30-1 내지 30-9 는 쉬프트 동작을 수행한다. 결국, 양 용장 레지스터들의 출력 값 b3 및 b4는 "0" 으로 진행하며, 따라서, 선택 회로 (6) 는 클럭 CLK1을 선택하며, 그것을 쉬프트 클럭 (SCK) 으로서 출력한다.
유사한 동작을 반복하여, 쉬프트 클럭 (SCK) 의 상승에서 (타이밍 t5 에서) 쉬프트 동작이 수행됨에 따라, 용장 레지스터 30-1 및 30-2 출력값이 각각 "1" 및 "0" 으로 진행하며, 따라서, 선택 회로 (6) 는 클럭 CLK3을 선택한다. 이후, 유사한 동작이 반복된다.
본 실시례의 LFSR을 9 비트 구성의 LFSR 인 것으로 간주한다면, 의사 난수의 최대 사이클은 29-1 일 것이다. 따라서, 의사 난수 B1-B7 에 의해 취해질 수 있는 조합의 수가 27-1 이다는 사실에도 불구하고, 그 사이클은 29-1 일 것이다. 그러나, 이 사이클은, 용장 레지스터 30-1 및 30-2 의 출력값 b3 및 b4 에 기초하여 그것이 불규칙적으로 변한다는 사실로 인하여, 규칙적이 아니다는 사실에 주목하여야 한다. 한편, 암호화 회로는 보통 고정된 판독 클럭에 따라 판독 동작을 수행한다. 따라서, 판독 회로로부터 보여지는 바와 같이 의사 난수의 겉보기 사이클은, LFSR 의 비트 수에 의하여 결정되는 사이클 29-1 보다 길다.
본 실시례에서, 쉬프트 클럭 (SCK) 은 용장 레지스터 30-1 및 30-2 의 출력값 b3 및 b4 에 기초하여 하나의 값으로부터 또다른 값으로 전환된다. 따라서, 의사 난수 발생 회로의 구성을 해명하고자하는 누군가가 있을지라도, 그 사람은 심각한 곤란함에 직면하게 될 것이다. 더욱이, 쉬프트 클럭 (SCK)을 선택하기 위한 용장 레지스터 30-1 및 30-2 의 출력값들을 직접 판독하는 것이 불가능하므로, 회로구조의 해명은 더욱 곤란하게 될 것이다.
본 실시례에서, 레지스터 30-4 의 출력은, 배타적 OR 회로 (52) 의 입력의 하나로서 사용되나, 그 선택은 이 경우로 제한되는 것이 아니다. 다만, 배타적 OR 회로 (32) 에 대한 입력으로서 최대 사이클이 얻어질 수 있는 그러한 포지션에 위치되는 레지스터의 출력을 사용하는 것이 바람직하다.
본 실시례에서의 의사 난수 발생 회로 (30)에서 생성된 의사 난수들의 전환 타이밍들은, 제 1 실시례에서의 의사 난수 발생 회로 (2) 의 경우와 유사하게, 또한 랜덤한 형태로 발생한다. 따라서, 의사 난수 발생 회로 (30) 에 의해 생성된 암호문의 디코딩은 제 1 실시례의 경우와 유사하게 곤란하며, 더욱이 본 실시례의 것은, 제 1 실시례에서 보다 더 간단한 회로 구성을 가지고서 의사 난수 발생 회로가 실현될 수 있다는 점에서 장점을 갖는다.
다음, 도 6 및 도 7을 참조하면, 본 발명의 제 3 실시례에 따른 의사 난수 발생 회로 (40) 가 기술될 것이다.
본 실시례의 의사 난수 발생 회로 (40) 는, 클럭 CLK1 내지 CLK4 보다 더 빠른 클럭 CLK5 를 사용하며, 쉬프트 클럭으로서 선택 회로 (6) 의 출력 자체를 사용하는 대신, 선택 회로 (6) 의 출력 (46) 및 클럭 CLK5 를 AND 하는 AND 회로 (44)를 가지며, 그 결과를 쉬프트 클럭으로서 출력한다. 클럭 CLK5 는 클럭 CLK1, CLK2, CLK3 및 CLK4 에 비해 충분히 높은 주파수를 갖는 것이 바람직하며, 그 주파수는 적어도 3 내지 4 배 높은 것이 바람직하다.
더욱이, 클럭 CLK5 는, 클럭 CLK1 내지 CLK4 와 동기되어질 필요가 없다.그것이 클럭 CLK1 내지 CLK4 와 비동기적인 경우에, 쉬프트 클럭의 불규칙성이 더 증가하며, 결국, 의사 난수들의 불규칙성은 더욱 높아진다.
용장 레지스터 40-1 및 40-2, 레지스터들 40-3 내지 40-9, 및 배타적 OR 회로 (42) 의 동작들은, 제 2 실시례의 의사 난수 발생 회로 (30) 의 그것과 유사하다. 그러나, 선택 회로 (6) 에 의해 선택된 클럭 (46) 은, LFSR 의 클럭으로서 직접 기능하는 것이 아니며, AND 회로 (44) 에서 고속 클럭 CLK5 와 AND된 후에 쉬프트 클럭 SCK 으로서 기능한다 (도 7(h) 참조). 달리 말하면, 클럭 CLK5 에 의한 LFSR 의 쉬프트 동작은, 선택 회로 (6) 에 의해 선택된 클럭 CLK1 내지 CLK4 의 어느 하나가 "1" 인 주기 동안, 수행된다.
클럭 CLK5 의 주파수가 더 높을수록, LFSR 의 단위 시간 당 쉬프트의 회수가 더 커진다는 사실에 주목하여야 한다. 이는, 의사 난수들의 주기적인 판독 동작에서 동일한 값을 판독할 가능성이 더 높아진다는 것을 의미하며, 이는 난수성이 상대적으로 증가한다는 것을 의미한다.
의사 난수 계열들을 출력하는 레지스터들의 비트 수, 용장 레지스터들의 비트 수와 위치, 및 클럭의 종류는, 요구되는 의사 난수들의 비트 수, 허용되는 회로의 크기, 의사 난수들의 주기성의 길이 등에 기초하여, 임의적으로 설정될 수 있으며, 상기 기술된 실시례들의 그것들로 제한될 필요는 없다는 점에 주목하여야 한다. 예를들면, 용장 레지스터들의 비트 수는 단지 하나 이상일 필요가 있으며, 용장 레지스터들은 LFSR 의 상부측에 제한될 필요가 없으며 어느 위치에도 위치할 수 있다.
본 실시례의 의사 난수 발생 회로 (2)에서, LFSR (10) 용 쉬프트 클럭으로서 단일 주파수를 갖는 클럭을 갖는 대신, 선택 신호 b1 및 b2 를 사용하는 상호 상이한 주파수를 갖는 복수의 클럭 주파수 CLK1 내지 CLK4 로부터 선택이 이루어지며, 상기 선택된 클럭 신호에 기초하여 쉬프트 동작이 수행된다. 쉬프트 클럭의 주파수가 이와 같이 순간 순간 변하므로, 생성된 의사 난수에 기초하여 암호화된 데이터를 디코드하는 것이 매우 곤란하다. 더욱이, 5단 LFSR (10) 로 이루어진 선택 신호 발생 회로 (8) 가 선택 신호 b1 및 b2 의 발생을 위해 사용되므로, 선택 신호 자신들이 의사 난수들이며, 결국, 선택 회로 (6) 의 선택 스위칭의 타이밍 자체가 랜덤하게 변한다. 이와 같이, 상기 발생된 의사 난수들 B1 - B7 의 분석은 더욱 곤란하게 되며, 따라서, 그러한 의사 난수들 B1 - B7 에 기초하여 암호화된 데이터의 디코딩은 극히 곤란하게 된다.
더욱이, 선택된 클럭 신호 CLK1 내지 CLK4 가 비동기적이라면, 상기 암호화된 데이터의 디코딩은 한층 더 곤란하게 될 것이다.
또한, 일차 의사 난수들인 선택 신호 b1 및 b2 에 기초하여 이차 의사 난수들 B1 - B7 이 생성되므로, 의사 난수들 B1 - B7 뿐만 아니라 그들의 전환의 타이밍들 조차도 랜덤하게 발생한다. 따라서, 통상적인 방식을 사용하는 암호화된 데이터를 디코드하는 시도는, 극히 곤란한 상황에 직면하게 될 것이며, 이는, 데이터 통신의 안정성이 보장된다는 사실을 의미한다.
Claims (6)
- 쉬프트 동작을 수행하는 직렬로 연결된 복수의 제 1 레지스터 회로들을 포함하는 제 1 쉬프트 레지스터 회로, 상기 복수의 제 1 레지스터 회로들중의 두 개의 출력 신호들을 수신하는 제 1 게이트 회로, 상기 제 1 쉬프트 레지스터 회로의 제 1 단으로 상기 제 1 게이트 회로의 출력 신호를 공급하는 수단, 및 상기 제 1 레지스터 회로들의 적어도 일부의 내용을 상기 선택 신호로서 추출하는 수단을 포함하여, 선택 신호를 생성하는 선택 신호 발생 회로;서로 상이한 주파수들을 갖는 복수의 클럭 신호들을 생성하는 클럭 발생 회로;상기 선택 신호에 응하여 상기 클럭 신호들 중의 하나를 선택하는 선택 회로;상기 선택 회로에 의해 선택된 상기 선택된 클럭 신호에 응하여 쉬프트 동작을 수행하는 직렬로 접속된 복수의 제 2 레지스터 회로들을 포함하는 제 2 쉬프트 레지스터 회로;상기 복수의 제 2 레지스터 회로들 중 두 개의 출력 신호를 수신하는 제 2 게이트 회로;상기 제 2 쉬프트 레지스터 회로의 제 1 단에 상기 제 2 게이트 회로의 출력 신호를 공급하는 수단; 및상기 제 2 레지스터 회로들의 적어도 일부의 내용을 추출하는 수단을 포함하는 것을 특징으로 하는 의사 난수 발생 회로.
- 제 1 항에 있어서,상기 제 1 및 제 2 게이트 회로의 각각은 배타적 OR 회로인 것을 특징으로 하는 의사 난수 발생 회로.
- 생성되는 의사 난수의 비트폭과 동일한 수로 접속된 제 1 레지스터 회로들과 상기 제 1 레지스터 회로의 상부측에 직렬로 접속된 제 2 레지스터 회로들을 포함하는 복수의 레지스터 회로들로 구성되는 쉬프트 레지스터 회로;상기 제 2 레지스터 회로의 출력 신호에 기초하여 복수의 클럭 신호들 중의 하나를 선택하는 선택 회로;쉬프트 클럭으로서 상기 쉬프트 레지스터 회로로 상기 선택 회로에 의하여 선택된 상기 선택된 클럭 신호를 공급하는 수단;상기 제 1 레지스터 회로들 중의 두 개의 출력 신호들을 수신하는 배타적 OR 회로;상기 쉬프트 레지스터 회로의 제 1 단의 레지스터로 상기 배타적 OR 회로의 출력 신호를 공급하는 수단; 및상기 제 1 레지스터 회로의 적어도 일부의 내용을 추출하는 수단을 포함하는 것을 특징으로 하는 의사 난수 발생 회로.
- 제 1 및 제 2 암호 키를 각각 생성하는 제 1 및 제 2 암호 키 발생 회로, 상기 제 1 암호 키에 기초하여 원래 데이터를 암호 데이터로 암호화하는 암호화 회로, 및 상기 제 2 암호 키에 기초하여 상기 암호 데이터를 해독된 데이터로 해독하는 해독 회로를 구비하는 데이터 통신 시스템으로서,상기 제 1 암호 키 발생 회로는, 제 1 의사 난수를 생성하는 제 1 의사 난수 발생 회로, 상기 제 1 의사 난수에 기초하여 제 1 클럭 신호를 생성하는 제 1 클럭 발생기, 상기 제 1 클럭 신호에 응하여 제 2 의사 난수를 생성하는 제 2 의사 난수 발생 회로, 및 상기 제 1 암호 키로서 상기 암호화 회로로 상기 제 2 의사 난수를 공급하는 수단을 포함하며,상기 제 2 암호 키 발생 회로는, 제 3 의사 난수를 생성하는 제 3 의사 난수 발생 회로, 상기 제 3 의사 난수에 기초하여 제 2 클럭 신호를 생성하는 제 2 클럭 발생기, 상기 제 2 클럭 신호에 응하여 제 4 의사 난수를 생성하는 제 4 의사 난수 발생 회로, 및 상기 제 2 암호 키로서 상기 해독 회로로 상기 제 4 의사 난수를 공급하는 수단을 포함하는 것을 특징으로 하는 데이터 통신 시스템.
- 제 4 항에 있어서,상기 제 1 의사 난수 발생 회로는, 제 1 단의 레지스터 회로를 포함하는 복수의 제 1 레지스터 회로들로 이루어지는 제 1 쉬프트 레지스터 회로, 제 1 및 제 2 입력 노드 및 출력 노드를 가지는 제 1 게이트 회로, 및 상기 제 1 의사 난수로서 상기 제 1 레지스터 회로들의 내용의 적어도 하나를 추출하는 수단을 포함하고,상기 제 1 게이트 회로의 상기 제 1 입력 노드는 상기 제 1 레지스터 회로들의 상기 출력 노드들 중의 하나에 접속되며, 상기 제 1 게이트 회로의 상기 제 2 입력 노드는 상기 제 1 레지스터 회로들의 상기 출력 노드들 중의 다른 하나에 접속되며, 상기 제 1 게이트 회로의 상기 출력 노드는 상기 제 1 쉬프트 레지스터 회로의 상기 제 1 단의 레지스터 회로에 접속되며;상기 제 2 의사 난수 발생 회로는, 제 1 단의 레지스터 회로를 포함하는 복수의 제 2 레지스터 회로들로 이루어지는 제 2 쉬프트 레지스터 회로, 제 1 및 제 2 입력 노드 및 출력 노드를 가지는 제 2 게이트 회로, 및 상기 제 2 의사 난수로서 상기 제 2 레지스터 회로들의 내용의 적어도 하나를 추출하는 수단을 포함하고, 상기 제 2 게이트 회로의 상기 제 1 입력 노드는 상기 제 2 레지스터 회로들의 상기 출력 노드들 중의 하나에 접속되며, 상기 제 2 게이트 회로의 상기 제 2 입력 노드는 상기 제 2 레지스터 회로들의 상기 출력 노드들 중의 다른 하나에 접속되며, 상기 제 2 게이트 회로의 상기 출력 노드는 상기 제 2 쉬프트 레지스터 회로의 상기 제 1 단의 레지스터 회로에 접속되며;상기 제 3 의사 난수 발생 회로는, 제 1 단의 레지스터 회로를 포함하는 복수의 제 3 레지스터 회로들로 이루어지는 제 3 쉬프트 레지스터 회로, 제 1 및 제 2 입력 노드 및 출력 노드를 가지는 제 3 게이트 회로, 및 상기 제 3 의사 난수로서 상기 제 3 레지스터 회로들의 내용의 적어도 하나를 추출하는 수단을 포함하고, 상기 제 3 게이트 회로의 상기 제 1 입력 노드는 상기 제 3 레지스터 회로들의 상기 출력 노드들 중의 하나에 접속되며, 상기 제 3 게이트 회로의 상기 제 2 입력노드는 상기 제 3 레지스터 회로들의 상기 출력 노드들 중의 다른 하나에 접속되며, 상기 제 3 게이트 회로의 상기 출력 노드는 상기 제 3 쉬프트 레지스터 회로의 상기 제 1 단의 레지스터 회로에 접속되며;상기 제 4 의사 난수 발생 회로는, 제 1 단의 레지스터 회로를 포함하는 복수의 제 4 레지스터 회로들로 이루어지는 제 4 쉬프트 레지스터 회로, 제 1 및 제 2 입력 노드 및 출력 노드를 가지는 제 4 게이트 회로, 및 상기 제 4 의사 난수로서 상기 제 4 레지스터 회로들의 내용의 적어도 하나를 추출하는 수단을 포함하고, 상기 제 4 게이트 회로의 상기 제 1 입력 노드는 상기 제 4 레지스터 회로들의 상기 출력 노드들 중의 하나에 접속되며, 상기 제 4 게이트 회로의 상기 제 2 입력 노드는 상기 제 4 레지스터 회로들의 상기 출력 노드들 중의 다른 하나에 접속되며, 상기 제 4 게이트 회로의 상기 출력 노드는 상기 제 4 쉬프트 레지스터 회로의 상기 제 1 단의 레지스터 회로에 접속되는 것을 특징으로 하는 데이터 통신 시스템.
- 제 4 항에 있어서,상기 제 1 의사 난수 발생 회로는, 제 1 단의 레지스터 회로 및 최종단의 레지스터 회로를 포함하는 복수의 제 1 레지스터 회로들로 이루어지는 제 1 쉬프트 레지스터 회로, 및 상기 제 1 의사 난수로서 상기 제 1 레지스터 회로들의 내용의 적어도 하나를 추출하는 수단을 포함하고, 상기 제 1 쉬프트 레지스터 회로는 상기 제 1 클럭 신호에 응하여 쉬프트 동작을 수행하며;상기 제 2 의사 난수 발생 회로는, 상기 제 1 쉬프트 레지스터 회로의 상기 최종단 레지스터 회로에 접속된 제 1 단의 레지스터 회로를 포함하는 복수의 제 2 레지스터 회로들로 이루어지는 제 2 쉬프트 레지스터 회로, 제 1 및 제 2 입력 노드 및 출력 노드를 가지는 제 1 게이트 회로, 및 상기 제 2 의사 난수로서 상기 제 2 레지스터 회로들의 내용의 적어도 하나를 추출하는 수단을 포함하되, 상기 제 1 게이트 회로의 상기 제 1 입력 노드는 상기 제 2 레지스터 회로들의 상기 출력 노드들 중의 하나에 접속되며, 상기 제 1 게이트 회로의 상기 제 2 입력 노드는 상기 제 2 레지스터 회로들의 상기 출력 노드들 중의 다른 하나에 접속되며, 상기 제 1 게이트 회로의 상기 출력 노드는 상기 제 1 쉬프트 레지스터 회로의 상기 제 1 단의 레지스터 회로에 접속되며, 상기 제 2 쉬프트 레지스터 회로는 상기 제 1 클럭 신호에 응하여 쉬프트 동작을 수행하며;상기 제 3 의사 난수 발생 회로는, 제 1 단의 레지스터 회로 및 최종단의 레지스터 회로를 포함하는 복수의 제 3 레지스터 회로들로 이루어지는 제 3 쉬프트 레지스터 회로, 및 상기 제 3 의사 난수로서 상기 제 1 레지스터 회로들의 내용의 적어도 하나를 추출하는 수단을 포함하고, 상기 제 3 쉬프트 레지스터 회로는 상기 제 2 클럭 신호에 응하여 쉬프트 동작을 수행하며;상기 제 4 의사 난수 발생 회로는, 상기 제 3 쉬프트 레지스터 회로의 상기 최종단 레지스터 회로에 접속된 제 1 단의 레지스터 회로를 포함하는 복수의 제 4 레지스터 회로들로 이루어지는 제 4 쉬프트 레지스터 회로, 제 1 및 제 2 입력 노드 및 출력 노드를 가지는 제 2 게이트 회로, 및 상기 제 4 의사 난수로서 상기 제4 레지스터 회로들의 내용의 적어도 하나를 추출하는 수단을 포함하고, 상기 제 2 게이트 회로의 상기 제 1 입력 노드는 상기 제 4 레지스터 회로들의 상기 출력 노드들 중의 하나에 접속되며, 상기 제 2 게이트 회로의 상기 제 2 입력 노드는 상기 제 4 레지스터 회로들의 상기 출력 노드들 중의 다른 하나에 접속되며, 상기 제 2 게이트 회로의 상기 출력 노드는 상기 제 3 쉬프트 레지스터 회로의 상기 제 1 단의 레지스터 회로에 접속되며, 상기 제 4 쉬프트 레지스터 회로는 상기 제 2 클럭 신호에 응하여 쉬프트 동작을 수행하는 것을 특징으로 하는 데이터 통신 시스템.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1997-5335 | 1997-01-16 | ||
JP9005335A JP2937919B2 (ja) | 1997-01-16 | 1997-01-16 | 疑似乱数発生回路 |
JP97-5335 | 1997-01-16 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19980070252A KR19980070252A (ko) | 1998-10-26 |
KR100297154B1 true KR100297154B1 (ko) | 2001-08-07 |
Family
ID=11608373
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970076810A KR100297154B1 (ko) | 1997-01-16 | 1997-12-29 | 의사난수발생회로및이를채용한데이터통신시스템 |
Country Status (6)
Country | Link |
---|---|
US (2) | US6263082B1 (ko) |
EP (1) | EP0855642B1 (ko) |
JP (1) | JP2937919B2 (ko) |
KR (1) | KR100297154B1 (ko) |
CN (1) | CN1149782C (ko) |
DE (1) | DE69722367T2 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101254611B1 (ko) | 2004-11-12 | 2013-04-15 | 톰슨 라이센싱 | 비디오 재생 시스템에 대한 정상 플레이와 트릭 모드플레이에 대한 필름 그레인 시뮬레이션 |
Families Citing this family (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11340799A (ja) * | 1998-05-28 | 1999-12-10 | Oki Electric Ind Co Ltd | M系列発生回路、m系列の発生方法及びpn系列発生回路 |
JP2000222176A (ja) * | 1999-02-03 | 2000-08-11 | Mitsubishi Electric Corp | 乱数生成回路、当該乱数生成回路を内蔵する非接触icカード及びリーダ/ライタ、並びに、当該乱数生成回路を内蔵する装置のテスト方法 |
US6742129B1 (en) * | 1999-12-08 | 2004-05-25 | Carrier Corporation | Software security mechanism |
JP2001282715A (ja) * | 2000-03-31 | 2001-10-12 | Brother Ind Ltd | データ転送装置 |
US7120696B1 (en) * | 2000-05-19 | 2006-10-10 | Stealthkey, Inc. | Cryptographic communications using pseudo-randomly generated cryptography keys |
US6848024B1 (en) | 2000-08-07 | 2005-01-25 | Broadcom Corporation | Programmably disabling one or more cache entries |
US6732234B1 (en) | 2000-08-07 | 2004-05-04 | Broadcom Corporation | Direct access mode for a cache |
US6748492B1 (en) * | 2000-08-07 | 2004-06-08 | Broadcom Corporation | Deterministic setting of replacement policy in a cache through way selection |
US7424636B1 (en) * | 2000-08-10 | 2008-09-09 | Alcatel Lucent | Method and apparatus for controlling a clock signal of a line card circuit |
US6834291B1 (en) * | 2000-10-27 | 2004-12-21 | Intel Corporation | Gold code generator design |
US6691142B2 (en) * | 2001-01-09 | 2004-02-10 | Hewlett-Packard Development Company, L.P. | Pseudo random address generator for 0.75M cache |
US6993542B1 (en) | 2001-03-12 | 2006-01-31 | Cisco Technology, Inc. | Efficient random number generation for communication systems |
US6748495B2 (en) * | 2001-05-15 | 2004-06-08 | Broadcom Corporation | Random generator |
KR20030008859A (ko) * | 2001-07-20 | 2003-01-29 | 대우전자주식회사 | 유사난수열을 발생하는 lfsr을 이용한 피포 메모리제어장치 |
KR100393605B1 (ko) * | 2001-08-09 | 2003-08-02 | 삼성전자주식회사 | 피엔 시퀀스 상태 천이 장치 |
GB0123302D0 (en) * | 2001-09-28 | 2001-11-21 | Hw Comm Ltd | Cipher apparatus |
US6963888B2 (en) * | 2001-11-29 | 2005-11-08 | Koninklijke Philips Electronics N.V. | Method and apparatus for preventing noise from influencing a random number generator based on flip-flop meta-stability |
AT412747B (de) * | 2002-03-05 | 2005-06-27 | Rene-Michael Mag Cordes | Codegenerator und vorrichtung zur synchronen oder asynchronen sowie permanenten identifikation oder ver- und endschlüsselung von daten beliebiger länge |
JP4491706B2 (ja) | 2002-04-19 | 2010-06-30 | ソニー株式会社 | 暗号化復号化装置およびデータ受信装置 |
US7266587B2 (en) * | 2002-05-15 | 2007-09-04 | Broadcom Corporation | System having interfaces, switch, and memory bridge for CC-NUMA operation |
US20040049525A1 (en) * | 2002-09-06 | 2004-03-11 | Koninklijke Philips Electronics N.V. | Feedback random number generation method and system |
US8179954B2 (en) | 2007-10-30 | 2012-05-15 | Sony Corporation | Odd interleaving only of an odd-even interleaver when half or less data subcarriers are active in a digital video broadcasting (DVB) standard |
GB2454193B (en) * | 2007-10-30 | 2012-07-18 | Sony Corp | Data processing apparatus and method |
JP4335561B2 (ja) | 2003-03-28 | 2009-09-30 | Necエレクトロニクス株式会社 | 半導体集積回路装置 |
JP3732188B2 (ja) | 2003-03-31 | 2006-01-05 | Necマイクロシステム株式会社 | 擬似乱数発生回路 |
US7194496B2 (en) * | 2003-05-02 | 2007-03-20 | Spirent Communications Of Rockville, Inc. | System and method for producing functions for generating pseudo-random bit sequences |
US7424075B2 (en) | 2003-07-31 | 2008-09-09 | Crossroads Systems, Inc. | Pseudorandom data pattern verifier with automatic synchronization |
US7502468B2 (en) * | 2003-09-02 | 2009-03-10 | Ncipher Corporation Ltd. | Method and system for generating a cryptographically random number stream |
US7340496B2 (en) * | 2003-12-17 | 2008-03-04 | International Business Machines Corporation | System and method for determining the Nth state of linear feedback shift registers |
KR100839177B1 (ko) | 2005-01-21 | 2008-06-23 | 김월영 | 암호 알고리즘을 이용한 잠금 장치 |
US20070168406A1 (en) * | 2005-10-18 | 2007-07-19 | Meyer David R | Complementary linear feedback shift registers for generating advance timing masks |
FR2899352B1 (fr) * | 2006-03-29 | 2008-06-20 | Eads Secure Networks Soc Par A | Generateur de nombres aleatoires |
ATE443376T1 (de) * | 2007-10-30 | 2009-10-15 | Sony Corp | Vorrichtung und verfahren zur datenverarbeitung |
JP5191727B2 (ja) * | 2007-12-21 | 2013-05-08 | 株式会社ジャパンディスプレイイースト | 表示装置 |
JP5169597B2 (ja) | 2008-08-01 | 2013-03-27 | 富士通セミコンダクター株式会社 | 集積回路および試験方法 |
US9311681B2 (en) | 2012-01-24 | 2016-04-12 | Facebook, Inc. | Claiming conversations between users and non-users of a social networking system |
JP2014164342A (ja) * | 2013-02-21 | 2014-09-08 | Fujitsu Semiconductor Ltd | 擬似乱数生成回路および擬似乱数生成方法 |
US10708043B2 (en) | 2013-03-07 | 2020-07-07 | David Mayer Hutchinson | One pad communications |
CN103177956B (zh) | 2013-03-14 | 2015-11-25 | 上海华力微电子有限公司 | 一种二氧化硅金属阻挡层的淀积方法 |
US9331681B2 (en) * | 2013-11-05 | 2016-05-03 | STMicroelectronics International N.V | System and method for gaussian random noise generation |
US9897504B2 (en) * | 2015-04-20 | 2018-02-20 | Infineon Technologies Ag | System and method for a MEMS sensor |
CN105159652A (zh) * | 2015-08-12 | 2015-12-16 | 中国电子科技集团公司第四十一研究所 | 一种多通道伪随机信号发生方法 |
US10958414B2 (en) * | 2016-02-23 | 2021-03-23 | Google Llc | Clock period randomization for defense against cryptographic attacks |
KR101881143B1 (ko) * | 2016-09-26 | 2018-07-24 | 동서대학교산학협력단 | 무선통신 비트 오류 최소화를 위한 클럭조절형 랜덤 암호 발생기 |
CN108075877B (zh) * | 2016-11-15 | 2022-04-29 | 华为技术有限公司 | 一种安全系统及终端芯片 |
CN112054942B (zh) * | 2020-09-15 | 2021-12-17 | 中电科思仪科技股份有限公司 | 一种用于高位宽成帧误码测试的任意长度随机数据包生成方法 |
DE202023106573U1 (de) | 2023-11-09 | 2024-01-26 | Oculeus Gmbh | Kommunikations-Netzwerk mit Datenkanal |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0095272A1 (en) * | 1982-05-21 | 1983-11-30 | The Marconi Company Limited | Random sequence generators |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3790768A (en) | 1972-09-28 | 1974-02-05 | Prayfel Inc | Random number generator |
DE3370918D1 (en) | 1982-08-19 | 1987-05-14 | Bbc Brown Boveri & Cie | Method of synchronising encryption and decryption during the transmission of digital encrypted data, and apparatus for carrying out said method |
JP3425175B2 (ja) | 1992-02-06 | 2003-07-07 | 株式会社リコー | ランダムパルス生成装置及びランダムパルス生成方法 |
WO1993016432A1 (en) | 1992-02-14 | 1993-08-19 | Advantest Corporation | Multi-channel pseudo-random pattern generator |
JPH06308881A (ja) | 1993-04-08 | 1994-11-04 | Internatl Business Mach Corp <Ibm> | 暗号化方法及び装置 |
JP3469294B2 (ja) * | 1994-03-10 | 2003-11-25 | 株式会社東芝 | 線型帰還シフトレジスタおよび半導体集積回路装置 |
JP3636497B2 (ja) * | 1995-02-27 | 2005-04-06 | 株式会社ルネサステクノロジ | 半導体集積回路装置 |
-
1997
- 1997-01-16 JP JP9005335A patent/JP2937919B2/ja not_active Expired - Fee Related
- 1997-11-20 US US08/975,186 patent/US6263082B1/en not_active Expired - Lifetime
- 1997-12-18 EP EP97122436A patent/EP0855642B1/en not_active Expired - Lifetime
- 1997-12-18 DE DE69722367T patent/DE69722367T2/de not_active Expired - Fee Related
- 1997-12-29 KR KR1019970076810A patent/KR100297154B1/ko not_active IP Right Cessation
- 1997-12-30 CN CNB971261016A patent/CN1149782C/zh not_active Expired - Fee Related
-
2001
- 2001-04-19 US US09/837,484 patent/US6754345B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0095272A1 (en) * | 1982-05-21 | 1983-11-30 | The Marconi Company Limited | Random sequence generators |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101254611B1 (ko) | 2004-11-12 | 2013-04-15 | 톰슨 라이센싱 | 비디오 재생 시스템에 대한 정상 플레이와 트릭 모드플레이에 대한 필름 그레인 시뮬레이션 |
Also Published As
Publication number | Publication date |
---|---|
EP0855642B1 (en) | 2003-05-28 |
DE69722367T2 (de) | 2004-04-01 |
DE69722367D1 (de) | 2003-07-03 |
CN1190830A (zh) | 1998-08-19 |
EP0855642A2 (en) | 1998-07-29 |
JPH10207695A (ja) | 1998-08-07 |
US6754345B2 (en) | 2004-06-22 |
JP2937919B2 (ja) | 1999-08-23 |
KR19980070252A (ko) | 1998-10-26 |
EP0855642A3 (en) | 1999-01-27 |
US6263082B1 (en) | 2001-07-17 |
CN1149782C (zh) | 2004-05-12 |
US20010033663A1 (en) | 2001-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100297154B1 (ko) | 의사난수발생회로및이를채용한데이터통신시스템 | |
AU767265B2 (en) | Robust random number generator | |
Nandi et al. | Theory and applications of cellular automata in cryptography | |
KR100333255B1 (ko) | N-비트입력값을변환된n-비트출력값으로변환하는장치및방법 | |
JP2541480B2 (ja) | 擬似乱数発生装置 | |
US7142675B2 (en) | Sequence generator and method of generating a pseudo random sequence | |
US5995629A (en) | Encoding device | |
KR100377172B1 (ko) | 데이터 암호화 표준 알고리즘을 이용한 암호화 장치의 키스케쥴러 | |
US20050207207A1 (en) | Random number generator and method for generating random numbers | |
EP0278170A2 (en) | Cipher system | |
US20090204656A1 (en) | Pseudo random number generator and method for generating a pseudo random number bit sequence | |
AU753041B2 (en) | Sequence generator | |
JPH06244684A (ja) | 擬似乱数列の発生方法および回路装置 | |
KR20050087271A (ko) | 가변 키 길이를 가지는 초기 라운드 키에 대응하는 암호라운드 키와 복호 라운드 키를 선택적으로 발생하는 키스케쥴 장치 | |
US5237615A (en) | Multiple independent binary bit stream generator | |
JP5171420B2 (ja) | 擬似乱数生成装置 | |
JPH10320181A (ja) | 非線形フィードバック・シフトレジスタ回路 | |
US6327654B1 (en) | Semiconductor integrated circuit for cryptographic process and encryption algorithm alternating method | |
US7502814B2 (en) | Device and method for generating a pseudorandom sequence of numbers | |
EP0619659A2 (en) | A shrinking generator for cryptosystems | |
JPS5843743B2 (ja) | 暗号化方式 | |
KR910008447B1 (ko) | 암호코드열 발생장치 | |
KR100317250B1 (ko) | 데이터암호화방법 | |
KR0175611B1 (ko) | 여러 종류의 키 수열을 생성하는 난수 발생장치 | |
GB2380916A (en) | Pseudo random stream cipher generator comprising shift registers where the shifting of the registers at each clock is dependent upon the register state |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20070511 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |