KR100416235B1 - Cryptography processing apparatus for a high speed radio network switch - Google Patents

Cryptography processing apparatus for a high speed radio network switch Download PDF

Info

Publication number
KR100416235B1
KR100416235B1 KR10-2001-0085801A KR20010085801A KR100416235B1 KR 100416235 B1 KR100416235 B1 KR 100416235B1 KR 20010085801 A KR20010085801 A KR 20010085801A KR 100416235 B1 KR100416235 B1 KR 100416235B1
Authority
KR
South Korea
Prior art keywords
processing unit
cryptographic
input
output
storage unit
Prior art date
Application number
KR10-2001-0085801A
Other languages
Korean (ko)
Other versions
KR20030055732A (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 KR10-2001-0085801A priority Critical patent/KR100416235B1/en
Publication of KR20030055732A publication Critical patent/KR20030055732A/en
Application granted granted Critical
Publication of KR100416235B1 publication Critical patent/KR100416235B1/en

Links

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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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
    • H04L2209/125Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations

Landscapes

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

Abstract

본 발명은 고속 라디오 네트워크 스위치용 암호 처리 장치에 관한 것으로, 입출력 프로토콜 패킷이 저장되거나 패킷으로부터 추출한 데이터와 명령어, 제어 신호들을 저장하는 메모리 기억 장치부와, 패킷과 패킷으로부터 추출한 데이터, 제어 신호와 명령을 저장하는 공유 메모리 기억 장치부와, 상기 메모리 기억 장치부와 공유 메모리 기억 장치부의 입출력 제어와 동기화를 수행하는 메모리 제어부와, 기밀성 및 무결성 검증 암호 알고리즘을 처리하는 암호 처리 장치부와, 외부 입출력을 제어하는 외부 입출력 제어부와, 외부 네트워크 연결망으로부터 수신되는 패킷에 대하여 패킷 분석 작업을 수행하며, 분석된 패킷을 상기 암호 처리 장치부나 상기 메모리 기억 장치부 혹은 공유 메모리 기억 장치부로 전송하는 외부 네트워크 인터페이스 블록과, 기본 프로토콜 해석 및 패킷 처리, 메모리 관리, 공유 메모리 관리, 암호 처리기 제어를 수행하는 중앙 처리 장치부를 포함하며, 높은 처리율과 작은 응답 시간을 가지는 암호 처리기의 구조와 입출력 메모리 구조, 스케줄러 구조를 제공한다.The present invention relates to an encryption processing apparatus for a high-speed radio network switch, comprising: a memory storage unit for storing input / output protocol packets or extracting data and instructions from the packets; and data extracted from the packets and packets, control signals and instructions. A shared memory storage unit for storing data, a memory control unit for performing synchronization with the input / output control of the memory storage unit and the shared memory storage unit, a cryptographic processing unit for processing confidentiality and integrity verification encryption algorithms, and external input / output An external input / output controller for controlling the packet, an external network interface block for performing packet analysis on packets received from an external network connection network, and transmitting the analyzed packet to the encryption processing unit, the memory storage unit, or the shared memory storage unit; , It includes a central processing unit that performs basic protocol analysis, packet processing, memory management, shared memory management, and cryptographic processor control, and provides a cryptographic processor structure with high throughput, small response time, input / output memory structure, and scheduler structure.

Description

고속 라디오 네트워크 스위치용 암호 처리 장치{CRYPTOGRAPHY PROCESSING APPARATUS FOR A HIGH SPEED RADIO NETWORK SWITCH}Cryptographic processing unit for high-speed radio network switch {CRYPTOGRAPHY PROCESSING APPARATUS FOR A HIGH SPEED RADIO NETWORK SWITCH}

본 발명은 고속 라디오 네트워크 스위치용 암호 처리 장치에 관한 것으로, 더욱 상세하게는 3GPP(3rdGeneration Partnership Project) 시스템의 고속 라디오 네트워크 스위치에서 기밀성(Confidentiality) 처리 및 무결성(Integrity) 검증 암호 알고리즘을 처리하는 고속 라디오 네트워크 스위치용 암호 처리 장치에 관한 것이다.The present invention for handling as, more particularly, air-tightness (Confidentiality) processing and integrity (Integrity) verification cipher algorithm in high-speed radio network switch of the 3GPP (3 rd Generation Partnership Project) system according to the encryption processing device for high-speed radio network switch A cryptographic processing apparatus for a high speed radio network switch.

일반적으로, 고속 라디오 네트워크 스위치(Radio Network Controller; RNC) 시스템에서는 최대 2Mbps의 대역폭을 가지는 3GPP 시스템의 가입자 채널을 다수 처리해야 하기 때문에 고속의 패킷 암호화기가 필요하다.In general, a high speed radio network controller (RNC) system requires a high speed packet encryptor because a plurality of subscriber channels of a 3GPP system having a bandwidth of up to 2 Mbps must be processed.

3GPP 시스템에서 정의된 암호 알고리즘으로는 인증 부문으로서, 난수 발생 알고리즘인 f0을 비롯하여 가입자가 네트워크 인증을 위한 f1 알고리즘, 재동기 메시지 인증을 위한 f1* 알고리즘, 가입자 인증을 위한 f2 알고리즘, 무선 구간 암호화 키 생성을 위한 f3 알고리즘, 무선 구간 무결성 키 생성을 위한 f4 알고리즘, 가입자 익명성 키 생성을 위한 f5 알고리즘, 재동기 익명성 키 생성을 위한 f5* 알고리즘들이 정의되어 있다.Cryptographic algorithms defined in the 3GPP system include the authentication section, including f0, a random number generation algorithm, f1 algorithm for network authentication, f1 * algorithm for resynchronization message authentication, f2 algorithm for subscriber authentication, and wireless section encryption key. The f3 algorithm for generation, the f4 algorithm for generating the wireless interval integrity key, the f5 algorithm for generating the subscriber anonymity key, and the f5 * algorithms for generating the resynchronization anonymous key are defined.

아울러, 최근 3GPP에서는 RNC 시스템에서도 암호화의 필요성을 인식하여 무선 구간 사용자 데이터 암호화를 위한 f8 알고리즘, 무선 구간 사용자 트래픽 무결성 검증 알고리즘인 f9도 TS33.102 v3.7.0 표준 문서에서 정의하였다.In addition, 3GPP has recently recognized the necessity of encryption in the RNC system and has defined the f8 algorithm for wireless section user data encryption and f9, which is a wireless section user traffic integrity verification algorithm, in the TS33.102 v3.7.0 standard document.

한편, 일반적인 RNC 시스템에서는 PowerPC 750이나 StrongARM 프로세서, TMS320 프로세서와 같은 범용 프로세서 혹은 디지털 신호 처리 프로세서를 사용하여 RLC, RRC, MAC 프로토콜을 처리하며, 다양한 호 처리, 호 연결, 패킷 처리 등의 작업을 수행한다.On the other hand, general RNC system processes RLC, RRC and MAC protocols using general-purpose or digital signal processing processor such as PowerPC 750, StrongARM processor and TMS320 processor, and performs various call processing, call connection, packet processing, etc. do.

그런데, 기밀성 알고리즘인 f8과 무결성 알고리즘인 f9는 고속 및 광대역폭이 필요한 RNC 장비에서 사용되기 때문에 높은 처리율(throughput)과 작은 응답 시간(response time)을 가져야한다.However, since the confidentiality algorithm f8 and the integrity algorithm f9 are used in RNC equipment requiring high speed and wide bandwidth, they must have high throughput and small response time.

그러나, 기존의 범용 프로세서 혹은 디지털 신호 처리 프로세서를 사용하여 암호를 처리하는 데는 많은 프로세서를 추가로 설치하거나 해당 보드를 추가로 사용해야 하는 등 높은 코스트 추가 부담이 발생함과 아울러 암호 처리 성능을 만족시키기 어려운 문제점이 있다.However, using a conventional general-purpose or digital signal processing processor to handle cryptography requires high costs, such as additional processors or additional boards, and it is difficult to satisfy cryptographic performance. There is a problem.

본 발명은 상기와 같은 종래의 문제점을 해결하기 위하여 제안한 것으로서, 그 목적은 높은 처리율(throughput)과 작은 응답 시간(response time)을 가져 많은데이터를 한꺼번에 처리할 수 있으며 작은 크기를 가지는 데이터에 대해서도 작은 지연 시간(delay)을 가지면서 신속하게 처리할 수 있도록 한 고속 라디오 네트워크 스위치용 암호 처리 장치를 제공하는 데 있다.The present invention has been proposed to solve the above-mentioned conventional problems, and its object is to have a high throughput and a small response time so that a large amount of data can be processed at the same time and small for data having a small size. The present invention provides a cryptographic processing device for a high-speed radio network switch that can be processed quickly with delay.

RNC와 같이 많은 입력 데이터에 대한 고속 처리가 필요한 시스템은 해당 구성 요소 각각의 성능도 중요하지만, 이의 인터페이스 구조나 메모리 구성 방법, 동작 방법, 주변 블록과의 연결 구조 등과 같은 인터페이스 정합과 구조 등이 매우 중요하다.In systems that require high-speed processing of large amounts of input data, such as RNC, the performance of each of these components is also important.However, interface matching and structure such as its interface structure, memory configuration method, operation method, and connection structure with surrounding blocks are very important. It is important.

따라서, 본 발명은 독립적인 제어기와 스케줄러, 멀티 버퍼 제어기를 갖추고, 사용하는 암호 처리부는 다수의 입력을 동시에 처리할 수 있는 멀티 프로세서 구조 혹은 파이프라인 기법을 사용한 병렬 처리 구조를 이용하여 시스템의 중앙 처리 장치에 부하를 절감함으로써 다수의 입력 데이터에 대해서 높은 처리율을 가지며 각각의 입력 데이터에 대해서 빠른 응답 시간을 보장한다.Therefore, the present invention has an independent controller, a scheduler, and a multi-buffer controller, and the encryption processing unit using the central processing system using a multi-processor structure or a parallel processing structure using a pipelined technique capable of processing a plurality of inputs simultaneously. By reducing the load on the device, it has a high throughput for multiple input data and ensures fast response time for each input data.

DMA 처리부를 가지기 때문에 처리해야 할 데이터를 메모리 장치로부터 가져오거나 처리한 데이터를 메모리 장치에 쓰는 동작을 중앙 처리 장치와는 독립적으로 암호 처리 장치에서 수행할 수 있어서 시스템의 중앙 처리 장치에 부하를 거의 유발시키지 않으므로 전체 시스템 성능 향상되게 한다.Having a DMA processor, the cryptographic processing unit can perform the operation of importing data to be processed from the memory device or writing the processed data to the memory device independently of the central processing unit, causing almost no load on the central processing unit of the system. This does not improve the overall system performance.

또한, 다중 암호 처리부를 사용하여 암호 처리 시스템을 구성하는 경우의 입출력 구조와 제어기 구조, 연결망 구조, 스케줄러 구조, 입출력 메모리 구조를 제공하며, 파이프라인화 된 고속 암호 처리기를 사용하는 경우의 시스템 구조를 제공한다.In addition, it provides an input / output structure, a controller structure, a network structure, a scheduler structure, and an input / output memory structure when constructing a cryptographic processing system using multiple cryptographic processing units. to provide.

전술한 바와 같은 목적을 실현하기 위한 본 발명은, 고속 라디오 네트워크 스위치에서 기밀성 처리 및 무결성 검증 암호 알고리즘을 처리하는 고속 라디오 네트워크 스위치용 암호 처리 장치에 있어서, 입출력 프로토콜 패킷이 저장되거나 패킷으로부터 추출한 데이터와 명령어, 제어 신호들을 저장하는 메모리 기억 장치부와, 패킷과 패킷으로부터 추출한 데이터, 제어 신호와 명령을 저장하는 공유 메모리 기억 장치부와, 상기 메모리 기억 장치부와 공유 메모리 기억 장치부의 입출력 제어와 동기화를 수행하는 메모리 제어부와, 기밀성 및 무결성 검증 암호 알고리즘을 처리하는 암호 처리 장치부와, 외부 입출력을 제어하는 외부 입출력 제어부와, 외부 네트워크 연결망으로부터 수신되는 패킷에 대하여 패킷 분석 작업을 수행하며, 분석된 패킷을 상기 암호 처리 장치부나 상기 메모리 기억 장치부 혹은 공유 메모리 기억 장치부로 전송하는 외부 네트워크 인터페이스 블록과, 기본 프로토콜 해석 및 패킷 처리, 메모리 관리, 공유 메모리 관리, 암호 처리기 제어를 수행하는 중앙 처리 장치부를 포함한다.The present invention for realizing the above object is a cryptographic processing apparatus for a high speed radio network switch for processing confidentiality processing and integrity verification cryptographic algorithm in a high speed radio network switch, the data input and output protocol packet is stored or extracted from the packet A memory storage unit for storing instructions and control signals, a shared memory storage unit for storing packets and data extracted from the packets, control signals and commands, and input / output control and synchronization of the memory storage unit and the shared memory storage unit; Performs a packet analysis operation on a memory controller to perform, a cryptographic processing unit processing a confidentiality and integrity verification encryption algorithm, an external input / output control unit controlling external input / output, and a packet received from an external network connection network, Prize An external network interface block to be transmitted to the existing cryptographic processing unit, the memory storage unit or the shared memory storage unit, and a central processing unit for performing basic protocol analysis and packet processing, memory management, shared memory management, and cryptographic processor control. .

도 1은 본 발명에 따른 고속 라디오 네트워크 스위치용 암호 처리 장치의 블록 구성도,1 is a block diagram of an encryption processing apparatus for a high speed radio network switch according to the present invention;

도 2는 본 발명의 일실시예에 따른 암호 처리 장치부의 상세 구성도,2 is a detailed configuration diagram of a cryptographic processing unit according to an embodiment of the present invention;

도 3은 본 발명의 다른 실시예에 따른 암호 처리 장치부의 상세 구성도,3 is a detailed configuration diagram of a cryptographic processing unit according to another embodiment of the present invention;

도 4는 본 발명에 따른 고속 라디오 네트워크 스위치용 암호 처리 장치에 의한 암호 처리 과정을 설명하기 위한 흐름도,4 is a flowchart illustrating an encryption processing by the encryption processing apparatus for a high speed radio network switch according to the present invention;

도 5는 본 발명에 따른 고속 라디오 네트워크 스위치용 암호 처리 장치를 위한 외부 네트워크 인터페이스 블록의 상세 구성도.5 is a detailed block diagram of an external network interface block for the encryption processing apparatus for a high speed radio network switch according to the present invention.

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

100 : 중앙 처리 장치부 101 : 메모리 기억 장치부100: central processing unit 101: memory storage unit

102 : 공유 메모리 기억 장치부 103 : 시스템 버스102: shared memory storage unit 103: system bus

104 : 버스 브릿지 105 : 메모리 제어부104: bus bridge 105: memory control unit

106 : 입출력 버스 107 : 암호 처리 장치부106: input and output bus 107: encryption processing unit

108 : 외부 입출력 제어부 109 : 외부 네트워크 인터페이스 블록108: external input / output control unit 109: external network interface block

110 : 외부 네트워크 연결망 200 : DMA 제어기110: external network connection network 200: DMA controller

201 : 스위치 제어기 202 : 암호 처리 제어기201: switch controller 202: password processing controller

203 : 메모리 포인터 204 : 스케줄러203: Memory Pointer 204: Scheduler

205 : 상태 저장기 206 : 입력 선택부205: state storage unit 206: input selector

207 : 스위치 208 : 입출력 메모리207: switch 208: input / output memory

209 : 다중 암호 처리부 210 : 출력부209: multiple password processing unit 210: output unit

본 발명의 실시예로는 다수개가 존재할 수 있으며, 이하에서는 첨부한 도면을 참조하여 바람직한 실시예에 대하여 상세히 설명하기로 한다. 이 실시예를 통해 본 발명의 목적, 특징 및 이점들을 보다 잘 이해할 수 있게 된다.There may be a plurality of embodiments of the present invention. Hereinafter, preferred embodiments will be described in detail with reference to the accompanying drawings. This embodiment allows for a better understanding of the objects, features and advantages of the present invention.

본 발명에 따른 고속 라디오 네트워크 스위치용 암호 처리 장치는 도 1의 구성도에 나타낸 바와 같이, 중앙 처리 장치부(100), 메모리 기억 장치부(101), 공유 메모리 기억 장치부(102), 시스템 버스(103), 입출력 버스(106), 시스템 버스와 입출력 버스를 연결시켜주는 버스 브릿지(104), 메모리 제어부(105), 암호 처리 장치부(107), 외부 입출력 제어부(108), 외부 네트워크 인터페이스 블록(109), 외부 네트워크 연결망(110)으로 구성된다.The encryption processing apparatus for a high-speed radio network switch according to the present invention, as shown in the configuration diagram of Fig. 1, the central processing unit 100, memory storage unit 101, shared memory storage unit 102, system bus 103, the input / output bus 106, the bus bridge 104 connecting the system bus and the input / output bus, the memory control unit 105, the cryptographic processing unit 107, the external input / output control unit 108, the external network interface block 109, an external network connection network 110.

중앙 처리 장치부(100)는 RNC 시스템의 기본 프로토콜 해석 및 패킷 처리, 메모리 관리, 공유 메모리 관리, 암호 처리기 제어 등을 수행하며, 암호 처리 장치부(107)를 제어하거나 혹은 암호 처리 장치부(107)에서 필요한 데이터를 입력하는 작업, 암호 처리 장치부(107)에서 처리한 결과를 읽는 작업 등과 같이 암호 처리 제어를 위한 작업을 수행한다. 중앙 처리 장치부(100)는 많은 처리 요구로 인해서 상당한 부하가 걸리며 이로 인해 RNC 시스템 전체의 비암호 동작 처리에 장애를 유발시킬 수 있으므로 부하를 최대한 줄이는 방향으로 암호 처리 장치부(107)의 구조를 만들어야 하고, 이를 위한 버스 인터페이스 구조나 공유 메모리 구조 등을 설계해야 한다.The central processing unit 100 performs basic protocol analysis and packet processing, memory management, shared memory management, cryptographic processor control of the RNC system, and controls the cryptographic processing unit 107 or the cryptographic processing unit 107. ), A job for inputting necessary data, a job for reading a result processed by the password processing device unit 107, and the like, for controlling encryption processing. Since the central processing unit 100 takes a considerable load due to a large number of processing demands, this may cause a failure in the non-cryptographic operation processing of the entire RNC system, and thus the structure of the encryption processing unit 107 in the direction of reducing the load as much as possible. You need to design a bus interface structure or shared memory structure for this.

메모리 기억 장치부(101)는 고속 라디오 네트워크 스위치에서 입출력 프로토콜 패킷이 저장되거나 패킷으로부터 추출한 데이터와 명령어, 제어 신호들을 저장하며, 네트워크 스위치를 구성하는 블록들간의 통신 수단으로 사용된다. 메모리 기억 장치부(101)는 시스템 버스(103)에 연결되어 중앙 처리 장치부(100)와 주변 블록과 연결된다. 암호 처리 장치부(107)나 외부 입출력 제어부(108)와 같이 입출력 버스(106)에 연결된 주변 블록과 통신하기 위해서는 시스템 버스(103)를 입출력 버스(106)로 연결시켜주는 버스 브릿지(104) 회로를 통과해야 한다.The memory storage unit 101 stores an input / output protocol packet in a high speed radio network switch or stores data, commands, and control signals extracted from the packet, and is used as a communication means between blocks constituting the network switch. The memory storage unit 101 is connected to the system bus 103 and to the central processing unit 100 and the peripheral block. Bus bridge 104 circuit connecting the system bus 103 to the input / output bus 106 in order to communicate with peripheral blocks connected to the input / output bus 106 such as the encryption processing unit 107 or the external input / output control unit 108. Must pass through

공유 메모리 기억 장치부(102)는 고속 라디오 네트워크 스위치 시스템에서중앙 처리 장치부(100)와 주변 블록(107, 112)들과 데이터 및 명령에 대한 효율적인 통신을 하기 위한 저장 장치로서, 패킷과 패킷으로부터 추출한 데이터를 저장할 수 있으며, 제어 신호와 명령을 저장할 수 있다. 공유 메모리 기억 장치부(102)는 시스템을 구성하는 요소들이 서로 동일한 주소로 볼 수 있는 메모리 공간으로 이 공간에 대한 읽기는 자유롭게 할 수 있으나 쓰기를 하기 위해서는 접근 권한 설정 및 우선 순위 설정, 일관성 유지가 필요하다. 이러한 작업은 메모리 제어부(105)에서 수행한다.The shared memory storage unit 102 is a storage device for efficiently communicating data and commands with the central processing unit 100 and the peripheral blocks 107 and 112 in a high speed radio network switch system. Extracted data can be saved and control signals and commands can be saved. The shared memory storage unit 102 is a memory space in which the components of the system can be viewed at the same address. The shared memory storage unit 102 can freely read the space, but it is difficult to set access authority, set priority, and maintain consistency in order to write. need. This operation is performed by the memory controller 105.

시스템 버스(103)는 중앙 처리 장치부(100)와 메모리 기억 장치부(101), 공유 메모리 기억 장치부(102), 메모리 제어부(105), 버스 브릿지(104)를 연결시켜서 이들 간의 고속 데이터 통신을 가능하게 한다.The system bus 103 connects the central processing unit 100 with the memory storage unit 101, the shared memory storage unit 102, the memory control unit 105, and the bus bridge 104 to communicate high speed data therebetween. To make it possible.

버스 브릿지(104)는 시스템 버스(103)와 입출력 버스(106)를 연결시켜 준다. 예를 들어 입출력 버스로서 PCI 버스를 사용하는 경우를 보면 버스 브릿지(104)는 PCI 브릿지 회로가 되고 다수의 PCI 인터페이스를 가지는 블록을 연결할 수 있다.The bus bridge 104 connects the system bus 103 and the input / output bus 106. For example, in the case of using a PCI bus as an input / output bus, the bus bridge 104 may be a PCI bridge circuit and connect blocks having a plurality of PCI interfaces.

메모리 제어부(105)는 메모리 기억 장치부(101)와 공유 메모리 기억 장치부(102)의 입출력 제어와 동기화를 수행하는 부분으로서, 시스템 버스(103)에 연결된다.The memory control unit 105 is a part for performing input / output control and synchronization of the memory storage unit 101 and the shared memory storage unit 102, and is connected to the system bus 103.

입출력 버스(106)는 암호 시스템 및 외부 입출력 제어부(108)를 연결시켜주는 버스로서, 예를 들어 PCI 버스가 이에 해당한다. 입출력 버스는 확장성이 좋은 것을 사용한다.The input / output bus 106 is a bus connecting the cryptographic system and the external input / output control unit 108, for example, a PCI bus. I / O buses use highly scalable ones.

암호 처리 장치부(107)는 고속 라디오 네트워크 시스템에서 기밀성 및 무결성 검증 암호 알고리즘을 처리하는 하드웨어로서, KASUMI, f8, f9 암호 알고리즘을 고속으로 수행한다.The encryption processing unit 107 is hardware for processing confidentiality and integrity verification encryption algorithms in a high speed radio network system, and performs the KASUMI, f8, and f9 encryption algorithms at high speed.

외부 입출력 제어부(112)는 고속 라디오 네트워크 스위치용 기밀성 및 무결성 검증 암호 시스템의 외부 입출력을 제어하는 부분으로, RNC 시스템에서는 이더넷 인터페이스, 코어 네트워크 인터페이스, ATM 인터페이스를 필요로 한다.The external input / output control unit 112 controls external input / output of the confidentiality and integrity verification cryptographic system for a high-speed radio network switch. An RNC system requires an Ethernet interface, a core network interface, and an ATM interface.

외부 네트워크 인터페이스 블록(113)은 외부 네트워크 연결망(114)과 인터페이스 되는 부분으로, 외부 연결망으로부터 수신되는 패킷에 대하여 패킷 분석 작업을 하드웨어로 수행하며, 분석된 패킷은 외부 네트워크 인터페이스 블록(109) 내에 있는 입출력용 공유 메모리에 저장 된 후 바로 암호화가 필요한 경우에는 암호 처리 장치부(107)로 전송되고, 중앙 처리 장치부(100)의 추가적인 처리가 필요한 경우 시스템내의 메모리 기억 장치부(101) 혹은 공유 메모리 기억 장치부(102)로 전송된다. 또한 시스템에서 외부망으로 데이터를 전송하고자 하는 경우 입출력용 공유 메모리에 저장된 후 패킷이 전용 하드웨어에서 만들어진 후에 전송된다.The external network interface block 113 is an interface that interfaces with the external network connection network 114. The external network interface block 113 performs packet analysis in hardware on packets received from the external network, and the analyzed packets are located in the external network interface block 109. If encryption is required immediately after being stored in the shared memory for input / output, it is transmitted to the encryption processing unit 107, and when the central processing unit 100 requires further processing, the memory storage unit 101 or shared memory in the system. Is transferred to the storage unit 102. In addition, when the system wants to transmit data to the external network, it is stored in the shared memory for input / output, and then the packet is created in dedicated hardware.

외부 네트워크 연결망(114)은 고속 라디오 네트워크 스위치가 연결될 입출력 연결망으로 ATM 네트워크, 이더넷, 코어 네트워크가 될 수 있다.The external network connection network 114 is an input / output connection network to which a high speed radio network switch is connected, and may be an ATM network, an Ethernet, or a core network.

중앙 처리 장치부(100)에서는 응용 프로그램의 암호 처리 요청을 받아 해당 명령어를 주소 정보와 함께 암호 처리 장치부(107)로 전송한다. 이때 암호 처리 장치부(107)는 DMA의 사용 여부를 확인하여 사용하는 경우에는 직접 공유 메모리 기억 장치부(102)와 필요한 통신을 수행하며, 사용하지 않는 경우에는 중앙 처리 장치부(100)가 해당 데이터를 공유 메모리 기억 장치부(102)로부터 읽어서 암호 처리장치부(107)에 입력하거나 그 반대 방향의 동작을 수행한다. 공유 메모리 접근시 물리적인 타이밍 조정 등은 메모리 제어부(105)에 의해 수행되며, 시스템 버스(103)와 입출력 버스(106)간의 연결은 버스 브릿지(104)에 의해 수행된다.The central processing unit 100 receives the encryption processing request of the application program and transmits the corresponding command to the encryption processing unit 107 together with the address information. In this case, the encryption processing unit 107 directly performs the necessary communication with the shared memory storage unit 102 when checking and using the DMA, and when not using the central processing unit 100 Data is read from the shared memory storage unit 102 and inputted to the encryption processing unit 107 or vice versa. In the shared memory access, physical timing adjustment is performed by the memory controller 105, and the connection between the system bus 103 and the input / output bus 106 is performed by the bus bridge 104.

암호 처리 장치부(107)는 도 2에 나타낸 바와 같이, DMA 제어기(200), 스위치 제어기(201), 암호 처리 제어기(202), 스케줄러(204), 메모리 포인터(203), 상태 저장기(205)로 구성되며, 데이터 경로를 구성하는 요소들로는 입력 선택부(206), 스위치(207), 입출력 메모리(또는 멀티 버퍼)(208), 다중 암호 처리부(209), 출력부(210)로 구성된다.As shown in FIG. 2, the encryption processing unit 107 includes the DMA controller 200, the switch controller 201, the encryption processing controller 202, the scheduler 204, the memory pointer 203, and the state storage unit 205. The elements constituting the data path include an input selector 206, a switch 207, an input / output memory (or a multi-buffer) 208, a multiple encryption processing unit 209, and an output unit 210. .

DMA 제어기(200)는 암호 처리기가 사용된 시스템의 공유 메모리 기억 장치부(102)로부터 중앙 처리 장치부(100)의 개입 없이 데이터 통신을 가능하게 하는 부분으로서, 다량의 데이터에 대한 통신이나 중앙 처리 장치부(100)의 부하를 줄이기 위해서 사용된다.The DMA controller 200 is a part that enables data communication from the shared memory storage unit 102 of the system where the cryptographic processor is used without the intervention of the central processing unit 100, and communicates or centralizes a large amount of data. It is used to reduce the load of the device unit 100.

스위치 제어기(201)는 입출력 메모리(208)와 다중 암호 처리부(209) 사이의 데이터 경로 제어를 수행하는 부분으로서, 스케줄러(204)와 입출력 메모리(208)의 동작 상태 및 점유 상태 정보를 가지고 있는 상태 저장기(205)와 통신하여 최적인 스위치 연결 상황을 만든다.The switch controller 201 is a part for performing data path control between the input / output memory 208 and the multiple encryption processing unit 209, and has a state of operating and occupied state information of the scheduler 204 and the input / output memory 208. Communicate with the reservoir 205 to create an optimal switch connection situation.

암호 처리 제어기(202)는 다중 암호 처리부(209)의 일반적인 동작을 제어한다. 다수의 암호 처리기로 구성된 다중 암호 처리부(209)는 병렬 처리를 수행하며, 암호 처리 제어기(202)는 이를 고려하여 스케줄러(204) 및 스위치 제어기(201)와 적절한 통신을 통하여 제어를 수행한다.The cryptographic processing controller 202 controls the general operation of the multiple cryptographic processing unit 209. The multiple cryptographic processing unit 209 composed of a plurality of cryptographic processors performs parallel processing, and the cryptographic processing controller 202 performs control through appropriate communication with the scheduler 204 and the switch controller 201 in consideration of this.

스케줄러(204)는 다중 암호 처리부(209)의 입출력 메모리(208)를 제어하여 효율적인 암호 처리 분재 작업을 수행하는 부분으로서, 입력되는 명령어 및 데이터를 확인하여 적절한 입출력 메모리(208)를 선택하여 읽기 및 쓰기를 수행한다.The scheduler 204 controls the input / output memory 208 of the multiple cryptographic processing unit 209 to perform efficient cryptographic processing bonsai work. The scheduler 204 checks input commands and data, selects an appropriate input / output memory 208, and reads and Perform a write.

메모리 포인터(203)는 입출력 메모리(208)에 저장된 데이터에 대한 주소 정보와 읽기 및 쓰기 주소 값을 가지고 있어 출력부(210) 또는 다중 암호 처리부(209)에서 원하는 데이터를 저장한다.The memory pointer 203 has address information about the data stored in the input / output memory 208 and read and write address values, and stores the desired data in the output unit 210 or the multiple encryption processing unit 209.

상태 저장기(205)는 다중 암호 처리부(209)의 동작 상태 정보와 입출력 메모리(208)의 상황 정보를 가지고 있다.The state store 205 has operation state information of the multiple encryption processing unit 209 and state information of the input / output memory 208.

입력 선택부(206)는 외부로부터 입력받는 경우와 다중 암호 처리부(209)로부터 출력 받는 부분을 선택하도록 한다.The input selector 206 selects a case of receiving an input from the outside and a part of receiving the output from the multiple encryption processing unit 209.

스위치(207)는 입력과 출력 공용으로 사용되는 입출력 메모리(208)의 데이터 경로 설정 및 스케줄링 된 입력 데이터의 저장 데이터 경로 설정에 사용된다. 다대다(all-to-all) 연결이 가능한 스위치를 사용하여 다중 암호 처리부(209)의 병렬 처리 특성을 최대로 보장한다.The switch 207 is used to set the data path of the input / output memory 208 used for both input and output and to set the storage data path of the scheduled input data. An all-to-all connection is used to ensure maximum parallel processing characteristics of the multiple cryptographic processing unit 209.

입출력 메모리(208)는 다중 암호 처리부(209)를 구성하는 암호 처리기의 수만큼 필요하며, 각 암호 처리기의 입출력 공용 메모리로 사용된다. 입출력 메모리(208)를 공용으로 사용함으로서 3GPP 시스템의 기밀성 알고리즘인 f8에서 메모리 소요량을 절감시킨다.The input / output memory 208 is required as many as the number of cryptographic processors constituting the multiple cryptographic processing unit 209 and is used as the input / output common memory of each cryptographic processor. By using the input / output memory 208 in common, the memory requirement is reduced in f8, which is a confidentiality algorithm of the 3GPP system.

다중 암호 처리부(209)는 다수의 암호 처리기가 병렬로 처리할 수 있는 구조로 구성된다. 출력부(210)는 입출력 메모리(208)에 저장된 결과를 적절한 제어 신호에 의해 출력한다.The multiple cryptographic processing unit 209 is configured in a structure that can be processed in parallel by multiple cryptographic processors. The output unit 210 outputs the result stored in the input / output memory 208 by an appropriate control signal.

고성능 암호 처리기를 구현하는 방법으로는 전술한 바와 같이 다수의 암호 처리기를 사용하는 방법과 파이프라인 기법을 사용하여 구현하는 방법이 있다.As described above, a high performance cryptographic processor may be implemented using a plurality of cryptographic processors and a pipelined technique.

도 3은 본 발명의 다른 실시예에 따라 파이프라인 기법이 적용된 암호 처리부(309)를 사용하는 암호 처리 장치부의 입출력 구조 및 제어기 구조를 나타내었다. 도 3에서 도 2와 동일한 구성 요소에 대해서는 동일한 참조부호를 명기하였다.3 illustrates an input / output structure and a controller structure of a cryptographic processing unit using a cryptographic processing unit 309 to which a pipeline technique is applied according to another embodiment of the present invention. In FIG. 3, the same reference numerals are used for the same components as in FIG. 2.

파이프라인을 적용하여 암호 처리부(309)를 구성했기 때문에 입력 스케줄러(311)는 스케줄러(204)에 의해 제어되며, 이는 제어 신호를 갖춘 MUX 회로로 볼 수 있다.Since the cryptographic processing unit 309 is configured by applying a pipeline, the input scheduler 311 is controlled by the scheduler 204, which can be viewed as a MUX circuit having a control signal.

새로운 데이터가 파이프라인으로 구현된 암호 처리부(309)에 사용되기 위해선 입력 버퍼에 저장되어 모든 파이프라인으로 계산되고 있는 연산이 종료될 때까지 기다린 후에 입력되는 방법과 파이프라인 단계 중에서 빈 슬롯에 해당하는 타이밍에 새로운 데이터 및 키 값이 입력되어 실행되는 방법이 있다. 본 발명에서는 후자의 방법을 적용할 수 있도록 다수의 연산된 결과값을 인터럽트로 알려주며, 각 파이프라인의 동작 상황을 저장하는 상태 저장기(205)를 가진다. 또한, 스케줄러(204)는 새로운 입력 데이터에 대하여 비워있는 입출력 메모리(208)를 할당하여 원하는 파이프라인 슬롯에 입력 될 수 있도록 제어하여 준다.In order for the new data to be used in the cryptographic processing unit 309 implemented as a pipeline, the data is stored in the input buffer and waits until the operation calculated in all pipelines is completed. There is a method in which new data and key values are input and executed at the timing. The present invention has a state store 205 for notifying a plurality of calculated result values as an interrupt so that the latter method can be applied, and for storing the operation status of each pipeline. In addition, the scheduler 204 allocates an empty input / output memory 208 for new input data and controls the input to the desired pipeline slot.

도 4는 도 2와 같이 다중 암호 처리부를 사용하는 암호 처리 장치의 동작 흐름도이다.4 is an operation flowchart of an encryption processing apparatus using a multiple encryption processing unit as shown in FIG. 2.

먼저, 중앙 처리 장치부(100)에서 발생한 암호 처리 명령은 다중 암호 처리부(211)를 초기 상태에서 시작 상태로 만들며, 다중 암호 처리부(209)는 현재 동작하고 있지 않는 암호 처리기 중에서 사용 가능한 것을 확인하는 단계를 거친다(S400∼S404).First, the cipher processing command generated by the central processing unit 100 makes the multiple cipher processing unit 211 start from the initial state, and the multiple cipher processing unit 209 checks whether it is available among the cipher processors that are not currently operating. Go through the steps (S400 ~ S404).

다중 암호 처리부(209)는 현재 사용 가능한 암호 처리기가 없는 경우에 대기 상태로 머물러 있으면서 적당한 시점에 다시 사용 가능한 암호 처리기가 있는지를 확인하는 단계를 수행한다. 여기서 사용 가능한 채널을 다시 확인하기까지의 대기 시간 간격은 다시 정의 할 수 있다(S405).The multi-cipher processing unit 209 performs a step of checking whether there is a password processor that can be used again at an appropriate time while remaining in a standby state when no password processor is currently available. Here, the waiting time interval until checking the available channel again may be defined (S405).

사용 가능한 채널을 확인 한 경우, 즉 사용할 수 있는 암호 처리기가 있는 경우에 다중 암호 처리부(209)는 해당 암호 처리기를 예약하고, 중앙 처리 장치부(100)는 DMA 제어기(200)의 사용 여부를 확인한다(S406∼S407).When the available channel is checked, that is, when there is a cryptographic processor available, the multiple cryptographic processing unit 209 reserves the corresponding cryptographic processor, and the central processing unit 100 checks whether the DMA controller 200 is used. (S406 to S407).

DMA 제어기(200)를 사용하는 경우에는 중앙 처리 장치부(100)의 부하가 적게 걸리고, DMA 제어기(200)를 사용하지 않는 경우에는 중앙 처리 장치부(100)가 데이터 입출력 등의 작업과 연산 결과 종료 시점 등을 지속적으로 확인해야 한다.When the DMA controller 200 is used, the load of the central processing unit 100 is less. When the DMA controller 200 is not used, the central processing unit 100 performs operations such as data input / output and calculation results. It is important to keep track of the end time.

DMA 제어기(200)를 사용하지 않는 경우의 동작 흐름을 살펴보면, 중앙 처리 장치부(100)는 공유 메모리 기억 장치부(102)로부터 해당하는 주소의 데이터를 입출력 메모리(208)에 저장하고 해당 키 값도 저장한다(S408∼S409).Referring to the operation flow when the DMA controller 200 is not used, the CPU 100 stores data of the corresponding address from the shared memory storage 102 in the input / output memory 208 and the corresponding key value. It also stores (S408 to S409).

해당 데이터 및 키 값 저장이 완료 된 시점에서 다중 암호 처리부(209)의 해당 암호 처리기가 동작을 수행하며, 중앙 처리 장치부(100)는 암호 처리기의 동작이 종료될 때까지 기다린다. 이 동작은 암호 처리 제어기(202)에 의해 제어된다(S410∼S412).When the storage of the data and the key value is completed, the corresponding encryption processor of the multiple encryption processing unit 209 performs an operation, and the central processing unit 100 waits until the operation of the encryption processing unit is finished. This operation is controlled by the cryptographic processing controller 202 (S410 to S412).

암호 처리기의 동작이 종료되면 암호 처리 제어기(202)는 중앙 처리 장치부(100)에 인터럽트 신호를 발생하여 동작이 종료되었음을 알린다. 한편, 연산 결과는 입력 데이터가 저장되어있던 동일한 입출력 메모리(208)에 스위치(207) 및 스위치 제어기(201)를 통해서 저장된다.When the operation of the encryption processor is terminated, the encryption processing controller 202 generates an interrupt signal to the central processing unit 100 to notify that the operation is finished. On the other hand, the operation result is stored in the same input and output memory 208 through the switch 207 and the switch controller 201 where the input data is stored.

연산 종료 후 중앙 처리 장치부(100)에서는 결과 값을 읽기 위해 암호 처리 장치부(107)의 메모리 포인터(203) 값을 읽어서 결과가 저장된 입출력 메모리(208)의 주소값을 확인하고, 상태 저장기(205) 값을 읽어 정상 동작을 확인한다(S413).After the operation is finished, the central processing unit 100 reads the value of the memory pointer 203 of the cryptographic processing unit 107 to read the result value, checks the address value of the input / output memory 208 where the result is stored, and stores the state storage. (205) The normal operation is read by reading the value (S413).

중앙 처리 장치부(100)는 결과값을 성공적으로 읽은 경우에 상태 저장기(205)의 값을 갱신하여 정상적으로 결과값을 읽었다고 확인한다. 이때, 읽은 결과값은 공유 메모리 기억 장치부(102)에 저장하여 후속 작업을 계속 수행한다(S414∼S415).In the case where the result value is successfully read, the central processing unit 100 updates the value of the state store 205 and confirms that the result value is normally read. At this time, the read result value is stored in the shared memory storage unit 102 to continue the subsequent work (S414 to S415).

DMA 제어기(200)를 사용하는 경우의 동작 흐름을 살펴보면, 다중 암호 처리부(209)는 사용할 수 있는 암호 처리기를 확인하여 채널을 예약하며, DMA 제어기(200)는 DMA 경로를 설정한다(S416).Referring to the operation flow in the case of using the DMA controller 200, the multi-cipher processing unit 209 checks the available encryption processor to reserve a channel, the DMA controller 200 establishes a DMA path (S416).

DMA 경로가 설정 된 후 DMA 제어기(200)는 공유 메모리 기억 장치부(102)의 해당 주소값으로부터 데이터 혹은 명령 정보를 읽어 온다. 이때, 중앙 처리 장치부(100)의 개입 없이 데이터 전송이 수행된다. 해당 데이터 혹은 명령 정보는 입출력 메모리(208)에 저장되어 데이터 혹은 키 값으로 사용된다(S417∼S418).After the DMA path is established, the DMA controller 200 reads data or command information from the corresponding address value of the shared memory storage unit 102. At this time, the data transmission is performed without the intervention of the central processing unit 100. The data or command information is stored in the input / output memory 208 and used as data or key values (S417 to S418).

암호 처리 동작에 필요한 데이터를 입력받은 후 암호 처리 장치부(107)의 동작이 시작되고, DMA 제어기(200)는 암호 처리 동작이 끝날 때까지 기다린 후에 동작이 끝나면 결과를 공유 메모리 기억 장치부(102)로 전송한다(S419∼S421).After the data necessary for the encryption processing operation is input, the operation of the encryption processing unit 107 starts, and the DMA controller 200 waits for the completion of the encryption processing operation, and when the operation is completed, the result is shared memory storage unit 102 (S419 to S421).

이때, 결과값을 공유 메모리 기억 장치부(102)로 전송하는 주체는 중앙 처리 장치부(100)가 아니라 DMA 제어기(200)이다. 결과값에 대한 연산이 끝난 후 이 상태는 상태 저장기(205)에 저장되어 후속 동작을 계속 수행한다(S422∼S423).At this time, the subject that transmits the result value to the shared memory storage unit 102 is not the central processing unit 100 but the DMA controller 200. After the operation on the result value is completed, this state is stored in the state store 205 to continue the subsequent operation (S422 to S423).

DMA 제어기(200)를 사용하여 암호 처리를 수행하는 경우에 암호 처리 장치부(107)와 공유 메모리 기억 장치부(102)의 데이터 통신은 패킷 단위로 전송되며, 한번에 처리되는 패킷을 세션으로 정의하였다. 그러므로, 한 세션에 대한 처리가 종료된 경우 이 값은 입출력 메모리(208)에 저장되고, 어떤 작업의 모든 세션 처리가 끝나지 않은 경우 DMA 제어기(200)는 DMA 주소를 재설정한 후 DMA 데이터 읽기 동작부터 다시 시작한다(S424∼S425).In the case of performing encryption processing using the DMA controller 200, data communication between the encryption processing unit 107 and the shared memory storage unit 102 is transmitted in packet units, and packets that are processed at one time are defined as sessions. . Therefore, when the processing for one session is finished, this value is stored in the input / output memory 208, and when all session processing of a job is not finished, the DMA controller 200 resets the DMA address and then starts reading the DMA data. Start again (S424-S425).

모든 세션에 대한 동작이 완료된 경우에는 초기 상태로 간다(S426).If the operation for all sessions is completed, go to the initial state (S426).

도 5는 본 발명에 따른 고속 라디오 네트워크 스위치용 암호 처리 장치를 위한 외부 네트워크 인터페이스 블록의 상세 구성도이다.5 is a detailed block diagram of an external network interface block for the encryption processing apparatus for a high speed radio network switch according to the present invention.

