KR19990060499A - Japanese satellite broadcasting decoder - Google Patents
Japanese satellite broadcasting decoder Download PDFInfo
- Publication number
- KR19990060499A KR19990060499A KR1019970080726A KR19970080726A KR19990060499A KR 19990060499 A KR19990060499 A KR 19990060499A KR 1019970080726 A KR1019970080726 A KR 1019970080726A KR 19970080726 A KR19970080726 A KR 19970080726A KR 19990060499 A KR19990060499 A KR 19990060499A
- Authority
- KR
- South Korea
- Prior art keywords
- multi2
- core module
- input
- data
- core
- Prior art date
Links
- 238000000034 method Methods 0.000 claims description 9
- 239000000872 buffer Substances 0.000 description 45
- QGVYYLZOAMMKAH-UHFFFAOYSA-N pegnivacogin Chemical compound COCCOC(=O)NCCCCC(NC(=O)OCCOC)C(=O)NCCCCCCOP(=O)(O)O QGVYYLZOAMMKAH-UHFFFAOYSA-N 0.000 description 30
- 102100023882 Endoribonuclease ZC3H12A Human genes 0.000 description 16
- 101710112715 Endoribonuclease ZC3H12A Proteins 0.000 description 16
- 108700012361 REG2 Proteins 0.000 description 12
- 101150108637 REG2 gene Proteins 0.000 description 12
- 101100120298 Rattus norvegicus Flot1 gene Proteins 0.000 description 12
- 101100412403 Rattus norvegicus Reg3b gene Proteins 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4405—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream decryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/426—Internal components of the client ; Characteristics thereof
- H04N21/42607—Internal components of the client ; Characteristics thereof for processing the incoming bitstream
- H04N21/42623—Internal components of the client ; Characteristics thereof for processing the incoming bitstream involving specific decryption arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/61—Network physical structure; Signal processing
- H04N21/6106—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
- H04N21/6143—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via a satellite
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/20—Adaptations for transmission via a GHz frequency band, e.g. via satellite
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Astronomy & Astrophysics (AREA)
- General Physics & Mathematics (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
위성방송 복호기에 있어서, 멀티2(MULTI2) 코어 모듈의 동작을 제어하는 코어모듈 동작제어기와, 상기 코어모듈 동작제어기에서 출력된 제어신호를 입력받아 단위함수 시작제어 및 동작모드별 초기 시작 명령을 출력하는 지시기와, 상기 멀티2(MULTI2) 코어 모듈의 입력방향을 선택하는 입력방향 선택부와, 상기 입력방향 선택부에서 선택된 방향에 따라 암호화 및 복호화를 수행하는 멀티2(MULTI2) 코어모듈을 포함하여 최소한의 면적과 빠른 속도의 복호 처리가 가능하며, 향후 암호화 강화를 위한 기본 함수의 반속 회수 증가에도 적응할 수 있다.In the satellite broadcasting decoder, the core module operation controller for controlling the operation of the MULTI2 core module and the control signal output from the core module operation controller are input to output unit function start control and initial start command for each operation mode. And an input direction selector for selecting an input direction of the MULTI2 core module, and a multi2 core module for performing encryption and decryption according to the direction selected by the input direction selector. It is possible to handle the minimum area and the fast decoding, and to adapt to the increase in the half-time retrieval of the basic function for future encryption enhancement.
Description
본 발명은 복호기에 관한 것으로, 특히 일본 디지탈 위성방송의 한정 수신 기능을 구현하기 위해 암호화된 디지탈 신호를 원래대로 복원하여 주는 위성방송용 복호기에 관한 것이다.The present invention relates to a decoder, and more particularly, to a satellite broadcast decoder that restores an encrypted digital signal to its original form to implement a limited reception function of Japanese digital satellite broadcasting.
디지탈 위성 방송을 송출할 때 제한된 수신자만이 방송을 청취할 수 있도록 하는 한정 수신 기능을 구현하기 위해 위성 방송 수신기측에서는 방송국에서 전송한 암호화한 데이터를 복원하는 복호기를 갖고 있어야 한다.When implementing digital satellite broadcasting, the satellite broadcasting receiver must have a decoder for restoring the encrypted data transmitted from the broadcasting station in order to implement a limited reception function so that only a limited receiver can listen to the broadcasting.
일반적으로 복호기는 유럽형 복호기와 일본형 복호기의 두 종류가 있으며 상기 유럽형 복호기는 커몬 디스크램블러(Common Discrambler)의 방식의 복호기를 사용하고, 일본형 복호기는 멀티2(MULTI2) 알고리즘의 복호기를 사용하며, 이하 MULTI2라 한다.Generally, there are two types of decoders, a European decoder and a Japanese decoder, and the European decoder uses a common discrambler type decoder, and the Japanese type decoder uses a multi2 (MULTI2) algorithm decoder. Hereinafter referred to as MULTI2.
상기 MULTI2 알고리즘은 π1, π2, π3, π4 네 개의 함수로 구성되며, 상기 네 개의 함수는 평행하게 사용되어 암호화 키 생성 및 데이터 암호화를 수행한다.The MULTI2 algorithm is composed of four functions π1, π2, π3, and π4, which are used in parallel to perform encryption key generation and data encryption.
이와 같이 구성된 일본형 복호기의 MULTI2 암호화 과정은 도 1에 도시된 바와 같이, 키를 생성하는 키생성부(1)와, 상기 키생성부(1)에서 생성된 시스템 키를 입력받아 암호화를 수행하는 암호화부(2)로 이루어진다.In the MULTI2 encryption process of the Japanese-type decoder configured as described above, as shown in FIG. 1, a key generation unit 1 generating a key and a system key generated by the key generation unit 1 are inputted to perform encryption. It consists of an encryption part 2.
상기 암호화부(2)는 기본함수인 π1, π2, π3, π4를 n회 반복함으로써 암호화를 하게되는데, 이는 N=4*n으로 이루어지며, 상기 암호화과정은 상위 32비트, 하위 32비트 단위로 수행한다.The encryption unit 2 encrypts the basic functions π1, π2, π3, and π4 by repeating n times, which is N = 4 * n, and the encryption process is performed in units of upper 32 bits and lower 32 bits. Perform.
상기 32비트 크기의 시스템 키가 8개 사용되며, 암호화 또는 복호화 모드로 동작시에 32비트 크기의 워크(work)키가 8개 사용된다.Eight system keys of 32 bits are used, and eight work keys of 32 bits are used when operating in an encryption or decryption mode.
실제 디지탈 방송에서 데이터를 암호화하여 송출할 때에는 블록 단위 암호화를 각 블록간에 상호 연관을 짓도록 사슬 구조로 연결해 암호화를 하게 되고, 전송 데이터 스트림이 64비트로 분할 가능시에 CBC모드를 사용하고, 64비트로 분할하고도 남는 부분이 있을 경우, 상기 남는 부분만 OFB모드를 적용하여 암호화 한다.When transmitting and encrypting data in real digital broadcasting, block-by-block encryption is linked by a chain structure so as to correlate between blocks, and encryption is performed. When the transmission data stream can be divided into 64 bits, the CBC mode is used. If there is a part remaining even after dividing, only the remaining part is encrypted by applying the OFB mode.
상기 CBC/OFB 모드로 암호화된 암호문을 복호하기 위해서는 기본 함수가 암호화와 복호화 과정을 모두 수행해야 하므로, 복호화 및 암호화 모듈을 각각 필요로 한다.In order to decrypt the ciphertext encrypted in the CBC / OFB mode, a basic function needs to perform both an encryption and a decryption process, and thus requires a decryption and an encryption module, respectively.
종래 기술에 따른 일본형 복호기는 MULTI2 알고리즘에서 여러개의 기본함수를 반복하여 사용함으로써 구성이 복잡해지고 제조단가가 높으며, 복호화 및 암호화 모듈을 각각 필요로 하므로 똑같은 회로를 두 개로 설계해야 하므로 효율성이 저하된다.The Japanese decoder according to the prior art repeatedly uses several basic functions in the MULTI2 algorithm, which is complicated in construction, high in manufacturing cost, and requires the same decryption and encryption module. .
본 발명은 이와 같은 문제점을 해결하기 위해 안출한 것으로, 일본 디지탈 위성방송에서 사용하도록 규정하고 있는 사양을 충족시키는 복호기를 하드웨어 적으로 설계하여 한 개의 기본함수 모듈로써 키 생성 및 암호화를 동시에 수행할 수 있도록 하는 일본형 위성방송 복호기를 제공하는데 그 목적이 있다.The present invention has been devised to solve such a problem, and it is possible to simultaneously perform key generation and encryption with one basic function module by designing a decoder in hardware that meets the specifications prescribed for use in Japanese digital satellite broadcasting. The purpose is to provide a Japanese satellite broadcast decoder.
도 1은 종래 기술에 따른 MULTI2 암호화 과정을 나타낸 도면1 is a view showing a MULTI2 encryption process according to the prior art
도 2는 본 발명에 따른 MULTI2 기본함수 모듈을 나타낸 도면2 is a diagram showing a MULTI2 basic function module according to the present invention;
도 3은 도 2의 MULTI2 기본함수를 이용하여 구현한 제어로직도3 is a control logic diagram implemented using the MULTI2 basic function of FIG.
도 4는 MULTI2 코어모듈의 CBC/OFB 모드에의 데이터 흐름도4 is a data flow diagram of the MULTI2 core module in CBC / OFB mode.
도 5는 본 발명에 따른 위성방송용 복호기를 나타낸 블록도5 is a block diagram showing a decoder for satellite broadcasting according to the present invention.
도 6은 본 발명에 따른 일본형 위성방송 복호장치를 나타낸 블록도6 is a block diagram showing a Japanese satellite broadcasting decoder according to the present invention.
멀티2(MULTI2) 코어 모듈을 이용한 위성방송 복호기에 있어서, 상기 멀티2(MULTI2) 코어 모듈의 동작을 제어하는 코어모듈 동작제어기와, 상기 코어모듈 동작제어기에서 출력된 제어신호를 입력받아 단위함수 시작제어 및 동작모드별 초기 시작 명령을 출력하는 지시기와, 상기 멀티2(MULTI2) 코어모듈의 입력방향으로 선택하는 입력방향 선택부와, 상기 입력방향 선택부에서 선택된 방향에 따라 암호화 및 복호화를 수행하는 멀티2(MULTI2) 코어모듈로 구성됨을 특징으로 한다.A satellite broadcasting decoder using a multi2 (MULTI2) core module, comprising: a core module operation controller for controlling the operation of the multi2 (MULTI2) core module and a control signal output from the core module operation controller to start a unit function An indicator for outputting an initial start command for each control and operation mode, an input direction selector for selecting an input direction of the MULTI2 core module, and encryption and decryption according to a direction selected by the input direction selector It is characterized by consisting of a Multi2 (MULTI2) core module.
이하, 첨부된 도면을 참조하여 설명하면 다음과 같다.Hereinafter, with reference to the accompanying drawings as follows.
도 3는 본 발명에 따른 MULTI2 알고리즘의 기본함수 구성을 나타낸 도면이고, 도 4는 도 3의 기본함수를 이용하여 구현한 MULTI2 제어블록도이다.FIG. 3 is a diagram illustrating a basic function configuration of the MULTI2 algorithm according to the present invention, and FIG. 4 is a MULTI2 control block diagram implemented using the basic function of FIG.
도 2를 참조하면, MULTI2 알고리즘의 π1, π2, π3, π4 각 단위 함수 모듈로 구성된 기본함수로써, 암호화는 데이터키가 입력되어 π1→π2→π3→π4와 같이 순방향으로 데이터 처리가 행해지는 경우이고, 복호화는 π4⇒π3⇒π2⇒π1의 순서로 데이터 처리가 행해진다.Referring to FIG. 2, a basic function composed of π1, π2, π3, and π4 unit function modules of the MULTI2 algorithm is used for encrypting data when a data key is input and data processing is performed in a forward direction such as π1 → π2 → π3 → π4. And decoding is performed in the order of? 4?? 3?? 2?? 1.
따라서, 키 생성시와, OFB모드 동작시는 암호화 과정을 수행하는, CBC 모드 동작시는 복호화 고정을 수행하며, 각 단위 함수 모듈은 단방향하기 때문에, 입력과 출력부분은 고정한다.Therefore, the encryption process is performed at the time of key generation and in the OFB mode operation, and the decryption fixing is performed at the CBC mode operation. Since each unit function module is unidirectional, the input and output parts are fixed.
이와 같은 코어 모듈은 단위 함수 4개로만 구성되어 있으므로, 하위부분 4개 키와 상위부분 4개키만을 사용할 수 밖에 없다.Since the core module consists of only four unit functions, only the lower four keys and the upper four keys can be used.
도 3에 도시한 기본 함수 모듈을 멀티2(MULTI2) 코어로 정의하면, 상기 코어 로직을 제어할 제어 로직과 함께 도 4와 같은 멀티2(MULTI2) 알고리즘을 수행할 제어도가 구현된다.If the basic function module illustrated in FIG. 3 is defined as a multi2 (MULTI2) core, a control diagram for implementing the multi2 (MULTI2) algorithm as shown in FIG. 4 is implemented along with the control logic to control the core logic.
마이컴(도시생략)으로부터 작동모드 명령을 받고 그에 따른 모드로 들어가면, 각 모드에서 필요한 반복 회수만큼 기본함수 모듈을 반복 수행해야 한다.If you receive an operation mode command from a microcomputer (not shown) and enter the corresponding mode, you must repeat the basic function module as many times as necessary in each mode.
도 3에 도시된 바와 같이, 도 4를 참조하면, 기본함수 모듈이 한 번 수행될 때마다 그 회수를 카운트하는 카운터(31)와, 상기 각 모듈 연산의 시작과 끝을 알리는 지시기(32)와, 상기 마이컴(도시생략)에서 선택된 수행모드에 따라 암호문의 입력값, 복호문의 출력값, 데이터의 흐름방향을 선택할 코어모듈 동작제어기(33)와, 키를 선택하는 키 선택부(34)와, 상기 마이컴(도시생략)에게 코어 로직의 상태를 알리는 신호생성부(35)와, 단위함수 시작제어 및 동작모드별 초기시작을 지시하는 초기시작 지시기(36)와, 상기 코어모듈 동작에어기(33)에서 출력된 제어신호를 입력받아 순방향 또는 역방향의 입력방향을 선택하는 입력방향 선택부(37)와, 상기 초기시작 지시기(36)와 입력방향 선택부(37)의 출력신호를 입력받아 암호화 또는 복호화를 수행하는 멀티2(MULTI2) 모듈(20)로 구성된다.As shown in FIG. 3, referring to FIG. 4, a counter 31 for counting the number of times each basic function module is performed, an indicator 32 for notifying the start and end of each module operation, and A core module operation controller 33 for selecting an input value of an encrypted text, an output value of a decrypted text, and a flow direction of data according to the execution mode selected by the microcomputer (not shown), a key selector 34 for selecting a key, and A signal generation unit 35 for notifying a microcomputer (not shown) of the state of the core logic, an initial start indicator 36 for instructing unit function start control and an initial start for each operation mode, and the core module operation air 33 An input direction selector 37 which selects a forward or reverse input direction by receiving the control signal output from the input signal, and receives an output signal of the initial start indicator 36 and the input direction selector 37 and encrypts or decrypts the input signal. MULTI2 to perform It consists of a module (20).
이와 같이 구성된 도 3의 멀티2(MULTI2) 모듈 함수를 이용하여, 들어오는 입력 스트림에 대한 CBC/OFB 모드의 사슬 구조를 실현하기 위해 버퍼와 함께 나타낸 구조는 도 5에 도시된 바와 같다.Using the MULTI2 module function of FIG. 3 configured as described above, the structure shown with the buffer to realize the chain structure of the CBC / OFB mode for the incoming input stream is shown in FIG.
도 5를 참조하면, 입력 스트림을 저장하다가 풀(Full)이 되면 64비트의 데이터를 코어 모듈에 전송함과 동시에 제1 지연버퍼(INTER_REG1)로 전송하는 입력버퍼(REG1)와, 상기 입력버퍼(REG1)에서 전송된 데이터를 읽어 들여 초기화 벡터를 저장한 후 입력버퍼(REG1)의 전송동기에 맞추어 제2 지연버퍼(INTER_REG2)로 데이터를 전송하는 제1 지연버퍼(INTER_REG1)와, 상기 제1 지연버퍼(INTER_REG1)의 전송동기에서 제2 지연버퍼(INTER_REG2)는 코어 모듈(MULTI2 Core)의 결과값과 XOR 연산을 거쳐 제2 지연버퍼(INTER_REG2)로 전송되는 것이다.Referring to FIG. 5, when the input stream is stored and full, the input buffer REG1 transmits 64-bit data to the core module and is transmitted to the first delay buffer INTER_REG1. A first delay buffer INTER_REG1 that reads data transmitted from REG1, stores an initialization vector, and transmits data to a second delay buffer INTER_REG2 in synchronization with the transmission buffer of the input buffer REG1, and the first delay. In the transmission synchronization of the buffer INTER_REG1, the second delay buffer INTER_REG2 is transmitted to the second delay buffer INTER_REG2 through an XOR operation with a result value of the core module MULTI2 Core.
상기와 같은 순서로 데이터 스트림을 전송하면 CBC 모드를 구현할 수 있으며, OFB 모드를 실현하기 위해서는 조금 다른 처리 방식을 갖는다.If the data streams are transmitted in the above order, the CBC mode can be implemented, and a slightly different processing method is provided to realize the OFB mode.
OFB 모드일 경우, 입력버퍼(REG1)에 저장된 최종 입력(64비트 미만) 데이터를 이용하지 않고, 이전에 들어온 마지막 암호문(64비트)을 이용해야 하므로, 코어 모듈(MULTI2 Core)은 제1지연버퍼(INTER_REG1)로부터 입력값을 받는다.In the OFB mode, the core module (MULTI2 Core) uses the first delay buffer because it must use the last ciphertext (64-bit) that was previously entered instead of the last input (less than 64-bit) data stored in the input buffer REG1. Receive an input value from (INTER_REG1).
이때, 최종 스트림 데이터는 입력버퍼(REG1)로부터 제1 지연버퍼(INTER_REG1)에 전송되며, 상기 코어모듈(MULTI2 Core)의 결과값과 제1 지연버퍼(INTER_REG1)에 저장된 최종 스트림을 XOR연산하여 마지막 스트림에 대한 복호문을 얻는다.At this time, the final stream data is transmitted from the input buffer REG1 to the first delay buffer INTER_REG1, and the resultant value of the core module MULTI2 Core and the final stream stored in the first delay buffer INTER_REG1 are XOR-operated. Get the decrypted text for the stream.
그런데, 여기서 코어모듈(MULTI2 Core)의 결과값과 최조 스트림의 연산 위치를 일치시키기 위해, 제1 지연버퍼(INTER_REG1)는 코어모듈(MULTI2 Core)의 연산중에 내부적으로 레지스터간에 쉬프트하여 미리 위치를 맞추어 놓는다.However, in order to match the result of the core module (MULTI2 Core) with the calculation position of the maximum stream, the first delay buffer (INTER_REG1) internally shifts between registers to adjust the position in advance during the calculation of the core module (MULTI2 Core). Release.
도 6은 본 발명에 따른 일본형 위성방송 복호장치를 나타낸 블록도이다.6 is a block diagram showing a Japanese satellite broadcasting decoding apparatus according to the present invention.
도 6에 도시한 바와 같이, MULTI2 코어를 이용한 복호기에 있어서, 상기 복호기가 수행할 모드를 정의하는 동작모드 제어기(51)와, 상기 MULTI2 코어모듈의 동작시작 명령을 출력하는 데이터 이송 명령 생성기(52)와, 상기 MULTI2 코어에 입력되는 데이터중 하나를 선택하는 코어입력 선택제어부(53)와, 워크키 레지스터(54)와, 시스템 키(55)와, 상기 MULTI2 코어에서 사용하는 키를 선택하는 키 선택부(56)와, 상기 MULTI2 코어 로직에서 출력되는 데이터와 XOR 함수를 통과할 값을 선택하는 데이터 흐름 제어부(57)로 구성된다.As shown in FIG. 6, in a decoder using a MULTI2 core, an operation mode controller 51 defining a mode to be executed by the decoder, and a data transfer command generator 52 outputting an operation start command of the MULTI2 core module. And a core input selection control unit 53 for selecting one of the data input to the MULTI2 core, a work key register 54, a system key 55, and a key for selecting a key used in the MULTI2 core. A selector 56 and a data flow controller 57 select a data to be passed through the MULTI2 core logic and a value to pass through the XOR function.
이와 같이 구성된 MULTI2 함수를 이용한 위성방송용 복호기는 다음과 같은 동작을 한다.The decoder for satellite broadcasting using the MULTI2 function configured as described above operates as follows.
상기 동작모드제어기(51)는 복호기가 수행할 모드를 정의하고, 동작모드 명령을 코어 모듈 및 각 제어로직에 가함으로써, 상기 제어로직에 대한 하나의 제어 신호가 되며, 거의 모든 제어로직들이 이 모드 명령을 참조하게 된다.The operation mode controller 51 defines a mode to be executed by the decoder, and gives an operation mode command to the core module and each control logic, thereby becoming one control signal for the control logic, and almost all control logics are in this mode. Will refer to the command.
상기 모드 명령은 리셋모드, 키생성모드, 암호화 모드, 복호화모드 네 가지로 나뉘어 진다.The mode command is divided into a reset mode, a key generation mode, an encryption mode, and a decryption mode.
상기 리셋모드는 복호기 동작 초기시 또는 입력 데이터를 기다리는 동안에 발송되며, 새 데이터가 입력되면 키 생성 모드로 변경되고, 복호가 끝나면 다시 리셋모드로 돌아간다.The reset mode is sent at the beginning of the decoder operation or while waiting for input data. When the new data is input, the reset mode is changed to the key generation mode. When the decoding ends, the reset mode returns to the reset mode.
상기 키 생성 모드에서 키 생성이 이루어진 후 입력버퍼(REG1)의 상태가 풀(full)이면 복호화모드로, 아니면 암호화 모드로 동작한다.After the key is generated in the key generation mode, if the state of the input buffer REG1 is full, it operates in decryption mode or in encryption mode.
상기 복호화 모드에서 복호가 끝났음을 알리는 신호를 참조하여, 끝나면, 준비 상태인 리셋 모드로 가고, 입력 데이터 스트림이 더 이상 없는 상황에서 입력버퍼(REG1)의 상태가 풀(full)이 아니면 암호화 모드로 가게된다.With reference to the signal indicating that the decoding is completed in the decryption mode, when finished, go to the reset mode in the ready state, and if the state of the input buffer REG1 is not full in the situation that the input data stream is no longer in the encryption mode, Will go.
또한, 암호화 모드에서 복호가 끝아면 리셋 모드로 돌아가 다음 입력을 받을 준비를 하게 된다.In addition, when decryption is completed in the encryption mode, the controller returns to the reset mode and is ready to receive the next input.
상기 데이터 이송 명령 생성기(52)는 MULTI2 코어모듈의 동작을 시작하는 명령을 출력하는데, 상기 명령에 동기되어 입력버퍼(REG1)에서의 데이터 출력이 일어나고, 코어 및 제1 및 제2 지연버퍼(INTER_REG1)(INTER_REG2)에서 출력버퍼(REG2)로의 데이터 이동이 일어난다.The data transfer command generator 52 outputs a command to start the operation of the MULTI2 core module. In response to the command, data output from the input buffer REG1 occurs, and the core and the first and second delay buffers INTER_REG1 are generated. Data transfer from INTER_REG2 to output buffer REG2 occurs.
상기 데이터 이송 명령은 입력버퍼(REG1) 제어기(60)로부터 입력버퍼(REG1)의 상태(full or not), 출력버퍼(REG2) 제어기(62)로부터 출력버퍼(REG2)의 상태(empty or not), 코어 준비상태(ready or not) 및 스트림 입력 시작 신호를 보고 조건이 충족되면 내려지게 된다.The data transfer command includes the state (full or not) of the input buffer REG1 from the input buffer REG1 controller 60 and the state of the output buffer REG2 from the output buffer REG2 controller 62. In this case, the core ready state (ready or not) and the stream input start signal are viewed and the condition is satisfied.
또한, 엠펙(Mpeg) 데이터 스트림 입력 초기에 MULTI2 코어는 일차적으로 본문 해독을 위한 워크 키를 생성하게 되는데, 이때 사용하는 요소로는 시스템 키, 데이터 키가 있다.In addition, at the beginning of the MPEG data stream input, the MULTI2 core first generates a work key for decrypting the body. The elements used are a system key and a data key.
상기 코어 입력 선택 제어부(53)는 MULTI2 코어에 들어가는 8바이트 입력을 선택해 주는 것으로서, 최초 데이터 키, 복호화 모드에서는 입력버퍼(REG1)로부터의 데이터 스트림을 전달하고, 복호화 모드에서는 제1 지연버퍼(INTER_REG1)로부터의 데이터 스트림을 전달하고, 암호화 모드에서는 제1 지연버퍼(INTER_REG1)로부터 데이터를 넘겨준다.The core input selection control unit 53 selects an 8-byte input that enters the MULTI2 core. The core input selection control unit 53 transfers the first data key and a data stream from the input buffer REG1 in the decryption mode, and the first delay buffer INTER_REG1 in the decryption mode. In the encryption mode, data is transmitted from the first delay buffer INTER_REG1.
이때, 코어가 키 생성 후 바로 암호화 모드로 들어갈 경우, 즉 최초 입력 스트림 데이터가 8바이트가 안 되는 경우에는 초기 벡터를 입력해 준다.At this time, when the core enters the encryption mode immediately after the key generation, that is, the initial input stream data is less than 8 bytes, the initial vector is input.
상기 데이터 흐름 제어기(56)는 MULTI2 코어 로직에서 나오는 데이터와 함께 xor 함수를 거칠 값을 선택해 주는 것으로, 제1 지연버퍼(INTER_REG1)와 제2 지연버퍼(INTER_REB2)중에서 선택을 하는데, 동작모드와 데이터 이송명령 그리고 그밖의 제어신호에 따라 판별해 준다.The data flow controller 56 selects a value that passes through the xor function together with the data from the MULTI2 core logic. The data flow controller 56 selects between the first delay buffer INTER_REG1 and the second delay buffer INTER_REB2. It is discriminated according to the transfer command and other control signals.
특히, 출력버퍼(REG2)의 화이널 엠티 카운터(Final Empty Counter)(57)의 값이 1일 때 제1 지연버퍼(INTER_REG1)로부터의 데이터를, 그 이외의 경우에는 제 2 지연버퍼(INTER_REG2)의 값을 선택해 준다.In particular, when the value of the final empty counter 57 of the output buffer REG2 is 1, data from the first delay buffer INTER_REG1 is obtained. Otherwise, the data of the second delay buffer INTER_REG2 is determined. Select a value.
한편, 데이터 스트림을 복호할 때 복호된 데이터의 끝이 어디인지 판별할 필요가 있다.On the other hand, when decoding the data stream, it is necessary to determine where the end of the decoded data is.
왜냐하면, 데이터 스트림 입력 후 바로 복호 신호가 나오는 것이 아니라 어느 정도의 처리 시간이 소요되기 때문이며, 각 모드 적용에 따른 지연 효과가 발생하기 때문이다.This is because a decoded signal does not come out immediately after the data stream is input, but a certain processing time is required, and a delay effect occurs according to the application of each mode.
따라서, 출력버퍼(REG2)의 최초 데이터 이송 명령 시점과 출력으로 전달되는 마지막 시점을 카운트하여 이를 기준으로 현재 복호되는 신호의 유효성을 검사하여 최종 출력을 제어한다.Accordingly, the final output is controlled by counting the time point of the first data transfer command of the output buffer REG2 and the last time point transmitted to the output and checking the validity of the signal currently decoded.
이때 사용되는 블록이 REG2 Final Empty Countr(57)와, REG2 Initial Fetch Counter(58)와, Data Validity Checker(59)이다.The blocks used at this time are the REG2 Final Empty Counter 57, the REG2 Initial Fetch Counter 58, and the Data Validity Checker 59.
상기 입력버퍼(REG1) 제어기(60)는 입력버퍼(REG1)의 1바이트 입력마다 카운트하는 카운터, 카운터로 입력버퍼(REG1)의 풀(Full) 상태를 확인하는 상태 검출기, 이들을 근거로 직렬 입력 스트림을 받아들이는 것을 조절 및 레지스터 값 이동을 제어하는 입력제어기로 구성된다.The input buffer REG1 controller 60 includes a counter that counts for each byte input of the input buffer REG1, a state detector that checks the full state of the input buffer REG1 with a counter, and a serial input stream based on these. It consists of an input controller that controls the acceptance and movement of register values.
상기 입력버퍼(REG1) 제어기(60)의 입력버퍼(REG1) 카운터 값을 입력받아 최초값을 갖고, 제1 지연버퍼(INTER_REG1)의 내부 레지스터 값 이동간에 변화하는 얼라인 카운터(Align Counter)(61)와, 출력버퍼(REG2) 제어기(62)를 포함한다.An Align Counter 61 which receives an input value of the input buffer REG1 of the input buffer REG1 controller 60 and has an initial value and changes between internal register values of the first delay buffer INTER_REG1. ) And an output buffer (REG2) controller 62.
상기 얼라인 카운터(61)는 상기 REG2 Final Empty Counter(57) 값에 인에이블되어 제1 지연버퍼(INTER_REG1)의 레지스터 값을 차례로 시프트(shift)시켜 코어 모듈의 결과값의 위치에 맞추어 놓아 oxr 연산부(45)에서 연산을 할 수 있도록 한다.The align counter 61 is enabled to the value of the REG2 Final Empty Counter 57 and shifts the register value of the first delay buffer INTER_REG1 in order to match the position of the result value of the core module. The operation can be performed at (45).
상기 출력버퍼(REG2) 제어기(62)는 출력버퍼(REG2)의 1바이트 출력마다 카운트하는 카운터와, 상기 카운터로 출력버퍼(REG2)의 엠피(Empty) 상태를 확인하는 상태 검출기와, 데이터 유효 검출기에서 오는 신호를 근거로 복호된 신호를 직렬 출력 및 레지스터 값 이동을 제어하는 것으로 구성되어 있으며, 라이트(Write) 인에이블 신호를 적절히 데이터 출력에 맞추어서 내보낸다.The output buffer REG2 controller 62 includes a counter that counts for each byte output of the output buffer REG2, a state detector for checking an empty state of the output buffer REG2 with the counter, and a data valid detector. It consists of controlling the serial output and the register value movement based on the signal from the signal. The write enable signal is sent to the data output properly.
본 발명은 MULTI2 알고리즘을 이용한 일본형 복호기에 있어서, MULTI2 코어 모듈을 단위함수 4개로만 구성함으로써 최소한의 면적과 빠른 속도의 복호 처리가 가능하며, 향후 암호화 강화를 위한 기본 함수의 반복 회수 증가에도 적응할 수 있다.According to the present invention, in the Japanese decoder using the MULTI2 algorithm, the MULTI2 core module consists of only four unit functions, which enables the minimum area and the fast decoding processing, and can adapt to the increase in the number of iterations of the basic functions for future encryption. Can be.
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970080726A KR100459160B1 (en) | 1997-12-31 | 1997-12-31 | Japanese satellite broadcasting decoder |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970080726A KR100459160B1 (en) | 1997-12-31 | 1997-12-31 | Japanese satellite broadcasting decoder |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990060499A true KR19990060499A (en) | 1999-07-26 |
KR100459160B1 KR100459160B1 (en) | 2005-09-30 |
Family
ID=37305050
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970080726A KR100459160B1 (en) | 1997-12-31 | 1997-12-31 | Japanese satellite broadcasting decoder |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100459160B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100845835B1 (en) * | 2002-01-21 | 2008-07-14 | 주식회사 엘지이아이 | Multi level scramble and descramble system |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR960027624A (en) * | 1994-12-14 | 1996-07-22 | 배순훈 | Decryption device of satellite broadcasting receiver |
JP2780668B2 (en) * | 1995-05-02 | 1998-07-30 | 日本電気株式会社 | Transmission / reception device and cross-net operation method using the transmission / reception device |
KR0176080B1 (en) * | 1996-05-14 | 1999-05-15 | 양승택 | Method of data coding for conditional access system in digital broadcasting system |
KR100531339B1 (en) * | 1997-12-30 | 2006-01-27 | 엘지전자 주식회사 | An apparatus for integrated descrambler of the satellite broadcast receiver |
-
1997
- 1997-12-31 KR KR1019970080726A patent/KR100459160B1/en not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100845835B1 (en) * | 2002-01-21 | 2008-07-14 | 주식회사 엘지이아이 | Multi level scramble and descramble system |
Also Published As
Publication number | Publication date |
---|---|
KR100459160B1 (en) | 2005-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4731843A (en) | Method and device of increasing the execution speed of cipher feedback mode of the DES by an arbitrary multiplier | |
JP5131874B2 (en) | Packetized transport stream processing unit | |
TW490968B (en) | Apparatus for encrypting data and cipher system | |
EP0471839B1 (en) | Encryption apparatus | |
RU2146421C1 (en) | Decoding of data subjected to repeated transmission in encoding communication system | |
KR100525389B1 (en) | Scrambler/descrambler of real time input stream | |
US6732271B1 (en) | Method of deciphering ciphered data and apparatus for same | |
RU2147793C1 (en) | Method for decryption of repeated data packet in confidential communication system | |
JP3769804B2 (en) | Decoding method and electronic device | |
KR0137709B1 (en) | Method for protecting an enciphered computer object code against cryptanalysis | |
US7623660B1 (en) | Method and system for pipelined decryption | |
KR100459160B1 (en) | Japanese satellite broadcasting decoder | |
KR100523061B1 (en) | Apparatus and Method for Scrambling of High Data | |
JP4395527B2 (en) | Information processing device | |
KR100845835B1 (en) | Multi level scramble and descramble system | |
KR100192416B1 (en) | General decoder using pipe line method | |
KR100546777B1 (en) | Apparatus and method for SEED Encryption/Decryption, and F function processor therefor | |
KR100226867B1 (en) | Stream cipher system of wireless communication | |
KR100342526B1 (en) | Apparatus for encrypting and decrypting data | |
KR102282363B1 (en) | Bit-serial hight operation apparatus and its method, computer-readable recording medium and computer program having program language for the same | |
JPS5992649A (en) | Block type data enciphering device control system | |
JPH09233065A (en) | Ciphering device and ciphering method | |
KR20040045517A (en) | Real time block data encryption/decryption processor using Rijndael block cipher and method therefor | |
JPH10303883A (en) | Enciphering method | |
JPH09510593A (en) | Data decryption device for pay television signal receiving system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20070918 Year of fee payment: 4 |
|
LAPS | Lapse due to unpaid annual fee |