KR20110074441A - Method for mutual authentication between tag and reader in radio frequency identification system - Google Patents
Method for mutual authentication between tag and reader in radio frequency identification system Download PDFInfo
- Publication number
- KR20110074441A KR20110074441A KR1020100127864A KR20100127864A KR20110074441A KR 20110074441 A KR20110074441 A KR 20110074441A KR 1020100127864 A KR1020100127864 A KR 1020100127864A KR 20100127864 A KR20100127864 A KR 20100127864A KR 20110074441 A KR20110074441 A KR 20110074441A
- Authority
- KR
- South Korea
- Prior art keywords
- tag
- reader
- encryption key
- resp
- response
- 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/32—Cryptographic 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/3234—Cryptographic 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 involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K17/00—Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/067—Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
- G06K19/07—Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
- G06K19/0723—Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips the record carrier comprising an arrangement for non-contact communication, e.g. wireless communication circuits on transponder cards, non-contact smart cards or RFIDs
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- 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/32—Cryptographic 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/3271—Cryptographic 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 challenge-response
- H04L9/3273—Cryptographic 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 challenge-response for mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Storage Device Security (AREA)
Abstract
Description
본 발명은, 태그와 리더간 상호 인증 방법에 관한 것으로서, 보다 상세하게는, 태그와 리더를 포함하는 RFID(Radio Frequency IDentification) 시스템의 동작 방법으로서의 태그와 리더간 상호 인증 방법에 관한 것이다.The present invention relates to a mutual authentication method between a tag and a reader, and more particularly, to a mutual authentication method between a tag and a reader as a method of operating a radio frequency identification (RFID) system including a tag and a reader.
일반적인 태그와 리더는 EPC(Electronic Product Code)-global의 표준에 따라 메모리 접근이나 특수 명령어들에 대해서는 암호화 방식의 인증을 제공하고 있으나, 일반적인 통신에는 인증(Authentication) 과정이 포함하지 않고 있다. 특히 태그의 인식 정보인 EPC 교환에 대해서는 특별한 인증 과정을 거치고 있지 않고 있다. 이러한 환경에서는 비합법적인 리더가 태그의 인식 정보를 습득할 수 있으며, 비합법적인 태그가 리더에 인식될 수도 있어, RFID 시스템에 치명적인 결과를 야기시킬 수 있는 잠재적인 위험요소가 존재한다. 이런 상황에 대응하기 위하여 태그와 리더 사이의 상호 인증 과정에 대한 기술이 많이 제안되었으나, 대칭암호화나 해쉬 함수와 같은 무거운 암호학적 알고리즘들을 사용하고 있어, 저가형 RFID 태그에는 적용하기 어려운 점이 많다.General tags and readers provide encryption authentication for memory access and special instructions according to the EPC (Electronic Product Code) -global standard. However, the general communication does not include the authentication process. In particular, the EPC exchange, which is the recognition information of the tag, is not subjected to a special authentication process. In such an environment, an illegal reader may acquire tag recognition information, and an illegal tag may be recognized by the reader, and there is a potential risk factor that may cause a fatal result in the RFID system. In order to cope with this situation, many techniques for mutual authentication process between tag and reader have been proposed. However, heavy cryptographic algorithms such as symmetric encryption and hash function are used, which makes it difficult to apply to low-cost RFID tags.
이러한 암호화 알고리즘은 하드웨어 게이트 면적이나 전력 소모량 측면 등에서 저가형 태그에서 동작하는 것은 어렵다. 이로 인해 저가형 태그에 인증 과정을 추가하기 어려운 상황이며, 비합법적인 태그 또는 비합법적인 리더가 RFID 시스템에서 아무런 제약 없이 동작할 수 있다. 결국 전송될 잘못된 태그 인식 정보 등으로 인해 RFID 시스템의 데이터가 오염될 가능성이 있는 상황이며, 또한 태그 측면에서도 리더가 합법적인 대상인지 확인할 방도가 없어, 비합법적인 리더가 합법적인 태그들로부터 인식 정보를 손쉽게 획득할 수 있으며, 이로 인해 개인 정보 유출이나 RFID 태그 복제와 같은 위협에 노출되어 있다.Such encryption algorithms are difficult to operate on low-cost tags in terms of hardware gate area and power consumption. This makes it difficult to add authentication to low-cost tags, allowing illegal tags or illegal readers to operate without restrictions on RFID systems. In the end, there is a possibility that the RFID system data may be contaminated due to incorrect tag recognition information to be transmitted, and there is no way to check whether the reader is a legitimate target in terms of tags. It's easy to acquire, which exposes you to threats such as personal information leakage and RFID tag duplication.
본 발명의 실시예들은, RFID 시스템에서 비합법적인 태그 또는 리더가 침범할 수 없게 하면서도 상대적으로 단순한 알고리즘을 사용할 수 있는 태그와 리더간 상호 인증 방법을 제공하고자 한다.Embodiments of the present invention are to provide a method for mutual authentication between a tag and a reader that can use a relatively simple algorithm while preventing an illegal tag or reader from invading an RFID system.
본 발명의 일 측면에 따르면, 태그와 리더를 포함하는 RFID 시스템의 동작 방법으로서의 태그와 리더간 상호 인증 방법에 있어서, 단계들 (a) 내지 (f)를 포함할 수 있다.According to an aspect of the present invention, a method of mutual authentication between a tag and a reader as a method of operating an RFID system including a tag and a reader may include steps (a) to (f).
상기 단계 (a)에서는, 상기 태그와 리더가 상기 태그의 고유 식별 ID(EPC_T), 제1 암호화키, 및 제2 암호화키를 포함하는 태그 정보를 저장한다.In step (a), the tag and reader store tag information including a unique identification ID (EPC_ T ), a first encryption key, and a second encryption key of the tag.
상기 단계 (b)에서는, 상기 리더가 난수(N_R)를 생성하여 상기 태그로 전송한다.In the step (b), and the reader generates a random number (N_ R) and transmits it to the tag.
상기 단계 (c)에서는, 상기 난수(N_R)를 수신한 태그가 CRC 연산 기능을 이용하여 응답(RESP_T)을 생성한 후 상기 리더로 전송한다.In step (c), the tag receiving the random number N_ R generates a response RESP_ T using a CRC operation function and transmits the response to the reader.
상기 단계 (d)에서는, 상기 리더가, 상기 CRC 연산 기능을 이용하여 상기 응답(RESP_T)을 검증하고, 검증 결과의 응답(RESP_R)을 생성한 후 상기 태그로 전송한다.In step (d), the reader verifies the response (RESP_ T ) by using the CRC operation function, generates a response (RESP_ R ) of the verification result, and transmits the result to the tag.
상기 단계 (e)에서는, 상기 태그가, 상기 CRC 연산 기능을 이용하여 상기 리더로부터의 상기 검증 결과의 응답(RESP_R)을 검증하고, 상기 제1 암호화키 및 제2 암호화키를 업데이트한다.In the step (e), wherein the tag, and the CRC calculation using a function verifying the response (RESP_ R) of the verification result from the reader, and updating the first encryption key and second encryption key.
상기 단계 (f)에서는, 상기 리더가 상기 제1 암호화키 및 제2 암호화키를 업데이트한다.In step (f), the reader updates the first encryption key and the second encryption key.
또한, 상기 단계 (a)에서, 상기 태그 정보가 임시 ID(EID_T)를 더 포함할 수 있다.In addition, in step (a), the tag information may further include a temporary ID (EID_ T ).
또한, 상기 리더가 상기 태그의 고유 식별 ID(EPC_T), 상기 업데이트된 제1 및 제2 암호화키(K1,K2)를 이용하여 새로운 임시 ID(EID_T)를 생성하는 단계 (g)를 더 포함할 수 있다.And (g) the reader generating a new temporary ID EID_ T using the unique identification ID EPC_ T of the tag and the updated first and second encryption keys K1, K2. It may include.
또한, 상기 단계 (c)가 단계들 (c-1) 내지 (c-3)을 포함할 수 있다. In addition, step (c) may include steps (c-1) to (c-3).
상기 단계 (c-1)에서는, 상기 태그가 상기 고유 식별 ID(EPC_T), 제1 암호화키(K1), 제2 암호화키(K2)를 이용하여 암호화된 임시 ID(EID_T) 생성한다.In step (c-1), the tag generates a temporary ID EID_ T encrypted using the unique identification ID EPC_ T , the first encryption key K1, and the second encryption key K2.
상기 단계 (c-2)에서는, 상기 태그가, 상기 난수(N_R)와 상기 제1 암호화키(K1)의 상위 비트들을 배타적 논리합 연산하고, 난수(N_T)와 상기 제1 암호화키(K1)의 하위 비트들을 배타적 논리합 연산하여 CRC 연산을 통해 응답(RESP_T)을 생성한다.In the step (c-2), wherein the tag, the random number (N_ R) and the first of the upper bits of the encryption key (K1) exclusive OR operation, and the random number (N_ T) with the first encryption key (K1 The OR bits are exclusively ORed to generate a response (RESP_ T ) through a CRC operation.
상기 단계 (c-3)에서는, 상기 태그가 상기 생성한 임시 ID(EID_T), 난수(N_T) 및 응답(RESP_T)을 상기 리더로 전송한다.In the step (c-3), and transmits the tag to the said generated temporary ID (EID_ T), random number (N_ T), and response (RESP_ T) to the reader.
또한, 상기 단계 (d)가 단계들 (d-1) 내지 (d-4)를 포함할 수 있다.In addition, step (d) may include steps (d-1) to (d-4).
상기 단계 (d-1)에서는, 상기 리더가 상기 수신한 임시 ID(EID_T)에 해당하는 상기 태그 정보(EPC, K1, K2)를 불러온다.In step (d-1), the reader retrieves the tag information EPC, K1, K2 corresponding to the received temporary ID EID_ T.
상기 단계 (d-2)에서는, 상기 리더가, 상기 난수(N_R)와 상기 제1 암호화키(K1)의 상위 비트들을 배타적 논리합 연산하고, 상기 난수(N_T)와 상기 제1 암호화키(K1)의 하위 비트들을 배타적 논리합 연산하여 CRC 연산한 결과값이 응답(RESP_T)과 일치하는지 비교한다.In the step (d-2), the reader, the random number (N_ R) and said first logical sum of the significant bits of the encryption key (K1) exclusive operation, with the first encryption the random number (N_ T) key ( Exclusive OR operation on the lower bits of K1) compares the result of CRC operation with the response (RESP_ T ).
상기 단계 (d-3)에서는, 일치하는 경우, 상기 리더가 상기 태그를 합법적인 태그로 인증한다.In step (d-3), if matched, the reader authenticates the tag as a legitimate tag.
상기 단계 (d-4)에서는, 상기 리더가, 상기 난수(N_R)와 상기 제1 암호화키(K1)의 하위 비트들을 배타적 논리합 연산하고, 상기 난수(N_T)와 상기 제1 암호화키(K1)의 상위 비트들을 배타적 논리합 연산하여 CRC 연산을 통해 응답(RESP_R)을 생성한 후 태그로 전송한다.In the step (d-4), the reader, the random number (N_ R) and said first logical sum of the lower bits of the encryption key (K1) exclusive operation, with the first encryption the random number (N_ T) key ( Exclusive OR operation of the upper bits of K1) generates a response (RESP_ R ) through CRC operation, and then transmits it to the tag.
한편, 상기 단계 (c)가, 단계들 (c-1) 내지 (c-5)을 포함할 수 있다.Meanwhile, step (c) may include steps (c-1) to (c-5).
단계 (c-1)에서는, 상기 태그가 난수(N_T)와 상기 제1 암호화키(K)를 배타적 논리합 연산하여, CRC 연산자를 생성한다.In the step (c-1), and the tag is an exclusive OR operation of the first encryption key (K) a random number (N_ T), and generates a CRC operator.
단계 (c-2)에서는, 상기 태그가 상기 고유 식별 ID(EPC_T), 난수(N_R), 및 난수(N_T)를 서로 연결하여, 대상 정보를 생성한다.In step (c-2), the tag connects the unique identification ID EPC_ T , the random number N_ R , and the random number N_ T to each other to generate target information.
단계 (c-3)에서는, 상기 태그가 상기 CRC 연산자로써 상기 대상 정보에 대하여 CRC 연산을 수행하여, CRC 결과값을 생성한다.In step (c-3), the tag performs a CRC operation on the target information with the CRC operator to generate a CRC result.
단계 (c-4)에서는, 상기 태그가 상기 CRC 결과값과 상기 제1 암호화키(K)를 배타적 논리합 연산하여, 응답(RESP_T)을 생성한다.In the step (c-4), and the tag is an exclusive-OR operation to the CRC result and the first encryption key (K), generates a response (RESP_ T).
단계 (c-5)에서는, 상기 태그가 상기 고유 식별 ID(EPC_T), 난수(N_T) 및 응답(RESP_T)을 상기 리더로 전송한다.In step (c-5), the tag transmits the unique identification ID EPC_ T , the random number N_ T , and the response RESP_ T to the reader.
또한, 상기 단계 (d)가 단계들 (d-1) 내지 (d-5)를 포함한다.In addition, step (d) includes steps (d-1) to (d-5).
단계 (d-1)에서는, 상기 리더가 상기 수신한 고유 식별 ID(EPC_T)에 해당하는 변경전 제1 암호화키(Kold), 변경후 제1 암호화키(Knew), 변경전 제2 암호화키(Pold), 및 변경후 제2 암호화키(Pnew)를 불러온다.Step (d-1) The change to which the reader corresponding to the received unique identification ID (EPC_ T) before the first encryption key (Kold), changing after the first encryption key (Knew), non-modified second encryption key (Pold), and after the change, the second encryption key (Pnew) is called up.
단계 (d-2)에서는, 상기 리더가 상기 변경전 제1 암호화키(Kold)를 사용하여 제1 검증용 값(RESP_V1)을 생성한다.In the step (d-2), and generates a first value for the first verification (RESP_ V1) the reader using the non-modified first encryption key (Kold).
단계 (d-3)에서는, 상기 리더가 상기 태그로부터의 응답(RESP_T)이 상기 제1 검증용 값(RESP_V1)과 일치할 경우, 제1 인증용 응답(RESP_R1)을 생성하여 상기 태그로 전송한다.In step (d-3), when the reader (RESP_ T ) from the tag matches the first verification value (RESP_ V1 ), the reader generates a first authentication response (RESP_ R1 ) to generate the tag. To send.
단계 (d-4)에서는, 상기 태그로부터의 응답(RESP_T)이 상기 제1 검증용 값(RESP_V1)과 일치하지 않을 경우, 상기 리더가 상기 변경후 제1 암호화키(Knew)를 사용하여 제2 검증용 값(RESP_V2)을 생성한다.In step (d-4), if the response (RESP_ T ) from the tag does not match the first verification value (RESP_ V1 ), the reader uses the first encryption key (Knew) after the change. a second verification to generate a value (RESP_ V2) for.
단계 (d-5)에서는, 상기 리더가, 상기 태그로부터의 응답(RESP_T)이 상기 제2 검증용 값(RESP_V2)과 일치할 경우, 제2 인증용 응답(RESP_R2)을 생성하여 상기 태그로 전송한다.In step (d-5), if the reader (RESP_ T ) from the tag matches the second verification value (RESP_ V2 ), the reader generates a second authentication response (RESP_ R2 ) and Send to tag.
또한, 상기 (d-3)단계에서 상기 제1 인증용 응답(RESP_R1)을 생성하여 상기 태그로 전송함에 있어서, 단계들 (91) 내지 (95)를 포함한다. In addition, in step (d-3), the first authentication response (RESP_ R1 ) is generated and transmitted to the tag, and the steps (91) to (95) are included.
상기 단계 (91)에서는, 상기 리더가 상기 변경전 제2 암호화키(Pold)와 수신된 상기 난수(N_T)를 배타적 논리합 연산하여, CRC 연산자를 생성한다.In the step 91, to the reader the exclusive OR operation for said random number (N_ T) and receiving the non-modified second encryption key (Pold), and generates a CRC operator.
상기 단계 (92)에서는. 상기 리더가, 수신된 상기 고유 식별 ID(EPC_T)와 상기 난수(N_T)를 서로 연결하여, 대상 정보를 생성한다.In
상기 단계 (93)에서는, 상기 리더가, 상기 CRC 연산자로써 상기 대상 정보에 대하여 CRC 연산을 수행하여, CRC 결과값을 생성한다.In
상기 단계 (94)에서는, 상기 리더가, 상기 CRC 결과값과 상기 변경전 제2 암호화키(Pold)를 배타적 논리합 연산하여, 상기 제1 인증용 응답(RESP_R1)을 생성한다.In the
상기 단계 (95)에서는, 상기 리더가, 생성된 상기 제1 인증용 응답(RESP_R1)을 상기 태그로 전송한다.In step (95), and wherein the reader, transmitting the generated first response for the first authentication (RESP_ R1) to the tag.
본 발명의 실시예들에 의하면, 암호화키들이 지속적으로 변함에 따라 태그 및 리더의 응답들(RESPT 및 RESPR)이 지속적으로 변할 수 있으므로, 인증과정의 보안 레벨이 향상될 수 있다. 또한, 메시지 암호화 시에 hash 함수와 같이 무거운 암호화 함수대신에 일반적으로 메시지 오류검사에 사용하는 CRC 함수를 활용함으로써, 수동형 태그의 하드웨어적인 제약사항을 극복하면서 리더와 태그간 상호인증이 안전하게 이루어질 수 있다.According to embodiments of the present invention, the response of the tag and the reader (RESP T) as the encryption keys are constantly changing. And RESP R ) may be constantly changing, thereby improving the security level of the authentication process. In addition, by using the CRC function, which is generally used for error checking of messages, instead of heavy encryption functions such as hash functions when encrypting messages, mutual authentication between readers and tags can be secured while overcoming hardware limitations of passive tags. .
즉, 본 발명의 실시예들에 의한 태그와 리더간 상호 인증 방법에 의하면, RFID 시스템에서 비합법적인 태그 또는 리더가 침범할 수 없게 하면서도 상대적으로 단순한 알고리즘이 사용될 수 있다.That is, according to the method of mutual authentication between the tag and the reader according to the embodiments of the present invention, a relatively simple algorithm may be used while preventing an illegal tag or reader from invading the RFID system.
예를 들어, 상기 태그가 상기 리더에 전송할 응답(RESP_T)을 생성함에 있어서, 상기 고유 식별 ID(EPC_T), 제1 암호화키(K1) 및 제2 암호화키(K2)를 이용하여 암호화된 임시 ID(EID_T)를 생성하고, 상기 난수(N_R)와 상기 제1 암호화키(K1)의 상위 비트들을 배타적 논리합 연산하고, 난수(N_T)와 상기 제1 암호화키(K1)의 하위 비트들을 배타적 논리합 연산하여 CRC 연산을 통해 응답(RESP_T)을 생성한다.For example, in generating the response RESP_ T to be transmitted to the reader, the tag is encrypted using the unique identification ID EPC_ T , the first encryption key K1, and the second encryption key K2. Generates a temporary ID EID_ T , performs an exclusive OR operation on the random numbers N_ R and the upper bits of the first encryption key K1, and lowers the random number N_ T and the first encryption key K1. An exclusive OR operation of the bits generates a response (RESP_ T ) through a CRC operation.
이 경우, 고유 식별 ID(EPC_T) 및 복수의 암호화키들(K1, K2)을 이용하여 암호화된 임시 ID가 사용되므로, 리더와 태그간 상호인증이 보다 안전하게 이루어질 수 있다.In this case, since the temporary ID encrypted using the unique identification ID EPC_ T and the plurality of encryption keys K1 and K2 is used, mutual authentication between the reader and the tag can be made more secure.
또한, 상기 암호화키(K1)의 상위 비트들과 하위 비트들이 분리되어 CRC 연산에 사용됨에 따라, 비합법적인 태그가 상기 응답(RESP_T), 난수들(N_R,(N_T)을 수신하더라도 다음 응답을 도출하기가 더욱 어려워진다. In addition, as the upper bits and the lower bits of the encryption key K1 are separated and used for a CRC operation, even if an illegal tag receives the response RESP_ T and random numbers N_ R , N_ T , The more difficult it is to derive a response.
한편, 상기 태그가 상기 리더에 전송할 응답(RESP_T)을 생성함에 있어서, 난수(N_T)와 상기 제1 암호화키(K)를 배타적 논리합 연산하여 CRC 연산자를 생성하고, 상기 고유 식별 ID(EPC_T), 난수(N_R), 및 난수(N_T)를 서로 연결하여, 대상 정보를 생성한 후, 상기 CRC 연산자로써 상기 대상 정보에 대하여 CRC 연산을 수행하여, CRC 결과값을 생성할 수도 있다.On the other hand, the tag is in generating a response (RESP_ T) transmit to the reader, a random number (N_ T) and the first exclusive OR operation for the encryption key (K) by generating a CRC operator, and the unique identification ID (EPC_ T ), a random number (N_ R ), and a random number (N_ T ) are connected to each other to generate target information, and then perform a CRC operation on the target information with the CRC operator to generate a CRC result. .
이 경우, 상기 CRC 연산자가 상기 제1 암호화키(K)에 의하여 지속적으로 변하므로, 지속적으로 변하는 제1 암호화키(K)를 알 수 없는 상태에서 CRC 특성이 이용될 수 없다. 따라서, 비합법적인 태그가 상기 응답(RESP_T), 난수들(N_R, N_T)을 수신하더라도 CRC 특성을 이용하여 다음 응답을 도출하기가 더욱 어려워진다. In this case, since the CRC operator is constantly changed by the first encryption key K, the CRC characteristic cannot be used in a state where the constantly changing first encryption key K is unknown. Therefore, even if an illegal tag receives the response (RESP_ T ) and random numbers (N_ R , N_ T ), it becomes more difficult to derive the next response using the CRC characteristic.
상기와 같은 방법들과 효과들은 리더가 태그에 응답(RESP_R)을 전송하는 경우에도 동일하게 적용된다. 즉, 비합법적인 리더가 상기 응답(RESP_R) 및 난수들(N_R, N_T)을 수신하더라도 다음 응답을 도출하기가 더욱 어려워진다. In the same manner as described above and the effects are the same applies even when the reader is sending a response (RESP_ R) to the tag. That is, even if the illegal the reader receives a response (RESP_ R) and the random number (R N_, N_ T) is more difficult to derive the response.
도 1은 태그 및 리더를 포함하는 RFID 시스템을 보여주는 도면이다.
도 2는 본 발명의 일 실시예에 따른 RFID 시스템에서 태그와 리더간 상호 인증 방법의 동작을 보여주는 흐름도이다.
도 3은 도 2에서 태그가 CRC 연산 기능을 이용하여 응답(RESP_T)을 생성하여 전송하는 단계(230)를 상세히 보여주는 흐름도이다.
도 4는 도 2에서 리더가 CRC 연산 기능을 이용하여 태그 응답(RESP_T) 검증 및 자신의 응답(RESP_R)을 생성하여 전송하는 단계(240)를 상세히 보여주는 흐름도이다.
도 5는 도 2에서 태그가 리더 응답(RESP_R)을 검증하고 제1 및 제2 암호화키(K1,K2)를 업데이트하는 단계(250)를 상세히 보여주는 흐름도이다.
도 6은 본 발명의 다른 실시예에 따른 RFID 시스템에서 태그와 리더간 상호 인증 방법의 동작을 보여주는 흐름도이다.
도 7은 도 6에서 태그가 CRC 연산 기능을 이용하여 응답(RESP_T)을 생성하여 전송하는 단계(630)를 상세히 보여주는 흐름도이다.
도 8은 도 6에서 리더가 CRC 연산 기능을 이용하여 태그 응답(RESP_T) 검증 및 자신의 인증용 응답(RESP_R)을 생성하여 전송하는 단계(640)를 상세히 보여주는 흐름도이다.
도 9는 도 8에서 리더가 제1 인증용 응답(RESP_R1)을 생성하여 태그로 전송하는 단계(646)를 상세히 보여주는 흐름도이다.
도 10은 도 6에서 태그가 리더 응답(RESP_R)을 검증하고 제1 및 제2 암호화키(K,P)를 업데이트하는 단계(650)를 상세히 보여주는 흐름도이다.1 is a diagram illustrating an RFID system including a tag and a reader.
2 is a flowchart illustrating an operation of a method for mutual authentication between a tag and a reader in an RFID system according to an embodiment of the present invention.
FIG. 3 is a detailed flowchart illustrating a
FIG. 4 is a flowchart illustrating a
5 is a flow chart showing the
6 is a flowchart illustrating an operation of a method for mutual authentication between a tag and a reader in an RFID system according to another embodiment of the present invention.
FIG. 7 is a detailed flowchart illustrating an
FIG. 8 is a detailed flowchart illustrating an
9 is a flow chart showing the
FIG. 10 is a detailed flowchart illustrating a
하기의 설명 및 첨부된 도면은 본 발명에 따른 동작을 이해하기 위한 것이며, 본 기술 분야의 통상의 기술자가 용이하게 구현할 수 있는 부분은 생략될 수 있다. The following description and the annexed drawings are for understanding the operation according to the present invention, and a part that can be easily implemented by those skilled in the art may be omitted.
또한 본 명세서 및 도면은 본 발명을 제한하기 위한 목적으로 제공된 것은 아니고, 본 발명의 범위는 청구의 범위에 의하여 정해져야 한다. 본 명세서에서 사용된 용어들은 본 발명을 가장 적절하게 표현할 수 있도록 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야 한다. In addition, the specification and drawings are not provided to limit the invention, the scope of the invention should be defined by the claims. Terms used in the present specification should be interpreted as meanings and concepts corresponding to the technical spirit of the present invention so as to best express the present invention.
이하 첨부된 도면을 참조하여 본 발명의 실시예들을 설명한다. Embodiments of the present invention will now be described with reference to the accompanying drawings.
도 1은 태그(100) 및 리더(200)를 포함하는 RFID 시스템을 보여준다.1 shows an RFID system including a
태그(100)는 통합된 안테나를 갖춘 IC칩을 말하며 장비나 사물 등에 삽입되어 무선주파수를 사용한 리더기(10)를 통해 인식되는 과정을 거친다. 태그(100)는 전원의 유무에 따라 전원을 가지고 있는 능동형과 내부나 외부로부터 접적인 전원의 공급 없이 리더(200)의 전자기장에 의해 작동되는 수동형, 전원을 갖추고 있으나 센서구동 등에 보조적으로 사용되는 준-수동형으로 나뉘며, Read와 Write의 지원 유무에 따라 구분되기도 한다. 또한 주파수 대역에 따라 구분되기도 하는데 RFID의 방식별 구분에 대한 내용은 다음과 같다. 일반적으로 수동형의 경우 Read only의 형태를 보이며 가볍고, 가격도 저렴하며, 반영구적으로 사용이 가능하다는 장점을 가지고 있지만, 인식거리가 짧고 리더(200)에서 더 많은 전력을 소모한다는 단점을 보인다. 능동형의 경우 Read/Write의 형태를 보이며, 리더(200)의 필요 전력을 줄이고, 인식거리를 멀리 할 수 있다는 장점을 가지고 있지만, 전원이 부착되어 있어 작동시간에 제한이 있고, 가격이 비싸다는 단점을 보이고 있다. 태그(100)는 전원유무에 따라 능동형과 수동형으로 구분되나 데이터를 저장하거나 정보를 교환하는 기능적인 측면에서는 거의 동일하다. 또한, RFID는 사용 주파수 대역에 따라 인식거리, 인식 속도, 환경에 대한 영향 측면에서 다른 특성을 가지게 된다.The
리더(200)는 응용프로그램을 수행하는 PC, PDA 또는 또 다른 단말기와 여러 가지 통신 방법(RS-232/485, USB, W/LAN)으로 연결되며, 태그(100)와 무선으로 송수신하는 역할을 수행한다. 리더(200)는 태그(100)의 정보를 읽어내기 위해 태그(100)와 송/수신하는 기기이며, 태그(100)에서 수집된 정보를 네트워크로 전송하는 기능을 한다. 현재 리더(200)는 안테나 성능 및 주변 환경에 의해 인식 거리, 인식 정확도가 영향을 받아 적용 범위가 제한되는 특성이 있으므로, 향후 13.56MHz, 900MHz, 433MHz등의 다양한 주파수 대역에서 동작하는 리더(200)와, EPC Code 및 ISO 18000 계열의 코드 등 다중 코드를 인식하는 리더(200)가 필요하게 될 것이다. 리더(200)는 수동형 태그(100)가 동작할 수 있는 전력과 명령어를 무선 반송파 신호로 태그(100)에 전송하고, 태그(100)로부터 응답을 수신하여 신호를 복원하는 기능을 수행한다. 리더기(10)는 고정형과 핸드헬드(hand held)형으로 크게 나누며, 핸드 헬드형에는 안테나가 포함된 일체형이 일반적이며 고정형은 안테나 연결이 가능한 2채널에서 4채널까지 연결할 수 있게 구성되어 있다.The
본 발명에서는, 태그(100)와 리더(200) 간에 상호 인증을 제공하기 위하여 질의/응답(challenge/response) 방식을 사용한다. 질의/응답 방법은 인증을 받으려는 개체에 문제를 내고, 그 문제를 맞추면 인증 과정을 통과시키는 방법이다. 예를 들면, 리더(200)가 태그(100)에게 난수를 생성하여 전송하면, 태그(100)는 수신한 난수와 자신의 고유 정보인 키 값과 배타적 논리합 연산하여 송신한다. 리더(200)는 기존에 저장해 놓았던 태그(100)의 키 값과 자신이 송신한 난수와 배타적 논리합 연산을 수행하고, 태그(100)로부터 수신한 값과 비교한다. 두 개의 값이 일치하면, 리더(200)는 태그(100)를 인증하게 된다. 이 경우에는 리더(200)만 태그(100)를 인증한 것으로 단방향 인증이라고 할 수 있다. 추가적으로 태그(100)가 리더(200)를 인증하게 되면, 인증에 참여한 개체가 서로 인증을 한 경우로, 상호 인증이라고 할 수 있다. In the present invention, a challenge / response scheme is used to provide mutual authentication between the
또한 본 발명에서는, 태그(100)와 리더(200) 사이의 응답 생성을 위해서 해시 함수와 같은 무거운 암호학적 알고리즘 대신에 태그(100)의 내부에 장착되어 있는 CRC 연산 기능을 이용한다. CRC(순환 중복 코드 또는 순환 잉여 코드)는 데이터를 전송할 때 전송된 데이터에 오류가 있는지 확인하기 위해 사용되는 코드이다. EPCglobal Class-1 Gen-2 표준에서는 16bit CRC코드가 사용되며, 무선주파수 채널(channel)에서 노이즈(noise)나 간섭(interference) 또는 데이터 충돌(data collision)로 인한 데이터전송의 오류(error)가 있는지 검출(detect)하기 위해 사용된다. 즉, CRC는 보안의 용도로 사용되는 것이 아니지만, 본 발명에서는 EPCglobal Class-1 Gen-2 표준에서 승인된 CRC 연산 기능을 활용하여 정보 보안 방법에 응용하고자 하는 것이다.In addition, the present invention uses a CRC calculation function mounted inside the
도 2는 본 발명의 일 실시예에 따른 RFID 시스템에서 태그(100)와 리더(200)간 상호 인증 방법의 동작을 보여준다. 도 2를 참조하여, 본 발명의 일 실시예에 따상호 인증 방법을 설명하면 다음과 같다.2 illustrates an operation of a mutual authentication method between a
먼저, 태그(100) 및 리더(200)는 태그(100) 정보 즉, 고유 식별 ID(EPC_T), 제1 암호화키(K1), 제2 암호화키(K2) 및 임시 ID(EID_T)를 공유한다(단계 210). 이러한 태그(100) 정보는 리더(200) 이외에 외부 데이터베이스(미도시)에 저장될 수 있다. 데이터베이스에 태그(100) 정보가 저장된 경우, 리더(200)는 데이터베이스에 접근하여 태그(100) 정보를 리드할 수 있다.First, the
태그(100) 정보를 공유하는 리더(200)는 난수(N_R)를 생성하여 태그(100)로 전송한다(단계 210).Tag transmits (100) the
리더(200)로부터 난수(N_R)를 수신한 태그(100)는 CRC 연산 기능을 이용하여 응답(RESP_T)을 생성하여 리더(200)로 전송한다(단계 230). 도 3을 참조하여, 도 2에서 태그(100)가 CRC 연산 기능을 이용하여 응답(RESP_T)을 생성하여 전송하는 단계(230)를 상세히 설명하면 다음과 같다.
먼저 태그(100)는 고유 식별 ID(EPC_T), 제1 암호화키(K1), 제2 암호화키(K2)를 이용하여 암호화된 임시 ID(EID_T)를 생성한다(단계 231).First, the
이후 태그(100)는 수신한 난수(N_R)와 제1 암호화키(K1)의 상위 비트를 배타적 논리합 연산하고, 자신의 난수(N_T)와 제1 암호화키(K1)의 하위 비트를 배타적 논리합 연산하여 CRC 연산을 통해 응답(RESP_T) 생성한다(단계 232).Thereafter, the
그리고 나서 생성한 임시 ID(EID_T), 난수(N_T) 및 응답(RESP_T)을 리더(200)로 전송한다(단계 233).Thereafter, the generated temporary ID EID_ T , the random number N_ T , and the response RESP_ T are transmitted to the reader 200 (step 233).
도 2로 돌아와서, 태그(100) 응답(RESP_T)을 수신한 리더(200)는 CRC 연산 기능을 이용하여 태그 응답(RESP_T) 검증 및 자신의 응답(RESP_R)을 생성하여 태그(100)로 전송한다(단계 240). 도 4를 참조하여, 도 2에서 리더(200)가 CRC 연산 기능을 이용하여 태그 응답(RESP_T) 검증 및 자신의 응답(RESP_R)을 생성하여 전송하는 단계(240)를 상세히 설명하면 다음과 같다.2, the
리더(200)는, 태그(100)로부터 수신한 임시 ID(EID_T)에 해당하는 태그 정보 즉, 고유 식별 ID(EPC_T), 제1 암호화키(K1), 제2 암호화키(K2)를 불러온다(241단계). 태그(100) 정보가 외부 데이터베이스(미도시)에 저장된 경우, 리더(200)는 데이터베이스에 접근하여 태그(100) 정보를 리드할 수 있다.The
이어서, 리더(200)는 자신의 난수(N_R)와 제1 암호화키(K1)의 상위 비트를 배타적 논리합 연산하고, 태그(100) 난수(N_T)와 제1 암호화키(K1)의 하위 비트를 배타적 논리합 연산하여 CRC 연산한 결과값이 수신한 태그 응답(RESP_T)과 일치하는지 비교한다(단계 242)Subsequently, the
비교 결과 일치하는가를 판단하여(243단계), 일치하지 않는 경우, 잘못된 응답(WORNG_RESP) 메시지를 태그(100)로 전송하고 종료한다(단계 244).If the result of the comparison is determined to be matched (step 243), if it is not matched, an incorrect response (WORNG_RESP) message is transmitted to the
그러나, 일치하는 경우 리더(200)는 태그(100)를 합법적인 태그(100)로 인증한다(단계 245).However, if there is a match, the
그리고 나서 리더(200)는 자신의 난수(N_R)와 제1 암호화키(K1)의 하위 비트를 배타적 논리합 연산하고, 태그의 난수(N_T)와 제1 암호화키(K1)의 상위 비트를 배타적 논리합 연산하여 CRC 연산을 통해 응답(RESP_R)을 생성한 후 태그(100)로 전송한다(단계 246).Then the
도 2로 돌아와서, 리더(200)의 응답(RESP_R)을 수신한 태그(100)는 이를 검증하고, 제1 및 제2 암호화키(K1,K2)를 업데이트한다(단계 250). 도 5는 도 2에서 태그가 리더 응답(RESP_R)을 검증하고 제1 및 제2 암호화키(K1,K2)를 업데이트하는 단계(250)를 상세히 설명하면 다음과 같다.Figure back to 2, the
먼저, 태그(100)는, 리더 난수(N_R)와 제1 암호화키(K1)의 하위 비트를 배타적 논리합 연산하고, 난수(N_T)와 제1 암호화키(K1)의 상위 비트를 배타적 논리합 연산하여 CRC 연산한 결과값이 응답(RESP_R)과 일치하는지 비교한다(단계 251).First, the
비교 결과 일치하는가를 판단하여(252단계), 일치하지 않는 경우, 잘못된 응답(WORNG_RESP) 메시지를 리더(200)로 전송하고 종료한다(단계 253).If the result of the comparison is determined to be matched (step 252), if it does not match, an incorrect response (WORNG_RESP) message is transmitted to the
그러나, 일치하는 경우 태그(100)는 리더(200)를 합법적인 리더(200)로 인증한다(단계 254).However, if there is a match, the
그리고 나서 태그(100)는 제1 암호화키(K1) 및 제2 암호화키(K2) 업데이트한다(단계 255). 태그(100)는, 제1 암호화키(K1)의 상위 비트와 제2 암호화키(K2)의 하위 비트를 배타적 논리합 연산한 결과를 CRC 연산한 값 및 제1 암호화키(K1)의 하위 비트와 제2 암호화키(K2)의 상위 비트를 배타적 논리합 연산한 결과를 CRC 연산한 값으로 제1 암호화키(K1)를 업데이트 한다. The
계속해서 태그(100)는 제1 암호화키(K1)의 상위 비트와 제2 암호화키(K2)의 상위 비트를 배타적 논리합 연산한 결과를 CRC 연산한 값 및 제1 암호화키(K1)의 하위 비트와 제2 암호화키(K2)의 하위 비트를 배타적 논리합 연산한 결과를 CRC 연산한 값으로 제2 암호화키(K2)를 업데이트한다.Subsequently, the
도 2로 돌아와서, 태그(100)가 제1 암호화키(K1) 및 제2 암호화키(K2) 업데이트한 후 리더(200)로 응답 수신 완료(OK_RESP) 메시지를 전송한다(단계 260).2, the
응답 수신 완료(OK_RESP)를 수신한 리더(200)는 제1 암호화키(K1) 및 제2 암호화키(K2) 업데이트한다(단계 270). 리더(200)의 암호화키 업데이트는 태그(100)의 암호화키 업데이트와 동일하므로 생략한다.Upon receiving the response reception completion OK_RESP, the
리더(200)의 암호화키 업데이트가 완료되면, 태그(100) 및 리더(200)간 상호 인증이 완료된다(단계 280). 서로가 합법적인 태그(100) 및 합법적인 리더(200)로 인증되고 나면, 인증 과정에서 획득한 고유 식별 ID(EPC)를 이용하여 리더(200)가 나머지 동작을 수행한다. 또한 이후의 인증을 위하여 업데이트된 새로운 암호화키(K1, K2) 및 고유 식별 ID(EPC)를 배타적 논리합 연산하여 새로운 임시 ID(EID)를 미리 계산하여 저장한다.When the encryption key update of the
상기 본 발명의 일 실시예에 의하면, 암호화키들(K1,K2)이 지속적으로 변함에 따라 태그(100) 및 리더(200)의 응답들(RESPT 및 RESPR)이 지속적으로 변할 수 있으므로, 인증과정의 보안 레벨이 향상될 수 있다. 또한, 메시지 암호화 시에 hash 함수와 같이 무거운 암호화 함수대신에 일반적으로 메시지 오류검사에 사용하는 CRC 함수를 활용함으로써, 수동형 태그의 하드웨어적인 제약사항을 극복하면서 리더와 태그간 상호 인증이 안전하게 이루어질 수 있다.According to the exemplary embodiment of the present invention, as the encryption keys K1 and K2 continuously change, responses of the
즉, 본 발명의 일 실시예에 의한 태그(100)와 리더(200)간 상호 인증 방법에 의하면, RFID 시스템에서 비합법적인 태그 또는 리더가 침범할 수 없게 하면서도 상대적으로 단순한 알고리즘이 사용될 수 있다.That is, according to the mutual authentication method between the
더 나아가, 태그(100)가 리더(200)에 전송할 응답(RESP_T)을 생성함에 있어서, 고유 식별 ID(EPC_T), 제1 암호화키(K1) 및 제2 암호화키(K2)를 이용하여 암호화된 임시 ID(EID_T)를 생성하고, 리더(200)로부터의 난수(N_R)와 제1 암호화키(K1)의 상위 비트들을 배타적 논리합 연산하고, 태그(100)로부터의 난수(N_T)와 상기 제1 암호화키(K1)의 하위 비트들을 배타적 논리합 연산하여 CRC 연산을 통해 응답(RESP_T)을 생성한다.Furthermore, in generating the response RESP_ T to be transmitted to the
따라서, 고유 식별 ID(EPC_T) 및 복수의 암호화키들(K1, K2)을 이용하여 암호화된 임시 ID(EID_T)가 사용되므로, 리더(200)와 태그(100)간 상호인증이 보다 안전하게 이루어질 수 있다.Therefore, since the temporary ID EID_ T encrypted using the unique identification ID EPC_ T and the plurality of encryption keys K1 and K2 is used, mutual authentication between the
또한, 암호화키(K1)의 상위 비트들과 하위 비트들이 분리되어 CRC 연산에 사용됨에 따라, 비합법적인 태그가 상기 응답(RESP_T), 난수들(N_R,(N_T)을 수신하더라도 다음 응답을 도출하기가 더욱 어려워진다. In addition, as the upper bits and the lower bits of the encryption key K1 are separated and used for a CRC operation, even if an illegal tag receives the response (RESP_ T ) and random numbers (N_ R , (N_ T )), the next response is given. It becomes more difficult to derive.
도 6은 본 발명의 다른 실시예에 따른 RFID 시스템에서 태그(100)와 리더간 상호 인증 방법의 동작을 보여준다.6 illustrates an operation of a method for mutual authentication between a
도 6의 실시예를 도 2의 실시예와 비교하면, 단계들 각각이 서로 대응됨을 알 수 있다. 여기에서, 형식적인 차이점은, 도 2의 실시예에서 임시 ID(EID_T)가 사용되었지만, 도 6의 실시예에서는 임시 ID(EID_T)가 사용되지 않았다는 것이다(도 2의 단계 210 및 도 6의 단계 610 참조). 또한, 도 2의 실시예에서, 제1 암호화키(K1) 및 제2 암호화키(K2)가 태그의 임시 ID(EID_T) 생성에 사용되고(도 3의 단계 231 참조) 제1 암호화키(K1)가 리더와 태그의 응답(RESP_R, RESP_T) 생성에 사용된다(도 3의 단계 231 및 단계 246 참조). 이에 대하여, 도 6의 실시예에서, 제1 암호화키(K)는 태그의 응답(RESP_T) 생성에 사용되고, 제2 암호화키(P)는 리더의 응답(RESP_R) 생성에 사용된다.Comparing the embodiment of FIG. 6 with the embodiment of FIG. 2, it can be seen that each of the steps corresponds to each other. Here, a formal difference is even, but the temporary ID (EID_ T) used in Example 2, but was not used, a temporary ID (EID_ T) in the embodiment of Figure 6 (step of Fig. 2210 and Fig. 6 See step 610). In addition, in the embodiment of FIG. 2, the first encryption key K1 and the second encryption key K2 are used to generate the temporary ID EID_ T of the tag (see
한편, 도 6의 실시예와 도 2의 실시예의 비교에 있어서, 단계들 각각이 서로 대응되지만, 도 6의 단계들 S630 및 S640은 그 내용이 다르다. 따라서, 도 7 내지 10을 참조하여 그 차이점들을 중심으로 설명하면 다음과 같다.Meanwhile, in the comparison between the embodiment of FIG. 6 and the embodiment of FIG. 2, the steps correspond to each other, but the contents of steps S630 and S640 of FIG. 6 are different. Therefore, the differences will be described with reference to FIGS. 7 to 10 as follows.
도 7은 도 6에서 태그(100)가 CRC 연산 기능을 이용하여 응답(RESP_T)을 생성하여 전송하는 단계(630)를 상세히 보여준다.Figure 7 shows in detail the
도 7을 참조하면, 도 6의 단계 (630)은 단계들 (631) 내지 (635)를 포함한다.Referring to FIG. 7, step 630 of FIG. 6 includes
단계 (631)에서는, 태그(100)가 자신으로부터의 난수(N_T)와 제1 암호화키(K)를 배타적 논리합 연산하여, CRC 연산자 G를 생성한다.In
따라서, CRC 연산자 G는 아래의 수학식 1처럼 표현될 수 있다.Accordingly, the CRC operator G may be expressed as Equation 1 below.
따라서, 제1 암호화키(K)가 지속적으로 업데이트되므로(도 6의 단계들 650 및 660), CRC 연산자 G의 값도 지속적로 변한다. Therefore, since the first encryption key K is constantly updated (
단계 (632)에서는, 태그(100)가 고유 식별 ID(EPC_T), 난수(N_R), 및 난수(N_T)를 서로 연결하여, 대상 정보(F)를 생성한다. 따라서, 대상 정보 F는 아래의 수학식 2처럼 표현될 수 있다.In
단계 (633)에서는, 태그(100)가 상기 CRC 연산자(F)로써 상기 대상 정보 F에 대하여 CRC 연산을 수행하여, CRC 결과값을 생성한다. 따라서, CRC 결과값 C는 아래의 수학식 3처럼 표현될 수 있다.In
단계 (634)에서는, 태그(100)는 CRC 결과값 C와 상기 제1 암호화키(K)를 배타적 논리합 연산하여, 응답(RESP_T)을 생성한다. 따라서, 태그(100)로부터 리더(200)로 전송될 응답 RESP_T은 아래의 수학식 4처럼 표현될 수 있다.In
그리고, 단계 (635)에서는, 태그(100)가 상기 고유 식별 ID(EPC_T), 난수(N_T) 및 응답(RESP_T)을 상기 리더로 전송한다.In
도 7에 도시된 바와 같은 알고리즘에 의하면, CRC 연산자 G가 제1 암호화키(K)에 의하여 지속적으로 변하므로, 지속적으로 변하는 제1 암호화키(K)를 알 수 없는 상태에서 CRC 특성이 이용될 수 없다. 따라서, 비합법적인 태그가 상기 응답(RESP_T), 난수들(N_R, N_T)을 수신하더라도 CRC 특성을 이용하여 다음 응답을 도출하기가 더욱 어려워진다. According to the algorithm shown in FIG. 7, since the CRC operator G is continuously changed by the first encryption key K, the CRC characteristic may be used in a state in which the constantly changing first encryption key K is unknown. Can't. Therefore, even if an illegal tag receives the response (RESP_ T ) and random numbers (N_ R , N_ T ), it becomes more difficult to derive the next response using the CRC characteristic.
도 8은 도 6에서 리더(200)가 CRC 연산 기능을 이용하여 태그 응답(RESP_T) 검증 및 자신의 인증용 응답(RESP_R)을 생성하여 전송하는 단계(640)를 상세히 보여준다.FIG. 8 illustrates in detail the
도 8을 참조하면, 도 6의 단계 (640)은 단계들 (641) 내지 (648)을 포함한다.Referring to FIG. 8, step 640 of FIG. 6 includes steps 641-648.
단계 (641)에서는, 리더(200)는 수신한 고유 식별 ID(EPC_T)에 해당하는 변경전 제1 암호화키(Kold), 변경후 제1 암호화키(Knew), 변경전 제2 암호화키(Pold), 및 변경후 제2 암호화키(Pnew)를 불러온다.In
단계 (642)에서는, 리더(200)가 변경전 제1 암호화키(Kold)를 사용하여 제1 검증용 값(RESP_V1)을 생성한다. 여기에서, 제1 검증용 값(RESP_V1)을 생성하는 알고리즘은 도 7을 참조하여 설명된 바와 같으므로 그 설명이 생략된다.In
단계들 (643) 및 (646)에서는, 리더(200)가 태그(100)로부터의 응답(RESP_T)이 상기 제1 검증용 값(RESP_V1)과 일치할 경우, 제1 인증용 응답(RESP_R1)을 생성하여 태그(100)로 전송한다. 제1 인증용 응답(RESP_R1)을 생성함에 있어서, 변경전 제2 암호화키(Pold)가 사용된다.In
단계 (643) 및 (644)에서는, 태그(100)로부터의 응답(RESP_T)이 상기 제1 검증용 값(RESP_V1)과 일치하지 않을 경우, 리더(200)가 상기 변경후 제1 암호화키(Knew)를 사용하여 제2 검증용 값(RESP_V2)을 생성한다. 여기에서, 제2 검증용 값(RESP_V1)을 생성하는 알고리즘은 도 7을 참조하여 설명된 바와 같으므로 그 설명이 생략된다.If at
단계들 (645) 및 (647)에서는, 리더(200)는, 태그(100)로부터의 응답(RESP_T)이 상기 제2 검증용 값(RESP_V2)과 일치할 경우, 제2 인증용 응답(RESP_R2)을 생성하여 태그(100)로 전송한다. 제2 인증용 응답(RESP_R2)을 생성함에 있어서, 변경후 제2 암호화키(Pnew)가 사용된다.In
단계들 (645) 및 (648)에서는, 리더(200)는, 태그(100)로부터의 응답(RESP_T)이 상기 제2 검증용 값(RESP_V2)과 일치하지 않을 경우, 잘못된 응답의 신호(WRONG_RESP)를 태그(100)로 전송한다.In
상기와 같은 도 8의 알고리즘에 있어서, 변경전 제1 암호화키(Kold), 변경후 제1 암호화키(Knew), 변경전 제2 암호화키(Pold), 및 변경후 제2 암호화키(Pnew)가 이용됨에 의하여, 송수신 시간 차에 따른 오류가 제거될 수 있다.In the algorithm of FIG. 8 as described above, the first encryption key Kold before the change, the first encryption key Knew after the change, the second encryption key Pold before the change, and the second encryption key Pnew after the change. By using, the error due to the transmission / reception time difference can be eliminated.
도 9는 도 8에서 리더가 제1 인증용 응답(RESP_R1)을 생성하여 태그(100)로 전송하는 단계(646)를 상세히 보여준다. 참고로, 도 8에서 리더가 제2 인증용 응답(RESP_R2)을 생성하여 태그(100)로 전송하는 단계(647)는 도 9와 동일한 상세 단계를 가진다. 다만, 단계 (646)에서 변경전 제2 암호화키(Pold)가 사용됨에 대하여, 단계 (647)에서 변경후 제2 암호화키(Pnew)가 사용된다. 9 shows in detail the
도 9를 참조하면, 도 8에서 리더가 제1 인증용 응답(RESP_R1)을 생성하여 태그(100)로 전송하는 단계(646)는 단계들 (91) 내지 (95)를 포함한다. Referring to Figure 9, in Figure 8 the
단계 (91)에서는, 리더(200)가 상기 변경전 제2 암호화키(Pold)와 수신된 상기 난수(N_T)를 배타적 논리합 연산하여, CRC 연산자를 생성한다(상기 수학식 1 참조).In step 91, to the
단계 (92)에서는. 리더(200)가, 수신된 상기 고유 식별 ID(EPC_T)와 상기 난수(N_T)를 서로 연결하여, 대상 정보를 생성한다(상기 수학식 2 참조).In
단계 (93)에서는, 리더(200)가, 상기 CRC 연산자로써 상기 대상 정보에 대하여 CRC 연산을 수행하여, CRC 결과값을 생성한다(상기 수학식 3 참조).In
상기 단계 (94)에서는, 리더(200)가, 상기 CRC 결과값과 상기 변경전 제2 암호화키(Pold)를 배타적 논리합 연산하여, 상기 제1 인증용 응답(RESP_R1)을 생성한다(상기 수학식 3 참조).In the
상기 단계 (95)에서는, 리더(200)가, 생성된 상기 제1 인증용 응답(RESP_R1)을 태그(100)로 전송한다.In
도 9에 도시된 바와 같은 알고리즘에 의하면, CRC 연산자가 제2 암호화키(P)에 의하여 지속적으로 변하므로, 지속적으로 변하는 제2 암호화키(P)를 알 수 없는 상태에서 CRC 특성이 이용될 수 없다. 따라서, 비합법적인 리더가 합법적인 태그(100)로부터의 난수(N_T)와 합법적인 리더(200)로부터의 상기 응답(RESP_R)을 수신하더라도 CRC 특성을 이용하여 다음 응답을 도출하기가 더욱 어려워진다. According to the algorithm shown in FIG. 9, since the CRC operator is continuously changed by the second encryption key P, the CRC characteristic may be used in a state in which the constantly changing second encryption key P is unknown. none. Thus, the more difficult to the illegitimate reader even if receiving the response (RESP_ R) from the random number (N_ T) and a
끝으로, 도 10을 참조하여, 도 6에서 태그(100)가 리더 응답(RESP_R)을 검증하고 제1 및 제2 암호화키(K,P)를 업데이트하는 단계(650)를 상세히 설명하면 다음과 같다.Finally, referring to FIG. 10, in step 6, the
먼저, 태그(100)는 수신된 인증용 응답(RESP_R)에 대한 검증용 값(RESP_VE)을 생성한다(단계 101). 여기에서, 검증용 값(RESP_VE)의 생성 방법은 도 9의 내용과 대등하므로 그 설명이 생략된다.First, to generate a
다음에, 태그(100)는 수신된 인증용 응답(RESP_R)과 생성된 검증용 값(RESP_VE)이 일치하는지를 판단한다(단계 102).Next, the
수신된 인증용 응답(RESP_R)과 생성된 검증용 값(RESP_VE)이 일치할 경우, 태그(100)는 해당 리더를 합법적인 리더로 인증한다(단계 103). 그리고, 태그(100)는 제1 암호화 키(K) 및 제2 암호화 키(P)를 업데이트한다(단계 104). Generated and the received authentication response for (R RESP_) for verification value if a match (RESP_ VE), tag 100 authenticates the reader in a legitimate reader (step 103). Then, the
수신된 인증용 응답(RESP_R)과 생성된 검증용 값(RESP_VE)이 일치하지 않을 경우, 태그(100)는 잘못된 응답의 신호(WRONG_RESP)를 리더(200)로 전송한다(단계 105).Generated and the received authentication response for (RESP_ R) verification value for the case do not match (RESP_ VE), tag 100 transmits a signal (WRONG_RESP) of an invalid response to the reader 200 (step 105).
이상 설명된 바와 같이, 본 발명에 따른 실시예들에 의하면, 암호화키들이 지속적으로 변함에 따라 태그 및 리더의 응답들(RESPT 및 RESPR)이 지속적으로 변할 수 있으므로, 인증과정의 보안 레벨이 향상될 수 있다. 또한, 메시지 암호화 시에 hash 함수와 같이 무거운 암호화 함수대신에 일반적으로 메시지 오류검사에 사용하는 CRC 함수를 활용함으로써, 수동형 태그의 하드웨어적인 제약사항을 극복하면서 리더와 태그간 상호인증이 안전하게 이루어질 수 있다.As described above, according to embodiments according to the present invention, the response of the tag and the reader (RESP T) as the encryption keys are constantly changing. And RESP R ) may be constantly changing, thereby improving the security level of the authentication process. In addition, by using the CRC function, which is generally used for error checking of messages, instead of heavy encryption functions such as hash functions when encrypting messages, mutual authentication between readers and tags can be secured while overcoming hardware limitations of passive tags. .
즉, 본 발명의 실시예들에 의한 태그와 리더간 상호 인증 방법에 의하면, RFID 시스템에서 비합법적인 태그 또는 리더가 침범할 수 없게 하면서도 상대적으로 단순한 알고리즘이 사용될 수 있다.That is, according to the method of mutual authentication between the tag and the reader according to the embodiments of the present invention, a relatively simple algorithm may be used while preventing an illegal tag or reader from invading the RFID system.
예를 들어, 상기 태그가 상기 리더에 전송할 응답(RESP_T)을 생성함에 있어서, 상기 고유 식별 ID(EPC_T), 제1 암호화키(K1) 및 제2 암호화키(K2)를 이용하여 암호화된 임시 ID(EID_T)를 생성하고, 상기 난수(N_R)와 상기 제1 암호화키(K1)의 상위 비트들을 배타적 논리합 연산하고, 난수(N_T)와 상기 제1 암호화키(K1)의 하위 비트들을 배타적 논리합 연산하여 CRC 연산을 통해 응답(RESP_T)을 생성한다.For example, in generating the response RESP_ T to be transmitted to the reader, the tag is encrypted using the unique identification ID EPC_ T , the first encryption key K1, and the second encryption key K2. Generates a temporary ID EID_ T , performs an exclusive OR operation on the random numbers N_ R and the upper bits of the first encryption key K1, and lowers the random number N_ T and the first encryption key K1. An exclusive OR operation of the bits generates a response (RESP_ T ) through a CRC operation.
이 경우, 고유 식별 ID(EPC_T) 및 복수의 암호화키들(K1, K2)을 이용하여 암호화된 임시 ID가 사용되므로, 리더와 태그간 상호인증이 보다 안전하게 이루어질 수 있다.In this case, since the temporary ID encrypted using the unique identification ID EPC_ T and the plurality of encryption keys K1 and K2 is used, mutual authentication between the reader and the tag can be made more secure.
또한, 상기 암호화키(K1)의 상위 비트들과 하위 비트들이 분리되어 CRC 연산에 사용됨에 따라, 비합법적인 태그가 상기 응답(RESP_T), 난수들(N_R,(N_T)을 수신하더라도 다음 응답을 도출하기가 더욱 어려워진다. In addition, as the upper bits and the lower bits of the encryption key K1 are separated and used for a CRC operation, even if an illegal tag receives the response RESP_ T and random numbers N_ R , N_ T , The more difficult it is to derive a response.
한편, 상기 태그가 상기 리더에 전송할 응답(RESP_T)을 생성함에 있어서, 난수(N_T)와 상기 제1 암호화키(K)를 배타적 논리합 연산하여 CRC 연산자를 생성하고, 상기 고유 식별 ID(EPC_T), 난수(N_R), 및 난수(N_T)를 서로 연결하여, 대상 정보를 생성한 후, 상기 CRC 연산자로써 상기 대상 정보에 대하여 CRC 연산을 수행하여, CRC 결과값을 생성할 수도 있다.On the other hand, the tag is in generating a response (RESP_ T) transmit to the reader, a random number (N_ T) and the first exclusive OR operation for the encryption key (K) by generating a CRC operator, and the unique identification ID (EPC_ T ), a random number (N_ R ), and a random number (N_ T ) are connected to each other to generate target information, and then perform a CRC operation on the target information with the CRC operator to generate a CRC result. .
이 경우, 상기 CRC 연산자가 상기 제1 암호화키(K)에 의하여 지속적으로 변하므로, 지속적으로 변하는 제1 암호화키(K)를 알 수 없는 상태에서 CRC 특성이 이용될 수 없다. 따라서, 비합법적인 태그가 상기 응답(RESP_T), 난수들(N_R, N_T)을 수신하더라도 CRC 특성을 이용하여 다음 응답을 도출하기가 더욱 어려워진다. In this case, since the CRC operator is constantly changed by the first encryption key K, the CRC characteristic cannot be used in a state where the constantly changing first encryption key K is unknown. Therefore, even if an illegal tag receives the response (RESP_ T ) and random numbers (N_ R , N_ T ), it becomes more difficult to derive the next response using the CRC characteristic.
상기와 같은 방법들과 효과들은 리더가 태그에 응답(RESP_R)을 전송하는 경우에도 동일하게 적용된다. 즉, 비합법적인 리더가 상기 응답(RESP_R) 및 난수들(N_R, N_T)을 수신하더라도 다음 응답을 도출하기가 더욱 어려워진다. In the same manner as described above and the effects are the same applies even when the reader is sending a response (RESP_ R) to the tag. That is, even if the illegal the reader receives a response (RESP_ R) and the random number (R N_, N_ T) is more difficult to derive the response.
이제까지 본 발명에 대하여 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 본 발명을 구현할 수 있음을 이해할 것이다. 그러므로 상기 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 특허청구범위에 의해 청구된 발명 및 청구된 발명과 균등한 발명들은 본 발명에 포함된 것으로 해석되어야 한다.So far I looked at the center of the preferred embodiment of the present invention. Those skilled in the art will understand that the present invention can be embodied in a modified form without departing from the essential characteristics of the present invention. Therefore, the above-described embodiments should be considered in an illustrative rather than a restrictive sense. The scope of the present invention is defined by the appended claims rather than by the foregoing description, and the inventions claimed by the claims and the inventions equivalent to the claimed invention are to be construed as being included in the present invention.
RFID 뿐만 아니라 다른 무선 통신의 상호 인증에도 이용될 수 있다.It can be used for mutual authentication of not only RFID but also other wireless communication.
100...태그, 200...리더. 100 ... tag, 200 ... reader.
Claims (12)
(a) 상기 태그와 리더가 상기 태그의 고유 식별 ID(EPC_T), 제1 암호화키, 및 제2 암호화키를 포함하는 태그 정보를 저장하는 단계;
(b) 상기 리더가 난수(N_R)를 생성하여 상기 태그로 전송하는 단계;
(c) 상기 난수(N_R)를 수신한 태그가 CRC 연산 기능을 이용하여 응답(RESP_T)을 생성한 후 상기 리더로 전송하는 단계;
(d) 상기 리더가, 상기 CRC 연산 기능을 이용하여 상기 응답(RESP_T)을 검증하고, 검증 결과의 응답(RESP_R)을 생성한 후 상기 태그로 전송하는 단계;
(e) 상기 태그가, 상기 CRC 연산 기능을 이용하여 상기 리더로부터의 상기 검증 결과의 응답(RESP_R)을 검증하고, 상기 제1 암호화키 및 제2 암호화키를 업데이트하는 단계; 및
(f) 상기 리더가 상기 제1 암호화키 및 제2 암호화키를 업데이트하는 단계를 포함한 태그와 리더간 상호 인증 방법.In a mutual authentication method between a tag and a reader as a method of operating an RFID system including a tag and a reader,
(a) storing, by the tag and the reader, tag information including a unique identification ID (EPC_ T ), a first encryption key, and a second encryption key of the tag;
(b) the reader is transmitted to generate a random number (N_ R) to the tag;
(c) the tag receiving the random number N_ R generates a response RESP_ T using a CRC operation function and transmits the response to the reader;
(d) verifying, by the reader, the response (RESP_ T ) by using the CRC operation function, generating a response (RESP_ R ) of a verification result, and transmitting it to the tag;
(e) the tag verifying a response (RESP_ R ) of the verification result from the reader using the CRC operation function, and updating the first encryption key and the second encryption key; And
(f) the reader updating the first encryption key and the second encryption key.
상기 태그 정보가 임시 ID(EID_T)를 더 포함한 태그와 리더간 상호 인증 방법.The method of claim 1, wherein in step (a),
And the tag information further includes a temporary ID (EID_ T ).
(g) 상기 리더가 상기 태그의 고유 식별 ID(EPC_T), 상기 업데이트된 제1 및 제2 암호화키(K1,K2)를 이용하여 새로운 임시 ID(EID_T)를 생성하는 단계를 더 포함한 태그와 리더간 상호 인증 방법.The method of claim 2,
(g) the reader further comprising generating a new temporary ID EID_ T using the unique identification ID EPC_ T of the tag and the updated first and second encryption keys K1, K2. Of mutual authentication between the user and the reader.
(c-1) 상기 태그가 상기 고유 식별 ID(EPC_T), 제1 암호화키(K1) 및 제2 암호화키(K2)를 이용하여 암호화된 임시 ID(EID_T)를 생성하는 단계;
(c-2) 상기 태그가 상기 난수(N_R)와 상기 제1 암호화키(K1)의 상위 비트들을 배타적 논리합 연산하고, 난수(N_T)와 상기 제1 암호화키(K1)의 하위 비트들을 배타적 논리합 연산하여 CRC 연산을 통해 응답(RESP_T)을 생성하는 단계; 및
(c-3) 상기 태그가 상기 생성한 임시 ID(EID_T), 난수(N_T) 및 응답(RESP_T)을 상기 리더로 전송하는 단계를 포함한 태그와 리더간 상호 인증 방법.The method of claim 2, wherein step (c) comprises
(c-1) the tag generating a temporary ID EID_ T encrypted using the unique identification ID EPC_ T , the first encryption key K1, and the second encryption key K2;
a (c-2) low-order bits of the tag is the random number (N_ R) with the first encryption key (K1) of an upper bit exclusive OR operation, and the random number (N_ T) with the first encryption key (K1) Generating an answer (RESP_ T ) by performing an exclusive OR operation through a CRC operation; And
(c-3) mutual authentication method between the tag and reader, including the step of transmitting the tag is the generated temporary ID (EID_ T), random number (N_ T), and response (RESP_ T) to the reader.
(d-1) 상기 리더가 상기 수신한 임시 ID(EID_T)에 해당하는 상기 태그 정보(EPC, K1, K2)를 불러오는 단계;
(d-2) 상기 리더가, 상기 난수(N_R)와 상기 제1 암호화키(K1)의 상위 비트들을 배타적 논리합 연산하고, 상기 난수(N_T)와 상기 제1 암호화키(K1)의 하위 비트들을 배타적 논리합 연산하여 CRC 연산한 결과값이 응답(RESP_T)과 일치하는지 비교하는 단계;
(d-3) 일치하는 경우, 상기 리더가 상기 태그를 합법적인 태그로 인증하는 단계; 및
(d-4) 상기 리더가, 상기 난수(N_R)와 상기 제1 암호화키(K1)의 하위 비트들을 배타적 논리합 연산하고, 상기 난수(N_T)와 상기 제1 암호화키(K1)의 상위 비트들을 배타적 논리합 연산하여 CRC 연산을 통해 응답(RESP_R)을 생성한 후 태그로 전송하는 단계를 포함한 태그와 리더간 상호 인증 방법.The method of claim 4, wherein step (d)
(d-1) reading, by the reader, the tag information (EPC, K1, K2) corresponding to the received temporary ID (EID_ T );
(d-2) a child of the said reader, the random number (N_ R) with the first encryption key (K1) of an upper bit exclusive OR operation, and the random number (N_ T) with the first encryption key (K1) Performing an exclusive OR operation on the bits and comparing the CRC operation result with the response (RESP_ T );
(d-3) if the match, the reader authenticates the tag as a legitimate tag; And
(d-4) the top of the reader, the random number (N_ R) with the first encryption key (K1) exclusive-or operation of the low-order bit, and the random number (N_ T) with the first encryption key (K1) A method of mutual authentication between a tag and a reader, comprising: generating a response (RESP_ R ) by performing an exclusive OR operation on bits, and then transmitting the response (RESP_ R ) to the tag.
(e-1) 상기 태그가, 상기 난수(N_R)와 상기 제1 암호화키(K1)의 하위 비트들을 배타적 논리합 연산하고, 상기 난수(N_T)와 상기 제1 암호화키(K1)의 상위 비트들을 배타적 논리합 연산하여 CRC 연산한 결과값이 응답(RESP_R)과 일치하는지 비교하는 단계;
(e-2) 일치하는 경우, 상기 태그가, 상기 리더를 합법적인 리더로 인증하는 단계; 및
(e-3) 상기 태그가, 상기 제1 암호화키(K1) 및 제2 암호화키(K2)를 업데이트하는 단계를 포함한 태그와 리더간 상호 인증 방법.The method of claim 5, wherein step (e)
(e-1) upper of the tag, the random number (N_ R) with the first encryption key (K1) exclusive-or operation of the low-order bit, and the random number (N_ T) with the first encryption key (K1) Performing an exclusive OR operation on the bits to compare the CRC operation result with the response (RESP_ R );
(e-2) if matched, the tag authenticating the leader as a legitimate leader; And
(e-3) The tag and the reader mutual authentication method comprising the step of updating the first encryption key (K1) and the second encryption key (K2).
상기 태그가, 상기 제1 암호화키(K1)의 상위 비트들과 상기 제2 암호화키(K2)의 하위 비트들을 배타적 논리합 연산한 결과를 CRC 연산한 값 및 상기 제1 암호화키(K1)의 하위 비트들과 상기 제2 암호화키(K2)의 상위 비트들을 배타적 논리합 연산한 결과를 CRC 연산한 값으로 상기 제1 암호화키(K1)를 업데이트하는 단계; 및
상기 태그가, 상기 제1 암호화키(K1)의 상위 비트들과 상기 제2 암호화키(K2)의 상위 비트들을 배타적 논리합 연산한 결과를 CRC 연산한 값 및 상기 제1 암호화키(K1)의 하위 비트들과 상기 제2 암호화키(K2)의 하위 비트들을 배타적 논리합 연산한 결과를 CRC 연산한 값으로 상기 제2 암호화키(K2)를 업데이트하는 단계를 포함한 태그와 리더간 상호 인증 방법.The method of claim 6, wherein step (e-3)
A value obtained by the tag performing a CRC operation on an exclusive OR operation of the upper bits of the first encryption key K1 and the lower bits of the second encryption key K2 and the lower value of the first encryption key K1. Updating the first encryption key (K1) with a value obtained by performing a CRC operation on an exclusive OR operation of bits and upper bits of the second encryption key (K2); And
A value obtained by performing a CRC operation on the result of the exclusive OR operation of the upper bits of the first encryption key K1 and the upper bits of the second encryption key K2, and a lower value of the first encryption key K1. And updating the second encryption key (K2) with a value obtained by performing a CRC operation on an exclusive OR operation of bits and lower bits of the second encryption key (K2).
(f-1) 상기 리더가 상기 태그로부터 리더 인증 신호를 수신하는 단계;
(f-2) 상기 리더가, 상기 제1 암호화키(K1)의 상위 비트들과 상기 제2 암호화키(K2)의 하위 비트들을 배타적 논리합 연산한 결과를 CRC 연산한 값 및 상기 제1 암호화키(K1)의 하위 비트들과 상기 제2 암호화키(K2)의 상위 비트들을 배타적 논리합 연산한 결과를 CRC 연산한 값으로 상기 제1 암호화키(K1)를 업데이트하는 단계; 및
(f-3) 상기 리더가, 상기 제1 암호화키(K1)의 상위 비트들과 상기 제2 암호화키(K2)의 상위 비트들을 배타적 논리합 연산한 결과를 CRC 연산한 값 및 상기 제1 암호화키(K1)의 하위 비트들과 상기 제2 암호화키(K2)의 하위 비트들을 배타적 논리합 연산한 결과를 CRC 연산한 값으로 상기 제2 암호화키(K2)를 업데이트하는 단계를 포함한 태그와 리더간 상호 인증 방법.8. The method of claim 7, wherein step (f) comprises
(f-1) the reader receiving a reader authentication signal from the tag;
(f-2) a value obtained by performing a CRC operation on the result of the exclusive OR of the upper bits of the first encryption key K1 and the lower bits of the second encryption key K2 by the reader and the first encryption key Updating the first encryption key (K1) with a CRC operation based on an exclusive OR operation of the lower bits of (K1) and the upper bits of the second encryption key (K2); And
(f-3) a value obtained by performing a CRC operation on the result of the exclusive OR of the upper bits of the first encryption key K1 and the upper bits of the second encryption key K2 by the reader, and the first encryption key Updating the second encryption key K2 with a CRC operation based on a result of performing an exclusive OR operation on the lower bits of K1 and the lower bits of the second encryption key K2. Authentication method.
(c-1) 상기 태그가 난수(N_T)와 상기 제1 암호화키(K)를 배타적 논리합 연산하여, CRC 연산자를 생성하는 단계;
(c-2) 상기 태그가 상기 고유 식별 ID(EPC_T), 난수(N_R), 및 난수(N_T)를 서로 연결하여, 대상 정보를 생성하는 단계;
(c-3) 상기 태그가 상기 CRC 연산자로써 상기 대상 정보에 대하여 CRC 연산을 수행하여, CRC 결과값을 생성하는 단계;
(c-4) 상기 태그가 상기 CRC 결과값과 상기 제1 암호화키(K)를 배타적 논리합 연산하여, 응답(RESP_T)을 생성하는 단계; 및
(c-5) 상기 태그가 상기 고유 식별 ID(EPC_T), 난수(N_T) 및 응답(RESP_T)을 상기 리더로 전송하는 단계를 포함한 태그와 리더간 상호 인증 방법.The method of claim 1, wherein step (c) comprises
(c-1) wherein the tag is a random number to exclusive OR operation (N_ T) with the first encryption key (K), generating a CRC operator;
(c-2) the tag generating the target information by connecting the unique identification ID EPC_ T , the random number N_ R , and the random number N_ T with each other;
(c-3) generating a CRC result by the tag performing a CRC operation on the target information using the CRC operator;
(c-4) the tag generating an exclusive OR operation on the CRC result value and the first encryption key (K) to generate a response (RESP_ T ); And
and (c-5) the tag transmitting the unique identification ID (EPC_ T ), random number (N_ T ), and response (RESP_ T ) to the reader.
(d-1) 상기 리더가 상기 수신한 고유 식별 ID(EPC_T)에 해당하는 변경전 제1 암호화키(Kold), 변경후 제1 암호화키(Knew), 변경전 제2 암호화키(Pold), 및 변경후 제2 암호화키(Pnew)를 불러오는 단계;
(d-2) 상기 리더가 상기 변경전 제1 암호화키(Kold)를 사용하여 제1 검증용 값(RESP_V1)을 생성하는 단계;
(d-3) 상기 리더가 상기 태그로부터의 응답(RESP_T)이 상기 제1 검증용 값(RESP_V1)과 일치할 경우, 제1 인증용 응답(RESP_R1)을 생성하여 상기 태그로 전송하는 단계;
(d-4) 상기 태그로부터의 응답(RESP_T)이 상기 제1 검증용 값(RESP_V1)과 일치하지 않을 경우, 상기 리더가 상기 변경후 제1 암호화키(Knew)를 사용하여 제2 검증용 값(RESP_V2)을 생성하는 단계; 및
(d-5) 상기 리더가, 상기 태그로부터의 응답(RESP_T)이 상기 제2 검증용 값(RESP_V2)과 일치할 경우, 제2 인증용 응답(RESP_R2)을 생성하여 상기 태그로 전송하는 단계를 포함한 태그와 리더간 상호 인증 방법.The method of claim 9, wherein step (d) comprises
(d-1) The first encryption key (Kold) before the change, the first encryption key (Knew) after the change, and the second encryption key (Pold) before the change corresponding to the unique identification ID (EPC_ T ) received by the reader. Retrieving a second encryption key (Pnew) after the change;
(d-2) generating a first verification value for (RESP_ V1) to the reader that the use of the non-modified first encryption key (Kold);
(d-3) when the reader (RESP_ T ) from the tag matches the first verification value (RESP_ V1 ), the reader generates and transmits a first authentication response (RESP_ R1 ) to the tag. step;
(d-4) When the response (RESP_ T ) from the tag does not match the first verification value (RESP_ V1 ), the reader verifies the second by using the first encryption key (Knew) after the change. Generating a dragon value (RESP_ V2 ); And
(d-5) When the reader (RESP_ T ) from the tag matches the second verification value (RESP_ V2 ), the reader generates and sends a second authentication response (RESP_ R2 ) to the tag. A method of mutual authentication between a tag and a reader, including the steps of:
(91) 상기 리더가 상기 변경전 제2 암호화키(Pold)와 수신된 상기 난수(N_T)를 배타적 논리합 연산하여, CRC 연산자를 생성하는 단계;
(92) 상기 리더가, 수신된 상기 고유 식별 ID(EPC_T)와 상기 난수(N_T)를 서로 연결하여, 대상 정보를 생성하는 단계;
(93) 상기 리더가, 상기 CRC 연산자로써 상기 대상 정보에 대하여 CRC 연산을 수행하여, CRC 결과값을 생성하는 단계;
(94) 상기 리더가, 상기 CRC 결과값과 상기 변경전 제2 암호화키(Pold)를 배타적 논리합 연산하여, 상기 제1 인증용 응답(RESP_R1)을 생성하는 단계; 및
(95) 상기 리더가, 생성된 상기 제1 인증용 응답(RESP_R1)을 상기 태그로 전송하는 단계가 수행되는 태그와 리더간 상호 인증 방법.According as claimed in claim 10, wherein the transfer from the (d-3) step in the tag to generate the first response for the first authentication (RESP_ R1),
91, the method comprising the reader to the exclusive-or operation of said random number (N_ T) and receiving the non-modified second encryption key (Pold), generating a CRC operator;
(92) generating, by the reader, target information by connecting the received unique identification ID EPC_ T and the random number N_ T with each other;
(93) the reader generating a CRC result by performing a CRC operation on the target information using the CRC operator;
(94) the leader, the CRC result to the exclusive OR operation value and the non-modified second encryption key (Pold), generating the first response for the first authentication (RESP_ R1); And
(95) Mutual authentication between the reader, that the resulting the first response for the first authentication (RESP_ R1) step is carried out for transmission to the tag and the reader.
(e-1) 상기 태그가 수신된 인증용 응답(RESP_R)에 대한 검증용 값(RESP_VE)를 생성하는 단계;
(e-2) 상기 태그가 상기 검증용 값(RESP_VE)과 상기 인증용 응답(RESP_R)이 일치하는지 비교하는 단계;
(e-3) 일치하는 경우, 상기 태그가 상기 리더를 합법적인 리더로 인증하는 단계; 및
(e-4) 상기 태그가 상기 제1 암호화키(K) 및 제2 암호화키(P)를 업데이트하는 단계를 포함한 태그와 리더간 상호 인증 방법.The method of claim 10, wherein step (e)
(e-1) generating a value (VE RESP_) for verification of the authentication response (RESP_ R) for receiving said tag;
(e-2) comparing whether the tag matches the verification value for (RESP_ VE) and response (RESP_ R) for the authentication;
(e-3) if it matches, the tag authenticates the leader as a legitimate leader; And
(e-4) The tag and the reader mutual authentication method comprising the step of updating the first encryption key (K) and the second encryption key (P).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/KR2010/009276 WO2011078603A2 (en) | 2009-12-24 | 2010-12-23 | Method for mutual authentication between tag and reader in radio frequency identification system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20090131212 | 2009-12-24 | ||
KR1020090131212 | 2009-12-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20110074441A true KR20110074441A (en) | 2011-06-30 |
Family
ID=44404773
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100127864A KR20110074441A (en) | 2009-12-24 | 2010-12-14 | Method for mutual authentication between tag and reader in radio frequency identification system |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20110074441A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101465337B1 (en) * | 2013-05-24 | 2014-11-25 | 덕성여자대학교 산학협력단 | Method for Authenticating Entity of Thing to Thing Communication Network |
US10008055B2 (en) | 2014-09-03 | 2018-06-26 | Neo Mobile Technology, Inc. | Reverse trace-preventing wireless recognition secure entry method and secure entry system using same |
CN114205082A (en) * | 2021-12-09 | 2022-03-18 | 北京计算机技术及应用研究所 | Bidirectional identity authentication method and device for reader-writer and electronic tag |
CN114982197A (en) * | 2020-04-16 | 2022-08-30 | 深圳市欢太科技有限公司 | Authentication method, system and storage medium |
-
2010
- 2010-12-14 KR KR1020100127864A patent/KR20110074441A/en not_active Application Discontinuation
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101465337B1 (en) * | 2013-05-24 | 2014-11-25 | 덕성여자대학교 산학협력단 | Method for Authenticating Entity of Thing to Thing Communication Network |
US10008055B2 (en) | 2014-09-03 | 2018-06-26 | Neo Mobile Technology, Inc. | Reverse trace-preventing wireless recognition secure entry method and secure entry system using same |
CN114982197A (en) * | 2020-04-16 | 2022-08-30 | 深圳市欢太科技有限公司 | Authentication method, system and storage medium |
CN114982197B (en) * | 2020-04-16 | 2024-04-02 | 深圳市欢太科技有限公司 | Authentication method, system and storage medium |
CN114205082A (en) * | 2021-12-09 | 2022-03-18 | 北京计算机技术及应用研究所 | Bidirectional identity authentication method and device for reader-writer and electronic tag |
CN114205082B (en) * | 2021-12-09 | 2024-01-26 | 北京计算机技术及应用研究所 | Bidirectional identity authentication method and equipment for reader-writer and electronic tag |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8947211B2 (en) | Communication data protection method based on symmetric key encryption in RFID system, and apparatus for enabling the method | |
US8368516B2 (en) | Secure data exchange with a transponder | |
Peris-Lopez et al. | Cryptanalysis of a novel authentication protocol conforming to EPC-C1G2 standard | |
US8332645B2 (en) | Method, apparatus and product for RFID authentication | |
KR101799389B1 (en) | Method for identifying and authenticating an rfid tag by a reader | |
CN101860528B (en) | Authentication device and authentication method | |
US20100153731A1 (en) | Lightweight Authentication Method, System, and Key Exchange Protocol For Low-Cost Electronic Devices | |
AU2014340234B2 (en) | Facilitating secure transactions using a contactless interface | |
Habibi et al. | Practical attacks on a RFID authentication protocol conforming to EPC C-1 G-2 standard | |
US9553729B2 (en) | Authentication method between a reader and a radio tag | |
JP2022527906A (en) | Secure monitoring using blockchain | |
JP5264182B2 (en) | Method for fast pre-authentication by distance recognition | |
KR20110074441A (en) | Method for mutual authentication between tag and reader in radio frequency identification system | |
Munilla et al. | Cryptanalaysis of an EPCC1G2 standard compliant ownership transfer scheme | |
CN101667255B (en) | Security authentication method, device and system for radio frequency identification | |
KR100605138B1 (en) | Authorization method in radio frequency identification system | |
KR100722363B1 (en) | Rfid system based of robust authentication protocol, and tag and method thereof | |
Moradi et al. | Security analysis and strengthening of an RFID lightweight authentication protocol suitable for VANETs | |
CN113988103B (en) | RFID identification method based on multiple tags | |
CN107045643A (en) | The high secrecy ultrahigh frequency RFID system perceived suitable for ITS Information | |
Maarof et al. | Security analysis of low cost RFID systems | |
Ren et al. | An One-way Hash Function Based Lightweight Mutual Authentication RFID Protocol. | |
CN105847004A (en) | Method for authentication of an object by a device capable of mutual contactless communication, corresponding system and object | |
KR101215155B1 (en) | System for and method of protecting communication between reader and tag in rfid system | |
Razaq et al. | Second-generation RFID |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |