KR100931213B1 - 분산환경에 적합한 저비용 rfid 인증 프로토콜 방법 - Google Patents
분산환경에 적합한 저비용 rfid 인증 프로토콜 방법 Download PDFInfo
- Publication number
- KR100931213B1 KR100931213B1 KR1020070069200A KR20070069200A KR100931213B1 KR 100931213 B1 KR100931213 B1 KR 100931213B1 KR 1020070069200 A KR1020070069200 A KR 1020070069200A KR 20070069200 A KR20070069200 A KR 20070069200A KR 100931213 B1 KR100931213 B1 KR 100931213B1
- Authority
- KR
- South Korea
- Prior art keywords
- tag
- database
- secret key
- random number
- hash
- 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
-
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0877—Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
-
- 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/3236—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 cryptographic hash functions
-
- 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
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/80—Wireless
- H04L2209/805—Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
본 발명은 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법에 관한 것으로, 매 세션마다, 리더에서 태그로 질의(Query)와 제1 랜덤수를 전송하고, 상기 태그에서 제2 랜덤수를 생성하고, 자신의 비밀키를 로 설정하고, 자신의 ID와 비밀키와 제1,2 랜덤수를 해쉬 연산하여 제1 해쉬값을 산출한 후, 상기 제1 해쉬값, P값, 제1,2 랜덤수를 리더로 보내면서, 자신의 ID와 현재 비밀키와 상기 제2 랜덤수를 해쉬연산하여 자신의 비밀키를 갱신하고, 상기 리더는 데이터베이스로 P값과 제1 해쉬값과 제1,2 랜덤수를 전송하여 인증을 요청하고, 이에 상기 데이터베이스에서 관리하고 있는 각 태그ID 별 비밀키 정보를 상기 수신된 로 검색하여 상기 접속된 태그의 를 찾아 인증을 수행하면서, 수신된 P 및 제2 랜덤수와 상기에서 찾은 태그의 ID를 해쉬연산하여 해당 태그의 비밀키를 갱신하고, 상기 태그의 ID와 갱신된 비밀키 K와 제1 랜덤수를 해쉬연산한 제2 해쉬값을 리더를 통해 태그로 전송하고, 태그에서 자신의 비밀키와 자신의 ID 및 제2 랜덤수를 해쉬연산하여 상기 수신된 제2 해쉬값과 비교함으로써 상기 데이터베이스를 인증하는 것이다.
RFID, 태그, 데이터베이스, 리더, 인증, 프로토콜, 분산환경, 보안,
Description
본 발명은 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법에 관한 것으로, 특히 분산환경에 적합하고 RFID 시스템의 보안 요구 사항을 만족하는 효율적이고 실용적인 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법에 관한 것이다.
일반적으로, RFID 시스템은 RFID 태그와 리더 그리고 데이터베이스로 구성된 개체를 인식하는 시스템으로서 소형성, 저가, 그리고 내장성 등의 장점을 갖추고 있다. 최근에는 리더와 태그 사이의 무선 통신을 통한 개체 인식 방식이 주류를 이루면서 바코드 시스템을 대체할 방법으로 각광받고 있다. 그러나 태그와 리더간의 무선 구간은 RF 신호를 이용하게 되고 이로 인해 안전성이 위협받고 있다. RFID 시스템에서 안전성을 위협하는 요소는 개인 프라이버시 정보의 노출, 위치 추적, 그리고 위조 공격 등이 대부분이다.
RFID 시스템의 안전성 문제를 해결하기 위해 리더와 태그간의 다양한 인증 방법들이 제안되었다. 기존의 방법들은 해쉬 함수를 이용하거나 재암호화 방법 혹은 XOR 함수를 사용하는 방법들이 있다. 이 중에서 해쉬 함수에 기반한 방법들이 많이 제안되었는데 이는 태그의 안전도를 보장하면서 계산부하 및 저장공간을 최소화하기에 적합한 암호 기술로 평가되고 있기 때문이다.
기존에 제안된 인증 시스템 중에서 유비쿼터스 환경에 적합하게 설계된 것으로 리(Rhee) 등이 제안한 CRAP(Challenge-Response Based Authentication Protocol)방식과 최(Choi) 등이 제안한 OHLCAP(One-way Hash Based Low-Cost Authentication Protocol)방식이 있다.
분산 환경에 적합하기 위해서는 고정된 ID를 사용하는 것을 특징으로 하는데 이것 자체가 백 엔드(Back-end) DB에서 ID를 검색하는 시간이 많이 소요되거나 안전성 측면에서 몇 가지 취약점을 가지게 된다. 본 발명에서는 분산환경에 적합한 RFID 인증 시스템 중 CRAP 방식과 OHLCAP 방식을 비교 분석한다. 또한 백 엔드(Back-end) DB에서의 연산량이 적은 분산환경에 적합한 RFID 인증 방식을 제안한다.
이하, 종래의 분산환경에 적합한 RFID 인증 프로토콜에 대해 설명하면 다음과 같다.
1. 용어 및 표기
2.
CRAP
방식
CRAP 인증 방식을 나타낸 것이 도 1이며, 인증 절차를 간략히 기술하면 다음과 같다.
하지만, 이 인증방식은 메모리 사용과 태그(3)의 계산량면에서는 효율적인 방법이다. 그러나 데이터베이스(1)에서는 태그의 인증을 위해 모든 ID를 검색해야 하므로 개의 태그가 있다면 평균 번의 해쉬 연산이 필요하여 많은 태그(3)가 필요한 시스템에서는 데이터베이스(1)에서의 부하가 많아지게 된다. 일반적으로 분산환경하에서는 그렇지 않은 환경보다 태그가 많은 점을 고려하면 분산환경에 적합하다는 주장은 계산량 측면에서 볼 때 역설적인 면을 가진다.
3.
OHLCAP
방식
최(Choi) 등이 제안한 해쉬 기반 인증 프로토콜은 초기화 단계와 상호 인증 단계로 이루어져 있으며 이를 나타낸 것이 도 2이다.
가) 초기화 단계
나) 상호 인증 단계
c) 3단계 : 리더(12)는 을 데이터베이스(11)에 보내고 데이터베이스(11)는 다음 연산을 통해 태그의 를 찾는다. 데이터베이스(11)가 찾은 를 이용하여 를 계산하고 전송된 값을 검사함으로써 태그를 인증한다. 태그 인증 후에는 값을 리더(12)에게 보낸다.
이 방식은 태그가 한 번의 해쉬 연산만 수행하므로 효과적인 인증 방법으로 제시되었으며 현재까지의 공격들로부터 모두 안전하다고 분석되었다. 그러나 최근 OHLCAP 프로토콜은 몇 가지 위치 추적 공격에 취약함이 발견되었다.
여기서 위치 추적의 안전성에 대해 엄밀하게 정의하고자 한다. 위치 추적 공격은 공격자가 태그의 이전 이동 경로를 추적할 수 있는 공격으로서 이러한 문제점을 해결하기 위해서는 RFID 태그의 응답이 공격자에게 랜덤하게 보여 다른 태그와의 구별이 불가능(indistinguishability)하여야 한다. 구별 불가능성은 임의의 두 개의 태그가 있을 경우 이전이나 이후 세션에서 이 둘 중의 특별한 하나를 찾아내는 공격도 불가능해야 한다. 또한 어떤 태그가 공격자로부터 위치 추적을 피하기 위해서는 현재 세션에서 출력하는 정보가 이전 세션에서 출력된 정보와도 독립성을 유지해야 한다. 즉, 태그의 현재 정보가 이전 정보와 연관성을 가지고 있어 공격자가 이 연관성을 찾아냄으로서 두 태그를 구별해 낼 수 있다면 위치를 추적할 수 있다. 따라서 현재 세션의 태그는 인접 태그의 정보와 구별 불가능해야 함과 동시에, 이전 세션의 정보와도 구별이 불가능해야 위치 추적에 안전하다고 할 수 있다. 따라서 현재 세션에서는 이전 세션과 동일한 정보 메시지나 연관성을 유추할 수 있는 메시지가 아닌 랜덤한 정보를 출력하여야 한다.
1) 카운터 정보를 이용한 위치 추적 공격
가정 1 : 공격자는 이전 세션에서 출력하는 정보 를 도청하였다고 가정하자. 이후 공격자는 테그들이 출력하는 정보를 도청하여 를 얻어 이 태그가 이전의 태그와 동일한 태그인지를 찾아내는 공격이다. 물론 카운터는 1이 증가하였으므로 이라 가정한다. 여기서 가정은 와 가 특정 태그의 연속적인 메시지라는 것을 이미 알고 있는 것은 아니며, 특정한 태그의 은 정해지고 은 이전에 발생한 여러 개의 신호 중에서 공격자가 구별해야 할 메시지이다.
공격 1 : 공격자는 취득한 그리고 임의의 이 두 메시지를 XOR 연산을 한다. 즉, 가 된다. 그 결과 이 식에서 성분은 상쇄되고 카운터와 관련한 정보만 가지게 된다. 따라서 현재 카운터는 이전 카운터 값에서 하나씩 증가한 값이므로 값은 언제나 LSB로부터 1's-run을 갖게 된다. 따라서 공격자는 목표 태그의 이전 세션 정보를 알고 있으면 다음 세션에서 출력하는 정보가 1's-run을 가지는지 살펴봄으로써 이전의 목표 태그인지 구별할 수 있다. 예를 들면, 이라면 그 다음 세션의 일 것이다.
이 경우 와 같이 LSB로부터 2비트의 1's-run을 가진다. 특히 과 같이 최하위 비트가 0인 경우에는 공 격 시의 값은 항상 1비트의 1's-run을 가지게 되므로 구별이 용이하다. 따라서 공격자는 연속적인 태그의 출력 정보 와 를 도청할 수 있으면 위치 추적이 가능하다. 일반적으로 카운터 정보의 특성상 카운터 값이 큰 값을 사용할수록 동일하지 않은 태그는 1's-run을 가지지 않게 되고 동일한 태그는 다음 세션에서 반드시 1's-run을 가지게 된다. 특히, 카운터가 비트이면 공격대상 태그와 임의의 태그를 구별할 수 없는 확률은 이 되므로 이는 이 클 경우 무시할 만하므로 위치 추적의 정확성은 매우 높다. 즉, 이 확률은 1's-run이 있을 경우 잘못 판단하는 확률을 의미한다. 또한 1's-run을 가지지 않더라도 동일한 태그는 카운터 값을 많아 사용하지 않는다면 이전 세션과 몇 세션 후에서의 비트 반전이 일어나는 크기도 상대적으로 작아 태그 식별 가능성은 매우 높다.
2) 악의적 랜덤 수 발생을 이용한 위장 공격
공격 2 : 공격자는 악의적으로 리더로 가장하여 랜덤 수 와 같이 발생하여 공격하고자 하는 태그에게 보내게 된다. 즉, 의 LSB를 0에서 1로 만 바꾸어 보낸다. 이 경우 태그는 적당한 응답을 보내게 되고 정당한 이 오기를 기다리게 된다. 이때 공격자는 이전 세션에서 획득한 을 보내게 된다. 태그는 를 로 계산하는데 카운터 값이 1만큼 증가하게 되므로 이전 세션의 의 LSB가 0이었다면 이전 세션이나 현재 세션의 값이 동일한 값이 되므로 는 동일한 값으로 연산되어 리더는 이전의 을 보내도 태그의 인증과정을 통과하게 된다. 따라서 확률 1/2로 적법한 리더로 위장(spoofing) 공격을 할 수 있다.
이외에도 태그의 위장 공격과 태그 ID 복구 공격 그리고 하나의 ID 공격에 의한 동일 그룹내 ID 노출 문제 등이 있다. 이에 OHLCAP은 이를 개선한 프로토콜을 제시한 바 있다. 그러나 이 개선 프로토콜도 본 발명에서 제시한 공격 1을 방어할 수 없으며 공격 2를 변형하여 위치를 추적할 수 있다. 즉, 공격자는 리더가 보내는 랜덤 수를 위조하여 특정 태그를 구별해 낼 수 있다. 이 공격에서 공격자는 이전 세션에서 리더가 전송한 LSB가 0인 값과 값을 알고 있고 가정한다. 다음 세션에서 공격자는 이 태그를 찾기 위해 리더로 가장하여 랜덤 수 와 같이 발생하여 태그에게 보내게 된다. 즉, 의 LSB를 0에서 1로만 바꾸어 보낸 후 를 도청한다. 개선된 OHLCAP에서는 최종적으로는 값이 1이 될 확률이 1/2이므로 를 도청하여 태그를 구별할 수 있다. 따라서 값의 LSB 가 0인 경우, 특정태그에 대해 악의적인 랜덤 수 발생으로 이전 태그임을 구별해 내는 데 성공할 확률과 실패할 확률은 각각 1/2(0.5)이다.
따라서, 본 발명은 상기 문제점을 해결하기 위하여 이루어진 것으로, 본 발명의 제 1 목적은 분산환경에 적합하고 RFID 시스템의 보안 요구 사항을 만족하는 효율적이고 실용적인 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법을 제공하는 데 있다.
또한, 본 발명의 제 2 목적은 태그뿐만 아니라 DB에서도 태그를 검색하는 시간을 최소화시킨 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법을 제공하는 데 있다.
또한, 본 발명의 제 3 목적은 태그와 데이터베이스에 저장된 비밀키의 값이 불일치하게 되는 비동기(desynchronization) 상태가 발생하더라도, 동기 복구가 가능한 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법을 제공하는 데 있다.
또한, 본 발명의 제 4 목적은 RFID 태그의 응답이 공격자에게 랜덤하게 보이도록 함으로써 다른 태그와의 구별이 불가능하도록 한 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법을 제공하는 데 있다.
또한, 본 발명의 제 5 목적은 현재 세션에서 출력하는 정보가 이전 세션에서 출력된 정보와 독립성을 유지하도록 함으로써, 공격자로부터 태그의 위치 추적이 불가능하도록 한 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법을 제공하는 데 있다.
또한, 본 발명의 제 6 목적은 현재의 세션의 태그가 인접 태그의 정보와 구별 불가능함과 동시에 이전 세션의 정보와도 구별이 불가능하도록 함으로써, 위치 추적에 안전한 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법을 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명에 의한 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법은, a) 리더가 제1 랜덤수 을 생성하여, 질의와 상기 제1 랜덤수 을 태그로 전송하는 단계; b) 상기 태그에서 제2 랜덤수 를 생성하고, P를 태그의 비밀키 K로 설정하고, 자신의 ID와 비밀키 K와 제1 랜덤수 와 제2 랜덤수 를 해쉬함수로 연산하여 제1 해쉬값 Q를 산출하고, 상기 P와 제1 해쉬값 Q와 제2 랜덤수 를 인증 정보로서 리더로 전송하고, 자신의 ID와 비밀키 K와 제2 랜덤수 를 해쉬연산하여 비밀키 K를 갱신하는 단계와; c) 상기 리더가 상기 P와 제1 해쉬값 Q와 제2 랜덤수 를 수신하여, 이들과 상기 제1 랜덤수 를 함께 태그별 비밀키 K를 관리하는 데이터베이스로 전송하는 단계와; d) 상기 데이터베이스에서 상기 수신된 P와 일치하는 비밀키 를 검색하여 태그의 를 찾아 인증을 수행하고, 상기 태그의 ID와 수신된 P와 제2 랜덤수 를 해쉬연산하여 자신이 관리하는 태그의 비밀키 를 갱신한 후, 상기 태그의 ID와 갱신된 비밀키 K와 제1 랜덤수 를 해쉬함수로 연산한 제2 해쉬값 을 상기 리더를 통해 상기 태그로 전송하는 단계; 및 e) 상기 태그가 상기 제2 해쉬값 을 수신하여, b) 단계에서 갱신한 자신의 비밀키 K로 상기 제2 해쉬값 R을 검증하여 상기 데이터베이스를 인증하는 단계;를 매 세션마다 수행하여 태그를 인증하는 것을 특징으로 한다.
상기 d)단계에서 상기 데이터베이스는, 자신이 관리하는 비밀키 K중에 상기 수신된 P와 일치하는 값이 없으면, 자신이 관리하는 태그의 ID값들을 에 대입하여 해쉬연산하여 상기 수신된 Q를 만족하는 태그의 를 찾아 인증을 수행하는 것을 특징으로 한다.
상기 d)단계에서 상기 데이터베이스는, 자신이 관리하는 비밀키 K중에 상기 수신된 P와 일치하는 값이 없으면, 상기에서 찾은 태그의 ID와 리더로부터 수신된 P 및 제2 랜덤수 를 해쉬 연산하여 자신이 관리하는 태그의 비밀키 를 복구하는 것을 특징으로 한다.
상기 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법은, 상기 데이터베이스에서 관리하는 비밀키 K중에 상기 수신된 P와 일치하는 값이 있으면, 상기 데이터베이스와 태그에서 각각 3번의 해쉬 연산을 수행하고, 데이터베이스에서 관리하는 비밀키 K중에 상기 수신된 P와 일치하는 값이 없으면, 데이터베이스에서번의 해쉬 연산을 수행하는 것을 특징으로 한다.
상기 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법은, 해쉬 함수의 일 방향성으로 인해, 상기 태그와 리더 사이에 전송되는 정보로부터 태그의 또는 태그의 비밀키 를 계산할 수 없는 것을 특징으로 한다.
상기 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법은, 해쉬 함수의 일방향성으로 인해 공격자가 태그의 ID나 비밀키 K를 계산할 수 없고, 리더에서 태그로 전송하는 제2 해쉬값을 산출할 수 없으므로, 공격자가 리더로 가장한 스푸핑(Spoofing) 공격을 할 수 없는 것을 특징으로 한다.
상기 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법은, 해쉬 함수의 일방향성으로 인해, 공격자가 태그의 나 비밀키 를 알 수 없고, 태그의 ID 및 비밀키 K의 해쉬 연산으로 계산되는 제1 해쉬값 Q를 산출할 수 없으므로, 공격자가 태그로 가장한 스푸핑(Spoofing) 공격을 할 수 없는 것을 특징으로 한다.
상술한 바와 같이, 본 발명에 의한 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법에 의하면, 분산환경에 적합하고 RFID 시스템의 보안 요구 사항을 만족 하는 효율적이고 실용적인 상호 인증 프로토콜을 제공할 수 있다.
또한, 태그뿐만 아니라 DB에서도 태그를 검색하는 시간을 최소화시킬 수 있으며, 비동기(desynchronization) 발생 시에도 동기 복구가 가능한 장점이 있다.
또한, RFID 태그의 응답이 공격자에게 랜덤하게 보이도록 함으로써 다른 태그와의 구별이 불가능하도록 할 수 있으며, 현재 세션에서 출력하는 정보가 이전 세션에서 출력된 정보와 독립성을 유지하도록 함으로써, 공격자로부터 태그의 위치 추적이 불가능하도록 할 수 있다.
또한, 현재의 세션의 태그가 인접 태그의 정보와 구별 불가능함과 동시에 이전 세션의 정보와도 구별이 불가능하도록 함으로써, 위치 추적에 안전한 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법을 제공한다.
또한, 이전 세션에서 인증이 정확하게 이루어졌다면 다음 세션에서 태그는 이전 세션에서 저장되었던 태그 검색을 위한 비밀키 를 보내고 데이터베이스는 상기 값의 검색을 통해 쉽게 해당 태그의 를 찾을 수 있도록 함으로써, 검색 소요 시간을 최소화할 수 있는 장점이 있다.
삭제
이하 첨부된 도면을 참조하여 본 발명의 구성 및 작용을 상세하게 설명하기로 한다.
도 3은 본 발명의 바람직한 실시 예에 의한 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법을 나타낸 도면이다.
도 3은 본 발명의 바람직한 실시 예에 의한 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법을 나타낸 도면이다.
[기본 개념]
본 발명에 의한 인증 프로토콜의 기본 조건은 아래와 같다.
① 태그별로 고정된 고유의 ID를 사용하여 분산 환경에 적합
② 현재 고정 ID를 사용하는 인증 방식에서 구별 불가능성(indistinguishability)에 대한 안전성
③ 태그뿐만 아니라 DB에서도 태그를 검색하는 시간을 최소화
④ 비동기(desynchronization) 발생 시에도 동기 복구 기능
특히, 본 발명은 위 고려 사항 중에서 DB에서의 ID 검색 단계를 최소화할 수 있는 방법에 주안점을 두고 설계하였다. 본 발명에 있어서, 데이터베이스에서의 인증을 위한 ID 검색 소요 시간을 최소화할 수 있는 방법의 메인 아이디어는, 다음 세션에서 태그가 보낼 검색을 위한 태그의 비밀키를 이전 세션에서 미리 계산하여 태그 및 데이터베이스에 저장한다. 각 세션에서 인증이 정확하게 이루어졌다면 다음 세션에서 태그는 이전 세션에서 저장되었던 비밀키를 보내고 데이터베이스는 상기 수신된 비밀키를 이용하여 검색을 수행함으로써, 쉽게 태그의 를 찾도록 한다.
본 발명의 프로토콜에서 태그와 데이터베이스간에 공유하는 비밀키가 불일하게 되는 비동기(desynchronization) 상태가 발생할 경우에는 태그가 보낸 정보를 이용하여 데이터베이스에서 해당 태그의 를 찾으면서, 동시에 비밀키를 복구하여 동기가 유지되도록 한다.
도 3은 본 발명에 의한 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법의 상세 과정을 나타낸다.
도 3은 본 발명에 의한 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법의 상세 과정을 나타낸다.
태그는 사전에 자신의 고유 와 자신의 비밀키 를 리더로부터 발급받아 저장해 둔다. 그리고, 태그별로 발급된 각가의 ID 및 비밀키 K를 매칭시켜 데이터베이스에 저장하여 둔다. 여기서 는 고정 값이지만 는 매 세션마다 갱신된다. 매 세션마다 하기의 과정이 수행되어, 태그 및 데이터베이스의 인증이 이루어지면서 다음 세션을 위한 비밀키 K의 갱신이 이루어진다.
b) 2단계 : 태그가, 제2 랜덤수 를 생성하고, 자신에게 저장되어 있는 비밀키 K값으로 P를 설정하고, 상기 자신에게 저장되어 있는 비밀키 K와 자신의 ID와 상기 리더로부터 수신한 제1 랜덤수와 자신이 생성한 제2 랜덤수 를 해쉬 함수 H()로 연산하여 제1 해쉬값 Q를 계산한 후, 상기 P와 제1 해쉬값 Q와 제2 랜덤수 를 리더로 전송한다.
동시에, 상기 자신에게 저장된 비밀키 K와 자신의 ID와 상기 제2 랜덤수 를 해쉬 함수 H()로 연산한 해쉬값으로 자신의 비밀키 K를 변경한다. 여기서 변경된 비밀키 K는 데이터베이스의 인증 및 다음 세션에서 자신을 인증할 비밀키가 된다.
동시에, 상기 자신에게 저장된 비밀키 K와 자신의 ID와 상기 제2 랜덤수 를 해쉬 함수 H()로 연산한 해쉬값으로 자신의 비밀키 K를 변경한다. 여기서 변경된 비밀키 K는 데이터베이스의 인증 및 다음 세션에서 자신을 인증할 비밀키가 된다.
c) 3단계 : 리더는 데이터베이스에 상기 태그로부터 수신된 정보를 안전하게 보내고, 데이터베이스는 상기 수신된 정보중에서 P값을 자신이 가진 비밀키 와 비교하여, 해당 태그의 를 찾고 인증을 수행한다. 그리고 상기 수신된 정보중에서 제2 랜덤수 와 P 및 검색을 통해 찾은 태그의 ID를 통해 자신이 가진 해당 태그의 비밀키 를 갱신하고, 데이터베이스 인증을 위한 제2 해쉬값 을 해당 태그의 ID와 제1 랜덤수 와 갱신된 비밀키 K의 해쉬 연산을 통해 계산하여 태그로 보낸다. 이때, 이전 세션에서 동기화가 되지 않았다면, 상기 수신된 P와 일치하는 비밀키 K가 데이터베이스내에 존재하지 않게 되고, 따라서, 수신된 P와 일치하는 비밀키 K가 없으면, 데이터베이스는 리더를 통해 전달된 P값과 제1,2 랜덤수 , 와 자신에게 저장된 각각의 태그 ID값을 해쉬연산하여, 상기 제2 해쉬값 Q와 일치하는 해쉬값이 나오는 ID를 찾아, 인증을 수행한다.
d) 4단계 : 리더는 데이터베이스에서 연산한 제2 해쉬값 을 태그에게 보내고, 태그는 자신이 갖고 있는 ID와 비밀키 K와 제1 랜덤수 를 이용하여 상기 제2 해쉬값을 검증함으로써, 데이터베이스를 인증한다.
[인증 프로토콜 분석]
1.안전성
본 발명에서 제안된 상호 인증 프로토콜의 안전성을 다음과 같이 분석하였고 분석결과를 정리하여 표 1에 나타낸다.
[표 1] 안전성 비교 (○: 안전, ×: 불안전)
1) 도청
본 발명은 리더와 태그 사이에서, 상호 인증을 위해, 비밀키 K와 태그의 ID를 해쉬함수로 연산한 해쉬값을 전송하며, 상기 해쉬 함수의 일방향성으로 인해, 전송되는 정보로부터 태그의 나 비밀키 를 계산할 수 없으므로, 도청으로부터 안전하다.
2)
스푸핑
(
Spoofing
) 공격
공격자가 리더로 가장하여 태그를 속이기 위해서는 태그와 데이터베이스가 공유하고 있는 비밀키 K 및 태그의 ID를 해쉬함수로 연산한 해쉬값 을 계산해야 하지만, 공격자가 상기 태그의 나 비밀키 를 알수 없으므로, 리더를 가장한 공격은 불가능하다.
또한, 공격자가 태그로 위장하고자 하는 경우에도, 태그와 데이터베이스가 공유하고 있는 비밀키 K 및 태그의 ID로부터 해쉬연산에 의해 계산되는 를 전송해야 하지만, 이 역시 태그의 나 비밀키 를 알수 없으므로, 올바른 Q값을 계산할 수 없어 태그를 가장한 공격이 불가능하다.
3) 위치 추적
본 발명에 의한 프로토콜은, 리더가 태그를 인식하여 인증을 수행하여야 하는 매 세션마다 데이터베이스와 태그에 저장된 비밀키 값이 갱신되므로, 매 세션마다 리더와 태그간에 전송되는 정보, 즉, 나 의 값이 랜덤하게 변경되며, 이전 세션과 동일한 값을 전송하지 않는다. 따라서, 공격자는 매 세션마다 나오는 정보로 태그를 식별하여 위치를 추적할 수 없어, 태그의 위치 프라이버시가 보장된다. 즉, 보안 요건중에서 비구별성(indistinguishability)을 만족한다.
그러나 본 발명의 프로토콜을 비롯하여 대부분의 고정 를 가지는 인증방식은 안정성(forward security)을 만족하기가 쉽지 않다. 그 이유는, 이전의 모든 통신 메시지와 현재 시점에서 특정 태그의 와 비밀키 를 안다면, 이전의 위치를 추적할 수 있기 때문이다. 그러나 이것은 공격자의 많은 능력이 요구되므로 실현되기에는 현실적인 어려움이 많다.
4) 비동기(
Desynchronization
) 공격
악의적인 공격자가 메시지 블로킹으로 정상적인 인증 과정을 방해했을 경우, 태그와 데이터베이스의 공유 정보, 태그 ID 및 비밀키 K가 일치하지 않게 되는 비동기 상태에 빠질 수 있다. 즉, 어떤 세션에서 태그는 비밀키 값을 갱신했지만 리더로 가는 정보가 블로킹되어 데이터베이스의 해당 태그의 비밀키 K 값이 갱신되지 못하여 비동기 상태가 될 수 있다. 그러나 이 경우에도 본 발명에 따른 인증 프로토콜은, 리더를 통해 태그로부터 수신된 정보 및 관리하고 있는 모든 태그의 ID 값을 에 대입하여 해쉬연산을 수행함으로써, Q 값을 만족하는 태그의 를 찾을 수 있고, 더하여, 전송된 를 이용하여 비밀키 를 태그와 일치하도록 복구할 수 있다. 따라서 본 발명에 따른 인증 프로토콜 방법은, 비동기 공격에도 강하다.
5) 분산환경에서의 적용
분산환경하에서는 지역적으로 떨어진 여러 대의 데이터베이스를 가지고 있을 수 있다. 이러한 분산 환경하에서, 데이터베이스 A에서 특정 태그에 대한 인증을 수행한 후 데이터베이스 B로 상기 태그에 대한 다음 인증을 옮겨갔다고 가정한다. 이 경우, 중앙 서버를 두지 않는다면 두 데이터베이스 A,B가 가지고 있는 비밀키 값이 다를 수 있다. 그러나, 이 역시 위에서 언급한 비동기 공격과 동일한 상황이 되어, 태그의 를 가지고 있는 데이터베이스 B에서도 태그가 전송한 정보 를 이용하여, 모든 태그의 ID 값에 대하여 를 연산함으로써, Q를 만족하는 를 찾고, 비밀키 를 다시 복구하여 인증을 계속 수행할 수 있다.
2. 효율성
본 발명에 의한 인증 프로토콜 방법의 효율성을 분석하기 위해, 기존 인증 방법과 연산량을 비교하여 보았다. 즉, 아래의 표 2는 본 발명에서와 기존의 데이터베이스와 태그에서의 연산량을 비교하여 나타낸 것이다. 본 발명에 의한 인증 프로토콜 방법은 정상적으로 인증 과정이 완료되었을 경우, 즉, 적법한 태그 및 리더에 의해 인증 처리가 이루어진 경우, 데이터베이스와 태그에서 각각 3번(단, 비동기 상태에서는 데이터베이스에서번)의 해쉬 연산을 수행한다. 이것은 CRAP 프로토콜이 인증을 위해 번의 해쉬 연산을 필요로 하는 것에 비해 상당히 효율적이다. 또한, 본 발명에 따를 경우, 태그는 을 저장하기 위한 비트의 저장 공간을 필요로 한다. 반면에, 데이터베이스가 개의 태그를 관리한다고 가정했을 때 데이터베이스는 의 저장 공간을 필요로 한다. 그러므로 본 발명에서 제안된 인증 프로토콜 방법은, 분산환경하에서 데이터베이스와 태그가 적은 연산으로 인증을 처리할 있어 제한된 메모리 공간을 지닌 RFID 시스템에 적합하고 매우 실용적이다.
[표 2]
이상에서 설명한 바와 같이, 본 발명에 의한 인증 프로토콜 방법은, 분산환경에 적합하고, RFID 시스템의 보안 요구 사항을 만족할 수 있는 효율적이고 실용적인 상호 인증 프로토콜이다. 본 발명에 따른 인증 프로토콜 방법은, 태그 소유자의 위치 프라이버시가 보장되고, 스푸핑 공격 및 비동기 공격에도 강인한 특성을 지니고 있다. 특히, 데이터베이스가 분산된 환경에서 고정 를 사용하는 것이 효율적이나 이것 자체가 데이터베이스에서 태그 검색을 위해 많은 연산이 필요했던 기존 방식의 단점을 크게 개선하여, 데이터베이스 및 태그에서 단 3번의 해쉬 연산으로 인증 처리가 가능하게 되었다.
이상의 본 발명은 상기에 기술된 실시 예들에 의해 한정되지 않고, 당업자들에 의해 다양한 변형 및 변경을 가져올 수 있으며, 이는 첨부된 특허청구범위에서 정의되는 본 발명의 취지와 범위에 포함되는 것으로 보아야 할 것이다.
도 1은 종래 기술에 따른 CRAP 방식을 나타낸 시스템 구성도
도 2는 종래 기술에 따른 OHLCAP 방식을 나타낸 시스템 구성도
도 3은 본 발명의 바람직한 실시 예에 의한 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법을 나타낸 도면
Claims (9)
- b) 상기 태그에서 제2 랜덤수 를 생성하고, P를 태그의 비밀키 K로 설정하고, 자신의 ID와 비밀키 K와 제1 랜덤수 와 제2 랜덤수 를 해쉬함수로 연산하여 제1 해쉬값 Q를 산출하고, 상기 P와 제1 해쉬값 Q와 제2 랜덤수 를 인증 정보로서 리더로 전송하고, 자신의 ID와 비밀키 K와 제2 랜덤수 를 해쉬연산하여 비밀키 K를 갱신하는 단계와;d) 상기 데이터베이스에서 상기 수신된 P와 일치하는 비밀키 를 검색하여 태그의 를 찾아 인증을 수행하고, 상기 태그의 ID와 수신된 P와 제2 랜덤수 를 해쉬연산하여 자신이 관리하는 태그의 비밀키 를 갱신한 후, 상기 태그의 ID와 갱신된 비밀키 K와 제1 랜덤수 를 해쉬함수로 연산한 제2 해쉬값 을 상기 리더를 통해 상기 태그로 전송하는 단계; 및
- 제 1 항 또는 제 6 항에 있어서,상기 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법은,해쉬 함수의 일방향성으로 인해 공격자가 태그의 ID나 비밀키 K를 계산할 수 없고, 리더에서 태그로 전송하는 제2 해쉬값을 산출할 수 없으므로, 공격자가 리더로 가장한 스푸핑(Spoofing) 공격을 방지하는 것을 특징으로 하는 분산환경에 적합한 저비용 RFID 인증 프로토콜 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070069200A KR100931213B1 (ko) | 2007-07-10 | 2007-07-10 | 분산환경에 적합한 저비용 rfid 인증 프로토콜 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070069200A KR100931213B1 (ko) | 2007-07-10 | 2007-07-10 | 분산환경에 적합한 저비용 rfid 인증 프로토콜 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090005834A KR20090005834A (ko) | 2009-01-14 |
KR100931213B1 true KR100931213B1 (ko) | 2009-12-10 |
Family
ID=40487362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070069200A KR100931213B1 (ko) | 2007-07-10 | 2007-07-10 | 분산환경에 적합한 저비용 rfid 인증 프로토콜 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100931213B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102509128A (zh) * | 2011-09-30 | 2012-06-20 | 江苏科技大学 | 一种射频识别系统安全认证方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101009739B1 (ko) * | 2010-03-24 | 2011-01-19 | 동국대학교 산학협력단 | 태그의 참여정보 보호를 위한 태그의 정보 저장 시스템 및 그의 방법 |
KR101145913B1 (ko) * | 2010-07-20 | 2012-05-16 | 충남대학교산학협력단 | 서버와 리더의 위장공격 탐지가 가능한 랜덤 아이디 기반 rfid 상호 인증 방법 |
CN107046467B (zh) * | 2017-05-22 | 2020-08-11 | 广东工业大学 | 一种基于读写器、标签和数据库的三方验证方法及系统 |
-
2007
- 2007-07-10 KR KR1020070069200A patent/KR100931213B1/ko not_active IP Right Cessation
Non-Patent Citations (1)
Title |
---|
최은영,이수미,임종인,이동훈, "분산시스템 환경에 적합한 효율적인 RFID 인증 시스템", 정보보호학회논문지, 제16권 제6호 pp.27-35, 2006.12 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102509128A (zh) * | 2011-09-30 | 2012-06-20 | 江苏科技大学 | 一种射频识别系统安全认证方法 |
Also Published As
Publication number | Publication date |
---|---|
KR20090005834A (ko) | 2009-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Yang et al. | Mutual authentication protocol for low-cost RFID | |
Tan et al. | Severless search and authentication protocols for RFID | |
CN106209768B (zh) | 一种可扩展的rfid双向认证方法 | |
Cai et al. | Attacks and improvements to an RIFD mutual authentication protocol and its extensions | |
US8793496B2 (en) | Systems, methods, and computer program products for secure optimistic mechanisms for constrained devices | |
Shao-hui et al. | Security analysis of RAPP an RFID authentication protocol based on permutation | |
US20070133807A1 (en) | Tag authentication apparatus and method for radio frequency identification system | |
CN110190965B (zh) | 一种基于哈希函数的rfid群组标签认证协议 | |
JP5355685B2 (ja) | 無線波読取装置による無線タグの認証方法 | |
Rizomiliotis et al. | Security analysis of the Song-Mitchell authentication protocol for low-cost RFID tags | |
KR100737181B1 (ko) | 안전한 알에프아이디 시스템을 위한 저부하 및 재동기특성을 가진 상호인증 장치 및 그 방법 | |
Vahedi et al. | Security analysis and complexity comparison of some recent lightweight RFID protocols | |
CN104579688B (zh) | 一种基于Hash函数可同步更新密钥的RFID双向认证方法 | |
KR100931213B1 (ko) | 분산환경에 적합한 저비용 rfid 인증 프로토콜 방법 | |
Zhuang et al. | Security analysis of a new ultra-lightweight RFID protocol and its improvement. | |
Chen et al. | Enhancement of the RFID security method with ownership transfer | |
Gódor et al. | Hash-based mutual authentication protocol for low-cost RFID systems | |
KR100680272B1 (ko) | Rfid인증 시스템 및 그 방법 | |
KR100834714B1 (ko) | Rfid 시스템의 식별태그 인증 방법 및 그 시스템 | |
Cao et al. | F-HB: An efficient forward private protocol | |
Huang et al. | An ultralightweight mutual authentication protocol for EPC C1G2 RFID tags | |
KR100710759B1 (ko) | Rfid 인증 시스템 및 방법 | |
Sadighian et al. | FLMAP: A fast lightweight mutual authentication protocol for RFID systems | |
Eghdamian et al. | A secure protocol for ultralightweight radio frequency identification (RFID) tags | |
Krishna et al. | UltraLightweight MAC protocol for RFID security using Permutation with double rotation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20121128 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20131120 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20141125 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |