KR20060110383A - Multi-mode ciphering apparatus for network security processor - Google Patents

Multi-mode ciphering apparatus for network security processor Download PDF

Info

Publication number
KR20060110383A
KR20060110383A KR1020050032468A KR20050032468A KR20060110383A KR 20060110383 A KR20060110383 A KR 20060110383A KR 1020050032468 A KR1020050032468 A KR 1020050032468A KR 20050032468 A KR20050032468 A KR 20050032468A KR 20060110383 A KR20060110383 A KR 20060110383A
Authority
KR
South Korea
Prior art keywords
encryption
mode
block
des
control signal
Prior art date
Application number
KR1020050032468A
Other languages
Korean (ko)
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 KR1020050032468A priority Critical patent/KR20060110383A/en
Publication of KR20060110383A publication Critical patent/KR20060110383A/en

Links

Images

Classifications

    • EFIXED CONSTRUCTIONS
    • E04BUILDING
    • E04BGENERAL BUILDING CONSTRUCTIONS; WALLS, e.g. PARTITIONS; ROOFS; FLOORS; CEILINGS; INSULATION OR OTHER PROTECTION OF BUILDINGS
    • E04B1/00Constructions in general; Structures which are not restricted either to walls, e.g. partitions, or floors or ceilings or roofs
    • E04B1/62Insulation or other protection; Elements or use of specified material therefor
    • E04B1/74Heat, sound or noise insulation, absorption, or reflection; Other building methods affording favourable thermal or acoustical conditions, e.g. accumulating of heat within walls
    • E04B1/82Heat, sound or noise insulation, absorption, or reflection; Other building methods affording favourable thermal or acoustical conditions, e.g. accumulating of heat within walls specifically with respect to sound only
    • E04B1/84Sound-absorbing elements
    • E04B1/86Sound-absorbing elements slab-shaped
    • EFIXED CONSTRUCTIONS
    • E04BUILDING
    • E04GSCAFFOLDING; FORMS; SHUTTERING; BUILDING IMPLEMENTS OR AIDS, OR THEIR USE; HANDLING BUILDING MATERIALS ON THE SITE; REPAIRING, BREAKING-UP OR OTHER WORK ON EXISTING BUILDINGS
    • E04G21/00Preparing, conveying, or working-up building materials or building elements in situ; Other devices or measures for constructional work
    • E04G21/32Safety or protective measures for persons during the construction of buildings
    • EFIXED CONSTRUCTIONS
    • E01CONSTRUCTION OF ROADS, RAILWAYS, OR BRIDGES
    • E01FADDITIONAL WORK, SUCH AS EQUIPPING ROADS OR THE CONSTRUCTION OF PLATFORMS, HELICOPTER LANDING STAGES, SIGNS, SNOW FENCES, OR THE LIKE
    • E01F8/00Arrangements for absorbing or reflecting air-transmitted noise from road or railway traffic
    • E01F8/0005Arrangements for absorbing or reflecting air-transmitted noise from road or railway traffic used in a wall type arrangement
    • E01F8/0011Plank-like elements
    • EFIXED CONSTRUCTIONS
    • E01CONSTRUCTION OF ROADS, RAILWAYS, OR BRIDGES
    • E01FADDITIONAL WORK, SUCH AS EQUIPPING ROADS OR THE CONSTRUCTION OF PLATFORMS, HELICOPTER LANDING STAGES, SIGNS, SNOW FENCES, OR THE LIKE
    • E01F8/00Arrangements for absorbing or reflecting air-transmitted noise from road or railway traffic
    • E01F8/0005Arrangements for absorbing or reflecting air-transmitted noise from road or railway traffic used in a wall type arrangement
    • E01F8/0047Arrangements for absorbing or reflecting air-transmitted noise from road or railway traffic used in a wall type arrangement with open cavities, e.g. for covering sunken roads
    • E01F8/0052Grate-style, e.g. as wall facing
    • E01F8/0058Grate-style, e.g. as wall facing with damping material, e.g. rockwool, sand
    • EFIXED CONSTRUCTIONS
    • E04BUILDING
    • E04BGENERAL BUILDING CONSTRUCTIONS; WALLS, e.g. PARTITIONS; ROOFS; FLOORS; CEILINGS; INSULATION OR OTHER PROTECTION OF BUILDINGS
    • E04B1/00Constructions in general; Structures which are not restricted either to walls, e.g. partitions, or floors or ceilings or roofs
    • E04B1/62Insulation or other protection; Elements or use of specified material therefor
    • E04B1/74Heat, sound or noise insulation, absorption, or reflection; Other building methods affording favourable thermal or acoustical conditions, e.g. accumulating of heat within walls
    • E04B1/82Heat, sound or noise insulation, absorption, or reflection; Other building methods affording favourable thermal or acoustical conditions, e.g. accumulating of heat within walls specifically with respect to sound only
    • E04B1/84Sound-absorbing elements
    • E04B2001/8423Tray or frame type panels or blocks, with or without acoustical filling
    • E04B2001/8433Tray or frame type panels or blocks, with or without acoustical filling with holes in their face
    • EFIXED CONSTRUCTIONS
    • E04BUILDING
    • E04BGENERAL BUILDING CONSTRUCTIONS; WALLS, e.g. PARTITIONS; ROOFS; FLOORS; CEILINGS; INSULATION OR OTHER PROTECTION OF BUILDINGS
    • E04B1/00Constructions in general; Structures which are not restricted either to walls, e.g. partitions, or floors or ceilings or roofs
    • E04B1/62Insulation or other protection; Elements or use of specified material therefor
    • E04B1/74Heat, sound or noise insulation, absorption, or reflection; Other building methods affording favourable thermal or acoustical conditions, e.g. accumulating of heat within walls
    • E04B1/82Heat, sound or noise insulation, absorption, or reflection; Other building methods affording favourable thermal or acoustical conditions, e.g. accumulating of heat within walls specifically with respect to sound only
    • E04B1/84Sound-absorbing elements
    • E04B2001/8423Tray or frame type panels or blocks, with or without acoustical filling
    • E04B2001/8442Tray type elements
    • EFIXED CONSTRUCTIONS
    • E04BUILDING
    • E04BGENERAL BUILDING CONSTRUCTIONS; WALLS, e.g. PARTITIONS; ROOFS; FLOORS; CEILINGS; INSULATION OR OTHER PROTECTION OF BUILDINGS
    • E04B1/00Constructions in general; Structures which are not restricted either to walls, e.g. partitions, or floors or ceilings or roofs
    • E04B1/62Insulation or other protection; Elements or use of specified material therefor
    • E04B1/74Heat, sound or noise insulation, absorption, or reflection; Other building methods affording favourable thermal or acoustical conditions, e.g. accumulating of heat within walls
    • E04B1/82Heat, sound or noise insulation, absorption, or reflection; Other building methods affording favourable thermal or acoustical conditions, e.g. accumulating of heat within walls specifically with respect to sound only
    • E04B1/84Sound-absorbing elements
    • E04B2001/8457Solid slabs or blocks
    • E04B2001/8476Solid slabs or blocks with acoustical cavities, with or without acoustical filling
    • E04B2001/848Solid slabs or blocks with acoustical cavities, with or without acoustical filling the cavities opening onto the face of the element

Abstract

A multi-mode encryption apparatus for a network security processor is provided to reduce waiting time of a symmetric key encryption algorithm by realizing a plurality of encryption algorithms and hash functions with hardware and operating in a multi-mode. In a multi-mode encryption apparatus for a network security processor, a control unit(210) properly operates a multi-mode by determining overall operation for the data pass of an encryption block. Input and output units(401,402,415) perform functions of network environment and an interface. A register and a counter(403) store an initial vector. A cipher(408) has a plurality of block encryption algorithms, and performs encryption by using the block encryption algorithms selectively.

Description

네트워크 보안 프로세서의 다중모드 암호화 장치{MULTI-MODE CIPHERING APPARATUS FOR NETWORK SECURITY PROCESSOR}MULTI-MODE CIPHERING APPARATUS FOR NETWORK SECURITY PROCESSOR}

도 1의 (a)는 원영상의 예시도.Figure 1 (a) is an illustration of the original image.

도 1의 (b)는 부분적으로 암호화된 영상의 예시도.Figure 1 (b) is an illustration of a partially encrypted image.

도 1의 (c)는 워터마크가 삽입된 영상의 예시도.1C is an exemplary view of an image having a watermark embedded therein.

도 1의 (d)는 영상 변조 후 추출된 워터마크의 예시도.1D is an exemplary diagram of a watermark extracted after image modulation.

도 2는 본 발명에 의한 다중비트 AES 데이터 패스의 블록도.2 is a block diagram of a multi-bit AES data path in accordance with the present invention.

도 3a는 본 발명에 의한 싱글-DES 데이퍼 패스의 블록도.3A is a block diagram of a single-DES data path in accordance with the present invention.

도 3b는 본 발명에 의한 멀티플-DES의 데이터 패스의 블록도.3B is a block diagram of a multiple-DES data path in accordance with the present invention.

도 4는 본 발명에 의한 모드운용 암호화 블록의 데이터 패스의 블록도.4 is a block diagram of a data path of a mode operation encryption block according to the present invention;

도 5는 본 발명에 의한 암/복호화 동작모드 표.5 is a table of encryption / decryption operation modes according to the present invention.

도 6a는 MD-5의 데이터 패스의 블록도.6A is a block diagram of a data path of MD-5.

도 6b는 HAS-160의 데이터 패스의 블록도.6B is a block diagram of a data path of HAS-160.

도 6c는 SHA의 데이터 패스의 블록도.6C is a block diagram of a data path of an SHA.

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

210 : 제어부 401,402 : 입력부210: control unit 401,402: input unit

403 : 레지스터 및 카운터 404,406,412,414 : 멀티플렉서403: Registers and Counters 404,406,412,414: Multiplexer

405,413 : 가산기 407 : 입력버퍼405,413: Adder 407: Input buffer

408 : 사이퍼 409 : 출력버퍼408: cypher 409: output buffer

410,411 : 스토리지 415 : 출력부410,411: Storage 415: Output

본 발명은 정보에 대한 보호 및 보안을 위한 암호화 기술에 관한 것으로, 특히 네트워크 프로토콜에 호환적으로 적용할 수 있도록 다수의 암호화 알고리즘과 해쉬함수를 하드웨어로 구현하여 다중모드로 운용할 수 있도록 한 네트워크 보안 프로세서의 다중모드 암호화 장치에 관한 것이다. The present invention relates to encryption technology for protection and security of information, and in particular, a network security for operating in multiple modes by implementing a plurality of encryption algorithms and hash functions in hardware to be compatible with network protocols. A multimode cryptographic apparatus of a processor.

