KR100419500B1 - Method for transmitting and receiving software image - Google Patents

Method for transmitting and receiving software image Download PDF

Info

Publication number
KR100419500B1
KR100419500B1 KR1020030073938A KR20030073938A KR100419500B1 KR 100419500 B1 KR100419500 B1 KR 100419500B1 KR 1020030073938 A KR1020030073938 A KR 1020030073938A KR 20030073938 A KR20030073938 A KR 20030073938A KR 100419500 B1 KR100419500 B1 KR 100419500B1
Authority
KR
South Korea
Prior art keywords
software image
digital signature
encryption key
encrypted
code
Prior art date
Application number
KR1020030073938A
Other languages
Korean (ko)
Inventor
김동운
Original Assignee
주식회사 휴맥스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 휴맥스 filed Critical 주식회사 휴맥스
Priority to KR1020030073938A priority Critical patent/KR100419500B1/en
Application granted granted Critical
Publication of KR100419500B1 publication Critical patent/KR100419500B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/44Secrecy systems
    • H04N1/448Rendering the image unintelligible, e.g. scrambling
    • H04N1/4486Rendering the image unintelligible, e.g. scrambling using digital data encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32267Methods relating to embedding, encoding, decoding, detection or retrieval operations combined with processing of the image
    • H04N1/32272Encryption or ciphering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/44Secrecy systems
    • H04N1/4406Restricting access, e.g. according to user identity
    • H04N1/4413Restricting access, e.g. according to user identity involving the use of passwords, ID codes or the like, e.g. PIN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/328Processing of the additional information
    • H04N2201/3281Encryption; Ciphering

Abstract

PURPOSE: A method for transmitting and receiving a software image is provided to transmit and receive the software image more safely by encrypting the software image with encryption key codes related with digital signature. CONSTITUTION: According to the method for transmitting and receiving a software image, a digital signature is generated from the software image in a signature generation part(30). The generated digital signature is encrypted using a private key and a part of the digital signature is selected with encryption key codes and then the software image is encrypted. Then, the encrypted digital signature and software image are transmitted.

Description

소프트웨어 이미지 전송 및 수신방법 {Method for transmitting and receiving software image}Method for transmitting and receiving software image

본 발명은, 소프트웨어 이미지 전송 및 수신방법에 관한 것으로, 예를 들어 디지털 방송 수신을 위한 셋탑 박스(STB: Set Top Box) 등과 같은 다양한 전자기기에 필요한 프로그램인 소프트웨어 이미지(Software Image)를, 해킹(Hacking) 없이 안전하게 전송 및 수신할 수 있도록 하기 위한 소프트웨어 이미지 전송 및 수신방법에 관한 것이다.The present invention relates to a method for transmitting and receiving software images. For example, a software image, which is a program required for various electronic devices such as a set top box (STB) for digital broadcast reception, is hacked ( The present invention relates to a software image transmission and reception method for safely transmitting and receiving without hacking.

도 1은, 일반적인 소프트웨어 이미지 전송 및 수신방법이 적용되는 송신측과 수신측에 대한 구성을 도시한 것으로, 예를 들어, 셋탑 박스 등과 같은 다양한 전자기기에 필요한 프로그램인 소프트웨어 이미지를 전송하는 송신측(100)에는, 시그네처 생성부(10)와 엔크립션 처리부(11) 등이 포함 구성되고, 상기 소프트웨어 이미지를 수신하여 장치 내에 저장하는 수신측(200)에는, 시그네처 생성부(20)와, 디크립션 처리부(21), 그리고 비교부(22) 등이 포함 구성될 수 있다.1 is a diagram illustrating a configuration of a transmitting side and a receiving side to which a general software image transmitting and receiving method is applied. For example, a transmitting side transmitting a software image, which is a program necessary for various electronic devices such as a set-top box, etc. The signature generation unit 10, the encryption processing unit 11, and the like are included in the 100, and the receiving side 200 for receiving and storing the software image in the device includes a signature generation unit 20 and , Decryption processor 21, comparator 22, etc. may be included.

한편, 상기 송신측에 포함 구성된 시그네처 생성부(10)에서는, 도 1에 도시한 바와 같이, 암호화되지 않은 이진(Binary) 코드의 소프트웨어 이미지로부터 디지털 시그네처(Digital Signature)를 생성하게 되는 데, 이때 통상적으로 널리 알려진 보안 알고리즘(Security Algorithm)인 'RSA-SHA1' 기술이 사용된다.On the other hand, the signature generator 10 included in the transmitting side generates a digital signature from a software image of an unencrypted binary code, as shown in FIG. In this case, the 'RSA-SHA1' technology, which is a widely known security algorithm (Security Algorithm), is used.

또한, 상기 송신측에 포함 구성된 엔크립션 처리부(11)에서는, 상기와 같이생성된 디지털 시그네처를, RSA-SHA1 기술에서 사용되는 프라이빗 키(Private Key)를 이용하여 엔크립션(Encryption)하게 된다.In addition, the encryption processing unit 11 included in the transmitting side encrypts the digital signature generated as described above using a private key used in RSA-SHA1 technology. do.

그리고, 상기 송신측(100)에서는, 상기와 같이 엔크립션된 디지털 시그네처와 암호화되지 않은 이진 코드의 소프트웨어 이미지를, 셋탑 박스와 같은 수신측(200)으로 전송하게 된다.The transmitting side 100 transmits the encrypted digital signature and the software image of the unencrypted binary code to the receiving side 200 such as a set-top box.

한편, 상기 수신측(200)에 포함 구성된 디크립션 처리부(21)에서는, 상기 송신측으로 전송되는 디지털 시그네처, 즉 프라이빗 키에 의해 엔크립션된 디지털 시그네처를, RSA-SHA1 기술에서 사용되는 퍼블릭 키(Public Key)를 이용하여 디립션(Decryption)하게 된다.On the other hand, in the decryption processing unit 21 included in the receiving side 200, the digital signature transmitted to the transmitting side, that is, the digital signature encrypted by the private key is used in the RSA-SHA1 technology. Decryption is performed using a public key.

또한, 상기 수신측에 포함 구성된 시그네처 생성부(20)에서는, 상기 송신측으로 전송 수신된 소프트웨어 이미지로부터 디지털 시그네처를 생성하게 되는 데, 이때, 전술한 바와 같이, 널리 알려진 'RSA-SHA1' 기술이 사용된다.In addition, the signature generation unit 20 included in the receiving side generates a digital signature from a software image transmitted and received by the transmitting side. In this case, as described above, a widely known 'RSA-SHA1' technology This is used.

그리고, 상기 수신측에 포함 구성된 비교부(22)에서는, 상기와 같이 시그네처 생성부(20)에 의해 생성된 디지털 시그네처와, 상기 디크립션 처리부(21)에 의해 디크립션된 디지털 시그네처를 비교한 후, 그 디지털 시그네처들이 일치하는 경우, 상기 송신측으로부터 수신된 소프트웨어 이미지를, 장치 내에 구비된 플래시 메모리 등과 같은 비휘발성 메모리 내에 저장하게 된다.In the comparison unit 22 included in the receiving side, the digital signature generated by the signature generation unit 20 and the digital signature decrypted by the decryption processing unit 21 as described above. After comparing the signatures, if the digital signatures match, the software image received from the sender is stored in a nonvolatile memory such as a flash memory provided in the apparatus.

반면, 상기 디지털 시그네처들이 서로 일치하지 않는 경우에는, 상기 송신측으로부터 수신된 소프트웨어 이미지를, 장치 내에 저장하지 않게 되므로, 상기 송신측으로부터 전송되는 소프트웨어 이미지를, 상기 수신측에서 수신하여 장치 내에정상적으로 저장하기 위해서는, 사전에 설정된 유효한 퍼블릭 키(Public Key)가 저장되어 있어야만 한다.On the other hand, when the digital signatures do not coincide with each other, since the software image received from the transmitting side is not stored in the apparatus, the software image transmitted from the transmitting side is normally received in the apparatus by the receiving side. In order to save, a valid public key set in advance must be stored.

이에 따라, 상기와 같이 프라이빗 키(Private Key)에 의해 엔크립션된 디지털 시그네처를 정상적으로 디크립션할 수 있는 유효한 퍼블릭 키(Public Key)가 저장되어 있지 않은 수신측, 예를 들어 사전에 승인되지 않은 제 3자가, 상기 송신측으로부터 전송되는 소프트웨어 이미지를 불법적으로 수신하여 장치에 저장하게 되는 것을 예방할 수 있게 된다.Accordingly, the receiving side, for example, a pre-authorization in which a valid public key capable of decrypting the digital signature encrypted by the private key as described above is not stored. The third party, who is not, can prevent the software image transmitted from the transmitting side from being illegally received and stored in the device.

그러나, 일반적인 소프트웨어 이미지 전송 및 수신방법에서는, 상기 송신측으로부터 전송되는 소프트웨어 이미지가, 암호화되지 않은 이진(Binary) 코드의 데이터이므로, 제3 자가 불법적인 해킹 목적으로, 상기 수신측으로 전송되는 소프트웨어 이미지를 임의로 추출하여, 다른 기기 내에 저장 사용할 수 있게 되는 문제점이 발생하게 된다.However, in the general software image transmission and reception method, since the software image transmitted from the transmitting side is data of unencrypted binary code, a third party may use the software image transmitted to the receiving side for illegal hacking purposes. Randomly extracted, there is a problem that can be stored and used in other devices.

따라서, 본 발명은 상기와 같은 문제점을 해결하기 위하여 창작된 것으로서, 디지털 방송 수신을 위한 셋탑 박스(STB) 등과 같은 다양한 전자기기에 필요한 프로그램인 소프트웨어 이미지를, 디지털 시그네처(Signature)와 연관성을 갖는 암호화 키 코드(Key_Code)로 엔크립션(Encrpytion)하여, 보다 안전하게 전송 및 수신할 수 있도록 하기 위한 소프트웨어 이미지 전송 및 수신방법을 제공하는 데, 그 목적이 있는 것이다.Therefore, the present invention was created to solve the above problems, and has a software signature, which is a program required for various electronic devices such as a set-top box (STB) for digital broadcast reception, to have a digital signature associated with it An object of the present invention is to provide a software image transmission and reception method for encrypting with an encryption key code (Key_Code) to enable more secure transmission and reception.

도 1은 일반적인 소프트웨어 이미지 전송 및 수신방법이 적용되는 송신측과 수신측에 대한 구성을 도시한 것이고,1 illustrates a configuration of a transmitter and a receiver to which a general software image transmission and reception method is applied.

도 2는 본 발명에 따른 소프트웨어 이미지 전송방법이 적용되는 송신측에 대한 구성을 도시한 것이고,2 illustrates a configuration of a transmitting side to which a software image transmitting method according to the present invention is applied;

도 3은 본 발명에 따른 소프트웨어 이미지 수신방법이 적용되는 수신측에 대한 구성을 도시한 것이고,3 illustrates a configuration of a receiver to which a software image reception method according to the present invention is applied;

도 4는 본 발명이 적용되는 송신측에 대한 실시예의 구성을 도시한 것이고,4 illustrates a configuration of an embodiment of a transmitting side to which the present invention is applied;

도 5는 본 발명에 따른 소프트웨어 이미지의 각 블록별 암호화 키 코드들이 디지털 시그네처에서 선택되는 실시예를 도시한 것이고,5 illustrates an embodiment in which encryption key codes for each block of a software image according to the present invention are selected from a digital signature,

도 6은 본 발명이 적용되는 수신측에 대한 실시예의 구성을 도시한 것이다.6 shows a configuration of an embodiment for a receiving side to which the present invention is applied.

※ 도면의 주요부분에 대한 부호의 설명※ Explanation of code for main part of drawing

10,20,30,43 : 시그네처 생성부 11,31,33 : 엔크립션 처리부10,20,30,43: signature generation unit 11,31,33: encryption processing unit

21,40,42 : 디크립션 처리부 22,44 : 비교부21,40,42: decryption processing unit 22,44: comparison unit

32,41 : 분리부 35 : 압축 처리부32,41: separation unit 35: compression processing unit

45 : 비 압축 처리부45: uncompressed processing unit

상기와 같은 목적을 달성하기 위한 본 발명에 따른 소프트웨어 이미지 전송방법은, 소프트웨어 이미지로부터 디지털 시그네처를 생성하는 1단계; 상기 생성된 디지털 시그네처를 소정의 프라이빗 키를 이용하여 엔크립션함과 아울러, 상기 디지털 시그네처의 일부를 암호화 키 코드로 선택하여, 상기 소프트웨어 이미지를 엔크립션하는 2단계; 및 상기 엔크립션된 디지털 시그네처 및 소프트웨어 이미지를 전송하는 3단계를 포함하여 이루어지는 것을 특징으로 하며,Software image transmission method according to the present invention for achieving the above object, a step of generating a digital signature from the software image; Encrypting the generated digital signature using a predetermined private key, selecting a portion of the digital signature as an encryption key code, and encrypting the software image; And three steps of transmitting the encrypted digital signature and software image.

또한, 본 발명에 따른 소프트웨어 이미지 수신방법은, 외부로부터 전송되는 디지털 시그네처와 소프트웨어 이미지를 수신하는 1단계; 상기 수신된 디지털 시그네처를, 소정의 퍼블릭 키를 이용하여 디크립션함과 아울러, 상기 디크립션된 디지털 시그네처의 일부를 암호화 키 코드로 선택하여, 상기 수신된 소프트웨어 이미지를 디크립션하는 2단계; 및 상기 디크립션된 소프트웨어 이미지로부터 디지털 시그네처를 생성한 후, 상기 퍼블릭 키에 의해 디크립션된 디지털 시그네처와 비교하여, 상기 디크립션된 소프트웨어 이미지의 저장 여부를 선택적으로 결정하는 3단계를 포함하여 이루어지는 것을 특징으로 한다.In addition, the software image receiving method according to the present invention, the first step of receiving a digital signature and software image transmitted from the outside; Decrypting the received digital signature using a predetermined public key, selecting a portion of the decrypted digital signature as an encryption key code, and decrypting the received software image step; And generating a digital signature from the decrypted software image, and then selectively determining whether to store the decrypted software image by comparing the digital signature decrypted by the public key. Characterized in that comprises a.

이하, 본 발명에 따른 소프트웨어 이미지 전송 및 수신방법에 대한 바람직한 실시예에 대해, 첨부된 도면을 참조하여 상세히 설명한다.Hereinafter, exemplary embodiments of a software image transmission and reception method according to the present invention will be described in detail with reference to the accompanying drawings.

우선, 본 발명에 따른 소프트웨어 이미지 전송방법이 적용되는 송신측(300)에는, 도 2에 도시한 바와 같이, 시그네처 생성부(30), 제1 엔크립션 처리부(31), 분리부(32), 그리고 제2 엔크립션 처리부(33) 등이 포함 구성될 수 있는 데, 상기 시그네처 생성부(30)에서는, 전술한 바와 같이, 'RSA-SHA1' 기술을 사용하여, 암호화되지 않은 이진(Binary) 코드의 소프트웨어 이미지로부터 N 바이트 크기의 디지털 시그네처(Digital Signature)를 생성하게 된다.First, as shown in FIG. 2, the transmitting side 300 to which the software image transmitting method according to the present invention is applied, the signature generating unit 30, the first encryption processing unit 31, and the separating unit 32 is shown. And a second encryption processor 33 or the like. In the signature generation unit 30, as described above, an unencrypted binary using 'RSA-SHA1' technology is used. From the software image of the (Binary) code, we generate a digital signature of N bytes.

한편, 상기 제1 엔크립션 처리부(31)에서는, 상기와 같이 생성된 N 바이트의 디지털 시그네처를, RSA-SHA1 기술에서 사용되는 프라이빗 키(Private Key)를 이용하여 엔크립션(Encryption)하게 되며, 상기 분리부(32)에서는, 상기와 같이 생성된 N 바이트의 디지털 시그네처 중 일부 코드, 예를 들어 16 바이트 크기의 일부 코드를, 상기 소프트웨어 이미지를 엔크립션하기 위한 암호화 키 코드(Key_Code)로 선택 분리하게 된다.Meanwhile, the first encryption processing unit 31 encrypts the N-byte digital signature generated as described above using a private key used in the RSA-SHA1 technology. In the separating unit 32, some codes of the N-byte digital signatures generated as described above, for example, some codes having a size of 16 bytes, are encrypted key codes (Key_Code) for encrypting the software image. To be separated.

또한, 상기 제2 엔크립션 처리부(33)에서는, 상기와 같이 선택 분리되는 암호화 키 코드를 이용하여, 상기 소프트웨어 이미지를 엔크립션하게 되며, 상기 송신측(300)에서는, 상기와 같이 프라이빗 키에 의해 엔크립션된 디지털 시그네처와, 암호화 키 코드에 의해 엔크립션된 소프트웨어 이미지를, 셋탑 박스와 같은 수신측으로 전송하게 된다.In addition, the second encryption processing unit 33 encrypts the software image using an encryption key code that is selectively separated as described above, and the transmitting side 300 stores the private key as described above. The digital signature encrypted by and the software image encrypted by the encryption key code are transmitted to a receiving side such as a set-top box.

한편, 본 발명에 따른 소프트웨어 이미지 수신방법이 적용되는 수신측(400)에는, 도 3에 도시한 바와 같이, 제1 디크립션 처리부(40), 분리부(41), 제2 디크립션 처리부(42), 시그네처 생성부(43), 비교부(44) 등이 포함 구성될 수 있는 데,상기 제1 디크립션 처리부(40)에서는, 상기 송신측으로 전송되는 디지털 시그네처, 즉 프라이빗 키에 의해 엔크립션된 디지털 시그네처를, RSA-SHA1 기술에서 사용되는 퍼블릭 키(Public Key)를 이용하여 디크립션(Decryption)하게 된다.Meanwhile, as shown in FIG. 3, the first decryption processing unit 40, the separation unit 41, and the second decryption processing unit are applied to the receiving side 400 to which the software image receiving method according to the present invention is applied. 42, the signature generator 43, the comparator 44, and the like may be configured. In the first decryption processor 40, a digital signature, that is, a private key, is transmitted to the transmitter. The digital signature encrypted by the CB is decrypted using a public key used in the RSA-SHA1 technology.

또한, 상기 분리부(41)에서는, 상기 제1 디크립션 처리부(40)에 의해 디크립션된 디지털 시그네처 중 일부 코드, 예를 들어 16 바이트의 크기의 일부 코드를, 상기 소프트웨어 이미지를 디크립션하기 위한 암호화 키 코드(Key_Code)로 선택 분리하게 된다.In addition, the separation unit 41 may decode some of the digital signatures decrypted by the first decryption processing unit 40, for example, some codes having a size of 16 bytes, and decode the software image. Selected and separated by the encryption key code (Key_Code) to encrypt.

그리고, 상기 제2 디크립션 처리부(42)에서는, 상기와 같이 선택 분리된 암호화 키 코드를 이용하여, 상기 소프트웨어 이미지를 디크립션하게 되고, 상기 시그네처 생성부(43)에서는, 상기 디크립션된 소프트웨어 이미지를 RSA-SHA1 기술을 사용하여 디지털 시그네처를 생성하게 된다,The second decryption processing unit 42 decrypts the software image using the encryption key code selected and separated as described above, and the signature generation unit 43 decrypts the decryption. The digital software signature is generated using the RSA-SHA1 technology.

한편, 상기 비교부(44)에서는, 상기와 같이 시그네처 생성부(43)에 의해 생성된 디지털 시그네처와, 상기 제1 디크립션 처리부(40)에 의해 디크립션된 디지털 시그네처를 비교한 후, 그 디지털 시그네처들이 일치하는 경우, 상기 송신측으로부터 수신된 소프트웨어 이미지를, 장치 내에 구비된 플래시 메모리 등과 같은 비휘발성 메모리 내에 저장하게 된다.On the other hand, the comparison unit 44 compares the digital signature generated by the signature generator 43 with the digital signature decrypted by the first decryption processor 40 as described above. Then, when the digital signatures match, the software image received from the transmitting side is stored in a nonvolatile memory such as a flash memory provided in the apparatus.

반면, 상기 디지털 시그네처들이 서로 일치하지 않는 경우에는, 상기 송신측으로부터 수신된 소프트웨어 이미지를, 장치 내에 저장하지 않게 되므로, 상기 송신측으로부터 전송되는 소프트웨어 이미지를, 상기 수신측에서 수신하여 장치 내에 정상적으로 저장하기 위해서는, 사전에 설정된 유효한 퍼블릭 키(Public Key)가 저장되어 있어야만 하므로, 유효한 퍼블릭 키가 저장되어 있지 않은 수신측에서 소프트웨어 이미지를 불법적으로 장치 내에 저장하게 되는 것을 예방할 수 있게 된다.On the other hand, when the digital signatures do not coincide with each other, since the software image received from the transmitting side is not stored in the apparatus, the software image transmitted from the transmitting side is normally received in the apparatus. In order to store, a valid public key set in advance must be stored, thereby preventing a receiver from illegally storing a software image in the device without a valid public key stored therein.

또한, 상기 퍼블릭 키를 이용하여, 송신측으로부터 수신된 디지털 시그네처를 디크립션한 후, 그 디크립션된 디지털 시그네처의 일부 코드를 이용하여, 송신측으로부터 수신된 소프트웨어 이미지를 디크립션해야만 하기 때문에, 상기 송신측으로부터 전송되는 소프트웨어 이미지를, 제3 자가 해킹하더라도, 소프트웨어 이미지가 암호화 키 코드에 의해 이미 엔크립션되어 있어, 불법적으로 사용되는 것을 원천적으로 방지할 수 있게 되는 데, 상기 소프트웨어 이미지를 보다 더 안전하게 암호화할 수 있는 구체적인 소프트웨어 이미지 전송 및 수신방법에 대해 상세히 설명하면 다음과 같다.Further, after decrypting the digital signature received from the transmitting side using the public key, decrypting the software image received from the transmitting side using some codes of the decrypted digital signature. Since the software image transmitted from the transmitting side must be hacked by a third party, since the software image is already encrypted by the encryption key code, the software image can be prevented from being used illegally. A detailed description of the method of transmitting and receiving a software image that can encrypt the software image more securely is as follows.

우선, 도 4에 도시한 바와 같이, 상기 송신측(300)에서는, 이진 코드의 소프트웨어 이미지를, 다수의 블록 단위(Block 1∼N)로 각각 분할한 후, 상기 블록 단위에 대응되는 암호화 키 코드들(Key_Code 1∼N)을 이용하여, 각각 엔크립션시킴과 아울러, 상기 엔크립션된 각 블록들을 압축(Compression)하여, 블록 단위로 엔크립션 및 압축된 소프트웨어 이미지를, 수신측(400)으로 전송하게 된다.First, as shown in Fig. 4, the transmitting side 300 divides the software image of the binary code into a plurality of block units Block 1 to N, respectively, and then encrypts an encryption key code corresponding to the block unit. Each key is encrypted using key_Code 1 to N, and each of the encrypted blocks is compressed to receive a software image encrypted and compressed in units of blocks. ) Will be sent.

예를 들어, 상기 송신측에 포함된 시그네처 생성부(30)에서는, 각 블록 단위의 소프트웨어 이미지 전체에 대한 디지털 시그네처를 생성하게 되고, 상기 제1 엔크립션 처리부(31)에서는, 상기 디지털 시그네처를 사전에 설정된 프라이빗 키를 이용하여 엔크립션하는 일련의 동작을 수행하게 된다.For example, the signature generation unit 30 included in the transmitting side generates a digital signature for the entire software image in units of blocks, and the first encryption processing unit 31 generates the digital signature. A series of operations are performed to encrypt the signature using a preset private key.

한편, 상기 분리부(32)에서는, 상기 시그네처 생성부(30)에 의해 생성된 디지털 시그네처 중, 서로 다른 일부 코드들을, 상기 분할된 각 블록 단위들에 대응되는 암호화 키 코드들로 선택 분리하게 되는 데, 예를 들어, 도 5에 도시한 바와 같이, 상기 분리부(32)에서는, N 바이트의 디지털 시그네처 중, k∼K+15 번째 코드 값을 제1 블록에 대응되는 제1 암호화 키 코드(Key_Code 1)로 선택 분리하게 되며, k+1∼K+16 번째 코드 값을 제2 블록에 대응되는 제2 암호화 키 코드(Key_Code 2)로 선택 분리하게 되고, k+2∼k+17 번째 코드 값을 제3 블록에 대응되는 제3 암호화 키 코드(Key_Code 3)로 선택 분리하는 일련의 동작을 수행하게 된다.On the other hand, in the separating unit 32, among the digital signatures generated by the signature generation unit 30, some different codes are selectively separated into encryption key codes corresponding to the divided block units. For example, as shown in FIG. 5, in the separation unit 32, a k-K + 15 th code value among N-byte digital signatures is first encrypted corresponding to the first block. Selected and separated by the key code (Key_Code 1), and k + 1 ~ K + 16th code value is separated by the second encryption key code (Key_Code 2) corresponding to the second block, k + 2 ~ k + A series of operations for selectively separating the 17 th code value into a third encryption key code Key_Code 3 corresponding to the third block is performed.

또한, 상기 제2 엔크립션 처리부(33)에서는, 상기와 같이 선택 분리되는 다수의 암호화 키 코드들을 이용하여, 각 블록의 소프트웨어 이미지들을 엔크립션하게 되는 데, 예를 들어, 제1 블록의 소프트웨어 이미지를 제1 암호화 키 코드로 엔크립션하고, 제2 블록의 소프트웨어 이미지를 제2 암호화 키 코드로 엔크립션하는 일련의 동작을 수행하게 된다.In addition, the second encryption processing unit 33 encrypts the software images of each block by using a plurality of encryption key codes that are selectively separated as described above. The software image is encrypted with the first encryption key code, and the software image of the second block is encrypted with the second encryption key code.

그리고, 상기와 같이 블록 단위로 엔크립션된 소프트웨어 이미지는, 도 4에 도시한 바와 같이, 송신측에 추가 구비된 압축 처리부(35)에 의해 각 블록 단위로 압축된 후, 상기 제1 엔크립션 처리부(31)에 의해 엔크립션된 디지털 시그네처와 함께 수신측(400)으로 전송된다.As described above, the software image encrypted in units of blocks is compressed in units of blocks by the compression processing unit 35 additionally provided on the transmitting side, as shown in FIG. It is transmitted to the receiving side 400 together with the digital signature encrypted by the selection processing unit 31.

한편, 도 6에 도시한 바와 같이, 상기 수신측(400)에서는, 다수의 블록 단위로 엔크립션 및 압축되어 전송된 소프트웨어 이미지를, 각 블록 단위(Block 1∼N)로 비 압축(De-compression) 처리한 후, 상기 각 블록 단위에 대응되는 암호화 키코드들(Key_Code 1∼N)을 이용하여, 각각 디크립션시켜, 이진 코드의 소프트웨어 이미지로 복원하게 된다.On the other hand, as shown in Fig. 6, the receiving side 400 decompresses the decoded and decompressed software image in a plurality of blocks in each block unit (Block 1 to N) (De-). After the compression processing is performed, each of the encryption key codes Key_Code 1 to N corresponding to each block unit is decrypted to restore the software image of the binary code.

예를 들어, 상기 수신측에 포함된 제1 디크립션 처리부(40)에서는, 엔크립션된 디지털 시그네처를, 퍼블릭 키를 이용하여, 디크립션시키게 되고, 상기 분리부(41)에서는, 그 디크립션된 디지털 시그네처 중 서로 다른 일부 코드들을, 전술한 바와 같이, 분할된 소프트웨어 이미지의 각 블록 단위들에 대응되는 암호화 키 코드들로 선택 분리하게 된다.For example, in the first decryption processing unit 40 included in the receiving side, the encrypted digital signature is decrypted using a public key, and in the separation unit 41, Some of the different codes of the decrypted digital signature are selectively separated into encryption key codes corresponding to respective block units of the divided software image, as described above.

즉, 도 5를 참조로 전술한 바와 같이, 상기 분리부(41)에서는, N 바이트의 디지털 시그네처 중, k∼K+15 번째 코드 값을 제1 블록에 대응되는 제1 암호화 키 코드(Key_Code 1)로 선택 분리하게 되며, k+1∼K+16 번째 코드 값을 제2 블록에 대응되는 제2 암호화 키 코드(Key_Code 2)로 선택 분리하게 되고, k+2∼k+17 번째 코드 값을 제3 블록에 대응되는 제3 암호화 키 코드(Key_Code 3)로 선택 분리하는 일련의 동작을 수행하게 된다.That is, as described above with reference to FIG. 5, in the separation unit 41, a k-K + 15 th code value among N-byte digital signatures is assigned to the first encryption key code (Key_Code) corresponding to the first block. 1), the k + 1 to K + 16th code values are selectively separated to the second encryption key code (Key_Code 2) corresponding to the second block, and the k + 2 to k + 17th code values. A sequence of operations for selectively separating the data into third encryption key codes (Key_Code 3) corresponding to the third block is performed.

한편, 상기 다수의 블록 단위로 엔크립션 및 압축되어 전송된 소프트웨어 이미지는, 상기 수신측에 추가 구비된 비 압축 처리부(45)에 의해 블록 단위로 비 압축 처리되며, 상기 제2 디크립션 처리부(42)에서는, 상기 분리부(41)에 의해 선택 분리되는 다수의 암호화 키 코드들을 이용하여, 각 블록의 소프트웨어 이미지들을 디크립션하게 되는 데, 예를 들어, 제1 블록의 소프트웨어 이미지를 제1 암호화 키 코드로 디크립션하고, 제2 블록의 소프트웨어 이미지를 제2 암호화 키 코드로 디크립션하는 일련의 동작을 수행하게 된다.On the other hand, the software image encrypted and compressed in units of the plurality of blocks is decompressed in units of blocks by the non-compression processing unit 45 further provided on the receiving side, and the second decryption processing unit In 42, the software images of each block are decrypted using a plurality of encryption key codes selectively separated by the separating unit 41. For example, the software image of the first block may be decrypted. Decryption with one encryption key code and a series of operations to decrypt the software image of the second block with the second encryption key code.

또한, 상기 시그네처 생성부(43)에서는, 각 블록 단위의 소프트웨어 이미지 전체에 대한 디지털 시그네처를 생성하게 되고, 상기 비교부(44)에서는, 상기 시그네처 생성부에 의해 생성된 디지털 시그네처와, 상기 제1 디크립션 처리부(40)에 의해 디크립션된 디지털 시그네처를 비교하여, 그 디지털 시그네처들이 일치하는 경우, 상기 디크립션된 소프트웨어 이미지를, 장치 내에 저장하고, 일치하지 않는 경우에는, 장치 내에 저장하지 않게 된다.In addition, the signature generator 43 generates a digital signature for the entire software image in units of blocks, and the comparator 44 generates a digital signature generated by the signature generator. Compares the digital signature decrypted by the first decryption processing unit 40 and, if the digital signatures match, stores the decrypted software image in the device and does not match. In such a case, it is not stored in the device.

따라서, 상기 송신측으로부터 전송되는 소프트웨어 이미지 자체에 대한 보안성을 보다 향상시킬 수 있게 되고, 또한 상기 수신측에서 사용하는 암호화 키 코드가 쉽게 노출되지 않도록 하여, 해킹 가능성을 최소화시킬 수 있게 된다.Therefore, the security of the software image itself transmitted from the transmitting side can be further improved, and the encryption key code used at the receiving side can not be easily exposed, thereby minimizing the possibility of hacking.

참고로, 상기 블록 단위별 암호화 키 코드들은, N 바이트의 디지털 시그네처 중, k 번째 바이트에서부터 순차적으로 선택 분리되거나, 또는 수신측과 송신측간에 임의로 규정된 인덱스(Index)에 따라 선택 분리될 수도 있다.For reference, the encryption key codes for each block unit may be selectively separated from the kth byte among N-byte digital signatures or selectively separated according to an index arbitrarily defined between the receiving side and the transmitting side. have.

이상, 전술한 본 발명의 바람직한 실시예는, 예시의 목적을 위해 개시된 것으로, 당업자라면, 이하 첨부된 특허청구범위에 개시된 본 발명의 기술적 사상과 그 기술적 범위 내에서, 또다른 다양한 실시예들을 개량, 변경, 대체 또는 부가 등이 가능할 것이다.Or more, preferred embodiments of the present invention described above, for the purpose of illustration, those skilled in the art, within the technical spirit and the technical scope of the present invention disclosed in the appended claims below, to further improve various other embodiments Changes, substitutions or additions will be possible.

상기와 같이 구성 및 이루어지는 본 발명에 따른 소프트웨어 이미지 전송 및수신방법은, 디지털 방송 수신을 위한 셋탑 박스(STB) 등과 같은 다양한 전자기기에 필요한 프로그램인 소프트웨어 이미지(Software Image)를, 디지털 시그네처(Signature)와 연관성을 갖는 암호화 키 코드로 엔크립션하여, 보다 안전하게 전송 및 수신할 수 있도록 함으로써, 수신측으로 전송되는 소프트웨어 이미지가, 제3 자에 의해 불법적으로 해킹되어 다른 기기 내에 저장 및 사용되는 것을 원천적으로 방지할 수 있게 되는 매우 유용한 발명인 것이다.Software image transmission and reception method according to the present invention configured and made as described above, the digital signature (Software Image) which is a program required for various electronic devices such as a set-top box (STB) for digital broadcast reception, etc. By encrypting with an encryption key code that is associated with the (), enabling safer transmission and reception, the software image sent to the receiving party is illegally hacked by a third party and stored and used in another device. It is a very useful invention that can be prevented.

Claims (8)

소프트웨어 이미지로부터 디지털 시그네처를 생성하는 1단계;Generating a digital signature from a software image; 상기 생성된 디지털 시그네처를 소정의 프라이빗 키를 이용하여 엔크립션함과 아울러, 상기 디지털 시그네처의 일부를 암호화 키 코드로 선택하여, 상기 소프트웨어 이미지를 엔크립션하는 2단계; 및Encrypting the generated digital signature using a predetermined private key, selecting a portion of the digital signature as an encryption key code, and encrypting the software image; And 상기 엔크립션된 디지털 시그네처 및 소프트웨어 이미지를 전송하는 3단계를 포함하여 이루어지는 것을 특징으로 하는 것을 소프트웨어 이미지 전송방법.And transmitting the encrypted digital signature and the software image. 제 1항에 있어서,The method of claim 1, 상기 1단계는, 상기 소프트웨어 이미지를 다수의 블록으로 분할한 후, 그 분할된 다수의 블록에 근거하여, 디지털 시그네처를 생성하는 것을 특징으로 하는 것을 소프트웨어 이미지 전송방법.In the step 1, after dividing the software image into a plurality of blocks, the digital signature is generated based on the divided plurality of blocks. 제 2항에 있어서,The method of claim 2, 상기 2단계는, 상기 분할된 소프트웨어 이미지의 블록들에 각각 대응되는 암호화 키 코드들을, 상기 디지털 시그네처의 일부에서 각각 선택하여, 각 블록 단위별로 소프트웨어 이미지를 엔크립션하는 것을 특징으로 하는 것을 소프트웨어 이미지 전송방법.In the second step, the encryption key codes corresponding to the blocks of the divided software image are respectively selected from a part of the digital signature, and the software image is characterized by encapsulating the software image for each block unit. How to send an image. 제 1항에 있어서,The method of claim 1, 상기 3단계는, 상기 엔크립션된 소프트웨어 이미지를 압축하여 전송하는 것을 특징으로 하는 것을 소프트웨어 이미지 전송방법.The third step, the software image transmission method, characterized in that for compressing and transmitting the encrypted software image. 외부로부터 전송되는 디지털 시그네처와 소프트웨어 이미지를 수신하는 1단계;Receiving a digital signature and a software image transmitted from the outside; 상기 수신된 디지털 시그네처를, 소정의 퍼블릭 키를 이용하여 디크립션함과 아울러, 상기 디크립션된 디지털 시그네처의 일부를 암호화 키 코드로 선택하여, 상기 수신된 소프트웨어 이미지를 디크립션하는 2단계; 및Decrypting the received digital signature using a predetermined public key, selecting a portion of the decrypted digital signature as an encryption key code, and decrypting the received software image step; And 상기 디크립션된 소프트웨어 이미지로부터 디지털 시그네처를 생성한 후, 상기 퍼블릭 키에 의해 디크립션된 디지털 시그네처와 비교하여, 상기 디크립션된 소프트웨어 이미지의 저장 여부를 선택적으로 결정하는 3단계를 포함하여 이루어지는 것을 특징으로 하는 것을 소프트웨어 이미지 수신방법.Generating a digital signature from the decrypted software image, and then comparing the decrypted digital signature with the public key to selectively determine whether to store the decrypted software image. Software image receiving method, characterized in that comprises a. 제 5항에 있어서,The method of claim 5, 상기 외부로부터 수신된 소프트웨어 이미지는, 다수의 블록 단위로 분할된 후, 각 블록 단위에 대응되는 서로 다른 암호화 키 코드들에 의해 각각 엔크립션 및 압축 처리된 소프트웨어 이미지인 것을 특징으로 하는 것을 소프트웨어 이미지 수신방법.The software image received from the outside is a software image, which is divided into a plurality of block units and is a software image that is respectively encrypted and compressed by different encryption key codes corresponding to each block unit. Receive method. 제 5항에 있어서,The method of claim 5, 상기 2단계는, 상기 소프트웨어 이미지를 비 압축 처리한 후, 상기 암호화 키 코드를 이용하여, 엔크립션하는 것을 특징으로 하는 것을 소프트웨어 이미지 수신방법.In the step 2, after decompressing the software image, the software image receiving method is characterized in that the encryption using the encryption key code. 제 6항에 있어서,The method of claim 6, 상기 2단계는, 상기 분할된 소프트웨어 이미지의 블록들에 각각 대응되는 암호화 키 코드들을, 상기 디지털 시그네처의 일부에서 각각 선택하여, 각 블록 단위별로 소프트웨어 이미지를 디크립션하는 것을 특징으로 하는 것을 소프트웨어 이미지 수신방법.In step 2, the encryption key codes corresponding to the blocks of the divided software image are respectively selected from a part of the digital signature, and the software image is characterized in that the decryption of the software image for each block unit. How to receive an image.
KR1020030073938A 2003-10-22 2003-10-22 Method for transmitting and receiving software image KR100419500B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030073938A KR100419500B1 (en) 2003-10-22 2003-10-22 Method for transmitting and receiving software image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030073938A KR100419500B1 (en) 2003-10-22 2003-10-22 Method for transmitting and receiving software image

Publications (1)

Publication Number Publication Date
KR100419500B1 true KR100419500B1 (en) 2004-02-19

Family

ID=37323339

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030073938A KR100419500B1 (en) 2003-10-22 2003-10-22 Method for transmitting and receiving software image

Country Status (1)

Country Link
KR (1) KR100419500B1 (en)

Similar Documents

Publication Publication Date Title
KR100677026B1 (en) System for Receiving Or Transmitting Video Contents And Information Security Module Used In the Same
US7260215B2 (en) Method for encryption in an un-trusted environment
CN1655503B (en) A secure key authentication and ladder system
US8045716B2 (en) System and method for the concealment of device input parameters
EP3195519B1 (en) Encoder, decoder and methods employing partial data encryption
EP3178190B1 (en) Encoder, decoder and method
KR100841986B1 (en) Devices and processes for the transmission and implementation of control instructions for access to functionalities of receivers, and sender and receiver of service announcement message
CA2441392A1 (en) Encrypting apparatus
CN103457718A (en) Partial ciphertext update using variable-length segment and fixed grouping
JP4784260B2 (en) Distributed data storage method, terminal, and program
JP2001156770A (en) Automatic re-synchronization for encrypted synchronized information
KR102482908B1 (en) Network security symmetric quantum cryptography key based encryption device
US20040075773A1 (en) Scrambler, descrambler and the program for scrambling or descrambling
KR101424972B1 (en) Method for using contents with a mobile card, host device, and mobile card
JP4703805B2 (en) ENCRYPTION DEVICE, ENCRYPTION METHOD, DECRYPTION DEVICE, DECRYPTION METHOD, AND COMMUNICATION SYSTEM
KR101005844B1 (en) Conditional access system for ts packet processing based on memory card
KR100551992B1 (en) encryption/decryption method of application data
KR100419500B1 (en) Method for transmitting and receiving software image
CN107154920B (en) Encryption method and decryption method for security information and receiving device for receiving security information
KR100429687B1 (en) Method for transmitting and receiving software image
CN115150134A (en) Intelligent power grid data encryption transmission method and system
CN111147461B (en) Data transmission method, device, server and user terminal
JP6155165B2 (en) ENCRYPTION DEVICE, DECRYPTION DEVICE, ENCRYPTION PROGRAM, AND DECRYPTION PROGRAM
JP2000236305A (en) System and method for collecting viewing history
WO2022170370A1 (en) Method of protecting file contents with high information entropy using a combination of swap codes, aes encryption standard and blockchain technology and system for implementing the same

Legal Events

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

Payment date: 20130130

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20140204

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20150204

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20160202

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20161222

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20171204

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20181211

Year of fee payment: 16

FPAY Annual fee payment

Payment date: 20191210

Year of fee payment: 17