KR20030054821A - Apparatus and method for high speed encryption/decryption using TCP/IP base network having selective encryption function - Google Patents
Apparatus and method for high speed encryption/decryption using TCP/IP base network having selective encryption function Download PDFInfo
- Publication number
- KR20030054821A KR20030054821A KR1020010085234A KR20010085234A KR20030054821A KR 20030054821 A KR20030054821 A KR 20030054821A KR 1020010085234 A KR1020010085234 A KR 1020010085234A KR 20010085234 A KR20010085234 A KR 20010085234A KR 20030054821 A KR20030054821 A KR 20030054821A
- Authority
- KR
- South Korea
- Prior art keywords
- encryption
- packet
- decryption
- tcp
- decoding
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
본 발명은 TCP/IP를 사용하는 네트워크 환경에서 사용되는 통신 데이터를 전용 하드웨어 암/복호화 처리장치에 있어서, 특히 다수의 터미널로 구성된 네트워크 환경에서 전송되는 다양한 패킷들 중에서 암/복호화 정책에 해당하는 특정 패킷들만을 선택적으로 암/복호화하는 기능을 가진 TCP/IP 기반 네트워크용 고속 암/복호화 장치 및 방법에 관한 것이다.The present invention is a specific hardware encryption / decryption processing apparatus for the communication data used in the network environment using TCP / IP, in particular among the various packets transmitted in a network environment consisting of a plurality of terminals specific to the encryption / decryption policy A fast encryption / decryption apparatus and method for a TCP / IP-based network having a function of selectively encrypting / decoding only packets.
도 1은 종래 기술에 따른 도 1은 종래 암호화기능을 갖는 TCP/IP 기반 네트워크용 고속 암/복호화 장치를 나타낸 블록 구성도이다.1 is a block diagram illustrating a fast encryption / decryption apparatus for a TCP / IP-based network having a conventional encryption function according to the prior art.
도 1을 참조하면, 네트워크 암호화 장치는 데이터 프레임 또는 패킷을 암호화하는 암호부(100)와 암호화된 데이터 프레임 또는 패킷을 복호화하는 복호부(200)로 구성된다.Referring to FIG. 1, the network encryption apparatus includes an encryption unit 100 for encrypting a data frame or packet and a decryption unit 200 for decrypting the encrypted data frame or packet.
상기 암호화부(100)는 단말에서 전송되는 데이터 프레임 또는 패킷을 수신하는 DTE 수신단(101)과, 상기 DTE 수신단(101)으로부터 데이터 프레임 또는 패킷을 입력받아 저장하는 DTE 수신 버퍼부(102)와, 상기 데이터 프레임 또는 패킷의 사용자 데이터 부분의 우선 입력된 N개의 바이트에 의해 초기화되어 바이트 단위로 난수를 출력하는 제 1난수 발생부(103)와, N개의 바이트의 암호 키가 미리 저장되어 있는 제 1 N바이트 암호키부(104)와, 상기 N개의 바이트의 암호 키와 사용자 데이터 부분의 우선 입력된 N개의 바이트를 배타적 논리합 연산을 하여 암호화하는 제 1배타적 논리합 연산을 하여 암호화하는 제 2배타적 논리합 연산 소자부(105)와, 상기 DTE 수신 버퍼부(102)의 출력인 프로토콜 헤더와 상기 제 1 및 제 2배타적 논리합 연산 소자부(105,106)의 출력인 암호화된 사용자 데이터를 입력받아 저장하는 DCE 송신 버퍼부(107)와, 상기 DCE 송신 버퍼부(107)에 저장된 데이터를 입력받아 연결된 망으로 송신하는 DCE 송신단(108)을 포함하여 구성된다.The encryption unit 100 includes a DTE receiving end 101 for receiving a data frame or packet transmitted from a terminal, a DTE receiving buffer unit 102 for receiving and storing a data frame or packet from the DTE receiving end 101; A first random number generator 103 which is initialized by the first input N bytes of the user data portion of the data frame or packet and outputs a random number in units of bytes, and a first prestored encryption key of N bytes A second exclusive OR operation element for encrypting an N byte encryption key unit 104 and a first exclusive OR operation that encrypts the first N bytes of the N byte encryption key and the user data portion by performing an exclusive OR operation. Section 105, an encryption header that is an output of the DTE receiving buffer section 102, and an encryption that is an output of the first and second exclusive-OR elements 105, 106; And DCE transmission buffer part 107 for receiving and storing the user data input, is configured to include a DCE transmitting terminal 108 for receiving the transmission data stored in the DCE transmit buffer unit 107 to the connected networks.
상기 복호화부(200)는 망에서 전송되는 데이터 프레임 또는 패킷을 수신하는 DCE 수신단(201)과, 상기 DCE 수신단(201)으로부터 데이터 프레임 또는 패킷을 입력받아 저장하는 DCE 수신 버퍼부(202)와, 상기 데이터 프레임 또는 패킷의 사용자 데이터 부분의 우선 입력된 N개의 바이트에 의해 초기화되어 바이트 단위로 난수를 출력하는 제 2난수 발생부(203)와, N개의 바이트의 암호 키가 미리 저장되어 있는 제 2 N바이트 암호키부(204)와, 상기 N개의 바이트의 암호 키와 사용자 데이터 부분의 우선 입력된 N개의 바이트를 배타적 논리합 연산을 하여 복호화하는 제 3배타적 논리합 연산 소자부(205)와, 상기 사용자 데이터 부분의 N번째 이후의 바이트와상기 제 2난수 발생부(203)에서 출력되는 난수를 배타적 논리합 연산을 하여 복호화하는 제 4배타적 논리합 연산 소자부(206)와, 상기 DTE 수신 버퍼부(2)의 출력인 프로토콜 헤더와 상기 제 3 및 제 4 배타적 논리합 연산 소자부(205,206)의 출력인 복호화된 사용자 데이터를 입력받아 저장하는 DTE 송신 버퍼부(207)와, 상기 DTE 송신 버퍼부(207)에 저장된 데이터를 입력받아 연결된 망으로 송신하는 DTE 송신단(208)을 포함하여 구성된다.The decoder 200 may include a DCE receiver 201 for receiving a data frame or packet transmitted from a network, a DCE reception buffer unit 202 for receiving and storing a data frame or packet from the DCE receiver 201; A second random number generator 203 which is initialized by the first input N bytes of the user data portion of the data frame or packet and outputs a random number in units of bytes, and a second stored in advance with N bytes of encryption keys An N-byte encryption key unit 204, a third exclusive-OR operation element unit 205 for decrypting by performing an exclusive OR operation on the N-byte encryption key and the first input N bytes of the user data portion, and the user data A fourth exclusive-OR operation element for performing an exclusive-OR operation on the Nth or later byte of the portion and the random number output from the second random number generator 203 by performing an exclusive OR operation. A DTE transmission buffer unit for receiving and storing the protocol header which is the output of the DTE reception buffer unit 2 and the decoded user data that is the output of the third and fourth exclusive OR operation units 205 and 206. 207 and a DTE transmitter 208 for receiving data stored in the DTE transmission buffer unit 207 and transmitting the data to the connected network.
상기와 같은 종래 암호화기능을 갖는 TCP/IP 기반 네트워크용 고속 암/복호화 장치에 대하여 첨부된 도 1을 참조하여 설명하면 다음과 같다.A fast encryption / decryption apparatus for a TCP / IP-based network having a conventional encryption function as described above will be described with reference to FIG. 1.
먼저, 암호부(100)의 동작에 대해 설명하면, DTE 수신단(101)이 수신한 데이터 프레임 또는 패킷을 DTE 수신 버퍼부(102)에 저장한다. 이때 저장하면서 데이터 프레임 또는 패킷의 프로토콜 헤더와 사용자 데이터 부분을 구분하는 태그(TAG) 필드(FIELD)를 생성시켜 함께 저장한다.First, the operation of the encryption unit 100 will be described. The DTE receiving unit 101 stores the data frame or packet received in the DTE receiving buffer unit 102. In this case, a TAG field is generated to store a protocol header and a user data portion of a data frame or packet and stored together.
그리고, 상기 프로토콜 헤더 부분을 곧바로 DCE 송신 버퍼부(107)로 복사하여 저장한다. 상기 사용자 데이터 부분은 우선 입력된 N개 바이트를 제 1 난수 발생부(103)를 초기화하는 데 사용한 후에, 제 1 N바이트 암호키부(104)에 미리 저장된 N 바이트 길이의 암호 키와 배타적 논리합 연산을 하여 암호화하고 DCE 송신 버퍼부(107)에 저장한다. 이때 상기 우선 입력된 N개 바이트 시드값(SEED VALUE)이 된다.The protocol header portion is immediately copied to the DCE transmission buffer unit 107 and stored. The user data portion first uses the input N bytes to initialize the first random number generator 103, and then performs an exclusive OR operation with an N-byte length encryption key previously stored in the first N-byte encryption key 104. FIG. To be encrypted and stored in the DCE transmission buffer section 107. At this time, the first N-byte seed value SEED VALUE is input.
이후, 상기 사용자 데이터 부분의 N 번째 이후의 바이트를 제 1난수 발생부(103)에서 출력되는 난수와 배타적 논리합 연산을 하여 암호화하고 DCE 송신버퍼부(107)에 저장한다.Thereafter, the Nth and subsequent bytes of the user data portion are encrypted by performing an exclusive OR operation with the random number output from the first random number generator 103 and stored in the DCE transmission buffer unit 107.
DCE 송신 버퍼부(107)에 저장된 암호화된 데이터 프레임 또는 패킷을 DCE 송신단으로 전송한다.The encrypted data frame or packet stored in the DCE transmission buffer unit 107 is transmitted to the DCE transmitting end.
한편, 복호화부(200)의 동작에 대하여 설명하면, DCE 수신단(201)이 수신한 데이터 프레임 또는 패킷을 DCE 수신 버퍼부(202)에 저장한다. 이때 저장하면서 데이터 프레임 또는 패킷의 프로토콜 헤더와 사용자 데이터 부분을 구별하는 태그 필드를 생성시켜 함께 저장한다.Meanwhile, the operation of the decoding unit 200 will be described. The DCE receiving unit 201 stores the data frame or packet received in the DCE receiving buffer unit 202. In this case, a tag field for distinguishing a protocol header and a user data portion of a data frame or packet is generated and stored together.
그리고, 상기 프로토콜 헤더 부분을 곧바로 DTE 송신 버퍼부(207)에 복사하여 저장한다. 상기 사용자 데이터 부분을 우선 입력된 N개 바이트를 제 2난수 발생부(203)를 초기화하는데 사용한 후, 제 2 N바이트 암호키부(204)에 미리 저장된 N 바이트 길이의 암호 키와 배타적 논리합 연산을 하여 복호화하고, DTE 송신 버퍼부(207)에 저장한다. 이때, 상기 우선 입력된 N개 바이트가 시드값이 된다.The protocol header portion is immediately copied to the DTE transmission buffer unit 207 and stored. The user data portion is first used to initialize the second random number generator 203 by using the N bytes inputted therein, and then performs an exclusive OR operation with an N-byte length encryption key previously stored in the second N-byte encryption key unit 204. The data is decoded and stored in the DTE transmission buffer unit 207. In this case, the first input N bytes become a seed value.
이후, 상기 사용자 데이터 부분의 N번째 이후의 바이트를 제 2난수 발생부(203)에서 출력되는 난수와 배타적 논리합 연산을 하여 복호화하고 DTE 송신 버퍼부(207)에 저장한다. DTE 송신 버퍼부(207)에 저장된 복호화된 데이터 프레임 또는 패킷을 DTE 송신단(208)으로 전송한다.Thereafter, the Nth and subsequent bytes of the user data portion are decoded by performing an exclusive OR operation with the random number output from the second random number generator 203 and stored in the DTE transmission buffer unit 207. The decoded data frame or packet stored in the DTE transmission buffer unit 207 is transmitted to the DTE transmitting end 208.
그러나, 종래의 네트워크 암호화장치는 입력된 모든 데이터 프레임이나 패킷에 대해 일방적으로 암/복호화하는 기능을 수행한다. 이는 다양한 종류의 패킷이 전송되는 네트워크 환경에서 특정 패킷에 대해서만 암/복호화를 수행하도록 하는 선택적인 암/복호화 기능을 수행할 수 없다. 그러므로, 다수의 터미널이 연결된 네트워크 환경에서는 암/복호화를 수행한 터미널 마다 암/복호화 장치를 별도로 연결해야 하므로, 비용을 증가시킨다. 또한 암/복호화에 대한 정책이 변경되면 암/복호화장치의 물리적인 위치를 변경해 주어야 하므로, 관리의 효율성도 떨어진다.However, the conventional network encryption apparatus performs a function of unilaterally encrypting / decrypting all input data frames or packets. It cannot perform a selective encryption / decryption function to perform encryption / decryption only for specific packets in a network environment in which various types of packets are transmitted. Therefore, in a network environment in which a plurality of terminals are connected, an encryption / decryption device must be separately connected to each terminal that performs encryption / decryption, thereby increasing costs. In addition, if the policy on encryption / decryption is changed, the physical location of the encryption / decryption device has to be changed, thereby reducing management efficiency.
그러므로, 이러한 비용면이나 관리의 효율성을 증대시키기 위해서는 선택적으로 암/복호화할 수 있는 기능을 포함한 암/복호화 장치가 필요하다.Therefore, in order to increase such cost or management efficiency, an encryption / decryption apparatus including a function capable of selectively encrypting / decrypting is needed.
본 발명은 상기한 종래의 문제점을 해결하기 위해 안출된 것으로서, 네트워크 인터페이스로부터 입력되는 패킷들에 대해 패킷의 헤더 정보를 바탕으로 선택적으로 암/복호화를 수행할 수 있도록 한 선택적인 암/복호화기능을 갖는 TCP/IP 기반 네트워크용 고속 암/복호화 장치 및 방법을 제공함에 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-described problems, and provides an optional encryption / decryption function for selectively encrypting / decoding based on header information of a packet for packets input from a network interface. An object of the present invention is to provide a fast encryption / decryption apparatus and method for a TCP / IP-based network.
본 발명의 다른 특징은, 다수의 터미널이 연결된 네트워크 환경에서 다수의 터미널에서 발생되는 패킷들에 대해서 터미널의 위치, 서비스, 시간 등의 정책 정보에 따라 선택적으로 암/복호화 통신이 가능하도록 한 선택적인 암호화기능을 갖는 TCP/IP 기반 네트워크용 고속 암/복호화 장치 및 방법을 제공함에 그 목적이 있다.Another feature of the present invention is to selectively enable encryption / decryption communication for packets generated from multiple terminals in a network environment in which multiple terminals are connected according to policy information such as terminal location, service, and time. An object of the present invention is to provide a fast encryption / decryption apparatus and method for a TCP / IP-based network having an encryption function.
또 다른 특징은 암/복호화에 하드웨어적인 회로로 구성된 전용 암/복호화 칩을 사용함으로써 데이터의 암/복호화 속도를 증가시켜 고속의 네트워크 환경에서도 네트워크 속도의 저하 없이 안전한 암호화 통신이 가능하도록 한 선택적인 암호화기능을 갖는 TCP/IP 기반 네트워크용 고속 암/복호화 장치 및 방법을 제공함에 그 목적이 있다.Another feature is the selective encryption, which uses a dedicated encryption / decryption chip composed of hardware circuitry for encryption / decryption to increase the data encryption / decryption speed, enabling secure encrypted communication without slowing down the network speed even in a high-speed network environment. An object of the present invention is to provide a fast encryption / decryption apparatus and method for a TCP / IP-based network.
도 1은 종래 암호화기능을 갖는 TCP/IP 기반 네트워크용 고속 암/복호화 장치를 나타낸 블록 구성도.1 is a block diagram showing a fast encryption / decryption apparatus for a TCP / IP-based network having a conventional encryption function.
도 2는 본 발명 실시 예에 따른 선택적인 암호화기능을 갖는 TCP/IP 기반 네트워크용 고속 암/복호화 장치를 나타낸 구성도.2 is a block diagram showing a fast encryption / decryption apparatus for a TCP / IP-based network with an optional encryption function according to an embodiment of the present invention.
도 3은 본 발명 실시 예에 따른 선택적인 암호화기능을 갖는 TCP/IP 기반 네트워크용 고속 암/복호화 방법을 나타낸 플로우 챠트.3 is a flowchart illustrating a fast encryption / decryption method for a TCP / IP-based network having an optional encryption function according to an embodiment of the present invention.
<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>
100...암호부101...DTE 수신단100 ... Encryption 101 ... DTE Receiver
102...DTE 수신 버퍼부103...제 1난수 발생부102 DTE receive buffer 103 First random number generator
104...제 1 N바이트 암호키부105...제 1배타적 논리합 연산 소자부104 ... first N-byte encryption key portion 105 ... first exclusive-OR operation element portion
106...제 6배타적 논리합 연산 소자부106 The Sixth Exclusive-OR Element
107...DCE 송신 버퍼부108...DCE 송신단107 DCE Transmit Buffer 108 DCE Transmitter
200...복호부201...DCE 수신단200 ... decoder 201 ... DCE receiver
202...DCE 수신 버퍼부203...제 2난수 발생부202 ... DCE reception buffer unit 203 ... second random number generation unit
204...제 2 N바이트 암호키부205...제 3배타적 논리합 연산 소자부204 ... second N-byte encryption key section 205 ... third exclusive-OR operation element section
206...제 4배타적 논리합 연산 소자부206 fourth fourth exclusive OR operation element
207...DTE 송신 버퍼부208...DTE 송신단207 DTE transmit buffer 208 DTE transmit end
300...선택적 암/복호화부301...패킷 입력부300 ... optional encryption / decryption unit 301 ... packet input
302...패킷 헤더 분석부303...암/복호화 정책 데이터 베이스302 ... packet header analysis section 303 ... encryption / decryption policy database
304...고속 암/복호화 처리부305...패킷 출력부304 High speed encryption / decryption unit 305 Packet output unit
400...네트워크 인터페이스400 ... network interface
상기한 목적 달성을 위한, 본 발명에 따른 선택적인 암호화기능을 갖는 TCP/IP 기반 네트워크용 고속 암/복호화 장치는,In order to achieve the above object, a fast encryption / decryption apparatus for a TCP / IP-based network having an optional encryption function according to the present invention,
네트워크 인터페이스로부터 패킷을 입력받는 패킷 입력부와;A packet input unit for receiving a packet from a network interface;
상기 입력된 패킷의 헤더를 분석하여 암/복호화 정책 정보가 존재하는지를 확인한 후 암/복호화 여부를 결정하는 패킷 헤더 분석부와;A packet header analyzing unit for analyzing whether the encryption / decryption policy information exists by analyzing the header of the input packet and determining whether to encrypt / decrypt the packet;
암/복호화할 패킷에 대한 정책 정보를 보관, 관리하는 암/복호화 정책 데이터 베이스와;An encryption / decryption policy database for storing and managing policy information on packets to be encrypted / decrypted;
암/복호화를 수행하기로 결정된 패킷의 데이터 부분에 대하여 암/복호화 칩을 사용하여 암/복호화를 수행하는 고속 암/복호화 처리부와;A fast encryption / decoding processor that performs encryption / decryption on the data portion of the packet determined to perform encryption / decryption using an encryption / decryption chip;
상기 암/복호화된 패킷 및 암/복호화되지 않은 패킷을 네트워크 인터페이스로 출력하는 패킷 출력부를 포함하는 것을 특징으로 한다.And a packet output unit configured to output the encrypted / decrypted packet and the unencrypted / undecrypted packet to a network interface.
바람직하게, 상기 패킷 입력부는 네트워크 인터페이스로부터 패킷을 입력받으면 패킷을 저장할 버퍼 공간을 할당한 후, 인터페이스로부터 입력받은 패킷을 저장하는 것을 특징으로 한다.Preferably, when the packet input unit receives a packet from the network interface, the packet input unit allocates a buffer space for storing the packet, and then stores the packet received from the interface.
바람직하게, 상기 패킷 헤더 분석부는 패킷의 헤더를 분석하고 설정된 암/복호화 정책 정보와 비교하여 현재 입력된 패킷이 암/복호화를 수행할 패킷인지의 여부를 결정하는 것을 특징으로 한다.Preferably, the packet header analyzing unit analyzes the header of the packet and compares the set encryption / decryption policy information to determine whether the currently input packet is a packet to perform encryption / decryption.
바람직하게, 상기 암/복호화 정책 데이터 베이스에는 패킷의 선택적 암/복호화를 위하여 암/복호화할 패킷에 대한 패킷의 발생지주소, 목적지 주소, 발생시각,서비스의 종류 등의 정보를 보관하고 관리하는 것을 특징으로 한다.Preferably, the encryption / decryption policy database stores and manages information such as packet origin address, destination address, time of occurrence, type of service, etc. of the packet to be encrypted / decrypted for selective encryption / decryption of the packet. It is done.
바람직하게, 상기 암/복호화 정책 데이터 베이스에 저장된 암/복호화 정책 정보는 패킷의 발생지 주소, 목적지 주소, 발생시각, 서비스 종류등의 패킷 정보들을 조합하여 구성하는 것을 특징으로 한다.Preferably, the encryption / decryption policy information stored in the encryption / decryption policy database is configured by combining packet information such as a source address, a destination address, a generation time, and a service type of the packet.
바람직하게, 상기 고속 암/복호화 처리부는 난수를 발생하는 암/복호화 칩을 포함하며, 암/복호화 칩이 발생한 난수와 조합을 통해 패킷의 데이터 부분을 바이트 단위로 읽어서 고속으로 암/복호화하는 것을 특징으로 한다.Preferably, the fast encryption / decoding processor includes an encryption / decoding chip that generates a random number, and encrypts / decodes at high speed by reading a data portion of a packet in units of bytes through a combination with a random number generated by the encryption / decoding chip. It is done.
바람직하게, 상기 패킷 출력부는 네트워크 인터페이스로 패킷을 출력하고 출력된 패킷이 저장되어 있던 버퍼 공간을 제거하는 것을 특징으로 한다.Preferably, the packet output unit outputs a packet to a network interface and removes a buffer space in which the output packet is stored.
본 발명에 따른 선택적인 암호화기능을 갖는 TCP/IP 기반 네트워크용 고속 암/복호화 방법은,A fast encryption / decryption method for a TCP / IP-based network having an optional encryption function according to the present invention,
네트워크 인터페이스로부터 패킷을 입력받는 단계;Receiving a packet from a network interface;
버퍼를 할당한 후 상기 입력되는 패킷을 저장하는 단계;Allocating a buffer and storing the input packet;
패킷의 헤더 정보를 분석한 후, 암/복호화 정책 정보를 검색하는 단계;Retrieving the encryption / decryption policy information after analyzing the header information of the packet;
패킷에 해당하는 암/복호화 정책이 존재하는지 확인하는 단계;Checking whether an encryption / decryption policy corresponding to the packet exists;
상기 암/복호화 정책이 존재하면 네트워크 인터페이스로 패킷을 출력하고, 암/복호화 정책에 존재하지 않으면 암/복호화 칩에서 발생된 난수와 데이터 부분을 조합하여 암/복호화를 수행한 후 네트워크 인터페이스로 패킷을 출력하는 단계를 포함하는 것을 특징으로 한다.If the encryption / decryption policy exists, the packet is output to the network interface. If the encryption / decryption policy does not exist, the packet is transmitted to the network interface after encryption / decoding by combining the random number and data part generated from the encryption / decryption chip. It characterized in that it comprises a step of outputting.
도 2는 본 발명 실시 예에 따른 선택적인 암호화기능을 갖는 TCP/IP 기반 네트워크용 고속 암/복호화 장치를 나타낸 구성도이다.2 is a block diagram illustrating a fast encryption / decryption apparatus for a TCP / IP-based network having an optional encryption function according to an embodiment of the present invention.
도 2를 참조하면, 네트워크 인터페이스(400)로부터 패킷을 입력받는 패킷 입력부(301)와, 입력된 패킷의 헤더를 분석하여 암/복호화할 패킷인지를 확인하는 패킷 헤더 분석부(302)와, 암/복호화할 패킷에 대한 정책 정보를 보관, 관리하는 암/복호화 정책 데이터 베이스(303)와, 암/복호화 하기로 결정된 패킷의 데이터 부분에 대하여 전용 암/복호화 칩을 사용하여 암/복호화를 수행하는 고속 암/복호화 처리부(304)와, 처리된 패킷을 네트워크 인터페이스(400)로 출력하는 패킷 출력부(305)로 구성된다.2, a packet input unit 301 for receiving a packet from the network interface 400, a packet header analyzer 302 for checking whether a packet is to be encrypted / decrypted by analyzing a header of the input packet, and a cancer. The encryption / decryption policy database 303, which stores and manages policy information on the packet to be decrypted / decrypted, and the encryption / decryption using a dedicated encryption / decryption chip on the data portion of the packet determined to be encrypted / decrypted. It consists of a high speed encryption / decryption processing unit 304 and a packet output unit 305 for outputting the processed packet to the network interface 400.
상기와 같은 본 발명 실시 예에 따른 선택적인 암호화기능을 갖는 TCP/IP 기반 네트워크용 고속 암/복호화 장치 및 방법에 대하여 첨부된 도면을 참조하여 설명하면 다음과 같다.A fast encryption / decryption apparatus and method for a TCP / IP-based network having a selective encryption function according to an embodiment of the present invention as described above will be described with reference to the accompanying drawings.
도 2를 참조하면, 선택적 암/복화부(300)의 패킷 입력부(301)는 네트워크 인터페이스(400) 카드를 통해 패킷을 입력받아서, 암/복호화 처리를 위한 준비작업을 수행하며, 상기 입력된 패킷을 저장하기 위한 버퍼를 할당한 후, 이곳에 패킷을 저장한다. 이후 상기 할당된 버퍼를 참조하여 패킷에 접근하게 된다.Referring to FIG. 2, the packet input unit 301 of the selective encryption / decryption unit 300 receives a packet through a network interface 400 card, performs a preparation operation for encryption / decryption processing, and inputs the received packet. After allocating a buffer to store the data, store the packet here. Then, the packet is accessed by referring to the allocated buffer.
패킷 헤더 분석부(302)는 패킷 입력부(301)에 의해 버퍼에 저장된 패킷의 헤더 정보를 읽어서 분석한 후, 암/복호화 정책 데이터 베이스(303)에 존재하는 정책 정보와 비교하여, 분석된 패킷이 암/복호화를 수행할 패킷인지의 여부를 결정한다.The packet header analyzing unit 302 reads and analyzes header information of a packet stored in a buffer by the packet input unit 301, and compares the analyzed packet with the policy information existing in the encryption / decryption policy database 303. Determines whether the packet is to be encrypted / decrypted.
이때, 패킷 헤더 분석부(302)는 패킷 헤더를 분석하여, 패킷의 발생지 주소, 목적지 주소, 발생시각, 패키의 종류 등을 분석한다. 패킷 헤더의 분석한 정보를이용하여 암/복호화 정책 데이터 베이스(303)를 검색하게 된다.At this time, the packet header analyzer 302 analyzes the packet header, and analyzes the source address, the destination address, the time of occurrence, the type of the packet, and the like. The analyzed information of the packet header is used to search the encryption / decryption policy database 303.
이러한 암/복호화 정책 데이터 베이스(303)는 암/복호화를 수행할 패킷에 대한 정보들이 저장되어 있어서 패킷 헤더 분석부(302)가 패킷의 암/복호화 여부를 판단하기 위한 정보를 제공해 준다.The encryption / decryption policy database 303 stores information on a packet to be encrypted / decrypted so that the packet header analyzer 302 provides information for determining whether to encrypt or decode the packet.
상기 암/복호화 정책 데이터 베이스(303)에는 암/복호화를 수행에 대한 정책 정보가 저장 관리되며, 이러한 정책 정보를 서비스 운용자가 선택적 암/복호화를 수행할 정보로서 목적지 주소 또는 시작 주소, 서비스 주소 등을 기록됨으로써, 이를 참조하여 암/복호화를 수행할 패킷인지의 여부를 결정할 수 있다. 즉, 암/복호화 정책정보는 패킷의 이동 시작이나 끝의 위치, 발생시각, 서비스의 종류 등의 패킷 정보들의 조합으로 구성되므로, 패킷 헤더 분석부(302)는 이들 정책 정보와 패킷의 헤더 정보를 비교하여 패킷의 암/복호화 여부를 결정한다.The encryption / decryption policy database 303 stores and manages policy information for performing encryption / decryption. The policy information is used by a service operator to perform selective encryption / decryption as a destination address, a start address, a service address, or the like. By recording this, it is possible to refer to this to determine whether the packet is to be encrypted / decrypted. That is, the encryption / decryption policy information is composed of a combination of packet information such as the start or end position of the packet, the time of occurrence, the type of service, and the like. Compare and determine whether to encrypt / decrypt the packet.
그리고, 패킷 헤더 분석부(302)의 분석 결과에 따라 암/복호화가 필요한 패킷에 대해서만 고속 암/복호화 처리부(304)에 의한 암/복호화가 수행되고, 암/복호화가 필요치 않는 패킷은 패킷 출력부(305)가 바로 처리한다.The encryption / decryption is performed by the fast encryption / decryption processing unit 304 only for packets requiring encryption / decryption according to the analysis result of the packet header analyzer 302, and the packet output unit does not require encryption / decryption. 305 takes care of it immediately.
고속 암/복호화 처리부(304)는 패킷의 데이터 부분을 전용 암/복호화 칩을 이용하여 암/복호화한다. 전용 암/복호화 칩(예컨대, SEAM 칩)에서 임의의 난수를 발생시키며, 이러한 고속 암/복호화 처리부(204)는 전용 암/복호화 칩에서 발생된 난수와 버퍼에서 읽어온 패킷의 데이터 부분을 바이트 단위로 조합하여 암/복호화를 수행하며, 암/복호화된 패킷은 버퍼에 다시 저장된다.The fast encryption / decryption processing unit 304 encrypts / decrypts the data portion of the packet using a dedicated encryption / decryption chip. The random encryption / decoding chip (eg, a SEAM chip) generates random numbers. The fast encryption / decoding processor 204 generates a random byte generated by the dedicated encryption / decoding chip and the data portion of the packet read from the buffer in byte units. Combination is performed to encrypt / decrypt, and the encrypted / decrypted packet is stored in the buffer again.
패킷 출력부(305)는 처리된 패킷을 네트워크 인터페이스(400) 카드를 통해외부로 출력한다. 이러한 패킷 출력부(305)는 패킷을 네트워크 인터페이스 카드의 버퍼로 복사하여 외부로 출력한 후, 패킷 출력부(305)가 패킷을 저장하기 위해 할당한 버퍼를 제거함으로써, 패킷 처리를 완료한다.The packet output unit 305 outputs the processed packet to the outside via the network interface 400 card. The packet output unit 305 copies the packet to the buffer of the network interface card and outputs it to the outside, and then removes the buffer allocated by the packet output unit 305 to store the packet, thereby completing the packet processing.
도 3은 본 발명 실시 예에 따른 선택적인 암호화기능을 갖는 TCP/IP 기반 네트워크용 고속 암/복호화 방법을 나타낸 플로우 챠트이다.3 is a flowchart illustrating a fast encryption / decryption method for a TCP / IP-based network having an optional encryption function according to an embodiment of the present invention.
도 2를 참조하여 도 3을 설명하면, TCP/IP 기반의 네트워크에서 IP 패킷을 암/복호화하는 기능을 갖고, 외부로부터 패킷이 입력되면 동작이 시작된다. 네트워크 인터페이스로부터 패킷이 입력되면(S301), 패킷 입력부(301)는 입력되는 패킷을 저장할 버퍼를 할당한 후 패킷을 저장한다(S302).Referring to FIG. 2, FIG. 3 has a function of encrypting / decoding an IP packet in a TCP / IP-based network, and starts operation when a packet is input from the outside. When a packet is input from the network interface (S301), the packet input unit 301 allocates a buffer to store the input packet and stores the packet (S302).
패킷이 버퍼에 저장되면 패킷 헤더 분석부(302)는 버퍼에서 패킷의 헤더를 읽은 다음, 그 헤더를 분석하여 패킷의 시작 주소, 도착 주소, 발생시각, 패킷의 종류 등을 분석한다(S303).When the packet is stored in the buffer, the packet header analyzer 302 reads the header of the packet from the buffer, and then analyzes the header to analyze the start address, the destination address, the time of occurrence, the type of the packet, and the like (S303).
상기 패킷 헤더에 대한 분석이 끝나면 암/복호화 정책 데이터 베이스(303)를 검색하여, 패킷 헤더를 분석한 내용을 이용하여 상기 패킷에 해당되는 암/복호화 정책에 존재하는지 확인하게 된다(S305).After analyzing the packet header, the encryption / decryption policy database 303 is searched to determine whether the packet header exists in the encryption / decryption policy corresponding to the packet using the analyzed content of the packet header (S305).
이때, 암/복호화 정책 데이터 베이스(303)로부터 검색 결과가 오면 패킷 헤더 분석부(302)는 이를 바탕으로 현재의 패킷에 대한 암/복호화 정책이 존재하는지 확인한다(S306). 만약 암/복호화 정책이 존재한다면 이는 현재의 패킷은 암/복호화가 필요한 패킷임을 나타내며, 암/복호화 정책이 존재하지 않는다면 암/복호화가 필요하지 않은 패킷을 의미한다.At this time, when a search result is received from the encryption / decryption policy database 303, the packet header analyzer 302 checks whether an encryption / decryption policy for the current packet exists based on this (S306). If there is an encryption / decryption policy, this indicates that the current packet is a packet that requires encryption / decryption. If an encryption / decryption policy does not exist, it means a packet that does not require encryption / decryption.
암/복호화가 필요한 패킷은 고속 암/복호화 처리부(304)를 통해 패킷이 암/복호화된다. 상기 고속 암/복호화 처리부(304)는 전용 암/복화 칩에서 암/복호용 난수가 발생되면(S307), 패킷의 데이터 부분과 상기 발생된 난수를 조합하여 암/복호화를 수행한다(S308). 즉, 고속 암/복호화 처리부(304)는 패킷에서 헤더부분을 제외한 데이터 부분만을 전용 암/복호화 칩에서 발생된 난수와 조합하여 패킷의 암/복호화한다.The packet that needs to be encrypted / decrypted is encrypted / decrypted by the fast encryption / decryption processing unit 304. When the encryption / decoding random number is generated in the dedicated encryption / decoding chip (S307), the fast encryption / decoding processor 304 performs encryption / decoding by combining the data portion of the packet with the generated random number (S308). That is, the fast encryption / decoding processor 304 encrypts / decodes the packet by combining only the data portion except for the header portion in the packet with the random number generated in the dedicated encryption / decoding chip.
다시 말하면, 고속 암/복호화 처리부(304)는 버퍼에 저장된 패킷에서 패킷의 데이터 부분을 바이트 단위로 읽어서 전용 암/복호화 칩에서 발생한 난수와 차례대로 조합하여 암/복호화를 수행한 후, 암/복호화된 패킷의 데이터 부분을 다시 버퍼에 저장하는 방법으로 버퍼에 저장된 패킷의 데이터 부분을 암/복호화한다.In other words, the fast encryption / decoding processor 304 reads the data portion of the packet from the packet stored in the buffer in byte units and performs encryption / decoding by combining it with random numbers generated in the dedicated encryption / decoding chip in order, and then encrypting / decoding. The data portion of the packet stored in the buffer is encrypted / decoded by storing the data portion of the packet again in the buffer.
고속 암/복호화 처리부(304)에 의해 암/복호화가 끝난 패킷이나 패킷 헤더 분석기(302)에 의해 암/복호화가 필요하지 않은 패킷은 패킷 출력부(305)에 의해 네트워크 인터페이스(400)로 출력한다(S309).The packet that has been encrypted / decoded by the fast encryption / decryption processing unit 304 or that does not need encryption / decryption by the packet header analyzer 302 is output by the packet output unit 305 to the network interface 400. (S309).
패킷 출력부(305)는 버퍼에 저장된 패킷을 네트워크 인터페이스(400)로 출력한 후, 패킷 저장을 위해 할당되었던 버퍼를 제거함으로써(S310), 패킷에 대한 처리를 완료한다.The packet output unit 305 outputs the packet stored in the buffer to the network interface 400, and then removes the buffer allocated for storing the packet (S310), thereby completing processing for the packet.
본 발명의 다른 실시 예는, 금융권 전용 보안 환경 하에서, 네트워크 단위로 설치되어 다수의 터미널간의 선택적인 고속 암호화 통신 기능을 제공한다.Another embodiment of the present invention provides a selective high-speed encrypted communication function between a plurality of terminals installed in a network unit in a financial area-only security environment.
또 다른 실시 예는, 난수를 발생하는 전용의 암/복호화 칩을 이용하는 전용 하드웨어 암/복호화 장치를 이용하여, TCP/IP 기반 네트워크에서 패킷 데이터를 고속으로 암/복호화할 수 있도록 함에 있다.Another embodiment provides a high speed encryption / decryption of packet data in a TCP / IP based network by using a dedicated hardware encryption / decoding device using a dedicated encryption / decoding chip that generates random numbers.
또 다른 실시 예는, 다수의 터미널로 구성된 TCP/IP 기반 네트워크 환경에서 전송되는 패킷들 중에서 특정 패킷들만을 선택적으로 암/복호화할 수 있도록 하고, 특정한 패킷들만을 선택적으로 암/복호화하기 위해 특정한 패킷을 암/복호화 정책 데이터 베이스로 검색하여 선택할 수 있도록 한 것이다.In another embodiment, a specific packet may be selectively encrypted / decoded among packets transmitted in a TCP / IP-based network environment including a plurality of terminals, and selectively encrypted / decoded only specific packets. Is selected by searching the encryption / decryption policy database.
이상에서 설명한 바와 같이, 본 발명에 따른 선택적 암/복호화 기능을 가진 TCP/IP 기반 네트워크용 고속 암/복호화 장치 및 방법에 의하면, 입력된 패킷들에 대해 패킷의 헤더 정보를 바탕으로 선택적으로 암/복호화를 수행할 수 있으므로, 다수의 터미널이 연결된 네트워크 환경에서 다수의 터미널에서 발생되는 패킷들에 대해서 터미널의 위치, 서비스, 시간 등의 정책 정보에 따라서 선택적으로 암호화 통신이 가능하게 한다.As described above, according to the fast encryption / decryption apparatus and method for a TCP / IP-based network having the selective encryption / decryption function according to the present invention, the received packets are selectively encrypted / received based on the header information of the packet. Since decryption can be performed, encrypted communication can be selectively performed on packets generated from a plurality of terminals in a network environment in which a plurality of terminals are connected according to policy information such as terminal location, service, and time.
또한 암/복호화에 하드웨어적인 회로로 구성된 전용의 SEAM 칩을 사용함으로써, 데이터의 암/복호화 속도를 증가시켜 주어 고속의 네트워크 환경에서도 네트워크 속도의 저하 없이 안전한 통신을 가능하게 한다.In addition, by using a dedicated SEAM chip composed of hardware circuitry for encryption / decryption, the data encryption / decoding rate is increased to enable secure communication without degrading network speed even in a high-speed network environment.
Claims (12)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2001-0085234A KR100438180B1 (en) | 2001-12-26 | 2001-12-26 | Apparatus and method for high speed encryption/decryption using TCP/IP base network having selective encryption function |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2001-0085234A KR100438180B1 (en) | 2001-12-26 | 2001-12-26 | Apparatus and method for high speed encryption/decryption using TCP/IP base network having selective encryption function |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20030054821A true KR20030054821A (en) | 2003-07-02 |
KR100438180B1 KR100438180B1 (en) | 2004-07-01 |
Family
ID=32213543
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2001-0085234A KR100438180B1 (en) | 2001-12-26 | 2001-12-26 | Apparatus and method for high speed encryption/decryption using TCP/IP base network having selective encryption function |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100438180B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101387528B1 (en) * | 2007-09-04 | 2014-04-23 | 엘지전자 주식회사 | Method of transmitting and receiving data in wireless communication system |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1032567A (en) * | 1996-07-18 | 1998-02-03 | Mitsubishi Electric Corp | Ciphering equipment, de-ciphering equipment and data transmission system using them |
KR100331863B1 (en) * | 1998-11-03 | 2002-05-09 | 서평원 | Apparatus and Method of Cryptographing Data in the Network |
JP2000315997A (en) * | 1999-04-30 | 2000-11-14 | Toshiba Corp | Encryption communication method and node unit |
KR100348611B1 (en) * | 2000-02-01 | 2002-08-13 | 엘지전자 주식회사 | Encrypted apparatus and method for digital contents |
KR100415554B1 (en) * | 2001-05-21 | 2004-01-24 | 한국전자통신연구원 | Method for transmitting and receiving of security provision IP packet in IP Layer |
KR100439521B1 (en) * | 2001-06-19 | 2004-07-12 | 주식회사 넷앤티비 | Method for Protecting the Multimedia Contents Using the Encryption of Header Informations |
-
2001
- 2001-12-26 KR KR10-2001-0085234A patent/KR100438180B1/en not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101387528B1 (en) * | 2007-09-04 | 2014-04-23 | 엘지전자 주식회사 | Method of transmitting and receiving data in wireless communication system |
Also Published As
Publication number | Publication date |
---|---|
KR100438180B1 (en) | 2004-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5074558B2 (en) | Network processing using IPSec | |
US5235644A (en) | Probabilistic cryptographic processing method | |
ES2224440T3 (en) | METHOD OF TRANSMISSION OF DATA INFORMATION FROM AN ISSUER TO A RECEIVER VIA A TRANSCODER. | |
US20020129243A1 (en) | System for selective encryption of data packets | |
KR100331863B1 (en) | Apparatus and Method of Cryptographing Data in the Network | |
KR960012819A (en) | System for unsigned transmission and reception of data packets between computer networks | |
US7464171B2 (en) | Effective protection of computer data traffic in constrained resource scenarios | |
US6944762B1 (en) | System and method for encrypting data messages | |
WO2016140033A1 (en) | Classification device and method of performing a real- time classification of a data stream, computer program product, and system | |
WO2000014918A1 (en) | System and method for encrypting data messages | |
US20070245140A1 (en) | Communication system and network control apparatus with encryption processing function, and communication control method | |
US20060050889A1 (en) | Decrypting block encrypted data | |
US20040184479A1 (en) | Packet routing device and packet routing method | |
KR100438180B1 (en) | Apparatus and method for high speed encryption/decryption using TCP/IP base network having selective encryption function | |
JP4933286B2 (en) | Encrypted packet communication system | |
JP2693881B2 (en) | Cryptographic processing apparatus and method used in communication network | |
KR20080030266A (en) | Service method for encryption of short message and apparatus thereof | |
CN104994078A (en) | Information sending method, information acquisition method, information sending device, information acquisition device, and information processing system in local area network | |
CN112333204B (en) | 5G network transmission security device based on TCP IP protocol disorder feature code | |
KR100434379B1 (en) | Apparatus and method of IP packet encryption by block cryptographic algorithm | |
JPH0646052A (en) | Encipherment system in high speed transport mechanism | |
JPH04274636A (en) | Ciphering system for local area network | |
US20040091113A1 (en) | Interface apparatus for monitoring encrypted network | |
CN115766265A (en) | Data encryption and decryption method, device, equipment and medium for AUTBUS bus | |
CN112953889A (en) | Message encryption and decryption method, system, server and readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
N231 | Notification of change of applicant | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130516 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20140520 Year of fee payment: 11 |
|
LAPS | Lapse due to unpaid annual fee |