근래 들어, 통신 기술이 발달하면서 유/무선을 통한 서로 다른 컴퓨터간의 상호 접속이 빈번해지고, 압축 기술에 의해 영상/비디오 데이터의 용량이 감소하면서 이들 데이터의 교류는 더욱 활발해지고 있다.In recent years, as communication technologies are developed, interconnection between different computers via wired / wireless communication is more frequent, and as the capacity of video / video data is reduced by compression technology, the exchange of these data becomes more active.

따라서, 신분증 및 엑스레이(X-ray) 파일 등의 개인정보와 영상/비디오 컨텐츠 등의 사업적 이윤을 목적으로 하는 유료정보, 공공기관의 비밀정보 등에 대한 접근권한과 보호가 중요한 사항으로 대두되었다. 이에 따라서 정보 보호를 포함한 전달 및 저장형태의 보안을 위한 암호 기술이 그 어느 때보다 많이 이용되고 있다.Therefore, access rights and protection of personal information such as ID cards and X-ray files, paid information for the purpose of business profits such as video / video contents, and secret information of public institutions have emerged as important matters. Accordingly, cryptographic techniques for security in the form of transmission and storage, including information protection, are being used more than ever.

일반적으로, 암호화 알고리즘은 크게 공개키 알고리즘과 대칭키 알고리즘, 그리고 해쉬(hash) 함수로 분류할 수 있다. 이외 카오스(chaos) 시스템도 암호화의 수단으로 사용되지만 일정한 패턴을 갖는 암호화 데이터(cipher data)를 출력하여 브 루트 포스(brute-force) 공격에 취약하고, 이로 인하여 응용범위가 극히 제한되었다.In general, encryption algorithms can be broadly classified into public key algorithms, symmetric key algorithms, and hash functions. In addition, chaos system is also used as a means of encryption, but it is vulnerable to brute-force attack by outputting cipher data having a certain pattern, thereby limiting the scope of application.

그런데, 종래의 암호화 기술에 있어서는 대기 지연시간과 연산시간이 많이 소요되는 문제점이 있고, 기존에 사용되고 있는 정보보호기기나 보안기기와의 호환성이 떨어지는 등의 문제점이 있었다. By the way, in the conventional encryption technology, there is a problem that it takes a lot of waiting time delay and calculation time, and there is a problem such as incompatibility with the existing information protection device or security device.

따라서, 본 발명의 목적은 대칭키 암호화 알고리즘을 도입하고, 강도 높은 암호화를 위하여 다중모드로 운용하는 암호화 장치를 제공함에 있다.Accordingly, an object of the present invention is to provide a cryptographic apparatus that introduces a symmetric key encryption algorithm and operates in multiple modes for high strength encryption.

본 발명의 제1특징에 따르면, 대칭키 암호화 알고리즘의 대기시간이 줄어들고 동작속도가 향상된다.According to the first aspect of the present invention, the waiting time of the symmetric key encryption algorithm is reduced and the operation speed is improved.

본 발명의 제2특징에 따르면, 정보보호기기/보안장비간 사용되는 다양한 암호 및 해쉬알고리즘과 호환성을 유지하기 위하여, 암호화 장치에 2가지의 암호화/복호화 알고리즘과 3가지의 해쉬함수가 내장된다.According to the second aspect of the present invention, two encryption / decryption algorithms and three hash functions are embedded in the encryption device in order to maintain compatibility with various encryption and hash algorithms used between information protection devices / security devices.

본 발명의 제3특징에 따르면, 기존의 정보보호/보안 알고리즘의 성능을 극대화하기 위하여 암호화/복호화 운용모드가 적용된다.According to a third aspect of the present invention, an encryption / decryption operation mode is applied to maximize the performance of an existing information protection / security algorithm.

본 발명의 제4특징에 따르면, 하드웨어를 IP화하여 다양한 분야에 응용될 수 있도록 알티엘(RTL), 게이트 레벨 네트리스트(Gate Level Netlist), 지디에스(GDS) 등으로 데이터베이스화 된다.According to the fourth aspect of the present invention, the hardware is made into a database such as AltL (RTL), Gate Level Netlist, GDS, etc. so that the hardware can be applied to various fields by IP.

본 발명의 제5특징에 따르면, 다양한 길이의 키(key) 선택이 가능하도록 하여 정보보호/보안 강도가 자유롭게 조절된다. According to the fifth aspect of the present invention, information security / security strength is freely adjusted by allowing the selection of keys of various lengths.

본 발명에 의한 다중모드 네트워크의 암호화 장치는, 암호화/복호화 블록의 데이터 패스에 대한 전반적인 동작을 결정하여 다중모드가 적절히 운영되도록 하는 제어부와; 네트워크 환경과 인터페이스 기능을 수행하는 입출력부와; 초기 벡터를 저장하기 위한 레지스터 및 카운터와; 복수의 블록암호화 및 블록복호화 알고리즘을 구비하고, 이들을 선택적으로 사용하여 암호화 및 복호화를 수행하는 사이퍼로 구성함을 특징으로 한다. An encryption apparatus of a multimode network according to the present invention includes a control unit for determining an overall operation of a data path of an encryption / decryption block so that the multimode is properly operated; An input / output unit that performs a network environment and an interface function; Registers and counters for storing initial vectors; A plurality of block encryption and block decryption algorithms are provided, and a cipher is used for selectively encrypting and decrypting the same.

이하, 첨부한 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 4는 본 발명에 의한 다중모드 네트워크의 암호화 장치에서 암호화/복호화 블록의 데이터 패스에 대한 일실시 구현예시도로서 이에 도시한 바와 같이, 암호화/복호화 블록의 데이터 패스에 대한 전반적인 동작을 결정하여 다중모드가 적절히 운영되도록 하는 제어부(210)와; 네트워크 환경과 인터페이스 기능을 수행하는 입력부(410),(402) 및 출력부(415)와; 초기 벡터를 저장하기 위한 레지스터 및 카운터(403)와; 복수의 블록암호화 및 블록 복호화 알고리즘(AES,3DES)을 선택적으로 사용하여 암호화를 수행하는 사이퍼(408)와; 블록 암호화를 위한 데이터 선택 및 타이밍 조절을 위한 멀티플렉서(404),(406),(412),(414) 및 스토리지(410),(411)로 구성한 것으로, 이와 같이 구성한 본 발명의 작용을 첨부한 도 1 내지 도 3, 도 5 및 도 6을 참조하여 상세히 설명하면 다음과 같다.4 is an exemplary embodiment of a data path of an encryption / decryption block in an encryption apparatus of a multimode network according to the present invention. As shown in FIG. A controller 210 for operating the mode properly; An input unit 410, 402 and an output unit 415 which perform network function and interface functions; A register and counter 403 for storing an initial vector; A cipher 408 for performing encryption by selectively using a plurality of block encryption and block decryption algorithms (AES, 3DES); It consists of multiplexers 404, 406, 412, 414, and storage 410, 411 for data selection and timing adjustment for block encryption. When described in detail with reference to Figures 1 to 3, 5 and 6 as follows.

본 발명에서 구현한 대칭키 암호화 알고리즘은 일명 블록암호화 알고리즘(Block cipher)이라고도 하는데, 여기에서는 일정 단위 블록의 데이터를 동일한 키로 암호화 및 복호화하고 강도 높은 암호화를 위하여 동작모드를 다중모드로 운용한다.The symmetric key encryption algorithm implemented in the present invention is also referred to as a block cipher algorithm, which encrypts and decrypts data of a certain unit block with the same key, and operates an operation mode in multiple modes for high encryption.

상기 블록암호화 알고리즘의 대표적인 예로써, AES(AES: Advance Encryption Standard), 3DES(Data Encryption Standard), SEED(Korean Data Encryption Standard) 등이 있다. 이러한 블록암호화 알고리즘은 일정한 데이터 대기 지연시간(Latency time)을 필요로 하고 연산시간이 많이 소요된다는 단점이 있으나, 암호화 강도가 높은 이점이 있다. 또한 해쉬 함수는 통상 정보의 무결성 인증과 워터마킹을 위해 디지털티브이(DTV), 카메라 등 영상매체에 매우 유용하게 사용되고 있으며, 이의 대표적인 것으로 MD5, SHA, HAS-160 등이 있다. Representative examples of the block encryption algorithm include AES (Avance Encryption Standard), 3DES (Data Encryption Standard), SEED (Korean Data Encryption Standard), and the like. This block encryption algorithm has a disadvantage of requiring a constant data latency time and requiring a lot of computation time, but has an advantage of high encryption strength. In addition, the hash function is commonly used for video media such as digital TVs (DTVs) and cameras for information integrity authentication and watermarking, and examples thereof include MD5, SHA, and HAS-160.

참고로, 도 1의 (a)는 원영상을 나타낸 것이고, (b)는 부분적으로 암호화된 영상을 나타낸 것이며, (c)는 워터마크가 삽입된 영상을 나타낸 것이고, (d)는 영상 변조 후 추출된 워터마크를 나타낸 것이다.For reference, (a) of FIG. 1 shows an original image, (b) shows a partially encrypted image, (c) shows an image with a watermark embedded therein, and (d) shows after image modulation. It shows the extracted watermark.

본 발명에 의한 암호화 장치는 크게 데이터 패스부와 제어부로 이루어지는데, 도 2는 본 발명에 의한 다중비트 AES의 데이터 패스를 나타낸 것이다. The encryption apparatus according to the present invention largely comprises a data path unit and a control unit. FIG. 2 shows a data path of a multi-bit AES according to the present invention.

상기 데이터 패스부는 키 스케쥴러(Key Scheduler)에 해당되는 라운드 키 발생기(Round Key Generater)(222),(223) 및, 이들 내부에 설치된 키 레지스터, 모듈로 롬(Modulo ROM)에 의해 구현되는 룩업테이블(Mod LUT),(Inv LUT) 및 사이퍼를 포함하여 이루어진다. 그리고, 상기 제어부(210)는 키 스케쥴러 제어부, 사이퍼 제어부 전체 제어부로 이루어진다.The data path unit is a look-up table implemented by round key generators 222 and 223 corresponding to a key scheduler, key registers and modulo ROMs installed therein. (Mod LUT), (Inv LUT) and cyphers. In addition, the controller 210 includes a key scheduler controller and a sipher controller as a whole controller.

암호화와 복호화를 위한 하드웨어는 하드웨어 공유에 의해 통합된 구조가 되도 록 설계하였고, 비선형 함수의 모듈로 연산에 해당하는 부분은 모두 룩업 테이블(예: Mod LUT,Inv LUT)을 이용하여 설계하여 고속 동작이 가능하도록 하였다. Hardware for encryption and decryption is designed to be integrated structure by sharing hardware, and all parts corresponding to modulo operation of nonlinear function are designed using lookup table (eg Mod LUT, Inv LUT) for high speed operation. This made it possible.

그리고, 본 발명에 의해 구현된 AES는 128, 192, 그리고 256 비트의 키 길이를 모두 수용할 수 있도록 설계하였고, 상황에 따라서 프로그래밍에 의해 쉽게 동작모드를 변환할 수 있도록 하였다.In addition, the AES implemented by the present invention is designed to accommodate all key lengths of 128, 192, and 256 bits, and it is possible to easily change the operation mode by programming depending on the situation.

한편, 본 발명에 적용되는 블록암호화 알고리즘 DES, 3DES를 도 3a 도 3b를 참조하여 설명하면 다음과 같다. Meanwhile, the block encryption algorithms DES and 3DES applied to the present invention will be described with reference to FIGS. 3A and 3B.

상기 3DES는 도 3a와 같은 싱글-DES를 구현한 후 도 3b에서와 같이 멀티플-DES를 위한 모듈인 멀티플렉서(316)와, 3DES 콘트롤러(317)의 부가에 의해 구현된다.The 3DES is implemented by adding a multiplexer 316, which is a module for multiple-DES, and a 3DES controller 317 as shown in FIG. 3B after implementing single-DES as shown in FIG. 3A.

상기 도 3a와 같은 DES의 경우 Feistal 구조의 비교적 간단한 알고리즘으로 16라운드를 수행하여 암호화 복호화를 구현한다. In the case of DES as shown in FIG. 3A, encryption and decryption are implemented by performing 16 rounds using a relatively simple algorithm having a Feistal structure.

도 3a와 같은 싱글 DES의 반복적인 구동을 통해 2DES 및 3DES의 기능을 구현할 수 있다. 이와 같은 경우 도 3b에서와 같이 3DES 콘트롤러(317)가 프로그래밍에 따라 DES의 다양한 동작을 제어하게 된다.The functions of 2DES and 3DES can be implemented by repeatedly driving a single DES as shown in FIG. 3A. In this case, as shown in FIG. 3B, the 3DES controller 317 controls various operations of the DES according to programming.

한편, 본 발명에 의한 암호화 장치의 전반적인 작용을 도 4 및 도 5를 참조하여 설명하면 다음과 같다.Meanwhile, the overall operation of the encryption apparatus according to the present invention will be described with reference to FIGS. 4 and 5.

도 4는 본 발명에 의한 암호화/복호화 블록의 데이터 패스를 나타낸 것이다. 여기서, 사이퍼(408)는 암호화,복호화를 수행하고, 입력부(410),(402) 및 출력부(415)는 네트워크 환경과 인터페이스 기능을 수행한다. 또한, 레지스터 및 카운터(IV/Counter)(403)는 초기 벡터를 저장하고, 제어부(210)에서는 암호화/복호화 블 록의 데이터 패스에 대한 전반적인 동작을 결정하여 다중모드가 적절히 운영되도록 한다. 이밖에 멀티플렉서(404),(406),(412),(414) 및 스토리지(410),(411) 등은 블록 암호화에 사용된다.4 shows a data path of an encryption / decryption block according to the present invention. Here, the cipher 408 performs encryption and decryption, and the input units 410 and 402 and the output unit 415 perform a network environment and an interface function. In addition, the register and counter (IV / Counter) 403 stores the initial vector, and the controller 210 determines the overall operation of the data path of the encryption / decryption block so that the multi-mode operates properly. In addition, the multiplexers 404, 406, 412, 414, and storage 410, 411 are used for block encryption.

본 발명에 의한 블록암호화 알고리즘은 AES, 3DES 등의 세계 표준의 블록암호화 알고리즘으로 구현하였으며, 입출력 동작의 테스트를 위해 가상의 사이퍼(Virtual)를 구비하였다.The block encryption algorithm according to the present invention is implemented as a world standard block encryption algorithm such as AES, 3DES, etc., and has a virtual cipher for testing input / output operations.

이와 같은 구조의 하드웨어의 기본적인 동작모드에서 네트워크를 비롯한 유/무선으로 입력되는 데이터에 대해 최소한의 대기시간(예: 최소 128클럭, 최대 256클럭)을 허용하고 실시간으로 데이터를 암호화하거나 복호화한다. In the basic operation mode of the hardware of such a structure, the minimum latency (for example, minimum 128 clocks and maximum 256 clocks) is allowed for data input through wired / wireless networks and the like, and data is encrypted or decrypted in real time.

또한, 모든 블록암호화 모드(예: ECB, CBC, CFB, OFB)를 지원하고, 최근 많이 사용되는 CTR(Counter) 모드도 지원하는 동시에 다중 비트단위(예: 64, 128, 192, 256bit)의 암호화/복호화를 수행한다.In addition, it supports all block encryption modes (e.g. ECB, CBC, CFB, OFB) and supports the most recently used CTR (Counter) mode while simultaneously encrypting multiple bit units (e.g. 64, 128, 192, 256bit). / Decrypt

네트워크 보안 프로토콜(예: IPsec)로의 연계를 위해 알고리즘 확장기능을 구비한 하드웨어로 구현하였고, 여러 암호화 알고리즘의 동시적인 동작을 통해 하드웨어 사용 효율을 극대화하는데, 이때 네트워크 암호화 모드와 직접 암호화 모드가 동시에 사용된다. Implemented by hardware with algorithm extension function to link to network security protocol (eg IPsec), maximize the efficiency of hardware through simultaneous operation of several encryption algorithms, where network encryption mode and direct encryption mode are used simultaneously do.

하드웨어의 적절한 공유와 프로그램이 가능하고 특성이 강한 내부 데이터 패스를 사용하여 자체적인 블록암호화 모드를 지원할 수 있기 때문에 보다 다양한 방식의 암호화/복호화가 가능하다. A variety of ways of encryption / decryption are possible because the hardware can support its own block encryption mode using the proper sharing of hardware and programmable internal data paths.

전반적인 암호화 동작은 직렬통신에 의해 프로그래밍되고 명령어의 디코딩을 통 해 생성된 제어신호에 의해 결정되는데, 이에 의한 동작 모드를 도 5에 나타내었다.The overall encryption operation is determined by a control signal programmed by serial communication and generated through the decoding of the instruction, the operation mode of which is shown in FIG.

즉, 상기 제어부(210)에서 출력되는 제어신호에 의해 암호화의 수행여부가 결정되고, 암호화 모드가 암호화 또는 복호화로 결정되고, 동작모드가 네트워크 암호화 모드 또는 다이렉트 암호화 모드로 결정되고, 블록암호화 알고리즘이 AES 또는 3DES 또는 가상 사이퍼(Virtual Cipher)로 선택되고, 블록암호화 모드(예: ECB, CBC, CFB, OFB) 중에서 해당 모드가 지원되고, AES 키 길이가 128,192,256 중에서 어느 하나로 선택되고, DES 모드가 더블 DES 또는 싱글 DES 또는 트리플 DES로 선택된다. That is, whether to perform encryption is determined by the control signal output from the controller 210, the encryption mode is determined as encryption or decryption, the operation mode is determined as the network encryption mode or direct encryption mode, and the block encryption algorithm is Selected as AES or 3DES or Virtual Cipher, supported among block encryption modes (e.g. ECB, CBC, CFB, OFB), AES key length selected from 128,192,256, DES mode double It is selected as DES or single DES or triple DES.

물론, 이때 각각의 모드에서 각 멀티플렉서(406),(414),(404,412)에 해당 선택제어신호(SEL1),(SEL2),(SEL3)가 제공된다. Of course, the respective selection control signals SEL1, SEL2, and SEL3 are provided to the multiplexers 406, 414, 404, 412 in the respective modes.

한편, 도 6a, 도 6b, 도 6c는 해쉬 함수 MD-5, HAS-160, SHA의 데이터 패스를 각각 나타낸 것으로, 이들 해쉬 함수는 크게 입력정보를 저장하는 레지스터와, 연산부, 패딩부 및 제어부로 이루어진다.6A, 6B, and 6C show the data paths of the hash functions MD-5, HAS-160, and SHA, respectively. These hash functions are divided into registers, arithmetic unit, padding unit, and control unit that store input information. Is done.

입출력 데이터의 패딩이 매우 중요하고 까다로운 연산을 필요로 하나 연산량은 그다지 많지 않으므로 이를 소프트웨어로 처리하도록 하였다.Padding of I / O data is very important and requires a complicated operation, but the amount of computation is not so large, so it is processed by software.

그리고, 연산에 필요한 데이터의 바이트 어드레싱(byte addressing)에 따라 연산시간이 결정되는 것을 감안하여, 어드레싱시 미리 정해진 룩업테이블(LUT: Look Up Table)을 사용하도록 하였다. In consideration of the fact that the calculation time is determined according to the byte addressing of the data required for the calculation, a predetermined look up table (LUT) is used during addressing.

예를 들어, 도 6a의 MD-5의 데이터 패스에서, 어드레싱 순서를 그때 그때 연산 하는 것이 아니라 롬(abs-ROM)(604) 상에 룩업테이블을 구축하고, 이를 이용하여 어드레싱하도록 하였다. 이렇게 발생되는 어드레스 신호는 퍼뮤테이션(P)(601), 멀티플렉서(602), 레지스터(603)를 통해 입력되는 데이터와 가산기(605)에서 합산된다.For example, in the MD-5 data path of FIG. 6A, a lookup table was constructed on an abs-ROM 604 instead of then computing the addressing order and then addressed using this. The address signal generated in this way is summed by the adder 605 and the data input through the permutation (P) 601, the multiplexer 602, and the register 603.

또 다른 예로써, 도 6b의 HAS-160의 데이터 패스에서, 어드레스 발생기(632)를 롬 상의 룩업 테이블로 구축하고, 이를 이용하여 필요한 어드레스를 발생하도록 하였다.As another example, in the data path of the HAS-160 of FIG. 6B, the address generator 632 was constructed as a lookup table on a ROM, and used to generate the required address.

상기 도면에서는 연산부를 컴비네이셔널(Combinational)로 구현한 것을 예로하여 설명하였으나, 필요시 최대 8단계의 파이프라인 구조로 변경할 수 있도록 구현하였다. 또한, 하드웨어의 점유면적을 최소화하기 위하여 각각의 데이터 레지스터를 공유(share)하는 구조로 설계한 것을 알 수 있다. In the drawings, the computing unit is implemented as a combination, for example. In addition, it can be seen that the structure is designed to share each data register in order to minimize the footprint of the hardware.

이상에서 상세히 설명한 바와 같이 본 발명은 다수의 암호화 알고리즘과 해쉬함수를 하드웨어로 구현하고 다중모드로 운용함으로써, 대칭키 암호화 알고리즘의 대기시간이 많이 줄어들고 동작속도, 암호화 성능 및 호환성이 향상되는 효과가 있다. As described in detail above, the present invention implements a plurality of encryption algorithms and hash functions in hardware and operates in a multimode mode, thereby reducing the waiting time of the symmetric key encryption algorithm and improving the operation speed, encryption performance, and compatibility. .

또한, 하드웨어를 IP화하여 RTL, 게이트 레벨 네트리스트, GDS 등으로 데이터베이스화 함으로써, 다양한 분야에 적용할 수 있는 효과가 있다.In addition, by converting the hardware into a database by RTL, gate level netlist, GDS, etc., there is an effect that can be applied to various fields.

또한, 다양한 길이의 키 선택이 가능하도록 하여 정보보호/보안 강도를 자유롭게 조절할 수 있는 효과가 있다. In addition, it is possible to select a key of various lengths has the effect of freely adjusting the information protection / security strength.

Claims (12)

암호화 블록의 데이터 패스에 대한 전반적인 동작을 결정하여 다중모드가 적절히 운영되도록 하는 제어부와;A control unit for determining the overall operation of the data path of the encryption block so that the multi-mode is properly operated; 네트워크 환경과 인터페이스 기능을 수행하는 입출력부와; An input / output unit that performs a network environment and an interface function; 초기 벡터를 저장하기 위한 레지스터 및 카운터와;Registers and counters for storing initial vectors; 복수의 블록암호화 알고리즘을 구비하고, 이들을 선택적으로 사용하여 암호화를 수행하는 사이퍼를 포함하여 구성한 것을 특징으로 하는 네트워크 보안 프로세서의 다중모드 암호화 장치.And a cipher including a plurality of block encryption algorithms and selectively using the plurality of block encryption algorithms. 제1항에 있어서, 제어부는 직렬통신에 의해 프로그래밍되고 명령어의 디코딩을 통해 생성된 제어신호를 출력하도록 구성된 것을 특징으로 하는 네트워크 보안 프로세서의 다중모드 암호화 장치.The apparatus of claim 1, wherein the controller is configured to output a control signal programmed by serial communication and generated through decoding of the command. 제1항에 있어서, 제어부는 암호화의 수행여부를 결정하기 위한 제어신호, 암호화모드 또는 복호화모드를 결정하기 위한 제어신호, 네트워크 암호화 모드 또는 다이렉트 암호화 모드를 결정하기 위한 제어신호, 블록암호화 알고리즘을 결정하기 위한 제어신호, 블록암호화 모드 중에서 해당 모드를 지원하기 위한 제어신호, AES 키 길이를 선택하기 위한 제어신호, DES 모드를 선택하기 위한 제어신호 중에서 적어도 하나 이상의 제어신호를 출력하도록 구성된 것을 특징으로 하는 네트워크 보 안 프로세서의 다중모드 암호화 장치.The method of claim 1, wherein the controller determines a control signal for determining whether to perform encryption, a control signal for determining an encryption mode or a decryption mode, a control signal for determining a network encryption mode or a direct encryption mode, and a block encryption algorithm. And a control signal for supporting the corresponding mode among the block encryption mode, the control signal for selecting the AES key length, and the control signal for selecting the DES mode. Multimode cryptographic device in a network security processor. 제3항에 있어서, 블록암호화 알고리즘은 AES 또는 3DES 또는 가상 사이퍼 중에서 어느 하나인 것을 특징으로 하는 네트워크 보안 프로세서의 다중모드 암호화 장치.4. The apparatus of claim 3, wherein the block encryption algorithm is one of AES, 3DES or virtual cipher. 제4항에 있어서, 블록암호화 알고리즘 AES의 데이터 패스에서 비선형 함수의 모듈로 연산에 해당하는 부분은 모두 룩업 테이블로 구성된 것을 특징으로 하는 네트워크 보안 프로세서의 다중모드 암호화 장치.5. The apparatus of claim 4, wherein all of the portions corresponding to the modulo operation of the nonlinear function in the data path of the block encryption algorithm AES are composed of lookup tables. 제4항에 있어서, 블록암호화 알고리즘 3DES는 싱글-DES를 구현한 후 멀티플-DES를 위한 모듈인 멀티플렉서와, 3DES 콘트롤러를 추가하여 구성된 것을 특징으로 하는 네트워크 보안 프로세서의 다중모드 암호화 장치.5. The apparatus of claim 4, wherein the block encryption algorithm 3DES is configured by adding a multiplexer which is a module for multiple-DES after implementing single-DES, and a 3DES controller. 제3항에 있어서, 블록암호화 모드는 ECB, CBC, CFB, OFB 중에서 어느 하나인 것을 특징으로 하는 네트워크 보안 프로세서의 다중모드 암호화 장치.4. The apparatus of claim 3, wherein the block encryption mode is any one of ECB, CBC, CFB, and OFB. 제3항에 있어서, AES 키 길이는 128,192,256 bit 중에서 어느 하나인 것을 특징으로 하는 네트워크 보안 프로세서의 다중모드 암호화 장치.4. The apparatus of claim 3, wherein the AES key length is any one of 128, 192, and 256 bits. 제3항에 있어서, DES 모드는 더블 DES, 싱글 DES, 트리플 DES 중에서 어느 하나인 것을 특징으로 하는 네트워크 보안 프로세서의 다중모드 암호화 장치.4. The apparatus of claim 3, wherein the DES mode is any one of double DES, single DES, and triple DES. 제1항에 있어서, 사이퍼를 통해 암호화 수행시 타이밍 조절을 위해 2단의 스토리지를 더 포함하여 구성된 것을 특징으로 하는 네트워크 보안 프로세서의 다중모드 암호화 장치.The apparatus of claim 1, further comprising two stages of storage for timing adjustment when performing encryption through a cipher. 제1항에 있어서, 블록 암호화 알고리즘에 적용되는 해쉬함수(MD-5)의 데이터 패스는 롬 상에 룩업테이블을 구축하여 어드레싱하도록 구성된 것을 특징으로 하는 네트워크 보안 프로세서의 다중모드 암호화 장치.The apparatus of claim 1, wherein the data path of the hash function (MD-5) applied to the block encryption algorithm is configured to address by constructing a lookup table on a ROM. 제1항에 있어서, 블록 암호화 알고리즘에 적용되는 해쉬함수(HAS-160)의 데이터 패스는 롬 상에 룩업 테이블로 구축하여 필요한 어드레스를 발생하도록 구성된 것을 특징으로 하는 네트워크 보안 프로세서의 다중모드 암호화 장치.The apparatus of claim 1, wherein the data path of the hash function (HAS-160) applied to the block encryption algorithm is configured to generate a required address by building a lookup table on the ROM.
KR1020050032468A 2005-04-19 2005-04-19 Multi-mode ciphering apparatus for network security processor KR20060110383A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050032468A KR20060110383A (en) 2005-04-19 2005-04-19 Multi-mode ciphering apparatus for network security processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050032468A KR20060110383A (en) 2005-04-19 2005-04-19 Multi-mode ciphering apparatus for network security processor

Publications (1)

Publication Number Publication Date
KR20060110383A true KR20060110383A (en) 2006-10-25

Family

ID=37616198

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050032468A KR20060110383A (en) 2005-04-19 2005-04-19 Multi-mode ciphering apparatus for network security processor

Country Status (1)

Country Link
KR (1) KR20060110383A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100835718B1 (en) * 2006-11-27 2008-06-05 삼성전기주식회사 Apparatus and method for encryption in advanced encryption standard
WO2008094779A1 (en) * 2007-01-29 2008-08-07 Microsoft Corporation Master-slave security devices
KR100957566B1 (en) * 2007-11-09 2010-05-11 (주)네오와인 Method and apparatus for double encryption of data
KR101481402B1 (en) * 2012-10-31 2015-01-14 고려대학교 산학협력단 System of encryption/decryption and Method thereof in smart card in public key crypto algorithm
CN116049910A (en) * 2023-02-01 2023-05-02 广东高云半导体科技股份有限公司 Data encryption system and method

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100835718B1 (en) * 2006-11-27 2008-06-05 삼성전기주식회사 Apparatus and method for encryption in advanced encryption standard
WO2008094779A1 (en) * 2007-01-29 2008-08-07 Microsoft Corporation Master-slave security devices
US8151118B2 (en) 2007-01-29 2012-04-03 Microsoft Corporation Master-slave security devices
KR100957566B1 (en) * 2007-11-09 2010-05-11 (주)네오와인 Method and apparatus for double encryption of data
KR101481402B1 (en) * 2012-10-31 2015-01-14 고려대학교 산학협력단 System of encryption/decryption and Method thereof in smart card in public key crypto algorithm
CN116049910A (en) * 2023-02-01 2023-05-02 广东高云半导体科技股份有限公司 Data encryption system and method

Similar Documents

Publication Publication Date Title
EP1440535B1 (en) Memory encrytion system and method
JP3747520B2 (en) Information processing apparatus and information processing method
US9363078B2 (en) Method and apparatus for hardware-accelerated encryption/decryption
US9712319B2 (en) Method and apparatus to encrypt plaintext data
US8983061B2 (en) Method and apparatus for cryptographically processing data
EP1606905B1 (en) Protected return path from digital rights management dongle
US8634549B2 (en) Ciphertext key chaining
US9515818B2 (en) Multi-block cryptographic operation
US8301905B2 (en) System and method for encrypting data
WO2007118829A1 (en) Encryption apparatus and method for providing an encrypted file system
JP2007043353A (en) Transmission and reception system and method, transmission device and method, reception device and method, and program
US8804953B2 (en) Extensive ciphertext feedback
US8041033B2 (en) Cipher feedback with variable block chaining
JP2007142591A (en) Encryption management method
KR20060110383A (en) Multi-mode ciphering apparatus for network security processor
JP2006527412A (en) Processor for encrypting and / or decrypting data and method for encrypting and / or decrypting data using the processor
JPH08286904A (en) Method and system for ciphering/deciphering software
KR20040038777A (en) Data encryption method
JP6348273B2 (en) Information processing system
WO2021044465A1 (en) Encrypting device, decrypting device, computer program, encryption method, decryption method, and data structure
Bossuet et al. Disposable configuration of remotely reconfigurable systems
KR102066487B1 (en) Lightweight encryption algorithm security apparatus based on hardware authentication chip
JP2003066837A (en) Address generating method and data deciphering method
Nishchal Enhanced lightweight encryption algorithm for smartphone
JP2009075474A (en) Cryptography processor

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application