KR102403462B1 - Transmitter, receiver, control apparatus and method using random bit-inversion - Google Patents
Transmitter, receiver, control apparatus and method using random bit-inversion Download PDFInfo
- Publication number
- KR102403462B1 KR102403462B1 KR1020200090968A KR20200090968A KR102403462B1 KR 102403462 B1 KR102403462 B1 KR 102403462B1 KR 1020200090968 A KR1020200090968 A KR 1020200090968A KR 20200090968 A KR20200090968 A KR 20200090968A KR 102403462 B1 KR102403462 B1 KR 102403462B1
- Authority
- KR
- South Korea
- Prior art keywords
- bit
- conversion
- control command
- bits
- detection code
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
- H04L9/0656—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/08—Randomization, e.g. dummy operations or using noise
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/34—Encoding or coding, e.g. Huffman coding or error correction
Abstract
본 발명은 랜덤 비트 변환 송신기, 수신기, 제어장치 및 제어방법에 관한 것으로, 특히 통신을 기반으로 전송되는 제어 명령어의 송신시 랜덤으로 선택된 영역의 비트를 서로 교환하여 암호화하고, 수신기에서는 랜덤으로 변환된 비트 영역을 찾아 재변환하여 복호화하는 랜점 비트 변환 송신기, 수신기, 제어장치 및 제어방법에 관한 것이다.The present invention relates to a random bit conversion transmitter, a receiver, a control apparatus and a control method, and in particular, when transmitting a control command transmitted based on communication, bits of a randomly selected area are exchanged and encrypted, and the receiver is randomly converted It relates to a LAN point bit conversion transmitter, a receiver, a control device, and a control method for finding and re-converting and decoding a bit region.
Description
본 발명은 랜덤 비트 변환 송신기, 수신기, 제어장치 및 제어방법에 관한 것으로, 더욱 상세하게는 통신을 기반으로 전송되는 제어 명령어의 송신시 랜덤으로 선택된 영역의 비트를 서로 교환하여 암호화하고, 수신기에서는 랜덤으로 변환된 비트 영역을 찾아 재변환하여 복호화하는 랜점 비트 변환 송신기, 수신기, 제어장치 및 제어방법에 관한 것이다.The present invention relates to a random bit conversion transmitter, a receiver, a control apparatus and a control method, and more particularly, when transmitting a control command transmitted based on communication, bits of a randomly selected area are exchanged and encrypted with each other, and the receiver It relates to a LAN point bit conversion transmitter, a receiver, a control device, and a control method for finding and re-converting and decoding a bit region converted to .
일반적으로 데이터 전송시에는 보안성과 신뢰성을 보장하기 위해 데이터를 정해진 규칙에 따라 암호화하는 암호화 기법을 적용하며, 최근의 스마트 제어시스템은 클라우드에 연결된 장치나 단말을 원격 제어 명령어로 실시간 제어한다.In general, when data is transmitted, an encryption technique that encrypts data according to a set rule is applied to ensure security and reliability, and recent smart control systems control devices or terminals connected to the cloud in real time with remote control commands.
그런데, 원격 제어 명령어를 사용하는 경우 제어 명령어 전달과정에서 원본 코드가 그래도 전달되어 의도적인 유출이 가능하고, 전통적인 대칭/비대칭 암호화 기법은 주로 제어 명령어가 아닌 데이터의 보호를 위한 것으로 실시간성이 보장되지 않는다.However, when remote control commands are used, the original code is still delivered during the control command transmission process and intentional leakage is possible. does not
즉, 종래에는 대칭 또는 비대칭 암호키(key)를 적용하여 처음부터 정해진 규칙에 따라 암호화 및 복호화를 수행하는 알고리즘을 제공할 뿐이어서 암호키가 유출되면 통신이 탈취된다. 반면, 암호화 수준을 높이면 더욱 복잡한 연산이 필요하여, 오직 암호화 시간에 크게 제약이 없는 응용에서만 적용이 가능한 문제가 있다.That is, in the prior art, only an algorithm for performing encryption and decryption according to a rule determined from the beginning by applying a symmetric or asymmetric encryption key is provided. On the other hand, if the encryption level is increased, more complicated calculations are required, so there is a problem that it can be applied only to applications that do not have much restriction on encryption time.
본 발명은 전술한 바와 같은 문제점을 해결하기 위해 제안된 것으로, 통신을 기반으로 전송되는 제어 명령어의 송신시 랜덤으로 선택된 영역의 비트를 서로 교환하여 암호화하고, 수신기에서는 랜덤으로 변환된 비트 영역을 찾아 재변환하여 복호화하는 랜점 비트 변환 송신기, 수신기, 제어장치 및 제어방법을 제공하고자 한다.The present invention has been proposed to solve the above problems, and when a control command transmitted based on communication is transmitted, bits of a randomly selected area are exchanged for encryption, and the receiver finds a randomly converted bit area An object of the present invention is to provide a LAN point bit conversion transmitter, a receiver, a control device and a control method for re-conversion and decoding.
이를 위해, 본 발명에 따른 랜덤 비트 변환 송신기는 제어 명령어가 포함된 비트 스트림을 수신기로 전송하는 것으로, 상기 제어 명령어가 포함된 원본 비트 스트림에 대한 에러 검출 코드를 생성하는 검출 코드 생성부와; 상기 원본 비트 스트림에 포함된 제어 명령어 중 변환이 이루어지는 비트 변환 영역을 랜덤(random)으로 선택하는 변환 비트 선택부와; 상기 비트 변환 영역 내의 비트들 중 적어도 2개의 비트를 서로 교환하여 비트를 변환시키는 비트 변환부; 및 상기 비트가 변환된 변환 비트 스트림에 상기 에러 검출 코드를 삽입하여 인코딩하는 인코딩부;를 포함하여, 상기 인코딩된 제어 명령어의 비트를 랜덤으로 재변환시켜 상기 원본 제어 명령어를 찾는 수신기로 송신하는 것을 특징으로 한다.To this end, a random bit conversion transmitter according to the present invention transmits a bit stream including a control command to a receiver, and includes: a detection code generator for generating an error detection code for an original bit stream including the control command; a conversion bit selection unit that randomly selects a bit conversion region to be converted from among the control commands included in the original bit stream; a bit conversion unit for converting bits by exchanging at least two bits among the bits in the bit conversion area; and an encoding unit for encoding by inserting the error detection code into the bit-converted converted bit stream, including randomly re-converting the bits of the encoded control command to transmit the original control command to a receiver looking for the original control command. characterized.
이때, 상기 제어 명령어를 입력받는 명령어 입력부; 및 상기 입력된 제어 명령어를 비트 스트림 데이터 구조로 확장하는 비트 스트림 확장부;를 더 포함하는 것이 바람직하다.In this case, a command input unit for receiving the control command; and a bit stream extension unit for extending the input control command into a bit stream data structure.
또한, 상기 비트 스트림 확장부는 상기 제어 명령어를 보안 해쉬 알고리즘(SHA: Secure Hash Algorithm)을 이용하여 비트 스트림으로 확장하는 것이 바람직하다.In addition, it is preferable that the bit stream extension unit expands the control command into a bit stream using a Secure Hash Algorithm (SHA).
또한, 상기 검출 코드 생성부는 상기 제어 명령어의 비트가 변환되기 이전의 원본 제어 명령어에 대해 CRC(Cyclic Redundancy Check)를 수행하여 CRC 코드를 생성하는 것이 바람직하다.Preferably, the detection code generator generates a CRC code by performing a cyclic redundancy check (CRC) on the original control command before the bit of the control command is converted.
또한, 상기 변환 비트 선택부는 다수회의 제어 명령어 전송 중 적어도 1회 이상 상기 비트를 변환하는 비트 변환 영역을 선택하는 것이 바람직하다.In addition, it is preferable that the conversion bit selection unit selects a bit conversion region that converts the bit at least once among a plurality of control command transmissions.
또한, 상기 변환 비트 선택부는 상기 제어 명령어의 비트들 중 연속하는 비트들로 이루어진 비트 영역을 선택하는 것이 바람직하다.In addition, it is preferable that the conversion bit selection unit selects a bit region composed of consecutive bits from among the bits of the control command.
또한, 상기 비트 변환부는 상기 비트 변환 영역에 나열된 연속하는 2개의 비트들을 서로 교환하여 비트를 역전시키는 것이 바람직하다.Preferably, the bit conversion unit reverses the bits by exchanging two consecutive bits arranged in the bit conversion area with each other.
이에 대응하여 본 발명에 따른 랜덤 비트 변환 수신기는 랜덤으로 비트 변환이 이루어진 변환 제어 명령어를 수신하여 원본 제어 명령어를 생성하는 것으로, 상기 변환 제어 명령어를 전송하는 비트 스트림에 삽입된 에러 검출 코드를 추출하는 검출코드 추출부와; 상기 변환 제어 명령어 중 재변환이 시도되는 비트 재변환 영역을 적어도 1회 이상 선택하는 재변환 비트 선택부와; 상기 비트 재변환 영역 내의 비트들 중 송신기에서 변환이 이루어진 개수와 동일한 개수의 비트를 서로 교환하는 비트 재변환부; 및 상기 재변환이 이루어진 비트 스트림으로부터 산출된 에러 검출 코드와 상기 수신된 비트 스트림에 포함된 에러 검출 코드가 일치하는지 비교하는 원본 확인부;를 포함하는 것을 특징으로 한다.In response to this, the random bit conversion receiver according to the present invention generates an original control command by receiving a conversion control command in which bit conversion is performed at random, and extracts an error detection code inserted into a bit stream transmitting the conversion control command. a detection code extraction unit; a reconversion bit selection unit for selecting a bit reconversion region to be reconverted from among the conversion control commands at least once or more; a bit reconversion unit for exchanging the same number of bits as the number of bits converted by the transmitter among the bits in the bit reconversion area; and an original checking unit that compares whether the error detection code calculated from the reconverted bit stream matches the error detection code included in the received bit stream.
또한, 상기 재변환 비트 선택부는 상기 원본 확인부에서 상기 에러 검출 코드의 비교 결과가 서로 다르면 다른 비트 재변환 영역을 선택하는 것이 바람직하다.In addition, it is preferable that the reconversion bit selection unit selects a different bit reconversion area when the comparison results of the error detection codes are different from each other in the original verification unit.
또한, 상기 재변환 비트 선택부는 상기 송신기에서 변환이 이루어진 개수와 동일한 개수의 비트가 연속하는 비트 재변환 영역을 랜덤 또는 순차로 선택하는 것이 바람직하다.In addition, it is preferable that the reconversion bit selection unit randomly or sequentially selects a bit reconversion region in which the same number of bits as the number of conversions performed by the transmitter are continuous.
또한, 상기 원본 확인부는 서로 다른 비트 재변환 영역에 대해 각각 재변환이 이루어진 비트 스트림의 에러 검출 코드와 상기 수신된 비트 스트림에 포함된 에러 검출 코드가 일치하는지 비교하여, 일치하는 경우의 비트 스트림에 포함된 제어 명령어를 송신기에서 전달한 원본 제어 명령어로 판단하는 것이 바람직하다.In addition, the original check unit compares whether an error detection code of a bit stream that has been reconverted for different bit reconversion regions is identical to an error detection code included in the received bit stream, and if the bit stream matches, It is preferable to determine the included control command as the original control command transmitted from the transmitter.
한편, 본 발명에 따른 랜덤 비트 변환 제어장치는 제어 명령어가 포함된 비트 스트림을 전송하되, 상기 제어 명령어 중 랜덤으로 선택된 일부 비트 변환 영역의 비트를 서로 교환하여 인코딩하는 랜덤 비트 변환 송신기; 및 상기 랜덤 비트 변환 송신기에서 전송된 비트 스트림을 수신하되, 상기 수신된 제어 명령어 중 일부 비트 재변환 영역의 비트를 서로 교환하여 디코딩하는 랜덤 비트 변환 수신기;를 포함하되, 상기 랜덤 비트 변환 수신기는 상기 랜덤 비트 변환 송신기에서 전송된 원본 제어 명령어에 대한 에러 검출 코드와 상기 비트 재변환 영역의 비트를 서로 교환 후 산출한 에러 검출 코드가 서로 일치하는지 비교하고, 상기 에러 검출 코드가 일치하는 경우의 제어 명령어를 원본 제어 명령어로 판독하는 것을 특징으로 한다.Meanwhile, an apparatus for controlling random bit conversion according to the present invention includes: a random bit conversion transmitter that transmits a bit stream including a control command, and encodes bits of some randomly selected bit conversion regions among the control commands by exchanging them with each other; and a random bit conversion receiver that receives the bit stream transmitted from the random bit conversion transmitter, and decodes bits of some bit reconversion regions of the received control command by exchanging them with each other; wherein the random bit conversion receiver comprises: Comparing whether the error detection code for the original control command transmitted from the random bit conversion transmitter and the error detection code calculated after exchanging the bits of the bit reconversion area match each other, the control command when the error detection code matches It is characterized in that it is read as an original control command.
또한, 본 발명에 따른 랜덤 비트 변환 제어방법은 랜덤 비트 변환 송신기에서, 제어 명령어가 포함된 비트 스트림을 전송하되, 상기 제어 명령어 중 랜덤으로 선택된 일부 비트 변환 영역의 비트를 서로 교환하여 인코딩하는 명령어 전송단계와; 랜덤 비트 변환 수신기에서, 상기 랜덤 비트 변환 송신기에서 전송된 비트 스트림을 수신하되, 상기 수신된 제어 명령어 중 일부 비트 재변환 영역의 비트를 서로 교환하여 디코딩하는 명령어 수신단계; 및 상기 랜덤 비트 변환 수신기에서, 상기 랜덤 비트 변환 송신기에서 전송된 원본 제어 명령어에 대한 에러 검출 코드와 상기 비트 재변환 영역의 비트를 서로 교환 후 산출한 에러 검출 코드가 서로 일치하는지 비교하고, 상기 에러 검출 코드가 일치하는 경우의 제어 명령어를 원본 제어 명령어로 판독하는 원본 판독 단계;를 포함하는 것을 특징으로 한다.In addition, the random bit conversion control method according to the present invention transmits, in a random bit conversion transmitter, a bit stream including a control command, and transmits a command for encoding by exchanging bits of some randomly selected bit conversion regions among the control commands step; a command receiving step of receiving, in a random bit conversion receiver, the bit stream transmitted from the random bit conversion transmitter, exchanging bits of a partial bit reconversion region among the received control commands for decoding; and in the random bit conversion receiver, compare whether the error detection code for the original control command transmitted from the random bit conversion transmitter and the error detection code calculated after exchanging the bits in the bit reconversion area match each other, and the error and an original reading step of reading the control command when the detection codes match as the original control command.
이상과 같은 본 발명은 통신을 기반으로 전송되는 제어 명령어의 송신시 랜덤으로 선택된 영역의 비트를 서로 교환하여 암호화하고, 수신기에서는 랜덤으로 변환된 비트 영역을 찾아 재교환하여 복호화하고 원본 제어 명령어를 실행한다.As described above, the present invention encrypts bits in a randomly selected region by exchanging them with each other when a control command transmitted based on communication is transmitted, and the receiver finds and re-exchanges and decrypts the randomly converted bit region and executes the original control command do.
따라서, 규칙적인 암호키를 사용하지 않음에 따라 전송 비트 스트림을 장시간 감시해도 제어 명령어의 탈취가 방지되면서도, H/W나 S/W의 추가적인 비용 발생을 최소화하면서도 제어 명령어의 보호 수준을 최대화한다.Therefore, since the regular encryption key is not used, the stealing of the control command is prevented even when the transport bit stream is monitored for a long time, and the level of protection of the control command is maximized while minimizing the additional cost of H/W or S/W.
도 1은 본 발명에 따른 송신기와 수신기를 포함한 랜덤 비트 변환 제어장치를 나타낸 구성도이다.
도 2는 본 발명에 따른 랜덤 비트 변환 제어장치의 비트 스트림을 나타낸 도이다.
도 3은 본 발명에 따른 랜덤 비트 변환 송신기를 나타낸 구성도이다.
도 4는 본 발명에 따른 랜덤 비트 변환 수신기를 나타낸 구성도이다.
도 5는 본 발명에 따른 랜덤 비트 변환 제어방법을 나타낸 흐름도이다.
도 6은 상기 도 5의 흐름도를 구체화한 실시예이다.1 is a block diagram showing an apparatus for controlling random bit conversion including a transmitter and a receiver according to the present invention.
2 is a diagram illustrating a bit stream of an apparatus for controlling random bit conversion according to the present invention.
3 is a block diagram illustrating a random bit conversion transmitter according to the present invention.
4 is a block diagram illustrating a random bit conversion receiver according to the present invention.
5 is a flowchart illustrating a random bit conversion control method according to the present invention.
6 is a detailed embodiment of the flowchart of FIG. 5 .
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 따른 랜덤 비트 변환 송신기, 수신기, 제어장치 및 제어방법에 대해 상세히 설명한다.Hereinafter, a random bit conversion transmitter, a receiver, a control apparatus and a control method according to a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings.
먼저, 도 1을 참조하여 본 발명에 따른 랜덤 비트 변환 제어장치에 대해 살펴본다. 도시된 바와 같이, 본 발명에 따른 랜덤 비트 변환 제어장치(10, 20)는 송신기(10) 및 그에 대응하는 수신기(20)로 구성된다.First, an apparatus for controlling random bit conversion according to the present invention will be described with reference to FIG. 1 . As shown, the random bit
송신기(10) 및 수신기(20)는 각각 아래에서 다시 상세히 설명하는 본 발명의 랜덤 비트 변환 송신기(10)와 랜덤 비트 변환 수신기(20)를 의미하며, 이들 송신기(10)와 수신기(20)는 한 쌍으로 작동하도록 대응되게 구성된다.The
실시예로서 송신기(10)는 MCU_Tx(10a)와 같은 프로세서에 의해 제어되고, 수신기(20)는 MCU_Rx(20a)와 같은 프로세서에 의해 제어될 수 있다. 경우에 따라 MCU_Tx(10a)와 MCU_Rx(20a)는 하나의 MCU로 통합될 수 있으며, 양방향 통신의 경우 송신기(10)가 수신기(20)로 기능하거나 혹은 그 반대가 되도록 구성될 수도 있다.As an embodiment, the
또한, 본 발명은 장치나 단말간 혹은 장치 내부에서 난독화(암호화)된 제어 명령어를 송수신하는 것으로, 대표적인 실시예로 가전제품이나 차량의 내외부에서 제어 명령어를 처리하는데 적용될 수 있다.Also, the present invention transmits and receives obfuscated (encrypted) control commands between devices or terminals or inside devices, and as a representative embodiment, can be applied to processing control commands inside and outside home appliances or vehicles.
이에, 본 발명은 통신 기반 제어 명령어를 송수신한다. 대표적인 실시예로 통신 프로토콜로는 I2C(Inter-Integrated Circuit), UART(Universal asynchronous receiver/transmitter), CAN(Controller Area Network) 및 LIN(Local Interconnect Network) 등이 있다.Accordingly, the present invention transmits and receives communication-based control commands. Representative examples of communication protocols include Inter-Integrated Circuit (I2C), Universal asynchronous receiver/transmitter (UART), Controller Area Network (CAN), and Local Interconnect Network (LIN).
따라서, 본 발명은 사물 인터넷(IoT)에서 센서 노드간 통신이나 센서 노드와 클라우드 서버와의 통신은 물론 차량 내 ECU 장치간, 차량 외부의 커넥티드 설비와의 통신을 비롯하여 제어 명령어를 사용하는 여러 응용분야에 적용이 가능하다.Therefore, the present invention provides various applications using control commands, including communication between sensor nodes in the Internet of Things (IoT), communication between sensor nodes and cloud servers, as well as communication between ECU devices in a vehicle and connected equipment outside the vehicle. applicable to the field.
이때, 본 발명에 따른 랜덤 비트 변환 제어장치(10, 20) 중 랜덤 비트 변환 송신기(10)는 제어 명령어가 포함된 비트 스트림을 전송하되, 상기 제어 명령어 중 랜덤(random)으로 선택된 비트 변환 영역의 비트를 서로 교환하여 인코딩한다.At this time, the random
즉, 통신 선로를 통해 전송이 가능하도록 제어 명령어를 비트 스트림으로 확장하고, 명령어 전송시 비트 스트림의 데이터 필드인 제어 명령어 중 일부 영역을 랜덤으로 선택하여 비트를 변환함으로써 암호키 없이 난독화한다.That is, the control command is expanded to a bit stream so that transmission is possible through a communication line, and when the command is transmitted, a part of the control command, which is a data field of the bit stream, is randomly selected and bits are converted to obfuscate without an encryption key.
이에 대응하여 랜덤 비트 변환 수신기(20)는 상기한 랜덤 비트 변환 송신기(10)에서 전송된 비트 스트림을 수신하고, 그 수신된 제어 명령어 중 일부 비트 재변환 영역의 비트를 서로 교환하여 디코딩한다.Correspondingly, the random
이때, 랜덤 비트 변환 수신기(20)는 원본 제어 명령어와 일치하는지 확인할 수 있도록, 전송된 원본 제어 명령어에 대한 에러 검출 코드(제1 에러 검출 코드)와 비트 재변환 영역의 비트를 서로 교환 후 산출한 에러 검출 코드(제2 에러 검출 코드)가 서로 일치하는지 비교한다.At this time, the random
비교된 두 에러 검출 코드가 서로 일치하는 경우 원본을 찾게 된 것이므로, 비트 재변환 영역에 있는 비트를 교환하여 변환을 마친 상태가 원본 제어 명령어인 것으로 판독하고, 그에 포함된 제어 명령어를 실행하게 된다.When the two compared error detection codes match each other, the original is found, so the conversion is completed by exchanging the bits in the bit re-conversion area, reading that the original control command is the original control command, and executing the control command included therein.
다만, 위 '원본 제어 명령어'는 최초 입력된 '제어 명령어'를 SHA-1 등의 알고리즘을 이용하여 비트 스트림으로 확장한 상태의 것으로서, 실질적으로는 서로 같은 명령어에 해당하므로 이하 각 부분에서는 적절한 의미로 이해될 것이다.However, the above 'original control command' is a state in which the initially input 'control command' is expanded into a bit stream using an algorithm such as SHA-1. will be understood as
한편, 도 2와 같이, 송신기(10)는 제어 명령어를 입력받아 플래그, 데이터(제어 명령어) 및 에러 검출 코드 필드 등을 포함하는 비트 스트림을 생성하고, 그 중 데이터 필드 내에서 랜덤으로 비트 변환 영역을 선택한다.Meanwhile, as shown in FIG. 2 , the
비트 변환 영역의 선택은 바람직하게 데이터 송신시마다 서로 다른 임의 영역이 선택되고, 그 선택된 비트 변환 영역 내의 비트는 서로 교환을 통해 변환(즉, 역전)이 이루어 진다. 도 2에서는 실시예로 8비트 제어 명령어 중 3번 비트와 4번 비트를 표현한 C와 D가 뒤바뀌는 것을 예로 들었다.As for the selection of the bit conversion area, a different random area is preferably selected every time data is transmitted, and the bits in the selected bit conversion area are converted (ie, reversed) by exchanging each other. In FIG. 2, it is exemplified that C and D expressing the 3rd and 4th bits of the 8-bit control command are reversed as an embodiment.
또한, 비트가 변환되기 이전의 원본 비트 스트림에 대해 에러 검출 코드를 생성하여 삽입한다. 즉, 원본 제어 명령어를 지시하기 위해 CRC(Cyclic Redundancy Check)와 같은 에러 검출 코드가 해당 필드에 삽입되어 비트 변환된 데이터(제어 명령어)와 함께 인코딩된다.In addition, an error detection code is generated and inserted in the original bit stream before bit conversion. That is, an error detection code such as a cyclic redundancy check (CRC) is inserted into the corresponding field to indicate the original control command, and is encoded together with the bit-converted data (control command).
이와 같이 원본 제어 명령어를 지정하는 에러 검출 코드를 생성하여 비트 스트림에 삽입함으로써, 수신측에서는 상기 원본 제어 명령어를 직/간접적으로 지정하는 에러 검출 코드를 이용하여 원본 제어 명령어를 찾을 수 있게 된다.As such, by generating and inserting an error detection code designating the original control command into the bit stream, the receiving side can find the original control command by using the error detection code that directly or indirectly designates the original control command.
수신기(20)에서는 비트 변환(비트 역전)된 변환 제어 명령어 및 변환 전의 원본 제어 명령어를 지시하는 에러 검출 코드가 포함된 비트 스트림을 수신하고, 변환 제어 명령어의 비트를 한번 또는 여러번 재변환하며 원본 제어 명령어를 탐색한다.The
원본을 찾기 위해 위와 같이 재변환할 때마다 에러 검출 코드를 산출하고, 그 산출된 에러 검출 코드가 수신된 비트 스트림에 포함되어 있는 원본 에러 검출 코드와 동일한지 반복 확인하는 방식으로 찾아가며, 이러한 과정을 보팅(voting)이라 칭한다.In order to find the original, the error detection code is calculated every time it is reconverted as above, and it is searched for by repeatedly checking whether the calculated error detection code is the same as the original error detection code included in the received bit stream. is called voting.
실시예로써 도시한 바와 같이, 1번 비트와 2번 비트를 표현한 A와 B를 서로 교환하여 변환시킨 후에 산출한 에러 검출 코드(예: CRC_ba)는 원본에 포함된 에러 검출 코드(CRC_ah)와 다르다.As shown in the embodiment, the error detection code (eg, CRC_ba) calculated after exchanging and converting A and B expressing the 1st and 2nd bits is different from the error detection code (CRC_ah) included in the original. .
반면, 3번 비트와 4번 비트를 서로 교환하여 변환시키면 최초의 원본인 C와 D가 되므로, 이와 같이 재변환시킨 후 산출한 에러 검출 코드(CRC_ah)는 원본에 포함된 에러 검출 코드(CRC_ah)와 동일하므로, 적정한 재변환을 통해 원본을 찾은 것이 된다.On the other hand, if bits 3 and 4 are exchanged and converted, the original originals C and D are obtained. Therefore, the error detection code (CRC_ah) calculated after reconversion in this way is the error detection code (CRC_ah) included in the original. Since it is the same as , the original was found through appropriate re-transformation.
따라서, 본 발명은 송신측과 수신측 모두 별도의 암호키를 필요로 하지 않으면서도 적은 연산량으로 난독화(암호화)가 가능하게 한다. 또한 실시간으로 정밀한 데이터 전송을 가능하게 한다.Accordingly, the present invention enables obfuscation (encryption) with a small amount of computation without requiring a separate encryption key for both the transmitting side and the receiving side. It also enables precise data transmission in real time.
좀더 구체적으로 설명하면, 도 3과 같이 본 발명에 따른 랜덤 비트 변환 송신기(10)는 제어 명령어가 포함된 비트 스트림을 수신기(20)로 전송하는 것으로, 검출 코드 생성부(11), 변환 비트 선택부(12), 비트 변환부(13) 및 인코딩부(14)를 포함한다.More specifically, as shown in FIG. 3, the random
바람직한 실시예로 본 발명의 랜덤 비트 변환 송신기(10)는 명령어 입력부(11a) 및 비트 스트림 확장부(11b)를 더 포함하며, 이들은 송신측 MCU_Tx(10a)나 혹은 그 외 ECU(Electric Control Unit)과 같은 여러 프로세서에 의해 제어된다.In a preferred embodiment, the random
따라서, 인코딩된 제어 명령어의 비트를 랜덤으로 재변환시켜 원본 제어 명령어를 찾는 수신기(20)로 송신한다.Accordingly, the bits of the encoded control command are randomly re-converted and transmitted to the
이때, 상기한 검출 코드 생성부(11)는 제어 명령어가 포함된 원본 비트 스트림에 대한 에러 검출 코드를 생성한다. 에러 검출 코드는 원본 제어 명령어가 포함된 비트 스트림을 지정한다.In this case, the
에러 검출 코드는 자체에서 제공하는 고유 기능으로서 송신측에서 수신측으로 전송된 비트 스트림에 손실이나 에러가 있는지 판독할 수 있게 한다. 특히, 본 발명에서는 수신측에서 원본을 찾는 비교 대상으로도 이용한다.The error detection code is a unique function provided by itself that allows it to read whether there is any loss or error in the transmitted bit stream from the sender to the receiver. In particular, in the present invention, it is also used as a comparison target to find the original at the receiving side.
위와 같은 에러 검출 코드에는 Parity Bit, Check Sum, LRC(Longitudinal Redundancy Check) 및 CRC(Cyclic Redundancy Check)을 비롯한 여러 에러 검출(Error Detect) 기술이 적용될 수 있다.Various error detection techniques including Parity Bit, Check Sum, Longitudinal Redundancy Check (LRC), and Cyclic Redundancy Check (CRC) may be applied to the above error detection code.
그러나, 본 발명과 같이 제어 명령어에 적용하는 경우에는 비트 수가 비교적 작으면서도 정밀하고 신뢰성 높은 제어 명령어의 전달 및 복구를 위해, 데이터 처리량에 비해 신뢰성이 높은 CRC 코드를 이용하는 것이 바람직하다.However, when applied to a control command as in the present invention, it is preferable to use a CRC code having a relatively small number of bits and a high reliability compared to the data throughput in order to transmit and recover a precise and highly reliable control command.
변환 비트 선택부(12)는 원본 비트 스트림에 포함된 제어 명령어 중 변환이 이루어지는 비트 변환 영역을 랜덤(random)으로 선택한다. 이와 같이 데이터 송신시 랜덤으로 비트 변환 영역을 선택하면 그 자체로 난독화가 이루어진다.The conversion
이때, 변환 비트 선택부(12)는 다수회의 제어 명령어 전송 중 적어도 1회 이상 비트 변환 영역을 선택한다. 비트 변환 영역의 선택은 비트 변환의 실행을 의미하므로 비트 변환이 1회 이상이라는 이루어진다.In this case, the conversion
따라서, 본 발명은 송신기(10)에서 수신기(20)로 제어 명령어를 전송하는 경우, 전송시마다 비트 변환을 하거나 전송 중 일부의 경우에만 조건에 따라 비트 변환을 할 수도 있다.Accordingly, according to the present invention, when transmitting a control command from the
제어 명령어는 전송시마다 매번 비트 변환을 통해 난독화 하는 것이 바람직하지만, 비트 변환이 있는 경우와 없는 경우가 있으면 외부에서 볼 때는 그 자체로도 난독화의 효과를 제공할 수 있다.It is desirable to obfuscate the control command through bit conversion every time it is transmitted, but when there is bit conversion and there is no bit conversion, the effect of obfuscation can be provided by itself when viewed from the outside.
변환 비트 선택부(12)는 제어 명령어의 비트들 중 연속하는 비트들로 이루어진 비트 영역을 선택하는 것이 바람직하다. 따라서, 여러개의 비트를 변환하는 경우 중간에 변환에 관여하지 않는 다른 비트가 없도록 하여 변환 영역을 선택하여 계산량을 줄일 수 있도록 한다.It is preferable that the conversion
본 발명에서의 비트 변환은 수신측에서 재변환을 하여 복구할 수 있도록 서로 다른 비트들을 교환하는 방식으로 이루어지며, 이러한 이유로 2비트 이상이 변환에 이용될 수 있다.Bit conversion in the present invention is performed by exchanging different bits so that they can be recovered by re-conversion at the receiving side. For this reason, more than 2 bits can be used for conversion.
또한, 변환 대상이 2비트라면 연속한 비트를 서로 교환할 수 있는 경우의 수가 한가지 이지만, 3비트 이상이라면 비트들간 교환되는 순서나 개수가 다양할 수 있으며, 본 발명은 교환되는 경우의 수가 다양한 경우도 포함될 수 있다.In addition, if the conversion target is 2 bits, the number of cases in which consecutive bits can be exchanged with each other is one, but if it is 3 bits or more, the order or number of bits exchanged may vary. may also be included.
다만, 도 2에 실시예로 도시한 바와 같이, 비트 변환 영역은 두개의 비트가 연속되는 영역을 선택하고, 이들 두개의 비트를 서로 교환하여 변환하는 것이 바람직하며, 이점에서 비트들간 순서가 바뀐 '비트 역전'이 이루어진다.However, as shown in FIG. 2 as an embodiment, the bit conversion area selects an area in which two bits are continuous, and it is preferable to convert these two bits by exchanging them with each other. A bit reversal is achieved.
위와 같이 각각 2개의 비트로 이루어진 서로 다른 비트 변환 영역들 중 어느 하나를 랜덤으로 선택하고, 랜덤으로 선택된 두개의 비트를 서로 교환(역전)하여 비트 변환을 하면 연산량을 줄이면서도 난독화를 가능하게 한다.As described above, if any one of the different bit conversion areas each consisting of two bits is randomly selected, and bit conversion is performed by exchanging (reversing) the two randomly selected bits, obfuscation is possible while reducing the amount of computation.
비트 변환부(13)는 비트 변환 영역 내의 비트들 중 적어도 2개의 비트를 서로 교환하여 비트를 변환시키는 것으로, 비트 스트림 중 제어 명령어를 나타내는 데이터 필드에서 랜덤으로 선택된 비트를 서로 교환한다.The
위에서 설명한 바와 같이 비트 변환 영역 내의 비트가 3개 이상이면 이들을 교환하는 경우의 수가 여러가지이므로 이러한 경우에도 변환은 랜덤하게 이루어지며, 비트가 2개이면 단순히 서로 교환하는 경우만 가능하다.As described above, if there are three or more bits in the bit conversion area, the number of cases for exchanging them varies. Even in this case, the conversion is performed randomly, and if there are two bits, only the case of simply exchanging them is possible.
랜덤으로 선택된 비트 변환 영역 내의 비트가 2비트인 경우를 가정하면 송신기(10)에서 암호키 없이 난독화가 이루어지도록 하면서도, 수신기(20)에서 연산량을 최소화하여 빠른 동적 복구(비트 재변환)를 가능하게 한다. Assuming that the bits in the randomly selected bit conversion region are 2 bits, the
그러므로, 비트 변환부(13)는 비트 변환 영역에 나열된 연속하는 2개의 비트들을 서로 교환하여 비트를 역전시키는 것이 바람직하다.Therefore, it is preferable that the
인코딩부(14)는 비트가 변환된 변환 비트 스트림에 에러 검출 코드를 삽입하여 인코딩한다. The
비트 스트림은 제어 명령어가 포함된 데이터 필트 및 CRC 코드와 같은 에러 검출 코드 이외에 플래그 및 어드레스 등을 비롯항 다른 여러 필드를 더 포함할 수 있으며, 이는 통신 프로토콜에 따라 결정된다.The bit stream may further include a number of other fields, including flags and addresses, in addition to a data field containing control instructions and an error detection code such as a CRC code, which is determined according to a communication protocol.
이와 같이 인코딩된 제어 명령어는 송신부(10b)를 통해 수신기(20)로 전송되는데, 수신기(20)는 수신된 제어 명령어의 비트를 랜덤으로 재변환시켜 원본 제어 명령어를 찾는 하나 또는 그 이상의 수신측을 포함할 수 있다.The control command encoded in this way is transmitted to the
명령어 입력부(11a)는 제어 명령어를 입력받아 제공하는 것으로, 관리 서버, 센서 및 ECU와 같은 외부 장치는 물론 내부 장치에서 전달된 제어 명령어를 입력받아 후술하는 비트 스트림 확장부(11b)에 제공한다.The
비트 스트림 확장부(11b)는 상기 명령어 입력부(11a)를 통해 입력된 제어 명령어를 비트 스트림 데이터 구조로 확장한다. 이를 통해 생성된 비트 스트림에 대해 상술한 바와 같은 비트 변환 및 인코딩이 이루어진다.The bit
이때, 비트 스트림 확장부(11b)는 일 예로 비트 시프트와 덧샘을 통해 보안성을 제공하며 160비트의 값을 생성하는 보안 해쉬 알고리즘(SHA: Secure Hash Algorithm)을 이용하여 비트 스트림으로 확장하는 것이 바람직하다. 특히, SHA-1 함수를 이용하면 보안 프로토콜에 적합성을 제공한다.In this case, the bit
이하, 첨부된 도면을 참조하여 본 발명에 따른 랜덤 비트 변환 수신기에 대해 설명한다.Hereinafter, a random bit conversion receiver according to the present invention will be described with reference to the accompanying drawings.
본 발명에 따른 랜덤 비트 변환 수신기(20)는 위에서 설명한 랜덤 비트 변환 송신기(10)로부터 송신된 비트 스트림을 능동적으로 복원하고, 제어 명령어를 실행한다.The random
이를 위해, 본 발명은 랜덤으로 비트 변환이 이루어진 변환 제어 명령어를 수신하여 원본 제어 명령어를 디코딩하도록 검출코드 추출부(21), 재변환 비트 선택부(22), 비트 재변환부(23) 및 원본 확인부(24)를 포함한다. 바람직한 실시예로 명령어 테이블(25)을 더 포함한다.To this end, the present invention receives a conversion control command in which bit conversion is made at random, and a detection
여기서, 상기 검출코드 추출부(21)는 비트 스트림에 삽입된 에러 검출 코드를 추출한다. 에러 검출 코드는 비트 스트림에 포함되어 있는 그대로를 추출하며, 이와 같이 추출된 에러 검출 코드는 수신된 비트 스트림으로부터 산출된 에러 검출 코드와 비교하는 기준이 된다.Here, the detection
상기 비트 스트림은 변환 제어 명령어를 전송하는 것으로, 변환 제어 명령어는 송신측에서 원본 제어 명령어의 일정 영역 비트를 변환시킨 것이다. 반면, CRC와 같이 송신측에서 원본 제어 명령어를 대상으로 생성한 것이다.The bit stream transmits a conversion control command, and the conversion control command converts bits of a certain area of the original control command at the sending side. On the other hand, like the CRC, the transmitter generates the original control command as a target.
따라서, 송신시 랜덤으로 변환된 변환 제어 명령어에 의해 송신 중의 난독화를 가능하게 하고, 추출된 에러 검출 코드에 의해 원본 제어 명령어가 어떤 것인지 찾을 수 있게 한다.Therefore, it is possible to obfuscate during transmission by the randomly converted transformation control command at the time of transmission, and to find out what the original control command is by the extracted error detection code.
재변환 비트 선택부(22)는 비트 스트림에 포함된 변환 제어 명령어 중 재변환이 시도되는 비트 재변환 영역을 적어도 1회 이상 선택한다. The reconversion
이는 원본을 찾는 과정인 비트 재변환을 원본이 찾아질 때까지 반복됨을 의미한다. 따라서, 시스템 오류 등으로 인해 설정된 횟수가 초과하면 재전송을 요청하거나 중단할 수도 있다.This means that bit reconversion, the process of finding the original, is repeated until the original is found. Therefore, if the set number of times is exceeded due to a system error, retransmission may be requested or stopped.
따라서, 재변환 비트 선택부(22)는 원본 확인부(24)에서 에러 검출 코드의 비교 결과가 서로 다르면 또 다른 비트 재변환 영역을 선택하여, 비트 재변환이 수행되도록 하며, 이러한 과정은 반복된다.Accordingly, the reconversion
이때, 재변환 비트 선택부(22)는 송신기(10)에서 변환이 이루어진 개수와 동일한 개수의 비트가 연속하는 비트 재변환 영역을 선택한다. 선택은 랜덤 또는 순차로 이루어진다. 즉, 비트 재변환은 랜덤으로 지정된 영역에 대해 수행하거나 앞쪽부터 2개(혹으 그 이상)의 비트씩 순차로 옆으로 이동하며 수행할 수도 있다.At this time, the reconversion
이점에서 송신기(10)와 수신기(20)에 차이가 있으며, 어느 방법을 선택하든 랜덤으로 변환된 비트 스트림으로부터 원본을 찾을 확율은 수신기(20)에서 동적 복구를 다수회 할 시도할수록 같아지게 된다.In this respect, there is a difference between the
비트 재변환부(23)는 재변환 비트 선택부(22)에 의해 랜덤 혹은 순차로 선택된 비트 재변환 영역에 대해 비트를 재변환한다. 비트 재변환 영역의 선택에 따른 비트 재변환은 아래와 같이 원본 제어 명령어를 찾을때까지 계속된다.The
송신기(10)에서 이루어진 비트 변환에 대응하여 수신기(20)에서 비트 재변환을 수행함으로써 원본 제어 명령어를 판단할 수 있도록, 변환/재변환은 동일한 규칙을 적용한다. 즉, 비트 재변환 영역 내의 비트들 중 송신기(10)에서 변환이 이루어진 개수와 동일한 개수의 비트를 서로 교환한다.The same rules are applied to the conversion/reconversion so that the original control command can be determined by performing bit reconversion in the
원본 확인부(24)는 재변환이 이루어진 비트 스트림으로부터 산출된 에러 검출 코드와 수신된 비트 스트림에 포함된 에러 검출 코드가 일치하는지 비교하며, 필요시 디코더 기능을 함께 제공할 수 있다.The
구체적으로, 도 2를 참조하여 설명한 바와 같이 원본 확인부(24)는 서로 다른 비트 재변환 영역에 대해 각각 재변환이 이루어진 비트 스트림의 에러 검출 코드와 수신된 비트 스트림에 포함된 에러 검출 코드가 일치하는지 비교한다.Specifically, as described with reference to FIG. 2 , the
따라서, 에러 검출 코드가 서로 일치하는 경우, 그 재변환된 비트 스트림에 포함된 제어 명령어를 송신기(10)에서 비트를 변환하기 전의 원본 제어 명령어로 판단한다. 즉, 비트 재변환 후에 대해 산출한 에러 제어 코드가 원본을 지정하는 에러 제어 코드와 일치하므로 재변환을 통해 원본과 같아진 것으로 판단한다.Accordingly, when the error detection codes match each other, the control command included in the reconverted bit stream is determined as the original control command before bit conversion in the
판단 후에는 명령어 테이블(25)을 참조하여 실제 제어 명령어를 판독한다. 명령어 테이블(25)은 SHA-1 테이블과 같이 비트 스트림으로 확장하는데 이용된 테이블로, 여기서 실제 원본 명령어를 판독하여 해당 제어 명령이 실행되게 한다.After the determination, the actual control command is read with reference to the command table 25 . The instruction table 25 is a table used to extend to a bit stream, such as the SHA-1 table, where the actual original instruction is read and the corresponding control instruction is executed.
이하, 첨부된 도면을 참조하여 본 발명에 따른 랜덤 비트 변환 제어방법에 대해 상세히 설명한다. 다만, 본 발명의 제어방법은 위에서 설명한 본 발명의 송신기, 수신기 또는 송수신기에서 실행되므로 가급적 중복적인 설명은 생략한다.Hereinafter, a random bit conversion control method according to the present invention will be described in detail with reference to the accompanying drawings. However, since the control method of the present invention is executed in the transmitter, the receiver or the transceiver of the present invention described above, redundant description will be omitted as much as possible.
도 5와 같이, 본 발명에 따른 랜덤 비트 변환 제어방법은 송신기(10)에서의 명령어 전송단계(S10) 및 수신기(20)에서의 명령어 수신단계(S20)를 포함하며, 수신기(20)에서 원본 제어 명령어를 복구하는 원본 판독 단계(S30)를 포함한다.5, the random bit conversion control method according to the present invention includes a command transmission step (S10) in the
이때, 도 6과 같이 명령어 전송단계(S10)에서 랜덤 비트 변환 송신기(10)는 제어 명령어가 포함된 비트 스트림을 CAN 통신 등을 통해 전송하되, 상기 제어 명령어 중 랜덤으로 선택된 일부 비트 변환 영역의 비트를 서로 교환하여 인코딩한다.At this time, as shown in FIG. 6 , in the command transmission step ( S10 ), the random
다음, 명령어 수신단계(S20)에서 랜덤 비트 변환 수신기(20)는 랜덤 비트 변환 송신기(10)에서 전송된 비트 스트림을 수신하되, 상기 수신된 제어 명령어 중 일부 비트 재변환 영역의 비트를 서로 교환하여 디코딩한다.Next, in the command receiving step (S20), the random
다음, 원본 판독 단계(S30)에서 랜덤 비트 변환 수신기(20)는 랜덤 비트 변환 송신기(10)에서 전송된 원본 제어 명령어에 대한 에러 검출 코드와 비트 재변환 영역의 비트를 서로 교환 후 산출한 에러 검출 코드가 서로 일치하는지 비교한다. Next, in the original reading step ( S30 ), the random
비교 결과 에러 검출 코드가 일치하면, 그 일치가 이루어지는 동안 재변환된 비트 스트림에 포함된 제어 명령어를 원본 제어 명령어로 판독하고, 그 판독된 제어 명령어가 실행되게 한다.If the error detection codes match as a result of the comparison, the control instruction included in the reconverted bit stream is read as the original control instruction while the match is made, and the read control instruction is executed.
이상, 본 발명의 특정 실시예에 대하여 상술하였다. 그러나, 본 발명의 사상 및 범위는 이러한 특정 실시예에 한정되는 것이 아니라, 본 발명의 요지를 변경하지 않는 범위 내에서 다양하게 수정 및 변형 가능하다는 것을 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 이해할 것이다.In the above, specific embodiments of the present invention have been described above. However, the spirit and scope of the present invention is not limited to these specific embodiments, and various modifications and variations can be made within the scope that does not change the gist of the present invention. You will understand when you grow up.
따라서, 이상에서 기술한 실시예들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이므로, 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 하며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.Therefore, since the embodiments described above are provided to fully inform those of ordinary skill in the art to which the present invention belongs the scope of the invention, it should be understood that they are exemplary in all respects and not limiting, The invention is only defined by the scope of the claims.
10: 랜덤 비트 변환 송신기
10a: 송신측 MCU(MCU_Tx)
10b: 송신부
11: 검출 코드 생성부
11a: 명령어 입력부
11b: 비트 스트림 확장부
12: 변환 비트 선택부
13: 비트 변환부
14: 인코딩부
20: 랜덤 비트 변환 수신기
20a: 수신측 MCU(MCU_Rx)
20b: 수신부
21: 검출코드 추출부
22: 재변환 비트 선택부
23: 비트 재변환부
24: 원본 확인부
25: 명령어 테이블10: Random bit conversion transmitter
10a: Transmitting MCU (MCU_Tx)
10b: transmitter
11: Detection code generator
11a: command input section
11b: bit stream extension
12: conversion bit selection unit
13: bit conversion unit
14: encoding unit
20: random bit conversion receiver
20a: receiving side MCU (MCU_Rx)
20b: receiver
21: detection code extraction unit
22: reconversion bit selection unit
23: bit reconversion unit
24: original verification unit
25: command table
Claims (13)
상기 제어 명령어가 포함된 원본 비트 스트림에 대한 에러 검출 코드를 생성하는 검출 코드 생성부(11)와;
상기 원본 비트 스트림에 포함된 제어 명령어 중 변환이 이루어지는 비트 변환 영역을 랜덤(random)으로 선택하는 변환 비트 선택부(12)와;
상기 비트 변환 영역 내의 비트들 중 적어도 2개의 비트를 서로 교환하여 비트를 변환시키는 비트 변환부(13); 및
상기 비트가 변환된 변환 비트 스트림에 상기 에러 검출 코드를 삽입하여 인코딩하는 인코딩부(14);를 포함하여,
상기 인코딩된 제어 명령어의 비트를 랜덤으로 재변환시켜 상기 제어 명령어를 찾는 수신기로 송신하고,
상기 변환 비트 선택부(12)는,
상기 제어 명령어의 비트들 중 연속하는 비트들로 이루어진 비트 영역을 선택하는 것을 특징으로 하는 랜덤 비트 변환 송신기.A random bit conversion transmitter for transmitting a bit stream including a control command to a receiver,
a detection code generator 11 for generating an error detection code for the original bit stream including the control command;
a conversion bit selection unit 12 for randomly selecting a bit conversion region to be converted from among the control commands included in the original bit stream;
a bit conversion unit 13 for converting bits by exchanging at least two bits among the bits in the bit conversion region; and
Including;;
Reconverting the bits of the encoded control command at random and transmitting it to a receiver looking for the control command,
The conversion bit selection unit 12,
Random bit conversion transmitter, characterized in that selecting a bit region consisting of consecutive bits among the bits of the control command.
상기 제어 명령어를 입력받는 명령어 입력부(11a); 및
상기 입력된 제어 명령어를 비트 스트림 데이터 구조로 확장하는 비트 스트림 확장부(11b);를 더 포함하는 것을 특징으로 하는 랜덤 비트 변환 송신기.According to claim 1,
a command input unit 11a for receiving the control command; and
Random bit conversion transmitter according to claim 1, further comprising: a bit stream extension unit (11b) that expands the input control command into a bit stream data structure.
상기 비트 스트림 확장부(11b)는,
상기 제어 명령어를 보안 해쉬 알고리즘(SHA: Secure Hash Algorithm)을 이용하여 비트 스트림으로 확장하는 것을 특징으로 하는 랜덤 비트 변환 송신기.3. The method of claim 2,
The bit stream extension unit 11b,
Random bit conversion transmitter, characterized in that the control command is extended to a bit stream using a Secure Hash Algorithm (SHA).
상기 검출 코드 생성부(11)는,
상기 제어 명령어의 비트가 변환되기 이전의 원본 제어 명령어에 대해 CRC(Cyclic Redundancy Check)를 수행하여 CRC 코드를 생성하는 것을 특징으로 하는 랜덤 비트 변환 송신기.According to claim 1,
The detection code generation unit 11,
Random bit conversion transmitter, characterized in that the CRC code is generated by performing a cyclic redundancy check (CRC) on the original control command before the bit of the control command is converted.
상기 변환 비트 선택부(12)는,
다수회의 제어 명령어 전송 중 적어도 1회 이상 상기 비트를 변환하는 비트 변환 영역을 선택하는 것을 특징으로 하는 랜덤 비트 변환 송신기.According to claim 1,
The conversion bit selection unit 12,
Random bit conversion transmitter, characterized in that selecting a bit conversion region that converts the bit at least once among a plurality of control command transmissions.
상기 비트 변환부(13)는,
상기 비트 변환 영역에 나열된 연속하는 2개의 비트들을 서로 교환하여 비트를 역전시키는 것을 특징으로 하는 랜덤 비트 변환 송신기.According to claim 1,
The bit conversion unit 13,
A random bit conversion transmitter, characterized in that the bits are reversed by exchanging two consecutive bits listed in the bit conversion area.
상기 변환 제어 명령어를 전송하는 비트 스트림에 삽입된 에러 검출 코드를 추출하는 검출코드 추출부(21)와;
상기 변환 제어 명령어 중 재변환이 시도되는 비트 재변환 영역을 적어도 1회 이상 선택하는 재변환 비트 선택부(22)와;
상기 비트 재변환 영역 내의 비트들 중 송신기(10)에서 변환이 이루어진 개수와 동일한 개수의 비트를 서로 교환하는 비트 재변환부(23); 및
상기 재변환이 이루어진 비트 스트림으로부터 산출된 에러 검출 코드와 상기 수신된 비트 스트림에 포함된 에러 검출 코드가 일치하는지 비교하는 원본 확인부(24);를 포함하고,
상기 재변환 비트 선택부(22)는 상기 송신기(10)에서 변환이 이루어진 개수와 동일한 개수의 비트가 연속하는 비트 재변환 영역을 랜덤 또는 순차로 선택하는 것을 특징으로 하는 랜덤 비트 변환 수신기.A random bit conversion receiver for generating an original control command by receiving a conversion control command in which bit conversion is performed at random,
a detection code extraction unit 21 for extracting an error detection code inserted into a bit stream for transmitting the conversion control command;
a reconversion bit selection unit 22 for selecting a bit reconversion region to be reconverted from among the conversion control commands at least once or more;
a bit reconversion unit 23 for exchanging the same number of bits as the number converted by the transmitter 10 among the bits in the bit reconversion area; and
and an original checking unit 24 for comparing whether the error detection code calculated from the reconverted bit stream and the error detection code included in the received bit stream match;
Random bit conversion receiver, characterized in that the reconversion bit selection unit 22 randomly or sequentially selects a bit reconversion region in which the same number of bits as the number converted by the transmitter 10 are continuous.
상기 재변환 비트 선택부(22)는,
상기 원본 확인부(24)에서 상기 에러 검출 코드의 비교 결과가 서로 다르면 다른 비트 재변환 영역을 선택하는 것을 특징으로 하는 랜덤 비트 변환 수신기.9. The method of claim 8,
The reconversion bit selection unit 22,
Random bit conversion receiver, characterized in that when the comparison results of the error detection codes in the original check unit (24) are different from each other, a different bit reconversion area is selected.
상기 원본 확인부(24)는,
서로 다른 비트 재변환 영역에 대해 각각 재변환이 이루어진 비트 스트림의 에러 검출 코드와 상기 수신된 비트 스트림에 포함된 에러 검출 코드가 일치하는지 비교하여,
일치하는 경우의 재변환된 비트 스트림에 포함된 제어 명령어를 송신기(10)에서 전달한 원본 제어 명령어로 판단하는 것을 특징으로 하는 랜덤 비트 변환 수신기.9. The method of claim 8,
The original confirmation unit 24,
Comparing whether the error detection code of the bit stream reconverted for different bit reconversion regions matches the error detection code included in the received bit stream,
Random bit conversion receiver, characterized in that the control command included in the reconverted bit stream in the case of matching is determined as the original control command transmitted from the transmitter (10).
상기 랜덤 비트 변환 송신기(10)에서 전송된 비트 스트림을 수신하되, 상기 수신된 제어 명령어 중 일부 비트 재변환 영역의 비트를 서로 교환하여 디코딩하는 랜덤 비트 변환 수신기(20);를 포함하되,
상기 랜덤 비트 변환 송신기는,
상기 제어 명령어가 포함된 원본 비트 스트림에 대한 에러 검출 코드를 생성하는 검출 코드 생성부(11)와; 상기 원본 비트 스트림에 포함된 제어 명령어 중 변환이 이루어지는 비트 변환 영역을 랜덤(random)으로 선택하는 변환 비트 선택부(12)와; 상기 비트 변환 영역 내의 비트들 중 적어도 2개의 비트를 서로 교환하여 비트를 변환시키는 비트 변환부(13); 및 상기 비트가 변환된 변환 비트 스트림에 상기 에러 검출 코드를 삽입하여 인코딩하는 인코딩부(14);를 포함하여, 상기 인코딩된 제어 명령어의 비트를 랜덤으로 재변환시켜 상기 제어 명령어를 찾는 수신기로 송신하고, 상기 변환 비트 선택부(12)는 상기 제어 명령어의 비트들 중 연속하는 비트들로 이루어진 비트 영역을 선택하고,
상기 랜덤 비트 변환 수신기(20)는,
상기 랜덤 비트 변환 송신기(10)에서 전송된 원본 제어 명령어에 대한 에러 검출 코드와 상기 비트 재변환 영역의 비트를 서로 교환 후 산출한 에러 검출 코드가 서로 일치하는지 비교하고, 상기 에러 검출 코드가 일치하는 경우의 제어 명령어를 원본 제어 명령어로 판독하는 것을 특징으로 하는 랜덤 비트 변환 제어장치.a random bit conversion transmitter 10 that transmits a bit stream including a control command, and encodes bits of some randomly selected bit conversion regions among the control commands by exchanging them with each other; and
Receives the bit stream transmitted from the random bit conversion transmitter 10, but a random bit conversion receiver 20 for decoding by exchanging the bits of some bit reconversion region of the received control command;
The random bit conversion transmitter,
a detection code generator 11 for generating an error detection code for the original bit stream including the control command; a conversion bit selection unit 12 for randomly selecting a bit conversion region to be converted from among the control commands included in the original bit stream; a bit conversion unit 13 for converting bits by exchanging at least two bits among the bits in the bit conversion region; and an encoding unit 14 for encoding by inserting the error detection code into the bit-converted converted bit stream, including, by randomly re-converting the encoded bit of the control command and transmitting it to a receiver looking for the control command And, the conversion bit selection unit 12 selects a bit region consisting of consecutive bits among the bits of the control command,
The random bit conversion receiver 20,
Comparing whether the error detection code for the original control command transmitted from the random bit conversion transmitter 10 matches the error detection code calculated after exchanging the bits in the bit reconversion area with each other, and the error detection code matches Random bit conversion control device, characterized in that the control command of the case is read as an original control command.
랜덤 비트 변환 수신기(20)에서, 상기 랜덤 비트 변환 송신기(10)에서 전송된 비트 스트림을 수신하되, 상기 수신된 제어 명령어 중 일부 비트 재변환 영역의 비트를 서로 교환하여 디코딩하는 명령어 수신단계(S20); 및
상기 랜덤 비트 변환 수신기(20)에서, 상기 랜덤 비트 변환 송신기(10)에서 전송된 원본 제어 명령어에 대한 에러 검출 코드와 상기 비트 재변환 영역의 비트를 서로 교환 후 산출한 에러 검출 코드가 서로 일치하는지 비교하고, 상기 에러 검출 코드가 일치하는 경우의 제어 명령어를 원본 제어 명령어로 판독하는 원본 판독 단계(S30);를 포함하고,
상기 랜덤 비트 변환 송신기는,
상기 제어 명령어가 포함된 원본 비트 스트림에 대한 에러 검출 코드를 생성하는 검출 코드 생성부(11)와; 상기 원본 비트 스트림에 포함된 제어 명령어 중 변환이 이루어지는 비트 변환 영역을 랜덤(random)으로 선택하는 변환 비트 선택부(12)와; 상기 비트 변환 영역 내의 비트들 중 적어도 2개의 비트를 서로 교환하여 비트를 변환시키는 비트 변환부(13); 및 상기 비트가 변환된 변환 비트 스트림에 상기 에러 검출 코드를 삽입하여 인코딩하는 인코딩부(14);를 포함하여, 상기 인코딩된 제어 명령어의 비트를 랜덤으로 재변환시켜 상기 제어 명령어를 찾는 수신기로 송신하고, 상기 변환 비트 선택부(12)는 상기 제어 명령어의 비트들 중 연속하는 비트들로 이루어진 비트 영역을 선택하는 것을 특징으로 하는 랜덤 비트 변환 제어방법.A command transmission step (S10) of transmitting, in the random bit conversion transmitter 10, a bit stream including a control command, and encoding bits of some randomly selected bit conversion regions among the control commands by exchanging them with each other;
In the random bit conversion receiver 20, receiving the bit stream transmitted from the random bit conversion transmitter 10, the command receiving step of decoding by exchanging the bits of some of the received control command bit reconversion region with each other (S20) ); and
In the random bit conversion receiver 20, whether the error detection code for the original control command transmitted from the random bit conversion transmitter 10 and the error detection code calculated after exchanging the bits in the bit reconversion area match each other Comprising; and an original reading step (S30) of comparing and reading the control command when the error detection code is the same as the original control command;
The random bit conversion transmitter,
a detection code generator 11 for generating an error detection code for the original bit stream including the control command; a conversion bit selection unit 12 for randomly selecting a bit conversion region to be converted from among the control commands included in the original bit stream; a bit conversion unit 13 for converting bits by exchanging at least two bits among the bits in the bit conversion region; and an encoding unit 14 for encoding by inserting the error detection code into the bit-converted converted bit stream, including, by randomly re-converting the encoded bit of the control command and transmitting it to a receiver looking for the control command and the conversion bit selection unit (12) selects a bit region composed of consecutive bits among the bits of the control command.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200090968A KR102403462B1 (en) | 2020-07-22 | 2020-07-22 | Transmitter, receiver, control apparatus and method using random bit-inversion |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200090968A KR102403462B1 (en) | 2020-07-22 | 2020-07-22 | Transmitter, receiver, control apparatus and method using random bit-inversion |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220011996A KR20220011996A (en) | 2022-02-03 |
KR102403462B1 true KR102403462B1 (en) | 2022-05-27 |
Family
ID=80268927
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200090968A KR102403462B1 (en) | 2020-07-22 | 2020-07-22 | Transmitter, receiver, control apparatus and method using random bit-inversion |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102403462B1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004129272A (en) | 2002-10-02 | 2004-04-22 | Samsung Electronics Co Ltd | Data transfer method in ethernet(r) passive optical subscriber network system |
KR101148560B1 (en) | 2010-09-01 | 2012-05-23 | 중앙대학교 산학협력단 | Apparatus and method for encryption using mixture of bit data |
KR101804791B1 (en) * | 2017-10-13 | 2017-12-07 | 주식회사세오 | realtime video encryption system and method thereof |
US20200213096A1 (en) | 2016-06-06 | 2020-07-02 | Agilepq, Inc. | Data conversion systems and methods |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100333705B1 (en) | 1999-12-30 | 2002-04-22 | 박종섭 | Sequence Switch Coding Circuit For Data Transmission and Coding Method thereof |
KR20070050713A (en) * | 2005-11-11 | 2007-05-16 | 삼성전자주식회사 | Apparatus and method for handling a media access control(mac) control message for transmitting/receiving uplink data in a communication system |
US10558817B2 (en) | 2017-01-30 | 2020-02-11 | Foley & Lardner LLP | Establishing a link between identifiers without disclosing specific identifying information |
-
2020
- 2020-07-22 KR KR1020200090968A patent/KR102403462B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004129272A (en) | 2002-10-02 | 2004-04-22 | Samsung Electronics Co Ltd | Data transfer method in ethernet(r) passive optical subscriber network system |
KR101148560B1 (en) | 2010-09-01 | 2012-05-23 | 중앙대학교 산학협력단 | Apparatus and method for encryption using mixture of bit data |
US20200213096A1 (en) | 2016-06-06 | 2020-07-02 | Agilepq, Inc. | Data conversion systems and methods |
KR101804791B1 (en) * | 2017-10-13 | 2017-12-07 | 주식회사세오 | realtime video encryption system and method thereof |
Also Published As
Publication number | Publication date |
---|---|
KR20220011996A (en) | 2022-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100500976B1 (en) | Authentication method, communication method and information processing device | |
US7680273B2 (en) | System and method for optimizing error detection to detect unauthorized modification of transmitted data | |
CN108075879B (en) | Data encryption and decryption method, device and system | |
CN107395751A (en) | A kind of remote control system of intelligent household electrical appliance and method | |
JP2012527190A (en) | System and method for securely identifying and authenticating a device in a symmetric encryption system | |
US10749903B2 (en) | Transmission/reception apparatus of security gateway for physical unidirectional communication performing security tunneling and data re-transmission, and data transmission method using same | |
US7512794B2 (en) | System and method for authentication | |
KR101063152B1 (en) | One-way data transmission system and method | |
US7523305B2 (en) | Employing cyclic redundancy checks to provide data security | |
US11223490B2 (en) | Robust computational fuzzy extractor and method for authentication | |
KR100517847B1 (en) | Shared data refining device and shared data refining method | |
US20170109545A1 (en) | Electronic device and data verification method | |
CN114124549A (en) | Method, system and device for safely accessing mails based on visible light system | |
KR102403462B1 (en) | Transmitter, receiver, control apparatus and method using random bit-inversion | |
JP2007116216A (en) | Quantum authentication method and system | |
CN116488919B (en) | Data processing method, communication node and storage medium | |
CN112927078A (en) | Block chain financial big data analysis processing system and method and transaction platform system | |
CN114499857B (en) | Method for realizing data correctness and consistency in encryption and decryption of large data quanta | |
CN111198781B (en) | Computer-implemented method for error correction coding and encryption of files | |
JP2010211276A (en) | Usb interface apparatus, and usb packet transmitting/receiving method | |
US20150127953A1 (en) | Encoding apparatus and method | |
KR20200075604A (en) | Security communication apparatus of controller area network using variable-length message authentication code and method for the same | |
CN107493172B (en) | Wireless radio frequency authentication system and authentication method | |
EP1193904B1 (en) | Transmission method to assure data confidentiality. | |
JP2005027338A (en) | Authentication method, and information processing apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |