WO2012148096A2 - 가변길이 인증코드를 사용하는 무선 통신 단말간 세션키 공유 방법 - Google Patents

가변길이 인증코드를 사용하는 무선 통신 단말간 세션키 공유 방법 Download PDF

Info

Publication number
WO2012148096A2
WO2012148096A2 PCT/KR2012/002644 KR2012002644W WO2012148096A2 WO 2012148096 A2 WO2012148096 A2 WO 2012148096A2 KR 2012002644 W KR2012002644 W KR 2012002644W WO 2012148096 A2 WO2012148096 A2 WO 2012148096A2
Authority
WO
WIPO (PCT)
Prior art keywords
authentication code
key
message
terminal
parameter value
Prior art date
Application number
PCT/KR2012/002644
Other languages
English (en)
French (fr)
Other versions
WO2012148096A3 (ko
Inventor
이정현
마건일
이형찬
Original Assignee
숭실대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 숭실대학교산학협력단 filed Critical 숭실대학교산학협력단
Priority to US14/000,645 priority Critical patent/US9078126B2/en
Publication of WO2012148096A2 publication Critical patent/WO2012148096A2/ko
Publication of WO2012148096A3 publication Critical patent/WO2012148096A3/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/041Key generation or derivation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/047Key management, e.g. using generic bootstrapping architecture [GBA] without using a trusted network node as an anchor
    • H04W12/0471Key exchange
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/65Environment-dependent, e.g. using captured environmental data

Definitions

  • the present invention relates to a method for sharing a session key between wireless communication terminals using a variable length authentication code, and more particularly, to a variable length capable of sharing a session key while maintaining high security between wireless communication terminals in a short distance.
  • the present invention relates to a session key sharing method between wireless communication terminals using an authentication code.
  • DH Density-Hellman
  • PKI public key infrastructure
  • the hash value for the shared key (session key) established through the DH protocol is used as an authentication code
  • the authentication code size is too large for the OOB channel, and the hash value is vulnerable to pre-image attack. There is a problem.
  • An object of the present invention is to provide a method for sharing session keys between wireless communication terminals using a variable length authentication code capable of sharing a session key while maintaining high security between wireless communication terminals in a short distance.
  • a public key using its own private key, wherein the public key and the first random number are generated.
  • Generating a message encrypting the message with its own private key and exchanging the encrypted message with the counterpart terminal; receiving the private key of the counterpart terminal and decrypting the encrypted message of the counterpart terminal; Generating an authentication code by calculating a first random number and a second random number included in the decrypted message, calculating a parameter value from the authentication code, and using a public key of the counterpart terminal included in the decrypted message Generating a session key.
  • DH Diffie-Hellman
  • the message may further include an identifier and a reflection attack verification value.
  • the method may further include checking a reflection attack verification value of the counterpart terminal included in the decrypted message.
  • the secret key is a disposable key, and the first and second random numbers may be composed of a bit string consisting of 0 or 1.
  • the generating of the authentication code may generate an authentication code by performing an exclusive logical sum operation on the first random number and the second random number.
  • the authentication code is divided into n (n is a natural number of 2 or more) bits, and the divided authentication codes correspond to one grid, and each grid may be displayed in one color.
  • the number S 'of grids required to display the parameter value can be expressed by the following equation.
  • S denotes the number of grids required when two kinds of colors indicating the parameter value are represented
  • k is 2 m as the number of color types used to indicate the parameter value
  • m is the divided authentication code. Is the number of bits.
  • the calculating of the parameter value from the authentication code may include obtaining the parameter value by inputting the authentication code into an OOB function, and controlling the plurality of LEDs to be turned on or off in response to the parameter value. Can be.
  • the calculating of the parameter value from the authentication code may include inputting the authentication code into an OOB function to obtain the parameter value, and reproducing the stored sound source file corresponding to the parameter value.
  • a wireless communication terminal for sharing a session key with a counterpart terminal based on Diffie-Hellman (DH) protocol
  • the storage unit including a public key generated using its own private key,
  • An encryption unit for generating a message including the public key and the first random number, encrypting the message with its own private key, and exchanging the encrypted message with the counterpart terminal;
  • Decryption unit for decrypting the encrypted message
  • Authentication code generation unit for generating an authentication code by calculating the first random number and the second random number included in the decrypted message, Applying the authentication code to the OOB function to calculate the parameter value
  • An OOB conversion unit and a session key generation unit for generating a session key using the public key of the counterpart terminal included in the decrypted message.
  • FIG. 1 is a block diagram of a wireless communication terminal according to an embodiment of the present invention.
  • FIG. 2 is a flowchart illustrating a method for setting a variable-size session key between wireless communication terminals according to an embodiment of the present invention.
  • FIG. 3 is a flowchart illustrating a method of setting a session key according to FIG. 2 in more detail.
  • FIG. 4 is a view for explaining a process of calculating the median value by the OOB conversion unit using the CCB method according to an embodiment of the present invention.
  • FIG. 5 is an exemplary diagram illustrating that a parameter value of an OOB function according to FIG. 4 is displayed on a screen.
  • FIG. 6 is a view for explaining a process of calculating the median value by the OOB conversion unit using the CML method according to an embodiment of the present invention.
  • FIG. 7 is an exemplary diagram illustrating that parameter values of the OOB function according to FIG. 6 are displayed through LEDs.
  • FIG. 8 is a view for explaining a process of calculating the median value by the OOB conversion unit using the CM method according to an embodiment of the present invention.
  • FIG. 9 is an exemplary diagram illustrating a screen on which a music file is played according to a parameter of the OOB function shown in FIG. 8.
  • the wireless communication terminal 100 according to FIG. 1 is a device for sharing a session key with another wireless communication terminal in a short range, and includes a mobile station (MS), a mobile terminal (MT), and a subscriber station (Subscriber Station). , SS), a portable subscriber station (PSS), a user equipment (UE), an access terminal (AT), and the like, and may be referred to as a mobile terminal, a subscriber station, a mobile subscriber station, or a user. It may also include all or part of the functionality of the device or the like.
  • Wireless communication terminal 100 is a storage unit 110, encryption unit 120, decryption unit 130, authentication code generation unit 140, OOB conversion unit 150 and session key generation
  • the unit 160 is included.
  • the storage unit 110 stores a public key, an identifier ID, a random number, and a secret key generated using the private key of the wireless communication terminal 100, and stores a randomly selected random number and a secret key.
  • the encryption unit 120 generates a message including an attack verification value, an identifier ID, a public key, and a random number, and encrypts the generated message with its secret key so as to be exchanged with an encrypted message of a counterpart terminal.
  • the transmission of the random number and the public key value uses a symmetric key encryption algorithm.
  • the decryption unit 130 decrypts the encrypted message of the counterpart terminal using the received secret key of the counterpart terminal, and authenticates the attack verification value in the decrypted message.
  • the authentication code generator 140 generates an authentication code by calculating a random number of the counterpart terminal included in the decrypted message and its own random number.
  • the authentication code generation unit 140 uses the exclusive OR value of the random number as the authentication code instead of the hash value for the shared key (session key).
  • the OOB conversion unit 150 obtains the parameter value by applying the authentication code to the OOB function.
  • the authentication method of the parameters between the two terminals uses a color bar code, and the session key is authenticated through the process of directly comparing the same color bar code, rather than being recognized through the camera module like the conventional black and white bar code. Do it.
  • the session key generation unit 160 generates a session key using the public key of the counterpart terminal included in the decrypted message.
  • FIGS. 2 and 3 illustrate a wireless communication terminal according to an embodiment of the present invention as a first terminal and a second terminal, and the first terminal and the second terminal use a Zigbee, RFID, and Bluetooth scheme based on the DH protocol.
  • the terminal performs near field communication (Near Field Communication, NFC) through.
  • NFC Near Field Communication
  • the first terminal and the second terminal are set to the identifier ID (eg, E-mail address) that can be identified by the person and the respective DH public key values (PK A , PK B ) (S211, S212).
  • IDs set in the first terminal and the second terminal may be represented as ID A and ID B , respectively, as shown in FIG. 3.
  • the DH public key value PK A set by the first terminal is generated using the private key a of the first terminal (g a mod p ), and the DH public key value PK B set by the second terminal. Is generated using the private key (b) of the second terminal (g b mod p ).
  • the first terminal and the second terminal randomly selects random bits (N A , N B ) of k bits and disposable secret keys (SK A , SK B ) of t bits, respectively (S213 and S214).
  • the random numbers N A, N B so made up of k bits to the bit stream having a value of 0 or 1, it is possible to generate random numbers N A, N B made of a variety of bit streams by adjusting the value k.
  • the disposable secret keys SK A and SK B are composed of t bit strings composed of bit values of 0 or 1, and the value can be changed from time to time.
  • Phase 2 a first terminal and a second terminal to exchange the public key values PK A, PK B (S215, S216).
  • the messages m A and m B are attack validation values (0 or 1), their IDs (ID A , ID B ), and their public key values (PK A , PK) for verifying reflection attacks. B ), including its random number (N A , N B ).
  • the message (m A ) generated by the first terminal may be represented by 0 ⁇ ID A ⁇ PK A ⁇ N A
  • the message (m B ) generated by the second terminal by 1 ⁇ ID B ⁇ PK B ⁇ N B Can be represented.
  • the reflection attack verification value 0 means the transmitting terminal side
  • 1 means the receiving terminal side.
  • the first terminal and the second terminal encrypts the generated messages m A and m B using their private keys SK A and SK B , respectively (S217 and S218).
  • the first terminal and the second terminal exchange messages E (SK A , m A ) and E (SK B , m B ) encrypted by the private keys SK A and SK B (S219).
  • the first terminal When the first terminal receives the encrypted message E (SK B , m B ) from the second terminal, the first terminal transmits its private key SK A to the second terminal (S220). Upon receiving the secret key SK A of the first terminal, the second terminal decrypts the encrypted message E (SK A , m A ) using the secret key SK A (D (SK A , E (SK A)). , m A ) (S221).
  • the second terminal After the second terminal checks whether the decryption attack verification value 0 is present in the decrypted message m ' A (S222), when the second terminal checks the existence of the reflection attack verification value 0, the second terminal transfers its secret key SK B to the first terminal. It transmits (S223).
  • the first terminal decrypts the encrypted message E (SK B , m B ) using the secret key SK B (D (SK B , E (SK B)). (m B ) (S224)
  • the first terminal checks whether the decrypted attack verification value 1 is present in the decrypted message m ' B (S225).
  • an authentication code is generated by calculating a random number value and a received random number value, respectively (S226 and S227). That is, the second terminal generates an authentication code CV B by processing its random number value N B and the random number value N ′ A received from the first terminal, and the first terminal generates its random number value.
  • An authentication code CV A is generated by computing the N A and the random number value N ′ B received from the second terminal.
  • the authentication code generator 140 calculates random values using an exclusive OR.
  • the first terminal and the second terminal apply the authentication codes CV A and CV B to the OOB function, respectively, so that the user can directly recognize the visual or audio visually.
  • the user of the first terminal and the user of the second terminal directly compares the parameter O A and the parameter O B of the output OOB channel to determine whether they are the same.
  • Authentication to be S230.
  • the out-of-band channel includes a visual channel and an auditory channel that use a person's vision and hearing. If the OOB channel is an auditory channel, the parameter value is expressed in melody, music, effect sound, etc., and in the case of the visual channel, the parameter value is expressed in a barcode, color, and the like.
  • a person can directly select a first terminal and a second terminal as target terminals, and verify authentication information of the selected target terminals, so that an attacker modulates the message. Or impersonate a device to be authenticated without TTP.
  • the session key installation step (Phase 4), if the authentication for the public key exchange between the first terminal and the second terminal is successful, the first terminal and the second terminal is a session between the first terminal and the second terminal, respectively
  • the key K AB is generated and stored in pairs together with the ID of the counterpart terminal received (S231, S232).
  • K AB (PK A ) b mod p ) using the public key (PK A ).
  • the first terminal and the second terminal can share the session key K AB by using a symmetric key encryption algorithm based on the DH protocol instead of the hash.
  • any one of color bar code comparison (CCB, Comparing Multi LEDs) and CM (Comparing Music) methods may be used in OOB channel authentication step (Phase 3).
  • CM Common Music
  • FIG. 4 is a view for explaining a process of calculating the median value by the OOB conversion unit using the CCB method according to an embodiment of the present invention. More specifically, the left figure of FIG. 4 illustrates a process of applying an authentication code (CV) to an OOB function, and the right figure shows a visual display of a parameter value O on a screen of a terminal through an OOB time channel.
  • CV authentication code
  • the out-of-band function is a function for converting an input value into a visual or audio parameter.
  • the authentication code CV is composed of k + 1 bits (0 to k).
  • the authentication code (CV) is divided into two bits into the OOB converter 150 (C 00 , C 01 , C 02 ,... C ij ), and the OOB converter 150 outputs the output parameter value of the OOB function. It is expressed through four colors specified in the i ⁇ j grid.
  • the OOB converter 150 may set 00 bits as red 1, 01 bits as white 2, 10 bits as blue 3, and 11 bits as black 4, and each 2 bits.
  • the color corresponding to the divided authentication code (CV) is displayed on the grid screen. At this time, the color is preferably complementary to each other to better color separation.
  • the authentication code CV is divided into two or more bits, and when divided into m bits, the authentication code CV may be represented by 2 m colors. In addition, as the m value increases, the number or size of grids displayed on the screen can be reduced.
  • the divided authentication codes CV are represented in one grid, and each grid is represented by one color.
  • the authentication code (CV) since the authentication code (CV) is not divided, the parameter values can be displayed only by the black and white grids (or barcodes), which are two colors, whereas, according to the embodiment of the present invention, the authentication code (CV) is two or more. By dividing into bits, it can be displayed in various colors, which can greatly reduce the number or size of grids.
  • Equation 1 When the number of grids required for displaying the parameter value as a black and white grid as in the prior art is S, the number of grids S 'required for displaying the parameter value is reduced as shown in Equation 1 below.
  • k is 2 m as the number of color types used to display the parameter value
  • m is 2 or more as the number of bits of the divided authentication code (CV).
  • the user may have difficulty in performing the authentication process.
  • the key exchange authentication process can be facilitated.
  • FIG. 5 is an exemplary diagram illustrating that a parameter value of an OOB function according to FIG. 4 is displayed on a screen.
  • an operation screen in the case where a 128-bit long random number is used as the authentication code CV is set to display using four colors.
  • a short length of authentication code is used, and thus an increase in usability can be expected when using an authentication method through an OOB channel.
  • the control of the length of the authentication code is flexible, so that the length of the authentication code can be adjusted according to the level of security requirements of the application, thereby making tradeoffs in usability and security.
  • the color grid can be expressed in half the size or number compared to the conventional black and white grid, making the user's direct session key authentication much easier.
  • FIG. 6 is a view for explaining a process of calculating the median value by the OOB conversion unit using the CML method according to an embodiment of the present invention.
  • the left figure of FIG. 6 shows a process of applying the authentication code CV to the OOB function
  • the right figure shows that the parameter value O generated through the OOB time channel is blinked and displayed on the LED. will be.
  • the wireless communication terminal having no display screen communicates with an external LED display device to express the value of the authentication code CV by turning on or turning off the LED.
  • the OOB conversion unit 150 When the authentication code CV is input to the OOB conversion unit 150, the OOB conversion unit 150 extracts the authentication code of k bits from the least significant bit by 1 bit and assigns the LEDs to the ON and OFF state values. For example, the OOB conversion unit 150 sets a bit value of 1 as a lighting value and 0 as a lighting value.
  • FIG. 7 is an exemplary diagram illustrating that parameter values of the OOB function according to FIG. 6 are displayed through LEDs.
  • the OOB conversion unit 150 generates parameter values LD 0 , LD 1 ,... LD K that determine whether the LED is turned on or off, and transmits the generated parameter values to the LED display device through serial communication.
  • the LED display device turns on or off the LED according to the corresponding parameter value. Therefore, the user can conveniently check whether the session key is exchanged only by turning on and off the LED.
  • FIG. 8 is a view for explaining a process of calculating the median value by the OOB conversion unit using the CM method according to an embodiment of the present invention.
  • the left figure of FIG. 8 illustrates a process of applying the authentication code CV to the OOB function
  • the right figure shows that the parameter value O is generated in the form of an index of the music file through the OOB audio channel.
  • FIG. 9 is an exemplary diagram illustrating a screen on which a music file is played according to a parameter of the OOB function shown in FIG. 8.
  • the OOB conversion unit 150 when the authentication code CV is input to the OOB conversion unit 150, the OOB conversion unit 150 generates the parameter value O in the form of an index of the music file with the k-bit authentication code. Then, the music file wav stored in the wireless communication terminal is played according to the index value. If the authentication code is k bits, 2 k music files are stored. For example, when the authentication code CV is 0011, the music file corresponding to index 3 corresponding to the decimal value of the authentication code is played. Therefore, the user can conveniently check whether the session key is exchanged with a short melody.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명은 가변길이 인증코드를 사용하는 무선 통신 단말간 세션키 공유 방법에 관한 것이다. 본 발명에 따르면 DH(Diffie-Hellman) 프로토콜 기반에서 무선 통신 단말간 세션키를 공유하는 방법에 있어서, 자신의 개인키를 이용하여 공개키를 생성하는 단계, 상기 공개키 및 제1 난수를 포함하는 메시지를 생성하고, 상기 메시지를 자신의 비밀키로 암호화하여 상기 상대 단말의 암호화된 메시지와 교환하는 단계, 상기 상대 단말의 비밀키를 수신하여 상기 상대 단말의 암호화된 메시지를 복호화하는 단계, 상기 제1 난수와 상기 복호화된 메시지에 포함된 제2 난수를 연산하여 인증코드를 생성하는 단계, 상기 인증코드로부터 매개 값을 획득하는 단계, 및 상기 복호화된 메시지에 포함된 상대 단말의 공개키를 이용하여 세션키를 생성하는 단계를 포함한다. 이와 같이 본 발명에 따르면, 짧은 길이의 인증코드를 사용하므로 OOB 채널을 통한 인증 기법 사용 시 높은 사용성 증대를 기대할 수 있다.

Description

가변길이 인증코드를 사용하는 무선 통신 단말간 세션키 공유 방법
본 발명은 가변길이 인증코드를 사용하는 무선 통신 단말간 세션키 공유 방법에 관한 것으로서, 보다 상세하게는 근거리에 있는 무선 통신 단말 간에 높은 보안성을 유지한 상태에서 세션키를 공유할 수 있는 가변길이 인증코드를 사용하는 무선 통신 단말간 세션키 공유 방법에 관한 것이다.
스마트 폰의 대중화는 스마트 폰의 이동성과 컴퓨팅 능력을 활용하는 어플리케이션의 양적 질적 팽창을 가져왔다. 많은 모바일 어플리케이션 중에서도 모바일을 이용한 지불 결제 서비스는 사용자들에게 큰 편의를 가져다 줄 수 있는 서비스로 주목받고 있다. 모바일 지갑과 같은 다양한 지불 수단을 하나의 어플리케이션 안으로 통합시켜 사용자에게 스마트 폰을 통해 다양한 지불 결제 서비스를 간편하게 제공할 수 있다. 스마트 폰을 통한 지불 결제 방법에는 여러 가지 방법이 존재하지만, 모바일 지갑의 지불 결제 서비스는 가까운 거리에 있는 다양한 무선 단말간의 무선 통신을 통해 이루어진다. 하지만 무선통신은 근본적으로 공격자에게 쉽게 노출될 수 있는 취약점을 갖는다. 따라서 이러한 모바일 단말을 이용한 다양한 서비스가 실제 이루어지기 위해서는 근거리에서 이루어지는 단말 사이에 안전한 세션 관리 기술이 반드시 필요하다.
안전한 세션 관리를 위해서는 양 통신 단말이 안전하게 비밀 키를 공유하는 기술이 필요하다. 비밀 키를 공유하는 가장 잘 알려진 방법은 DH(Diffie-Hellman) 프로토콜이지만 중간자 공격에 취약하다는 단점이 있다. 중간자 공격 취약점을 보완하기 위해 STS(Station-to-Station) 프로토콜을 비롯한 많은 키 교환 기술들이 제안되었으나 사전 공유 값을 필요로 한다거나 TTP(Trusted Third Party)를 요구하기 때문에 모바일 결제 서비스에 사용되기에 적합하지 않다. 모바일을 이용한 결제 서비스는 항상 다양한 각 통신 단말과 사전 공유 값을 갖거나 PKI(Public Key Infrastructure)와 같은 공통의 TTP를 가지는 것이 어렵기 때문이다.
또한 DH 프로토콜을 통해 확립된 공유 키(세션키)에 대한 해쉬 값을 인증코드로 사용할 경우 인증코드의 크기는 OOB 채널에 사용되기에 그 값이 너무 크며, 해쉬 값은 pre-image 공격에 취약하다는 문제점이 있다.
본 발명은 근거리에 있는 무선 통신 단말 간에 높은 보안성을 유지한 상태에서 세션키를 공유할 수 있는 가변길이 인증코드를 사용하는 무선 통신 단말간 세션키 공유 방법을 제공하는데 목적이 있다.
본 발명의 실시예에 따르면 DH(Diffie-Hellman) 프로토콜 기반에서 상대 단말과 세션키를 공유하는 방법에 있어서, 자신의 개인키를 이용하여 공개키를 생성하는 단계, 상기 공개키 및 제1 난수를 포함하는 메시지를 생성하고, 상기 메시지를 자신의 비밀키로 암호화하여 상기 상대 단말의 암호화된 메시지와 교환하는 단계, 상기 상대 단말의 비밀키를 수신하여 상기 상대 단말의 암호화된 메시지를 복호화하는 단계, 상기 제1 난수와 상기 복호화된 메시지에 포함된 제2 난수를 연산하여 인증코드를 생성하는 단계, 상기 인증코드로부터 매개 값을 산출하는 단계, 그리고 상기 복호화된 메시지에 포함된 상대 단말의 공개키를 이용하여 세션키를 생성하는 단계를 포함한다.
상기 메시지는, 식별자 및 반사 공격 검증 값을 더 포함할 수 있다.
상기 복호화된 메시지에 포함된 상기 상대 단말의 반사 공격 검증 값을 확인하는 단계를 더 포함할 수 있다.
상기 비밀키는 일회용 키이며, 상기 제1 및 제2 난수는 0 또는 1로 이루어진 비트열로 구성될 수 있다.
상기 인증코드를 생성하는 단계는, 상기 제1 난수와 상기 제2 난수를 배타적 논리 합 연산을 수행하여 인증코드를 생성할 수 있다.
상기 인증 코드는 n(n은 2이상의 자연수)개 비트 단위로 분할되며, 상기 분할된 인증 코드는 1개의 그리드에 대응되며, 각각의 그리드는 1개의 색상으로 표시될 수 있다.
상기 인증코드를 OOB 함수에 적용하여 매개 값을 산출하는 단계는, 상기 인증코드를 2개 이상의 비트로 분할하여 상기 OOB 함수에 입력하여 상기 매개 값을 획득하는 단계, 그리고 상기 매개 값을 복수의 그리드로 이루어진 화면 상에 표시하는 단계를 포함할 수 있다.
상기 매개 값을 표시하기 위하여 필요한 그리드의 개수(S')는 다음의 수학식과 같이 나타낼 수 있다.
Figure PCTKR2012002644-appb-I000001
여기서, S는 상기 매개 값을 표시하는 색상의 종류가 2개일 때 필요한 그리드의 개수를 나타내며, k는 상기 매개 값을 표시하는데 사용하는 색상 종류의 개수로서 2m이며, m은 분할된 상기 인증코드의 비트 개수이다.
상기 인증코드로부터 매개 값을 산출하는 단계는, 상기 인증코드를 OOB 함수에 입력하여 상기 매개 값을 획득하는 단계, 그리고 상기 매개 값에 대응하여 복수의 LED가 점등 또는 소등하도록 제어하는 단계를 포함할 수 있다.
상기 인증코드로부터 매개 값을 산출하는 단계는, 상기 인증코드를 OOB 함수에 입력하여 상기 매개 값을 획득하는 단계, 그리고 상기 매개 값에 대응하여 저장된 음원 파일을 재생하는 단계를 포함할 수 있다.
본 발명의 다른 실시예에 따르면, DH(Diffie-Hellman) 프로토콜 기반에서 상대 단말과 세션키를 공유하기 위한 무선 통신 단말에 있어서, 자신의 개인키를 이용하여 생성된 공개키를 포함하는 저장부, 상기 공개키 및 제1 난수를 포함하는 메시지를 생성하고, 상기 메시지를 자신의 비밀키로 암호화하여 상기 상대 단말의 암호화된 메시지와 교환하는 암호화부, 상기 상대 단말의 비밀키를 수신하여 상기 상대 단말의 암호화된 메시지를 복호화하는 복호화부, 상기 제1 난수와 상기 복호화된 메시지에 포함된 제2 난수를 연산하여 인증코드를 생성하는 인증코드 생성부, 상기 인증코드를 OOB 함수에 적용하여 매개 값을 산출하는 OOB 변환부, 그리고 상기 복호화된 메시지에 포함된 상대 단말의 공개키를 이용하여 세션키를 생성하는 세션키 생성부를 포함한다.
이와 같이 본 발명에 따르면, 짧은 길이의 인증코드를 사용하므로 OOB 채널을 통한 인증 기법 사용 시 높은 사용성 증대를 기대할 수 있다. 또한 인증코드 길이의 조절이 유연하므로 어플리케이션의 보안 요구 수준에 따라 인증코드의 길이를 조절하여 사용성과 보안성의 절충을 꾀할 수 있다. 또한 무선통신 단말의 다양한 사용환경에 따라 다양한 인증방법으로써 CCB(Comparing Color Barcode), CML(Comparing Multi LEDs), CM(Comparing Music) 방법을 제공함으로써 직접적인 세션키 인증을 훨씬 수월하게 할 수 있다.
도 1은 본 발명의 실시예에 따른 무선 통신 단말의 구성도이다.
도 2는 본 발명의 실시예에 따른 무선 통신 단말간 가변 크기 세션키 설정 방법을 나타내는 흐름도이다.
도 3은 도 2에 따른 세션키 설정 방법을 더욱 상세하게 나타낸 흐름도이다.
도 4는 본 발명의 실시예에 따른 OOB 변환부가 CCB 방법을 이용하여 매개 값을 산출하는 과정을 설명하기 위한 도면이다.
도 5는 도 4에 따른 OOB 함수의 매개 값이 화면 상에 표시되는 것을 도시한 예시도이다.
도 6은 본 발명의 실시예에 따른 OOB 변환부가 CML 방법을 이용하여 매개 값을 산출하는 과정을 설명하기 위한 도면이다.
도 7은 도 6에 따른 OOB 함수의 매개 값이 LED를 통하여 표시되는 것을 도시한 예시도이다.
도 8은 본 발명의 실시예에 따른 OOB 변환부가 CM 방법을 이용하여 매개 값을 산출하는 과정을 설명하기 위한 도면이다.
도 9는 도 8에 따른 OOB 함수의 매개 값에 따라 음악 파일이 재생되는 화면을 도시한 예시도이다.
그러면 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다.
도 1은 본 발명의 실시예에 따른 무선 통신 단말의 구성도이다. 도 1에 따른 무선 통신 단말(100)은 근거리에 있는 다른 무선 통신 단말과 세션키를 공유하기 위한 장치로서, 이동국(Mobile Station, MS), 이동 단말(Mobile Terminal, MT), 가입자국(Subscriber Station, SS), 휴대 가입자국(Portable Subscriber Station, PSS), 사용자 장치(User Equipment, UE), 접근 단말(Access Terminal, AT) 등을 지칭할 수도 있고, 이동 단말, 가입자국, 휴대 가입자 국, 사용자 장치 등의 전부 또는 일부의 기능을 포함할 수도 있다.
본 발명의 실시예에 따른 무선 통신 단말(100)은 저장부(110), 암호화부(120), 복호화부(130), 인증코드 생성부(140), OOB 변환부(150) 및 세션키 생성부(160)를 포함한다.
저장부(110)는 무선 통신 단말(100) 자신의 개인키를 이용하여 생성된 공개키, 식별자 ID, 난수, 비밀키를 저장하고, 랜덤(random)하게 선택된 난수와 비밀키를 저장한다.
암호화부(120)는 공격 검증 값, 식별자 ID, 공개키 및 난수를 포함하는 메시지를 생성하고, 생성된 메시지를 자신의 비밀키로 암호화하여 상대 단말의 암호화된 메시지와 교환되도록 한다. 이때 난수 및 공개키 값의 전송은 대칭키 암호화 알고리즘을 사용한다.
복호화부(130)는 수신된 상대 단말의 비밀키를 이용하여 상대 단말의 암호화된 메시지를 복호화하고, 복호화된 메시지에서 공격 검증 값을 인증한다. 인증코드 생성부(140)는 복호화된 메시지에 포함된 상대 단말의 난수와 자신의 난수를 연산하여 인증코드를 생성한다.
여기서, 인증코드 생성부(140)는 공유 키(세션키)에 대한 해쉬 값 대신 난수의 배타적 논리합 값을 인증코드로 사용한다.
OOB 변환부(150)는 인증코드를 OOB 함수에 적용하여 매개 값을 획득한다. 여기서, 양 단말간 매개 값의 인증방법은 컬러 바코드를 사용하며, 기존의 흑백 바코드와 같이 카메라 모듈을 통해 인식되는 것이 아니라 사람이 직접 간단한 컬러 바코드의 동일 여부를 비교하는 과정을 통해 세션키를 인증할 수 있도록 한다.
세션키 생성부(160)는 복호화된 메시지에 포함된 상대 단말의 공개키를 이용하여 세션키를 생성한다.
도 2는 본 발명의 실시예에 따른 무선 통신 단말간 가변 크기 세션키 설정 방법을 나타내는 흐름도이고 도 3은 도 2에 따른 세션키 설정 방법을 더욱 상세하게 나타낸 흐름도이다. 설명의 편의상 도 2 및 도 3에서는 본 발명의 실시예에 따른 무선 통신 단말을 제1 단말과 제2 단말로 나타내었으며, 제1 단말과 제2 단말은 DH 프로토콜 기반에서 지그비, RFID, 블루투스 방식을 통하여 근거리 무선 통신(Near Field Communication, NFC)을 수행하는 단말들이다.
먼저 초기화 단계(Phase 1)에서는 제1 단말과 제2 단말은 사람이 식별 가능한 식별자 ID(예: E-Mail 주소)와 각각의 DH 공개키 값(PKA, PKB)을 설정받는다(S211, S212). 여기서, 제1 단말과 제2 단말에 설정되는 ID는 각각 도 3과 같이 IDA, IDB로 표시할 수 있다. 또한, 제1 단말이 설정받는 DH 공개키 값(PKA)은 제1 단말의 개인키(a)를 이용하여 생성되며(gamodp), 제2 단말이 설정받는 DH 공개키 값 PKB는 제2 단말의 개인키(b)를 이용하여 생성된다(gbmodp).
또한 제1 단말과 제2 단말은 각각 k 비트의 난수(NA, NB)와 t 비트의 일회용 비밀키(SKA, SKB)를 랜덤하게 선택한다(S213, S214). 여기서, 난수 NA, NB는 0 또는 1의 비트 값으로 이루어진 k 개의 비트열로 이루어져 있으므로, k 값을 조절함으로써 다양한 비트열로 이루어진 난수 NA, NB를 생성할 수 있다. 또한 일회용 비밀키 SKA, SKB는 0 또는 1의 비트 값으로 이루어진 t개의 비트열로 이루어지며, 수시로 그 값은 변경될 수 있다.
다음으로 공개키 교환 단계(Phase 2)에서는 제1 단말과 제2 단말은 공개키 값 PKA, PKB을 서로 교환하기 위하여 메시지 mA와 mB를 각각 생성한다(S215, S216).
여기서, 메시지(mA, mB)는 반사(reflection) 공격을 검증하기 위한 공격 검증 값(0 또는 1), 자신의 ID(IDA, IDB), 자신의 공개키 값(PKA, PKB), 자신의 난수(NA, NB)를 포함한다. 제1 단말이 생성하는 메시지(mA)는 0∥ IDA∥PKA∥NA로 나타낼 수 있으며, 제2 단말이 생성하는 메시지(mB)는 1∥ IDB∥PKB∥NB로 나타낼 수 있다. 여기서, 반사 공격 검증 값 0은 송신단말 측임을 의미하고, 1은 수신단말 측임을 의미한다.
다음으로 제1 단말과 제2 단말은 생성된 메시지 mA와 mB를 각각 자신의 비밀키 SKA, SKB를 이용하여 암호화 한다(S217, S218). 그리고 제1 단말과 제2 단말은 비밀키 SKA, SKB에 의해 암호화된 메시지 E(SKA, mA)와 E(SKB, mB)를 서로 교환한다(S219).
그리고 제1 단말은 제2 단말로부터 암호화된 메시지인 E(SKB, mB)를 수신하면, 자신의 비밀키 SKA를 제2 단말로 전송한다(S220). 제1 단말의 비밀키(SKA)를 수신한 제2 단말은 비밀키(SKA)를 이용하여 암호화된 메시지 E(SKA, mA)를 복호화 한다(D(SKA, E(SKA, mA)(S221).
그리고 제2 단말은 복호화된 메시지 m'A에 반사 공격 검증 값 0이 있는지 여부를 확인한 후(S222), 반사 공격 검증 값 0의 존재를 확인하면 자신의 비밀키(SKB)를 제1 단말로 전송한다(S223).
제2 단말의 비밀키(SKB)를 수신한 제1 단말은 비밀키(SKB)를 이용하여 암호화된 메시지 E(SKB, mB)를 복호화 한다(D(SKB, E(SKB, mB)(S224). 그리고 제1 단말은 복호화된 메시지 m'B에 반사 공격 검증 값 1이 있는지 여부를 확인한다(S225).
이와 같이 제1 단말과 제2 단말이 서로 반사 공격 검증을 성공하면, 각각 자신의 난수 값과 전송 받은 난수 값을 연산하여 인증코드를 생성한다(S226, S227). 즉, 제2 단말은 자신의 난수 값(NB)과 제1 단말로부터 수신한 난수 값(N'A)을 연산처리하여 인증코드(CVB)를 생성하고, 제1 단말은 자신의 난수 값(NA)과 제2 단말로부터 수신한 난수 값(N'B)을 연산처리하여 인증코드(CVA)를 생성한다. 본 발명의 실시예에 따르면 인증코드 생성부(140)는 배타적 논리합(exclusive OR)을 이용하여 난수 값들을 연산한다.
그리고, OOB 채널 인증 단계(Phase 3)에서는 제1 단말과 제2 단말은 각각 인증코드(CVA, CVB)를 OOB 함수에 적용하여, 사용자가 시각적 또는 청각적으로 직접 인식할 수 있는 OOB 채널의 매개 값(OA, OB)을 생성한다(S228, S229). 즉, 제1 단말에서는 OOB 함수에 인증코드(CVA)를 적용하여 출력된 매개 값(OA)을 획득하고, 제2 단말에서는 OOB 함수에 인증코드(CVB)를 적용하여 출력된 매개 값(OB)을 획득하게 된다.
그러면 제1 단말의 사용자와 제2 단말의 사용자는 출력된 OOB 채널의 매개 값(OA)과 매개 값(OB)을 직접 비교하여 동일한지를 판단하고, 동일한 경우에는 서로 공개키가 정상적으로 교환된 것으로 인증한다(S230). 여기서 OOB(Out-of-Band) 채널은 사람의 시각과 청각을 이용하는 시각(visual) 채널과 청각(auditory) 채널을 포함한다. OOB 채널이 청각 채널인 경우에는 매개 값은 멜로디, 음악, 효과음 등으로 표현되고, 시각 채널인 경우에는 매개 값은 바코드, 색상 등으로 표현된다.
본 발명의 실시예와 같이, OOB 채널을 이용하는 페어링 기술에 따르면 사람이 직접 대상 단말인 제1 단말, 제2 단말을 선택하고, 선택한 대상 단말들의 인증 정보를 검증할 수 있으므로, 공격자가 메시지를 변조하거나 인증 대상의 디바이스를 가장하는 것을 TTP 없이 식별할 수 있도록 한다.
마지막으로 세션키 설치 단계(Phase 4)에 따르면, 제1 단말과 제2 단말 사이에 공개키 교환에 대한 인증이 성공하면 제1 단말과 제2 단말은 각각 제1 단말과 제2 단말 사이의 세션키(KAB)를 생성하고, 전송받은 상대 단말의 ID와 함께 한 쌍으로 저장하게 된다(S231, S232).
즉, 제1 단말은 수신된 제2 단말의 공개키(PKB)를 이용하여 공유 세션키(KAB = (PKB)amodp)를 생성하고, 제2 단말은 수신된 제1 단말의 공개키(PKA)를 이용하여 공유 세션키(KAB = (PKA)bmodp)를 생성한다.
이와 같이 본 발명의 실시예에 따르면 해쉬를 대신하여 DH 프로토콜에 기반한 대칭키 암호화 알고리즘을 사용함으로써 제1 단말과 제2 단말이 세션키(KAB)를 공유할 수 있다.
특히, 본 발명의 실시예에 따르면 OOB 채널 인증 단계(Phase 3)에서 컬러 바코드 비교(CCB, Comparing Color Barcode), CML(Comparing Multi LEDs), CM(Comparing Music) 방법 중 어느 하나를 활용할 수 있는바, 이하에서는 도 4 내지 도 9를 통하여 OOB 채널을 인증하는 방법에 대하여 설명한다.
도 4는 본 발명의 실시예에 따른 OOB 변환부가 CCB 방법을 이용하여 매개 값을 산출하는 과정을 설명하기 위한 도면이다. 더욱 상세하게는 도 4의 좌측 도면은 인증코드(CV)를 OOB 함수에 적용하는 과정을 나타낸 것이고, 우측 도면은 OOB 시각 채널을 통하여 단말기의 화면에 시각적으로 매개 값(O)이 표시되는 것을 나타낸 것이다. 여기서 OOB(Out-of-Band) 함수는 입력된 값을 시각적 또는 청각적 형태의 매개 값으로 변환시키기 위한 함수이다.
즉, 도 4의 좌측 하단에 나타낸 것처럼, 인증코드(CV)는 k+1개의 비트(0~k)로 이루어진 것으로 가정한다. 그러면 인증코드(CV)는 OOB 변환부(150)에 2비트씩 분할되어 입력되며(C00, C01, C02, … Cij), OOB 변환부(150)는 OOB 함수의 출력 매개 값을 i×j 그리드에 미리 지정된 4가지 색상을 통하여 표현한다. 예를 들어, OOB 변환부(150)는 00 비트를 빨간색인 색상 1, 01 비트를 흰색인 색상 2, 10 비트를 파란색인 색상 3, 11 비트를 검은색인 색상 4로 설정할 수 있으며, 2비트씩 분할되어 입력된 인증코드(CV)에 대응되는 색상을 해당되는 그리드 화면에 표시한다. 이때 색상의 선택은 서로 보색관계로 하여 색상 구분을 좋게 하는 것이 바람직하다.
여기서 인증코드(CV)는 2개 이상의 비트로 분할되며, m개의 비트로 분할되는 경우 2m개의 색상으로 나타낼 수 있다. 또한 m값이 클수록 화면에 나타내는 그리드의 개수 또는 크기를 줄일 수 있다. 그리고, 분할된 인증코드(CV)는 1개의 그리드에 표현되며, 각각의 그리드는 1개의 색상으로 표시된다.
따라서 종래 기술에 따르면 인증코드(CV)를 분할하지 않으므로 2가지 색상인 흑백 그리드(또는 바코드)만으로 매개 값을 표시할 수 있는데 반하여, 본 발명의 실시예에 따르면 인증코드(CV)를 2개 이상의 비트로 분할하므로 다양한 색상으로 나타낼 수 있어 그리드의 개수 또는 크기를 크게 줄일 수 있다.
즉, 흑백 그리드를 사용할 경우 0 비트는 검은색, 1 비트는 하얀색으로 나타내는 반면, 본 발명의 실시예와 같이 다양한 색상을 이용하는 경우에는 여러 비트를 하나의 색으로 나타낼 수 있으므로, 그리드의 개수 또는 크기를 현격하게 줄일 수 있다.
종래 기술과 같이 매개 값을 흑백 그리드로 나타낼 때 필요로 하는 그리드의 개수를 S라고 하면, 매개 값을 표시하기 위하여 필요한 그리드의 개수(S')는 다음의 수학식 1에 나타낸 것과 같이 감소된다.
수학식 1
Figure PCTKR2012002644-appb-M000001
여기서, k는 매개 값을 표시하는데 사용하는 색상 종류의 개수로서 2m이며, m은 분할된 인증코드(CV)의 비트 개수로서 2이상의 값을 가진다.
다만, 컬러 그리드(또는 바코드)의 개수 또는 크기를 줄이기 위하여 너무 많은 색상을 이용하면 사용자로 하여금 인증 과정 수행에 어려움을 줄 수 있기 때문에, 사용자는 그리드의 개수와 색상 개수를 적절하게 조절함으로써, 공개키 교환 인증 과정을 편의성을 도모할 수 있다.
도 5는 도 4에 따른 OOB 함수의 매개 값이 화면 상에 표시되는 것을 도시한 예시도이다. 도 5에서는 인증코드(CV)로 128비트 길이의 난수를 사용했을 경우의 동작화면으로서, 4가지 색상을 이용하여 표시하는 것으로 설정한 것이다.
따라서, 종래의 흑백 그리드의 경우 128개의 그리드가 필요한 반면, 본 발명의 실시예에 따른 컬러 그리드를 사용하는 경우에는 수학식 1을 통해서 확인할 수 있듯이, 절반 크기인 64개의 그리드만으로도 인증 코드의 표현이 가능하다.
이와 같이 본 발명의 실시예에 따르면 짧은 길이의 인증코드를 사용하므로 OOB 채널을 통한 인증 기법 사용 시 높은 사용성 증대를 기대할 수 있다. 또한 인증코드 길이의 조절이 유연하므로 어플리케이션의 보안 요구 수준에 따라 인증코드의 길이를 조절하여 사용성과 보안성의 절충을 꾀할 수 있다. 또한 컬러 그리드는 기존 흑백 그리드에 비해 절반 크기 또는 개수로 표현이 가능하므로 사용자가 직접적인 세션키 인증을 훨씬 수월하게 할 수 있게 한다.
도 6은 본 발명의 실시예에 따른 OOB 변환부가 CML 방법을 이용하여 매개 값을 산출하는 과정을 설명하기 위한 도면이다. 더욱 상세하게는 도 6의 좌측 도면은 인증코드(CV)를 OOB 함수에 적용하는 과정을 나타낸 것이고, 우측 도면은 OOB 시각 채널을 통하여 생성된 매개 값(O)이 LED에 점멸되어 표시되는 것을 나타낸 것이다.
즉, CML 방법에 따르면, 디스플레이 화면이 구비되지 않은 무선 통신 단말이 외부의 LED 표시 장치와 통신하여, 인증코드(CV)의 값을 LED의 점등 또는 소등으로 표현하도록 한다.
인증코드(CV)는 OOB 변환부(150)에 입력되면, OOB 변환부(150)는 k비트의 인증코드를 최하위 비트부터 1비트씩 추출하여 LED의 점등 및 소등 상태 값으로 할당한다. 예를 들어, OOB 변환부(150)는 비트열의 1은 점등 값으로, 0은 소등 값으로 설정한다.
도 7은 도 6에 따른 OOB 함수의 매개 값이 LED를 통하여 표시되는 것을 도시한 예시도이다. OOB 변환부(150)는 LED의 점등/소등 여부를 결정하는 매개 값(LD0, LD1, … LDK)을 생성하고, 생성된 매개 값을 시리얼 통신 등을 통하여 LED 표시 장치로 전달한다. 그리고, LED 표시 장치는 대응되는 매개 값에 따라 LED의 점등 또는 소등하도록 한다. 따라서 사용자는 LED의 점등 및 소등 상태 만으로 편리하게 세션키 교환 여부를 확인할 수 있다.
도 8은 본 발명의 실시예에 따른 OOB 변환부가 CM 방법을 이용하여 매개 값을 산출하는 과정을 설명하기 위한 도면이다. 더욱 상세하게는 도 8의 좌측 도면은 인증코드(CV)를 OOB 함수에 적용하는 과정을 나타낸 것이고, 우측 도면은 OOB 청각 채널을 통하여 음악 파일의 인덱스 형태로 매개 값(O)이 생성되는 것을 나타낸 것이다. 도 9는 도 8에 따른 OOB 함수의 매개 값에 따라 음악 파일이 재생되는 화면을 도시한 예시도이다.
CM 방법에 따르면 인증코드(CV)가 OOB 변환부(150)에 입력되면, OOB 변환부(150)는 k비트의 인증코드를 음악 파일의 인덱스 형태로 매개 값(O)을 생성한다. 그러면 인덱스 값에 따라서 무선 통신 단말에 저장된 음악 파일(wav)이 재생된다. 여기서 인증코드가 k 비트인 경우 2k개의 음악 파일이 저장된다. 예를 들어, 인증코드(CV)가 0011인 경우, 인증코드의 10진수 값에 해당하는 3번 인덱스에 해당하는 음악파일이 재생되도록 한다. 따라서 사용자는 짧은 멜로디 만으로도 편리하게 세션키 교환 여부를 확인할 수 있다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.

Claims (18)

  1. DH(Diffie-Hellman) 프로토콜 기반에서 무선 통신 단말간 세션키를 공유하는 방법에 있어서,
    자신의 개인키를 이용하여 공개키를 생성하는 단계,
    상기 공개키 및 제1 난수를 포함하는 메시지를 생성하고, 상기 메시지를 자신의 비밀키로 암호화하여 상대 단말의 암호화된 메시지와 교환하는 단계,
    상기 상대 단말의 비밀키를 수신하여 상기 상대 단말의 암호화된 메시지를 복호화하는 단계,
    상기 제1 난수와 상기 복호화된 메시지에 포함된 제2 난수를 연산하여 인증코드를 생성하는 단계,
    상기 인증코드로부터 매개 값을 산출하는 단계, 그리고
    상기 복호화된 메시지에 포함된 상대 단말의 공개키를 이용하여 세션키를 생성하는 단계를 포함하는 무선 통신 단말간 세션키 공유 방법.
  2. 제1항에 있어서,
    상기 메시지는,
    식별자 및 반사 공격 검증 값을 더 포함하는 무선 통신 단말간 세션키 공유 방법.
  3. 제2항에 있어서,
    상기 복호화된 메시지에 포함된 상기 상대 단말의 반사 공격 검증 값을 확인하는 단계를 더 포함하는 무선 통신 단말간 세션키 공유 방법.
  4. 제3항에 있어서,
    상기 비밀키는 일회용 키이며,
    상기 제1 및 제2 난수는 0 또는 1로 이루어진 비트열로 구성되는 무선 통신 단말간 세션키 공유 방법.
  5. 제4항에 있어서,
    상기 인증코드를 생성하는 단계는,
    상기 제1 난수와 상기 제2 난수를 배타적 논리 합 연산을 수행하여 인증코드를 생성하는 무선 통신 단말간 세션키 공유 방법.
  6. 제5항에 있어서,
    상기 인증 코드는 n(n은 2이상의 자연수)개 비트 단위로 분할되며, 상기 분할된 인증 코드는 1개의 그리드에 대응되며, 각각의 그리드는 1개의 색상으로 표시되는 무선 통신 단말간 세션키 공유 방법.
  7. 제6항에 있어서,
    상기 인증코드로부터 매개 값을 산출하는 단계는,
    상기 인증코드를 2개 이상의 비트로 분할하여 OOB 함수에 입력하여 상기 매개 값을 획득하는 단계, 그리고
    상기 매개 값을 복수의 그리드로 이루어진 화면 상에 표시하는 단계를 포함하는 무선 통신 단말간 세션키 공유 방법.
  8. 제7항에 있어서,
    상기 매개 값을 표시하기 위하여 필요한 그리드의 개수(S')는 다음의 수학식과 같이 나타내는 무선 통신 단말간 세션키 공유 방법:
    Figure PCTKR2012002644-appb-I000002
    여기서, S는 상기 매개 값을 표시하는 색상의 종류가 2개일 때 필요한 그리드의 개수를 나타내며, k는 상기 매개 값을 표시하는데 사용하는 색상 종류의 개수로서 2m이며, m은 분할된 상기 인증코드의 비트 개수이다.
  9. 제6항에 있어서,
    상기 인증코드로부터 매개 값을 산출하는 단계는,
    상기 인증코드를 OOB 함수에 입력하여 상기 매개 값을 획득하는 단계, 그리고
    상기 매개 값에 대응하여 복수의 LED가 점등 또는 소등하도록 제어하는 단계를 포함하는 무선 통신 단말간 세션키 공유 방법.
  10. 제6항에 있어서,
    상기 인증코드로부터 매개 값을 산출하는 단계는,
    상기 인증코드를 OOB 함수에 입력하여 상기 매개 값을 획득하는 단계, 그리고
    상기 매개 값에 대응하여 저장된 음원 파일을 재생하는 단계를 포함하는 무선 통신 단말간 세션키 공유 방법.
  11. DH(Diffie-Hellman) 프로토콜 기반에서 상대 단말과 세션키를 공유하기 위한 무선 통신 단말에 있어서,
    자신의 개인키를 이용하여 생성된 공개키를 포함하는 저장부,
    상기 공개키 및 제1 난수를 포함하는 메시지를 생성하고, 상기 메시지를 자신의 비밀키로 암호화하여 상기 상대 단말의 암호화된 메시지와 교환하는 암호화부,
    상기 상대 단말의 비밀키를 수신하여 상기 상대 단말의 암호화된 메시지를 복호화하는 복호화부,
    상기 제1 난수와 상기 복호화된 메시지에 포함된 제2 난수를 연산하여 인증코드를 생성하는 인증코드 생성부,
    상기 인증코드로부터 매개 값을 산출하는 OOB 변환부, 그리고
    상기 복호화된 메시지에 포함된 상대 단말의 공개키를 이용하여 세션키를 생성하는 세션키 생성부를 포함하는 무선 통신 단말.
  12. 제11항에 있어서,
    상기 메시지는,
    식별자 및 반사 공격 검증 값을 더 포함하는 무선 통신 단말.
  13. 제12항에 있어서,
    상기 복호화부는,
    상기 복호화된 메시지에 포함된 상기 상대 단말의 반사 공격 검증 값을 확인하는 무선 통신 단말.
  14. 제13항에 있어서,
    상기 비밀키는 일회용 키이며,
    상기 제1 및 제2 난수는 0 또는 1로 이루어진 비트열로 구성되는 무선 통신 단말.
  15. 제14항에 있어서,
    상기 인증코드 생성부는,
    상기 제1 난수와 상기 제2 난수를 배타적 논리 합 연산을 수행하여 인증코드를 생성하는 무선 통신 단말.
  16. 제15항에 있어서,
    상기 인증 코드는 n(n은 2이상의 자연수)개 비트 단위로 분할되며, 상기 분할된 인증 코드는 1개의 그리드에 대응되며, 각각의 그리드는 1개의 색상으로 표시되는 무선 통신 단말.
  17. 제16항에 있어서,
    상기 OOB 변환부는,
    2개 이상의 비트로 분할된 상기 인증코드를 입력받아 상기 매개 값을 획득하고, 상기 매개 값을 복수의 그리드로 이루어진 화면 상에 표시하는 무선 통신 단말.
  18. 제16항에 있어서,
    상기 매개 값을 표시하기 위하여 필요한 그리드의 개수(S')는 다음의 수학식과 같이 나타내는 무선 통신 단말:
    Figure PCTKR2012002644-appb-I000003
    여기서, S는 상기 매개 값을 표시하는 색상의 종류가 2개일 때 필요한 그리드의 개수를 나타내며, k는 상기 매개 값을 표시하는데 사용하는 색상 종류의 개수로서 2m이며, m은 분할된 상기 인증코드의 비트 개수이다.
PCT/KR2012/002644 2011-04-26 2012-04-06 가변길이 인증코드를 사용하는 무선 통신 단말간 세션키 공유 방법 WO2012148096A2 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/000,645 US9078126B2 (en) 2011-04-26 2012-04-06 Method of sharing a session key between wireless communication terminals using a variable-length authentication code

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020110038900A KR101233254B1 (ko) 2011-04-26 2011-04-26 가변길이 인증코드를 사용하는 무선 통신 단말간 세션키 공유 방법
KR10-2011-0038900 2011-04-26

Publications (2)

Publication Number Publication Date
WO2012148096A2 true WO2012148096A2 (ko) 2012-11-01
WO2012148096A3 WO2012148096A3 (ko) 2013-01-10

Family

ID=47072853

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2012/002644 WO2012148096A2 (ko) 2011-04-26 2012-04-06 가변길이 인증코드를 사용하는 무선 통신 단말간 세션키 공유 방법

Country Status (3)

Country Link
US (1) US9078126B2 (ko)
KR (1) KR101233254B1 (ko)
WO (1) WO2012148096A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109039657A (zh) * 2018-11-02 2018-12-18 美的集团股份有限公司 密钥协商方法、设备、终端、存储介质以及系统

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11037147B2 (en) * 2012-07-09 2021-06-15 The Western Union Company Money transfer fraud prevention methods and systems
JP5987552B2 (ja) * 2012-08-21 2016-09-07 株式会社リコー 無線通信装置、プログラムおよび方法
KR101452124B1 (ko) * 2013-08-01 2014-10-16 덕성여자대학교 산학협력단 사물간 통신 네트워크에서 암호화 기반 기기 인증 및 세션키 생성 방법
US10523490B2 (en) * 2013-08-06 2019-12-31 Agilepq, Inc. Authentication of a subscribed code table user utilizing optimized code table signaling
WO2015037886A1 (ko) * 2013-09-11 2015-03-19 Kim Deoksang 스마트 칩 인증 장치 및 그 방법
EP4027576B1 (en) 2014-01-13 2023-11-22 Visa International Service Association Efficient methods for protecting identity in authenticated transmissions
CN104980928B (zh) * 2014-04-03 2018-12-07 华为终端(东莞)有限公司 一种用于建立安全连接的方法、设备及系统
EP3860041B1 (en) 2014-06-18 2023-03-15 Visa International Service Association Efficient methods for authenticated communication
US10931456B2 (en) * 2014-06-26 2021-02-23 Comcast Cable Communications, Llc Secure router authentication
US10056919B2 (en) 2014-07-02 2018-08-21 Agilepq, Inc. Data recovery utilizing optimized code table signaling
AU2015308608B2 (en) 2014-08-29 2019-07-04 Visa International Service Association Methods for secure cryptogram generation
US10461933B2 (en) 2015-01-27 2019-10-29 Visa International Service Association Methods for secure credential provisioning
AU2016218981B2 (en) 2015-02-13 2020-03-05 Visa International Service Association Confidential communication management
US9542136B2 (en) * 2015-03-19 2017-01-10 Ricoh Company, Ltd. Communication control system, communication control apparatus, and communication control method
KR20160132302A (ko) 2015-05-09 2016-11-17 삼성전자주식회사 물리적 접근 제한을 이용한 장치들 사이의 키 공유 방법
US10069623B2 (en) 2015-09-14 2018-09-04 Oath Inc. Method and system for exchanging cryptographic keys with an unauthenticated device
CN105516978B (zh) * 2015-12-04 2019-06-28 上海斐讯数据通信技术有限公司 无线保护设置协商方法及系统
US10097948B2 (en) 2016-03-31 2018-10-09 Intel Corporation Point-and-connect bluetooth pairing
US10917767B2 (en) 2016-03-31 2021-02-09 Intel Corporation IOT device selection
WO2017214060A1 (en) 2016-06-06 2017-12-14 Agilepq, Inc. Data conversion systems and methods
EP3466032B1 (en) 2016-06-07 2021-10-27 Visa International Service Association Multi-level communication encryption
US10505909B2 (en) 2016-12-21 2019-12-10 Intel Corporation Dual physical channel secure connection
US10574451B2 (en) * 2017-10-19 2020-02-25 Bank Of America Corporation Method and apparatus for perfect forward secrecy using deterministic hierarchy
US10958424B1 (en) * 2017-11-02 2021-03-23 Amazon Technologies, Inc. Mechanism to allow third party to use a shared secret between two parties without revealing the secret
FR3118225B1 (fr) * 2020-12-22 2022-12-09 Idakto Procédé et dispositif de génération d'informations d'authentification pour une entité sécurisée et procédé et dispositif de contrôle d'identité associés
CN112765635B (zh) * 2021-01-27 2022-09-20 河南大学 基于耦合映像格子模型的图像加密方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050087815A (ko) * 2002-12-03 2005-08-31 마츠시타 덴끼 산교 가부시키가이샤 키공유 시스템, 공유키 생성장치 및 공유키 복원장치
KR100571820B1 (ko) * 2003-10-20 2006-04-17 삼성전자주식회사 신원 정보를 기반으로 하는 암호 시스템에서의 컨퍼런스세션 키 분배 방법

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4089125A (en) * 1976-12-10 1978-05-16 Enz Vera G Color-assist teaching aid and method therefor
US6920559B1 (en) * 2000-04-28 2005-07-19 3Com Corporation Using a key lease in a secondary authentication protocol after a primary authentication protocol has been performed
JP2003248629A (ja) * 2002-02-26 2003-09-05 Fujitsu Ltd 識別情報を有するリムーバブルディスク装置
US8290146B2 (en) * 2007-01-19 2012-10-16 Mitsubishi Electric Corporation Ciphertext generating apparatus, cryptographic communication system, and group parameter generating apparatus
US7983656B2 (en) * 2007-09-12 2011-07-19 At&T Intellectual Property I, L.P. Method and apparatus for end-to-end mobile user security
US20110202982A1 (en) * 2007-09-17 2011-08-18 Vidoop, Llc Methods And Systems For Management Of Image-Based Password Accounts
JP4613969B2 (ja) * 2008-03-03 2011-01-19 ソニー株式会社 通信装置、及び通信方法
JP5390844B2 (ja) * 2008-12-05 2014-01-15 パナソニック株式会社 鍵配布システム、鍵配布方法
US8627088B2 (en) * 2010-02-10 2014-01-07 Authernative, Inc. System and method for in- and out-of-band multi-factor server-to-user authentication
US9054871B2 (en) * 2012-02-21 2015-06-09 California Institute Of Technology Physical key-protected one time pad

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050087815A (ko) * 2002-12-03 2005-08-31 마츠시타 덴끼 산교 가부시키가이샤 키공유 시스템, 공유키 생성장치 및 공유키 복원장치
KR100571820B1 (ko) * 2003-10-20 2006-04-17 삼성전자주식회사 신원 정보를 기반으로 하는 암호 시스템에서의 컨퍼런스세션 키 분배 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
EUNAH KIM ET AL.: 'Providing Secure Mobile Device Pairing Based on Visual Confirmation.' IEEE 13TH INTERNATIONAL SYMPOSIUM ON CONSUMER ELECTRONICS 25 May 2009, pages 676 - 680 *
GUN I1 MA ET AL.: 'Performance Evaluation of Device Pairing Techniques for Establishing Secure Session Using Mobile Wallet' SOUTH KOREA COMPUTER CONGRESS LITIGATION vol. 37, no. 1 (D), 2010, pages 95 - 100 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109039657A (zh) * 2018-11-02 2018-12-18 美的集团股份有限公司 密钥协商方法、设备、终端、存储介质以及系统

Also Published As

Publication number Publication date
WO2012148096A3 (ko) 2013-01-10
KR20120121429A (ko) 2012-11-06
KR101233254B1 (ko) 2013-02-14
US9078126B2 (en) 2015-07-07
US20130332739A1 (en) 2013-12-12

Similar Documents

Publication Publication Date Title
WO2012148096A2 (ko) 가변길이 인증코드를 사용하는 무선 통신 단말간 세션키 공유 방법
US8621210B2 (en) Ad-hoc trust establishment using visual verification
CN105379190B (zh) 用于指示服务集标识符的系统和方法
CN101822082B (zh) 用于uicc和终端之间安全信道化的技术
CN112640510B (zh) 建立无线安全链路同时维持隐私以防跟踪的方法和设备
US20080195866A1 (en) System and method for human assisted secure information exchange
Mirzadeh et al. Secure device pairing: A survey
CN100579010C (zh) 密钥生成及传输方法和系统
US10680835B2 (en) Secure authentication of remote equipment
CN101965723A (zh) 数字比较关联模型中基于图像的中间人防御
Saxena et al. Secure device pairing based on a visual channel: Design and usability study
CN108964892A (zh) 可信应用标识的生成方法、应用方法、管理系统和应用系统
CN113595744B (zh) 入网方法、装置、电子设备及存储介质
CN109951513A (zh) 基于量子密钥卡的抗量子计算智能家庭量子云存储方法和系统
Perković et al. Secure initialization of multiple constrained wireless devices for an unaided user
CN113742709A (zh) 信息的处理方法、装置、可读介质和电子设备
US8316236B2 (en) Determining security states using binary output sequences
WO2024005565A1 (ko) 메신저 서비스를 제공하기 위한 방법, 시스템 및 비일시성의 컴퓨터 판독 가능한 기록 매체
WO2012165901A2 (ko) 단말기간 보안채널화 방법
Kovačević et al. Flashing displays: user‐friendly solution for bootstrapping secure associations between multiple constrained wireless devices
Huang et al. Security protocols in body sensor networks using visible light communications
WO2019017525A1 (ko) 사용자 인증 서버 및 시스템
WO2021167336A1 (ko) 양자난수 기반의 양자암호화칩이 탑재된 비화기기 및 이를 이용한 비화통신 서비스 제공방법
CN109005029B (zh) 可信应用标识的生成方法和系统、应用方法和应用端设备
Soriente et al. Secure pairing of interface constrained devices

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12777335

Country of ref document: EP

Kind code of ref document: A2

WWE Wipo information: entry into national phase

Ref document number: 14000645

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12777335

Country of ref document: EP

Kind code of ref document: A2