외부 네트워크 인터페이스 블록(109)은 외부 네트워크 연결망(110)과 연결되는 입력 단자(501) 및 출력 단자(508), 시스템의 입출력 버스 연결 포트(505), 수신용 버퍼(502) 및 송신용 버퍼(507), 패킷 분석기(503) 및 패킷 작성기(506), 입출력용 공유 메모리(504), DMA 제어부(509), 공유 메모리 제어부(510)로 구성된다.The external network interface block 109 includes an input terminal 501 and an output terminal 508 connected to the external network connection network 110, an input / output bus connection port 505 of the system, a receiving buffer 502 and a transmitting buffer ( 507, a packet analyzer 503 and a packet writer 506, an input / output shared memory 504, a DMA control unit 509, and a shared memory control unit 510.

이와 같은 외부 네트워크 인터페이스 블록(109)의 동작을 살펴보면, 외부 네트워크 연결망(110)으로부터 수신되는 패킷은 수신용 버퍼(502)에 저장된 후 패킷 분석기(503)를 통하여 패킷 분석 작업을 하드웨어로 수행하며, 분석된 패킷은 입출력용 공유 메모리(504)에 저장 된 후 바로 암호화가 필요한 경우에는 시스템의 입출력 버스 연결 포트(505)를 통하여 암호 처리 장치부(107)로 전송되고, 중앙 처리 장치부(100)의 추가적인 처리가 필요한 경우에는 시스템내의 메모리 기억 장치부(101) 혹은 공유 메모리 기억 장치부(102)로 데이터를 전송한다.Looking at the operation of the external network interface block 109 as described above, the packet received from the external network connection network 110 is stored in the receiving buffer 502 and performs packet analysis through the packet analyzer 503 in hardware, When the analyzed packet is stored in the input / output shared memory 504 and immediately encrypted, it is transmitted to the encryption processing unit 107 through the input / output bus connection port 505 of the system, and the central processing unit 100 When further processing is required, data is transferred to the memory storage unit 101 or the shared memory storage unit 102 in the system.

이와 같이, 외부 네트워크 인터페이스 블록(109)이 암호화 처리가 필요한 패킷에 대하여 중앙 처리 장치부(100)의 개입 없이 암호 처리 장치부(107)와 직접 통신할 수 있기 때문에 고속 처리가 가능하다.In this way, since the external network interface block 109 can directly communicate with the encryption processing unit 107 with respect to the packet requiring encryption processing without the intervention of the central processing unit 100, high-speed processing is possible.

외부 네트워크 인터페이스 블록(109)은 DMA 전송이 필요한 경우는 DMA 제어부(509)에 의해 암호 처리 장치부(107)의 DMA 처리기(200)와 통신하여 DMA 전송을 수행하며, 시스템의 메모리 기억 장치부(101, 102)에 DMA 전송이 필요한 경우에는 시스템의 메모리 제어부(105)와 통신하여 데이터를 전송한다.The external network interface block 109 communicates with the DMA processor 200 of the encryption processing unit 107 by the DMA control unit 509 to perform DMA transfer when the DMA transfer is required, and the memory storage unit of the system ( When the DMA transfer is required for the 101 and 102, it communicates with the memory control section 105 of the system to transfer the data.

외부 네트워크 인터페이스 블록(109)의 입출력용 공유 메모리(504)에 대한 일관성 유지 및 데이터 관리는 공유 메모리 제어부(510)에서 수행하며, 이 공유 메모리 제어부(510)는 시스템의 공유 메모리 기억 장치부(102)와 암호 처리 장치부(107)의 입출력 메모리(208)와 동일한 주소 공간으로 메모리를 인식하기 때문에 시스템에서의 프로그래밍이 쉽다.Consistency and data management of the shared memory 504 for input / output of the external network interface block 109 is performed by the shared memory controller 510, which is the shared memory storage unit 102 of the system. And the memory are recognized in the same address space as that of the input / output memory 208 of the encryption processing unit 107.

상기에서는 본 발명의 일 실시예에 국한하여 설명하였으나 본 발명의 기술이 당업자에 의하여 용이하게 변형 실시될 가능성이 자명하다. 이러한 변형된 실시예들은 본 발명의 특허청구범위에 기재된 기술사상에 포함된다고 하여야 할 것이다.In the above description, but limited to one embodiment of the present invention, it is obvious that the technology of the present invention can be easily modified by those skilled in the art. Such modified embodiments should be included in the technical spirit described in the claims of the present invention.

전술한 바와 같은 구조로 이루어진 본 발명의 고속 라디오 네트워크 스위치용 암호 처리 장치는 다음과 같은 효과를 갖는다.The encryption processing apparatus for a high speed radio network switch of the present invention having the structure as described above has the following effects.

첫째, 다중 암호 처리부와 DMA 제어기, 공유 메모리 기억 장치를 가지므로 높은 처리율(throughput)이 제공된다. 또한 멀티 버퍼 구조와 해당 스케줄러, 다중 인터럽트 처리 능력에 의하여 특정 입력 데이터에 대하여 빠른 응답 시간(response time)을 갖는다. 따라서 다량의 데이터 처리가 필요한 3GPP 시스템의 RNC 장비에서 효율적으로 사용할 수 있다.First, it has a multiple encryption processing unit, a DMA controller, and a shared memory storage device, thereby providing a high throughput. In addition, due to the multi-buffer structure, the corresponding scheduler, and the multi-interrupt processing capability, the response time is fast for specific input data. Therefore, it can be efficiently used in the RNC equipment of the 3GPP system that requires a large amount of data processing.

둘째, 다수의 병렬화 된 암호 처리기를 가지는 다중 암호 처리부 및 파이프라인 기법으로 구현된 병렬 암호 처리기를 효율적으로 수용할 수 있는 구조를 가지기 때문에 높은 성능의 3GPP 기밀성 및 무결성 암호 시스템을 구현할 수 있다.Second, since it has a structure that can efficiently accommodate parallel cryptographic processors implemented by multiple cryptographic processing units and pipelined techniques with multiple parallelized cryptographic processors, high-performance 3GPP confidentiality and integrity cryptographic systems can be implemented.

셋째, DMA 기능을 갖추고, 기존의 상용 입출력 버스와의 인터페이스가 용이하며, 공유 메모리 방식으로 장착 대상이 되는 시스템의 중앙 처리 장치와 통신하기 때문에 확장성과 이식성이 높다. 다시 말해서 기존의 RNC 시스템에 적용하기가 용이하다.Third, it is highly scalable and portable because it has a DMA function, easily interfaces with existing commercial I / O buses, and communicates with a central processing unit of a system to be mounted in a shared memory system. In other words, it is easy to apply to existing RNC system.

Claims (10)

고속 라디오 네트워크 스위치에서 기밀성 처리 및 무결성 검증 암호 알고리즘을 처리하는 고속 라디오 네트워크 스위치용 암호 처리 장치에 있어서,A cryptographic processing apparatus for a high speed radio network switch for processing confidentiality processing and integrity verification cryptographic algorithm in a high speed radio network switch, 입출력 프로토콜 패킷이 저장되거나 패킷으로부터 추출한 데이터와 명령어, 제어 신호들을 저장하는 메모리 기억 장치부와,A memory storage unit for storing input / output protocol packets or data, instructions, and control signals extracted from the packets; 패킷과 패킷으로부터 추출한 데이터, 제어 신호와 명령을 저장하는 공유 메모리 기억 장치부와,A shared memory storage unit for storing packets, data extracted from the packets, control signals, and instructions; 상기 메모리 기억 장치부와 공유 메모리 기억 장치부의 입출력 제어와 동기화를 수행하는 메모리 제어부와,A memory controller for performing synchronization with the input / output control of the memory storage unit and the shared memory storage unit; 기밀성 및 무결성 검증 암호 알고리즘을 처리하는 암호 처리 장치부와,A cryptographic processing unit for processing confidentiality and integrity verification cryptographic algorithms, 외부 입출력을 제어하는 외부 입출력 제어부와,An external I / O control unit for controlling external I / O, 외부 네트워크 연결망으로부터 수신되는 패킷에 대하여 패킷 분석 작업을 수행하며, 분석된 패킷을 상기 암호 처리 장치부나 상기 메모리 기억 장치부 혹은 공유 메모리 기억 장치부로 전송하는 외부 네트워크 인터페이스 블록과,An external network interface block configured to perform packet analysis on packets received from an external network connection network, and to transmit the analyzed packets to the encryption processing unit, the memory storage unit or the shared memory storage unit; 기본 프로토콜 해석 및 패킷 처리, 메모리 관리, 공유 메모리 관리, 암호 처리기 제어를 수행하는 중앙 처리 장치부를 포함하는 고속 라디오 네트워크 스위치용 암호 처리 장치.A cryptographic processing device for a high speed radio network switch comprising a central processing unit that performs basic protocol interpretation and packet processing, memory management, shared memory management, and cryptographic processor control. 제 1 항에 있어서, 상기 암호 처리 장치부는The apparatus of claim 1, wherein the encryption processing unit 상기 공유 메모리 기억 장치부로부터 상기 중앙 처리 장치부의 개입 없이 데이터 통신을 가능하게 하는 DMA 제어기와,A DMA controller for enabling data communication from the shared memory storage unit without intervention of the central processing unit; 다수의 암호 처리기가 병렬로 처리할 수 있는 구조로 된 다중 암호 처리부와,A multiple cryptographic processing unit structured to be processed by multiple cryptographic processors in parallel, 상기 각 암호 처리기의 입출력 공용 메모리로 사용되는 다수의 입출력 메모리와,A plurality of input / output memories used as input / output common memory of each cryptographic processor, 상기 입출력 메모리를 제어하여 효율적인 암호 처리 분재 작업을 수행하는 스케줄러와,A scheduler for controlling the input / output memory to perform an efficient encryption processing bonsai operation; 상기 스케줄러 및 상기 다중 암호 처리부의 일반적인 동작을 제어하는 암호 처리 제어기를 포함하는 고속 라디오 네트워크 스위치용 암호 처리 장치.And a cryptographic processing controller for controlling the general operation of the scheduler and the multiple cryptographic processing unit. 제 2 항에 있어서, 상기 DMA 제어기는The method of claim 2, wherein the DMA controller is 상기 메모리 기억 장치부 혹은 공유 메모리 기억 장치부에 있는 데이터 혹은 명령을 상기 중앙 처리 장치의 개입 없이 입출력하며, 상기 다중 암호 처리기가 필요한 대량의 데이터를 고속으로 입출력 처리하는 것을 특징으로 한 고속 라디오 네트워크 스위치용 암호 처리 장치.A high speed radio network switch, characterized in that the data storage device or the shared memory storage unit inputs and outputs data or commands without the intervention of the central processing unit, and processes a large amount of data required by the multiple cryptographic processor at high speed. Password processing unit for. 제 2 항에 있어서, 상기 스케줄러는3. The scheduler of claim 2, wherein the scheduler is 상기 다중 암호 처리부 혹은 파이프라인으로 설계된 병렬 암호 처리기에 입출력 데이터에 대한 스케줄링이 가능한 것을 특징으로 한 고속 라디오 네트워크 스위치용 암호 처리 장치.A cryptographic processing device for a high speed radio network switch, characterized in that the scheduling of the input and output data to the parallel cryptographic processor designed as the multiple cryptographic processing unit or pipeline. 제 2 항에 있어서, 상기 다중 암호 처리부는The method of claim 2, wherein the multiple encryption processing unit 파이프라인화 된 암호 처리기를 수용할 수 있는 것을 특징으로 한 고속 라디오 네트워크 스위치용 암호 처리 장치.A cryptographic processing device for a high speed radio network switch, characterized in that it can accommodate a pipelined cryptographic processor. 제 1 항에 있어서, 상기 중앙 처리 장치는The system of claim 1, wherein the central processing unit 상기 공유 메모리 기억 장치부를 통하여 암호 처리 장치부 혹은 주변 블록과 통신을 행하며, 상기 중앙 처리 장치와 상기 암호 처리 장치부는 동일한 주소 공간을 사용하게 되어 고속 통신이 가능한 것을 특징으로 한 고속 라디오 네트워크 스위치용 암호 처리 장치.The shared memory storage unit communicates with a cipher processing unit or a peripheral block, and the central processing unit and the cipher processing unit use the same address space so that high-speed communication is possible. Processing unit. 제 1 항에 있어서, 상기 메모리 제어부는The method of claim 1, wherein the memory control unit 상기 메모리 기억 장치부 및 공유 메모리 장치부에 대한 접근 권한 확인 및 입출력 제어를 수행하며, 상기 공유 메모리 장치부의 일관성 유지기능도 수행하는 것을 특징으로 한 고속 라디오 네트워크 스위치용 암호 처리 장치.And performing access control and input / output control of the memory storage unit and the shared memory device unit, and maintaining a consistency function of the shared memory device unit. 제 5 항에 있어서, 상기 파이프라인화된 암호 처리부는The cryptographic processing unit of claim 5, wherein the pipelined cryptographic processing unit 파이프라인 기법으로 고속 수행할 수 있는 암호 처리기를 사용하는 것을 특징으로 한 고속 라디오 네트워크 스위치용 암호 처리 장치.Cryptographic processing apparatus for a high-speed radio network switch, characterized by using a cryptographic processor that can perform high speed with a pipeline technique. 제 1 항에 있어서, 상기 외부 네트워크 인터페이스 블록은The method of claim 1, wherein the external network interface block 외부망에서 송수신되는 데이터에 대하여 하드웨어를 사용하여 패킷 분석 작업 및 패킷 작성 작업을 수행하는 것을 특징으로 한 고속 라디오 네트워크 스위치용 암호 처리 장치.Cryptographic processing apparatus for a high-speed radio network switch, characterized in that for performing the packet analysis operation and the packet creation operation using hardware for data transmitted and received from the external network. 제 1 항에 있어서, 상기 외부 네트워크 인터페이스 블록은The method of claim 1, wherein the external network interface block 입출력용 공유 메모리와 공유 메모리 제어기를 포함하여 시스템의 공유 메모리와 상기 암호 처리 장치부의 입출력 메모리와 동일한 주소 공간을 가지는 것을 특징으로 한 고속 라디오 네트워크 스위치용 암호 처리 장치.And a shared memory for the input / output memory and a shared memory controller, the apparatus having the same address space as the shared memory of the system and the input / output memory of the encryption processing unit.
KR10-2001-0085801A 2001-12-27 2001-12-27 Cryptography processing apparatus for a high speed radio network switch KR100416235B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0085801A KR100416235B1 (en) 2001-12-27 2001-12-27 Cryptography processing apparatus for a high speed radio network switch

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0085801A KR100416235B1 (en) 2001-12-27 2001-12-27 Cryptography processing apparatus for a high speed radio network switch

Publications (2)

Publication Number Publication Date
KR20030055732A KR20030055732A (en) 2003-07-04
KR100416235B1 true KR100416235B1 (en) 2004-01-24

Family

ID=32213990

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0085801A KR100416235B1 (en) 2001-12-27 2001-12-27 Cryptography processing apparatus for a high speed radio network switch

Country Status (1)

Country Link
KR (1) KR100416235B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1158819A2 (en) * 2000-05-26 2001-11-28 Motorola, Inc. Mobile radio communications system and method of operating a mobile radio communication system
JP2001345795A (en) * 2000-05-31 2001-12-14 Sony Corp Apparatus and method for radio communication
KR20030035587A (en) * 2001-10-31 2003-05-09 주식회사 케이티 The processing apparatus and method for providing internet protocol virtual private network service on mobile communication
KR20030050579A (en) * 2001-12-19 2003-06-25 트라이콤텍 주식회사 High Performance Road Side Equipment System Based on Dedicated Short Range Communication

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1158819A2 (en) * 2000-05-26 2001-11-28 Motorola, Inc. Mobile radio communications system and method of operating a mobile radio communication system
JP2001345795A (en) * 2000-05-31 2001-12-14 Sony Corp Apparatus and method for radio communication
KR20030035587A (en) * 2001-10-31 2003-05-09 주식회사 케이티 The processing apparatus and method for providing internet protocol virtual private network service on mobile communication
KR20030050579A (en) * 2001-12-19 2003-06-25 트라이콤텍 주식회사 High Performance Road Side Equipment System Based on Dedicated Short Range Communication

Also Published As

Publication number Publication date
KR20030055732A (en) 2003-07-04

Similar Documents

Publication Publication Date Title
US5961626A (en) Method and processing interface for transferring data between host systems and a packetized processing system
US6101255A (en) Programmable cryptographic processing system and method
US7266703B2 (en) Single-pass cryptographic processor and method
US7360076B2 (en) Security association data cache and structure
US7320071B1 (en) Secure universal serial bus
AU2005332284B8 (en) Data-mover controller with plural registers for supporting ciphering operations
US7386705B2 (en) Method for allocating processor resources and system for encrypting data
JP2004226966A (en) Cryptographic apparatus for supporting multiple modes
US7532727B2 (en) Hardware-based encryption/decryption employing dual ported key storage
JPH08510889A (en) Data packet processing device
US7437569B2 (en) Module for secure management of digital date by encryption/decryption and/or signature/verification of signature which can be used for dedicated servers
CN112052483B (en) Data communication system and method of password card
CN112035899B (en) Data communication system and method based on password card
CN109104275A (en) A kind of HSM equipment
KR20070061329A (en) High-performance cryptographic device using multiple ciphercores and its operation method
KR100416235B1 (en) Cryptography processing apparatus for a high speed radio network switch
US20060013397A1 (en) Channel adapter managed trusted queue pairs
JP2004328359A (en) Packet processor
KR100420555B1 (en) Block encrypting device for fast session switching and method of operating the same
CN112257092A (en) Data transmission control method, key management method, configuration method and related device
CN110929297A (en) FPGA asynchronous encryption and decryption system and method
CN111064740B (en) System and method for encryption and decryption processing of network data packet
KR102220774B1 (en) System and method for encryption processing in terminal
CN114329543A (en) Data isolation encryption system based on FSMC and AXI bus
CN117290897A (en) Encryption and decryption circuit, processing system and electronic equipment

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

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee