KR20090042624A - Apparatus and method for symmetric key encryption processing - Google Patents

Apparatus and method for symmetric key encryption processing Download PDF

Info

Publication number
KR20090042624A
KR20090042624A KR1020070108485A KR20070108485A KR20090042624A KR 20090042624 A KR20090042624 A KR 20090042624A KR 1020070108485 A KR1020070108485 A KR 1020070108485A KR 20070108485 A KR20070108485 A KR 20070108485A KR 20090042624 A KR20090042624 A KR 20090042624A
Authority
KR
South Korea
Prior art keywords
key
round
memory
round key
signal
Prior art date
Application number
KR1020070108485A
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 KR1020070108485A priority Critical patent/KR20090042624A/en
Publication of KR20090042624A publication Critical patent/KR20090042624A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • 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/24Key scheduling, i.e. generating round keys or sub-keys for block encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

A symmetrical key code processing device and a method are provided to increase the effectiveness of speed and the power consumption by not repeating the production of the round key. A symmetrical key code processing device(200) comprises a control signal unit(201), a round key generating unit(202), a memory unit(203), a symmetric key code encoding/decoding processor(204), and input-output signal processing unit(205). The control signal unit produces the round key generating signal or the symmetric key code encoding/decoding signal. The round key generating unit produces the round key. The round key generated from the round key generating unit is stored in the memory unit. The symmetric key code encoding/decoding processor receives the round key from the memory unit, and performs the encoding/decoding process of external data.

Description

대칭키 암호 프로세싱 장치 및 방법{APPARATUS AND METHOD FOR SYMMETRIC KEY ENCRYPTION PROCESSING}Symmetric key cryptography processing apparatus and method {APPARATUS AND METHOD FOR SYMMETRIC KEY ENCRYPTION PROCESSING}

본 발명은 두 개 이상의 키를 사용하는 대칭키 암호 프로세싱 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for symmetric key cryptography using two or more keys.

대칭형 암호방식(symmetric cryptographic technique)은 암호화 방식 중 암호화 할 때 사용하는 키와 복호화 할 때 사용하는 키가 같은 암호방식으로서, 대표적인 대칭형 암호방식으로는 IBM에서 개발한 블럭암호 알고리즘으로 1977년에 미 연방 표준으로 채택된 DES(Data Encryption Standard) 및 미국국립표준·기술 연구소(NIST)가 DES의 차세대 국제 표준 암호로 대체하는 순서 공개형의 대칭 키 암호 방식인 AES(Advanced Encryption Standard)를 들 수 있다.The symmetric cryptographic technique is a cryptographic method in which the key used for encryption and the key used for decryption are the same. The representative symmetric cryptographic method is a block cipher algorithm developed by IBM. The Standard Encryption Standard (DES) and the National Institute of Standards and Technology (NIST), the adopted standards, are the Advanced Encryption Standard (AES), an open order symmetric key cryptography that replaces DES 'next generation of international standard cryptography.

종래기술에서 이러한 대칭형 암호방식을 통해 데이터의 암복호화를 처리하는 대칭키 암호 프로세싱 장치로 복수 개의 키가 r-라운드 반복적으로 입력되고, 대칭키 암호 프로세싱 장치는 각각의 키가 입력될 때마다 입력된 키에 해당하는 라운드 키를 생성하여 데이터의 암복호화에 이용한다.In the prior art, a plurality of keys are repeatedly input r-round to a symmetric key cryptographic processing device that processes data encryption and decryption through such a symmetric cryptographic method, and the symmetric key cryptographic processing device is inputted for each key input. A round key corresponding to the key is generated and used to decrypt data.

예를 들어, 스마트카드는 DRM(Digital Rights Management) 기술로 보호된 컨 텐츠를 컨텐츠 키로 복호화 한 후, 보안채널에 사용되는 보안채널 키로 재 암호화하여 CE(Customer Electronics) 장치로 전송한다. CE 장치는 보안채널 키로 암호화된 컨텐츠를 복호화한 후 랜더링(rendering)하게 된다. 이때, 컨텐츠 보호 및 보안채널 각각에 동일한 대칭키 암호 프로세싱 장치가 사용되는 경우, 대칭키 암호 프로세싱 장치에는 반복적으로 두 개의 키가 입력되게 되고, 대칭키 암호 프로세싱 장치는 두 개의 키가 입력될 때마다 라운드 키를 생성하여 생성된 라운드 키로 데이터의 암복호화를 수행한다.For example, the smart card decrypts the content protected by DRM (Digital Rights Management) technology with the content key, re-encrypts it with the secure channel key used for the secure channel, and transmits it to the CE (Customer Electronics) device. The CE device decrypts the content encrypted with the secure channel key and then renders it. In this case, when the same symmetric key cryptographic processing device is used for each of the content protection and security channel, two keys are repeatedly input to the symmetric key cryptographic processing device, and the symmetric key cryptographic processing device is used whenever two keys are input. The round key generated by generating a round key is used to decrypt data.

본 발명은 대칭키 암호기술로 보호된 응용 서비스를 자체의 보안 채널을 통해 재 암호화하여 서비스하는 경우, 하나의 암호 프로세서에 두 개 이상의 키에 대한 라운드 키를 생성하고, 저장하여 동일한 서비스의 응용에 대해 상기 라운드 키의 재생성 없이 사용하는 대칭키 암호 프로세싱 장치 및 방법을 제공한다.According to the present invention, when an application service protected by symmetric key cryptography is re-encrypted through its own secure channel, a service generates a round key for two or more keys in one cryptographic processor and stores the same. And a symmetric key cryptographic processing apparatus and method for use without regeneration of the round key.

본 발명은 상기 라운드 키를 생성하고, 저장하여 사용함으로써 상기 라운드 키의 생성을 반복하지 않아 소비전력 및 속도의 효율성을 높일 수 있는 대칭키 암호 프로세싱 장치 및 방법을 제공한다.The present invention provides a symmetric key cryptographic processing apparatus and method which can increase the efficiency of power consumption and speed by not generating the round key by generating, storing and using the round key.

본 발명의 일실시예에 따른 대칭키 암호 프로세싱 장치는, 라운드 키 생성신호 또는 대칭키 암복호 신호를 생성하는 제어신호부, 상기 라운드 키 생성신호에 따라 입력되는 복수 개의 키 각각에 대한 라운드 키를 생성하는 라운드 키 생성부, 상기 라운드 키가 저장되는 메모리부 및 상기 대칭키 암복호 신호에 따라 상기 메모리부로부터 해당하는 라운드 키를 수신하여 외부 데이터의 암호화 또는 복호화를 처리하는 대칭키 암복호처리부를 포함한다.A symmetric key cryptographic processing apparatus according to an embodiment of the present invention includes a control signal unit for generating a round key generation signal or a symmetric key decryption signal, and a round key for each of a plurality of keys input according to the round key generation signal. A round key generation unit for generating a memory, a memory unit for storing the round key, and a symmetric key decryption processing unit for receiving encryption or decryption of external data by receiving a corresponding round key from the memory unit according to the symmetric key decryption signal. Include.

본 발명의 일측면에 따르면, 상기 제어신호부는 최초 라운드에 상기 라운드 키 생성신호를 생성하고, 모든 라운드에 상기 대칭키 암복호 신호를 생성할 수 있다.According to an aspect of the present invention, the control signal unit may generate the round key generation signal in the first round, and generate the symmetric key decryption signal in every round.

본 발명의 일측면에 따르면, 상기 메모리부는 최초 라운드에 상기 라운드 키가 해당하는 메모리 영역에 저장되고, 모든 라운드가 종료될 때까지 상기 라운드 키를 유지할 수 있다.According to an aspect of the present invention, the memory unit may be stored in a memory area corresponding to the round key in the first round, and maintain the round key until all rounds are finished.

본 발명의 일측면에 따르면, 상기 제어신호부는 입력 신호 또는 출력 신호를 포함하는 메모리 제어 신호를 더 생성할 수 있고, 상기 입력 신호에 따라 상기 메모리부에 상기 라운드 키를 저장시키고, 상기 출력 신호에 따라 상기 메모리부에서 해당하는 라운드 키를 추출하는 입출력 신호 처리부를 더 포함할 수 있다. 이때, 상기 메모리 제어 신호는 최초 라운드에 상기 입력 신호를 포함하고, 모든 라운드에 상기 출력 신호를 포함할 수 있다.According to an aspect of the present invention, the control signal unit may further generate a memory control signal including an input signal or an output signal, store the round key in the memory unit in accordance with the input signal, and to the output signal Accordingly, the memory unit may further include an input / output signal processor that extracts a corresponding round key. In this case, the memory control signal may include the input signal in the first round and the output signal in all rounds.

본 발명의 일실시예에 따른 대칭키 암호 프로세싱 장치는 최초 라운드 시 입력되는 키 각각에 대해 라운드 키를 생성 및 저장하고, 모든 라운드에서 상기 저장된 라운드 키를 이용하여 외부 데이터를 암복호화한다.The symmetric key cryptographic processing apparatus according to an embodiment of the present invention generates and stores a round key for each key input during the first round, and encrypts and decrypts external data using the stored round key in every round.

본 발명의 일실시예에 따른 대칭키 암호 프로세싱 방법은 라운드 키 생성신호에 따라 입력되는 복수 개의 키 각각에 대한 라운드 키를 생성하는 단계, 상기 라운드 키를 메모리에 저장하는 단계 및 대칭키 암복호 신호에 따라 상기 메모리로부터 해당하는 라운드 키를 추출하여 외부 데이터의 암호화 또는 복호화를 처리하는 단계를 포함한다.In a symmetric key encryption processing method according to an embodiment of the present invention, generating a round key for each of a plurality of keys input according to a round key generation signal, storing the round key in a memory, and a symmetric key decryption signal And extracting a corresponding round key from the memory to process encryption or decryption of external data.

본 발명의 일실시예에 따른 대칭키 암호 프로세싱 방법은 최초 라운드에 입력되는 복수 개의 키 각각에 대한 라운드 키를 생성하여 메모리에 저장하는 제1 단계 및 상기 메모리로부터 해당하는 라운드 키를 수신하여 외부 데이터의 암호화 또는 복호화를 처리하는 제2 단계를 포함한다.In a symmetric key cryptography processing method according to an embodiment of the present invention, a first step of generating a round key for each of a plurality of keys input in an initial round and storing it in a memory and receiving a corresponding round key from the memory to receive external data A second step of processing the encryption or decryption of.

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

도 1은 본 발명의 일실시예에 있어서, 대칭키 암호 프로세싱 장치의 개괄적인 동작을 설명하기 위한 도면이다.1 is a view for explaining the general operation of the symmetric key cryptography processing apparatus according to an embodiment of the present invention.

대칭키 암호 프로세싱 장치(100)에는 복수 개의 키가 반복적으로 입력된다. 기존에는 상기 복수 개의 키 각각이 반복적으로 입력될 때마다 상기 복수 개의 키 각각에 대한 라운드 키를 생성하고, 상기 생성된 라운드 키를 이용하여 외부 데이터의 암호화 또는 복호화를 수행하였으나 본 발명의 일실시예에 따르면, 하나의 키에 대한 라운드 키를 한번만 생성하고, 저장하여 반복적으로 사용이 가능하다. 즉, 도 1에 도시된 바와 같이, 단계(S101)에서 대칭키 암호 프로세싱 장치(100)는 입력된 키에 대한 라운드 키를 생성하고 메모리에 저장한다. 또한, 단계(S102)에서 대칭키 암호 프로세싱 장치(100)는 상기 메모리에 저장된 라운드 키를 이용하여 외부 데이터의 암호화 또는 복호화를 처리한다. 즉, 복수개의 키 각각에 대한 라운드 키들이 한번 생성이 되면, 상기 라운드 키들을 상기 메모리에 저장하고, 동일한 서비스의 응용이 종료될 때까지 상기 라운드 키들의 재생성 없이 입력되는 키에 따라 해당하는 라운드 키를 상기 메모리에서 추출하고, 상기 추출된 라운드 키를 이용하여 외부 데이터를 암호화 또는 복호화할 수 있다.A plurality of keys are repeatedly input to the symmetric key cryptographic processing apparatus 100. Conventionally, when each of the plurality of keys is repeatedly input, a round key for each of the plurality of keys is generated and external data is encrypted or decrypted by using the generated round key. According to the present invention, a round key for a single key can be generated, stored and used repeatedly. That is, as shown in FIG. 1, in step S101, the symmetric key cryptographic processing apparatus 100 generates a round key for the input key and stores it in the memory. In operation S102, the symmetric key cryptography processing apparatus 100 processes the encryption or decryption of external data using the round key stored in the memory. That is, when the round keys for each of the plurality of keys are generated once, the round keys are stored in the memory, and the corresponding round keys according to the input key without regeneration of the round keys until the application of the same service is terminated. May be extracted from the memory, and external data may be encrypted or decrypted using the extracted round key.

이때, 단계(S101)은 최초 라운드에서만 실행될 수 있고, 단계(S102)는 모든 라운드에 대해서 반복적으로 수행될 수 있다. 여기서, 라운드란 상기 복수 개의 키가 각각 한번씩 입력되고, 상기 복수 개의 키 각각을 이용하여 외부 데이터의 암호화 또는 복호화가 처리되는 과정을 의미할 수 있고, 상기 모든 라운드는 하나의 컨텐츠에 대한 서비스의 응용이 종료될 때까지 상기 컨텐츠에 대해 r-번 반복적으로 수행되는 r-라운드를 의미할 수 있다.In this case, step S101 may be executed only in the first round, and step S102 may be repeatedly performed for all rounds. Here, the round may mean a process in which the plurality of keys are input once each, and a process of encrypting or decrypting external data is processed using each of the plurality of keys, and all the rounds are applications of a service for one content. This may mean r-round that is repeatedly performed r-times on the content until the end of the content.

즉, 상기 복수 개의 키에 대한 라운드 키를 생성하는 단계(S101)는 최초 라운드에서만 실행되고, 상기 외부 데이터에 대한 암호화 또는 복호화는 매 라운드마다 단계(S102)와 같이 상기 최초 라운드에 생성되고 메모리에 저장된 라운드 키들 중 해당하는 라운드 키를 추출하여 이용함으로써, 매 라운드마다 상기 라운드 키를 반복적으로 생성하지 않도록 함으로써 소비전력 및 속도가 개선될 수 있다. 또는, 다양한 제어신호를 이용하여 특정 신호 발생에 따라 상기 라운드 키를 생성하거나, 또는 저장된 라운드 키를 이용하여 외부 데이터에 대한 암호화 또는 복호화를 처리하도록 할 수 있다.That is, step S101 of generating round keys for the plurality of keys is executed only in the first round, and encryption or decryption of the external data is generated in the first round and stored in the memory as in step S102 every round. By extracting and using a corresponding round key among the stored round keys, power consumption and speed can be improved by not generating the round key repeatedly every round. Alternatively, the round key may be generated according to a specific signal generation using various control signals, or the encryption or decryption of external data may be processed using the stored round key.

이후, 도 2 내지 도 5를 통해 입력되는 복수 개의 키가 반복적으로 입력되는 경우에 입력되는 동일한 키에 대해서는 한번만 라운드 키를 생성하는 대칭키 암호 프로세싱 장치 및 방법에 대해 더욱 자세히 설명한다.Hereinafter, a symmetric key cryptography processing apparatus and method for generating a round key only once for the same key input when a plurality of keys input through FIGS. 2 to 5 are repeatedly input will be described in more detail.

도 2는 본 발명의 일실시예에 있어서, 대칭키 암호 프로세싱 장치의 내부 구성을 설명하기 위한 블록도이다. 여기서, 대칭키 암호 프로세싱 장치(200)는 도 2에 도시된 바와 같이 제어신호부(201), 라운드 키 생성부(202), 메모리부(203), 대칭키 암복호처리부(204) 및 입출력 신호 처리부(205)를 포함한다.2 is a block diagram illustrating an internal configuration of a symmetric key cryptographic processing apparatus according to an embodiment of the present invention. Here, as shown in FIG. 2, the symmetric key cryptographic processing apparatus 200 includes a control signal unit 201, a round key generation unit 202, a memory unit 203, a symmetric key encryption / decryption processing unit 204, and an input / output signal. And a processing unit 205.

제어신호부(201)는 라운드 키 생성신호 또는 대칭키 암복호 신호를 생성한다. 이때, 제어신호부(201)는 입력되는 키가 신규 입력인 경우, 상기 라운드 키 생성신호를 생성할 수 있고, 상기 키가 입력될 때마다 상기 대칭키 암복호 신호를 생성할 수 있다. 다시 말해, 상기 라운드 키 생성신호는 상기 입력되는 키가 최초로 입력되는 경우에만 생성될 수 있고, 상기 대칭키 암복호 신호는 키가 입력될 때마다 생성될 수 있다. 또한, 이와는 다르게 제어신호부(201)는 최초 라운드에 상기 라운드 키 생성신호를 생성하고, 모든 라운드에 상기 대칭키 암복호 신호를 생성할 수도 있다.The control signal unit 201 generates a round key generation signal or a symmetric key decryption signal. In this case, the control signal unit 201 may generate the round key generation signal when the input key is a new input, and generate the symmetric key decryption signal every time the key is input. In other words, the round key generation signal may be generated only when the input key is first input, and the symmetric key decryption signal may be generated each time a key is input. Alternatively, the control signal unit 201 may generate the round key generation signal in the first round, and generate the symmetric key decryption signal in every round.

라운드 키 생성부(202)는 상기 라운드 키 생성신호에 따라 입력되는 복수 개의 키 각각에 대한 라운드 키를 생성한다. 즉, 최초 라운드에 또는 입력되는 키가 신규 입력인 경우, 제어신호부(201)는 상기 라운드 키 생성신호를 생성하여 라운드 키 생성부(202)로 전송한다. 이때, 라운드 키 생성부(202)가 상기 라운드 키 생성신호를 수신하면, 라운드 키 생성부(202)는 입력되는 키에 대한 라운드 키를 생성할 수 있다. 즉, 라운드 키 생성부(202)는 상기 라운드 키 생성신호를 수신하는 경우에는 입력되는 복수 개의 키가 갖는 값에 따라 상기 복수 개의 키 각각에 대한 라운드 키를 생성할 수 있다.The round key generation unit 202 generates a round key for each of the plurality of keys input according to the round key generation signal. That is, in the first round or when the input key is a new input, the control signal unit 201 generates the round key generation signal and transmits it to the round key generation unit 202. At this time, when the round key generation unit 202 receives the round key generation signal, the round key generation unit 202 may generate a round key for the input key. That is, when receiving the round key generation signal, the round key generation unit 202 may generate a round key for each of the plurality of keys according to a value of the plurality of input keys.

메모리부(203)에는 라운드 키 생성부(202)에서 생성되는 라운드 키가 저장된다. 이때, 상기 복수개의 키 각각에 대응하는 상기 라운드 키는 메모리부(203)의 메모리 영역에 생성 순서대로 저장되거나, 또는 제어신호부(201)가 더 생성하는 메모리 제어 신호에 따라 상기 라운드 키가 저장될 메모리 영역이 지정됨으로써, 상기 지정된 메모리 영역에 저장될 수 있다. 이러한 메모리부(203)는 상기 라운드 키가 해당하는 메모리 영역에 저장되고, 해당하는 서비스의 응용이 종료될 때까지 상기 라운드 키를 유지할 수 있다.The memory 203 stores the round key generated by the round key generator 202. In this case, the round key corresponding to each of the plurality of keys is stored in the memory area of the memory unit 203 in the order of generation, or the round key is stored according to the memory control signal generated by the control signal unit 201. By specifying a memory area to be stored, it can be stored in the designated memory area. The memory unit 203 may store the round key in the corresponding memory area and maintain the round key until the application of the corresponding service is terminated.

대칭키 암복호처리부(204)는 상기 대칭키 암복호 신호에 따라 상기 메모리부로부터 해당하는 라운드 키를 수신하여 외부 데이터의 암호화 또는 복호화를 처리한다. 즉, 제어신호부(202)가 상기 대칭키 암복호 신호를 생성하고, 대칭키 압복호처리부(204)에서 상기 대칭키 암복호 신호를 수신하는 경우, 대칭키 암복호처리부(204)는 입력되는 메모리부(203)로부터 해당하는 라운드 키를 수신하여 외부 데이터의 암호화 또는 복호화를 수행할 수 있다.The symmetric key decryption processing unit 204 receives a corresponding round key from the memory unit according to the symmetric key decryption signal to process encryption or decryption of external data. That is, when the control signal unit 202 generates the symmetric key decryption signal, and the symmetric key decryption processor 204 receives the symmetric key decryption signal, the symmetric key decryption processor 204 is input. The corresponding round key may be received from the memory unit 203 to perform encryption or decryption of external data.

이를 위해, 대칭키 암복호처리부(204)는 외부 데이터를 수신하는 외부 데이터 수신부(미도시), 제어신호부(201)가 더 생성하는 상기 메모리 제어 신호에 따라 메모리부(203)로부터 해당하는 라운트 키를 수신하는 라운드 키 수신부(미도시) 및 상기 라운드 키를 이용하여 상기 외부 데이터를 암호화 또는 복호화하는 암복호화부(미도시)를 포함할 수 있다.To this end, the symmetric key encryption / decryption processing unit 204 includes a corresponding round from the memory unit 203 according to the memory control signal further generated by the external data receiver (not shown) and the control signal unit 201 for receiving external data. A round key receiving unit (not shown) for receiving a key key and an encryption / decryption unit (not shown) for encrypting or decrypting the external data using the round key.

예를 들어, 컨텐츠 보호 및 보안채널 각각을 위해 이용되는 두 개의 키가 반복적으로 사용되는 경우, 대칭키 암호 프로세싱 장치(200)는 컨텐츠 보호를 위한 컨텐츠 키에 따라 생성된 제1 라운드 키 및 보안채널을 위한 보안채널 키에 따라 생성된 제2 라운드 키를 메모리부(203)에 저장시키고, 대칭키 암복호처리부(204)에서 상기 외부 데이터인 컨텐츠를 상기 제1 라운드 키로 복호화하거나 상기 제2 라운드 키로 암호화하도록 할 수 있다. 이후, 상기 컨텐츠 키 또는 보안채널 키가 재입력되는 경우, 라운드 키 생성부(202)는 상기 컨텐츠 키 또는 보안채널 키에 대한 라운드 키를 재생성하지 않고, 대칭키 암복호처리부(204)는 메모리부(203)에 저장된 상기 제1 라운드 키 또는 상기 제2 라운드 키를 이용하여 상기 컨텐츠를 암복 호화할 수 있다.For example, when two keys used for each of the content protection and security channel are repeatedly used, the symmetric key cryptography processing apparatus 200 may generate the first round key and the security channel generated according to the content key for content protection. The second round key generated according to the secure channel key for the memory is stored in the memory unit 203, and the symmetric key decryption processing unit 204 decrypts the external data content with the first round key or the second round key. Can be encrypted. Subsequently, when the content key or the secure channel key is re-entered, the round key generator 202 does not regenerate the round key for the content key or the secure channel key, and the symmetric key decryption processor 204 stores the memory unit. The content may be encrypted by using the first round key or the second round key stored in 203.

여기서, 상기 메모리 제어 신호는 메모리부(203)에 라운드 키 생성부(202)로부터 생성된 라운드 키를 저장하기 위한 입력 신호 또는 메모리부(203)로부터 해당하는 라운드 키를 추출하여 대칭키 암복호처리부(204)로 전송하기 위한 출력 신호를 포함할 수 있다. 이때, 상기 입력 신호는 최초 라운드 또는 입력되는 키가 신규 입력인 경우에 상기 메모리 제어 신호에 포함될 수 있고, 상기 출력 신호는 모든 라운드 또는 키가 입력될 때마다 상기 메모리 제어 신호에 포함될 수 있다.The memory control signal is a symmetric key encryption / decryption processor that extracts a corresponding round key from an input signal or memory unit 203 for storing a round key generated from the round key generator 202 in the memory unit 203. And an output signal for transmission to 204. In this case, the input signal may be included in the memory control signal when the first round or the input key is a new input, and the output signal may be included in the memory control signal whenever every round or key is input.

입출력 신호 처리부(205)는 상기 입력 신호에 따라 메모리부(203)에 상기 라운드 키를 저장시키고, 상기 출력 신호에 따라 메모리부(203)에서 해당하는 라운드 키를 추출한다. 즉, 입출력 신호 처리부(205)는 상기 입력 신호를 포함하는 메모리 제어신호가 입력되는 경우, 현재 라운드에서 라운드 키 생성부(203)가 생성한 라운드 키를 메모리부(203)에 저장시키고, 상기 출력 신호를 포함하는 메모리 제어신호가 입력되는 경우, 메모리부(203)에서 상기 출력 신호에 해당하는 라운드 키를 추출하여 대칭키 암복호처리부(204)로 전송할 수 있다.The input / output signal processing unit 205 stores the round key in the memory unit 203 according to the input signal, and extracts the corresponding round key from the memory unit 203 according to the output signal. That is, when the memory control signal including the input signal is input, the input / output signal processing unit 205 stores the round key generated by the round key generation unit 203 in the current round in the memory unit 203 and outputs the same. When a memory control signal including a signal is input, the round key corresponding to the output signal may be extracted from the memory unit 203 and transmitted to the symmetric key decryption processor 204.

이와 같이, 본 발명의 일실시예에 따른 대칭키 암호 프로세싱 장치(200)는 상기 라운드 키 생성 신호에 따라 상기 라운드 키를 생성하고, 상기 대칭키 암복호 신호에 따라 미리 생성 및 저장된 라운드 키를 반복 사용하기 때문에 키가 입력될 때마다 라운드 키를 생성하지 않아도 되어 소비전력 및 속도가 개선될 수 있다.As such, the symmetric key cryptographic processing apparatus 200 according to an embodiment of the present invention generates the round key according to the round key generation signal, and repeats the round key previously generated and stored according to the symmetric key decryption signal. This eliminates the need to generate a round key every time a key is entered, improving power consumption and speed.

도 3은 본 발명의 일실시예에 있어서, 대칭키 암호 프로세싱 장치의 다른 내부 구성을 설명하기 위한 블록도이다.3 is a block diagram illustrating another internal configuration of a symmetric key cryptographic processing apparatus according to an embodiment of the present invention.

대칭키 암호 프로세싱 장치(300)는 최초 라운드 시 입력되는 키 각각에 대해 라운드 키를 생성 및 저장하고, 모든 라운드에서 상기 저장된 라운드 키를 이용하여 외부 데이터를 암복호화한다. 이를 위해, 대칭키 암호 프로세싱 장치(300)는 도 3에 도시된 바와 같이 라운드 키 생성부(301), 메모리부(302) 및 대칭키 암복호처리부(303)를 포함할 수 있다.The symmetric key cryptographic processing apparatus 300 generates and stores a round key for each key input during the first round, and encrypts and decrypts external data using the stored round key in every round. To this end, the symmetric key cryptography processing apparatus 300 may include a round key generation unit 301, a memory unit 302, and a symmetric key encryption / decryption processing unit 303 as shown in FIG. 3.

라운드 키 생성부(301)는 상기 최초 라운드 시 입력되는 상기 키 각각에 대한 라운드 키를 생성한다. 즉, 대칭키 암호 프로세싱 장치(300)에는 하나의 라운드마다 복수 개의 키가 한번씩, 상기 모든 라운드인 r-라운드 동안 반복하여 입력될 수 있고, 상기 최초 라운드 시 라운드 키 생성부(301)는 상기 복수 개의 키 각각에 대한 라운드 키를 생성할 수 있다.The round key generation unit 301 generates a round key for each of the keys input during the first round. That is, in the symmetric key cryptographic processing apparatus 300, a plurality of keys may be repeatedly input for each round, during the r-round which is all the rounds, and the round key generation unit 301 may perform the plurality of keys during the first round. A round key may be generated for each of the four keys.

메모리부(302)에는 상기 라운드 키가 해당하는 메모리 영역에 저장된다. 이때, 메모리부(302)는 최초 라운드에 상기 라운드 키가 해당하는 메모리 영역에 저장되고, 모든 라운드가 종료될 때까지 상기 라운드 키를 유지할 수 있다. 즉, 상기 라운드 키는 상기 복수 개의 키 각각에 대응하여 하나씩 생성되고, 생성된 라운드 키들은 메모리부(302)가 포함하는 복수 개의 영역 중 해당하는 영역에 각각 저장될 수 있다. 또는 단순히 생성되는 순서로 상기 복수 개의 영역에 저장될 수도 있다.In the memory unit 302, the round key is stored in a corresponding memory area. In this case, the memory unit 302 may be stored in the memory area corresponding to the round key in the first round, and maintain the round key until all rounds are completed. That is, the round keys may be generated one by one corresponding to each of the plurality of keys, and the generated round keys may be respectively stored in a corresponding area among a plurality of areas included in the memory unit 302. Alternatively, the data may be stored in the plurality of regions in the order of being simply generated.

대칭키 암복호처리부(303)는 라운드마다 상기 메모리부로부터 해당하는 라운드 키를 수신하여 외부 데이터의 암호화 또는 복호화를 처리한다. 즉, 대칭키 암복호처리부(303)는 상기 최초 라운드에 생성된 복수 개의 라운드 키 중 입력되는 키에 해당하는 라운드 키를 수신하여 상기 외부 데이터를 암호화하거나 또는 복호화할 수 있다.The symmetric key encryption / decryption processing unit 303 receives a corresponding round key from the memory unit for each round to process encryption or decryption of external data. That is, the symmetric key encryption / decryption processor 303 may encrypt or decrypt the external data by receiving a round key corresponding to an input key among a plurality of round keys generated in the first round.

예를 들어, 컨텐츠 보호 및 보안채널 각각을 위한 두 개의 키가 반복적으로 사용되는 경우, 대칭키 암호 프로세싱 장치(300)는 컨텐츠 보호를 위한 컨텐츠 키에 따라 생성된 제1 라운드 키 및 보안채널을 위한 보안채널 키에 따라 생성된 제2 라운드 키를 메모리부(302)에 저장시키고, 대칭키 암복호처리부(303)에서 상기 외부 데이터인 컨텐츠를 컨텐츠 키로 복호화하거나 상기 보안채널 키로 암호화하도록 할 수 있다. 이후, 상기 컨텐츠 키 또는 보안채널 키가 재입력되는 경우, 상기 컨텐츠 키 또는 보안채널 키에 대한 라운드 키를 재생성하지 않고, 메모리부(302)에 저장된 상기 제1 라운드 키 또는 상기 제2 라운드 키를 이용하여 상기 컨텐츠를 암복호화할 수 있게 된다.For example, if two keys for each of the content protection and security channel are repeatedly used, the symmetric key cryptographic processing apparatus 300 may be configured for the first round key and the security channel generated according to the content key for content protection. The second round key generated according to the secure channel key may be stored in the memory unit 302, and the symmetric key encryption / decryption processor 303 may decrypt the external data content with the content key or encrypt the secure channel key. Subsequently, when the content key or the secure channel key is input again, the first round key or the second round key stored in the memory unit 302 is regenerated without regenerating the round key for the content key or the secure channel key. It is possible to decrypt and decode the content.

도 4는 본 발명의 일실시예에 있어서, 대칭키 암호 프로세싱 방법을 설명하기 위한 흐름도이다.4 is a flowchart illustrating a symmetric key cryptography processing method according to an embodiment of the present invention.

단계(S401)에서 대칭키 암호 프로세싱 장치는 라운드 키 생성신호에 따라 입력되는 복수 개의 키 각각에 대한 라운드 키를 생성한다. 이때, 상기 라운드 키 생성신호는 상기 복수 개의 키 중 입력되는 키가 신규 입력되는 경우 생성될 수 있다. 다시 말해, 입력되는 키에 대한 라운드 키는 상기 입력되는 키가 최초로 입력되는 경우에만 생성될 수 있다.In step S401, the symmetric key cryptography processing apparatus generates a round key for each of the plurality of keys input according to the round key generation signal. In this case, the round key generation signal may be generated when a key input among the plurality of keys is newly input. In other words, the round key for the input key may be generated only when the input key is first input.

단계(S402)에서 상기 대칭키 암호 프로세싱 장치는 상기 라운드 키를 메모리에 저장한다. 이때, 상기 메모리에 저장된 상기 라운드 키는 기선정된 메모리 제 어 신호에 따라 상기 메모리에 저장 또는 추출될 수 있고, 상기 메모리 제어 신호는 상기 라운드 키를 상기 메모리의 해당하는 영역에 저장하기 위한 입력 신호 또는 상기 메모리에서 해당하는 라운드 키를 추출하기 위한 출력 신호를 포함할 수 있다.In step S402, the symmetric key cryptographic processing apparatus stores the round key in a memory. In this case, the round key stored in the memory may be stored or extracted in the memory according to a predetermined memory control signal, and the memory control signal is an input signal for storing the round key in a corresponding region of the memory. Or it may include an output signal for extracting a corresponding round key from the memory.

단계(S403)에서 상기 대칭키 암호 프로세싱 장치는 대칭키 암복호 신호에 따라 상기 메모리로부터 해당하는 라운드 키를 추출하여 외부 데이터의 암호화 또는 복호화를 처리한다. 이를 위해, 상기 대칭키 암호 프로세싱 장치는 외부 데이터를 수신하고, 상기 메모리 제어 신호에 기초하여 상기 메모리에서 해당하는 라운드 키를 추출하여, 추출된 상기 라운드 키에 기초하여 상기 외부 데이터를 암호화 또는 복호화할 수 있다. 이때, 상기 대칭키 암복호 신호는 모든 라운드마다 생성될 수 있다.In step S403, the symmetric key cryptography processing apparatus extracts a corresponding round key from the memory according to a symmetric key decryption signal to process encryption or decryption of external data. To this end, the symmetric key cryptographic processing apparatus receives external data, extracts a corresponding round key from the memory based on the memory control signal, and encrypts or decrypts the external data based on the extracted round key. Can be. In this case, the symmetric key decryption signal may be generated every round.

즉, 상기 대칭키 암호 프로세싱 장치는 상기 라운드 키 생성신호를 이용하여 상기 라운드 키를 생성 및 저장한 후 상기 대칭키 암복호 신호를 통해 상기 저장된 라운드 키를 입력된 키에 따라 반복적으로 이용하여 상기 외부 데이터의 암복호를 처리할 수 있다. 따라서, 본 발명의 일실시예에 따르면 하나의 컨텐츠에 대해서는 복수 개의 키를 이용하여 서비스를 제공하는 경우, 상기 대칭키 암호 프로세싱 장치는 키가 입력될 때마다 상기 입력되는 키에 대한 라운드 키를 생성할 필요가 없어진다. 다시 말해, 상기 라운드 키 생성신호에 의해서만 상기 라운드 키를 생성 및 저장하고, 상기 대칭키 암복호 신호에 의해 상기 저장된 라운드 키를 입력되는 키에 따라 선택하여 사용함으로써 상기 라운드 키의 생성을 반복할 필요성이 없어 진다. 이에 따라, 대칭키 암호 프로세싱에 따른 소비전력 및 속도가 개선될 수 있다.That is, the symmetric key cryptographic processing apparatus generates and stores the round key using the round key generation signal, and then repeatedly uses the stored round key according to the input key through the symmetric key decryption signal. Decryption of data can be handled. Accordingly, when providing a service using a plurality of keys for one content, the symmetric key cryptographic processing apparatus generates a round key for the input key whenever a key is input. There is no need to do it. In other words, it is necessary to repeat generation of the round key by generating and storing the round key only by the round key generation signal, and selecting and using the stored round key according to the input key by the symmetric key decryption signal. This disappears. Accordingly, power consumption and speed according to symmetric key cryptographic processing can be improved.

도 5는 본 발명의 일실시예에 있어서, 다른 대칭키 암호 프로세싱 방법을 설명하기 위한 흐름도이다.5 is a flowchart illustrating another symmetric key cryptography processing method according to an embodiment of the present invention.

단계(S501)에서 대칭키 암호 프로세싱 장치는 최초 라운드에 입력되는 복수 개의 키 각각에 대한 라운드 키를 생성하여 메모리에 저장한다. 여기서, 상기 메모리는 상기 최초 라운드에 상기 라운드 키가 해당하는 메모리 영역에 저장될 수 있고, 모든 라운드가 종료될 때까지 상기 라운드 키가 유지할 수 있다.In step S501, the symmetric key cryptography processing apparatus generates a round key for each of the plurality of keys input in the first round and stores it in the memory. Here, the memory may be stored in a memory area corresponding to the round key in the first round, and the round key may be maintained until all rounds are completed.

단계(S502)에서 상기 대칭키 암호 프로세싱 장치는 상기 메모리로부터 해당하는 라운드 키를 수신하여 외부 데이터의 암호화 또는 복호화를 처리한다. 이를 위해, 상기 대칭키 암호 프로세싱 장치는 외부 데이터를 수신하고, 기선정된 메모리 제어 신호에 기초하여 상기 메모리에서 상기 라운드 키를 수신한 후, 상기 라운드 키에 기초하여 상기 외부 데이터를 암호화 또는 복호화할 수 있다. 이 경우, 상기 메모리 제어 신호는 상기 메모리가 포함하는 라운드 키 중 현재 라운드에서 이용될 라운드 키를 결정하는 신호를 포함할 수 있다. 즉, 상기 대칭키 암호 프로세싱 장치는 상기 메모리 제어 신호를 이용하여 상기 메모리가 포함하는 복수 개의 라운드 키 중 현재 라운드에 이용될 키를 추출하고, 입력된 상기 외부 데이터의 암호화 또는 복호화에 이용할 수 있다.In step S502, the symmetric key cryptography processing apparatus receives a corresponding round key from the memory to process encryption or decryption of external data. To this end, the symmetric key cryptographic processing apparatus receives external data, receives the round key from the memory based on a predetermined memory control signal, and then encrypts or decrypts the external data based on the round key. Can be. In this case, the memory control signal may include a signal for determining a round key to be used in the current round among the round keys included in the memory. That is, the symmetric key cryptography processing apparatus may extract a key to be used for the current round among a plurality of round keys included in the memory by using the memory control signal, and use the same to encrypt or decrypt the input external data.

단계(S503)에서 상기 대칭키 암호 프로세싱 장치는 모든 라운드에 대해 단계(S502)를 반복 수행한다. 즉, 상기 대칭키 암호 프로세싱 장치는 최초 라운드에 서만 입력되는 복수 개의 키 각각에 대한 라운드 키를 생성하여 메모리에 저장하고, 상기 최초 라운드 및 나머지 라운드인 상기 모든 라운드 동안 상기 메모리에 저장된 라운드 키 중 해당하는 라운드 키를 선택하여 이용할 수 있다.In step S503, the symmetric key cryptographic processing apparatus repeats step S502 for all rounds. That is, the symmetric key cryptographic processing apparatus generates a round key for each of a plurality of keys input only in the first round, and stores the round key in a memory, and the corresponding one of the round keys stored in the memory during the first round and the remaining rounds is stored. A round key can be selected and used.

따라서, 본 발명의 일실시예에 따르면 하나의 컨텐츠에 대해서는 복수 개의 키를 이용하여 서비스를 제공하는 경우, 대칭키 암호 프로세싱 장치는 상기 복수 개의 키 각각에 대한 라운드 키를 매 라운드마다 생성할 필요 없이 최초 생성된 라운드 키를 입력되는 키에 따라 선택하여 사용함으로써 상기 라운드 키의 생성을 반복할 필요성이 없어진다. 이에 따라, 대칭키 암호 프로세싱에 따른 소비전력 및 속도가 개선될 수 있다.Therefore, according to an embodiment of the present invention, when providing a service using a plurality of keys for one content, the symmetric key cryptographic processing apparatus does not need to generate a round key for each of the plurality of keys every round. By selecting and using the first generated round key according to the input key, there is no need to repeat the generation of the round key. Accordingly, power consumption and speed according to symmetric key cryptographic processing can be improved.

본 발명에 따른 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(Floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드 뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Embodiments according to the present invention can be implemented in the form of program instructions that can be executed by various computer means can be recorded on a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. Program instructions recorded on the media may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

이상과 같이 본 발명을 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명하였으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described by specific embodiments such as specific components and the like, but the embodiments and drawings are provided only to help a more general understanding of the present invention, and the present invention is not limited to the above embodiments. For those skilled in the art, various modifications and variations are possible from these descriptions.

따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be limited to the described embodiments, and all the things that are equivalent to or equivalent to the claims as well as the following claims will belong to the scope of the present invention. .

도 1은 본 발명의 일실시예에 있어서, 대칭키 암호 프로세싱 장치의 개괄적인 동작을 설명하기 위한 도면이다.1 is a view for explaining the general operation of the symmetric key cryptography processing apparatus according to an embodiment of the present invention.

도 2는 본 발명의 일실시예에 있어서, 대칭키 암호 프로세싱 장치의 내부 구성을 설명하기 위한 블록도이다.2 is a block diagram illustrating an internal configuration of a symmetric key cryptographic processing apparatus according to an embodiment of the present invention.

도 3은 본 발명의 일실시예에 있어서, 대칭키 암호 프로세싱 장치의 다른 내부 구성을 설명하기 위한 블록도이다.3 is a block diagram illustrating another internal configuration of a symmetric key cryptographic processing apparatus according to an embodiment of the present invention.

도 4는 본 발명의 일실시예에 있어서, 대칭키 암호 프로세싱 방법을 설명하기 위한 흐름도이다.4 is a flowchart illustrating a symmetric key cryptography processing method according to an embodiment of the present invention.

도 5는 본 발명의 일실시예에 있어서, 다른 대칭키 암호 프로세싱 방법을 설명하기 위한 흐름도이다.5 is a flowchart illustrating another symmetric key cryptography processing method according to an embodiment of the present invention.

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

200: 대칭키 암호 프로세싱 장치200: symmetric key cryptographic processing device

201: 제어신호부201: control signal unit

202: 라운드 키 생성부202: round key generation unit

203: 메모리부203: memory

204: 대칭키 암복호처리부204: symmetric key encryption and decryption processing unit

205: 입출력 신호 처리부205: input and output signal processing unit

Claims (21)

라운드 키 생성신호 또는 대칭키 암복호 신호를 생성하는 제어신호부;A control signal unit for generating a round key generation signal or a symmetric key decryption signal; 상기 라운드 키 생성신호에 따라 입력되는 복수 개의 키 각각에 대한 라운드 키를 생성하는 라운드 키 생성부;A round key generation unit generating a round key for each of a plurality of keys input according to the round key generation signal; 상기 라운드 키가 저장되는 메모리부; 및A memory unit in which the round key is stored; And 상기 대칭키 암복호 신호에 따라 상기 메모리부로부터 해당하는 라운드 키를 수신하여 외부 데이터의 암호화 또는 복호화를 처리하는 대칭키 암복호처리부A symmetric key encryption / decryption processor that receives a corresponding round key from the memory unit according to the symmetric key encryption / decryption signal and processes encryption or decryption of external data. 를 포함하는 대칭키 암호 프로세싱 장치.Symmetric key cryptographic processing device comprising a. 제1항에 있어서,The method of claim 1, 상기 제어신호부는,The control signal unit, 상기 복수 개의 키 중 입력되는 키가 신규 입력인 경우, 상기 라운드 키 생성신호를 생성하고 상기 키가 입력될 때마다 상기 대칭키 암복호 신호를 생성하는 것을 특징으로 하는 대칭키 암호 프로세싱 장치.And generating a round key generation signal and generating the symmetric key encryption / decryption signal each time the key is input when the input key of the plurality of keys is a new input. 제1항에 있어서,The method of claim 1, 상기 제어신호부는,The control signal unit, 최초 라운드에 상기 라운드 키 생성신호를 생성하고, 모든 라운드에 상기 대칭키 암복호 신호를 생성하는 것을 특징으로 하는 대칭키 암호 프로세싱 장치.And generating the round key generation signal in the first round, and generating the symmetric key decryption signal in every round. 제1항에 있어서,The method of claim 1, 상기 메모리부는,The memory unit, 상기 라운드 키가 해당하는 메모리 영역에 저장되고, 해당하는 서비스의 응용이 종료될 때까지 상기 라운드 키를 유지하는 것을 특징으로 하는 대칭키 암호 프로세싱 장치.And the round key is stored in a corresponding memory area, and the round key is held until the application of the corresponding service is terminated. 제1항에 있어서,The method of claim 1, 상기 제어신호부는,The control signal unit, 입력 신호 또는 출력 신호를 포함하는 메모리 제어 신호를 더 생성하고,Further generates a memory control signal comprising an input signal or an output signal, 상기 입력 신호에 따라 상기 메모리부에 상기 라운드 키를 저장시키고, 상기 출력 신호에 따라 상기 메모리부에서 해당하는 라운드 키를 추출하는 입출력 신호 처리부An input / output signal processor configured to store the round key in the memory unit according to the input signal, and extract a corresponding round key from the memory unit according to the output signal 를 더 포함하는 대칭키 암호 프로세싱 장치.Symmetric key cryptographic processing device further comprising. 제5항에 있어서,The method of claim 5, 상기 메모리 제어 신호는 최초 라운드에 상기 입력 신호를 포함하고, 모든 라운드에 상기 출력 신호를 포함하는 것을 특징으로 하는 대칭키 암호 프로세싱 장치.And the memory control signal includes the input signal in the first round and the output signal in every round. 제1항에 있어서,The method of claim 1, 상기 대칭키 암복호처리부The symmetric key encryption / decoding process 외부 데이터를 수신하는 외부 데이터 수신부;An external data receiver for receiving external data; 상기 제어신호부가 더 생성하는 메모리 제어 신호에 따라 상기 메모리부로부터 해당하는 라운트 키를 수신하는 라운드 키 수신부; 및A round key receiving unit for receiving a corresponding round key from the memory unit according to a memory control signal further generated by the control signal unit; And 상기 라운드 키를 이용하여 상기 외부 데이터를 암호화 또는 복호화하는 암복호화부An encryption / decryption unit encrypting or decrypting the external data using the round key. 를 포함하는 것을 특징으로 하는 대칭키 암호 프로세싱 장치.Symmetric key cryptographic processing apparatus comprising a. 최초 라운드 시 입력되는 키 각각에 대해 라운드 키를 생성 및 저장하고, 모든 라운드에서 상기 저장된 라운드 키를 이용하여 외부 데이터를 암복호화하는 대칭키 암호 프로세싱 장치.A symmetric key cryptographic processing apparatus for generating and storing a round key for each key input during the first round, and encrypting and decrypting external data using the stored round key in every round. 제8항에 있어서,The method of claim 8, 상기 최초 라운드 시 입력되는 상기 키 각각에 대한 라운드 키를 생성하는 라운드 키 생성부;A round key generation unit generating a round key for each of the keys input during the first round; 상기 라운드 키가 해당하는 메모리 영역에 저장되는 메모리부; 및A memory unit in which the round key is stored in a corresponding memory area; And 라운드마다 상기 메모리부로부터 해당하는 라운드 키를 수신하여 외부 데이터의 암호화 또는 복호화를 처리하는 대칭키 암복호처리부Symmetric key decryption processing unit for processing the encryption or decryption of external data by receiving the corresponding round key from the memory unit for each round 를 포함하는 대칭키 암호 프로세싱 장치.Symmetric key cryptographic processing device comprising a. 제9항에 있어서,The method of claim 9, 상기 메모리부는,The memory unit, 최초 라운드에 상기 라운드 키가 해당하는 메모리 영역에 저장되고, 모든 라운드가 종료될 때까지 상기 라운드 키를 유지하는 것을 특징으로 하는 대칭키 암호 프로세싱 장치.And the round key is stored in a memory area corresponding to the first round, and the round key is held until all rounds are terminated. 제9항에 있어서,The method of claim 9, 메모리 제어 신호를 생성하는 제어신호부Control signal unit for generating a memory control signal 를 더 포함하고,More, 상기 대칭키 암복호처리부는,The symmetric key decryption processing unit, 상기 메모리 제어 신호에 기초하여 상기 메모리부가 포함하는 라운드 키 중 해당하는 라운드 키를 수신하여 상기 외부 데이터를 암호화 또는 복호화하는 것을 특징으로 하는 대칭키 암호 프로세싱 장치.And a corresponding round key among the round keys included in the memory unit based on the memory control signal to encrypt or decrypt the external data. 라운드 키 생성신호에 따라 입력되는 복수 개의 키 각각에 대한 라운드 키를 생성하는 단계;Generating a round key for each of the plurality of keys input according to the round key generation signal; 상기 라운드 키를 메모리에 저장하는 단계; 및Storing the round key in a memory; And 대칭키 암복호 신호에 따라 상기 메모리로부터 해당하는 라운드 키를 추출하여 외부 데이터의 암호화 또는 복호화를 처리하는 단계Extracting a corresponding round key from the memory according to a symmetric key decryption signal to process encryption or decryption of external data; 를 포함하는 대칭키 암호 프로세싱 방법.Symmetric key encryption processing method comprising a. 제12항에 있어서,The method of claim 12, 상기 라운드 키 생성신호는 상기 복수 개의 키 중 입력되는 키가 신규 입력되는 경우 생성되고,The round key generation signal is generated when a key input among the plurality of keys is newly input, 상기 대칭키 암복호 신호는 상기 키가 입력될 때마다 생성되는 것을 특징으로 하는 대칭키 암호 프로세싱 방법.And the symmetric key decryption signal is generated each time the key is input. 제12항에 있어서,The method of claim 12, 상기 라운드 키는 기선정된 메모리 제어 신호에 따라 상기 메모리에 저장 또는 추출되고,The round key is stored or extracted in the memory according to a predetermined memory control signal, 상기 메모리 제어 신호는 상기 라운드 키를 상기 메모리의 해당하는 영역에 저장하기 위한 입력 신호 또는 상기 메모리에서 해당하는 라운드 키를 추출하기 위한 출력 신호를 포함하는 것을 특징으로 하는 대칭키 암호 프로세싱 방법.And the memory control signal comprises an input signal for storing the round key in a corresponding area of the memory or an output signal for extracting a corresponding round key from the memory. 제12항에 있어서,The method of claim 12, 대칭키 암복호 신호에 따라 상기 메모리로부터 해당하는 라운드 키를 추출하여 외부 데이터의 암호화 또는 복호화를 처리하는 상기 단계는,The step of extracting a corresponding round key from the memory in accordance with a symmetric key decryption signal to process encryption or decryption of external data, 외부 데이터를 수신하는 단계;Receiving external data; 기선정된 메모리 제어 신호에 기초하여 상기 메모리에서 해당하는 라운드 키 를 추출하는 단계; 및Extracting a corresponding round key from the memory based on a predetermined memory control signal; And 상기 라운드 키에 기초하여 상기 외부 데이터를 암호화 또는 복호화하는 단계Encrypting or decrypting the external data based on the round key 를 포함하는 것을 특징으로 하는 대칭키 암호 프로세싱 방법.Symmetric key cryptography processing method comprising a. 최초 라운드에 입력되는 복수 개의 키 각각에 대한 라운드 키를 생성하여 메모리에 저장하는 제1 단계; 및Generating a round key for each of the plurality of keys input in the first round and storing the round key in a memory; And 상기 메모리로부터 해당하는 라운드 키를 수신하여 외부 데이터의 암호화 또는 복호화를 처리하는 제2 단계Receiving a corresponding round key from the memory to process encryption or decryption of external data; 를 포함하는 대칭키 암호 프로세싱 방법.Symmetric key encryption processing method comprising a. 제16항에 있어서,The method of claim 16, 모든 라운드에 대해 상기 제2 단계를 반복 수행하는 제3 단계A third step of repeating the second step for all rounds 를 더 포함하는 것을 특징으로 하는 대칭키 암호 프로세싱 방법.Symmetric key cryptography processing method further comprising. 제16항에 있어서,The method of claim 16, 상기 메모리는 상기 최초 라운드에 상기 라운드 키가 해당하는 메모리 영역에 저장되고, 모든 라운드가 종료될 때까지 상기 라운드 키가 유지되는 것을 특징으로 하는 대칭키 암호 프로세싱 방법.And wherein the memory is stored in a memory area corresponding to the round key in the first round, and the round key is maintained until all rounds are terminated. 제16항에 있어서,The method of claim 16, 상기 제2 단계는,The second step, 외부 데이터를 수신하는 단계;Receiving external data; 기선정된 메모리 제어 신호에 기초하여 상기 메모리에서 상기 라운드 키를 수신하는 단계; 및Receiving the round key in the memory based on a predetermined memory control signal; And 상기 라운드 키에 기초하여 상기 외부 데이터를 암호화 또는 복호화하는 단계Encrypting or decrypting the external data based on the round key 를 포함하는 것을 특징으로 하는 대칭키 암호 프로세싱 방법.Symmetric key cryptography processing method comprising a. 제19항에 있어서,The method of claim 19, 상기 메모리 제어 신호는 상기 메모리가 포함하는 라운드 키 중 현재 라운드에서 이용될 라운드 키를 결정하는 신호를 포함하는 것을 특징으로 하는 대칭키 암호 프로세싱 방법.The memory control signal includes a signal for determining a round key to be used in the current round of the round key included in the memory. 제11항 내지 제20항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록 매체.A computer-readable recording medium in which a program for executing the method of any one of claims 11 to 20 is recorded.
KR1020070108485A 2007-10-26 2007-10-26 Apparatus and method for symmetric key encryption processing KR20090042624A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070108485A KR20090042624A (en) 2007-10-26 2007-10-26 Apparatus and method for symmetric key encryption processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070108485A KR20090042624A (en) 2007-10-26 2007-10-26 Apparatus and method for symmetric key encryption processing

Publications (1)

Publication Number Publication Date
KR20090042624A true KR20090042624A (en) 2009-04-30

Family

ID=40765325

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070108485A KR20090042624A (en) 2007-10-26 2007-10-26 Apparatus and method for symmetric key encryption processing

Country Status (1)

Country Link
KR (1) KR20090042624A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160016157A (en) 2014-08-04 2016-02-15 주식회사 엔씨소프트 Method of distributing original data with recovery data

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160016157A (en) 2014-08-04 2016-02-15 주식회사 엔씨소프트 Method of distributing original data with recovery data

Similar Documents

Publication Publication Date Title
KR101527329B1 (en) Apparatus and method for data encryption
US9152805B2 (en) Security device
KR101847492B1 (en) Apparatus and method for data encryption, apparatus and method for data decryption
US20120269340A1 (en) Hierarchical encryption/decryption device and method thereof
KR102397579B1 (en) Method and apparatus for white-box cryptography for protecting against side channel analysis
KR20100069588A (en) Methods and devices for instruction level software encryption
CN104660590B (en) A kind of file encryption secure cloud storage scheme
KR20090131696A (en) Enc/decryption device and security storage device including the same
KR20190010251A (en) A method and apparatus of lpes for security enhancement in cloud storage transport phase
KR20130093557A (en) System, devices and methods for collaborative execution of a software application comprising at least one encrypted instruction
KR101458479B1 (en) Method of encrypting and decrypting the data of the session state
JP6487433B2 (en) Apparatus and method for rekeying for use in a block cipher algorithm
WO2015166701A1 (en) Encryption method, program, and system
KR101947871B1 (en) Function encryption system and method for outputting inner product values
KR101790948B1 (en) Apparatus and method for providing drm service, apparatus and method for playing contents using drm service
CN109995508B (en) Encryption and decryption device and method for FPGA code stream
KR101240247B1 (en) Proxy re-encryption Method using two secret key, Method for decrypting of Proxy re-encryption message
KR101440680B1 (en) Homomorphic Encryption and Decryption Method using Chinese Remainder Theorem and apparatus using the same
KR20090042624A (en) Apparatus and method for symmetric key encryption processing
CN103491384A (en) Encrypting method and device of video and decrypting method and device of video
KR101445483B1 (en) Method and system for secure data transfer using conditional proxy re-encryption
CN112149166A (en) Unconventional password protection method and intelligent bank machine
KR101824315B1 (en) Method and apparatus for encrypting data, and method and apparatus decrypting data
JP2006313505A (en) Encryption and decryption system, apparatuses and methods for encryption and decryption, and program
KR100992589B1 (en) Data enciphering method capable of reusing encryption pad and device thereof

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination