KR20070078496A - Encryption method in wireless communication - Google Patents
Encryption method in wireless communication Download PDFInfo
- Publication number
- KR20070078496A KR20070078496A KR1020060008786A KR20060008786A KR20070078496A KR 20070078496 A KR20070078496 A KR 20070078496A KR 1020060008786 A KR1020060008786 A KR 1020060008786A KR 20060008786 A KR20060008786 A KR 20060008786A KR 20070078496 A KR20070078496 A KR 20070078496A
- Authority
- KR
- South Korea
- Prior art keywords
- round
- function
- encryption
- wireless communication
- information
- 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/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- 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/24—Key scheduling, i.e. generating round keys or sub-keys for block encryption
-
- 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/80—Wireless
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
도 1a는 종래의 정보 암호 알고리즘을 위한 회로도. 1A is a circuit diagram for a conventional information encryption algorithm.
도 1b는 종래의 암호 키가 128 bit를 갖는 경우, 17개의 라운드 서브 키를 생성시키는 알고리즘을 설명하기 위한 도면.1B is a diagram for explaining an algorithm for generating 17 round subkeys when a conventional encryption key has 128 bits.
도 2는 본 발명의 일실시예에 따른 변환 알고리즘을 무선통신에 적용하여 암호화하는 과정을 도시한 도면. 2 is a diagram illustrating a process of encrypting by applying a conversion algorithm to wireless communication according to an embodiment of the present invention.
* 도면의 주요 부분에 대한 부호의 설명 *Explanation of symbols on the main parts of the drawings
1: 암호 알고리즘 회로 2: 라운드 서브 키 생성 회로1: cryptographic algorithm circuit 2: round sub-key generation circuit
3: 암호화 회로 3: encryption circuit
본 발명은 무선통신 시스템에서의 암호화 방법에 관한 것으로, 구체적으로 무선통신 기동시 인증키를 상호교환할 때 보안의 안정성을 위해 SAFER+를 이용한 암호화 방법에 관한 것이다. The present invention relates to an encryption method in a wireless communication system, and more particularly, to an encryption method using SAFER + for the stability of security when exchanging authentication keys when starting a wireless communication.
"SAFER(Secure And Fast Encryption Routine)+"로서 알려진 종래의 정보 암호 알고리즘을 위한 회로는 도 1a에 도시하고 있으며, 참조 번호 1로 도시한다. "SAFER+" 암호 알고리즘 회로(1)는 128, 192, 또는 256 bit의 길이를 갖는 암호 키를 사용하여, 사전에 암호화된 128 bit 입력 데이터 평문(plaintext)을 128 bit의 암호문으로 암호화한다. A circuit for a conventional information encryption algorithm known as " SAFER (Secure And Fast Encryption Routine +) " is shown in Fig. 1A and indicated by
SAFER+ 암호 알고리즘(1)은 암호 키가 128 bit를 가질 경우에는 17개의 라운드 서브 키들을 생성시키고, 암호 키가 192 bit를 가지는 경우에는 25개의 라운드 서브 키들을 생성시키며, 암호 키가 256 bit를 가질 경우에는 33개의 라운드 서브키들을 생성시키는 라운드 서브 키 생성 회로(2) 및 라운드 서브 키 생성 회로(2) 에 의해 생성되는 라운드 서브 키를 사용하여 평문을 암호화하는 암호화 회로(3) 를 사용한다. The SAFER + encryption algorithm (1) generates 17 round subkeys if the encryption key has 128 bits, generates 25 round subkeys if the encryption key has 192 bits, and has 256 bits. In this case, a round
이와 같은 알고리즘에서 라운드라 하는 스테이지들로 계산과정을 나눌 수 있다. 암호 키가 128 bit인 경우에 라운드의 개수는 8개이고, 암호 키가 192 bit인 경우 라운드 개수는 12개이고, 암호 키가 256 bit를 갖는 경우, 라운드 개수는 16개이다. 각각의 라운드는 두 개의 서브 라운드로 추가로 나누어지고, 오직 최종 라운드만이 3개의 서브 라운드로 나누어진다. 따라서, 암호 키가 128 bit 인 경우, 서브 라운드의 개수는 17개이고, 암호 키가 192 bit 인 경우 라운드 개수는 25개이고, 암호 키가 256 bit를 갖는 경우, 라운드 개수는 33개이다. 128 bit 라운드 서브 키를 각각의 서브 라운드에 대하여 생성한다.In such an algorithm, the calculation process can be divided into stages called rounds. When the encryption key is 128 bits, the number of rounds is 8, when the encryption key is 192 bits, the number of rounds is 12, and when the encryption key has 256 bits, the number of rounds is 16. Each round is further divided into two sub rounds, and only the last round is divided into three sub rounds. Accordingly, when the encryption key is 128 bits, the number of sub rounds is 17, when the encryption key is 192 bit, the number of rounds is 25, and when the encryption key has 256 bits, the number of rounds is 33. Create a 128 bit round subkey for each subround.
도 1b는 암호 키가 128 bit를 갖는 경우에, 17개의 라운드 서브 키를 생성시키는 알고리즘을 설명하기 위한 도면이고다. FIG. 1B is a diagram for explaining an algorithm for generating 17 round subkeys when an encryption key has 128 bits.
도 1b에 도시한 알고리즘은 17개의 라운드 서브 키(K1 내지 K17)를 128 bit 암호 키로부터 생성시키는 알고리즘이다. " 1" ," 2" ,..." 15" ," 16"으로 번호를 새긴 정사각형 박스 각각은 128 bit 입력 암호 키들 중 8 bit를 나타낸다. 이 128 bit(즉, 16 byte)중에는 "1"번 박스에 최하위 바이트를 할당하고, "16"번 박스에 최상위 바이트를 할당한다. The algorithm shown in FIG. 1B is an algorithm for generating 17 round subkeys K1 to K17 from a 128 bit encryption key. Each square box numbered "1", "2", ... "15", "16" represents 8 bits of the 128 bit input encryption keys. Of the 128 bits (ie, 16 bytes), the lowest byte is assigned to the "1" box and the most significant byte is assigned to the "16" box.
128 bit들 중에서 가장 중요하지 않은 비트는 "1"번 박스로 표시되는 최하위 바이트중 최하위 비트이고, 가장 중요한 비트는 "16"번 박스로 표시되는 최상위 바이트중 최상위 비트이다. 제 1 라운드 서브 키(K1)에 대하여 128 bit 암호 키를 있는 그대로 출력한다. The least significant bit of the 128 bits is the least significant bit of the least significant byte indicated by the box "1", and the most significant bit is the most significant bit of the most significant byte represented by the box "16". The 128-bit encryption key is output as it is to the first round subkey K1.
제 2 서브 라운드에 대한 라운드 서브 키(K2)를 생성시키기 위하여, 17번째 바이트를 다음과 같이 생성시킨다. 입력되는 128 bit 암호 키를 16 byte로 분할하여, 16 byte에 있어서 동일한 비트위치에서 정보의 배타적 OR(XOR)을 탐색한다. 그 결과값을 17번째 바이트에서의 각각의 비트 위치에 대한 정보를 표시함으로써 정의한다. In order to generate the round subkey K2 for the second subround, the seventeenth byte is generated as follows. The input 128-bit encryption key is divided into 16 bytes to search for an exclusive OR (XOR) of information at the same bit position in 16 bytes. The result is defined by displaying information about each bit position in the 17th byte.
다음, 3-bit 회전을 각각의 17 번째 바이트에서 실행한다. 즉, 예를 들면, 7, 6, 5, 4, 3, 2, 1, 0인 8 bit들을 3 bit만큼 좌측으로 회전하여, 4, 3, 2, 1, 0, 7, 6, 5를 획득한다. j번째 서브 라운드에 대한 라운드 서브 키(Kj)와 같이 j번째 바이트로 표시하는 정보를 최하위 바이트로서 먼저 출력한다. 다음, j+1번째 바이트, j+2 번째 바이트,..., j+15 번째 바이트를 전체 16 byte로 출력한다. j+1이 17을 초과한 경우, 17을 j+1로 감산함으로써 획득되는 바이트의 수치를 출력한다. 예를 들면, 라운드 서브 키(K15)의 경우에 바이트 #15, 16, 17, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 a 들을 순서대로 선택하여 출력한다. 다음, 바이어스 값(Bj)을 이러한 순서로 출력한 바이트에 의해 표시되는 정보에 가산한다. 이 바이어스 값(Bj)은 128 byte로 표시되는 고정값으로, 서브 라운드 수(j)로 결정된다. 바이어스 값(Bj) 및 선택값을 함께 가산하기 때문에, 각각의 바이트에 대한 캐리오버를 고려할 필요가 없다. 바이어스 값(Bj)의 i 번째 바이트가 (Bj[i])를 갖는 경우에, 라운드 서브 키(K15)의 최하위 바이트는 내부 레지스터의 15번째 바이트로 표시되는 정보 및 B15[0]를 가산하여 얻어진다. 캐리 오버가 각각의 바이트를 고려할 필요가 없는 가산과정에 따라서, 가산 결과가 α= 225인 경우에는 있는 그대로 α를 가산 결과로서 설정하고, 가산 결과가 α>225인 경우에는 α-256를 가산 결과로 설정한다. Next, execute a 3-bit rotation on each 17th byte. That is, for example, 8 bits that are 7, 6, 5, 4, 3, 2, 1, 0 are rotated left by 3 bits to obtain 4, 3, 2, 1, 0, 7, 6, 5 do. Like the round sub key Kj for the j th sub round, information indicated by the j th byte is first output as the least significant byte. Next, j + 1th byte, j + 2th byte, ..., j + 15th byte are output as 16 bytes in total. When j + 1 exceeds 17, the number of bytes obtained by subtracting 17 by j + 1 is output. For example, in the case of the round sub-key K15,
전술한 바와 같이, 라운드 서브 키(K2 내지 K17)에 대하여 3-bit 회전, 및 j번째 바이트로부터 j+15번째 바이트까지의 바이어스 값의 출력 및 가산을 반복하여, 대응하는 라운드 서브 키들을 생성시킨다. As described above, the 3-bit rotation and the output and addition of the bias value from the jth byte to the j + 15th byte are repeated for the round subkeys K2 to K17 to generate corresponding round subkeys. .
이와 같은 종래의 SAFER+ 암호 알고리즘은 보안을 위해서는 다수의 라운드를 필요로 하여 다수의 라운드에 따른 시간이 많이 소모되고, 해커의 공격에 다소 효과적으로 방어할 수 없을 만큼 공지된 알고리즘으로서 최고의 안정성을 제공해줄 수는 없다. Such a conventional SAFER + cryptographic algorithm requires a large number of rounds for security, which is time-consuming for many rounds and can provide the best stability as a known algorithm that cannot be effectively prevented from hacker attacks. There is no.
본 발명은 인증을 위한 최고의 안정성을 제공할 수 있는 상이한 변환 알고리즘을 적용한 암호 알고리즘을 제공하여 효과적인 방어를 수행한다. The present invention provides effective cryptographic algorithms by applying different conversion algorithms that can provide the best stability for authentication.
본 발명은 무선통신에 적용되는 암호화 방법에 있어서, 소정개수의 바이트(byte)로 라운드 입력된 평문(plaintext) 정보에 대해 다수의 함수 연산을 수행하는 함수연산 수행단계; 상기 다수의 함수 연산중 어느 하나의 함수 연산에 의해 처리된 평문 정보의 데이터 일부를 다수 변환시키는 데이터 변환단계; 및 상기 변환된 데이터 일부를 포함한 평문 정보를 암호문으로 라운드 출력하는 라운드 출력단계를 포함하는 무선통신에서의 암호화 방법에 관한 것이다. According to an aspect of the present invention, there is provided an encryption method for wireless communication, the method comprising: performing a plurality of function operations on plaintext information round-input by a predetermined number of bytes; A data conversion step of converting a plurality of data portions of the plain text information processed by any one of the plurality of function operations; And a round output step of round outputting plain text information including a part of the converted data as an encrypted text.
이하, 첨부된 도면을 참조하여 본 발명의 일실시예를 상세하게 설명한다. Hereinafter, with reference to the accompanying drawings will be described in detail an embodiment of the present invention.
도 2는 본 발명에 따른 변환 알고리즘을 적용하여 암호화하는 과정을 도시한 도면이다. 2 is a diagram illustrating a process of encrypting by applying a conversion algorithm according to the present invention.
도 2에 도시된 바와 같이, 본 발명에 따른 변환 알고리즘을 무선통신에 적용하면 먼저 16 바이트의 평문(plaintext) 정보를 4개의 함수, 즉 xor, add, exp, log를 선택적으로 적용한다. As shown in FIG. 2, when the conversion algorithm according to the present invention is applied to wireless communication, four functions, namely, xor, add, exp, and log, are selectively applied to 16-byte plaintext information.
"xor"은 평문 정보를 포함한 바이트의 각 비트당 모듈로(modulo)-2 가산을 수행하는 연산함수를 나타낸다. "xor" represents an operation function that performs modulo-2 addition per bit of the byte including the plain text information.
"add"는 평문 정보를 포함한 바이트에 대해 모듈로-256 가산을 수행하는 함수를 나타낸다. "add" denotes a function that performs modulo-256 addition on bytes containing plain text information.
"exp"는 exptab(x)= 45X 의 형식을 가진 모듈로-257의 함수를 나타내고, exptab(128)= 0의 조건을 가지는 특성이 있다."exp" represents a Modulo-257 function with the form exptab (x) = 45 X and has the condition that exptab (128) = 0.
"log"는 logtab(x)= log45(x) 의 형식을 가지는 함수로서, logtab(0)= 128의 조건을 가지는 특성이 있다. "log" is a function having the format logtab (x) = log 45 (x), and has a characteristic of the condition that logtab (0) = 128.
이와 같은 4개의 함수를 각각 선택적으로 수행하여 인증을 위한 평문을 변환하는데, (i)단계에서 라운드 입력된 16 바이트의 평문 정보에 대해 (ⅱ)단계에서 각각의 16 바이트에 대해 xor 함수와 add 함수를 적용하고, 이때 16 바이트의 각 바이트중 어느 하나의 바이트 예를 들어, 4번째 바이트에 대해 데이터 변환을 수행한다. 여기서 데이터 변환은 데이타를 각각 인버스(inverse)하는 역변환을 수행하는 데이터 역변환으로서, 암호화 회로에 인버터(invertor)를 연결하여 수행하여 16 바이트의 각 바이트중 하나 이상의 바이트에 대해 예를 들어, "0"의 이진수를 "1"의 이진수로 데이터 역변환을 수행할 수 있다. Each of the four functions is selectively performed to convert plain text for authentication. For the 16 bytes of plain text information rounded in step (i), the xor function and the add function for each 16 bytes in step (ii). In this case, data conversion is performed on one byte of each byte of 16 bytes, for example, the fourth byte. Here, the data conversion is an inverse data conversion that inverses each of the data. The data conversion is performed by connecting an inverter to an encryption circuit, for example, "0" for one or more bytes of each byte of 16 bytes. Inverse data conversion can be performed by converting a binary number to a binary number of "1".
(ⅲ)단계에서는 xor 함수와 add 함수를 적용한 16 바이트에 대해 각각 exp 함수와 log 함수를 적용하여 연산을 수행한다. In the step (iii), the exp and log functions are applied to the 16 bytes to which the xor function and the add function are applied.
(ⅲ)단계에서 exp 함수와 log 함수를 적용하여 연산처리된 16 바이트에 대해 (ⅳ)단계에서 각각 선택적으로 다시 xor 함수와 add 함수를 적용하여 연산처리하며, 역시 (ⅳ)단계에서도 4번째 바이트에 대해 데이터 역변환을 수행할 수도 있다. For
(ⅳ)단계에서 데이터 역변환으로 처리된 16 바이트에 대해 (ⅴ)단계에서 [표1]에 기재된 M행렬을 적용하여 오퍼레이션(operation)을 수행한다. An operation is performed on the 16 bytes processed by data inverse transformation in step (iii) by applying the M matrix shown in Table 1 in step (iii).
M행렬을 적용하면, 예를 들어 (ⅰ)단계에서 입력되는 16 바이트의 평문이 "9,12,13,16,3,2,7,6,11,10,15,14,1,8,5,4"의 구성을 가지고 입력되는 경우 (ⅴ)단계에서 M행렬 처리를 거친 후 "1,3,5,7,9,11,13,15,2,4,6,8,10,12,14,16"으로 출력될 수 있다. Applying the M matrix, for example, the 16-byte plain text input in the step (i) is " 9, 12, 13, 16, 3, 2, 7, 6, 11, 10, 15, 14, 1, 8, 5,4 "is inputted with the M matrix in step (행), and then" 1,3,5,7,9,11,13,15,2,4,6,8,10,12 " , 14,16 ".
이와 같이 M행렬 처리를 거친 16 바이트의 평문은 (ⅵ)단계에서 암호문으로 암호화되어 라운드 출력된다. In this manner, the 16-byte plain text that has undergone the M-matrix processing is encrypted as a cipher text in the (iii) step and outputted round.
따라서, 본 발명에 따른 암호화 알고리즘에서는 16 바이트에서 역변환 알고리즘이 적용되는 특정 바이트의 개수를 조정, 예컨대 특정 1 바이트 내지 15개의 바이트까지 선택적으로 적용하여 16C1 + 16C2 + 16C3 + 16C4 + ....+ 16C15 = 216 -2 만큼의 경우의 수를 가지고 암호화를 수행할 수 있다. Therefore, in the encryption algorithm according to the present invention, 16 C1 + 16 C2 + 16 C3 + 16 C4 + .... Encryption can be performed with as many as 16C15 = 2 16 -2.
또한, 본 발명에 따른 암호화 알고리즘은 1회의 라운드에서 변환 알고리즘을 적용하는 것만으로 보안의 안정성을 제공할 수 있기 때문에, 종래에 다수의 라운드를 통해 이루어지는 암호화 과정을 단축할 수 있게 된다. In addition, since the encryption algorithm according to the present invention can provide stability of security only by applying the conversion algorithm in one round, it is possible to shorten the encryption process made through a plurality of rounds.
본 발명의 기술사상은 상기 바람직한 실시예에 따라 구체적으로 기술되었으나, 상기한 실시예는 그 설명을 위한 것이며, 그 제한을 위한 것이 아님을 주의하여야 한다. Although the technical spirit of the present invention has been described in detail according to the above-described preferred embodiment, it should be noted that the above-described embodiment is for the purpose of description and not of limitation.
또한, 본 발명의 기술분야의 통상의 전문가라면 본 발명의 기술사상의 범위에서 다양한 실시예가 가능함을 이해할 수 있을 것이다. In addition, those skilled in the art will understand that various embodiments are possible within the scope of the technical idea of the present invention.
이상에서 설명한 바와 같이 본 발명은 인증을 위한 암호화 알고리즘에 변환 알고리즘을 적용하여 무선통신 등을 통해 주고받는 인증정보의 보안성을 향상시킴으로써, 사용자의 인증정보를 포함한 비밀정보가 제 3 자에게 도용되는 것을 방지할 수 있다. As described above, the present invention improves the security of authentication information transmitted and received through wireless communication by applying a conversion algorithm to an encryption algorithm for authentication, whereby confidential information including user authentication information is stolen by a third party. Can be prevented.
Claims (6)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060008786A KR20070078496A (en) | 2006-01-27 | 2006-01-27 | Encryption method in wireless communication |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060008786A KR20070078496A (en) | 2006-01-27 | 2006-01-27 | Encryption method in wireless communication |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20070078496A true KR20070078496A (en) | 2007-08-01 |
Family
ID=38599463
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060008786A KR20070078496A (en) | 2006-01-27 | 2006-01-27 | Encryption method in wireless communication |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20070078496A (en) |
-
2006
- 2006-01-27 KR KR1020060008786A patent/KR20070078496A/en not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5222139A (en) | Cryptographic method and apparatus | |
US5623549A (en) | Cipher mechanisms with fencing and balanced block mixing | |
EP1005191B1 (en) | Encryption/decryption unit and storage medium | |
KR100296958B1 (en) | Apparatus for encoding block data | |
KR100889465B1 (en) | Substitution-box for symmetric-key ciphers | |
US8654972B2 (en) | Keystream encryption device, method, and program | |
EP1081889B1 (en) | Extended key generator, encryption / decryption unit, extended key generation method, and storage medium | |
US6189095B1 (en) | Symmetric block cipher using multiple stages with modified type-1 and type-3 feistel networks | |
JP6877889B2 (en) | Cryptographic device, encryption method, decryption device, and decryption method | |
CA2414261A1 (en) | Method of encryption using multi-key process to create a variable-length key | |
CN111010266B (en) | Message encryption and decryption, reading and writing method and device, computer equipment and storage medium | |
WO2021129470A1 (en) | Polynomial-based system and method for fully homomorphic encryption of binary data | |
Asaad et al. | Advanced Encryption Standard Enhancement with Output Feedback Block Mode Operation | |
Joshy et al. | Text to image encryption technique using RGB substitution and AES | |
Alemami et al. | Advanced approach for encryption using advanced encryption standard with chaotic map | |
US20040096059A1 (en) | Encryption apparatus with parallel Data Encryption Standard (DES) structure | |
ES2287978T3 (en) | METHOD FOR THE CRYPTOGRAPHIC CONVERSION OF BINARY DATA BLOCKS. | |
US20230403134A1 (en) | Method for processing encrypted data | |
CN114978475A (en) | Automobile instrument encryption and decryption processing method and system based on AES-128 algorithm | |
EP1001398B1 (en) | Ciphering apparatus | |
Kadry et al. | An improvement of RC4 cipher using vigenère cipher | |
Landge et al. | VHDL based Blowfish implementation for secured embedded system design | |
KR20070078496A (en) | Encryption method in wireless communication | |
US7142673B1 (en) | Method for the cryptographic conversion of L-bit input blocks of digital data into L-bit output blocks | |
RU2140712C1 (en) | Method for ciphering binary data blocks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |