KR100365256B1 - Method for the encryption and verification of control code data, and the remotecontroller system therefor - Google Patents

Method for the encryption and verification of control code data, and the remotecontroller system therefor Download PDF

Info

Publication number
KR100365256B1
KR100365256B1 KR1020000070518A KR20000070518A KR100365256B1 KR 100365256 B1 KR100365256 B1 KR 100365256B1 KR 1020000070518 A KR1020000070518 A KR 1020000070518A KR 20000070518 A KR20000070518 A KR 20000070518A KR 100365256 B1 KR100365256 B1 KR 100365256B1
Authority
KR
South Korea
Prior art keywords
data
code
counter
control code
control
Prior art date
Application number
KR1020000070518A
Other languages
Korean (ko)
Other versions
KR20020040463A (en
Inventor
하재홍
Original Assignee
주식회사 아이레보
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 아이레보 filed Critical 주식회사 아이레보
Priority to KR1020000070518A priority Critical patent/KR100365256B1/en
Publication of KR20020040463A publication Critical patent/KR20020040463A/en
Application granted granted Critical
Publication of KR100365256B1 publication Critical patent/KR100365256B1/en

Links

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C23/00Non-electrical signal transmission systems, e.g. optical systems
    • G08C23/04Non-electrical signal transmission systems, e.g. optical systems using light waves, e.g. infrared
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q9/00Arrangements in telecontrol or telemetry systems for selectively calling a substation from a main station, in which substation desired apparatus is selected for applying a control signal thereto or for obtaining measured values therefrom
    • H04Q9/14Calling by using pulses
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C2201/00Transmission systems of control signals via wireless link
    • G08C2201/60Security, fault tolerance
    • G08C2201/61Password, biometric

Abstract

본 발명은 데이터를 암호화하여 전송함으로써, 불순한 의도에 의한 데이터의 복제를 방지하는 데이터 암호화 방법에 관한 것이다. 본 발명의 방법은 암호화될 데이터를 특정한 등록 코드에 의해 선택되는 연산 동작에 따라 연산 값에 연산하고, 디스크램블함으로써, 암호화된 데이터를 생성한다.The present invention relates to a data encryption method which prevents duplication of data due to impure intention by encrypting and transmitting data. The method of the present invention computes the data to be encrypted to an operation value according to an operation operation selected by a specific registration code, and descrambles the data to generate encrypted data.

또한, 본 발명은 상술한 방법을 이용하여 리모콘에서 제어 코드 데이터를 암호화하여 메인 장치로 전송하고, 메인 장치에서 암호화된 제어 코드 데이터를 리모콘에서 수행된 방식과 동일한 방식으로 암호화하여 리모콘에서 전송된 제어 코드 데이터를 인증하는 리모콘 시스템을 개시한다.In addition, the present invention encrypts the control code data from the remote control using the above-described method and transmits the control code data to the main device, the control code transmitted from the remote control by encrypting the control code data encrypted in the main device in the same manner as that performed on the remote control A remote control system for authenticating code data is disclosed.

따라서, 보안이 요구되는 장소 등에서 본 발명을 이용함으로써, 불순한 의도의 제어 코드 데이터의 복제에 대한 피해를 사전에 방지할 수 있다.Therefore, by using the present invention in a place where security is required, it is possible to prevent damage to the copying of control code data of an intentional purpose in advance.

Description

제어 코드 데이터의 암호화 및 인증 방법, 및 이를 이용한 리모콘 시스템{METHOD FOR THE ENCRYPTION AND VERIFICATION OF CONTROL CODE DATA, AND THE REMOTECONTROLLER SYSTEM THEREFOR}TECHNICAL FOR THE ENCRYPTION AND VERIFICATION OF CONTROL CODE DATA, AND THE REMOTECONTROLLER SYSTEM THEREFOR}

본 발명은 리모콘 시스템에 관한 것으로, 보다 상세하게는 리모콘 데이터 송신 장치에서 생성된 제어 코드 데이터를 암호화하여 전송하고, 메인 장치에서 암호화된 제어 코드 데이터를 복호화하는 방법과, 이를 이용하는 리모콘 시스템에 관한 것이다.The present invention relates to a remote control system, and more particularly, to a method of encrypting and transmitting control code data generated by a remote control data transmission apparatus, and to decrypt control code data encrypted by a main apparatus, and a remote control system using the same. .

본 기술분야에서 널리 알려져 있는 바와 같이, 리모콘 시스템은 무선 주파(radio frequency) 또는 적외선(IR)을 이용하는 무선 데이터 통신을 통하여 리모콘 장치로부터 제어 코드를 전송하여 메인 장치를 제어하는 방식으로 사용되고 있다. 이러한 제어 방식은 대개의 경우 헤더(header), 상태 코드(status code), 데이터(data) 및 체크 섬(check sum) 등의 네 개의 부분으로 구성되어 있는 데이터 포맷을 전송함으로써 메인 장치를 제어하는 고정 코드 방식이 주로 사용되고 있다.As is well known in the art, a remote control system is used in a manner of controlling a main device by transmitting a control code from a remote control device through wireless data communication using radio frequency or infrared (IR). This control method is usually fixed to control the main unit by transmitting a data format consisting of four parts: header, status code, data and check sum. The code method is mainly used.

그러나, 고정 코드 방식은 외부에서 불순한 의도를 가진자에게 복제될 우려가 크다는 단점이 있다.However, the fixed code method has a disadvantage in that there is a high possibility that it is duplicated to those with impure intentions from the outside.

이를 방지하기 위하여, 쌍방 통신을 이용하여 리모콘에서 생성된 제어 코드 데이터를 전송하는 방식이 제안되어 있다. 이 방식은 송신 측과 수신 측에서 서로 정해진 규칙에 따라 쌍방향으로 데이터를 주고 받는 방식, 예로, 퀴즈 방식으로 송신 측에서 인코딩하여 보내준 데이터를 수신 측에서 디코딩하여 다시 송신측으로 전송하여 데이터의 일치성을 확인하는 방식으로 데이터 통신을 수행하고 있다.In order to prevent this, a method of transmitting control code data generated by a remote controller using two-way communication has been proposed. In this method, data is sent and received in both directions according to a rule defined by a transmitting side and a receiving side. For example, the data encoded and transmitted by the transmitting side in a quiz method is decoded on the receiving side and transmitted back to the transmitting side to ensure consistency of data. Data communication is performed by checking.

그러나, 이러한 퀴즈 방식은 인코딩과 디코딩 과정이 항시 정해진 규칙에 따라 이루어지기 때문에, 이 규칙이 노출되는 경우에는 제어 코드의 복제 우려가 있다는 문제가 있다.However, since this quiz method is always performed according to a predetermined rule, the encoding and decoding process, there is a problem that there is a fear that the control code is duplicated when this rule is exposed.

리모콘에서 생성된 제어 코드의 복제를 방지하는 또 다른 방식으로 한 번 사용된 코드는 재사용하지 않는 롤링(rolling) 방식이 있다. 롤링 방식에 의해 생성된 롤링 코드는 일정한 값으로 증분 또는 감분되어 생성되며, 이전에 사용된 코드와 같은 값일 때는 재사용하지 않는다. 이 방식에 있어서, 송신측에서는 커스톰 코드에 가변가능한 롤링 코드를 첨부하여 수신측으로 전송하며, 수신측에서는 자체적으로 생성된 롤링 코드가 송신측에서 전송된 롤링 코드와 일치하는 가를 판별하여 제어 코드의 복제 여부를 판단한다.Another way to prevent duplication of control codes generated in the remote control is to roll a code that is not reused. The rolling code generated by the rolling method is generated by incrementing or decrementing it to a constant value and is not reused when the rolling code is the same as the previously used code. In this scheme, the transmitting side attaches a variable rolling code to the custom code and transmits it to the receiving side, and the receiving side determines whether the generated rolling code matches the rolling code transmitted from the transmitting side and whether the control code is duplicated. Judge.

그러나, 상술한 롤링 방식 역시 일정한 증분 또는 감분의 변화량이 누출되는 경우에는 강력한 보호 방법이 될 수 없다는 문제가 있다.However, the above-described rolling method also has a problem in that it cannot be a powerful protection method when a certain increment or change in change is leaked.

그러므로, 본 발명은 외부의 불순한 의도를 가진 자에게 복제가 불가능하도록 데이터를 암호화하는 방법을 제공하는 것을 그 목적으로 한다.Therefore, an object of the present invention is to provide a method for encrypting data such that it is impossible to duplicate to a person with an external impure intention.

본 발명의 다른 목적은 송신측에서 리모콘 데이터를 암호화하여 전송하고, 수신측에서 암호화된 리모콘 데이터를 인증하는 방법 및 시스템을 제공하는 것을 그 목적으로 한다.Another object of the present invention is to provide a method and system for encrypting and transmitting remote control data at a transmitting side and authenticating encrypted remote control data at a receiving side.

상술한 목적을 달성하기 위한 본 발명의 일 실시예에 따르면, 데이터를 암호화하는 방법이 제공되며, 본 방법은: 복수개의 연산 동작과 상기 연산동작에 사용될 복수개의 연산 값을 룩업 테이블 메모리내에 설정 등록시키는 단계; 상기 데이터의 암호화를 위한 기설정 길이의 등록 코드를 생성하여 등록 코드 저장 메모리내에 설정 등록하는 단계로서, 상기 등록 코드는 제 1 및 제 2의 프라이베이트 코드를 구비하며; 제 1 랜덤 데이터와 제 1 카운터 데이터를 상기 암호화될 데이터로서 생성하는 단계; 상기 룩업 테이블 메모리로부터 상기 제 1 프라이베이트 코드와 연관된 연산 동작과 연산 값을 선택하는 단계; 상기 제 1 랜덤 데이터와 상기 선택된 연산 값을 상기 선택된 연산 동작에 따라 연산하여 상기 제 1 랜덤 데이터로부터 암호화된 제 2 랜덤 데이터를 생성하는 단계; 상기 룩업 테이블 메모리로부터 상기 제 2 프라이베이트 코드와 연관된 연산 동작과 연산 값을 각기 선택하는 단계; 상기 제 1 카운터 데이터와 상기 선택된 연산 값을 상기 선택된 연산 동작에 따라 연산하여 상기 제 1 카운터 데이터로부터 암호화된 제 2 카운터 데이터를 생성함으로써, 상기 제 1 및 제 2 랜덤 데이터와 상기 제 1 및 제 2 카운터 데이터로 구성된 일련의 암호화된 데이터로서 생성하는 단계를 포함하는 것을 특징으로 한다.According to one embodiment of the present invention for achieving the above object, there is provided a method for encrypting data, the method comprising: registering a plurality of operation operations and a plurality of operation values to be used in the operation operation in a look-up table memory Making a step; Generating a registration code of a preset length for encryption of the data and setting registration in a registration code storage memory, the registration code having first and second private codes; Generating first random data and first counter data as the data to be encrypted; Selecting an operation operation and an operation value associated with the first private code from the lookup table memory; Generating encrypted second random data from the first random data by calculating the first random data and the selected operation value according to the selected operation operation; Respectively selecting an operation operation and an operation value associated with the second private code from the lookup table memory; The first counter data and the selected operation value are calculated according to the selected operation to generate encrypted second counter data from the first counter data, thereby generating the first and second random data and the first and second data. Generating as a series of encrypted data consisting of counter data.

본 발명의 다른 실시예에 따르면, 송신 장치에서 생성된 제어 코드 데이터의 복제를 방지하기 위하여 상기 제어 코드 데이터를 암호화하여 전송하고, 상기 제어 코드 데이터에 의해 제어되는 수신 장치에서 상기 전송된 암호 제어 코드 데이터를 복호화하는 방법이 제공되며, 본 방법은: 상기 송신 장치와 상기 수신 장치에서, 상기 제어 코드 데이터의 암호화에 사용되는 연산 값과 연산 동작이 약정된 룩업테이블을 룩업 테이블 메모리내에 각기 저장하는 단계; 상기 제어 코드 데이터의 암호화를 위한 기설정 길이의 등록 코드를 등록 코드 저장 메모리에 저장하는 단계로서, 상기 등록 코드는 제 1 및 제 2의 프라이베이트 코드를 구비하며; 상기 등록 코드의 복사본을 상기 수신 장치로 제공하는 단계; 상기 암호화될 데이터로서 제 1의 랜덤 데이터와 제 1 카운터 데이터를 생성하는 단계; 상기 룩업 테이블 메모리로부터 상기 제 1 프라이베이트 코드와 연관된 연산 동작과 연산 값을 선택하는 단계; 상기 제 1 프라이베이트 코드에 의해 선택된 연산 동작에 따라 상기 연산 값을 상기 제 1 랜덤 데이터에 연산하여 상기 제 1 랜덤 데이터로부터 변환된 제 2 랜덤 데이터를 생성하는 단계; 상기 룩업 테이블 메모리로부터 상기 제 2 프라이베이트 코드와 연관된 연산 동작과 연산 값을 선택하는 단계; 상기 제 2 프라이베이트 코드에 의해 선택된 연산 동작에 따라 상기 연산 값을 상기 제 1 카운터 데이터에 연산하여 상기 제 1 카운터 데이터로부터 변환된 제 2 카운터 데이터를 생성하는 단계; 상기 제 1 및 제 2 랜덤 데이터와 상기 제 1 및 제 2 카운터 데이터를 일련의 암호 제어 코드 데이터의 포맷으로 상기 수신 장치로 전송하는 단계; 상기 수신 장치에서, 상기 송신 장치로부터 전송된 암호 제어 코드 데이터를 수신하는 단계; 상기 송신 장치로부터 제공된 등록 코드의 제 1 및 제 2 프라이베이트 코드와 상기 룩업 테이블을 이용하여, 상기 송신 장치로부터 수신된 암호 제어 코드 데이터의 제 1 랜덤 데이터와 제 1 카운터 데이터를 상기 수신 장치에서와 동일한 방식으로 암호화하여 제 2 랜덤 데이터와 제 2 카운터 데이터를 생성하는 단계; 상기 생성된 제 2 랜덤 데이터와 제 2 카운터 데이터가 상기 송신 장치로부터 수신된 제 2 랜덤데이터와 제 2 카운터 데이터와 동일한 지를 비교함으로써, 상기 전송된 암호 제어 코드 데이터를 인증하는 단계를 포함하는 것을 특징으로 한다.According to another embodiment of the present invention, in order to prevent duplication of control code data generated in a transmitting apparatus, the control code data is encrypted and transmitted, and the transmitted encryption control code in a receiving apparatus controlled by the control code data. A method of decrypting data is provided, and the method comprises: storing, at the transmitting apparatus and the receiving apparatus, a lookup table in which arithmetic values and arithmetic operations to which the control code data is encrypted are stored in a lookup table memory, respectively. ; Storing a registration code of a preset length for encryption of the control code data in a registration code storage memory, the registration code having first and second private codes; Providing a copy of the registration code to the receiving device; Generating first random data and first counter data as the data to be encrypted; Selecting an operation operation and an operation value associated with the first private code from the lookup table memory; Generating the second random data converted from the first random data by calculating the operation value to the first random data according to a calculation operation selected by the first private code; Selecting an operation operation and an operation value associated with the second private code from the lookup table memory; Generating the second counter data converted from the first counter data by calculating the operation value to the first counter data according to the operation selected by the second private code; Transmitting the first and second random data and the first and second counter data to the receiving device in a format of a series of cryptographic control code data; Receiving, at the receiving device, cryptographic control code data transmitted from the transmitting device; Using the first and second private codes of the registration code provided from the transmitting device and the lookup table, the first random data and the first counter data of the encryption control code data received from the transmitting device and the receiving device; Encrypting in the same manner to generate second random data and second counter data; Authenticating the transmitted encryption control code data by comparing whether the generated second random data and the second counter data are the same as the second random data and the second counter data received from the transmitting apparatus. It is done.

본 발명의 또 다른 실시예에 따르면, 상술한 암호화 방법을 이용하는 리모콘과 메인 장치로 구성된 리모콘 시스템이 제공된다. 본 발명의 리모콘 시스템에 있어서, 상기 리모콘은: 제 1 및 제 2 프라이베이트 코드를 구비하는 등록 코드가 저장된 제 1 등록 코드 저장부와; 복수개의 연산 값과 논리적 연산 동작이 맵핑되어 저장된 제 1 룩업 테이블 저장부와; 하나의 등록 키와 다수의 동작 제어 키로 구성된 키 조작부; 상기 등록 키의 선택에 응답하여, 상기 등록 코드 저장부내에 저장된 등록 코드를 상기 메인 장치로 제공하고, 각각의 동작 제어 키의 선택에 따라 상기 메인 장치에 제공되는 일련의 암호 제어 코드 데이터를 생성하는 제 1 제어부를 구비하며; 상기 암호 제어 코드 데이터는 제 1 랜덤 데이터, 제 1 카운터 데이터, 상기 제 1 랜덤 데이터로부터 변환된 제 2 랜덤 데이터, 상기 제 1 카운터 데이터로부터 변환된 제 2 카운터 데이터 및 동작 제어 코드를 구비하며, 상기 제 2 랜덤 데이터는 상기 제 1 룩업 테이블 저장부로부터 상기 제 1 프라이베이트 코드와 연관된 연산 동작에 따라 그에 대응하는 연산 값이 상기 제 1 랜덤 데이터에 연산되어 생성되고, 상기 제 2 카운터 데이터는 상기 제 1 룩업 테이블 메모리로부터 상기 제 2 프라이베이트 코드와 연관된 연산 동작에 따라 그에 대응하는 연산 값이 상기 제 1 카운터 데이터에 연산하여 생성되며; 상기 제 1 제어부에 의해 생성된 암호 제어 코드 데이터를 변조하여 무선으로 상기 메인 장치로 전송하는 변조 수단을 포함하며;According to another embodiment of the present invention, there is provided a remote control system comprising a remote control and a main device using the above-described encryption method. In the remote control system of the present invention, the remote control includes: a first registration code storage unit storing a registration code having first and second private codes; A first lookup table storage unit in which a plurality of operation values and logical operation operations are mapped and stored; A key operation unit comprising one registration key and a plurality of operation control keys; In response to the selection of the registration key, providing a registration code stored in the registration code storage to the main device, and generating a series of cipher control code data provided to the main device according to selection of each operation control key. A first control unit; The cryptographic control code data includes first random data, first counter data, second random data converted from the first random data, second counter data converted from the first counter data, and an operation control code. The second random data is generated by calculating an operation value corresponding to the first random data from the first lookup table storage unit according to an operation associated with the first private code, and the second counter data is generated by the first lookup table storage unit. An arithmetic value corresponding to the arithmetic operation associated with the second private code is generated by operation on the first counter data from a first lookup table memory; Modulating means for modulating cryptographic control code data generated by said first control unit and transmitting it wirelessly to said main device;

상기 메인 장치는: 상기 리모콘으로부터 제공된 복사본의 등록 코드가 저장된 제 2 등록 코드 저장부와; 상기 리모콘과 동일한 복수개의 연산 값과 논리적 연산 동작이 맵핑되어 저장된 제 2 룩업 테이블 저장부와; 상기 리모콘으로부터 전송된 암호 제어 코드 데이터를 복조하는 복조 수단과; 상기 복조된 암호 코드 데이터의 제 1 랜덤 데이터와 제 1 카운터 데이터를 상기 리모콘에서와 동일한 방식으로 상기 복사본의 등록 코드를 이용하여 암호화하는 제 2 제어부를 포함하는 것을 특징으로 한다.The main apparatus includes: a second registration code storage unit storing a registration code of a copy provided from the remote controller; A second lookup table storage unit configured to map a plurality of arithmetic values and logical operation operations identical to those of the remote controller; Demodulation means for demodulating cryptographic control code data transmitted from said remote control; And a second control unit for encrypting the first random data and the first counter data of the demodulated encryption code data using the registration code of the copy in the same manner as that of the remote controller.

도 1은 본 발명에 따라서 전송 장치와 수신 장치로 구성된 리모콘 시스템의 블록 구성도,1 is a block diagram of a remote control system composed of a transmitter and a receiver according to the present invention;

도 2a, 도 2b 및 도 2c는 도 2a 및 도 2b에는 송신 장치에서 수신 장치로 전송되는 제어 코드 데이터 스트림의 포맷,2A, 2B and 2C show the format of the control code data stream transmitted from the transmitting apparatus to the receiving apparatus in FIGS.

도 3은 본 발명의 프라이베이트 코드에 의해 지정되는 암호코드와 연산 동작이 기록되어 있는 룩업 테이블의 구성을 예시하는 도면,3 is a diagram illustrating a configuration of a look-up table in which an encryption code and an operation operation designated by a private code of the present invention are recorded;

도 4a 내지 도 4e는 암호화 및 복호화 과정을 설명하는 제어 코드 데이터의 구성 예를 도시하는 도면,4A to 4E are diagrams showing a configuration example of control code data for explaining an encryption and decryption process;

도 5는 본 발명의 송신 장치에서 수행되는 암호화 동작을 설명하는 플로우차트,5 is a flowchart for explaining an encryption operation performed in the transmitting apparatus of the present invention;

도 6은 본 발명의 수신 장치에서 수행되는 복호화 동작을 설명하는 플로우차트.6 is a flowchart for explaining a decoding operation performed in the receiving device of the present invention.

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

100 : 리모콘 데이터 송신 장치 200 : 수신 장치100: remote control data transmission device 200: receiving device

122, 222 : 등록 코드 저장부 124, 224 : 룩업 테이블122, 222: Registration code storage unit 124, 224: Lookup table

180 : RF 변조부 280 : RF 복조부180: RF modulator 280: RF demodulator

이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예의 동작을 상세하게 설명한다.Hereinafter, with reference to the accompanying drawings will be described in detail the operation of the preferred embodiment according to the present invention.

도 1을 참조하면, 본 발명에 따라서 구성된 리모콘 데이터 송신장치와 리모콘 데이터를 수신하는 메인 장치로 구성된 리모콘 시스템의 블록 구성도가 도시된다.Referring to Fig. 1, a block diagram of a remote control system composed of a remote control data transmission device configured according to the present invention and a main device for receiving remote control data is shown.

송신 장치(100)는 키 메트릭스(110), 제 1 저장부(120), 제 2 저장부(140), 제어부(160) 및 RF 송신부(180)를 구비하고, 메인 장치(200)는 RF 수신부(280), 제 1 저장부(220), 제 2 저장부(240), 제어부(260) 및 구동부(290)를 구비한다.The transmitter 100 includes a key matrix 110, a first storage unit 120, a second storage unit 140, a control unit 160, and an RF transmitter unit 180, and the main apparatus 200 includes an RF receiver unit. 280, a first storage unit 220, a second storage unit 240, a controller 260, and a driver 290.

본 발명에 따른 송신 장치(100)는 메인 장치(200)의 제어와 관련된 일련의 제어 코드 데이터 스트림을 생성하고, 생성된 일련의 제어 코드 데이터 스트림을 메인 장치(200)로 제공하는 리모콘을 포함한다. 도 2a 및 도 2b에는 본 발명에서 사용되는 송신 장치(100)에서 메인 장치(200)로 전송되는 제어 코드 데이터 스트림의 포맷이 상세히 도시된다.The transmitting device 100 according to the present invention includes a remote controller that generates a series of control code data streams related to the control of the main device 200 and provides the generated series of control code data streams to the main device 200. . 2A and 2B show the format of the control code data stream transmitted from the transmitting device 100 used in the present invention to the main device 200 in detail.

도 2a 및 도 2b에 도시된 바와 같이, 제어 코드 데이터 스트림은 10ms의 동기 펄스(SYNC) 프레임과 152ms의 데이터 프레임으로 구성되고, 데이터 프레임은 8비트(또는 1 바이트) 길이의 스타트(START) 코드, 32비트(또는 8바이트) 길이의 ID 코드, 128비트(또는 16바이트) 길이의 암호 데이터(ENCRYPTION DATA), 8비트(또는 1바이트) 길이의 동작 코드 및 8비트(또는 1바이트) 길이의 체크-섬(CHECK-SUM) 코드로 구성되어 있다.As shown in Figs. 2A and 2B, the control code data stream consists of a 10 ms sync pulse (SYNC) frame and a 152 ms data frame, and the data frame is an 8-bit (or 1 byte) long START code. 32-bit (or 8-byte) long ID code, 128-bit (or 16-byte) long encrypted code (ENCRYPTION DATA), 8-bit (or 1-byte) long operation code, and 8-bit (or 1-byte) long It consists of a CHECK-SUM code.

도 2b에서, 암호 데이터는 도 4b를 참조하여 상세히 설명되는 바와 같이, 4바이트 단위의 제 1 랜덤 데이터(RANDOM1), 제 2 랜덤 데이터(RANDOM2), 제 1 카운터 데이터(COUNTER1) 및 제 2 카운터 데이터(COUNTER2)로 구성되어 있다.In FIG. 2B, the encryption data is the first random data RANDOM1, the second random data RANDOM2, the first counter data COUNTER1, and the second counter data in units of 4 bytes, as described in detail with reference to FIG. 4B. It is composed of (COUNTER2).

본 발명에 있어서, 제 1 랜덤 데이터(RANDOM1)는 제어부(160)에서 내부적으로 프로그램된 랜덤 데이터 발생기를 이용하여 임의의 값으로 생성되며, 제 1 카운터 데이터(COUNTER1)는 제어부(160)의 클럭을 카운터한 값 또는 타이머 값으로서 생성된다. 또한, 제 2 랜덤 데이터(RANDOM2)는 제 1 랜덤 데이터(RANDOM1)으로부터 암호화된 데이터이고, 제 2 카운터 데이터(COUNTER2)는 제 1 카운터 데이터(COUNTER1)로부터 암호화된 데이터이다.In the present invention, the first random data RANDOM1 is generated at a random value using a random data generator programmed internally by the controller 160, and the first counter data COUNTER1 is configured to generate a clock of the controller 160. Generated as a counter value or timer value. In addition, the second random data RANDOM2 is data encrypted from the first random data RANDOM1, and the second counter data COUNTER2 is data encrypted from the first counter data COUNTER1.

또한, 본 발명에 따르면, 송신 장치(100)에서 메인 장치(200)로 제어 코드 데이터 스트림을 전송할 때마다 제 1 랜덤 데이터(RANDOM1)는 매번 새로운 랜덤 값으로 생성되는 한편, 제 1 카운터 데이터(COUNTER1)는 매번 현재의 값에다 일정한 값, +133(십진수)을 더한 값으로 증가되어 갱신된다.In addition, according to the present invention, each time the transmission device 100 transmits the control code data stream from the transmitting device 100 to the main device 200, the first random data RANDOM1 is generated with a new random value each time, while the first counter data COUNTER1 is generated. ) Is updated each time with the current value plus a constant, +133 (decimal).

다시 도 1을 참조하면, 제 1 저장부(120)는 비휘발성 메모리인 EEPROM으로 구성될 수 있으며, 제어 코드 데이터를 인코딩하는 데 참조되는 룩업 테이블 저장부(124)를 구비한다. 룩업 테이블 저장부(124)는, 도 3에 상세히 예시된 바와 같이, 제어 코드 데이터를 암호화하는 데 사용되는 연산 동작과 연산 값, 그리고, 연산 동작과 연산 값을 선택하는 니블단위의 바이트 값이 설정되어 있는 암호화 룩업 테이블이 저장되어 있다.Referring back to FIG. 1, the first storage unit 120 may be configured as an EEPROM, which is a nonvolatile memory, and includes a lookup table storage unit 124 referred to for encoding control code data. As illustrated in detail in FIG. 3, the lookup table storage unit 124 sets arithmetic operations and arithmetic values used to encrypt control code data, and byte values in nibble units for selecting arithmetic operations and arithmetic values. The encrypted lookup table is stored.

또한, 제 1 저장부(120)는 도 2c에 예시된 바와 같은 기설정된 바이트 길이의 등록 코드가 저장되어 있는 등록 코드 저장부(122)를 더 구비한다. 등록 코드 저장부(122)에 저장되어 있는 등록 코드는 제어 코드 데이터를 암호화하는 데 사용되는 코드로서, 시스템의 제조시 매 시스템마다 서로 다른 코드 값으로 설정된다. 이러한 등록 코드의 복사본은 송신 장치(100)와 메인 장치(200) 서로간의 암호화 및 복호화를 수행하기 위한 약정된 코드로 사용하도록 하기 위하여, 송신 장치(100)에서 도 2에 도시된 데이터 포맷으로 구성되어 메인 장치(200) 측으로 전송되어 저장된다.In addition, the first storage unit 120 further includes a registration code storage unit 122 storing a registration code having a preset byte length as illustrated in FIG. 2C. The registration code stored in the registration code storage 122 is a code used to encrypt the control code data, and is set to a different code value for each system at the time of manufacture of the system. The copy of the registration code is configured in the data format shown in FIG. 2 in the transmitting device 100 to be used as a contracted code for performing encryption and decryption between the transmitting device 100 and the main device 200. The main device 200 is transmitted and stored.

등록 코드는, 도 2c에 예시된 바와 같이, 도 2a 및 도 2b의 데이터 포맷과 동일하며, 8비트(또는 1 바이트) 길이의 스타트(START) 코드, 32비트(또는 8바이트) 길이의 ID 코드, 64비트(또는 8바이트) 길이의 맵핑(MAPPING) 코드, 64비트(또는 8바이트) 길이의 프라이베이트(PRIVATE) 코드, 8비트(또는 1바이트) 길이의 키 코드 및 8비트(또는 1바이트 및 ) 길이의 체크-섬(CHECK-SUM) 코드로 구성되어 있다. 또한 프라이베이트 코드(PRIVATE)는 4바이트 길이의 제 1 프라이베이트코드(PRIVATE1)과 제 2 프라이베이트 코드(PRIVATE2)로 구성되어 있다.The registration code is the same as the data format of FIGS. 2A and 2B, as illustrated in FIG. 2C, and has an 8-bit (or 1 byte) long START code and a 32-bit (or 8 byte) ID code. , 64-bit (or 8 bytes) long MAPPING code, 64-bit (or 8 bytes) PRIVATE code, 8-bit (or 1 byte) key code, and 8-bit (or 1 byte) And a check-sum code of length). In addition, the private code PRIVATE includes a first private code PRIVATE1 and a second private code PRIVATE2 having a 4-byte length.

ID 코드는 각 시스템마다 상이한 코드 값으로 설정되어, 송신 장치(100)와 메인 장치(200)를 서로 인증하는 코드로서 사용된다.The ID code is set to a different code value for each system and used as a code for authenticating the transmitting device 100 and the main device 200 with each other.

제 1 및 제 2 프라이베이트 코드(PRIVATE1, PRIVATE2)는 도 2b 및 도 4b에 예시된 제어 코드 데이터내 제 1 랜덤 데이터(RANDOM1)와 제 1 카운터 데이터(COUNTER1)를 도 3의 룩업 테이블 저장부(124)의 룩업 테이블에 설정되어 있는 연산동작과 그 연산동작에 사용될 연산 값을 선택하여 암호화함으로써, 제 2 랜덤 데이터(RANDOM2)와 제 2 카운터 데이터(COUNTER2)를 각기 생성하는 데 사용된다.The first and second private codes PRIVATE1 and PRIVATE2 may include the first random data RANDOM1 and the first counter data COUNTER1 in the control code data illustrated in FIGS. 2B and 4B. By selecting and encrypting the calculation operation set in the lookup table 124 and the operation value to be used for the calculation operation, the second random data RANDOM2 and the second counter data COUNTER2 are generated.

맵핑 코드(MAPPING)는 프라이베이트 코드(PRIVATE1 및 PRIVATE2)에 의해 암호화된 데이터 프레임을 스크램블(scrambling)하는 데 사용된다.The mapping code MAPPING is used to scramble the data frame encrypted by the private codes PRIVATE1 and PRIVATE2.

휘발성 메모리와 같은 RAM으로 구성될 수 있는 제 2 저장부(140)는 사용자에 의해 선택되는 동작 선택 버튼(112)에 따라 제어부(160)에 의해 생성되는 제어 코드 데이터를 일시 저장하는 제어 코드 데이터 저장부로서 사용된다.The second storage unit 140, which may be configured as a RAM such as a volatile memory, stores control code data for temporarily storing control code data generated by the controller 160 according to an operation selection button 112 selected by a user. Used as wealth.

송신 장치(100)에서, 키 메트릭스(110)는 다수의 동작 선택 버튼(112)과 등록 버튼(114)을 가지고 있다. 각각의 동작 선택 버튼(112)은 메인 장치(200)내 구동부(290)를 원격 제어하기 위하여 사용자에 의해 선택되는 버튼으로 사용된다. 사용자에 의해 선택된 버튼에 대응하는 명령어 코드는 도 2b에 예시된 동작 제어 코드로서 전송된다.In the transmitting device 100, the key matrix 110 has a plurality of operation selection buttons 112 and a registration button 114. Each operation selection button 112 is used as a button selected by a user to remotely control the driver 290 in the main device 200. The command code corresponding to the button selected by the user is transmitted as the operation control code illustrated in FIG. 2B.

등록 버튼(114)은 초기에 송신 장치(100)에 의해 메인 장치(200)를 제어하고자 하는 동작을 개시하기 전에, 다음과 같은 등록 동작을 수행하는 데 사용된다. 등록 버튼(114)이 사용자에 의해 선택되어 눌려지면, 등록 코드 저장부(124)에 저장된 등록 코드의 복사본을 도 2c에 예시된 데이터 포맷으로 구성하여 송신 장치(200) 측으로 전송하여, 송신 장치(100)와 메인 장치(200)가 등록 코드를 서로 공유하도록 한다. 상술한 등록 버튼(114)에 의해 이루어지는 등록 코드의 공유 과정은 본 발명의 리모콘 시스템을 최초 설치하여 사용할 때, 또는 리모콘 시스템을 새로이 세팅하여 사용할 때마다 한 번씩 이루어진다.The registration button 114 is used to perform the following registration operation before starting the operation to initially control the main device 200 by the transmitting device 100. When the registration button 114 is selected and pressed by the user, a copy of the registration code stored in the registration code storage unit 124 is configured in the data format illustrated in FIG. 2C and transmitted to the transmission device 200 side, thereby transmitting a transmission device ( 100 and the main device 200 to share the registration code with each other. The registration process of the registration code made by the registration button 114 described above is performed once each time the remote control system of the present invention is first installed and used, or a new setting of the remote control system is used.

제어부(160)는 초기에 송신 장치(100)에 의해 메인 장치(200)를 제어하고자 하는 동작을 시작하는 등록 과정에서 EEPROM(120)의 등록 코드 저장부(122)내에 저장된 등록 코드를 메인 장치(200) 측으로 제공하여 송신 장치(100)로부터 암호화되고 스크램블되어 전송된 데이터 스트림을 복호화하는 데 사용하도록 한다. 이 등록 코드는 송신 장치(100)에서와 마찬가지로 메인 장치(200)의 등록 코드 저장부(222)에 저장된다. 또한, 제어부(160)는 메인 장치(200)의 제어를 위한 제어 코드의 전송시 암호화될 데이터를 생성하고, 생성된 데이터를 암호화하고 스크램블하여 송신 장치(200)로 제공한다.The controller 160 initially registers the registration code stored in the registration code storage 122 of the EEPROM 120 in the registration process of starting the operation of controlling the main device 200 by the transmitting device 100. 200 to be used to decrypt the encrypted, scrambled and transmitted data stream from the transmitting device 100. This registration code is stored in the registration code storage unit 222 of the main device 200 as in the transmission device 100. In addition, the controller 160 generates data to be encrypted during transmission of a control code for controlling the main apparatus 200, encrypts and scrambles the generated data, and provides the generated data to the transmitting apparatus 200.

RF 송신부(180)는 제어부(160)에 의해 암호화되고 스크램블된 데이터 프레임을 통상의 변조 방식, 예를 들면, ASK 변조 방식을 이용하여 변조하여 무선채널을 통해 메인 장치(200)로 전송한다.The RF transmitter 180 modulates the data frame encrypted and scrambled by the controller 160 using a conventional modulation method, for example, an ASK modulation method, and transmits the data frame to the main device 200 through a wireless channel.

제어부(160)에 의해 수행되는 암호화 및 스크램블에 의해 최종 제어 데이터를 생성하는 과정은 도 5의 플로우차트를 참조하여 다음과 같이 상세히 설명될 것이다. 이와 관련하여, 룩업 테이블(124)에는 연산동작과 니블 단위의 연산 값이 도 3에 예시된 바와 같이 설정되어 있고, 등록 코드는 도 4a에 예시된 니블 단위의 코드 값으로 설정되어 있다고 가정한다.A process of generating final control data by encryption and scramble performed by the controller 160 will be described in detail as follows with reference to the flowchart of FIG. 5. In this regard, it is assumed in the lookup table 124 that arithmetic operations and arithmetic values in nibble units are set as illustrated in FIG. 3, and a registration code is set to code values in nibble units illustrated in FIG. 4A.

먼저, 단계(510)에서, 제어부(160)는 암호화될 데이터로서 도 4b에 예시된 바와 같이 4바이트 길이의 제 1 랜덤 데이터(RANDOM1)와 제 1 카운터 데이터(COUNTER1)를 생성한다. 도 4b에서, 제 1 랜덤 데이터(RANDOM1)는, 예로, 니블단위 바이트 '23 AB 80 93(16진수)'의 값을 가지며, 제 1 카운터 데이터(COUNTER1)는, 예로, 니블단위 바이트 'A7 23 90 CD(16진수)'의 값을 갖는 것으로 예시되어 있으며, 여기서, 0, 1, 2, 3, . . . , D, E, F는 설명 목적상 니블단위 바이트의 위치를 나타내는 것으로 한다.First, in step 510, the controller 160 generates the first random data RANDOM1 and the first counter data COUNTER1 having a 4-byte length as illustrated in FIG. 4B as data to be encrypted. In FIG. 4B, the first random data RANDOM1 has, for example, a value of nibble unit byte '23 AB 80 93 (hexadecimal) ', and the first counter data COUNTER1 is, for example, nibble unit byte' A7 23 '. 90 CD (Hexadecimal) ', where 0, 1, 2, 3,. . . , D, E and F shall be indicative of the position of the nibble unit byte for the purpose of explanation.

그 다음 단계(520)에서, 제어부(160)는 제 1 랜덤 데이터(RANDOM1)를 등록 코드의 제 1 프라이베이트 코드(PRIVATE1)와 룩업 테이블(124)을 참조하여 암호화하는 과정으로서, 다음과 같이 설명된다.In operation 520, the controller 160 encrypts the first random data RANDOM1 with reference to the first private code PRIVATE1 and the lookup table 124 of the registration code. do.

현재, 등록 코드내 제 1 프라이베이트 코드(PRIVATE1)는 니블단위 바이트 'A7 23 90 CD(16진수)'(도 4a 참조)로 설정되어 있다. 이 코드(PRIVATE1)는 룩업테이블(124)에서 대응하는 연산 동작과 연산 값을 선택하는 데 사용된다. 즉, 제 1 프라이베이트 코드(PRIVATE1)의 첫 니블단위 바이트의 상위 및 하위 니블바이트 값 'A7'에 따라 룩업 테이블(124)에서 그에 대응하는 Ax와 x7 값이 지정되고, 그 지정된 값과 연관된 연산 동작 'ADC→AND→SBC→COM' 과 암호 코드 값 '17 37 11 53(16 진수)'이 각기 선택된다.Currently, the first private code PRIVATE1 in the registration code is set to the nibble unit byte 'A7 23 90 CD (hexadecimal)' (see Fig. 4A). This code PRIVATE1 is used to select the corresponding operation operation and operation value from the lookup table 124. That is, according to the upper and lower nibble byte values 'A7' of the first nibble unit byte of the first private code PRIVATE1, corresponding Ax and x7 values are designated in the lookup table 124, and an operation associated with the specified value is specified. The operation 'ADC → AND → SBC → COM' and the encryption code value '17 37 11 53 (hexadecimal) 'are selected respectively.

그 다음, 제 1 랜덤 데이터(RANDOM1) '23 AB 80 93(16진수)'과 선택된 니블단위 바이트의 연산 값 '17 37 11 53(16 진수)'이 선택된 연산동작 'ADC→AND→SBC→COM'에 따라 순차적으로 연산된다. 연산된 결과는 제 2 저장부(140)내에 제어 코드 데이터의 제 2 랜덤 데이터(RANDOM2)로서 일시 저장된다.Next, the operation operation 'ADC → AND → SBC → COM' in which the first random data RANDOM1 '23 AB 80 93 (hexadecimal) 'and the operation value '17 37 11 53 (hexadecimal)' of the selected nibble byte are selected. Are computed sequentially. The calculated result is temporarily stored in the second storage unit 140 as the second random data RANDOM2 of the control code data.

또 다시, 제 1 프라이베이트 코드(PRIVATE1)의 두 번째 니블바이트 값 '23'에 의해 룩업 테이블(124)에서 그에 대응하는 2x와 x3 바이트 자리가 지정되고, 그 지정된 자리에 배치되어 있는 연산 동작 'ADC→DECS→XOR→ADC'과, 니블단위 바이트 값 '73 23 91 13(16 진수)' 이 각기 선택된다. 이렇게 선택된 연산 값 '73 23 91 13'은 선택된 연산동작 'ADC→DECS→XOR→ADC'에 따라 순차적으로 제 2 저장부(140)내에 일시 저장된 제 2 랜덤 데이터(RANDOM2)의 값과 연산되어, 새로운 제 2 랜덤 데이터(RANDOM2)로서 갱신된다.The second nibble byte value '23' of the first private code PRIVATE1 again specifies the corresponding 2x and x3 byte positions in the lookup table 124, and the operation operation ' ADC → DECS → XOR → ADC and the nibble byte value '73 23 91 13 (hexadecimal) 'are selected respectively. The selected arithmetic value '73 23 91 13 'is calculated with the values of the second random data RANDOM2 temporarily stored in the second storage unit 140 sequentially according to the selected arithmetic operation' ADC → DECS → XOR → ADC '. It is updated as new second random data RANDOM2.

또 다시, 제 1 프라이베이트 코드(PRIVATE1)의 세 번째 니블 바이트 '90'에 의해 룩업 테이블(124)에서 9x와 x0 바이트 자리가 지정되고, 이것과 연관된 연산 동작 'OR→XOR→RRC→ADC'과, 연산 값 '03 19 13 21'이 선택된다. 이렇게 선택된 연산 값 '03 19 13 21'은 선택된 연산동작 'OR→XOR→RRC→ADC'에 따라 제 2 저장부(140)의 제 2 랜덤 데이터(RANDOM2)값과 순차적으로 연산되어, 새로운 제 2 랜덤 데이터(RANDOM2)로서 갱신된다.Again, 9x and x0 byte positions are specified in the lookup table 124 by the third nibble byte '90' of the first private code PRIVATE1, and the associated operation operation 'OR → XOR → RRC → ADC' is associated with this. And the operation value '03 19 13 21 'is selected. The selected operation value '03 19 13 21 'is sequentially calculated with the second random data RANDOM2 value of the second storage unit 140 according to the selected operation operation' OR → XOR → RRC → ADC ', thereby providing a new second value. It is updated as random data RANDOM2.

마찬가지로, 또 제 1 프라이베이트 코드(PRIVATE1)의 마지막 네 번째 니블 바이트 'CD'에 의해 룩업 테이블(124)에서 Cx와 xD 바이트 자리가 지정되고, 이의 연산 동작 'AND→ADC→XOR→SBC'과, 연산 값 '20 39 18 50(16 진수)'이 선택된다.이렇게 선택된 연산 값 '20 39 18 50'은 선택된 연산동작 'AND→ADC→XOR→SBC'에 따라 제 2 저장부(140)의 제 2 랜덤 데이터(RANDOM) 값과 순차적으로 연산된다.Similarly, Cx and xD byte positions are specified in the lookup table 124 by the last fourth nibble byte 'CD' of the first private code PRIVATE1, and its operation operations 'AND → ADC → XOR → SBC' and The operation value '20 39 18 50 (hexadecimal) 'is selected. The operation value '20 39 18 50' is selected according to the selected operation operation 'AND → ADC → XOR → SBC' of the second storage unit 140. It is computed sequentially with the second random data RANDOM value.

상술한 일련의 과정을 통하여 최종적으로 갱신된 제 2 랜덤 데이터(RANDOM2)가 생성되며(단계 530), 도 4b에서는 간략한 설명을 위하여 제 1 랜덤 데이터(RANDOM1)인 '23 AB 80 93'으로부터 암호화된 값 '(23) (AB) (80) (93)'로 표현되어 있다.The second random data RANDOM2 finally updated is generated through the above-described process (step 530). In FIG. 4B, for the sake of simplicity, the second random data RANDOM2 is encrypted from '23 AB 80 93 'which is the first random data RANDOM1. It is represented by the value '(23) (AB) (80) (93)'.

그 다음 단계(540)에서는 제 1 카운터 데이터(COUNTER1)의 암호화 과정이 수행되는 데, 제 1 카운터 데이터(COUNTER1)는 단계(520, 530)에서 설명된 제 1 랜덤 데이터(RANDOM1)의 암호화 방법과 동일한 방식으로 등록 코드의 제 2 프라이베이트 코드(PRIVATE2)에 의해 암호화된다.Next, in step 540, an encryption process of the first counter data COUNTER1 is performed. The first counter data COUNTER1 is the same as the encryption method of the first random data RANDOM1 described in steps 520 and 530. In the same way it is encrypted by the second private code PRIVATE2 of the registration code.

이 때, 최종적으로 갱신된 제 2 카운터 데이터(COUNTER2)는 제 2 저장부(140)에 일시적으로 저장되며(550), 도 4b에서는 간략한 설명을 위하여 '(A7) (24) (90) (CD)'로 표현되어 있다.At this time, the finally updated second counter data (COUNTER2) is temporarily stored in the second storage unit 140 (550), and in Fig. 4b '(A7) (24) (90) (CD ) '

상술한 설명은 랜덤 데이터(RANDOM1)의 암호화가 먼저 설명되었지만, 카운터 데이터(COUNTER1)의 암호화가 먼저 수행될 수 도 있음을 알아야 할 것이다.In the above description, although encryption of the random data RANDOM1 has been described first, it should be understood that encryption of the counter data COUNTER1 may be performed first.

그 다음, 상술한 바와 같은 과정을 통하여 암호화된 데이터 프레임은 등록 코드내 맵핑 코드(MAPPING CODE)에 의해 다음과 같이 스크램블된다(단계 560).Then, the data frame encrypted through the above-described process is scrambled by the mapping code in the registration code as follows (step 560).

현재, 등록 코드의 8바이트 길이의 맵핑 코드(MAPPING CODE)는 니블단위로서 '14 AB 80 93 FD C5 76 2E'로 설정되어 있다. 여기서 맵핑 코드(MAPPING CODE)의 각 니블 바이트 값은 데이터 프레임의 각 니블단위 바이트의 배치 순서를 지정해줌으로써, 즉, 그 위치를 치환하여 스크램블된 제어 코드 데이터로서 생성해주는 역할을 한다.Currently, an 8-byte long mapping code (MAPPING CODE) of a registration code is set to '14 AB 80 93 FD C5 76 2E 'as a nibble unit. Here, each nibble byte value of the MAPPING CODE designates an arrangement order of each nibble unit byte of the data frame, that is, replaces the position and generates the scrambled control code data.

보다 상세히 설명하면, 암호화된 제어 데이터 프레임의 제로('0')째 바이트값 '23'은 맵핑 코드(MAPPING CODE)의 최상위 니블 바이트 '1' 값에 따라 그 암호화된 데이터 프레임의 1번째 자리로 이동 배치되고, 암호화된 데이터 프레임의 1째 바이트 값 'AB'는 맵핑 코드(MAPPING CODE)의 니블 바이트 '4' 라는 값에 따라 그 암호화된 데이터 프레임의 4째 자리에 배치되고, 암호화된 데이터 프레임의 2째 바이트 값 '80'은 맵핑 코드(MAPPING CODE)의 니블 바이트 'A' 라는 값에 따라 그 암호화된 데이터 프레임의 'A' 째 자리에 배치되는 방식으로 스크램블되어, 마지막 'F' 째 바이트 값 '(CD)'는 맵핑 코드(MAPPING CODE)의 마지막 니블 바이트 'E'라는 값에 따라 그 암호화된 데이터 프레임의 'E' 째 자리에 배치된다. 따라서, 도 5b에 예시된 바와 같이, 암호화된 데이터 프레임으로부터 최종적으로 스크램블된 데이터 프레임의 제어 코드가 생성되어, 제 2 저장부(140)에 일시 저장된다.In more detail, the zero ('0') byte value '23' of the encrypted control data frame is the first digit of the encrypted data frame according to the most significant nibble byte '1' value of the MAPPING CODE. The first byte value 'AB' of the moved and encrypted data frame is placed in the fourth position of the encrypted data frame according to the nibble byte '4' value of the mapping code, and the encrypted data frame The second byte value of '80' is scrambled in such a way that it is placed in the 'A' position of the encrypted data frame according to the nibble byte 'A' of the MAPPING CODE, and the last 'F' byte The value '(CD)' is placed in the 'E' position of the encrypted data frame according to the value of the last nibble byte 'E' of the MAPPING CODE. Thus, as illustrated in FIG. 5B, the control code of the finally scrambled data frame is generated from the encrypted data frame and temporarily stored in the second storage 140.

제 2 저장부(140)에 일시 저장된 암호화 및 스크램블된 제어 코드 데이터 프레임은 사용자에 의해 키 메트릭스(110)의 동작 선택 버튼(112)의 선택에 의해 생성된 동작 코드 및 ID 코드와 함께 조합되고, RF 송신부(180)에 의해 변조되어 도 2에 예시된 데이터 포맷의 형태로 무선채널을 통해 메인 장치(200)로 전송된다(단계 570).The encrypted and scrambled control code data frame temporarily stored in the second storage unit 140 is combined with an operation code and an ID code generated by selection of the operation selection button 112 of the key matrix 110 by the user, Modulated by the RF transmitter 180 and transmitted to the main device 200 through the wireless channel in the form of the data format illustrated in FIG. 2 (step 570).

한편, 메인 장치(200)는 송신 장치(100)에서 전송된 제어 코드에 의해 제어되는 구동부(290)를 더 구비하는 것을 제외하고는 송신 장치(100)와 대체로 구성을가지고 있다.On the other hand, the main apparatus 200 has a configuration generally with the transmitting apparatus 100, except that the main apparatus 200 further includes a driver 290 controlled by the control code transmitted from the transmitting apparatus 100.

따라서, 메인 장치(200)에서, 제 1 저장부(220)의 등록 코드 저장부(222)에는 송신 장치(100)의 등록 버튼(114)의 동작에 의해 송신 장치(100)로부터 전송되어 온 등록 코드의 복사본이 저장되어 있고, 룩업 테이블(124)에는 송신 장치(100)의 룩업 테이블(114)과 동일한 암호화 코드 값과 연산 동작이 저장되어 있다.Accordingly, in the main device 200, the registration code stored in the registration code storage unit 222 of the first storage unit 220 is transmitted from the transmission device 100 by the operation of the registration button 114 of the transmission device 100. A copy of the code is stored, and the lookup table 124 stores the same encryption code value and arithmetic operation as the lookup table 114 of the transmitting device 100.

제어부(260)는 등록 코드 저장부(222)에 저장된 등록 코드와 룩업 테이블(124)에 저장된 암호화 코드 값과 연산 동작을 이용하여 송신 장치(100)에서 수행되는 동작과 반대의 동작을 수행하여 제어 코드를 추출한다.The control unit 260 performs an operation opposite to that performed by the transmitting apparatus 100 by using the registration code stored in the registration code storage unit 222, the encryption code value stored in the lookup table 124, and an operation operation. Extract the code.

메인 장치(200)에서 수행되는 디스크램블 동작과 디코딩 동작은 도 6의 플로우차트를 참조하여 다음과 같이 설명된다.The descramble operation and the decoding operation performed in the main device 200 are described as follows with reference to the flowchart of FIG. 6.

먼저, 단계(610)에서, 메인 장치(200)의 RF 수신부(280)는 송신 장치(100)로부터 전송된 제어코드 데이터 스트림을 복조하고, 복조된 데이터 스트림을 제어부(260)로 제공한다. 도 4d에는 메인 장치(200)에서 수신되어 제어 코드 데이터 저장부(240)에 일시 저장된 제어코드의 데이터 스트림이 도시되어 있다.First, in step 610, the RF receiving unit 280 of the main device 200 demodulates the control code data stream transmitted from the transmitting device 100, and provides the demodulated data stream to the controller 260. FIG. 4D illustrates a data stream of the control code received by the main device 200 and temporarily stored in the control code data storage 240.

다음 단계(620)에서, 제어부(260)는 등록 코드 저장부(222)에 저장된 등록 코드의 맵핑 코드(MAPPING CODE)를 이용하여 송신 장치(100)으로부터 수신된 데이터 스트림을 디스크램블한다. 디스크램블 방식은 스크램블 방식과 달리 맵핑 코드(MAPPING CODE)의 각 바이트 값에 대응하는 자리에 있는 코드 값을 가져오는 방식으로 진행된다. 예를 들면, 등록 코드 저장부(222)내 맵핑 코드 '14 AB 80 93' 에 따라 송신 장치(100)으로부터 수신된 스크램블된 데이터 스트림의 '1' 째 자리바이트값 '23'을 '0' 째 위치에 배치하고, '4' 째 자리 바이트값 'AB'를 '2' 째 자리에 배치하는 방식으로 모든 스크램블된 제어 코드 데이터 프레임에 대하여 역 배치 동작이 수행된다. 그 결과는 도 4e에 도시되어 있다.In the next step 620, the control unit 260 descrambles the data stream received from the transmitting device 100 using the mapping code (MAPPING CODE) of the registration code stored in the registration code storage unit 222. Unlike the scramble method, the descrambling method proceeds by obtaining a code value at a position corresponding to each byte value of the mapping code. For example, the '1' first byte value '23' of the scrambled data stream received from the transmitting apparatus 100 according to the mapping code '14 AB 80 93 'in the registration code storage unit 222 is' 0'. The reverse placement operation is performed on all the scrambled control code data frames in such a way that the position and the '4' fourth byte value 'AB' are placed in the '2' second position. The result is shown in FIG. 4E.

그 다음, 제어부(260)는 도 4e에 예시된 디스크램블된 제어 코드 데이터 프레임에 대하여 제 1 및 제 2 프라이베이트 코드(PRIVATE1 및 PRIVATE2)와 룩업 테이블(224)을 이용하여 제 1 랜덤 데이터(RANDOM1)와 제1 카운터 데이터(COUNTER1)를 각기 송신 장치(100)에서 수행된 바와 동일하게 암호화한다(단계 630).Then, the controller 260 uses the first and second private codes PRIVATE1 and PRIVATE2 and the lookup table 224 for the descrambled control code data frame illustrated in FIG. 4E to display the first random data RANDOM1. ) And the first counter data COUNTER1 are encrypted in the same manner as those performed by the transmitting apparatus 100 (step 630).

이후, 송신 장치(200)측에서 암호화된 결과로서 생성된 제 2 랜덤 데이터와 제 2 카운터 데이터가 송신 장치(100)에서 전송되어 온 제 2 랜덤 데이터(RANDOM2)와 제 2 카운터 데이터(COUNTER2)와 동일한 지를 비교한다(단계 640).Thereafter, the second random data and the second counter data generated as a result of encryption on the transmitting apparatus 200 side are transmitted from the transmitting apparatus 100 and the second random data RANDOM2 and the second counter data COUNTER2. Compare the same (step 640).

비교 결과, 두 코드가 일치하지 않으면, 송신 장치(100)에서 전송중 오류가 발생한 것으로 인식하여, 재전송을 요구하거나 본 과정을 종료한다.As a result of the comparison, if the two codes do not match, the transmitting apparatus 100 recognizes that an error has occurred during transmission, requests for retransmission, or terminates this process.

그러나, 비교결과 두 코드가 각기 일치하면, 송신 장치(100)로부터 전송된 제어 코드 데이터가 아무런 해킹이나 복제 없이 제대로 전송된 것으로 인증하고(단계 750), 제어 코드의 데이터 스트림으로부터 동작 코드를 추출하여 구동부(290)를 제어하는 동작을 수행한다(단계 760).However, if the two codes match each other as a result of the comparison, the control code data transmitted from the transmitting apparatus 100 is authenticated as being properly transmitted without any hacking or duplication (step 750), and the operation code is extracted from the data stream of the control code. An operation of controlling the driver 290 is performed (step 760).

이상에서 설명한 바와 같이, 본 발명에 따라서, 리모콘에서 생성되는 제어 코드 데이터를 암호화함으로써, 불순한 의도에 의한 복제가 원천적으로 방지될 수 있다. 본 발명의 방식이 비밀 및 보안을 요하는 장소, 예를 들면, 은행의 금고, 귀금속 보관소 등에 사용되는 경우에 더욱 확실한 복제에 대한 대책이 마련될 수 있을 것이다.As described above, according to the present invention, by encrypting the control code data generated in the remote control, copying due to impure intention can be prevented at the source. More reliable countermeasures may be provided when the method of the present invention is used in places that require confidentiality and security, such as bank vaults, precious metal vaults, and the like.

Claims (14)

데이터를 암호화하는 방법에 있어서,In a method of encrypting data, 복수개의 연산 동작과 상기 연산동작에 사용될 복수개의 연산 값을 룩업 테이블 메모리내에 설정 등록시키는 단계;Setting and registering a plurality of arithmetic operations and a plurality of arithmetic values to be used in the arithmetic operations in a lookup table memory; 상기 데이터의 암호화를 위한 기설정 길이의 등록 코드를 생성하여 등록 코드 저장 메모리내에 설정 등록하는 단계로서, 상기 등록 코드는 제 1 및 제 2의 프라이베이트 코드를 구비하며;Generating a registration code of a preset length for encryption of the data and setting registration in a registration code storage memory, the registration code having first and second private codes; 제 1 랜덤 데이터와 제 1 카운터 데이터를 상기 암호화될 데이터로서 생성하는 단계;Generating first random data and first counter data as the data to be encrypted; 상기 룩업 테이블 메모리로부터 상기 제 1 프라이베이트 코드와 연관된 연산 동작과 연산 값을 선택하는 단계;Selecting an operation operation and an operation value associated with the first private code from the lookup table memory; 상기 제 1 랜덤 데이터와 상기 선택된 연산 값을 상기 선택된 연산 동작에 따라 연산하여 상기 제 1 랜덤 데이터로부터 암호화된 제 2 랜덤 데이터를 생성하는 단계;Generating encrypted second random data from the first random data by calculating the first random data and the selected operation value according to the selected operation operation; 상기 룩업 테이블 메모리로부터 상기 제 2 프라이베이트 코드와 연관된 연산 동작과 연산 값을 각기 선택하는 단계;Respectively selecting an operation operation and an operation value associated with the second private code from the lookup table memory; 상기 제 1 카운터 데이터와 상기 선택된 연산 값을 상기 선택된 연산 동작에 따라 연산하여 상기 제 1 카운터 데이터로부터 암호화된 제 2 카운터 데이터를 생성함으로써, 상기 제 1 및 제 2 랜덤 데이터와 상기 제 1 및 제 2 카운터 데이터로구성된 일련의 암호화된 데이터로서 생성하는 단계를 포함하는 것을 특징으로 하는 데이터 암호화 방법.The first counter data and the selected operation value are calculated according to the selected operation to generate encrypted second counter data from the first counter data, thereby generating the first and second random data and the first and second data. Generating as a series of encrypted data consisting of counter data. 제 1 항에 있어서,The method of claim 1, 상기 등록 코드는 맵핑 코드를 더 구비하며;The registration code further comprises a mapping code; 상기 방법은:The method is: 상기 암호 데이터를 상기 맵핑 코드에 의해 스크램블하는 단계를 더 포함하는 것을 특징으로 하는 데이터 암호화 방법.And scrambled the encrypted data by the mapping code. 송신 장치에서 생성된 제어 코드 데이터의 복제를 방지하기 위하여 상기 제어 코드 데이터를 암호화하여 전송하고, 상기 제어 코드 데이터에 의해 제어되는 수신 장치에서 상기 전송된 암호 제어 코드 데이터를 인증하는 방법에 있어서,A method of encrypting and transmitting the control code data to prevent duplication of control code data generated at a transmitting device, and authenticating the transmitted control code data at a receiving device controlled by the control code data. 상기 송신 장치와 상기 수신 장치에서, 상기 제어 코드 데이터의 암호화에 사용되는 연산 값과 연산 동작이 약정된 룩업 테이블을 룩업 테이블 메모리내에 각기 저장하는 단계;Storing, at the transmitting device and the receiving device, a calculation table used to encrypt the control code data and a lookup table to which a calculation operation is committed, respectively, in a lookup table memory; 상기 제어 코드 데이터의 암호화를 위한 기설정 길이의 등록 코드를 등록 코드 저장 메모리에 저장하는 단계로서, 상기 등록 코드는 제 1 및 제 2의 프라이베이트 코드를 구비하며;Storing a registration code of a preset length for encryption of the control code data in a registration code storage memory, the registration code having first and second private codes; 상기 등록 코드의 복사본을 상기 수신 장치로 제공하는 단계;Providing a copy of the registration code to the receiving device; 상기 암호화될 데이터로서 제 1의 랜덤 데이터와 제 1 카운터 데이터를 생성하는 단계;Generating first random data and first counter data as the data to be encrypted; 상기 룩업 테이블 메모리로부터 상기 제 1 프라이베이트 코드와 연관된 연산 동작과 연산 값을 선택하는 단계;Selecting an operation operation and an operation value associated with the first private code from the lookup table memory; 상기 제 1 프라이베이트 코드에 의해 선택된 연산 동작에 따라 상기 연산 값을 상기 제 1 랜덤 데이터에 연산하여 상기 제 1 랜덤 데이터로부터 변환된 제 2 랜덤 데이터를 생성하는 단계;Generating the second random data converted from the first random data by calculating the operation value to the first random data according to a calculation operation selected by the first private code; 상기 룩업 테이블 메모리로부터 상기 제 2 프라이베이트 코드와 연관된 연산 동작과 연산 값을 선택하는 단계;Selecting an operation operation and an operation value associated with the second private code from the lookup table memory; 상기 제 2 프라이베이트 코드에 의해 선택된 연산 동작에 따라 상기 연산 값을 상기 제 1 카운터 데이터에 연산하여 상기 제 1 카운터 데이터로부터 변환된 제 2 카운터 데이터를 생성하는 단계;Generating the second counter data converted from the first counter data by calculating the operation value to the first counter data according to the operation selected by the second private code; 상기 제 1 및 제 2 랜덤 데이터와 상기 제 1 및 제 2 카운터 데이터를 일련의 암호 제어 코드 데이터의 포맷으로 상기 수신 장치로 전송하는 단계;Transmitting the first and second random data and the first and second counter data to the receiving device in a format of a series of cryptographic control code data; 상기 수신 장치에서, 상기 송신 장치로부터 전송된 암호 제어 코드 데이터를 수신하는 단계;Receiving, at the receiving device, cryptographic control code data transmitted from the transmitting device; 상기 송신 장치로부터 제공된 등록 코드의 제 1 및 제 2 프라이베이트 코드와 상기 룩업 테이블을 이용하여, 상기 송신 장치로부터 수신된 암호 제어 코드 데이터의 제 1 랜덤 데이터와 제 1 카운터 데이터를 상기 수신 장치에서와 동일한 방식으로 암호화하여 제 2 랜덤 데이터와 제 2 카운터 데이터를 생성하는 단계;Using the first and second private codes of the registration code provided from the transmitting device and the lookup table, the first random data and the first counter data of the encryption control code data received from the transmitting device and the receiving device; Encrypting in the same manner to generate second random data and second counter data; 상기 생성된 제 2 랜덤 데이터와 제 2 카운터 데이터가 상기 송신 장치로부터 수신된 제 2 랜덤 데이터와 제 2 카운터 데이터와 동일한 지를 비교함으로써, 상기 전송된 암호 제어 코드 데이터를 인증하는 단계를 포함하는 것을 특징으로 하는Authenticating the transmitted cryptographic control code data by comparing whether the generated second random data and the second counter data are the same as the second random data and the second counter data received from the transmitting apparatus. By 제어 코드 데이터 암호화 및 복호화 방법.Control code data encryption and decryption method. 제 3 항에 있어서,The method of claim 3, wherein 상기 송신 장치에서, 상기 암호 제어 코드 데이터 전송 단계는 상기 암호 제어 코드 데이터를 변조하여 무선으로 전송하는 단계를 구비하며;In the transmitting device, the transmitting of the encryption control code data comprises modulating the encryption control code data and transmitting it wirelessly; 상기 수신 장치에서, 상기 암호 제어 코드 데이터 수신 단계는 상기 송신 장치에서 변조된 암호 제어 코드 데이터를 복조하는 단계를 구비하는 것을 특징으로 하는 제어 코드 데이터 암호화 및 복호화 방법.And in the receiving device, receiving the encryption control code data comprises demodulating the encrypted control code data modulated by the transmitting device. 제 3 항에 있어서,The method of claim 3, wherein 상기 등록 코드는 맵핑 코드를 더 구비하며;The registration code further comprises a mapping code; 상기 방법은:The method is: 상기 송신 장치에서, 상기 암호 제어 코드 데이터 전송 단계 이전에, 상기 암호 제어 코드 데이터를 상기 맵핑 코드에 의해 스크램블하는 단계;Scrambled the encryption control code data by the mapping code before the encryption control code data transmitting step in the transmitting device; 상기 수신 장치에서, 상기 암호 제어 코드 데이터 수신 단계 이후, 상기 송신 장치로부터 전송된 암호 제어 코드 데이터를 상기 맵핑 코드를 이용하여 디스크램블하는 단계를 더 구비하는 것을 특징으로 하는 제어 코드 데이터 암호화 및 복호화 방법.And in the receiving device, after the step of receiving the encryption control code data, descrambling the encryption control code data transmitted from the transmitting device by using the mapping code. . 제 3 항에 있어서,The method of claim 3, wherein 상기 제 1 랜덤 데이터는 상기 송신 장치에서 상기 암호 제어 코드 데이터가 생성할 때마다 무작위적으로 랜덤하게 생성되는 데이터이고, 상기 제 1 카운터 데이터는 상기 송신장치의 클럭을 계수한 카운터 값 또는 타이머 값으로서 설정된 데이터인 것을 특징으로 하는 제어 코드 데이터 암호화 및 복호화 방법.The first random data is randomly generated data each time the encryption control code data is generated by the transmitter, and the first counter data is a counter value or a timer value that counts a clock of the transmitter. Control code data encryption and decryption method characterized in that the set data. 제 6 항에 있어서,The method of claim 6, 상기 제 1 카운터 데이터는 상기 송신 장치에서 상기 암호 제어 코드 데이터가 생성될 때마다 일정 값 만큼씩 가변되어 갱신되는 것을 특징으로 하는 제어 코드 데이터 암호화 및 복호화 방법.And the first counter data is variably updated by a predetermined value every time the encryption control code data is generated in the transmitting apparatus. 리모콘과 메인 장치로 구성된 리모콘 시스템에 있어서,In the remote control system consisting of a remote control and a main unit, 상기 리모콘은:The remote control is: 제 1 및 제 2 프라이베이트 코드를 구비하는 등록 코드가 저장된 제 1 등록 코드 저장부와;A first registration code storage unit for storing a registration code having first and second private codes; 복수개의 연산 값과 논리적 연산 동작이 맵핑되어 저장된 제 1 룩업 테이블 저장부와;A first lookup table storage unit in which a plurality of operation values and logical operation operations are mapped and stored; 하나의 등록 키와 다수의 동작 제어 키로 구성된 키 조작부;A key operation unit comprising one registration key and a plurality of operation control keys; 상기 등록 키의 선택에 응답하여, 상기 등록 코드 저장부내에 저장된 등록 코드를 상기 메인 장치로 제공하고, 각각의 동작 제어 키의 선택에 따라 상기 메인 장치에 제공되는 일련의 암호 제어 코드 데이터를 생성하는 제 1 제어부를 구비하며;In response to the selection of the registration key, providing a registration code stored in the registration code storage to the main device, and generating a series of cipher control code data provided to the main device according to selection of each operation control key. A first control unit; 상기 암호 제어 코드 데이터는 제 1 랜덤 데이터, 제 1 카운터 데이터, 상기 제 1 랜덤 데이터로부터 변환된 제 2 랜덤 데이터, 상기 제 1 카운터 데이터로부터 변환된 제 2 카운터 데이터 및 동작 제어 코드를 구비하며,The cryptographic control code data includes first random data, first counter data, second random data converted from the first random data, second counter data converted from the first counter data, and an operation control code. 상기 제 2 랜덤 데이터는 상기 제 1 룩업 테이블 저장부로부터 상기 제 1 프라이베이트 코드와 연관된 연산 동작에 따라 그에 대응하는 연산 값이 상기 제 1 랜덤 데이터에 연산되어 생성되고,The second random data is generated by calculating an operation value corresponding to the first random data according to an operation associated with the first private code from the first lookup table storage unit, 상기 제 2 카운터 데이터는 상기 제 1 룩업 테이블 메모리로부터 상기 제 2 프라이베이트 코드와 연관된 연산 동작에 따라 그에 대응하는 연산 값이 상기 제 1 카운터 데이터에 연산하여 생성되며;The second counter data is generated by calculating an operation value corresponding to the first counter data according to an operation associated with the second private code from the first lookup table memory; 상기 제 1 제어부에 의해 생성된 암호 제어 코드 데이터를 변조하여 무선으로 상기 메인 장치로 전송하는 변조 수단을 포함하며;Modulating means for modulating cryptographic control code data generated by said first control unit and transmitting it wirelessly to said main device; 상기 메인 장치는:The main unit is: 상기 리모콘으로부터 제공된 복사본의 등록 코드가 저장된 제 2 등록 코드 저장부와;A second registration code storage unit for storing a registration code of a copy provided from the remote controller; 상기 리모콘과 동일한 복수개의 연산 값과 논리적 연산 동작이 맵핑되어 저장된 제 2 룩업 테이블 저장부와;A second lookup table storage unit configured to map a plurality of arithmetic values and logical operation operations identical to those of the remote controller; 상기 리모콘으로부터 전송된 암호 제어 코드 데이터를 복조하는 복조 수단과;Demodulation means for demodulating cryptographic control code data transmitted from said remote control; 상기 복조된 암호 코드 데이터의 제 1 랜덤 데이터와 제 1 카운터 데이터를 상기 리모콘에서와 동일한 방식으로 상기 복사본의 등록 코드를 이용하여 암호화하고, 상기 암호화에 의해 생성된 제 2 랜덤 데이터 및 제 2 카운터 데이터가 상기 송신 장치로부터 수신된 제 2 랜덤 데이터 및 제 2 카운터 데이터와 각기 동일한 지를 비교함으로써, 상기 전송된 암호 제어 코드 데이터를 인증하는 제 2 제어부를 포함하는 것을 특징으로 하는 리모콘 시스템.Encrypting the first random data and the first counter data of the demodulated encryption code data using the registration code of the copy in the same manner as in the remote controller, and the second random data and the second counter data generated by the encryption. And a second control unit for authenticating the transmitted encryption control code data by comparing whether the second random data and the second counter data are identical to each other. 제 8 항에 있어서,The method of claim 8, 상기 등록 코드는 맵핑 코드를 더 구비하며;The registration code further comprises a mapping code; 상기 리모콘에서 상기 암호 제어 코드 데이터는 상기 제 1 제어부에 의해 상기 맵핑 코드에 따라 스크램블되어 상기 메인 장치로 전송되며;The cryptographic control code data in the remote controller is scrambled by the first control unit according to the mapping code and transmitted to the main device; 상기 메인 장치에서, 상기 리모콘으로부터 전송된 암호 제어 코드 데이터는 상기 제 2 제어부에 의해 상기 복사본의 맵핑 코드에 따라 디스크램블되는 것을 특징으로 하는 리모콘 시스템.In the main device, the password control code data transmitted from the remote control is descrambled by the second control unit according to the mapping code of the copy. 제 8 항에 있어서,The method of claim 8, 상기 제 1 랜덤 데이터는 상기 리모콘에서 상기 암호 제어 코드 데이터가 생성할 때마다 무작위적으로 랜덤하게 생성되는 데이터이고, 상기 제 1 카운터 데이터는 상기 리모콘의 제 1 제어부의 클럭을 계수한 카운터 값 또는 타이머 값으로서 설정된 데이터인 것을 특징으로 하는 리모콘 시스템.The first random data is randomly generated data whenever the encryption control code data is generated by the remote controller, and the first counter data is a counter value or a timer that counts a clock of a first controller of the remote controller. And a data set as a value. 제 10 항에 있어서,The method of claim 10, 상기 제 1 카운터 데이터는 상기 리모콘에서 생성된 암호 제어 코드 데이터가 전송될 때마다 일정 값 만큼씩 가변되어 갱신되는 것을 특징으로 하는 리모콘 시스템.And the first counter data is variably updated by a predetermined value every time the encryption control code data generated by the remote controller is transmitted. 제 8 항에 있어서,The method of claim 8, 상기 제 1 및 제 2 랜덤 데이터, 상기 제 1 및 제 2 카운터 데이터, 상기 제 1 및 제 2 프라이베이트 코드는 각기 동일한 바이트 길이를 가지며,The first and second random data, the first and second counter data, and the first and second private codes each have the same byte length, 상기 맵핑 코드는 한 세트의 상기 제 1 및 제 2 프라이베이트 코드와 동일한 바이트 길이를 갖는 것을 특징으로 하는 리모콘 시스템.And the mapping code has the same byte length as the set of first and second private codes. 제 8 항에 있어서,The method of claim 8, 상기 제 1 및 제 2 프라이베이트 코드의 각 니블단위의 상위 바이트와 하위 바이트는 상기 룩업 테이블로부터 대응하는 연산 동작과 연산 값을 선택하는 것을 특징으로 하는 리모콘 시스템.The upper byte and the lower byte of each nibble unit of the first and second private codes select a corresponding operation operation and operation value from the lookup table. 제 8 항에 있어서,The method of claim 8, 상기 맵핑 코드의 각 니블단위의 바이트는 상기 제 1 및 제 2 랜덤 데이터와 상기 제 1 및 제 2 카운터 데이터의 니블단위 바이트의 배치 순서를 지시하는 것을 특징으로 하는 리모콘 시스템.And a byte of each nibble unit of the mapping code indicates an arrangement order of the nibble unit bytes of the first and second random data and the first and second counter data.
KR1020000070518A 2000-11-24 2000-11-24 Method for the encryption and verification of control code data, and the remotecontroller system therefor KR100365256B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000070518A KR100365256B1 (en) 2000-11-24 2000-11-24 Method for the encryption and verification of control code data, and the remotecontroller system therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000070518A KR100365256B1 (en) 2000-11-24 2000-11-24 Method for the encryption and verification of control code data, and the remotecontroller system therefor

Publications (2)

Publication Number Publication Date
KR20020040463A KR20020040463A (en) 2002-05-30
KR100365256B1 true KR100365256B1 (en) 2002-12-18

Family

ID=19701346

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000070518A KR100365256B1 (en) 2000-11-24 2000-11-24 Method for the encryption and verification of control code data, and the remotecontroller system therefor

Country Status (1)

Country Link
KR (1) KR100365256B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3220601A1 (en) 2016-03-16 2017-09-20 Alticast Corporation Key event encryption processing system and method thereof

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2842376B1 (en) * 2002-07-10 2004-09-24 Somfy SELECTIVE COMMUNICATION BETWEEN OBJECTS

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08102978A (en) * 1994-09-30 1996-04-16 Sony Corp Remote control system
JPH08228390A (en) * 1995-02-20 1996-09-03 Alpine Electron Inc Method and system for remote control
KR19980029669A (en) * 1996-10-28 1998-07-25 박창희 Shutter switchgear with infrared remote control
KR20000027888A (en) * 1998-10-29 2000-05-15 김영환 Radio remote control system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08102978A (en) * 1994-09-30 1996-04-16 Sony Corp Remote control system
JPH08228390A (en) * 1995-02-20 1996-09-03 Alpine Electron Inc Method and system for remote control
KR19980029669A (en) * 1996-10-28 1998-07-25 박창희 Shutter switchgear with infrared remote control
KR20000027888A (en) * 1998-10-29 2000-05-15 김영환 Radio remote control system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3220601A1 (en) 2016-03-16 2017-09-20 Alticast Corporation Key event encryption processing system and method thereof
KR20170107669A (en) 2016-03-16 2017-09-26 주식회사 알티캐스트 System and method for processing key event encryption

Also Published As

Publication number Publication date
KR20020040463A (en) 2002-05-30

Similar Documents

Publication Publication Date Title
JP4633202B2 (en) Method for providing secure communication between two devices and application of this method
CN1655503B (en) A secure key authentication and ladder system
US5517567A (en) Key distribution system
JP4680187B2 (en) Safe telemetry for implantable medical devices
US6108424A (en) Mobile radio telephone station comprising a protection system for at least one authentication number and method of protecting an authentication number
US7248833B2 (en) Method and apparatus for encrypting and decrypting data in wireless LAN
CA2283304C (en) Method of and apparatus for encrypting signals for transmission
US5241597A (en) Method for recovering from encryption key variable loss
KR980007143A (en) Authentication method, communication method and information processing device
GB2279540A (en) Mutual authentication / cipher key delivery system
AU662685B2 (en) A method for loading and utilizing a key in a secure transmission device
JP6444304B2 (en) One-way key fob and vehicle pairing
JPH10171717A (en) Ic card and cipher communication system using the same
KR100365256B1 (en) Method for the encryption and verification of control code data, and the remotecontroller system therefor
JPH04247737A (en) Enciphering device
KR100551992B1 (en) encryption/decryption method of application data
JPH03179841A (en) Cryptographic digital broadcast receiver
CN112235789A (en) Interrupt recoverable secret communication processing method, device and system
ES2382778T3 (en) A transmitter for remote control
KR101428665B1 (en) Security system and method for using aes-otp
KR20050029018A (en) Methods for authenticating and coding a controling code based on its check sum and system thereof
GB2194416A (en) A method of authenticating stream ciphers
JPH03179842A (en) Cryptographic digital broadcast equipment
CN107579824A (en) A kind of vehicle remote control method based on rolling code
KR100542042B1 (en) Technique of cipher authentication of satellite telemetry/telecommand to protect from replay attack

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121122

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20131128

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20141127

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20151125

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20161101

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20171205

Year of fee payment: 16

FPAY Annual fee payment

Payment date: 20181015

Year of fee payment: 17