KR101224021B1 - Encryption and decryption apparatus and method - Google Patents
Encryption and decryption apparatus and method Download PDFInfo
- Publication number
- KR101224021B1 KR101224021B1 KR1020110041072A KR20110041072A KR101224021B1 KR 101224021 B1 KR101224021 B1 KR 101224021B1 KR 1020110041072 A KR1020110041072 A KR 1020110041072A KR 20110041072 A KR20110041072 A KR 20110041072A KR 101224021 B1 KR101224021 B1 KR 101224021B1
- Authority
- KR
- South Korea
- Prior art keywords
- encryption
- decryption
- module
- execution
- algorithm
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
- H04L9/16—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
본 발명은 암복호화 장치 및 방법을 제공한다. 암복호화 장치는 순차적으로 동작하도록 직렬로 연결된 n개의 암복호화 모듈 중 사용자가 선택한 암복호화 모듈을 동작시키기 위한 모듈 선택 신호를 사용자로부터 수신하여 전달하는 모듈 제어부, 선택된 암복호화 모듈에 저장된 하나 이상의 암호화 알고리즘의 실행횟수를 결정하기 위한 신호로서, 선택된 암복호화 모듈마다 별개로 설정 가능한 카운트 신호를 사용자로부터 수신하여 전달하는 알고리즘 실행 제어부 및 직렬로 연결된 n개의 암복호화 모듈을 포함하며, 모듈 제어부로부터 전달된 모듈 선택 신호에 기초하여 n개의 암복호화 모듈을 선택된 암복호화 모듈을 포함하는 동작 온 그룹 및 암호화 동작을 수행하지 않는 동작 오프 그룹으로 분류하며, 알고리즘 실행 제어부로부터 전달된 카운트 신호에 기초하여 결정한 실행횟수에 따른 실행 시 마다 저장된 암호화 알고리즘 중 어느 하나를 이용하여 암호화를 수행하는 암복호화부를 포함한다.The present invention provides an encryption and decryption apparatus and method. The encryption / decryption apparatus is a module control unit for receiving and transmitting a module selection signal for operating an encryption / decryption module selected by a user among n encryption / decryption modules serially connected to operate sequentially, one or more encryption algorithms stored in the selected encryption / decryption module. A signal for determining the number of times of execution, comprising: an algorithm execution control unit for receiving and transmitting a count signal that can be set separately for each selected encryption / decoding module, and n encryption / decoding modules connected in series, and the module transmitted from the module control unit. Based on the selection signal, the n encryption / decryption modules are classified into an operation on group including the selected encryption / decryption module and an operation off group that does not perform an encryption operation, and are determined based on the number of executions determined based on the count signal transmitted from the algorithm execution control unit. Running along It includes an encryption and decryption unit for performing encryption by using any one of the stored encryption algorithm for each time.
Description
본 발명은 암복호화 장치 및 방법에 관한 것으로, 보다 상세하게는 순차적으로 동작하도록 직렬로 연결된 복수의 암호화 모듈 중 사용자가 선택한 암호화 모듈에서 사용자가 카운트 하려는 알고리즘 실행횟수에 따른 실행 시 마다 미리 저장된 하나 이상의 암호화 알고리즘을 적용하여 암호화의 강도를 조절하는 암복호화 장치 및 방법에 관한 것이다.The present invention relates to an encryption and decryption apparatus and a method, and more particularly, at least one pre-stored at each execution according to the number of algorithm execution to be counted by the user in the encryption module selected by the user among a plurality of serially connected encryption modules to operate sequentially The present invention relates to an encryption and decryption apparatus and method for adjusting the strength of encryption by applying an encryption algorithm.
최근 디지털 TV, DVD(digital versatile disc) 녹화/재생기, 디지털 녹화기(Personal Video Recoder), MP3(MPEG Audio Layer-3) 플레이어 등과 같은 멀티미디어 장치의 사용자가 증가함에 따라, 멀티미디어 장치에 구비된 저장 매체 또는 별도의 외부 저장 매체에 기록된 멀티미디어 컨텐츠를 안전하게 보호하려는 움직임도 활발해 지고 있다. Recently, as the number of users of multimedia devices such as digital TVs, digital versatile disc (DVD) recorders / players, personal video recorders, MP3 players, and the like increases, There is also an active movement to secure multimedia contents recorded on separate external storage media.
특히, 컨텐츠를 안전하게 보호하기 위하여 암복호화 장치가 구비된 멀티미디어 장치가 출시되고 있다. 그러나, 종래 암복호화 장치는 용량이 큰 표준화된 암호화 알고리즘을 사용하므로 프로그램 메모리가 적은 MCU(microcontroller unit)가 장착되는 제품 및 하드웨어를 대상하는 하는 가전제품에서는 적용하기 부적합한 문제점이 있다.In particular, a multimedia device equipped with an encryption / decryption device has been released to secure contents. However, since the conventional encryption and decryption apparatus uses a standardized encryption algorithm with a large capacity, there is a problem that is unsuitable for application in a home appliance targeting hardware and a product equipped with a microcontroller unit (MCU) having a small program memory.
본 발명의 목적은 상세하게는 순차적으로 동작하도록 직렬로 연결된 복수의 암호화 모듈 중 사용자가 선택한 암호화 모듈에서 사용자가 카운트 하려는 알고리즘 실행횟수의 실행 시 마다 미리 저장된 하나 이상의 암호화 알고리즘을 적용하여 암호화의 강도를 조절할 수 있는 암복호화 장치 및 방법에 관한 것이다.In detail, an object of the present invention is to apply strength of encryption by applying one or more encryption algorithms stored in advance for each execution of an algorithm to be counted by a user in an encryption module selected by a user among a plurality of serially connected encryption modules to operate sequentially. The present invention relates to an adjustable encryption and decryption apparatus and method.
상기 기술적 과제를 해결하기 위한 본 발명의 암복호화 장치는 순차적으로 동작하도록 직렬로 연결된 n개의 암복호화 모듈 중 사용자가 선택한 암복호화 모듈을 동작시키기 위한 모듈 선택 신호를 상기 사용자로부터 수신하여 전달하는 모듈 제어부; 상기 선택된 암복호화 모듈에 저장된 암호화 알고리즘의 실행횟수를 결정하기 위한 신호로서, 상기 선택된 암복호화 모듈마다 별개로 설정 가능한 카운트 신호를 상기 사용자로부터 수신하여 전달하는 알고리즘 실행 제어부; 및 상기 직렬로 연결된 n개의 암복호화 모듈을 포함하며, 상기 모듈 제어부로부터 전달된 모듈 선택 신호에 기초하여 상기 n개의 암복호화 모듈을 상기 선택된 암복호화 모듈을 포함하는 동작 온 그룹 및 암호화 동작을 수행하지 않는 동작 오프 그룹으로 분류하며, 상기 알고리즘 실행 제어부로부터 전달된 카운트 신호에 기초하여 결정한 실행횟수에 따른 실행 시 상기 저장된 암호화 알고리즘 중 어느 하나를 이용하여 암호화를 수행하는 암복호화부를 포함하는 것을 특징으로 한다.The encryption / decryption apparatus of the present invention for solving the above technical problem is a module control unit for receiving and transmitting a module selection signal for operating an encryption / decoding module selected by a user from among n encryption / decoding modules serially connected to operate sequentially. ; An algorithm execution control unit configured to receive and transmit a count signal separately settable for each selected encryption / decryption module from the user as a signal for determining the number of executions of an encryption algorithm stored in the selected encryption / decryption module; And n encryption / decryption modules connected in series, wherein the n encryption / decryption modules include the selected encryption / decryption module based on a module selection signal transmitted from the module control unit. And an encryption / decryption unit configured to perform encryption using any one of the stored encryption algorithms when executing according to the number of executions determined based on the count signal transmitted from the algorithm execution control unit. .
상기 사용자로부터 암호화할 데이터 및 상기 사용자의 고유 식별번호를 수신하여 상기 암복호화부로 전달하는 수신부를 더 포함하는 것을 특징으로 한다.And receiving unit for receiving data to be encrypted from the user and a unique identification number of the user and transmitting the encrypted data to the encryption / decryption unit.
상기 암복호화부는 상기 데이터 및 상기 사용자의 고유 식별번호를 상기 동작 온 그룹 및 상기 동작 오프 그룹을 통해 암호화하여 최종 암호화 결과값을 생성하는 것을 특징으로 한다.The encryption / decryption unit encrypts the data and the unique identification number of the user through the operation on group and the operation off group to generate a final encryption result.
상기 암복호화부로부터 상기 최종 암호화 결과값을 전달받아 출력하는 출력부를 더 포함하는 것을 특징으로 한다.And an output unit for receiving and outputting the final encryption result value from the encryption / decryption unit.
상기 n개의 암복호화 모듈은 각각 암호화를 수행하기 위한 암호화 알고리즘을 미리 저장하는 것을 특징으로 한다.The n encryption / decryption modules each store an encryption algorithm for performing encryption in advance.
상기 선택된 암복호화 모듈은 각각 상기 저장된 암호화 알고리즘을 이용하여 암호화 실행값을 생성하는 것을 특징으로 한다.Each of the selected encryption / decryption modules generates an encryption execution value by using the stored encryption algorithm.
상기 n개의 암복호화 모듈 중 i번째 암복호화 모듈이 동작 오프 그룹에 속하는 경우, 상기 i번째 암복호화 모듈은 상기 암호화 실행값을 이용하여 암호화를 수행하지 않고 다음에 연결된 (i+1)번째 암복호화 모듈로 상기 암호화 실행값을 전달하는 것을 특징으로 한다.If an i-th decryption module of the n-decryption modules belongs to an operation off group, the i-th decryption module does not perform encryption using the encryption execution value and then (i + 1) th decryption connected next. The encryption execution value is transmitted to the module.
상기 복수의 암복호화 모듈은 상기 모듈 선택 신호에 기초하여 상기 동작 온 그룹 또는 상기 동작 오프 그룹 중 어느 하나에 포함되어 동작할 지를 결정하여 상기 암호화 실행값을 생성하는 알고리즘 실행부; 및 상기 알고리즘 실행부로부터 상기 암호화 실행값을 전달받는 결과 전달부를 더 포함하는 것을 특징으로 한다.The plurality of encryption / decryption modules may include an algorithm execution unit configured to determine whether to operate in one of the operation on group or the operation off group based on the module selection signal to generate the encryption execution value; And a result transfer unit that receives the encryption execution value from the algorithm execution unit.
상기 알고리즘 실행부는 상기 동작 온 그룹에 포함되는 경우, 상기 실행횟수에 따른 실행 시 상기 저장된 암호화 알고리즘 중 어느 하나를 이용하여 상기 암호화 실행값을 생성하는 것을 특징으로 한다.
When included in the operation on group, the algorithm execution unit generates the encryption execution value by using any one of the stored encryption algorithms when executing according to the execution frequency.
상기 기술적 과제를 해결하기 위한 암복호화 방법은 순차적으로 동작하도록 직렬로 연결된 n개의 암복호화 모듈, 상기 n개의 암복호화 모듈 중 사용자가 선택한 암복호화 모듈을 동작시키기 위한 모듈 선택 신호를 전달하는 모듈 제어부 및 저장된 암호화 알고리즘을 실행하는 실행횟수를 결정하기 위한 카운트 신호를 전달하는 알고리즘 실행 제어부를 포함하는 암복호화 장치에서 암호화를 수행하는 방법에 있어서, 상기 모듈 제어부로부터 전달된 상기 모듈 선택 신호에 기초하여 상기 n개의 암복호화 모듈을 상기 선택된 암복호화 모듈을 포함하는 동작 온 그룹 및 암호화 동작을 수행하지 않는 동작 오프 그룹으로 분류하는 단계; 상기 알고리즘 실행 제어부로부터 전달된 상기 선택된 암복호화 모듈마다 별개로 설정 가능한 상기 카운트 신호에 기초하여 상기 실행횟수를 결정하는 단계; 및 상기 실행횟수에 따른 실행 시 상기 저장된 암호화 알고리즘을 이용하여 순차적으로 암호화를 수행하는 단계를 포함하는 것을 특징으로 한다.An encryption / decryption method for solving the technical problem includes a module control unit for transmitting a module selection signal for operating an encryption / decoding module selected by a user among the n encryption / decoding modules serially connected to operate sequentially; 10. A method for performing encryption in an encryption / decryption apparatus comprising an algorithm execution control unit for transmitting a count signal for determining the number of executions for executing a stored encryption algorithm, wherein the n is based on the module selection signal transmitted from the module control unit. Classifying four encryption / decryption modules into an operation on group including the selected encryption / decryption module and an operation off group that does not perform an encryption operation; Determining the number of executions based on the count signal that can be set separately for each of the selected encryption / decryption modules transmitted from the algorithm execution control unit; And sequentially performing encryption using the stored encryption algorithm when executing according to the number of executions.
상기 사용자로부터 암호화할 데이터 및 상기 사용자의 고유 식별번호를 수신하는 단계를 더 포함하는 것을 특징으로 한다.And receiving data to be encrypted from the user and a unique identification number of the user.
상기 데이터 및 상기 사용자의 고유 식별번호를 상기 동작 온 그룹 및 상기 동작 오프 그룹을 통해 암호화하여 최종 암호화 결과값을 생성하는 것을 특징으로 한다.And encrypting the data and the unique identification number of the user through the operation on group and the operation off group to generate a final encryption result.
상기 암호화를 수행하는 단계는 상기 최종 암호화 결과값을 전달받아 출력하는 단계를 더 포함하는 것을 특징으로 한다.The performing of the encryption may further include receiving and outputting the final encryption result.
상기 암호화를 수행하는 단계는 상기 데이터 및 상기 사용자의 고유 식별번호에 상기 저장된 암호화 알고리즘을 적용하여 암호화 실행값을 생성하는 단계를 더 포함하는 것을 특징으로 한다.The performing of the encryption may further include generating an encryption execution value by applying the stored encryption algorithm to the data and the unique identification number of the user.
상기 n개의 암복호화 모듈 중 i번째 암복호화 모듈이 동작 오프 그룹에 속하는 경우,If the i-th decryption module of the n decryption module belongs to the operation off group,
상기 암호화를 수행하는 단계는 상기 암호화 실행값이 상기 i번째 암복호화 모듈로 전달되는 단계; 및 상기 i번째 암복호화 모듈에서 상기 암호화 실행값을 이용하여 암호화를 수행하지 않고 다음에 연결된 (i+1)번째 암복호화 모듈로 상기 암호화 실행값을 전달하는 단계를 더 포함하는 것을 특징으로 한다.The performing of the encryption may include: transmitting the encryption execution value to the i th encryption / decryption module; And transmitting the encryption execution value to the (i + 1) th encryption module next connected without performing encryption using the encryption execution value in the i-th encryption / decryption module.
상기 n개의 암복호화 모듈은 각각 암호화를 수행하기 위한 암호화 알고리즘을 미리 저장하는 것을 특징으로 한다.The n encryption / decryption modules each store an encryption algorithm for performing encryption in advance.
본 발명의 암복호화 장치는 순차적으로 동작하도록 직렬로 연결된 복수의 암호화 모듈을 이용하여 암호화의 강도를 조절함에 따라 종래 병렬로 연결된 암호화 모듈에서 암호화가 진행될 때마다 암호화 모듈 이외의 다른 장치를 통해 출력 데이터가 다시 해당 암호화 모듈로 입력되어 암호화가 진행되었던 것과 달리, 암호화 모듈 이외의 별도의 다른 장치 없이 최초 한번의 데이터 입력만으로 순차적으로 동작하는 암호화 모듈을 통해 암호화를 수행할 수 있으므로 암복호화 장치를 보다 소형으로 단순하게 제작할 수 있다.As the encryption / decryption apparatus of the present invention adjusts the strength of encryption by using a plurality of serially connected encryption modules so as to operate sequentially, output data through devices other than the encryption module each time encryption proceeds in a conventionally connected encryption module. Is again inputted into the corresponding encryption module, and the encryption is performed. Since the encryption can be performed through the encryption module that operates sequentially with only one data input without any other device other than the encryption module, the encryption / decryption device is smaller. Can be produced simply.
그리고, 본 발명의 암복호화 장치는 복수의 암호화 모듈 중 사용자의 선택한 암호화 모듈에서 사용자가 카운트 하려는 알고리즘 실행횟수의 실행 시 마다 미리 저장된 저용량의 암호화 알고리즘을 이용하여 암호화를 수행함에 따라 종래 용량이 큰 표준화된 암호화 알고리즘을 반복적으로 사용하여 암호화를 수행했던 것보다 빠르게 암호화를 수행할 수 있다.Further, the encryption / decryption apparatus of the present invention performs standardization using a low-capacity encryption algorithm stored in advance every time the user executes the number of algorithm executions to be counted by the user's selected encryption module among a plurality of encryption modules. It is possible to perform encryption faster than using encryption by repeatedly using the encrypted encryption algorithm.
또한, 본 발명의 암복호화 장치는 저용량의 암호화 알고리즘을 사용하여 암호화 강도를 제어하므로 프로그램 메모리가 적은 MCU(microcontroller unit)가 장착되는 제품 및 하드웨어를 대상하는 하는 가전 제품에서도 암복호화 장치를 적용하여 암호화 강도를 제어할 수 있다.In addition, since the encryption / decryption apparatus of the present invention controls the encryption strength using a low-capacity encryption algorithm, the encryption / decryption apparatus is applied to a home appliance that targets a product and a hardware equipped with a microcontroller unit (MCU) having a small program memory. The intensity can be controlled.
도 1은 본 발명의 실시예에 따른 암복호화 장치를 개략적으로 나타내는 도면이다.
도 2는 본 발명의 실시예에 따른 모듈 선택 신호가 저장된 레지스터의 한 예를 나타내는 도면이다.
도 3은 본 발명의 실시예에 따른 카운트 신호가 저장된 레지스터의 한 예를 나타내는 도면이다.
도 4는 본 발명의 실시예에 따른 암호화를 수행하는 암복호화 장치의 한 예를 개략적으로 나타내는 도면이다.
도 5는 본 발명의 실시예에 따른 암복호화 장치에서 암호화를 수행하는 순서를 나타내는 순서도이다.
도 6은 본 발명의 실시예에 따른 동작 온 그룹에 포함되는 암복호화 모듈에서 미리 저장된 암호화 알고리즘을 이용하여 암호화를 수행하는 방법을 나타내는 순서도이다.1 is a diagram schematically showing an encryption / decryption apparatus according to an embodiment of the present invention.
2 is a diagram illustrating an example of a register in which a module selection signal is stored according to an embodiment of the present invention.
3 is a diagram illustrating an example of a register in which a count signal is stored according to an exemplary embodiment of the present invention.
4 is a diagram schematically showing an example of an encryption / decryption apparatus for performing encryption according to an embodiment of the present invention.
5 is a flowchart illustrating a procedure of performing encryption in an encryption / decryption apparatus according to an embodiment of the present invention.
6 is a flowchart illustrating a method of performing encryption using an encryption algorithm stored in advance in an encryption / decryption module included in an operation on group according to an embodiment of the present invention.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
The present invention will now be described in detail with reference to the accompanying drawings. Hereinafter, a repeated description, a known function that may obscure the gist of the present invention, and a detailed description of the configuration will be omitted. Embodiments of the present invention are provided to more fully describe the present invention to those skilled in the art. Accordingly, the shape and size of elements in the drawings may be exaggerated for clarity.
도 1은 본 발명의 실시예에 따른 암복호화 장치를 개략적으로 나타내는 도면이다. 도 2는 본 발명의 실시예에 따른 모듈 선택 신호가 저장된 레지스터의 한 예를 나타내는 도면이며, 도 3은 본 발명의 실시예에 따른 카운트 신호가 저장된 레지스터의 한 예를 나타내는 도면이다.1 is a diagram schematically showing an encryption / decryption apparatus according to an embodiment of the present invention. 2 is a diagram illustrating an example of a register in which a module selection signal is stored according to an embodiment of the present invention, and FIG. 3 is a diagram illustrating an example of a register in which a count signal is stored according to an embodiment of the present invention.
도 1에 도시한 바와 같이, 본 발명의 실시예에 따른 암복호화 장치(100)는 순차적으로 동작하도록 직렬로 연결된 암복호화 모듈(120a-120n) 중 사용자가 선택한 암복호화 모듈을 동작시키며, 암복호화 모듈에 미리 저장된 하나 이상의 암호화 알고리즘을 번갈아 가며 실행하는 횟수(이하, "실행횟수"라고 함)를 결정하여, 실행횟수에 따른 실행 시 마다 해당 암호화 알고리즘 중 어느 하나를 이용하여 계층적으로 암호화의 강도를 조절한다. As shown in FIG. 1, the encryption /
이러한, 암복호화 장치(100)는 수신부(110), 암복호화부(120), 모듈 제어부(130), 알고리즘 실행 제어부(140) 및 출력부(150)를 포함한다.
The encryption /
수신부(110)는 암호화할 데이터 및 사용자 고유 식별번호를 사용자로부터 전달받는다. 수신부(110)는 암호화할 데이터 및 사용자 고유 식별번호를 암복호화부(140)로 전달한다.The
암복호화부(120)는 수신부(110)로부터 전달된 데이터 및 사용자 고유 식별번호를 전달받으며, 서로 다른 암호화를 수행하기 위해 순차적으로 동작하도록 직렬로 연결되어 있는 n개의 암복호화 모듈(120a-120n)을 포함한다. 암복호화부(120)는 모듈 제어부(130)로부터 전달된 모듈 선택 신호에 기초하여 n개의 암복호화 모듈(120a-120n)을 사용자가 선택한 암복호화 모듈을 포함하는 동작 온 그룹 및 암호화 동작을 수행하지 않는 동작 오프 그룹으로 분류한다. 그리고, 암복호화부(120)는 알고리즘 실행 제어부(140)로부터 전달된 카운트 신호에 기초하여 암복호화 모듈에 저장된 암호화 알고리즘을 실행하는 실행횟수를 결정하며, 데이터 및 사용자 고유 식별번호에 저장된 암호화 알고리즘을 적용하여 계층적으로 암호화한다.The encryption /
구체적으로, 암복호화 모듈(120a-120n)은 사용자가 입력한 모듈 선택 신호(CS)에 기초하여 동작 온 그룹 및 동작 오프 그룹 중 어느 하나에 포함되어 동작할 지가 결정되며, 서로 다른 암호화 기능을 수행한다. 여기서, 모듈 선택 신호(CS)는 동작 온 그룹 및 동작 오프 그룹 중 어느 하나에 포함되어 암호화 동작을 수행할 지를 결정하는 값을 포함하며, 그 값은 도 2에 도시한 바와 같이 각 암복호화 모듈의 개수에 대응하는 레지스터(200)(R11-R1n)에 저장된다. 즉, 사용자의 선택에 따라 모듈 선택 신호(CS)는 임의로 변경 가능하며, 선택된 값에 따라 동작 온 그룹에 포함되는 사용자가 선택하는 암복호화 모듈의 개수를 제어하여 암호화 레벨을 차별화할 수 있다. 본 발명의 실시예에서는 암복호화 모듈을 동작시키기 위한 값을 "1"로 설정하며, 암복호화 모듈을 동작시키지 않는 값을 "0"으로 설정한다.In detail, the encryption /
이러한 암복호화 모듈(120a-120n)은 각각 알고리즘 실행부(121a-121n) 및 결과 전달부(122a-122n)를 포함한다. 본 발명의 실시예에 따른 암복호화 모듈(120a-120n)의 구성 및 기능은 동일하므로 암복호화 모듈(120a)을 이용하여 구성 및 기능에 대하여 구체적으로 설명한다.The encryption /
알고리즘 실행부(121a)는 수신부(110)로부터 전달된 암호화할 데이터 및 사용자 고유 식별번호를 전달받는다. 알고리즘 실행부(121a)는 사용자가 입력한 카운트 신호(LS)에 기초하여 실행횟수를 결정한다. 여기서, 카운트 신호(LS)는 저장된 암호화 알고리즘을 실행하는 실행횟수를 포함하며, 사용자가 선택한 암복호화 모듈마다 별개의 값으로 설정된다. 이러한 실행횟수는 도 3에 도시한 바와 같이 각 암복호화 모듈의 개수에 대응하는 레지스터(300)(R21-R2n)에 저장된다. 즉, 사용자의 선택에 따라 카운트 신호(LS)는 임의로 변경 가능하며, 선택된 실행횟수에 따른 실행 시 마다 저장된 암호화 알고리즘 중 어느 하나를 이용하여 암호화 레벨의 강도를 차별화할 수 있다.The
알고리즘 실행부(121a)는 실행횟수에 따른 실행 시 마다 미리 저장된 암호화 알고리즘 중 어느 하나를 이용하여 암호화를 수행한다. 여기서, 본 발명의 실시예에 따른 미리 저장된 암호화 알고리즘은 종래 암호화에 사용되던 용량이 큰 알고리즘과 달리 프로그램 메모리가 적은 MCU(microcontroller unit)가 장착되는 제품 및 하드웨어를 대상하는 하는 전자 제품에서는 적용할 수 있도록 최적화된 용량을 갖는다.The
예를 들어, 알고리즘 실행부(121a)의 실행횟수가 3회인 경우, 알고리즘 실행부(121a)는 "1회" 반복에서는 하나 이상의 암호화 알고리즘 중 제1 알고리즘을 적용하여 암호화할 데이터와 사용자 고유 식별번호를 연산하고 제1 연산값을 생성한다. 그리고, 알고리즘 실행부(121a)는 "2회" 반복에서는 제1 연산값에 제1 알고리즘과 다른 제2 알고리즘을 적용하여 제2 연산값을 생성한다. 알고리즘 실행부(121a)는 "3회" 반복에서는 제2 연산값에 제1 및 제2 알고리즘과 다른 제3 알고리즘을 적용하여 제3 연산값, 즉 암호화 실행값을 생성한다.For example, when the number of execution times of the
결과 전달부(122a)는 알고리즘 실행부(121a)로부터 암호화 실행값을 전달받는다. 결과 전달부(122a)는 다음 차례의 암복호화 모듈(120b)로 암호화 실행값을 전달한다. 그러면, 암복호화 모듈(120b)는 암복호화 모듈(120a)에서 암호화 실행값을 생성한 것과 같이 모듈 선택 신호(CS) 및 카운트 신호(LS)에 기초하여 암호화를 수행한다.The
동일한 방법으로, 나머지 암복호화 모듈(120c-120n)들 역시 모듈 선택 신호(CS) 및 카운트 신호(LS)에 기초하여 동작여부를 결정하고 암호화를 수행한다.
In the same manner, the remaining encryption /
한편, 모듈 제어부(130)는 사용자가 선택한 암복호화 모듈을 동작시키기 위한 모듈 선택 신호(CS)를 사용자로부터 전달받는다. 모듈 제어부(130)는 계층적 암호화를 위해 암호화할 데이터 및 사용자 고유 식별번호가 암복호화 모듈(120a)로 전달되면 암호화의 수행이 시작된 것으로 판단하여 각 암복호화 모듈(120a-120n)로 모듈 선택 신호(CS)를 전달한다. Meanwhile, the
알고리즘 실행 제어부(140)는 암복호화 모듈(120a-120n)에 미리 저장된 하나 이상의 암호화 알고리즘을 번갈아 가며 실행하기 위한 실행횟수를 결정하기 위해 카운트 신호(LS)를 전달받는다.The algorithm
알고리즘 실행 제어부(140)는 암호화할 데이터 및 사용자 고유 식별번호가 암복호화 모듈(120a)로 전달되면 암호화의 수행이 시작된 것으로 판단하여 각 암복호화 모듈(120a-120n)로 카운트 신호(LS)를 전달한다.When the data to be encrypted and the user identification number are transmitted to the encryption /
본 발명의 실시예에서는 암호화할 데이터 및 사용자 고유 식별번호가 암복호화 모듈(120a)로 전달되면 암호화 동작이 시작된 것으로 판단하였으나, 본 발명은 이에 한정되지 않으며, 암호와 동작의 시작을 알리는 다른 신호가 전달될 수도 있다.In the exemplary embodiment of the present invention, when the data to be encrypted and the user's unique identification number are transmitted to the encryption /
출력부(150)는 암복호화부(120)로부터 사용자의 선택에 따라 암호화 강도가 조절된 최종 암호화 결과값을 전달받는다. 출력부(150)는 최종 최종 암호화 결과값을 출력한다.
The
다음은 본 발명의 실시예에 따른 암복호화 장치에서 암호화를 수행하는 한 예를 구체적으로 설명한다.Next, an example of performing encryption in an encryption / decryption apparatus according to an embodiment of the present invention will be described in detail.
도 4는 본 발명의 실시예에 따른 암호화를 수행하는 암복호화 장치의 한 예를 개략적으로 나타내는 도면이다.4 is a diagram schematically showing an example of an encryption / decryption apparatus for performing encryption according to an embodiment of the present invention.
도 4에서는 이해를 돕기 위해 도 1과 구성은 동일하나 복수의 암복호화 모듈(120a-120n) 중 암복호화 모듈(120a-120c)만 연결되어 있으며, 암복호화 모듈(120b)는 동작 오프 그룹이며, 암복호화 모듈(120a, 120c)는 동작 온 그룹으로 분류된 것으로 가정한다. 이러한 분류를 위해, 사용자는 암복호화 모듈(120a-120d)에 대응하는 값(1/0/1)을 모듈 선택 신호(CS)로 선택하였으며, 알고리즘 실행횟수의 값(3/0/2)을 카운트 신호(LS)로 선택한 것으로 가정한다.In FIG. 4, the configuration is the same as that of FIG. 1, but only the encryption /
모듈 제어부(130)는 사용자로부터 모듈 선택 신호(CS=1/0/1)를 전달받아 그 값을 해당 레지스터(R11=1, R12=0, R13=1)에 저장하고, 해당 암복호화 모듈로 전달한다. 그리고, 알고리즘 실행 제어부(140)는 사용자로부터 카운트 신호(LS=3/0/2)를 전달받아 그 값을 해당 레지스터(R21=3, R22=0, R23=2)에 저장하고, 해당 암복호화 모듈로 전달한다.The
구체적으로, 모듈 제어부(130)는 사용자가 입력한 데이터 및 사용자 고유 식별번호가 암복호화 모듈(120a)로 전달되면, 계층적 암호화의 수행이 시작된 것으로 판단하여 암복호화 모듈(120a)로 레지스터(R11)에 저장된 값(1)을 전달하며, 암복호화 모듈(120b)로 레지스터(R12)에 저장된 값(0)을 전달하며, 암복호화 모듈(120c)로 레지스터(R13)에 저장된 값(1)을 전달한다. 즉, 모듈 선택 신호(CS)의 값으로 "0"이 전달된 암복호화 모듈(120b)은 동작 오프 그룹에 포함되어 암호화를 수행하지 않으며, "1"이 전달된 암복호화 모듈(120a) 및 암복호화 모듈(120c)은 동작 온 그룹에 포함되어 암호화를 수행한다.In detail, when the data input by the user and the user unique identification number are transmitted to the encryption /
알고리즘 실행 제어부(140)는 암호화할 데이터 및 사용자 고유 식별번호가 암복호화 모듈(120a)로 전달되면, 계층적 암호화의 수행이 시작된 것으로 판단하여 암복호화 모듈(120a)로 레지스터(R21)에 저장된 값(3)을 전달하며, 암복호화 모듈(120b)로 레지스터(R22)에 저장된 값(0)을 전달하며, 암복호화 모듈(120c)로 레지스터(R23)에 저장된 값(2)을 전달한다. When the algorithm
이처럼 모듈 제어부(130) 및 알고리즘 실행 제어부(140)로부터 신호가 전달되면, 암복호화 모듈(120a)의 알고리즘 실행부(121a)는 동작 온 그룹이므로, 암호화를 수행하기 위해 "3회"의 실행횟수 중 "1회" 반복에서는 미리 저장된 제1 알고리즘을 적용하여 암호화할 데이터와 사용자 고유 식별번호를 연산하고 제1 연산값을 생성한다. 알고리즘 실행부(121a)는 "2회" 반복에서는 제1 연산값에 제2 알고리즘을 적용하여 제2 연산값을 생성하며, "3회" 반복에서는 제2 연산값에 제3 알고리즘을 적용하여 제3 연산값, 즉 암호화 실행값(Y1)을 생성한다. 알고리즘 실행부(121a)는 암호화 실행값(Y1)을 결과 전달부(122a)로 전달한다. 그러면, 결과 전달부(122a)는 다음 계층의 암복호화 모듈(120b)로 암호화 실행값(Y1)을 전달한다.When the signal is transmitted from the
그러면 다음 암복호화 모듈(120b)은 암호화 실행값(Y1)을 암복호화 모듈(120a)로부터 전달받는다. 암복호화 모듈(120b)은 동작 오프 그룹이므로 암호화 2단계를 수행하지 않는다. 따라서, 암복호화 모듈(120b)는 암복호화 모듈(120a)로부터 전달된 암호화 실행값(Y1) 그대로를 다음 암복호화 모듈(120c)로 전달한다. Then, the
암복호화 모듈(120c)은 암호화 실행값(Y1)을 암복호화 모듈(120b)로부터 전달받는다. 암복호화 모듈(120c)의 알고리즘 실행부(121c)는 동작 온 그룹이므로, 암호화를 수행하기 위해 "2회"의 실행횟수 중 "1회" 반복에서는 미리 저장된 제1 알고리즘을 적용하여 제1 연산값을 생성한다. 알고리즘 실행부(121c)는 "2회" 반복에서는 제1 연산값에 제2 알고리즘을 적용하여 제2 연산값, 즉 암호화 실행값(Y2)을 생성한다. 알고리즘 실행부(121c)는 암호화 실행값(Y2)을 결과 전달부(122c)로 전달한다. 그러면, 결과 전달부(122c)는 암복호화 모듈(120c)이 암복호화부(120)의 마지막 모듈이므로 암호화 실행값(Y2), 즉 최종 암호화 결과값을 출력부(150)로 전달한다.
The encryption /
도 5는 본 발명의 실시예에 따른 암복호화 장치에서 암호화를 수행하는 순서를 나타내는 순서도이다.5 is a flowchart illustrating a procedure of performing encryption in an encryption / decryption apparatus according to an embodiment of the present invention.
도 5를 참고하면, 본 발명의 실시예에 따른 모듈 제어부(130)는 사용자로부터 모듈 선택 신호(CS)를 전달받으며, 알고리즘 실행 제어부(140)는 사용자로부터 카운트 신호(LS)를 전달받는다(S100).Referring to FIG. 5, the
모듈 제어부(130)는 사용자가 입력한 암호화할 데이터 및 사용자 고유 식별번호가 암복호화 모듈(120a)로 전달되면, 계층적 암호화의 수행이 시작된 것으로 판단하여 모듈 선택 신호(CS)를 암복호화부(120)의 각 암복호화 모듈(120a-120n)로 전달한다. 또한, 알고리즘 실행 제어부(140)도 카운트 신호(LS)를 암복호화부(120)의 각 암복호화 모듈(120a-120n)로 전달한다(S110).When the data to be encrypted and the user's unique identification number input by the user are transmitted to the encryption /
암복호화부(120)는 모듈 선택 신호에 기초하여 암복호화 모듈(120a-120n)을 사용자가 선택한 암복호화 모듈을 포함하는 동작 온 그룹 및 암호화 동작을 수행하지 않는 동작 오프 그룹으로 분류한다(S120).The encryption /
암복호화부(120)는 카운트 신호에 기초하여 동작 온 그룹에 포함되는 사용자가 선택한 암복호화 모듈의 실행횟수를 결정한다(S130). 암복호화부(120)는 실행횟수에 따른 실행 시 마다 저장된 암호화 알고리즘 중 어느 하나를 이용하여 암호화를 수행하여 최종 암호화 결과값을 생성한다(S140).
The encryption /
도 6은 본 발명의 실시예에 따른 동작 온 그룹에 포함되는 암복호화 모듈에서 하나 이상의 암호화 알고리즘 중 어느 하나를 이용하여 암호화를 수행하는 방법을 나타내는 순서도이다. 6 is a flowchart illustrating a method of performing encryption using any one or more encryption algorithms in an encryption / decryption module included in an operation on group according to an embodiment of the present invention.
본 발명의 실시예에 따른 순차적으로 동작하도록 직렬로 연결된 암복호화 모듈(120a-120n) 중 암복호화 모듈(120a)이 동작 온 그룹에 포함된 것으로 가정하여 설명한다.It is assumed that the encryption /
도 6에 도시한 바와 같이, 암복호화 모듈(120a)은 카운트 신호(LS)에 기초하여 실행횟수를 결정한다(S200). As shown in FIG. 6, the encryption /
암복호화 모듈(120a)은 미리 저장된 하나 이상의 암호화 알고리즘 중 어느 하나를 적용하여 암호화 연산값을 생성한다(S210). 동작 암복호화 모듈(120a)은 실행횟수가 종료되었는지를 판단한다(S220).The encryption /
S220 단계에서 판단결과 실행횟수가 종료되지 않은 경우, 암복호화 모듈(120a)은 S210 단계로 돌아가 사용되지 않은 하나 이상의 암호화 알고리즘 중 다른 하나를 적용하여 암호화 연산값을 생성한다.If the result of the determination in step S220 is not finished, the encryption /
S220 단계에서 판단결과 실행횟수가 종료된 경우, 암복호화 모듈(120a)은 암호화 실행값을 다음 순차의 암복호화 모듈로 전달한다(S230).
When the number of times of execution is determined in step S220, the encryption /
전술한 바와 같이 본 발명의 실시예에 따른 암복호화 장치는 사용자의 제어에 따라 암호화 알고리즘의 실행횟수에 대응하는 개수의 서로 다른 알고리즘을 적용하여 계층적으로 암호화의 강도를 조절할 수 있으며, 동일한 방법을 반대로 적용하여 복호화를 수생할 수도 있다.
As described above, the encryption / decryption apparatus according to the embodiment of the present invention may control the strength of encryption hierarchically by applying different algorithms corresponding to the number of executions of the encryption algorithm under the control of the user. Conversely, decoding can also be applied.
이와 같이, 본 발명의 실시예에 따른 암복호화 장치는 순차적으로 동작하도록 직렬로 연결된 복수의 암호화 모듈을 이용하여 암호화의 강도를 조절함에 따라 종래 병렬로 연결된 암호화 모듈에서 암호화가 진행될 때마다 암호화 모듈 이외의 다른 장치를 통해 출력 데이터가 다시 해당 암호화 모듈로 입력되어 암호화가 진행되었던 것과 달리, 암호화 모듈 이외의 별도의 다른 장치와 제어 없이 최초 한번의 데이터 입력만으로 순차적으로 동작하는 암호화 모듈을 통해 암호화를 수행할 수 있으므로 암복호화 장치를 보다 소형으로 단순하게 제작할 수 있다.As described above, the encryption / decryption apparatus according to the embodiment of the present invention controls the strength of encryption by using a plurality of serially connected encryption modules to operate sequentially. Unlike the output data is input again through the other encryption module to the corresponding encryption module and the encryption is in progress, encryption is performed through the encryption module which operates sequentially with only one data input without control with another device other than the encryption module. As a result, the encryption / decryption apparatus can be made more compact and simple.
그리고, 본 발명의 암복호화 장치는 복수의 암호화 모듈 중 사용자의 선택한 암호화 모듈에서 사용자가 카운트 하려는 알고리즘 실행횟수마다 미리 저장된 저용량의 하나 이상의 암호화 알고리즘을 이용하여 암호화를 수행함에 따라 종래 용량이 큰 표준화된 암호화 알고리즘을 반복적으로 사용하여 암호화를 수행했던 것보다 빠르게 암호화를 수행할 수 있다.In addition, the encryption / decryption apparatus of the present invention performs standardization by using one or more encryption algorithms of low capacity stored in advance for every number of algorithm executions that the user wants to count in a user's selected encryption module among a plurality of encryption modules. By using encryption algorithms repeatedly, you can perform encryption faster than you did.
또한, 본 발명의 암복호화 장치는 저용량의 암호화 알고리즘을 사용하여 암호화 강도를 제어하므로 프로그램 메모리가 적은 MCU(microcontroller unit)가 장착되는 제품 및 하드웨어를 대상하는 하는 가전 제품에서도 암복호화 장치를 적용하여 암호화 강도를 제어할 수 있다.
In addition, since the encryption / decryption apparatus of the present invention controls the encryption strength using a low-capacity encryption algorithm, the encryption / decryption apparatus is applied to a home appliance that targets a product and a hardware equipped with a microcontroller unit (MCU) having a small program memory. The intensity can be controlled.
이상에서와 같이 도면과 명세서에서 최적의 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로, 본 기술 분야의 통상의 지식을 가진자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.As described above, an optimal embodiment has been disclosed in the drawings and specification. Although specific terms have been employed herein, they are used for purposes of illustration only and are not intended to limit the scope of the invention as defined in the claims or the claims. Therefore, those skilled in the art will understand that various modifications and equivalent other embodiments are possible from this. Accordingly, the true scope of the present invention should be determined by the technical idea of the appended claims.
100: 암복호화 장치
110: 수신부
120: 암복호화부
130: 모듈 제어부
140: 알고리즘 실행 제어부
150: 출력부100: encryption and decryption device
110:
120: encryption and decryption department
130: module control unit
140: algorithm execution control unit
150: output unit
Claims (16)
상기 선택된 암복호화 모듈에 저장된 하나 이상의 암호화 알고리즘의 실행횟수를 결정하기 위한 신호로서, 상기 선택된 암복호화 모듈마다 별개로 설정 가능한 카운트 신호를 상기 사용자로부터 수신하여 전달하는 알고리즘 실행 제어부; 및
상기 직렬로 연결된 n개의 암복호화 모듈을 포함하며, 상기 모듈 제어부로부터 전달된 모듈 선택 신호에 기초하여 상기 n개의 암복호화 모듈을 상기 선택된 암복호화 모듈을 포함하는 동작 온 그룹 및 암호화 동작을 수행하지 않는 동작 오프 그룹으로 분류하며, 상기 알고리즘 실행 제어부로부터 전달된 카운트 신호에 기초하여 결정한 실행횟수에 따른 실행 시 마다 상기 저장된 암호화 알고리즘 중 어느 하나를 이용하여 암호화를 수행하는 암복호화부를 포함하며,
상기 n개의 암복호화 모듈은 각각 암호화를 수행하기 위한 암호화 알고리즘을 미리 저장하고, 상기 선택된 암복호화 모듈은 각각 상기 저장된 암호화 알고리즘을 이용하여 암호화 실행값을 생성하며,
상기 n개의 암복호화 모듈 중 i번째 암복호화 모듈이 동작 오프 그룹에 속하는 경우,
상기 i번째 암복호화 모듈은,
상기 암호화 실행값을 이용하여 암호화를 수행하지 않고 다음에 연결된 (i+1)번째 암복호화 모듈로 상기 암호화 실행값을 전달하는 것을 특징으로 하는 암복호화 장치.A module control unit for receiving and transmitting a module selection signal for operating an encryption / decoding module selected by a user from among n encryption / decoding modules serially connected to operate sequentially;
An algorithm execution controller configured to receive and transmit a count signal separately settable for each selected encryption / decryption module from the user as a signal for determining the number of executions of one or more encryption algorithms stored in the selected encryption / decryption module; And
And the n encryption / decryption modules connected in series, wherein the n encryption / decryption modules do not perform an operation on group including the selected encryption / decryption module based on a module selection signal transmitted from the module controller. An encryption and decryption unit classified into an operation off group and performing encryption using any one of the stored encryption algorithms at each execution according to the execution frequency determined based on the count signal transmitted from the algorithm execution control unit.
The n encryption / decryption modules respectively store an encryption algorithm for performing encryption in advance, and each of the selected encryption / decryption modules generates an encryption execution value using the stored encryption algorithm.
If the i-th decryption module of the n decryption module belongs to the operation off group,
The i-th encryption and decryption module,
And encrypting the encryption execution value to the next (i + 1) th encryption / decryption module connected without performing encryption using the encryption execution value.
상기 사용자로부터 암호화할 데이터 및 상기 사용자의 고유 식별번호를 수신하여 상기 암복호화부로 전달하는 수신부를 더 포함하는 것을 특징으로 하는 암복호화 장치.The method according to claim 1,
And a receiver configured to receive data to be encrypted from the user and a unique identification number of the user and transmit the received data to the encryption / decryption unit.
상기 암복호화부는,
상기 데이터 및 상기 사용자의 고유 식별번호를 상기 동작 온 그룹 및 상기 동작 오프 그룹을 통해 암호화하여 최종 암호화 결과값을 생성하는 것을 특징으로 하는 암복호화 장치.The method according to claim 2,
The encryption and decryption unit,
And encrypting the data and the unique identification number of the user through the operation on group and the operation off group to generate a final encryption result.
상기 암복호화부로부터 상기 최종 암호화 결과값을 전달받아 출력하는 출력부를 더 포함하는 것을 특징으로 하는 암복호화 장치.The method according to claim 3,
And an output unit for receiving and outputting the final encryption result from the encryption / decryption unit.
상기 n개의 암복호화 모듈은,
상기 모듈 선택 신호에 기초하여 상기 동작 온 그룹 또는 상기 동작 오프 그룹 중 어느 하나에 포함되어 동작할 지를 결정하여 상기 암호화 실행값을 생성하는 알고리즘 실행부; 및
상기 알고리즘 실행부로부터 상기 암호화 실행값을 전달받는 결과 전달부를 더 포함하는 것을 특징으로 하는 암복호화 장치.The method according to claim 1,
The n encryption and decryption modules,
An algorithm execution unit configured to determine whether to operate in one of the operation on group or the operation off group based on the module selection signal to generate the encryption execution value; And
And a result transfer unit for receiving the encryption execution value from the algorithm execution unit.
상기 알고리즘 실행부는,
상기 동작 온 그룹에 포함되는 경우, 상기 실행횟수에 따른 실행 시 마다 상기 저장된 암호화 알고리즘 중 어느 하나를 이용하여 상기 암호화 실행값을 생성하는 것을 특징으로 하는 암복호화 장치.The method according to claim 8,
The algorithm execution unit,
When included in the operation on group, the encryption and decryption apparatus for generating the encryption execution value using any one of the stored encryption algorithm for each execution according to the number of executions.
상기 모듈 제어부로부터 전달된 상기 모듈 선택 신호에 기초하여 상기 n개의 암복호화 모듈을 상기 선택된 암복호화 모듈을 포함하는 동작 온 그룹 및 암호화 동작을 수행하지 않는 동작 오프 그룹으로 분류하는 단계;
상기 알고리즘 실행 제어부로부터 전달된 상기 선택된 암복호화 모듈마다 별개로 설정 가능한 상기 카운트 신호에 기초하여 상기 실행횟수를 결정하는 단계; 및
상기 실행횟수에 따른 실행 시 마다 상기 저장된 암호화 알고리즘을 이용하여 순차적으로 암호화를 수행하는 단계를 포함하며,
상기 n개의 암복호화 모듈은 각각 암호화를 수행하기 위한 암호화 알고리즘을 미리 저장하고,
상기 암호화를 수행하는 단계는,
상기 선택된 암복호화 모듈이 각각 상기 저장된 암호화 알고리즘을 이용하여 암호화 실행값을 생성하는 단계를 더 포함하며,
상기 n개의 암복호화 모듈 중 i번째 암복호화 모듈이 동작 오프 그룹에 속하는 경우, 상기 암호화를 수행하는 단계는,
상기 암호화 실행값이 상기 i번째 암복호화 모듈로 전달되는 단계; 및
상기 i번째 암복호화 모듈에서 상기 암호화 실행값을 이용하여 암호화를 수행하지 않고 다음에 연결된 (i+1)번째 암복호화 모듈로 상기 암호화 실행값을 전달하는 것을 특징으로 하는 암복호화 방법.Determining the number of execution times to execute the stored encryption algorithm, the module control unit for transmitting the module selection signal for operating the encryption module selected by the user of the n encryption and decryption modules serially connected to operate sequentially Claims [1] A method for performing encryption in an encryption / decryption apparatus comprising an algorithm execution control unit for transmitting a count signal for performing the step.
Classifying the n encryption / decryption modules into an operation on group including the selected encryption / decryption module and an operation off group that does not perform an encryption operation based on the module selection signal transmitted from the module controller;
Determining the number of executions based on the count signal that can be set separately for each of the selected encryption / decryption modules transmitted from the algorithm execution control unit; And
Performing encryption sequentially using the stored encryption algorithm each time the execution is performed according to the number of executions,
The n encryption / decryption modules previously store encryption algorithms for performing encryption, respectively.
Performing the encryption,
Generating, by the selected encryption / decryption module, an encryption execution value using the stored encryption algorithm, respectively;
If an i-th decryption module of the n encryption / decryption modules belongs to an operation off group, the performing of the encryption may include:
Passing the encryption execution value to the i th encryption / decryption module; And
And the i-th encryption / decryption module transfers the encryption execution value to the next (i + 1) th encryption / decryption module connected next without performing encryption using the encryption execution value.
상기 사용자로부터 암호화할 데이터 및 상기 사용자의 고유 식별번호를 수신하는 단계를 더 포함하는 것을 특징으로 하는 암복호화 방법.The method of claim 10,
And receiving data to be encrypted from the user and a unique identification number of the user.
상기 데이터 및 상기 사용자의 고유 식별번호를 상기 동작 온 그룹 및 상기 동작 오프 그룹을 통해 암호화하여 최종 암호화 결과값을 생성하는 것을 특징으로 하는 암복호화 방법.The method of claim 11,
And encrypting the data and the unique identification number of the user through the operation on group and the operation off group to generate a final encryption result.
상기 암호화를 수행하는 단계는,
상기 최종 암호화 결과값을 전달받아 출력하는 단계를 더 포함하는 것을 특징으로 하는 암복호화 방법.The method of claim 12,
Performing the encryption,
And receiving and outputting the final encryption result value.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110041072A KR101224021B1 (en) | 2011-04-29 | 2011-04-29 | Encryption and decryption apparatus and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110041072A KR101224021B1 (en) | 2011-04-29 | 2011-04-29 | Encryption and decryption apparatus and method |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120122737A KR20120122737A (en) | 2012-11-07 |
KR101224021B1 true KR101224021B1 (en) | 2013-01-21 |
Family
ID=47508952
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110041072A KR101224021B1 (en) | 2011-04-29 | 2011-04-29 | Encryption and decryption apparatus and method |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101224021B1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1074044A (en) * | 1996-04-16 | 1998-03-17 | Vlsi Technol Inc | Method for encoding digital data and apparatus therefor |
KR20040093185A (en) * | 2002-03-29 | 2004-11-04 | 가부시키가이샤 엔티아이 | Communication device |
JP2008199572A (en) * | 2007-01-15 | 2008-08-28 | Matsushita Electric Ind Co Ltd | Confidential information processing apparatus, confidential information processing device, and confidential information processing method |
KR20090131696A (en) * | 2008-06-19 | 2009-12-30 | 삼성전자주식회사 | Enc/decryption device and security storage device including the same |
-
2011
- 2011-04-29 KR KR1020110041072A patent/KR101224021B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1074044A (en) * | 1996-04-16 | 1998-03-17 | Vlsi Technol Inc | Method for encoding digital data and apparatus therefor |
KR20040093185A (en) * | 2002-03-29 | 2004-11-04 | 가부시키가이샤 엔티아이 | Communication device |
JP2008199572A (en) * | 2007-01-15 | 2008-08-28 | Matsushita Electric Ind Co Ltd | Confidential information processing apparatus, confidential information processing device, and confidential information processing method |
KR20090131696A (en) * | 2008-06-19 | 2009-12-30 | 삼성전자주식회사 | Enc/decryption device and security storage device including the same |
Also Published As
Publication number | Publication date |
---|---|
KR20120122737A (en) | 2012-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200382274A1 (en) | Secure Analytics Using an Encrypted Analytics Matrix | |
US8789196B2 (en) | System and method for providing content protection of linearly consumed content with a bidirectional protocol for license acquisition | |
US20180212775A1 (en) | Secure Analytics Using Homomorphic and Injective Format-Preserving Encryption | |
US20100146137A1 (en) | Synchronizing Buffer Map Offset in Peer-to-Peer Live Media Streaming Systems | |
KR102079626B1 (en) | System for hiding information using lightweight mutual authentication based on biometric in mobile environment, method thereof and computer recordable medium storing program to perform the method | |
US7903820B2 (en) | Key production system | |
US20160087792A1 (en) | Techniques for distributing secret shares | |
US9118441B2 (en) | Layout-optimized random mask distribution system and method | |
US20080084995A1 (en) | Method and system for variable and changing keys in a code encryption system | |
US20140064490A1 (en) | Management of encryption keys for broadcast encryption and transmission of messages using broadcast encryption | |
US10491374B2 (en) | Apparatus and method for encryption | |
US8879733B2 (en) | Random bit stream generator with guaranteed minimum period | |
US20210026603A1 (en) | Random Number Generator and Method of Generating Output Random Number | |
US11328097B2 (en) | Encryption circuit for performing virtual encryption operations | |
CN106034021B (en) | Lightweight dual-mode compatible AES encryption and decryption module and method thereof | |
CN105357003B (en) | Data encryption method and device | |
US20210284703A1 (en) | Encryption device and operation method thereof | |
CN102696038A (en) | Storage device and method for providing a scalable content protection system | |
KR20110054067A (en) | Method to enforce by a management center the access rules for a broadcast product | |
WO2008154230A2 (en) | Method and apparatus for expansion key generation for block ciphers | |
EP3127271B1 (en) | Obfuscated performance of a predetermined function | |
US20180097630A1 (en) | Techniques for secure authentication | |
US9537655B2 (en) | Random number generating device, cipher processing device, storage device, and information processing system | |
US10289831B2 (en) | Display driver integrated circuit for certifying an application processor and a mobile apparatus having the same | |
US20220029782A1 (en) | Apparatus and method for processing non-polynomial operation on encrypted messages |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20160111 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20161222 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20171213 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20190114 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20200204 Year of fee payment: 8 |