KR100226867B1 - Stream cipher system of wireless communication - Google Patents

Stream cipher system of wireless communication Download PDF

Info

Publication number
KR100226867B1
KR100226867B1 KR1019970035157A KR19970035157A KR100226867B1 KR 100226867 B1 KR100226867 B1 KR 100226867B1 KR 1019970035157 A KR1019970035157 A KR 1019970035157A KR 19970035157 A KR19970035157 A KR 19970035157A KR 100226867 B1 KR100226867 B1 KR 100226867B1
Authority
KR
South Korea
Prior art keywords
unit
signal
linear feedback
feedback register
outputting
Prior art date
Application number
KR1019970035157A
Other languages
Korean (ko)
Other versions
KR19990011903A (en
Inventor
배숭수
Original Assignee
구자홍
엘지전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 구자홍, 엘지전자주식회사 filed Critical 구자홍
Priority to KR1019970035157A priority Critical patent/KR100226867B1/en
Publication of KR19990011903A publication Critical patent/KR19990011903A/en
Application granted granted Critical
Publication of KR100226867B1 publication Critical patent/KR100226867B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/12Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
    • 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/0625Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
    • 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/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • 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
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry

Abstract

무선 통신의 스트림 암호 시스템은 종래 기술인 블럭 암호 시스템과 스트림 암호 시스템을 통합하여 스트림 암호 시스템을 여러개의 비선형 결합 함수로 구현하기 위한 것으로서, 비밀키(Key) 입력을 내부의 선형함수에 따라 연산하여 출력하는 제 1 선형 궤환 레지스터부와, 암호화된 시드 벡터(Seed Vecter)를 발생하는 시드 벡터 발생부와, 상기 제 1 선형 궤환 레지스터부의 신호와 시드 벡터를 논리 연산하여 그 결과 신호를 출력하는 논리 연산부와, 상기 논리 연산부의 신호를 저장하고 그 저장된 데이터를 비선형 함수에 따라 연산하여 출력하는 비선형 함수부와, 상기 비선형 함수부의 신호를 일정 길이의 블럭으로 분할하여 임시 저장하고 그 임시 저장된 블럭을 데이터 부호 표준(DES) 알고리즘을 수행하여 키 스트림을 출력하는 블럭 암호화부로 구성됨에 그 요지가 있다.The stream cipher system of wireless communication is to implement the stream cipher system as a plurality of nonlinear combining functions by integrating the conventional block cipher system and the stream cipher system, and outputs a secret key input based on an internal linear function. A first linear feedback register unit, a seed vector generator for generating an encrypted seed vector, a logic operation unit for performing a logic operation on a signal and a seed vector of the first linear feedback register unit, and outputting a resultant signal; And a nonlinear function unit for storing a signal of the logical operation unit and calculating and outputting the stored data according to a nonlinear function, and temporarily dividing the signal of the nonlinear function unit into blocks having a predetermined length and temporarily storing the temporarily stored block. Block encryption unit that outputs key stream by performing (DES) algorithm To have its base.

Description

무선 통신의 스트림 암호 시스템Stream cipher system of wireless communication

본 발명은 무선 통신에 관한 것으로, 특히 무선 통신의 스트림 암호 시스템에 관한 것이다.The present invention relates to wireless communications, and more particularly to a stream cipher system for wireless communications.

블록 암호는 암호화하고자 하는 평문(P)을 같은 길이를 갖는 블록 단위 P1, P2,...로 분할하여 각 Pi를 동일한 키로 암호와 및 복호화하는 방식으로 하기한 수학식 1과 같이 표현된다.The block cipher is expressed by Equation 1 below by dividing the plaintext P to be encrypted into block units P1, P2, ... having the same length and encrypting and decoding each Pi with the same key.

Ek(P)=Ek(P1)Ek(P2)...Ek (P) = Ek (P1) Ek (P2) ...

그리고, 스트림 암호는 쉬프트 레지스터를 이용한 이진 수열 발생기를 사용하는 암호 시스템으로, 키 스트림 생성방식에 따라 동기식(synchronous stream cipher)과 자기 동기식(self-synchronous stream cipher) 방식으로 나눌 수 있다.The stream cipher is a cipher system using a binary sequence generator using a shift register, and can be divided into a synchronous stream cipher and a self-synchronous stream cipher according to a key stream generation method.

동기식(synchronous stream cipher) 스트림 암호 방식은 키 스트림이 평문 스트림과 독립적으로 생성되는 암호방식이고, 자기 동기식(self-synchronous stream cipher) 스트림 암호 방식은 키 스트림이 이전의 암호문 스트림에 의존하여 생성되는 암호방식이다.The synchronous stream cipher stream cipher is a cipher in which the key stream is generated independently of the plaintext stream. The self-synchronous stream cipher cipher is a cipher in which the key stream is generated depending on the previous ciphertext stream. That's the way.

이하, 종래 기술에 따른 무선 통신의 블럭 암호 시스템에 대하여 첨부한 도면을 참조하여 설명하면 다음과 같다.Hereinafter, a block cipher system for wireless communication according to the prior art will be described with reference to the accompanying drawings.

도 1 은 종래 기술에 따른 무선 통신의 블럭 암호 시스템의 블럭 구성도로서, 암호화하고자 하는 평문(serial input:P)을 같은 길이를 갖는 블럭으로 분할하여 출력하는 블럭 포머(block former)부(1)와, 상기 블럭 포머(block former)부(1)의 블록문(block input::P1, P2,...)을 비밀키(Key) 입력에 따라 암호화 알고리즘을 통해 암호화하여 출력하는 암호화부(2)와, 상기 암호화부(2)의 암호문을 출력하는 블럭 출력부(3)와, 상기 블럭 출력부(3)에서 출력된 암호문을 상기 암호화 과정의 반대 과정을 거쳐 복호화하여 원래의 평문(serial output:P)을 추출하는 복호화부(4)로 구성된다.1 is a block diagram of a block cipher system for wireless communication according to the prior art, in which a block former unit 1 for dividing a serial input (P) to be encrypted into blocks having the same length and outputting the same; And an encryption unit (2) which encrypts and outputs the block statements (block input: P1, P2, ...) of the block former unit 1 through an encryption algorithm according to a secret key input. ), The block output unit 3 for outputting the cipher text of the encryption unit 2, and the original plain text by decrypting the cipher text output from the block output unit 3 through the reverse process of the encryption process. It consists of the decoding part 4 which extracts: P).

이와 같이 구성된 종래 기술에 따른 무선 통신의 블럭 암호 시스템에 대하여 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다.The block cipher system for wireless communication according to the prior art configured as described above will be described in detail with reference to the accompanying drawings.

먼저, 블럭 포머(block former)부(1)는 암호화하고자 하는 평문(serial input:P)을 같은 길이를 갖는 블럭으로 분할하여 다수개의 블럭문(block input:P1, P2,...)을 출력한다.First, the block former unit 1 divides a serial input (P) to be encrypted into blocks having the same length and outputs a plurality of block inputs (P1, P2, ...). do.

그러면 암호화부(2)는 상기 블럭 포머(block former)부(1)의 다수개의 블록문(block input:P1, P2,...)을 비밀키(Key) 입력에 따라 암호화 알고리즘을 통해 암호화하여 암호문{Ek(P1)(P2)...}을 출력한다.Then, the encryption unit 2 encrypts a plurality of block statements (block input P1, P2, ...) of the block former unit 1 through an encryption algorithm according to a secret key input. Output ciphertext {Ek (P1) (P2) ...}.

여기서 비밀키(Key)는 고정시킬 수도 있고, 외부에서 가변시킬 수도 있다.In this case, the secret key may be fixed or externally changed.

이에 따라 블럭 출력부(3)는 상기 암호화부(2)의 암호문{Zk(P1)(P2)...}을 출력한다.As a result, the block output section 3 outputs the cipher text {Zk (P1) (P2) ...} of the encryption section 2.

그러면 복호화부(4)는 상기 블럭 출력부(3)에서 출력된 암호문{Ek(P1)(P2)...}을 상기 암호화부(2)의 암호화 과정과는 반대 과정을 거쳐 복호화하여 원래의 평문(serial input:P)을 추출한다.Then, the decryption unit 4 decrypts the ciphertext {Ek (P1) (P2) ...} outputted from the block output unit 3 through the reverse process of the encryption process of the encryption unit 2 and decrypts the original text. Extract the serial input (P).

상기 평문 및 암호문의 평문 및 암호문의 블럭 크기를 m비트라 할 때 평문 블럭에 하나의 암호문 블럭을 대응시키는 암호 변환의 수는 2n! 개의 경우가 생기고 따라서 키의 총수는 2n! 개가 되며 키의 최대 크기는 log2n! 비트가 된다.When the block size of the plaintext and ciphertext of the plaintext and ciphertext is m bits, the number of cipher conversions that correspond to one ciphertext block to the plaintext block is 2 n ! Cases, so the total number of keys 2 n ! , The maximum size of a key log2 n ! Bit.

그리고 블럭 크기가 작으면 주어진 비밀키(Key)에 대응하는 평문과 암호문 블럭의 쌍을 모두 기억장치에 저장시킬 수 있다.If the block size is small, a pair of plaintext and ciphertext blocks corresponding to a given secret key can be stored in the storage device.

한편, 도 2 는 종래 기술에 따른 무선 통신의 스트림 암호 시스템의 블럭 구성도로서, 시드 벡터(Seed Vecter)와 비밀키(Key) 입력에 따라 암호화 알고리즘을 통해 암호화 신호를 출력하는 제 1 로직부(10)와, 상기 제 1 로직부(10)의 암호화 신호와 평문(P)을 연산하여 암호문을 출력하는 제 1 혼합부(20)와, 상기 제 1 혼합부(20)의 암호문을 전송하는 채널부(30)와, 상기 시드 벡터(Seed Vecter)와 비밀키(Key) 입력에 따라 복호화 알고리즘을 통해 복호화 신호를 출력하는 제 2 로직부(40)와, 상기 제 2 로직부(40)의 복호화 신호와 채널부(30)를 통해 전송된 암호문을 연산하여 원래의 평문(P)을 추출하는 제 2 혼합부(50)로 구성된다.FIG. 2 is a block diagram of a stream cipher system for wireless communication according to the prior art, and includes a first logic unit for outputting an encryption signal through an encryption algorithm according to a seed vector and a key input. 10), the first mixing unit 20 for outputting the cipher text by calculating the encryption signal and the plain text P of the first logic unit 10, and the channel for transmitting the cipher text of the first mixing unit 20 A second logic unit 40 which outputs a decryption signal through a decryption algorithm according to the seed vector and the seed vector and the secret key, and the decryption of the second logic unit 40. It consists of a second mixing unit 50 for extracting the original plain text (P) by calculating the cipher text transmitted through the signal and the channel unit 30.

이와 같이 구성된 종래 기술에 따른 무선 통신의 블럭 암호 시스템에 대하여 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다.The block cipher system for wireless communication according to the prior art configured as described above will be described in detail with reference to the accompanying drawings.

먼저, 제 1 로직부(10)는 시드 벡터(Seed Vecter)와 이진 수열 발생기(미도시)의 비밀키(K) 입력에 따라 암호화 알고리즘을 통해 암호화 신호를 출력한다.First, the first logic unit 10 outputs an encryption signal through an encryption algorithm according to a seed vector (Seed Vecter) and a secret key (K) input of a binary sequence generator (not shown).

여기서 시드 벡터(Seed Vecter)와 비밀키(K)는 고정시킬 수도 있고, 외부에서 가변시킬 수도 있다.Here, the seed vector (Seed Vecter) and the secret key (K) may be fixed or externally changed.

그러면 제 1 혼합부(20)는 상기 제 1 로직부(10)의 암호화 신호와 평문(P)을 연산하여 암호문(C)을 출력한다.Then, the first mixing unit 20 calculates the encrypted signal of the first logic unit 10 and the plain text P to output the cipher text C.

즉, 제 1 혼합부(20)는 상기 제 1 로직부(10)의 암호화 신호와 평문(P)을 배타적 논리합하여 암호문(C)을 출력한다.That is, the first mixing unit 20 outputs the ciphertext C by exclusively ORing the encrypted signal of the first logic unit 10 and the plain text P.

상기 제 1 혼합부(20)의 암호문은 채널부(30)를 통해 전송된다.The cipher text of the first mixing unit 20 is transmitted through the channel unit 30.

한편, 제 2 로직부(40)는 상기 시드 벡터(Seed Vecter)와 비밀키(Key) 입력에 따라 복호화 알고리즘을 통해 복호화 신호를 출력한다.Meanwhile, the second logic unit 40 outputs a decryption signal through a decryption algorithm according to the seed vector and the secret key.

여기서 제 1 및 제 2 로직부(10)(40)에 입력되는 시드 벡터(Seed Vecter)와 비밀키(Key)는 동일하다.Here, the seed vector (Seed Vecter) and the secret key (Key) input to the first and second logic units 10 and 40 are the same.

이에 따라 제 2 혼합부(50)는 상기 제 2 로직부(40)의 복호화 신호와 채널부(30)를 통해 전송된 암호문을 연산하여 원래의 평문(P)을 추출한다.Accordingly, the second mixing unit 50 extracts the original plain text P by calculating the decrypted signal of the second logic unit 40 and the cipher text transmitted through the channel unit 30.

상기 스트림 암호는 키 스트림 생성 방식에 따라 동기식(synchromous stream cipher)과 자기 동기식(self-synchromous stream cipher) 방식으로 나눌 수 있다.The stream cipher may be divided into a synchronous (synchromous stream cipher) and a self-synchronous stream cipher according to the key stream generation method.

여기서 동기식 방식에서의 키 스트림은 스트림과 독립적으로 생성된다.Here, the key stream in the synchronous manner is generated independently of the stream.

그러므로 송신측과 수신측에서 동일한 키 스트림을 발생시키기 위해 생성 알고리즘을 사전에 결정하여야 한다.Therefore, the generation algorithm must be determined in advance in order to generate the same key stream at the transmitting side and the receiving side.

이에 반하여 자기 동기식 스트림 암호 방식은 키 스트림이 이전의 암호문 스트림에 의존하여 생성되는 암호 방식이다.In contrast, the self-synchronizing stream cipher system is a cipher system in which the key stream is generated depending on the previous ciphertext stream.

이 방식은 전송중에 암호문 한 비트가 다른 비트로 변하거나 소멸되면 그 오류가 다음 한 비트에 전파되고 그 후 올바른 암호문이 한 비트 만큼 수신측에 도착하면 다시 자동적으로 동기가 맞춰져 올바른 복호화가 행하여 진다.In this method, if one bit of ciphertext is changed or disappeared during transmission, the error is propagated to the next one bit, and then the correct ciphertext is automatically synchronized and the correct decryption is performed when the correct ciphertext arrives by one bit.

이와 같은 한 비트의 전송 오류가 다음의 한 비트에만 영향을 미치므로 자기 동기식이라 한다.This one bit transmission error is called self-synchronous because it affects only one next bit.

그러나 종래 기술에 따른 블럭 암호는 평문(P)의 정보가 암호문의 여러 심볼에 분산되므로 확산 효과가 우수하나 블럭의 길이가 정해져 있기 때문에 심볼의 삽입이나 제거가 불가능한 문제점이 있다.However, the block cipher according to the related art has excellent spreading effect because the information of the plaintext P is distributed among several symbols of the ciphertext, but there is a problem that the insertion or removal of the symbol is impossible because the length of the block is determined.

또한, 평문의 언어적 특징이 암호문 블럭의 통계적 특징인 문자의 출현 빈도로 나타나기 쉬우므로 문자의 출현 빈도에 의한 분석에 의해 해독될 위험이 있다.In addition, since the linguistic characteristics of the plain text are likely to be represented by the frequency of appearance of the character, which is a statistical feature of the ciphertext block, there is a risk of being deciphered by the analysis by the frequency of occurrence of the character.

한편, 스트림 암호는 전송중에 암호문 한 비트가 소멸되면 그 비트 이후의 모든 암호문에 대하여 동기가 어긋나 오류가 전파된다.On the other hand, if a bit of a ciphertext disappears during transmission, the stream cipher is out of sync with all ciphertexts after that bit and an error propagates.

그러므로 동기를 맞추기 위하여 송신측과 수신측에서 암호 통신 개시의 프로토콜(protocol)에 맞추어 다시 새로운 초기치부터 키 스트림을 생성해야 하는 문제점이 있다.Therefore, in order to synchronize, there is a problem in that the sender and the receiver must generate a key stream from the new initial value again in accordance with the protocol of the encryption communication start.

따라서 본 발명은 상기와 같은 문제점을 해결하기 위해 안출한 것으로서, 종래 기술인 블럭 암호 시스템과 스트림 암호 시스템을 통합하여 스트림 암호 시스템을 여러개의 비선형 결합 함수로 구현하도록 한 무선 통신의 스트림 암호 시스템을 제공하는데 그 목적이 있다.Accordingly, the present invention has been made to solve the above problems, and provides a stream encryption system for wireless communication to integrate the conventional block cipher system and the stream cipher system to implement the stream cipher system as a plurality of nonlinear combining functions. The purpose is.

도 1 - 종래 기술에 따른 무선 통신 블럭 암호 시스템의 블럭 구성도1-block diagram of a wireless communication block encryption system according to the prior art

도 2 - 종래 기술에 따른 무선 통신 스트림 암호 시스템의 블럭 구성도2-block diagram of a wireless communication stream encryption system according to the prior art

도 3 - 본 발명에 따른 무선 통신 스트림 암호 시스템의 블럭 구성도3 is a block diagram of a wireless communication stream encryption system according to the present invention.

도 4 - 도 3 의 블럭 암호화부의 상세 구성도4-3 is a detailed block diagram of the block encryption unit of FIG.

도면의 주요부분에 대한 부호의 설명Explanation of symbols for main parts of the drawings

110 : 제 1 선형 궤환 레지스터부 120 : 시드 벡터 발생부110: first linear feedback register section 120: seed vector generator

130 : 논리 연산부 140 : 비선형 함수부130: logical operation unit 140: nonlinear function unit

150 : 블럭 암호화부 151 : 임시 저장부150: block encryption unit 151: temporary storage unit

151 : DES 알고리즘부 153 : 제 2 선형 궤환 레지스터부151: DES algorithm unit 153: second linear feedback register unit

153a : 선형 궤환 레지스터 153b : 혼합기153a: Linear Feedback Register 153b: Mixer

상기와 같은 목적을 달성하기 위한 본 발명에 따른 무선 통신의 스트림 암호 시스템의 특징은, 비밀키(Key) 입력을 선형함수에 따라 연산하여 출력하는 제 1 선형 궤환 레지스터부와, 암호화된 시드 벡터(Seed Vecter)를 발생하는 시드 벡터 발생부와, 상기 제 1 선형 궤환 레지스터부의 신호와 시드 벡터를 논리 연산하여 그 결과 신호를 출력하는 논리 연산부와, 상기 논리 연산부의 신호를 저장하고 그 저장된 데이터를 비선형 함수에 따라 연산하여 출력하는 비선형 함수부와, 상기 비선형 함수부의 신호를 일정 길이의 블럭으로 분할하여 임시 저장하고 그 임시 저장된 블럭을 데이터 부호 표준(DES) 알고리즘을 수행하여 키 스트림을 출력하는 블럭 암호화부를 포함하여 구성되는데 있다.A feature of the stream encryption system for wireless communication according to the present invention for achieving the above object is a first linear feedback register unit for calculating and outputting a secret key (Key) input according to a linear function, and an encrypted seed vector ( A seed vector generator for generating a Seed Vecter, a logic operator for performing a logic operation on the signal and the seed vector of the first linear feedback register, and outputting a result signal, and storing the signal of the logic operator and non-linearly storing the stored data. A non-linear function unit for calculating and outputting a function according to a function, and dividing the signal of the non-linear function unit into blocks having a predetermined length to temporarily store the block, and outputting a key stream by performing a data sign standard (DES) algorithm. It consists of including wealth.

이하, 본 발명에 따른 무선 통신의 스트림 암호 시스템에 대하여 첨부한 도면을 참조하여 설명하면 다음과 같다.Hereinafter, a stream cipher system for wireless communication according to the present invention will be described with reference to the accompanying drawings.

도 3 은 본 발명에 따른 무선 통신의 스트림 암호 시스템의 구성도를 나타낸 것으로서, 비밀키(Key) 입력을 선형함수에 따라 연산하여 출력하는 제 1 선형 궤환 레지스터부(110)와, 암호화된 시드 벡터(Seed Vecter)를 발생하는 시드 벡터 발생부(120)와, 상기 제 1 선형 궤환 레지스터부(110)의 신호와 시드 벡터를 논리 연산하여 그 결과 신호를 출력하는 논리 연산부(130)와, 상기 논리 연산부(130)의 신호를 저장하고 그 저장된 데이터를 비선형 함수에 따라 연산하여 출력하는 비선형 함수부(140)와, 상기 비선형 함수부(140)의 신호를 일정 길이의 블럭으로 분할하여 임시 저장하고 그 임시 저장된 블럭을 데이터 부호 표준(DES) 알고리즘을 수행하여 키 스트림을 출력하는 블럭 암호화부(150)로 구성된다.3 is a block diagram of a stream cipher system for wireless communication according to the present invention, including a first linear feedback register unit 110 for calculating a secret key input according to a linear function and outputting the encrypted seed vector. A seed vector generator 120 for generating a seed vect, a logic operator 130 for performing a logic operation on the signal and the seed vector of the first linear feedback register unit 110, and outputting a resultant signal; The nonlinear function unit 140 stores the signal of the operation unit 130 and calculates and outputs the stored data according to the nonlinear function, and temporarily stores the signal of the nonlinear function unit 140 by dividing the signal of the nonlinear function unit into blocks having a predetermined length. The block encryption unit 150 outputs a key stream by performing a data sign standard (DES) algorithm on the temporarily stored block.

도 4 는 도 3 의 블럭 암호화부의 상세 구성도로서, 상기 블럭 암호화부(150)는 상기 비선형 함수부(140)의 신호를 일정 단위로 분할하여 임시 저장하는 임시 저장부(151)와, 상기 임시 저장부(151)의 신호를 비밀키(Key) 입력에 따라 데이터 부호 표준(DES) 알고리즘을 수행하여 그 결과 신호를 출력하는 데이터 부호 표준(DES) 알고리즘부(152)와, 상기 데이터 부호 표준(DES) 알고리즘부(152)의 신호를 시프트시켜 출력하고 그 출력된 신호를 피드백하여 논리 연산하는 제 2 선형 궤환 레지스터부(153)로 구성된다.4 is a detailed block diagram of the block encryption unit of FIG. 3, wherein the block encryption unit 150 divides the signal of the nonlinear function unit 140 into a predetermined unit and temporarily stores the temporary storage unit 151. A data sign standard (DES) algorithm unit 152 which performs a data sign standard (DES) algorithm on the signal of the storage unit 151 according to a secret key input, and outputs a signal as a result, and the data sign standard ( DES) second linear feedback register section 153 which shifts and outputs the signal of the algorithm section 152 and feeds back the output signal.

상기 제 2 선형 궤환 레지스터부(153)는 상기 데이터 부호 표준(DES) 알고리즘부(152)의 신호를 시프트하여 키 스트림을 출력하고 논리 연산된 데이터를 입력받는 선형 궤환 레지스터(153a)와, 상기 선형 궤환 레지스터(153a)에서 출력된 신호를 피드백하여 논리 연산하여 그 결과 데이터를 상기 선형 궤환 레지스터(153a)에 입력하는 혼합기(153b)로 구성된다.The second linear feedback register unit 153 shifts a signal of the data code standard (DES) algorithm unit 152 to output a key stream and receives a logically calculated data, and the linear feedback register 153a. And a mixer 153b which feeds back the signal output from the feedback register 153a and performs a logical operation to input the resultant data into the linear feedback register 153a.

이와 같이 구성된 본 발명에 따른 무선 통신의 스트림 암호 시스템의 동작을 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다.The operation of the stream encryption system for wireless communication according to the present invention configured as described above will be described in detail with reference to the accompanying drawings.

먼저, 제 1 선형 궤환 레지스터부(110)는 비밀키(Key) 입력을 내부의 선형함수에 따라 연산하여 출력한다.First, the first linear feedback register unit 110 calculates and outputs a secret key input according to an internal linear function.

그리고 시드 벡터 발생부(120)는 암호화된 시드 벡터를 발생한다.The seed vector generator 120 generates an encrypted seed vector.

여기서 비밀키(Key)는 선형 궤환 레지스터부(110)와 시드 벡터 발생부(120)의 초기값이 된다.The secret key is an initial value of the linear feedback register unit 110 and the seed vector generator 120.

아울러 선형 궤환 레지스터부(110)내 다수개의 선형 궤환 레지스터(110a∼110n)는 최대 주기를 갖는 M-시퀀스(sequence)로 구성된다.In addition, the plurality of linear feedback registers 110a to 110n in the linear feedback register unit 110 are configured with an M-sequence having a maximum period.

그리고 선형 궤환 레지스터부(110)내 다수개의 선형 궤환 레지스터(110a∼110n)의 길이가 L이면 주기 T는 2L-1이다.If the length of the plurality of linear feedback registers 110a to 110n in the linear feedback register section 110 is L, the period T is 2 L −1.

또한, 선형 궤환 레지스터부(110)는 비선형 함수부(140)에서 출력되는 출력 시퀀스의 주기를 최대가 되게 하기 위하여 다수개의 선형 궤환 레지스터(110a∼110n)를 구성하는 원시 다항식의 차수가 서로 소가 되게 한다.In addition, the linear feedback register unit 110 has a small order of primitive polynomials constituting a plurality of linear feedback registers 110a to 110n so as to maximize the period of the output sequence output from the nonlinear function unit 140. To be.

예를 들면 상기 다수개의 선형 궤환 레지스터(110a∼110n)가 6개라면 각각의 선형 궤환 레지스터(110a∼110f)의 원시 다항식은 각각 수학식 2 내지 수학식 7과 같다.For example, if the plurality of linear feedback registers 110a to 110n is six, the primitive polynomials of the linear feedback registers 110a to 110f are represented by Equations 2 to 7, respectively.

X43+X6+X5+X+1X 43 + X 6 + X 5 + X + 1

X46+X8+X5+X3+X2+X+1X 46 + X 8 + X 5 + X 3 + X 2 + X + 1

X53+X16+X15+X+1X 53 + X 16 + X 15 + X + 1

X57+X5+X3+X2+1X 57 + X 5 + X 3 + X 2 +1

X59+X6+X5+X4+X3+X+1X 59 + X 6 + X 5 + X 4 + X 3 + X + 1

X61+X16+X15+1X 61 + X 16 + X 15 +1

상기 시드 벡터 발생부(120)의 단수는 상기 선형 궤환 레지스터부(110)내 선형 궤환 레지스터(110a∼110n)의 개수와 같다.The number of stages of the seed vector generator 120 is equal to the number of linear feedback registers 110a to 110n in the linear feedback register unit 110.

이에 따라 논리 연산부(130)는 상기 제 1 선형 궤환 레지스터부(110)의 신호와 시드 벡터를 논리 연산하여 그 결과 신호를 출력한다.Accordingly, the logic operation unit 130 performs a logic operation on the signal and the seed vector of the first linear feedback register unit 110 and outputs the resultant signal.

즉, 논리 연산부(130)내 다수개의 배타적 논리합 게이트(130a∼130n)는 상기 선형 궤환 레지스터부(110)내 선형 궤환 레지스터(110a∼110n)의 신호와 상기 시드 벡터 발생부(120)의 시드 벡터를 각각 배타적 논리합하여 출력한다.In other words, the plurality of exclusive OR gates 130a to 130n in the logic operation unit 130 may generate signals from the linear feedback registers 110a to 110n in the linear feedback register unit 110 and the seed vectors of the seed vector generator 120. Outputs the result of an exclusive OR.

예를 들면 논리 연산부(130)내 배타적 논리합 게이트(130i)는 상기 시드 벡터 발생부(120)의 i번째 비트와 i번째 선형 궤환 레지스터(110i)의 신호와 한 비트씩 배타적 논리합(XOR)하여 출력한다.For example, the exclusive OR gate 130i in the logic operator 130 outputs an exclusive OR by one bit with the signals of the i-th bit and the i-th linear feedback register 110i of the seed vector generator 120. do.

그러면 비선형 함수부(140)는 상기 논리 연산부(130)의 신호를 저장하고 그 저장된 데이터를 비선형 함수에 따라 연산하여 출력한다.Then, the nonlinear function unit 140 stores the signal of the logical operation unit 130 and calculates and outputs the stored data according to the nonlinear function.

이에 따라 블럭 암호화부(150)는 상기 비선형 함수부(140)의 신호를 일정 길이의 블럭으로 분할하여 임시 저장하고 그 임시 저장된 블럭을 데이터 부호 표준(DES) 알고리즘을 수행하여 키 스트림을 출력한다.Accordingly, the block encryption unit 150 divides the signal of the nonlinear function unit 140 into blocks of a predetermined length and temporarily stores the signal. The block encryption unit 150 outputs a key stream by performing a data sign standard (DES) algorithm.

즉, 상기 블럭 암호화부(150)내 임시 저장부(151)는 상기 비선형 함수부(140)의 신호를 일정 단위로 분할하여 임시 저장한다.That is, the temporary storage unit 151 in the block encryption unit 150 divides the signal of the nonlinear function unit 140 into a predetermined unit and temporarily stores the signal.

그러면 데이터 부호 표준(DES) 알고리즘부(152)는 상기 임시 저장부(151)의 신호를 비밀키(Key) 입력에 따라 데이터 부호 표준(DES) 알고리즘을 수행하여 그 결과 신호를 출력한다.Then, the data sign standard (DES) algorithm unit 152 performs the data sign standard (DES) algorithm on the signal of the temporary storage unit 151 according to a secret key input, and outputs the result signal.

즉, DES 알고리즘부(152)는 상기 임시 저장부(151)의 64비트의 신호는 32비트씩 좌, 우(L, R)로 나눠 32비트의 L은 첫 번째 키 값으로 만들어진 암호화 함수와 modulo-2 연산되어 다음 단계의 R에 저장되고 32비트의 R은 암호화 함수와 mldulo-2 연산된 후 다음의 L에 저장되며, 이러한 반복 과정이 16회에 걸쳐 반복된다.That is, the DES algorithm 152 divides the 64-bit signal of the temporary storage unit 151 into left and right (L, R) bits by 32 bits, and L-bit of 32 bits is an encryption function and modulo made of the first key value. -2 operation is stored in R of the next step, 32-bit R is stored in the next L after the encryption function and mldulo-2 operation, and this iteration process is repeated 16 times.

상기 DES 알고리즘부(152)에서 매회마다 사용되는 암호화 함수는 32비트의 R이 확장 박스에 의해 48비트로 확장되며, L도 역시 확장 박스에 의해 48비트로 확장되어 외부에서 공급되는 64비트로 구성된 키 값에서 8비트 패리티(parity) 비트를 뺀 56비트가 간단한 시프트와 비트 선택을 행하여 48비트가 된 키와 modulo-2 연산을 한 후 대치에 의해 32비트가 만들어진다.The encryption function used every time in the DES algorithm unit 152 is a 32-bit R is extended to 48 bits by the expansion box, L is also extended to 48 bits by the expansion box in the key value consisting of 64-bit supplied from the outside 56 bits minus 8-bit parity bits perform a simple shift and bit selection to perform a 48-bit key and modulo-2 operation, resulting in 32 bits by substitution.

이후, 데이터 부호 표준(DES) 알고리즘부(152)는 한 블록의 암호화가 끝나면 그 출력은 64개의 시프트 레지스터의 초기값으로 출력하고 또한 두 번째 키의 값으로 저장하고 그 저장된 키 값은 다음 암호화를 위해 두 번째 키의 값으로 사용된다.After the encryption of one block is finished, the data sign standard (DES) algorithm unit 152 outputs the output as the initial values of 64 shift registers, and also stores the value of the second key. Used as the value of the second key.

이에 따라 제 2 선형 궤환 레지스터부(153)는 상기 데이터 부호 표준(DES) 알고리즘부(152)의 신호를 시프트시켜 출력하고 그 출력된 신호를 피드백하여 논리 연산하여 키 스트림을 출력한다.Accordingly, the second linear feedback register unit 153 shifts and outputs the signal of the data code standard (DES) algorithm unit 152, feeds back the output signal, and performs a logical operation to output a key stream.

여기서, 제 2 선형 궤환 레지스터부(153)는 64개의 메모리로 구성되며 상기 데이터 부호 표준(DES) 알고리즘부(152)의 신호를 초기값으로 저장하고 다음 출력이 나올 때까지 스트림을 발생시킨다.Here, the second linear feedback register section 153 is composed of 64 memories and stores the signal of the data sign standard (DES) algorithm section 152 as an initial value and generates a stream until the next output.

즉, 제 2 선형 궤환 레지스터부(153)내 선형 궤환 레지스터(153a)는 상기 데이터 부호 표준(DES) 알고리즘부(152)의 신호를 시프트하여 키 스트림을 출력한다.That is, the linear feedback register 153a in the second linear feedback register section 153 shifts the signal of the data sign standard (DES) algorithm section 152 to output a key stream.

그러면 혼합기(153b)는 상기 선형 궤환 레지스터(153a)에서 출력된 신호를 피드백하여 논리 연산하여 그 결과 신호를 상기 선형 궤환 레지스터(153a)에 입력한다.Then, the mixer 153b feeds back the logic output from the linear feedback register 153a to perform a logical operation, and inputs the resultant signal to the linear feedback register 153a.

즉, 혼합기(153b)는 상기 선형 궤환 레지스터(153a)에서 출력된 신호를 피드백하여 상기 선형 궤환 레지스터(153a)의 신호와 배타적 논리합하여 선형 궤환 레지스터(153a)에 입력한다.That is, the mixer 153b feeds back the signal output from the linear feedback register 153a and performs exclusive OR on the signal of the linear feedback register 153a and inputs it to the linear feedback register 153a.

이상에서 설명한 바와 같이 본 발명에 따른 무선 통신의 스트림 암호 시스템은 종래 기술인 블럭 암호 시스템과 스트림 암호 시스템을 통합하여 스트림 암호 시스템을 여러개의 비선형 결합 함수로 구현하므로써 이동 통신 시스템에서의 불법적인 침입자로부터 개인의 정보를 보호하고 무선 채널상에서 전송되는 정보를 보호할 수 있는 효과가 있다.As described above, the stream cipher system of the wireless communication according to the present invention integrates the block cipher system and the stream cipher system according to the prior art and implements the stream cipher system as a plurality of nonlinear combining functions, thereby preventing individuals from illegal intruders in the mobile communication system. There is an effect that can protect the information of and to protect the information transmitted on the wireless channel.

또한, 본 발명은 데이터 부호 표준(DES) 알고리즘을 이용하여 스트림 암호 발생장치의 강도를 높일 수 있는 이점이 있다.In addition, the present invention has the advantage of increasing the strength of the stream cipher generator using a data coding standard (DES) algorithm.

Claims (6)

비밀키(Key) 입력을 선형함수에 따라 연산하여 출력하는 제 1 선형 궤환 레지스터부와;A first linear feedback register unit for calculating and outputting a secret key input according to a linear function; 암호화된 시드(seed) 벡터를 발생하는 시드 벡터 발생부와;A seed vector generator for generating an encrypted seed vector; 상기 제 1 선형 궤환 레지스터부의 신호와 시드 벡터를 논리 연산하여 그 결과 신호를 출력하는 논리 연산부와;A logic operation unit configured to perform a logic operation on the signal and the seed vector of the first linear feedback register unit, and output a resultant signal; 상기 논리 연산부의 신호를 저장하고 그 저장된 데이터를 비선형 함수에 따라 연산하여 출력하는 비선형 함수부와;A nonlinear function unit which stores a signal of the logical operation unit and calculates and outputs the stored data according to a nonlinear function; 상기 비선형 함수부의 신호를 일정 길이의 블럭으로 분할하여 임시 저장하고 그 임시 저장된 블럭을 데이터 부호 표준(DES) 알고리즘을 수행하여 키 스트림을 출력하는 블럭 암호화부를 포함하여 구성된 것을 특징으로 하는 무선 통신의 스트림 암호 시스템.And a block encryption unit for dividing the signal of the nonlinear function unit into a block of a predetermined length for temporary storage and outputting a key stream by performing a data coding standard (DES) algorithm. Password system. 제 1 항에 있어서,The method of claim 1, 상기 제 1 선형 궤환 레지스터부 각각의 원시 다항식의 차수는 서로 소인 것을 특징으로 하는 무선 통신의 스트림 암호 시스템.And the order of the primitive polynomials of each of the first linear feedback registers is small with each other. 제 1 항에 있어서,The method of claim 1, 상기 논리 연산부는 다수개의 배타적 논리합 게이트로 구성된 것을 특징으로 하는 무선 통신의 스트림 암호 시스템.And the logical operation unit comprises a plurality of exclusive OR gates. 제 1 항에 있어서,The method of claim 1, 상기 블럭 암호화부는 상기 비선형 함수부의 신호를 일정 단위로 분할하여 임시 저장하는 임시 저장부와;The block encryption unit temporarily stores the non-linear function unit by dividing the signal by a predetermined unit; 상기 임시 저장부의 신호를 비밀키(Key) 입력에 따라 데이터 부호 표준(DES) 알고리즘을 수행하여 그 결과 신호를 출력하는 DES 알고리즘부와;A DES algorithm for outputting a signal by performing a data code standard (DES) algorithm on the signal of the temporary storage unit according to a secret key input; 상기 DES 알고리즘부의 신호를 시프트시켜 출력하고 그 출력된 신호를 피드백하여 논리 연산하는 제 2 선형 궤환 레지스터부를 포함하여 구성된 것을 특징으로 하는 무선 통신의 스트림 암호 시스템.And a second linear feedback register unit for shifting and outputting the signal of the DES algorithm unit and feeding back and outputting the output signal. 제 4 항에 있어서,The method of claim 4, wherein 상기 임시 저장부는 다수개의 64비트 버퍼임을 특징으로 하는 무선 통신의 스트림 암호 시스템.And the temporary storage unit is a plurality of 64-bit buffers. 제 4 항에 있어서,The method of claim 4, wherein 상기 제 2 선형 궤환 레지스터부는 상기 DES 알고리즘부의 신호를 시프트하여 키 스트림을 출력하고 논리 연산된 신호를 입력받는 선형 궤환 레지스터와;The second linear feedback register unit includes a linear feedback register configured to shift a signal of the DES algorithm unit, output a key stream, and receive a logically calculated signal; 상기 선형 궤환 레지스터에서 출력된 신호를 피드백하여 논리 연산하여 그 결과 신호를 상기 선형 궤환 레지스터에 입력하는 혼합기로 구성된 것을 특징으로 하는 무선 통신의 스트림 암호 시스템.And a mixer for feeding back a signal output from the linear feedback register and performing a logical operation to input the result signal into the linear feedback register.
KR1019970035157A 1997-07-25 1997-07-25 Stream cipher system of wireless communication KR100226867B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970035157A KR100226867B1 (en) 1997-07-25 1997-07-25 Stream cipher system of wireless communication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970035157A KR100226867B1 (en) 1997-07-25 1997-07-25 Stream cipher system of wireless communication

Publications (2)

Publication Number Publication Date
KR19990011903A KR19990011903A (en) 1999-02-18
KR100226867B1 true KR100226867B1 (en) 1999-10-15

Family

ID=19515709

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970035157A KR100226867B1 (en) 1997-07-25 1997-07-25 Stream cipher system of wireless communication

Country Status (1)

Country Link
KR (1) KR100226867B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100760804B1 (en) * 1999-12-18 2007-09-20 주식회사 케이티 Apparatus and Method of protecting Security for User Information
US8077864B2 (en) 2007-12-06 2011-12-13 Electronics And Telecommunications Research Institute Apparatus for computing streamcipher TSC-4

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100885994B1 (en) * 2006-11-09 2009-03-03 한국전자통신연구원 Non-linear filtered t-function based stream cipher apparatus and method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100760804B1 (en) * 1999-12-18 2007-09-20 주식회사 케이티 Apparatus and Method of protecting Security for User Information
US8077864B2 (en) 2007-12-06 2011-12-13 Electronics And Telecommunications Research Institute Apparatus for computing streamcipher TSC-4

Also Published As

Publication number Publication date
KR19990011903A (en) 1999-02-18

Similar Documents

Publication Publication Date Title
KR100657062B1 (en) Method for encrypting information and device for realization of the method
US4791669A (en) Encryption/decryption system
US6504930B2 (en) Encryption and decryption method and apparatus using a work key which is generated by executing a decryption algorithm
KR100331863B1 (en) Apparatus and Method of Cryptographing Data in the Network
US6014446A (en) Apparatus for providing improved encryption protection in a communication system
KR100362458B1 (en) Cryptographic processing apparatus, cryptographic processing method, and recording medium recording cryptographic processing program for realizing high-speed crypographic processing without impairing security
CA2441392A1 (en) Encrypting apparatus
JPH05500298A (en) encryption device
US6732271B1 (en) Method of deciphering ciphered data and apparatus for same
JP3769804B2 (en) Decoding method and electronic device
KR100226867B1 (en) Stream cipher system of wireless communication
JP2000209195A (en) Cipher communication system
KR100551992B1 (en) encryption/decryption method of application data
KR100797106B1 (en) Method for encrypting and decrypting transmmited and received packet in wireless lan
JPH1117673A (en) Common key encryption communication method and its communication network
JPH04335730A (en) Random ciphering communication system
Landge et al. VHDL based Blowfish implementation for secured embedded system design
KR100494560B1 (en) Real time block data encryption/decryption processor using Rijndael block cipher and method therefor
JP2001016197A (en) Self-synchronized stream enciphering system and mac generating method using the same
JPH1185018A (en) Semiconductor integrated circuit for cipher processing and cipher algorithm conversion system
US7583800B2 (en) Encryption apparatus and method in a wireless communications system
EP0619659A2 (en) A shrinking generator for cryptosystems
EP1629626A1 (en) Method and apparatus for a low memory hardware implementation of the key expansion function
Ahmad et al. Comparative study between stream cipher and block cipher using RC4 and Hill Cipher
KR100317250B1 (en) Method of Cryptographing Data

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20050621

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee