KR0160354B1 - Apparatus for and method of generating code to identify user in digital mobile communication system - Google Patents

Apparatus for and method of generating code to identify user in digital mobile communication system Download PDF

Info

Publication number
KR0160354B1
KR0160354B1 KR1019950052187A KR19950052187A KR0160354B1 KR 0160354 B1 KR0160354 B1 KR 0160354B1 KR 1019950052187 A KR1019950052187 A KR 1019950052187A KR 19950052187 A KR19950052187 A KR 19950052187A KR 0160354 B1 KR0160354 B1 KR 0160354B1
Authority
KR
South Korea
Prior art keywords
bit
data
output
random number
mobile station
Prior art date
Application number
KR1019950052187A
Other languages
Korean (ko)
Other versions
KR970055893A (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 KR1019950052187A priority Critical patent/KR0160354B1/en
Publication of KR970055893A publication Critical patent/KR970055893A/en
Application granted granted Critical
Publication of KR0160354B1 publication Critical patent/KR0160354B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • 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
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • 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
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/041Key generation or derivation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명은 디지털 이동 통신 시스템에서의 가입자 인증 부호 생성 장치 및 그 방법에 관한 것으로, 이동국 발호 인증시에는 기지국(2)에서 생성된 난수(RAND)와 이동국과 인증센터의 메모리(76,85)에 저장된 공유 비밀 데이타(SDD)를 입력받고, 공유 비밀 데이타 생성시에는 인증센터(5)에서 생성된 난수(RANDBS)와 인증센터와 이동국의 메모리에 저장된 비밀키(A_Key)를 입력받고, 공유 비밀 데이타 갱신 확인시에는 이동국에서 생성된 난수(RANDBS)와 새롭게 생성된 공유 비밀 데이타(SSD_NEW)를 입력받아 난수 데이타(RAND, RANDSSD, RANDBS)로 비선형 변환하여 동작키를 생성하는 동작키 생성 수단(100); 이동국 발호 인증시에는 기지국(2)에서 생성된 난수(RANDSDD)와 메모리(82,74)에 저장된 이동국의 장치 일련번호(ESN)와 가입자로부터 입력되는 마지막 다이얼 수로 구성되는 디지트(DIGITS)를 입력받고, 공유 비밀 데이타 생성시에는 인증센터(5)에서 생성된 난수(RANDSDD)와 메모리(82,74)에 저장된 이동국의 장치 일련 번호(ESN)를 입력받고, 공유 비밀 데이타 갱신 확인시에는 이동국(1)에서 생성된 난수(RANDBS)와 메모리(82,74)에 저장된 이동국의 장치 일련 번호(ESN)와 이동국 식별 번호(MIN)를 입력받아 난수 데이타(RAND, RANDSSD, RANDBS)를 사용하여 난수화 하여 초기 난수 데이타를 생성하는 초기 난수 생성 수단; 및 상기 동작키 생성 수단(100)의 출력과 상기 초기 난수 생성 수단(200)의 출력을 입력받아 서로 다른 부울 함수를 사용하여 버퍼 값을 변환시키는 과정을 통해 인증 부호 또는 공유 비밀 데이타를 생성하는 해쉬값 생성 수단(300)을 구비하여 이동 통신 사업자가 정당한 가입자를 보호하고, 불법적인 사용자의 통화 동용을 막을 수 있을 뿐만 아니라 이동 통신 사업자의 통화 도용에 따른 과금 손실을 예방할 수 있는 효과가 있다.The present invention relates to an apparatus and a method for generating a subscriber authentication code in a digital mobile communication system. In the mobile station call authentication, a random number (RAND) generated by a base station (2) and a memory (76,85) of a mobile station and an authentication center are provided. When inputting the stored shared secret data (SDD), and receiving the shared secret data (RANDBS) generated in the authentication center (5) and the secret key (A_Key) stored in the memory of the authentication center and the mobile station, and receives the shared secret data When the update is confirmed, an operation key generation means 100 for receiving a random number generated by the mobile station and newly generated shared secret data (SSD_NEW) and performing non-linear conversion into random number data (RAND, RANDSSD, RANDBS) to generate an operation key. ; In the mobile station call authentication, a digit (DIGITS) consisting of a random number (RANDSDD) generated by the base station 2, the device serial number (ESN) of the mobile station stored in the memory 82 and 74, and the last dial number input from the subscriber are received. When generating the shared secret data, the random number (RANDSDD) generated by the authentication center 5 and the device serial number (ESN) of the mobile station stored in the memories 82 and 74 are inputted. Random number (RANDBS) generated from the CDMA, the device serial number (ESN) and the mobile station identification number (MIN) of the mobile station stored in the memory (82, 74) are received and randomized using random number data (RAND, RANDSSD, RANDBS). Initial random number generating means for generating initial random number data; And a hash for generating an authentication code or shared secret data by receiving an output of the operation key generating means 100 and an output of the initial random number generating means 200 and converting buffer values using different Boolean functions. By providing the value generating means 300, the mobile operator can protect the legitimate subscribers, prevent illegal use of the user's call, and prevent the loss of billing due to the theft of the mobile operator.

Description

디지털 이동 통신 시스템에서의 가입자 인증 부호 생성 장치 및 그 방법.Apparatus and method for generating subscriber authentication code in digital mobile communication system.

제1도는 본 발명이 적용되는 디지털 이동 통신 시스템 구성도.1 is a configuration diagram of a digital mobile communication system to which the present invention is applied.

제2도는 본 발명이 적용되는 디지털 이동 통신 시스템의 이동국 발호 인증 흐름도.2 is a flowchart of mobile station call authentication in a digital mobile communication system to which the present invention is applied.

제3도는 본 발명이 적용되는 디지털 이동 통신 시스템의 공유 비밀 데이타 갱신 흐름도.3 is a flowchart for updating a shared secret data of a digital mobile communication system to which the present invention is applied.

제4도는 본 발명이 적용되는 디지털 이동 통신 시스템의 이동국 발호 인증시 인증 부호 생성기의 데이타 입출력 관계도.4 is a data input / output relationship diagram of an authentication code generator during authentication of a mobile station call in a digital mobile communication system to which the present invention is applied.

제5도는 본 발명이 적용되는 디지털 이동 통신 시스템의 공유 비밀 데이타 생성시 인증부호 생성기의 데이타 입출력 관계도.5 is a data input / output relationship diagram of an authentication code generator in generating shared secret data of a digital mobile communication system to which the present invention is applied.

제6도는 본 발명이 적용되는 디지털 이동 통신 시스템의 고유 비밀 데이타 갱신 확인시 인증부호 생성기의 데이타 입출력 관계도.6 is a data input / output relationship diagram of an authentication code generator when verifying a unique secret data update of a digital mobile communication system to which the present invention is applied.

제7도는 본 발명이 적용되는 디지털 이동 통신 시스템의 이동국의 시스템 구성도.7 is a system configuration diagram of a mobile station of a digital mobile communication system to which the present invention is applied.

제8도는 본 발명이 적용되는 디지털 이동 통신 시스템의 이동국의 시스템 구성도.8 is a system configuration diagram of a mobile station of a digital mobile communication system to which the present invention is applied.

제9도는 본 발명이 일실시예에 따른 인증 부호 생성 장치의 전체 구성도.9 is an overall configuration diagram of an authentication code generating apparatus according to an embodiment of the present invention.

제10도는 본 발명이 일실시예에 따른 동작키 생성부의 세부 구성도.10 is a detailed block diagram of an operation key generation unit according to an embodiment of the present invention.

제11도는 본 발명이 일실시예에 따른 초기 난수 생성부의 세부 구성도.Figure 11 is a detailed block diagram of the initial random number generator according to an embodiment of the present invention.

제12도는 본 발명이 일실시예에 따른 해쉬값 생성부의 세부 구성도.12 is a detailed block diagram of a hash value generator according to an embodiment of the present invention.

제13도는 본 발명이 일실시예에 따른 버퍼 변환부의 세부 구성도.13 is a detailed block diagram of a buffer converter according to an embodiment of the present invention.

제14도는 본 발명이 일실시예에 따른 로테이터의 구성도.14 is a block diagram of a rotator according to an embodiment of the present invention.

제15도는 본 발명이 일실시예에 따른 부울 함수 변환기의 구성도.15 is a block diagram of a Boolean function converter according to an embodiment of the present invention.

제16도는 본 발명이 일실시예에 따른 전체 흐름도.16 is an overall flow chart in accordance with one embodiment of the present invention.

제17도는 본 발명이 일실시예에 따른 동작키 생성 단계의 세부 흐름도.17 is a detailed flowchart of an operation key generation step according to an embodiment of the present invention.

제18도는 본 발명이 일실시예에 따른 초기 난수 생성 단계의 세부 흐름도.18 is a detailed flowchart of an initial random number generation step according to an embodiment of the present invention.

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

100 : 동작키 생성부 200 : 초기 난수 생성부100: operation key generation unit 200: initial random number generation unit

300 : 해쉬값 생성부300: hash value generation unit

본 발명은 디지털 이동 통신 시스템에서의 가입자 인증 부호 생성 장치 및 그 방법에 관한 것으로, 특히 디지털 이동 통신 시스템에서 사용자에 의한 불법적인 통화 도용을 막고 정당한 가입자를 보호하기 위하여 이동국의 착발호 인증 과정과 공유 비밀 데이타의 갱신 과정에 필요한 디지털 이동 통신 시스템의 가입자 인증 부호 생성 장치 및 그 방법에 관한 것이다.The present invention relates to an apparatus and a method for generating a subscriber authentication code in a digital mobile communication system. In particular, the present invention relates to an incoming call authentication process of a mobile station in order to prevent illegal toll fraud by a user and to protect a valid subscriber. The present invention relates to an apparatus and a method for generating a subscriber authentication code for a digital mobile communication system required for updating secret data.

현재 사용되고 있는 이동 통신 시스템에는 가입자 인증 절차가 없기 때문에 이동 전화기의 보급이 증대되면서 불법 사용자에 의한 통화 도용이 사회적인 문제로 대두되고 있다. 실례로 미국의 경우 불법적인 통화 도용에 의한 이동 통신 사업자의 손실 규모는 지난 1994년에 5억 달러에 이르는 것으로 알려져 있다.Since there is no subscriber authentication procedure in the currently used mobile communication system, the spread of mobile phones has led to the theft of call fraud by illegal users as a social problem. For example, in the United States, mobile operators lost $ 500 million in 1994 due to illegal toll fraud.

이에 미국을 비롯한 유럽과 일본 등지에서는 불법적인 통화 도용을 막기 위한 가입자 인증 절차를 이동 통신 시스템에서 도입하여 사용자에게 서비스하고 있다.Accordingly, in the United States, Europe and Japan, subscriber authentication procedures are introduced in the mobile communication system to prevent illegal toll fraud, and are provided to users.

우리 나라에서는 이동 통신 전화기 사용자의 급속한 증대로 현재의 아날로그 이동 통신 방식에서는 새로운 사용자를 수용할 수 없게됨에 따라 주파수 사용 효율을 현재의 방식보다 10배로 늘릴 수 있는 보호 분할 다중 접속 방식을 이용한 디지털 이동 통신 시스템을 개발하고 1996년부터 상용 서비스에 들어갈 예정이다.The rapid increase in mobile phone users in our country makes it impossible to accommodate new users in the current analog mobile communication system, so the digital mobile communication using the protection division multiple access method can increase the frequency usage efficiency 10 times than the current method. The system will be developed and commercially available from 1996.

새로운 부호 분할 다중 접속 방식에 의한 디지털 이동 통신 시스템에는 불법적인 사용자의 통화 도용을 막고 정당한 가입자를 보호하기 위한 가입자 인증 과정이 정의 되어 있으며 이의 개발이 완료 되었다. 그러므로 가입자 인증 과정의 핵심인 인증 부호 생성 장치가 절실히 요구된다.In the new digital divisional communication system based on the code division multiple access method, a subscriber authentication process is defined to prevent illegal users from stealing the phone and protect the legitimate subscribers. Therefore, there is an urgent need for a device for generating an authentication code which is the core of the subscriber authentication process.

상기 종래 기술의 문제점을 해결하기 위하여 안출된 본 발명은 하드웨어나 소프트웨어적으로 구현이 용이하고, 이동 통신 사업자가 운용하는 인증 센터에서의 인증 부호 생성에 소요되는 부담을 줄이기 위하여 32비트 마이크로 프로세서에 의한 처리에 적합하고, 이동 전화기에서 사용되는 16비트 마이크로 프로세서에 의한 처리 또한 용이하도록 구현하여 불법 사용자에 의한 통화 도용을 막을 수 있는 디지털 이동 통신 시스템의 가입자 인증 부호 생성 장치 및 그 방법을 제공하는데 그 목적이 있다.The present invention devised to solve the above problems of the prior art is easy to implement in hardware or software, and by the 32-bit microprocessor to reduce the burden required to generate the authentication code in the authentication center operated by the mobile carrier The present invention provides an apparatus and method for generating a subscriber authentication code of a digital mobile communication system, which is suitable for processing and can be easily processed by a 16-bit microprocessor used in a mobile phone to prevent illegal user fraud. There is this.

상기 목적을 달성하기 위한 본 발명은, 이동국 발호 인증시에서는 기지국에서 생성된 난수(RAND)와 이동국과 인증센터의 메모리에 저장된 공유 비밀 데이타(SDD)를 입력받고, 공유 비밀 데이타 생성시에는 인증센터에서 생성된 난수(RANDSSD)와 인증센터와 이동국의 메모리에 저장된 비밀키(A_Key)를 입력받고, 공유 비밀 데이타 갱신 확인시에는 이동국에서 생성된 난수(RANDBS)와 새롭게 생성된 공유 비밀 데이타(SSD_NEW)를 입력받아 난수 데이타(RAND, RANDSSD, RANDBS)로 비선형 변환하여 동작키를 생성하는 동작키 생성 수단, 이동국 발호 인증시에는 기지국에서 생성된 난수(RANDSDD)와 메모리에 저장된 이동국의 장치 일련번호(ESN)와 가입자로부터 입력되는 마지막 다이얼 수로 구성되는 디지트(DIGITS)를 입력받고, 공유 비밀 데이타 생성시에는 인증센터에서 생성된 난수(RANDSDD)와 메모리에 저장된 이동국의 장치 일련 번호(ESN)를 입력받고, 공유 비밀 데이타 갱신 확인시에는 이동국에서 생성된 난수(RANDBS)와 메모리에 저장된 이동국의 장치 일련 번호(ESN)와 이동국 식별 번호(MIN)를 입력받아 난수 데이타(RAND, RANDSSD, RANDBS)를 사용하여 난수화 하여 초기 난수 데이타를 생성하는 초기 난수 생성 수단, 상기 동작키 생성 수단의 출력과 상기 초기 난수 생성 수단의 출력을 입력받아 서로 다른 부울 함수를 사용하여 버퍼 값을 변환시키는 과정을 통해 인증 부호 또는 공유 비밀 데이타를 생성하는 해쉬값 생성 수단으로 구성된 것을 특징으로 한다.In order to achieve the above object, the present invention provides a random number (RAND) generated by a base station and shared secret data (SDD) stored in a memory of a mobile station and an authentication center. Receives random number (RANDSSD) generated in the system and a secret key (A_Key) stored in the memory of the authentication center and the mobile station.When confirming the update of the shared secret data, the random number generated by the mobile station (RANDBS) and the newly generated shared secret data (SSD_NEW) Means for generating an operation key by non-linear conversion into random number data (RAND, RANDSSD, RANDBS), and when generating mobile station call authentication, random number generated by the base station (RANDSDD) and device serial number (ESN) of the mobile station stored in memory ) And DIGITS consisting of the last number of dials entered from the subscriber. The number (RANDSDD) and the device serial number (ESN) of the mobile station stored in the memory are inputted, and the random number generated by the mobile station (RANDBS) and the device serial number (ESN) of the mobile station stored in the memory and the mobile station identification when the shared secret data update is confirmed. Initial random number generating means for generating initial random number data by randomizing the number MIN by using random number data RAND, RANDSSD, and RANDBS, inputting the output of the operation key generating means and the output of the initial random number generating means And a hash value generating means for generating an authentication code or shared secret data by converting a buffer value by using different Boolean functions.

또한, 이동 전화기인 이동국과 이동국 인증을 위한 키를 관리하고 가입자 인증과정에 필요한 난수를 발생하는 인증센터를 포함하는 디지털 이동 통신 시스템의 인증 부호 생성 방법에 있어서, 데이타가 입력되면 난수 데이타로 비선형 변환하여 동작키 데이타를 생성하고, 마찬가지로 난수 데이타를 사용하여 난수화 하여 초기 난수 데이타를 생성하여 출력하는 제1단계, 상기 제1단계 수행후 동작키 데이타와 초기 난수 데이타를 서로 다른 부울 함수를 사용하여 버퍼값을 변환시키는 과정을 통해 인증 부호 또는 공유 비밀 데이타를 생성하여 출력하는 제2단계로 구성된 것을 특징으로 한다.In addition, a method for generating an authentication code of a digital mobile communication system including an authentication center that manages a mobile station and a key for mobile station authentication and generates a random number required for subscriber authentication, wherein the data is inputted, non-linear conversion to random data. To generate the operation key data, and to randomize the random key data to generate and output the initial random number data. After performing the first step, the operation key data and the initial random data are different from each other using a Boolean function. And a second step of generating and outputting an authentication code or shared secret data by converting the buffer value.

이하, 첨부된 도면을 참조하여 본 발명의 일실시예를 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described an embodiment of the present invention;

제1도는 본 발명이 적용되는 디지털 이동 통신 시스템의 구성도로서, 도면에서 부호1은 이동국, 부호2는 기지국, 부호3은 이동 통신 교환기, 부호4는 주 위치 등록 레지스터, 부호5는 인증 센터, 부호6은 방문 위치 등록 레지스터를 각각 나타낸다.1 is a block diagram of a digital mobile communication system to which the present invention is applied. Reference numeral 6 denotes a visit position registration register, respectively.

이동국(1)은 이동 통신 가입자가 소유한 이동 전화기로서 휴대용과 차량 탑재용을 포함한다. 기지국(2)은 어느 일정한 장소에 설치되며 이동국(1)과 이동 통신 교환기(3) 사이를 무선으로 접속한다.The mobile station 1 is a mobile telephone owned by a mobile subscriber and includes portable and in-vehicle equipment. The base station 2 is installed at a certain place and wirelessly connects between the mobile station 1 and the mobile communication exchange 3.

이동 통신 교환기(3)는 고정 전화망과 연동하여 무선 주파수나 채널등의 관리 기능, 이동국 위치 추적 기능, 핸드 오버 기능 등을 제공한다.The mobile communication switch 3 provides a management function such as radio frequency or channel, a mobile station location tracking function, a handover function, etc. in association with a fixed telephone network.

주 위치 등록 레지스터(4)는 서비스 프로화일, 이동국(1)의 현재 위치 등과 같은 이동국(1)의 현재 작동 데이타에 관한 기록을 영구적으로 유지한다.The primary location registration register 4 permanently maintains a record of the current operating data of the mobile station 1, such as the service profile, the current location of the mobile station 1, and the like.

방문 위치 등록 레지스터(6)는 주 위치 등록 레지스터(4)에 등록되지 않은 다른 위치의 가입자의 작동 데이타에 관한 기록을 일시적으로 유지한다.The visited location registration register 6 temporarily maintains a record of operation data of subscribers at other locations not registered in the main location registration register 4.

인증 센터(5)는 이동국(1)의 인증을 위한 키(Key)를 관리하고 가입자 인증 과정에 필요한 난수를 발생한다.The authentication center 5 manages a key for authentication of the mobile station 1 and generates a random number necessary for the subscriber authentication process.

제2도는 본 발명이 적용되는 디지털 이동 통신 시스템의 이동국 발호 인증 흐름도를 나타낸다.2 is a flowchart of a mobile station call authentication of a digital mobile communication system to which the present invention is applied.

이동국(1)이 통화를 요청하면 인증 센터(5)와 이동국(1)은 기지국(2)을 통하여 통화를 요청한 이동국(1)의 적법성을 인증하는 이동국(1) 발호인증 절차를 수행하고, 이동국(1) 발호 인증 절차가 성공하면, 즉 인증 센터(5)와 이동국(1)이 동일한 공유 비밀 데이타(Shared Secret Data : 이하 SSD라 함)를 가지고 있으면 기지국(2)은 통화를 위한 채널을 이동국(1)에 할당한다.When the mobile station 1 requests a call, the authentication center 5 and the mobile station 1 perform a call authentication procedure for the mobile station 1 which authenticates the legitimacy of the mobile station 1 that requested the call through the base station 2, (1) If the calling authentication procedure is successful, i.e., if the authentication center 5 and the mobile station 1 have the same shared secret data (hereinafter referred to as SSD), the base station 2 selects a channel for the call. Assign to (1).

상기 과정을 보다 상세히 설명하면, 이동국(1)이 발호를 시도하면 기지국(2)은 32비트 난수 데이타(이하, RAND라 함)를 이동국(1)으로 보낸다(10). 32비트 RAND를 수신한 이동국(1)은 수신한 RAND와 이동국(1)의 장치 일련 번호(Electronic Serial Number : 이하, ESN이라 함), 가입자로 부터 입력되는 마지막 다이얼 수로 구성되는 디지트(DIGITS), 그리고 공유 비밀 데이타 SSD_A를 인증 부호 생성기(11)는 입력받아 18 비트 인증 부호(AUTHR)를 생성한다(12).In more detail, when the mobile station 1 attempts to make a call, the base station 2 sends 32-bit random data (hereinafter referred to as RAND) to the mobile station 1 (10). The mobile station 1 receiving the 32-bit RAND includes a digital serial number consisting of the received RAND and the device serial number (hereinafter referred to as ESN) of the mobile station 1, the last dial number input from the subscriber, The authentication code generator 11 receives the shared secret data SSD_A and generates an 18-bit authentication code (AUTHR) (12).

18 비트 인증 부호를 생성한 이동국(1)은 RAND의 상위 8 비트인 RANDC와 인증 부호를 기지국(2)으로 보낸다(13). RANDC와 인증 부호를 수신한 기지국(2)은 RANDC와 이동국(1)에 전송한 RAND의 상위 8 비트와 비교하여 수신한 RANDC에 대하여 검증하여(14) 일치하면, 기지국(2)은 RAND와 이동국(1)에서 수신한 인증 부호를 인증 센터(5)에 전송하면서 이동국(1)의 발호 인증을 요구한다(15).The mobile station 1 which generated the 18-bit authentication code sends the RANDC and the authentication code, which are the upper 8 bits of the RAND, to the base station 2 (13). The base station 2, which has received the RANDC and the authentication code, compares the RANDC with the upper 8 bits of the RAND transmitted to the mobile station 1, verifies (14) the received RANDC, and if the base station 2 matches, Calling authentication of the mobile station 1 is requested while transmitting the authentication code received in (1) to the authentication center 5 (15).

인증 센터(5)는 기지국(2)으로 부터 받은 RAND와 발호를 요구한 이동국(1)에 해당하는 ESN, SSD, 디지트(DIGITS)를 인증 부호 생성기(16)에 입력하여 인증 부호(AUTHR')를 생성한다. 인증 센터(5)는 자신이 계산한 인증 부호(AUTHR')와 기지국(2)을 통해 수신한 이동국(1)이 생성한 인증 부호(AUTHR')를 비교하여(18) 일치하면 기지국(2)에 승인 메시지를 전송하고(20), 일치하지 않으면 식별 신청 응답 절차 또는 공유 비밀 데이타 갱신 과정을 수행한다(19).The authentication center 5 inputs the RAND received from the base station 2 and the ESN, SSD, and DIGITS corresponding to the mobile station 1 requesting the call to the authentication code generator 16, thereby providing an authentication code (AUTHR '). Create The authentication center 5 compares the authentication code (AUTHR ') calculated by the mobile station 1 with the authentication code (AUTHR') generated by the mobile station 1 received through the base station 2 (18). If it does not match (20), and if it does not match, performs the identification request response procedure or shared secret data update process (19).

기지국(2)은 인증 센터(5)로 부터 승인 메시지가 입력되면 이동국(1)에 채널을 할당한다(21).The base station 2 assigns a channel to the mobile station 1 when an authorization message is input from the authentication center 5 (21).

제3도는 본 발명이 적용되는 디지털 이동 통신 시스템의 공유 비밀 데이타 갱신 흐름도를 나타낸다.3 is a flowchart of a shared secret data update of a digital mobile communication system to which the present invention is applied.

공유 비밀 데이타의 갱신은 적법한 가입자가 이동국(1)과 인증 센터(5)간의 공유 비밀 데이타의 불일치로 인하여 인증이 실패한 경우 또는 공유 비밀 데이타의 도용이 이루어지는 것이 확인 되었을 경우에 공유 비밀 데이타를 변경하기 위하여 인증 센터(5)에서 행하는 절차로서 공유 비밀 데이타 생성 절차와 공유 비밀 데이타 갱신 확인 절차로 구성된다.The update of the shared secret data may be performed when a legitimate subscriber fails to authenticate due to a mismatch of the shared secret data between the mobile station 1 and the authentication center 5, or when the shared secret data is found to be stolen. For this purpose, the procedure performed by the authentication center 5 includes a shared secret data generation procedure and a shared secret data update confirmation procedure.

이동국(1)은 이동 통신 사업자에게 등록할 때 64비트 비밀키(A_Key)를 인증 센터(5)와 공유한다. 인증 센터(5)로 부터 공유 비밀 데이타 갱신 명령을 이동국(1)이 입력받으면(30) 이동국(1)은 인증 센터(5)로 부터 수신된 56 비트 난수(RANDSSD)와 이동국(1)이 가지고 있는 64 비트 길이의 비밀키(A_Key), 이동국(1)의 ESN을 인증 부호 생성기(31)의 입력으로 하여 새로운 64 비트 길이의 비밀 공유 데이타 SSD_A_NEW와 SSD_B_NEW를 생성한다.The mobile station 1 shares the 64-bit secret key (A_Key) with the authentication center 5 when registering with the mobile communication service provider. When the mobile station 1 receives a shared secret data update command from the authentication center 5 (30), the mobile station 1 receives the 56-bit random number (RANDSSD) and the mobile station 1 received from the authentication center 5; The new 64-bit long shared secret data SSD_A_NEW and SSD_B_NEW are generated using the 64 bit long secret key A_Key and the ESN of the mobile station 1 as inputs to the authentication code generator 31.

인증 센터(5)도 마찬가지로 이동국(1)과 동일한 데이타를 인증 부호 생성기(32)에 입력하여 SSD_A_NEW와 SSD_B_NEW를 생성한다.The authentication center 5 similarly inputs the same data as the mobile station 1 into the authentication code generator 32 to generate SSD_A_NEW and SSD_B_NEW.

이동국(1)과 인증 센터(5)가 생성한 각각의 공유 비밀 데이타가 일치하는 지를 확인하기 위하여 공유 비밀 데이타 갱신 확인 과정을 수행한다. 이동국(1)은 32비트 길이의 난수(RANDBS)를 선택하고(33), 이를 인증 센터(5)에 전송한다(34).The shared secret data update confirmation process is performed to confirm whether the respective shared secret data generated by the mobile station 1 and the authentication center 5 match. The mobile station 1 selects (33) a 32-bit long random number (RANDBS) and sends it to the authentication center 5 (34).

다음 이동국(1)은 자신이 선택한 32비트 길이의 난수(RANDBS)와 새로 생성된 공유 비밀 데이타 SSD_A_NEW, 이동국(1)의 ESN, 이동국 식별 번호(MIN)중 24 비트로 구성된 MIN1을 인증 부호 생성기(35)의 입력으로 하여 18 비트 길이의 인증 부호(AUTHBS)를 생성한다(38).The mobile station 1 then uses the 32-bit random number (RANDBS) selected by itself, the newly created shared secret data SSD_A_NEW, the ESN of the mobile station 1, and MIN1 consisting of 24 bits of the mobile station identification number (MIN). (18) generates an authentication code (AUTHBS) of 18 bits in length (38).

인증 센터(5)는 이동국(1)으로 부터 수신한 32 비트 길이의 난수(RANDBS)와 이동국(1)의 ESN, 이동국 식별 번호(MIN)중 24 비트로 구성된 MIN1, 인증 센터(5)가 생성한 64 비트의 새로운 공유 비밀 데이타중 SSD_A_NEW를 인증 부호 생성기(36)의 입력으로 하여 18 비트 길이의 인증 부호(AUTHBS')를 생성하여 이동국(1)으로 전송한다(37).The authentication center 5 generates a 32-bit long random number (RANDBS) received from the mobile station 1, MIN1 composed of 24 bits of the ESN and mobile station identification number (MIN) of the mobile station 1, generated by the authentication center 5. Among the new 64-bit shared secret data, SSD_A_NEW is input to the authentication code generator 36 to generate an 18-bit long authentication code (AUTHBS ') and transmitted to the mobile station 1 (37).

이동국(1)은 인증 센터(5)로 부터 수신한 인증 부호(AUTHBS')와 자신이 생성한 인증 부호(AUTHBS)를 비교하여(39), 두 값이 일치하면 이동국(1)은 기존의 공유 비밀 데이타 SSD_A_NEW와 SSD_B_NEW로 대치하고 공유 비밀 데이타 갱신 확인 결과를 인증 센터(5)에 전송한다(40).The mobile station 1 compares the authentication code (AUTHBS ') received from the authentication center 5 with the authentication code (AUTHBS) generated by itself (39). If the two values match, the mobile station 1 shares the existing share. It replaces the secret data SSD_A_NEW and SSD_B_NEW, and transmits the shared secret data update confirmation result to the authentication center 5 (40).

인증 센터(5)는 성공 메시지가 입력되면 이동국(1)에 해당하는 공유 비밀 데이타를 새로 생성된 공유 비밀 데이타로 대치한다.When the success message is input, the authentication center 5 replaces the shared secret data corresponding to the mobile station 1 with the newly generated shared secret data.

제4도는 본 발명이 적용되는 디지털 이동 통신 시스템의 이동국 발호 인증시 인증 부호 생성기의 데이타 입출력 관계도이다.4 is a data input / output relationship diagram of an authentication code generator in authentication of a mobile station call in a digital mobile communication system to which the present invention is applied.

이동국 발호 인증시의 인증 부호 생성기(45)에 입력되는 데이타는 기지국(2)으로 부터 입력된 32 비트 길이의 난수(RAND)(41), 이동국 장치 일련 번호(ESN)(42), 가입자로 부터 입력되는 마지막 다이얼 수로 구성되는 24 비트 길이의 디지트(DIGITS)(43), 공유 비밀 데이타(SSD_A)이며, 출력은 18 비트 길이의 인증 부호(AUTHR)(46)이다.Data input to the authentication code generator 45 at the time of mobile station call authentication is received from the 32-bit long random number (RAND) 41, the mobile station device serial number (ESN) 42, and the subscriber inputted from the base station 2. A 24-bit long digit (DIGITS) 43 and shared secret data (SSD_A) composed of the last number of dials to be input, and the output is an 18-bit long authentication code (AUTHR) 46.

제5도는 본 발명이 적용되는 디지털 이동 통신 시스템의 공유 비밀 데이타 생성시 인증 부호 생성기의 데이타 입출력 관계도이다.5 is a data input / output relationship diagram of an authentication code generator when generating shared secret data in a digital mobile communication system to which the present invention is applied.

공유 비밀 데이타 생성시의 인증 부호 생성기(54)에 입력되는 데이타는 인증 센터(5)가 생성한 5 비트 길이의 난수(RANDSSD)(51), 32 비트 길이의 이동국 장치 일련 번호(ESN)(52), 64 비트 길이의 비밀키(A_Key)이며, 출력은, 128 비트의 공유 비밀 데이타가 양분되어 64 비트 길이의 SSD_A_NEW(55)와 SSD_B_NEW(56) 이다.Data input to the authentication code generator 54 at the time of generating the shared secret data is a 5-bit random number (RANDSSD) 51 generated by the authentication center 5, and a 32-bit mobile station device serial number (ESN) 52. ) Is a 64-bit long secret key (A_Key), and the output is a 64-bit SSD_A_NEW 55 and an SSD_B_NEW 56 having two bits of shared secret data.

제6도는 본 발명이 적용되는 디지털 이동 통신 시스템의 공유 비밀 데이타 갱신 확인시 인증부호 생성기의 데이타 입출력 관계도이다.6 is a data input / output relationship diagram of an authentication code generator in confirming shared secret data update of a digital mobile communication system to which the present invention is applied.

공유 비밀 데이타 갱신 확인시의 인증 부호 생성기(65)의 입력 데이타는 이동국이 생성한 32 비트 길이의 난수(RANDBS)(61), 32 비트 길이의 이동국의 ESN(62), 이동국 식별 번호 중 24 비트로 구성된 MIN1(63), 새로이 생성된 64 비트 길이의 SSD_A_NEW(64)이며, 출력 데이타는 18 비트 길이의 인증 부호(AUTHRS)(66)가 된다.The input data of the authentication code generator 65 at the time of confirming the shared secret data update is a 24-bit random number (RANDBS) 61 generated by the mobile station, the ESN 62 of the 32-bit mobile station, and 24 bits of the mobile station identification number. The configured MIN1 63, a newly generated 64 bit SSD_A_NEW 64, and the output data is an 18 bit long authentication code (AUTHRS) 66.

제7도는 본 발명이 적용되는 디지털 이동 통신 시스템의 이동국의 시스템 구성도로서, 도면에서 부호 71은 송수신 장치, 72는 시스템 제어 장치, 73은 입출력 제어 장치, 74는 메모리, 75는 인증 부호 생성 장치, 76은 메모리, 77은 키패드, 78은 표시창을 각각 나타낸다.7 is a system configuration diagram of a mobile station of a digital mobile communication system to which the present invention is applied. In the drawing, reference numeral 71 denotes a transceiver device, 72 denotes a system control device, 73 denotes an input / output control device, 74 denotes a memory, and 75 denotes an authentication code generation device. 76 denotes a memory, 77 a keypad, and 78 a display window.

이동국(1)은 안테나를 통해 데이타를 송수신하기 위한 송수신 장치(71), 이동국의 장치 일련 번호(ESN)와 이동국 식별 번호(MIN) 등을 보관하는 메모리(74), 사용자로 부터 데이타를 입력 받는 키패드(77), 데이타를 화면에 출력하는 표사창(78), 상기 키패드(77)와 표시창(78)에 연결되며 입출력 데이타를 제어하는 입출력 제어 장치(73), 인증 부호 또는 공유 비밀 데이타를 생성하는 인증 부호 생성 장치(75), 상기 인증 부호 생성 장치(75)에 연결되어 비밀키(A_Key), 공유 비밀 데이타(SSD_A, SSD_B)를 저장하는 메모리(76), 이동국(1)의 전체 동작을 제어하는 시스템 제어 장치(72)로 구성된다.The mobile station 1 includes a transceiver 71 for transmitting and receiving data through an antenna, a memory 74 for storing a device serial number (ESN) and a mobile station identification number (MIN) of the mobile station, and receiving data from a user. A keypad 77, an output window 78 for outputting data on the screen, an input / output control device 73 connected to the keypad 77 and the display window 78 to control input / output data, and generating authentication codes or shared secret data. The authentication code generating device 75, the memory 76 for storing the secret key (A_Key), the shared secret data (SSD_A, SSD_B) connected to the authentication code generating device 75, the overall operation of the mobile station (1) It consists of the system control apparatus 72 to control.

제8도는 본 발명이 적용되는 디지털 이동 통신 시스템의 인증 센터 시스템 구성도로서, 도면에서 부호 81은 중앙 처리 장치, 82는 메모리, 83은 각종 주변 장치, 84는 인증 부호 생성 장치, 85는 메모리를 각각 나타낸다.8 is a configuration diagram of an authentication center system of a digital mobile communication system to which the present invention is applied, where reference numeral 81 is a central processing unit, 82 is a memory, 83 is a peripheral device, 84 is an authentication code generation device, and 85 is a memory. Represent each.

인증 센터(5)는 본 발명을 수행하는 중앙 처리 장치(81), 입출력 장치를 포함하는 각종 주변 장치(83), 장치 일련 번호(ESN)와 이동국 식별번호와 프로그램 등을 저장하는 메모리(82), 본 발명인 인증 부호 생성 장치(84), 각 이동국의 비밀키(A_Key), 비밀 공유 데이타등의 상기 인증 부호 생성 장치(84)와 관련된 보호되어야 하는 데아타가 기록된 메모리(85)로 구성된다.The authentication center 5 includes a central processing unit 81 for carrying out the present invention, various peripheral devices 83 including input / output devices, a memory 82 for storing a device serial number (ESN), a mobile station identification number and a program, and the like. And a memory 85 in which the data to be protected associated with the authentication code generation device 84, such as the authentication code generation device 84 of the present invention, a secret key (A_Key) of each mobile station, secret shared data, and the like, is recorded. .

제9도는 본 발명의 일실시예에 따른 인증 부호 생성 장치의 전체 구성도이다.9 is an overall configuration diagram of an authentication code generation device according to an embodiment of the present invention.

인증 부호 생성 장치는 동작키 생성부(100), 초기난수 생성부(200), 해쉬값 생성부(300)로 구성된다.The authentication code generation device includes an operation key generation unit 100, an initial random number generation unit 200, and a hash value generation unit 300.

먼저 인증 부호 생성 장치에 입력되는 5개의 32 비트 데이타 K0, K1, RAN, M0, M1는 디지털 이동 통신 시스템에서 인증 부호 생성 장치가 작용되는 기능에 따라 다르다.First, five 32-bit data K0, K1, RAN, M0, and M1 inputted to the authentication code generator depend on the function of the authentication code generator in the digital mobile communication system.

예를 들어 제2도의 이동국 발호 인증 절차에 사용되는 경우에는 RAN = RAND, K1 = SSD_A의 상위 32 비트, K0 = SSD_A의 하위 32 비트, M0 = ESN, M1 = DIGITS이 되며, 제3도의 공유 비밀 데이타 갱신 절차에 사용될 경우에는 공유 비밀 데이타 생성시에 RAN = RANDSSD의 하위 32 비트, K0 = A_Key의 하위 32 비트, K1 = A_Key의 상위 32 비트, M0 = RANDSSD의 상위 24비트, M1 = ESN이 되고, 공유 비밀 데이타 갱신 확인시에는 RAN = RANDBS, K0 = SSD_A_NEW의 하위 32 비트, K1 = SSD_A_NEW의 상위 32 비트, M0 = ESN, M1 = MIN1이 된다.For example, when used in the mobile station call authentication procedure of FIG. 2, RAN = RAND, K1 = upper 32 bits of SSD_A, K0 = lower 32 bits of SSD_A, M0 = ESN, M1 = DIGITS, and FIG. When used in the data update procedure, RAN = lower 32 bits of RANDSSD, K0 = lower 32 bits of A_Key, K1 = upper 32 bits of A_Key, M0 = upper 24 bits of RANDSSD, M1 = ESN When the shared secret data update is confirmed, RAN = RANDBS, K0 = lower 32 bits of SSD_A_NEW, K1 = upper 32 bits of SSD_A_NEW, and M0 = ESN, M1 = MIN1.

먼저 동작키 생성부(100)는 입력되는 64비트 키 데이타 K0, K1을 32 비트 난수 데이타 RAN으로 비선형 변환하여 해쉬값 생성부(300)에서 사용되는 4개의 32비트 동작키를 생성한다.First, the operation key generator 100 non-linearly converts input 64-bit key data K0 and K1 into 32-bit random data RAN to generate four 32-bit operation keys used in the hash value generator 300.

초기 난수 생성부(200)는 32 비트 난수 데이타 RAN을 사용하여 각 이동국의 고유 데이타로서 변동되지 않는 장치 일련번호 ESN, 이동국 식별 번호의 일부로 구성되는 MIN1등의 값을 갖는 M0, M1을 초기 난수화하여 4개의 32비트 데이타로 변환시킨다.The initial random number generation unit 200 uses the 32-bit random number data RAN to initially randomize M0 and M1 having values such as the device serial number ESN, which is not changed as unique data of each mobile station, and MIN1 composed of a part of the mobile station identification number. Is converted into four 32-bit data.

해쉬값 생성부(300)는 4개의 버퍼 변환부로 구성되어 4번 반복 수행하여 18 비트 인증부호 또는 128 비트 공유 비밀 데이타를 생성한다.The hash value generator 300 is composed of four buffer converters and performs four times to generate an 18-bit authentication code or 128-bit shared secret data.

제10도는 상기 제9도의 동작키 생성부(100)의 세부 구성도이다.10 is a detailed block diagram of the operation key generation unit 100 of FIG.

동작키 생성부(100)의 출력은 WK0, WK1, WK2, WK3 이며 이들을 생성하는 과정은 다음과 같다.The output of the operation key generator 100 is WK0, WK1, WK2, and WK3. The process for generating them is as follows.

먼저 동작키 생성부(100)에 입력되는 3개의 32 비트 데이타 RAN, K0, K1에서 K0와 RAN을 제1 배타적 논리합 게이트(101)는 입력받아 이를 비트별로 배타적 논리합을 수행하여 제1 로테이터(102)에 출력한다.First, the first exclusive logical OR gate 101 receives three logical bit ORs from three 32-bit data RAN, K0, and K1 input to the operation key generation unit 100, and performs an exclusive logical OR on each bit to perform a first OR 102. )

상기 제1 로테이터(102)는 입력된 데이타를 n비트 우측 로테이트 시켜 제2 전가산기(106) 및 제5 전가산기(111)에 출력한다.The first rotator 102 rotates the input data n bits to the right and outputs the second full adder 106 and the fifth full adder 111.

상기 제2 전가산기(106)는 상기 제1 로테이터(102)의 로테이트된 출력과 외부의 입력 K1을 입력받아 32비트 전가산을 수행하여 제3 전가산기(107)에 출력한다.The second full adder 106 receives the rotated output of the first rotator 102 and an external input K1 and performs 32-bit full addition to output to the third full adder 107.

제2 배타적 논리합 게이트(103)는 K1과 RAN을 입력받아 이를 비트 별로 배타적 논리합을 수행하여 제1 전가산기(104)와 제6 전가산기(112)에 출력한다.The second exclusive OR gate 103 receives K1 and RAN and performs an exclusive OR on each bit to output the first exclusive adder 104 and the sixth full adder 112.

상기 제1 전가산기(104)는 외부 K0와 상기 제2 배타적 논리합 게이트(103)의 출력을 입력받아 이를 32비트 전가산을 수행하여 제2 로테이터(105)에 출력한다.The first full adder 104 receives the output of the external K0 and the second exclusive OR gate 103 and performs 32-bit full addition to the second rotator 105.

상기 제2 로테이터(105)는 상기 제1 전가산기(104)로 부터 입력된 데이타를 n비트 우측 로테이트하여 제3 전가산기(107)와 제4 전가산기(109)에 출력한다.The second rotator 105 rotates the data input from the first full adder 104 by n bits to the third full adder 107 and the fourth full adder 109.

상기 제3 전가산기(107)는 상기 제2 전가산기(106)의 출력과 상기 제2 로테이터(105)의 로테이트된 데이타를 입력받아 이를 32비트 전가산을 수행하여 제3 로테이트(108)에 출력한다.The third full adder 107 receives the output of the second full adder 106 and the rotated data of the second rotator 105 and performs 32-bit full addition to the third rotate adder 108. do.

상기 제3 로테이터(108)는 제3 전가산기(107)로 부터 입력된 데이타를 n비트 우측 로테이트 시켜 출력하는데 이 값은 32비트 WK2가 된다.The third rotator 108 rotates the data input from the third full adder 107 by n bits to the right, and this value becomes 32 bits WK2.

제5 전가산기(111)는 상기 제1 로테이트(102)의 출력과 제3 로테이터(108)의 출력 WK2를 입력받아 32비트 전가산을 수행하여 출력하는데 이 값은 WK3이 된다.The fifth full adder 111 receives the output of the first rotator 102 and the output WK2 of the third rotator 108, performs 32-bit full addition, and outputs the result.

제4 전가산기(109)는 상기 제3 로테이터(108)의 출력 WK2와 제2 로테이터(105)의 출력을 입력받아 32비트 전가산을 수행하여 제4 로테이터(1110)에 출력한다.The fourth full adder 109 receives the output WK2 of the third rotator 108 and the output of the second rotator 105, performs 32-bit full addition, and outputs the result to the fourth rotator 1110.

상기 제4 로테이터(110)는 상기 제4 전가산기(109)의 출력을 입력받아 이를 n비트 우측 로테이트하여 출력하는데 이 값은 WK1이 된다.The fourth rotator 110 receives the output of the fourth full adder 109 and rotates the n-bit right to output the result. The value becomes WK1.

제6 전가산기(112)는 상기 제4 로테이터(110)의 출력 WK1과 상기 제2 배타적 논리합 게이트(103)의 출력을 입력받아 이를 32비트 전가산하여 출력하는데 이 값은 WK0이 된다.The sixth full adder 112 receives the output WK1 of the fourth rotator 110 and the output of the second exclusive OR gate 103, and adds the 32-bit full sum to output the WK0.

제11도는 32 비트 난수 데이타 RAN에 의하여 M0, M1을 난수화하는 초기 난수 생성부(200)의 세부 구성도이다.FIG. 11 is a detailed configuration diagram of an initial random number generation unit 200 for randomizing M0 and M1 by 32-bit random number data RAN.

먼저 제1 배타적 논리합 게이트(201)는 M1과 32 비트 난수 데이타 RAN을 입력받아 이를 비트별로 배타적 논리합을 수행하여 MR1을 출력한다.First, the first exclusive OR gate 201 receives M1 and a 32 bit random data RAN and performs an exclusive OR on each bit to output MR1.

제2 배타적 논리합 게이트(202)는 M0와 32비트 난수 데이타 RAN을 입력받아 배타적 논리합을 수행하여 MR0를 출력한다.The second exclusive OR gate 202 receives M0 and the 32-bit random data RAN and performs an exclusive OR to output MR0.

제3 배타적 논리합 게이트(203)는 M0의 하위 16 비트 데이타를 상위 16비트로 하고, M1의 상위 16비트 데이타를 하위 16비트로 한 32비트 데이타를 입력받고, 32비트 난수 데이타 RAN을 입력받아 배타적 논리합하여 MR3를 출력한다.The third exclusive-OR gate 203 receives 32-bit data in which the lower 16-bit data of M0 is the upper 16 bits, receives the 32-bit data in which the upper 16-bit data of M1 is the lower 16 bits, receives the 32-bit random data RAN, and performs an exclusive OR. Output MR3.

제4 배타적 논리합 게이트(204)는 M0의 상위 16 비트 데이타를 하위 16비트로 하고, M1의 하위 16비트 데이타를 상위 16비트로 한 32비트 데이타를 입력받고, 32비트 난수 데이타 RAN을 입력받아 배타적 논리합하여 MR2를 출력한다.The fourth exclusive OR gate 204 receives 32-bit data having the upper 16-bit data of M0 as the lower 16 bits, the lower 16-bit data of the M1 as the upper 16 bits, and receives the 32-bit random data RAN. Output MR2.

제12도는 본 발명의 일실시예에 따른 해쉬값 생성부(300)의 전체 구성도이다.12 is an overall configuration diagram of the hash value generator 300 according to an embodiment of the present invention.

해쉬값 생성부(300)의 입력은 동작키 생성부(100)의 출력인 32 비트 데이타 WK0, WK1, WK2, WK3와 초기 난수 생성부(200)의 출력인 32 비트 데이타 MR0, MR1, MR2, MR3이며, 해쉬값 생성부(300)는 모두 4개의 버퍼 변환부(301 내지 304)로 구성되어 4번 반복 수행하며, 따라서 16번의 버퍼 변환 과정을 수행한다.The input of the hash value generator 300 is the 32-bit data WK0, WK1, WK2, WK3, which are the outputs of the operation key generator 100, and the 32-bit data MR0, MR1, MR2, which are the outputs of the initial random number generator 200. MR3, the hash value generator 300 is composed of four buffer converters 301 to 304 and performs four times, thus performing the buffer buffer 16 times.

제1버퍼 변환부(301)는 해쉬값 생성부(300)의 내부 32 비트 버퍼값 B0, B1, B2, B3 중 동작키 중 WK0 초기 난수 중 MR0에 의하여 버퍼 B0 값을 새로이 설정한다.The first buffer converter 301 newly sets the buffer B0 value by MR0 of the initial WK0 random number among the operation keys among the internal 32-bit buffer values B0, B1, B2, and B3 of the hash value generator 300.

제2버퍼 변환부(302)는 동작키 WK1, 초기 난수 MR1에 의하여 버퍼 B1 값을 새로이 설정한다.The second buffer converter 302 newly sets the buffer B1 value by the operation key WK1 and the initial random number MR1.

제3버퍼 변환부(303)는 동작키 WK2, 초기 난수 MR2에 의하여 버퍼 B2 값을 새로이 설정한다.The third buffer converter 303 newly sets the buffer B2 value by the operation key WK2 and the initial random number MR2.

제4버퍼 변환부(304)는 동작키 WK3, 초기 난수 MR3에 의하여 버퍼 B3 값을 새로이 설정한다.The fourth buffer converter 304 newly sets the buffer B3 value by the operation key WK3 and the initial random number MR3.

제13도는 본 발명의 일실시예에 따른 각 버퍼 변환부(301 내지 304)의 세부 구성도이다.FIG. 13 is a detailed block diagram of each buffer converter 301-304 according to an embodiment of the present invention.

해쉬값 생성부(300)에 사용된 각 버퍼 변환부(301 내지 304)는 모두 동일하게 구성된다.Each buffer converter 301-304 used in the hash value generator 300 is configured in the same manner.

하나의 버퍼 변환부는 모두 6 개의 32 비트 데이타 I1, I2, I3, I4, I5, I6을 입력으로 하여 4개의 32 비트 데이타 O1, O2, O3, O4을 출력한다.One buffer conversion unit inputs six 32-bit data I1, I2, I3, I4, I5, and I6 to output four 32-bit data O1, O2, O3, and O4.

각 입력들은 해쉬값 생성부(300)의 내부 버퍼 B0, B1, B2, B3와 동작키 WK0, WK1, WK2, WK3 중 하나,그리고 초기 난수 MR0, MR1, MR2, MR3중 하나에 해당한다.Each input corresponds to one of the internal buffers B0, B1, B2, and B3 of the hash value generator 300, one of the operation keys WK0, WK1, WK2, and WK3, and one of the initial random numbers MR0, MR1, MR2, and MR3.

좀더 구체적으로 제시하면 각 단계에서 I1, I2, I3, I4는 각각 B0, B1, B2, B3 중 어느 하나에 해당하며 I5는 WK0, WK1, WK2, WK3 중 하나, I6은 MR0, MR1, MR2, MR3 중 하나에 해당한다.More specifically, in each step, I1, I2, I3, and I4 correspond to any one of B0, B1, B2, and B3, respectively, I5 is one of WK0, WK1, WK2, WK3, I6 is MR0, MR1, MR2, Corresponds to one of MR3.

각 출력 O1, O2, O3, O4 역시 내부 버퍼 B0, B1, B2, B3 중 어느 하나에 해당한다.Each output O1, O2, O3, O4 also corresponds to any one of the internal buffers B0, B1, B2, and B3.

출력 O1, O2, O3, O4를 생성하기 위하여 우선 I2, I3, I4, I5, I6의 32 비트 5개 데이타를 입력으로 하는 부울함수 변환기(321)가 수행되어 32 비트 데이타를 출력한다. 제1 로테이터(322)는 상기 부울함수 변환기(321)의 출력을 입력받아 이를 n 비트 좌측 로테이트하여 제1 전가산기(323)로 출력한다.In order to generate outputs O1, O2, O3, and O4, first, a Boolean function converter 321 that inputs five 32-bit data of I2, I3, I4, I5, and I6 is input to output 32-bit data. The first rotator 322 receives the output of the Boolean function converter 321 and rotates the n bit left to output to the first full adder 323.

상기 제1 전가산기(323)는 상기 제1 로테이터(322)의 출력과 상기 부울함수 변환기(321)의 출력을 입력받아 32비트 전가산을 수행한 후 제2 전가산기(324)에 출력한다.The first full adder 323 receives the output of the first rotator 322 and the output of the Boolean function converter 321, performs 32-bit full addition, and outputs the result to the second full adder 324.

상기 제2 전가산기(324)는 I1과 상기 제1 전가산기(323)의 출력을 입력받아 다시 32 비트 전가산을 수행한 후 그 결과를 제2 로테이터(325)에 출력한다.The second full adder 324 receives the output of I1 and the first full adder 323, performs 32-bit full addition, and then outputs the result to the second rotator 325.

상기 제2 로테이터(325)는 상기 제2 전가산기(324)의 출력을 n 비트 좌측 로테이트하여 O4를 출력한다.The second rotator 325 rotates the output of the second full adder 324 by n bits and outputs O4.

인증 부호 생성 장치의 각 버퍼 변환부(301 내지 304)에서 I1, I2, I3, I4, I5, I6, O1, O2, O3, O4는 다음과 같이 설정한다.In the buffer conversion units 301 to 304 of the authentication code generator, I1, I2, I3, I4, I5, I6, O1, O2, O3, and O4 are set as follows.

제1버퍼 변환부(301)에서는 I1 = B0, I2 = B1, I3 = B2, I4 = B3, I5 = WK0, I6 = MR0, O1 = B1, O2 = B2, O3 = B3, O4 = B0로 설정한다.In the first buffer converter 301, I1 = B0, I2 = B1, I3 = B2, I4 = B3, I5 = WK0, I6 = MR0, O1 = B1, O2 = B2, O3 = B3, O4 = B0 do.

제2버퍼 변환부(302)에서는 I1 = B1, I2 = B2, I3 = B3, I4 = B0, I5 = WK1, I6 = MR1, O1 = B2, O2 = B3, O3 = B0, O4 = B1로 설정한다.In the second buffer converter 302, I1 = B1, I2 = B2, I3 = B3, I4 = B0, I5 = WK1, I6 = MR1, O1 = B2, O2 = B3, O3 = B0, O4 = B1 do.

제3버퍼 변환부(303)에서는 I1 = B2, I2 = B3, I3 = B0, I4 = B1, I5 = WK2, I6 = MR2, O1 = B3, O2 = B0, O3 = B1, O4 = B2로 설정한다.In the third buffer converter 303, I1 = B2, I2 = B3, I3 = B0, I4 = B1, I5 = WK2, I6 = MR2, O1 = B3, O2 = B0, O3 = B1, O4 = B2 do.

제4버퍼 변환부(304)에서는 I1 = B3, I2 = B0, I3 = B1, I4 = B2, I5 = WK3, I6 = MR3, O1 = B0, O2 = B1, O3 = B2, O4 = B3로 설정한다.In the fourth buffer converter 304, I1 = B3, I2 = B0, I3 = B1, I4 = B2, I5 = WK3, I6 = MR3, O1 = B0, O2 = B1, O3 = B2, O4 = B3 do.

제14도는 본 발명에 따른 로테이터의 구성도이다.14 is a block diagram of a rotator according to the present invention.

로테이터는 32 비트 입력을 받아 로테이트 방향과 로테이트 비트수에 의하여 32비트 입력을 로테이트 비트수인 n 비트 만큼 우측(또는 좌측)으로 로테이트한 32 비트 데이타를 출력한다.The rotator receives a 32-bit input and outputs 32-bit data obtained by rotating the 32-bit input to the right (or left) by n bits, which is the number of rotate bits, according to the rotation direction and the number of rotate bits.

예를 들어 12비트 우측 로테이터는 입력이 16빈수의 표현으로 1234abcd일때 출력은 입력을 우측으로 12비트 로테이트한 bcd1234a가 된다.For example, if a 12-bit right rotator has 1234abcd as its input, with 16 representations, the output will be bcd1234a with 12-bit rotated to the right.

제15도는 본 발명에 따른 본 발명에 다른 부울함수 변환기(321)의 구성도이다.15 is a block diagram of a Boolean function converter 321 according to the present invention.

5개의 32비트 입력 A, B, C, D, E를 받아 이를 논리곱과 배타적 논리합으로 구성된 부울합수 변환기에 의하여 변환시킨 32비트 데이타 Z를 출력한다.It takes five 32-bit inputs A, B, C, D, and E and outputs 32-bit data Z converted by a Boolean converter consisting of AND and exclusive OR.

구체적인 출력 Z의 내용은 사용된 부울함수를(a, b, c, d, e 는 0 또는 1)라 하고 입력 32비트 5개를 A=A31A30…A1A0,B31B30…B1B0,C31C30…C1C0,D31D30…D1D0,E31E30…E1E0라 하면 출력 Z31Z30…Z1Z0는 다음과 같다.The content of the concrete output Z is the Boolean function used. (a, b, c, d, e is 0 or 1) and the five input 32 bits are A = A 31 A 30 . A 1 A 0 , B 31 B 30 . B 1 B 0 , C 31 C 30 . C 1 C 0 , D 31 D 30 . D 1 D 0 , E 31 E 30 . If E 1 E 0 , output Z 31 Z 30 . Z 1 Z 0 is as follows.

제16도는 본 발명의 일실시예에 따른 전체 흐름도이다.16 is an overall flowchart according to an embodiment of the present invention.

먼저 152비트 데이타가 입력되면(400) 입력되는 64비트 키 데이타 K0, K1을 32 비트 난수 데이타 RAN으로 비선형 변환하여 해쉬값 생성부에서 사용되는 4개의 32비트 동작키를 생성하고, 32 비트 난수 데이타 RAN을 사용하여 각 이동국의 고유 데이타로서 변동되지 않는 장치 일련번호 ESN, 이동국 식별 번호의 일부로 구성되는 MIN1등의 값을 갖는 M0, M1을 초기 난수화하여 4개의 32비트 데이타로 변환시켜 출력한 후(500), 생성된 동작키와 초기 난수를 4개의 서로 다른 부울함수를 이용하여 4번의 버퍼 변환과정을 통해 18 비트 인증부호 또는 128 비트 공유 비밀 데이타를 생성하여 (600) 출력한다(700).First, when 152-bit data is input (400), non-linear conversion of the input 64-bit key data K0, K1 to 32-bit random number data RAN generates four 32-bit operation keys used in the hash value generation unit, and 32-bit random number data. Using RAN, M0 and M1 having values such as device serial number ESN and MIN1 composed of a part of mobile station identification number, which are not changed as unique data of each mobile station, are initially randomized, converted into four 32-bit data, and outputted. In operation 500, the generated operation key and the initial random number are generated by outputting 18 bits of authentication code or 128 bits of shared secret data through four buffer conversion processes using four different Boolean functions (700).

제17도는 본 발명의 일실시예에 따른 동작키 생성 단계의 세부 흐름도를 나타낸다.17 is a detailed flowchart of an operation key generation step according to an embodiment of the present invention.

먼저 3개의 32비트 데이타 RAN, K0, K1가 입력되면(501) 입력된 데이타에서 K0와 RAN을 비트별로 제1 배타적 논리합 과정을 수행하여(502), 제1 비트 회전 과정을 수행하고(503), 입력 K1과 RAN을 비트별로 제2 배타적 논리합 과정을 수행한다(504).First, when three 32-bit data RAN, K0, and K1 are input (501), a first exclusive OR process is performed for each bit of K0 and RAN in the input data (502), and a first bit rotation process is performed (503). In operation 504, a second exclusive OR operation is performed on the input K1 and the RAN bit by bit.

상기 제1 비트 회전 과정을 수행한 데이타(503)와 입력 K1을 전가산하고(505), 입력 K0와 상기 제2 배타적 논리합을 수행한 데이타(504)를 전가산하여 제2 비트 회전 과정을 수행한다(506).The second bit rotation process may be performed by full-adding the data 503 having performed the first bit rotation process and the input K1 (505), and adding the data 504 having performed the second exclusive OR with the input K0. (506).

상기 전가산한 데이타(505)와 상기 제2 비트 회전한 데이타(506)를 다시 전가산을 수행하여 제3 비트 회전 과정을 수행하여 출력 데이타 WK2를 출력한다(507).The full-added data 505 and the second-bit rotated data 506 are further added again to perform a third bit rotation process to output the output data WK2 (507).

상기 제3 비트 회전한 데이타(507)와 상기 제1 비트 회전한 데이타(503)를 전가산하여 출력데이타 WK3을 출력한다(508).The third bit rotated data 507 and the first bit rotated data 503 are added together to output the output data WK3 (508).

상기 제2 비트 회전한 데이타(506)와 상기 제3 비트 회전한 데이타(507)를 전가산을 수행하여 제4 비트 회전 과정을 수행하여 출력데이타 WK1을 출력하고(509), 상기 제4 비트 회전한 데이타(509)와 상기 제2 배타적 논리합을 수행한 데이타9504)를 전가산하여 출력데이타 WK0을 출력한다(510).The second bit rotated data 506 and the third bit rotated data 507 are subjected to full addition to perform a fourth bit rotation process to output the output data WK1 (509), and to rotate the fourth bit. The output data WK0 is output by summing one data 509 and the data 9504 having performed the second exclusive OR.

제18도는 본 발명의 일실시예에 따른 초기 난수 생성 단계의 세부 흐름도를 나타낸다.18 is a detailed flowchart of an initial random number generation step according to an embodiment of the present invention.

먼저, M0, M1, RAN이 입력되면(511) RAN에 의하여 M0, M1에 대해 제1 배타적 논리합 과정을 수행하고(512), 입력 M0, M1의 데이타를 재배치한 후(513) 제2 배타적 논리합 과정을 수행하여(514) 출력 데이타 MR0, MR1, MR2, MR3를 출력한다(515).First, when M0, M1, and RAN are input (511), the first exclusive OR process is performed on M0 and M1 by the RAN (512), and after rearranging data of the input M0 and M1 (513), the second exclusive OR is performed. In operation 514, the output data MR0, MR1, MR2, and MR3 are output (515).

상기와 같이 구성되어 동작하는 본 발명은 새로운 부호 분할 다중 접속 방식(CDMA)을 이용한 디지털 이동 통신 시스템의 가입자 인증 과정에 적용되어 이동 통신 사업자가 정당한 가입자를 보호하고, 불법적인 사용자의 통화 도용을 막을 수 있을 뿐만 아니라 이동 통신 사업자의 통화 도용에 따른 과금 손실을 예방할 수 있는 효과가 있다.The present invention constructed and operated as described above is applied to the subscriber authentication process of the digital mobile communication system using the new code division multiple access method (CDMA) to protect the right subscribers and prevent illegal user from stealing the call. In addition, there is an effect that can prevent the loss of billing due to the theft of the mobile operator.

Claims (12)

이동국 발호 인증시에서는 기지국(2)에서 생성된 난수(RANDSSD)와 이동국과 인증센터의 메모리(76,85)에 저장된 공유 비밀 데이타(SSD)를 입력받고, 공유 비밀 데이타 생성시에는 인증센터(5)에서 생성된 난수(RANDSSD)와 인증센터와 이동국의 메모리에 저장된 비밀키(A_Key)를 입력받고, 공유 비밀 데이타 갱신 확인시에는 이동국에서 생성된 난수(RANDSSD)와 새롭게 생성된 공유 비밀 데이타(SSD_NEW)를 입력받아 난수 데이타(RAND, RANDSSD, RANDBS)로 비선형 변환하여 동작키를 생성하는 동작키 생성 수단(100); 이동국 발호 인증시에는 기지국(2)에서 생성된 난수(RANDSSD)와 메모리(82,74)에 저장된 이동국의 장치 일련번호(ESN)와 가입자로부터 입력되는 마지막 다이얼 수로 구성되는 디지트(DIGITS)를 입력받고, 공유 비밀 데이타 생성시에는 인증센터(5)에서 생성된 난수(RANDSSD)와 메모리(82,74)에 저장된 이동국의 장치 일련 번호(ESN)를 입력받고, 고유 비밀 데이타 갱신 확인시에는 이동국(1)에서 생성된 난수(RANDSSD)와 메모리(82,74)에 저장된 이동국의 장치 일련 번호(ESN)와 이동국 식별 번호(MIN)를 입력받아 난수 데이타(RANDSDD, RANDSSD, RANDBS)를 사용하여 난수화 하여 초기 난수 데이타를 생성하는 초기 난수 생성 수단; 및 상기 동작키 생성 수단(100)의 출력과 상기 초기 난수 생성 수단(200)의 출력을 입력받아 서로 다른 부울 함수를 사용하여 버퍼 값을 변환시키는 과정을 통해 인증 부호 또는 공유 비밀 데이타를 생성하는 해쉬값 생성 수단을 구비한 것을 특징으로 하는 디지털 이동 통신 시스템에서의 가입자 인증 부호 생성 장치.In the mobile station call authentication, the random number (RANDSSD) generated by the base station 2 and the shared secret data (SSD) stored in the memory of the mobile station and the authentication center are input. Input random number (RANDSSD) and secret key (A_Key) stored in the memory of authentication center and mobile station.When checking shared secret data update, random number (RANDSSD) generated in mobile station and newly generated shared secret data (SSD_NEW) Operation key generating means (100) for receiving an input and non-linearly converting the random number data (RAND, RANDSSD, RANDBS) to generate an operation key; In the mobile station call authentication, a digit (DIGITS) including a random number (RANDSSD) generated by the base station 2, the device serial number (ESN) of the mobile station stored in the memory 82 and 74, and the last dial number input from the subscriber is received. When generating the shared secret data, the random number (RANDSSD) generated by the authentication center 5 and the device serial number (ESN) of the mobile station stored in the memories 82 and 74 are inputted. Random number (RANDSSD) generated from the CDMA) and the device serial number (ESN) and the mobile station identification number (MIN) of the mobile station stored in the memory (82,74) are received and randomized using random number data (RANDSDD, RANDSSD, RANDBS). Initial random number generating means for generating initial random number data; And a hash for generating an authentication code or shared secret data by receiving an output of the operation key generating means 100 and an output of the initial random number generating means 200 and converting buffer values using different Boolean functions. Apparatus for generating a subscriber authentication code in a digital mobile communication system, comprising: a value generating means. 제1항에 있어서, 상기 동작키 생성 수단(100)은, 입력 데이타 K0와 RAN을 비트별로 배타적 논리합을 수행하여 출력하는 제1 배타적 논리합 게이트 수단(101);상기 제1배타적 논리합 게이트 수단(101)의 출력을 비트 로테이트 시켜 출력하는 제1로테이터 수단(102); 상기 제1로테이터 수단(102)의 출력과 외부의 입력 K1을 전가산을 수행하여 출력하는 제2 전가산 수단(106); 외부의 입력 K1과 RAN을 입력받아 이를 비트별로 배타적 논리합을 수행하여 출력하는 제2배타적 논리합 게이트 수단(103); 외부 입력 K0와 상기 제2배타적 논리합 게이트 수단(103)의 출력을 입력받아 이를 전가산하여 출력하는 제1전가산 수단(104); 상기 제1전가산 수단(104)의 출력을 비트 로테이트 시켜 출력하는 제2로테이터 수단(105); 상기 제2전가산 수단(106)의 출력과 상기 제2로테이터 수단(105)의 출력을 입력받아 이를 전가산하여 출력하는 제3전가산 수단(107); 상기 제3전가산 수단(107)의 출력을 비트 로테이트 시켜 동작키 WK2를 출력하는 제3로테이터 수단(108); 상기 제1로테이터 수단(102)의 출력과 상기 제3로테이터 수단(108)의 출력을 입력받아 전가산하여 WK3을 출력하는 제5전가산 수단(111); 상기 제3로테이터 수단(108)의 출력과 상기 제2로테이터 수단(105)의 출력을 입력받아 전가산하여 출력하는 제4전가산 수단(109); 상기 제4전가산 수단(109)의 출력을 입력받아 이를 비트 로테이트 시켜 동작키 WK1을 출력하는 제4로테이터 수단(110); 및 상기 제4로테이터 수단(110)의 출력과 상기 제2배타적 논리합 게이트 수단(103)의 출력을 입력받아 이를 전가산하여 동작키 WK0 을 출력하는 제6전가산 수단(112)을 구비한 것을 특징으로 하는 디지털 이동 통신 시스템에서의 가입자 인증 부호 생성 장치.The method of claim 1, wherein the operation key generating means (100) comprises: first exclusive OR gate means (101) for performing an exclusive OR on the bit basis of the input data K0 and RAN; the first exclusive OR gate means (101); First rotator means (102) for bit-rotating the output of " Second full addition means (106) for performing a full addition on the output of the first rotator means (102) and an external input K1; Second exclusive OR gate means 103 which receives an external input K1 and RAN and performs an exclusive OR on each bit and outputs the exclusive OR; A first full adder (104) that receives an output of an external input K0 and the output of the second exclusive OR gate means (103) and adds it to the output; Second rotator means (105) for bit-rotating the output of said first full-add means (104); A third full adder (107) which receives the output of the second full adder (106) and the output of the second rotator means (105) and adds it to the full adder; Third rotator means (108) for bit-rotating the output of said third full addition means (107) to output an operation key WK2; Fifth full adding means (111) for receiving the output of the first rotator means (102) and the output of the third rotator means (108) and outputting the WK3; Fourth full adder means (109) for receiving the output of the third rotator means (108) and the output of the second rotator means (105), and totally adding the outputs; Fourth rotator means (110) which receives the output of the fourth full adder (109) and bit rotates it to output the operation key WK1; And a sixth full adder 112 which receives the output of the fourth rotator means 110 and the output of the second exclusive OR gate means 103 and totally adds it to output the operation key WK0. Subscriber authentication code generation device in a digital mobile communication system. 제2항에 있어서, 상기 로테이터 수단은 임의의 값 N비트 우측 로테이터인 것을 특징으로 하는 디지털 이동 통신 시스템에서의 가입자 인증 부호 생성 장치.3. The apparatus of claim 2, wherein the rotator means is an arbitrary value N-bit right rotator. 제2항에 있어서, 상기 전가산 수단은 32비트 전가산 수단인 것을 특징으로 하는 디지털 이동 통신 시스템에서의 가입자 인증 부호 생성 장치.3. The apparatus of claim 2, wherein the full add means is a 32 bit full add means. 제1항에 있어서, 상기 초기 난수 생성 수단(200)은, 입력 M1과 32비트 난수 데이타 RAN을 입력받아 이를 비트별로 배타적 논리합을 수행하여 초기 난수 MR1을 출력하는 제1배타적 논리합 게이트 수단(201); 입력 M0와 32비트 난수 데이타 RAN을 입력받아 배타적 논리합을 수행하여 초기 난수 MR0를 출력하는 제2배타적 논리합 게이트 수단(202); 입력 M0의 하위 16비트 데이타를 상위 16비트로 하고, 입력 M1의 상위 16비트 데이타를 하위 16비트로 한 32비트 데이타를 입력받고, 32비트 난수 데이타 RAN을 입력받아 배타적 논리합하여 초기 난수 MR3를 출력하는 제3배타적 논리합 게이트 수단(203); 및 입력 M0의 상위 16비트 데이타를 상위 16비트로 하고, 입력 M1의 하위 16비트 데이타를 상위 16비트로 한 32비트 데이타를 입력받고, 32비트 난수 데이타 RAN을 입력받아 배타적 논리합하여 초기 난수 MR2를 출력하는 제4배타적 논리합 게이트 수단(204)을 구비한 것을 특징으로 하는 디지털 이동 통신 시스템에서의 가입자 인증 부호 생성 장치.The first exclusive logical sum gate means 201 of claim 1, wherein the initial random number generating unit 200 receives an input M1 and a 32-bit random number data RAN and performs an exclusive OR on each bit to output an initial random number MR1. ; Second exclusive OR gate means 202 for receiving the input M0 and the 32-bit random number data RAN and performing an exclusive OR to output an initial random number MR0; The first 16-bit data of the lower 16-bit data of the input M0 and the lower 16-bit of the 16-bit data of the input M1 are input, and the 32-bit random data RAN is received exclusively, and the initial random number MR3 is output. Triple exclusive-OR gate means 203; And receiving 32-bit data having the upper 16-bit data of the input M0 as the upper 16 bits and the lower 16-bit data of the input M1 as the upper 16 bits, receiving 32-bit random data RAN, and performing an exclusive OR to output an initial random number MR2. And a fourth exclusive logical sum gate means (204). 제1항에 있어서, 상기 해쉬값 생성 수단(300)은, 서로 다른 부울 함수를 통새 버퍼 값 변환을 수행하는 적어도 하나 이상의 버퍼 변환 수단을 구비한 것을 특징으로 하는 디지털 이동 통신 시스템에서의 가입자 인증 부호 생성 장치.The method of claim 1, wherein the hash value generating means 300, subscriber authentication code in the digital mobile communication system, characterized in that it comprises at least one buffer conversion means for performing a conventional buffer value conversion of different Boolean functions Generating device. 제6항에 있어서, 상기 버퍼 변화 수단은, 상기 해쉬값 생성 수단(300)의 내부 32비트 버퍼 B0, B1, B2, B3 값중 동작키 WK0, 초기 난수 MR0에 의해 버퍼 B0값을 새로이 설정하는 제1버퍼 변환 수단(301);상기 해쉬값 생성 수단(300)의 내부 32 비트 버퍼 B0, B1, B2, B3 값중 동작키 WK1, 초기 난수 MR1에 의해 버퍼 B1값을 새로이 설정하는 제2버퍼 변환 수단(302); 상기 해쉬값 생성 수단(300)의 내부 32비트 버퍼 B0, B1, B2, B3 값중 동작키 WK2, 초기 난수 MR2에 의해 버퍼 B2값을 새로이 설정하는 제3버퍼 변환 수단(303);및 상기 해쉬값 생성 수단(300)의 내부 32비트 버퍼 B0, B2, B3 값중 동작키 WK3, 초기 난수 MR3에 의해 버퍼 B3값을 새로이 설정하는 제4버퍼 변환 수단(304)을 구비한 것을 특징으로 하는 디지털 이동 통신 시스템에서의 가입자 인증 부호 생성 장치.The buffer changing means according to claim 6, wherein the buffer changing means is further configured to newly set the buffer B0 value by the operation key WK0 and the initial random number MR0 among the internal 32-bit buffers B0, B1, B2, and B3 of the hash value generating means 300. A second buffer conversion means for newly setting a buffer B1 value by an operation key WK1 and an initial random number MR1 among the internal 32-bit buffers B0, B1, B2, and B3 values of the hash value generating means 300; 302; A third buffer converting means 303 for newly setting a buffer B2 value by an operation key WK2 and an initial random number MR2 among the internal 32-bit buffers B0, B1, B2, and B3 of the hash value generating means 300; and the hash value And a fourth buffer converting means 304 for newly setting the buffer B3 value by the operation key WK3 and the initial random number MR3 among the internal 32-bit buffers B0, B2, and B3 values of the generating means 300. Apparatus for generating subscriber authentication code in a system. 제7항에 있어서, 상기 제1 내지 제4버퍼 변환 수단(301 내지 304) 중 어느 하나의 버퍼 변환 수단은, 해쉬값 생성 수단(300)의 내부 버퍼 B0, B1, B2, B3중 임의의 3개의 데이타와 동작키 WK0, WK1, WK2, WK3 중 임의의 하나의 데이타, 그리고 초기 난수 MR0, MR1, MR2, MR3중 임의의 하나의 값을 입력받아 부울 함수에 의해 데이타를 변환하여 출력하는 부울함수 변환 수단(321); 상기 부울함수 변환 수단(321)의 출력을 입력받아 이를 비트 로테이트 시켜 출력하는 제1로테이터 수단(322); 상기 제1로테이터 수단(322)의 출력과 상기 부울함수 변환 수단(321)의 출력을 입력받아 32비트 전가산을 수행하여 출력하는 제1전가산 수단(323); 해쉬값 생성 수단(300)의 내부 버퍼 B0, B1, B2, B3 중 임의의 1개의 데이타와 상기 제1 전가산 수단(323)의 출력을 입력받아 32비트 전가산을 수행하여 출력하는 제2 전가산 수단(324); 및 상기 제2 전가산 수단(324)의 출력을 비트 로테이트 시켜 출력하는 제2로테이터 수단(325)을 구비한 것을 특징으로 하는 디지털 이동 통신 시스템에서의 가입자 인증 부호 생성 장치.The buffer converting means of any one of the first to fourth buffer converting means (301 to 304) is any one of the internal buffers B0, B1, B2, and B3 of the hash value generating means (300). Boolean function that receives data from any one of WK0, WK1, WK2, and WK3, and any one of the initial random numbers MR0, MR1, MR2, and MR3. Conversion means 321; First rotator means (322) for receiving the output of the Boolean function converting means (321) and bit-rotating the output of the output; First full adding means (323) for receiving the output of the first rotator means (322) and the output of the Boolean function converting means (321) and performing 32-bit full addition; The second electronic device that receives any one of the internal buffers B0, B1, B2, and B3 of the hash value generating means 300 and the output of the first full adding means 323 and performs 32-bit full addition to output the second electric power. Adding means 324; And second rotator means (325) for bit-rotating and outputting the output of said second full-add means (324). 제8항에 있어서, 상기 로테이터 수단은 임의의 N비트 좌측 로테이터인 것을 구비한 것을 특징으로 하는 디지털 이동 통신 시스템에서의 가입자 인증 부호 생성 장치.9. The apparatus of claim 8, wherein the rotator means is any N-bit left rotator. 이동 전화기인 이동국과 이동국 인증을 위한 키를 관리하고 가입자 인증과정에 필요한 난수를 발생하는 인증센터를 포함하는 디지털 이동 통신 시스템의 인증 부호 생성 방법에 있어서, 데이타가 입력되면 난수 데이타로 비선형 변환하여 동작키 데이타를 생성하고, 마찬가지로 난수 데이타를 사용하여 난수화하여 초기 난수 데이타를 생성하여 출력하는 제1단계(400,500); 및 상기 제1단계(400,500) 수행 후 동작키 데이타와 초기 난수 데이타를 부울 함수를 사용하여 버퍼값을 변환시키는 과정을 통해 인증 부호 또는 공유 비밀 데이타를 생성하여 출력하는 제2단계(600,700)를 포함하는 것을 특징으로 하는 디지털 이동 통신 시스템에서의 가입자 인증 부호 생성 방법.A method for generating an authentication code of a digital mobile communication system including a mobile station, which is a mobile phone, and an authentication center that manages keys for mobile station authentication and generates a random number required for subscriber authentication, wherein the data is inputted and nonlinearly converted into random data. A first step (400, 500) of generating key data, randomizing the same using random data, and generating and outputting initial random data; And a second step (600,700) of generating and outputting an authentication code or shared secret data through a process of converting a buffer value by using a Boolean function after performing the first step (400,500). Subscriber authentication code generation method in a digital mobile communication system, characterized in that. 제10항에 있어서, 상기 제1단계(400,500)의 동작키 생성 과정은, 외부로부터 32비트 데이타 RAN, K0, K1가 입력되면 입력된 데이타에서 K0와 RAN을 비트별로 제1배타적 논리합 과정을 수행하여, 제1비트 회전 과정을 수행하고, 입력 K1과 RAN을 비트별로 제2배타적 논리합 과정을 수행하는 제3단계(501 내지 504); 상기 제3단계(501 내지 504)의 제1비트 회전 과정을 수행한 데이타와 외부 입력 K1을 전가산하고, 외부 입력 K0와 상기 제3단계(501 내지 504)의 제2배타적 논리합을 수행한 데이타를 전가산한 후, 제2비트 회전 과정을 수행하여 상기 전가산한 데이타와 상기 제2비트 회전한 데이타를 다시 전가산을 수행하여 제3비트 회전 과정을 수행하여 출력 데이타 WK2를 출력하는 제4단계(505 내지 507); 상기 제4단계(505 내지 507)의 제3비트 회전한 데이타와 상기 제3단계(501 내지 504)의 제1비트 회전한 데이타를 전가산하여 출력데이타 WK3을 출력하는 제5단계(508); 상기 제4단계(505 내지 507)의 제2비트 회전한 데이타와 제3비트 회전한 데이타를 전가산을 수행하여 제4비트 회전 과정을 수행하여 출력데이타 WK1을 출력하는 제6단계(509); 및 상기 제6단계(509)의 제4비트 회전한 데이타와 상기 제3단계(501 내지 504)의 제2 배타적 논리합으 ㄹ수행한 데이타를 전가산하여 출력데이타 WK0을 출력하는 제7단계(510)를 포함하는 것을 특징으로 하는 디지털 이동 통신 시스템에서의 가입자 인증 부호 생성 방법.12. The method of claim 10, wherein the operation key generation process of the first step 400, 500, when 32-bit data RAN, K0, K1 is input from the outside, performs a first exclusive logical OR process on the input data K0 and RAN bit by bit. A third step (501 to 504) of performing a first bit rotation process and performing a second exclusive OR process on the input K1 and RAN bit by bit; The data obtained by performing the first bit rotation process of the third step (501 to 504) and the external input K1 are added together, and the data performing the second exclusive logical sum of the external input K0 and the third step (501 to 504). A fourth step of performing a third bit rotation process by performing a second bit rotation process, and then performing a third bit rotation process to perform a third bit rotation process again. Steps 505 to 507; A fifth step (508) of outputting the output data WK3 by totally adding the third bit rotated data of the fourth step (505 to 507) and the first bit rotated data of the third step (501 to 504); A sixth step 509 of outputting the output data WK1 by performing a fourth bit rotation process by performing a full addition of the second bit rotated data and the third bit rotated data of the fourth steps 505 to 507; And a seventh step (510) of outputting the output data WK0 by adding the fourth bit rotated data of the sixth step 509 and the data performed by the second exclusive logical sum of the third steps 501 to 504. Subscriber authentication code generation method in a digital mobile communication system comprising a. 제10항에 있어서, 상기 제1단계(400,500)의 초기 난수 생성 과정은, 외부 입력 데이타 M0, M1, RAN가 입력되면 RAN에 의하여 M0, M1에 대해 제1 배타적 논리합 과정을 수행하고, 입력 M0, M1의 데이타를 재배치한 후 제2배타적 논리합 과정을 수행하여 초기 난수 데이타 MR0, MR1, MR2, MR3를 출력하는 단계(511 내지 515)를 포함하는 것을 특징으로 하는 디지털 이동 통신 시스템에서의 가입자 인증 부호 생성 방법.11. The method of claim 10, wherein the initial random number generation process of the first step (400,500), when the external input data M0, M1, RAN is input, performs a first exclusive logical OR process for M0, M1 by the RAN, input M0 And rearranging the data of M1 and performing a second exclusive OR process to output initial random number data MR0, MR1, MR2, and MR3 (511 to 515). Code generation method.
KR1019950052187A 1995-12-19 1995-12-19 Apparatus for and method of generating code to identify user in digital mobile communication system KR0160354B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019950052187A KR0160354B1 (en) 1995-12-19 1995-12-19 Apparatus for and method of generating code to identify user in digital mobile communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950052187A KR0160354B1 (en) 1995-12-19 1995-12-19 Apparatus for and method of generating code to identify user in digital mobile communication system

Publications (2)

Publication Number Publication Date
KR970055893A KR970055893A (en) 1997-07-31
KR0160354B1 true KR0160354B1 (en) 1998-12-01

Family

ID=19441537

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950052187A KR0160354B1 (en) 1995-12-19 1995-12-19 Apparatus for and method of generating code to identify user in digital mobile communication system

Country Status (1)

Country Link
KR (1) KR0160354B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100330418B1 (en) * 2000-01-28 2002-03-27 오길록 Authentication Method in Mobile Communication Environment
KR100474887B1 (en) * 1997-02-17 2005-04-20 엘지전자 주식회사 Method for authenticating of cdma mobile communication system

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100310864B1 (en) * 1998-12-04 2001-11-15 이계철 Authentication key generation method in authentication system
KR100305910B1 (en) * 1998-12-10 2001-11-30 서평원 Data Structure and Method for Subscriber Classification in Mobile Communication Systems
KR100329357B1 (en) * 1999-02-05 2002-03-22 박종섭 Method for generating index of home location registor in mobile communication system
KR100607463B1 (en) * 1999-07-13 2006-08-02 한국전자통신연구원 Subscriber authentication method and ciphering session key generation method for security on wireless mobile communications network
KR100500238B1 (en) 2002-12-24 2005-07-11 삼성전자주식회사 Disc centering device
KR100500235B1 (en) 2002-12-24 2005-07-11 삼성전자주식회사 Disc centering device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100474887B1 (en) * 1997-02-17 2005-04-20 엘지전자 주식회사 Method for authenticating of cdma mobile communication system
KR100330418B1 (en) * 2000-01-28 2002-03-27 오길록 Authentication Method in Mobile Communication Environment

Also Published As

Publication number Publication date
KR970055893A (en) 1997-07-31

Similar Documents

Publication Publication Date Title
US5513245A (en) Automatic generation of private authentication key for wireless communication systems
KR0181566B1 (en) Method and apparatus for efficient real-time authentication and encryption in a communication system
CA2087722C (en) Authentication system for digital cellular communications
US5457737A (en) Methods and apparatus to verify the identity of a cellular mobile phone
US5239294A (en) Method and apparatus for authenication and protection of subscribers in telecommunication systems
KR101097709B1 (en) Authenticating access to a wireless local area network based on security value(s) associated with a cellular system
JP3581810B2 (en) Method and mobile device for establishing a communication channel
US5943425A (en) Re-authentication procedure for over-the-air activation
KR100289795B1 (en) Key Deformation Method and Apparatus for Differentiating Different Networks
CN1249588A (en) Method for updating encrypted shared data in radio communication system
JPH06188877A (en) Encoding system
US20030061488A1 (en) Cloning protection for electronic equipment
CA2230030A1 (en) Method for foiling cellular telephone cloning
WO2000011835A1 (en) Secure processing for authentication of a wireless communications device
AU6248294A (en) Authentication key entry in cellular radio system
US6532290B1 (en) Authentication methods
RU2316143C2 (en) Cryptographic method and system for limiting mobility in radio networks
JP2684118B2 (en) Method for subscriber authentication and protection in a telephone communication system
KR0160354B1 (en) Apparatus for and method of generating code to identify user in digital mobile communication system
AU5901498A (en) Method and apparatus for providing authentication security in a wireless communication system
US6665530B1 (en) System and method for preventing replay attacks in wireless communication
KR100665946B1 (en) Effective use of dialed digits in call origination
KR100545512B1 (en) System and method for preventing replay attacks in wireless communication
KR100321716B1 (en) Key authentication method in authentication system
Walker Security in mobile and cordless telecommunications

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: 20080805

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee