RFID Security 2005.06.27 이동훈고려대학교 donghlee@korea.ac.kr
RFID Radio Frequency Identification : 근거리무선기술을이용하여원격으로감지및인식을통하여 정보교환을가능하게하는기술 예 : 유무선통신망과제품의태그정보를통하여사람 사물 서비스등의 ID 식별 제품의생산 유통 관리 소비등의전과정에대한관리 추적등을행할수있음 reader RFID Tag 2/46
RFID RFID 시스템구성 RFID Tag : 인식대상 ( 정보제공 ) RFID Tag reader : Tag( 태그 ) 정보판독및해독기능 RFID Back end Database : reader 로부터얻은태그정보를해독하고 이를실물정보로매핑 3/46
RFID RFID Tag 동작원리 RF Transmission Transmission Via Network Tag 1 Reader 2 Enterprise Application 3 1. Tag : 전자상품코드 (electronic product code) 와같은데이터를메모리에저장 2. Reader( 판독기 ) : RF안테나를통해 tag에데이터를기록하고읽어들임 3. 기업 application : 실질적인기업업무에활용하기위해 tag 데이터의처리를담당 4/46
RFID RFID 분류및특성 분류기준 전원 공급 주파수 대역 구분 능동형태그 (Active Tag) 수동형태그 (Passive Tag) 저주파 시스템 고주파 시스템 특징 내장배터리사용, 읽기 / 쓰기, 다양한메모리사이즈, 최장 10 년사용 ( 온도 / 전원에영향 ), 30~100m 데이터교환범위 외부전원공급없음, 구조간단, 저가, 반영구적수명, 짧은가독거 리, 높은출력판독기필요, Read-only tag(32~128 비트데이터 ) 30KHz~500KHz 저주파사용, 짧은가독거리, 저시스템비용, 보 안 / 자산관리 / 동물식별등 850MHz~950MHz 또는 2.4GHz~2.5GHz 고주파사용, 30m 이상 가독거리, 고시스템비용, 고속읽기, 철도차량추적 / 컨테이너추 적 / 자동통행료징수시스템등 5/46
RFID 주파수대역별특성 주파수 저주파 125,134kHz 고주파 13.56MHz 433.92MHz 극초단파 860~960MHz 마이크로파 2.45GHz 인식거리 < 60cm ~ 60cm ~ 50 ~ 100m ~3.5m 이내, ~10m 이내 ~ 1m 이내 일반특성 비교적고가환경에의한성능저하가거의없음 저주파보다저가짧은인식거리와다중태그인식이필요한응용분야에적합 긴인식거리실시간추적및컨테이너내부습도, 충격등환경센싱 IC 기술발달로가장저가로생산가능다중태그인식거리와성능이가장뛰어남 900 대역태그와유사한특성환경에대한영향을가장많이받음 동작방식 수동형 수동형 능동형 능동 / 수동형 능동 / 수동형 적용분야 공정자동화출입통제 / 보안동물관리 컨테이너관리실시간위치추적 공급망관리자동통행료징수 위조방지 인식속도 저속 고속 환경영향 강인 민감 태그크기 대형 소형 6/46
RFID 태그의기능상의분류 (EPC global) 분류 메모리 방식 특징 Class 0 Anti-shoplift-Tag 제조사입력 / 읽기전용 수동형 물품감시 (kill code:24bit) Class 1 EPC1 사용자입력 / 읽기전용 수동형 사물인식 Class 2 EPC2 읽기쓰기 수동형 데이터로깅 (logging) Class 3 Sensor Tags 읽기쓰기 반수동 / 능동형 주위의감지장치 Class 4 Smart Dust 읽기쓰기 능동형 Ad Hoc 네트워킹 Class 5 Reader 형 Tag 읽기쓰기 능동형 리더기능갖는태그 7/46
RFID tag RFID Tag Reader ID serial number 8/46
RFID tag - Privacy Information leakage Problem Suit model #4456 (expensive brand) 200 Euros in wallet Serial numbers: 597387,389473 Reader 30 items of magazines GUCCI Model #6634 9/46
RFID tag - Privacy 위치정보추적 Bank Reader Hotel Department store Bar 10/46
Security threats Spoofing 태그가부착된상품의정보위 / 변조 비품이정품의정보위 / 변조 GUCCI GUCCI Reader RFID 해킹툴출현 - 태그정보를바꿀수있는 RFDump 툴출현 : 인터넷사이트운영되고있으며프로그램이공개된상태 Inews24 에서발표 11/46
Solution Physical approach Kill command Blocker method Authentication 12/46
Solution physical approach1 Kill Command Method 1: Reader Send kill command to tage i.e, A killed tag never be re-activated Problem: We will require that Tags still be active While in the consumer s possession 13/46
Solution physical approach1 Kill command : inadequacy 14/46
Solution physical approach2 Blocker Tag 0 1? 00 01 10 11 000 001 010 011 100 101 110 111 15/46
Solution - Authentication Authentication Query Challenge Response?? Reader Tag information?? 16/46
Authentication Hash-Based Approach Hash Lock approach - S.E. Sarma et al [2003] Hash approach - D. Hernici et al [2004], Su Mi Lee et al [2005] Hash chain approach M. Ohkubo et al [2004] Re-encryption Approach Banknotes Jules et al [2003] Re-encryption Satio et al [2004] 17/46
Hash-Based Approach (1) Assume Tags : passive (Low cost) Tags memory : read-only Tag : Reader 인증후 Tag 의정보제공 Hash-Lock approach S.E. Sarma et al [2003] Reader <-> Back end Database : Secure Attack : physical proximity Model Hash function Secure Insecure 18/46 DB Tag Reader
Hash-Based Approach (1) Model Hash-Lock approach S.E. Sarma et al [2003] Secure Insecure 4 metaid 1 Query 3 metaid 2 metaid hash( key) 5(key,ID) 6 key* 2 DB ID key metaid Reader 8 ID Secure Tag 7 metaid? hash( key*) ID Key metaid : : Prevent UnAuthorized reader from reading tag contents Privacy 19/46
Hash-Based Approach (1) Improved Model Hash-Lock approach S.E. Sarma et al [2003] Secure Insecure 1 Query Hash function Pseudo random functions DB Reader Tag 2 R, h( ID R ) k 20/46
Hash-Based Approach (1) Improved Model Secure Hash-Lock approach S.E. Sarma et al [2003] Insecure Secure Hash function 1 Query 4 Get all IDs 3 R, h ( I D k R ) DB 5 ID 1,ID 2,,ID n Reader 6 ID k Tag 2 R, h( ID R ) k 2 ID ID_1 ID_2 ID ID _1 ID _2 R 이용하여해쉬값을만족하는 ID 존재확인 21/46
Hash-Based Approach (1) Improved Model Secure Hash-Lock approach S.E. Sarma et al [2003] Insecure Secure Hash function? PRF F={f N } R, h ( I D k R ) DB Reader Tag ( R, I D f ( R ) ) k K Shared key K Practical?? 22/46
Hash-Based Approach (2) Model Assume Tag : passive (Low cost) ( 해쉬연산 3 회수행 ) Tag memory : read-write Tag : Reader 인증후 tag 의정보제공 Hash-approach D. Henrici et al [2004] 장점 : 데이터와 Location privacy 보호, 메시지유실시복구가능 23/46
Hash-Based Approach (2) Model Hash-approach D. Henrici et al [2004] 구성요소 Secure Insecure DATA DB_ID Tag의실질적인데이타 DB 식별자 ID 인증을위한랜덤값 HID h(id): 현재 ID TID 현재실행번호 LST 마지막으로성공한실행번호 TID TID-LST ( 정상 =1) DB Reader Tag R ID 를업데이트하기위한랜덤값 AE 이전데이터와연결시키는포인터 HID ID TID LST AE DATA h(14) 14 3 3 N/A reference DB-Id ID TID LST DB_1 14 3 3 24/46
Hash-Based Approach (2) Model Hash-approach D. Henrici et al [2004] 구성요소 Secure Insecure DATA DB_ID Tag의실질적인데이타 DB 식별자 1 Query ID 인증을위한랜덤값 3 h( ID), h( TID ID), TID 2 h( ID ), D B _ ID, h ( T ID ID ), T ID HID h(id): 현재 ID TID 현재실행번호 LST 마지막으로성공한실행번호 TID TID-LST ( 정상 =1) DB Reader Tag R ID 를업데이트하기위한랜덤값 AE 이전데이터와연결시키는포인터 HID ID TID LST AE DATA h(14) 14 3 3 N/A reference DB_ID ID TID LST DB_1 14 43 3 25/46
Hash-Based Approach (2) Model Hash-approach D. Henrici et al [2004] 구성요소 Secure Insecure DATA DB_ID Tag의실질적인데이타 DB 식별자 1 Query ID 인증을위한랜덤값 3 h( ID), h( TID ID), TID 2 h( ID ), D B _ ID, h( TID ID ), TID HID h(id): 현재 ID TID 현재실행번호 LST 마지막으로성공한실행번호 DB 4 R, h( R TID ID) 5 R, h ( R T ID ID ) Reader Tag TID TID-LST ( 정상 =1) R ID 를업데이트하기위한랜덤값 AE 이전데이터와연결시키는포인터 HID ID TID LST AE DATA h(14) 14 4 3 h(3) reference DB_ID ID TID LST DB_1 14 4 3 h(3) 3 4 4 h(14) reference 26/46 New _ ID R ID 13 14
Hash-Based Approach (3) Model Assume Tag : passive (Low cost) ( 해쉬연산 2 회수행 ) Tag memory : read-write Tag : Reader 인증후 tag 의정보제공 Hash-approach Su Mi Lee et al [2005] 장점 : 데이터와 Location privacy 보호, 메시지유실시복구가능. 27/46
Hash-Based Approach (3) Model Hash-approach Su Mi Lee et al [2005] Secure Insecure 1 Query, r 3 HID h( ID), r, hl ( ID r) 2 HID h( ID), hl ( ID r) 4 h ( ) R ID r 5 h R ( ID r) DB Reader Tag HID ID TD DATA h(id) ID N/A.. HID h(id) ID ID 28/46
Hash-Based Approach (3) Model Hash-approach Su Mi Lee et al [2005] Secure Insecure 1 Query, r 3 HID h( ID), r, hl ( ID r) 2 HID h( ID), hl ( ID r) 4 h R ( ID r) 5 h R ( ID r) DB Reader Tag HID ID TD DATA h(id) ID h(id ).. HID h(id) h(id ) ID ID ID ID ' ID r, HID h( ID '), TD h( ID) : Update Phase Update Phase : ID ' ID r 29/46
Hash-Based Approach (4) Model Assume Tag : passive (Low cost) Tag memory : read-write Tag : 두해쉬체인이용하여프라이버시보호 Tag 내부에서세션마다값변경에사용 전송시프라이버시위해해쉬사용 장점 : 데이터와 Location privacy 보호 Hash-chain approach M. Ohkubo et al [2004] EPC 환경 (unique ID 로개체확인 ) 에적용용이. 30/46
Hash-Based Approach (4) Model Hash-chain approach M. Ohkubo et al [2004] Secure Insecure 4 a t, i 1 Query a G( S ) 3 t, i t, i S t,1 5 DB a G( h ( S )) t, i i-1 t,1 6 ID t Reader Tag 2 S h( S ) t, i 1 t, i a G( S ) t, i t, i ID Key ID t S t,1 31/46
Authentication Hash-Lock Approach Re-encryption Approach Banknotes Jules et al [2003] Re-encryption Satio et al [2004] 32/46
Re-encryption encryption Approach (1) Goal A. Juels et al [2003] : Merchant 입장에서 Banknotes 를신뢰하고자함. 즉, tag 정보를이용하여 banknote 인증, 사용자 privacy 제공 Model Law-enforcement Central Bank Merchant (Reader) :device performing re-encryption Consumer : Banknotes (tag) 33/46
Re-encryption encryption Approach (1) A. Juels et al [2003] Law enforcement : Banknotes tracing work, Encryption key 생성 공개키 : banknotes information 확인에사용 Central Bank (CB) : Issue Banknotes Merchant (Reader) : Banknotes authentication -> Re- encryption (Privacy) 34/46
Re-encryption encryption Approach (1) Banknote A. Juels et al [2003] 권한 (D key) : write, read / write Any reader RF Cell r : ciphertext C Enc( PK, [ S], r) L Cell : encryption factor Keyed write under D h( ) Keyed read/write under D r Optical Serial number S Signature Sig( SKB, [ S den]) 35/46 D key, S,
Re-encryption encryption Approach (1) A. Juels et al [2003] Banknotes re-encryption (Merchant) Law-enforcement 공개키 Re-encryption factor RF Cell r : ciphertext C Enc( PK, [ S], r) L Cell : encryption factor Keyed write under D h( ) Keyed read/write under D r 36/46 Optical Serial number S Signature Sig( SKB, [ S den])? C Enc( PK,[ S ], r) D key, S, (CB의서명 ) If valid, C->C L
Re-encryption encryption Approach (1) A. Juels et al [2003] Banknotes re-encryption (Merchant) C ' Enc( PK,[ S ], r ') L r ' Privacy RF Cell r : ciphertext C Enc( PK, [ S], r) L Cell : encryption factor Keyed write under D h( ) Keyed read/write under D r Optical Serial number S Signature Sig( SKB, [ S den]) 37/46
Re-encryption encryption Approach (1) Re-encryption : attack Secure Insecure 1 Query 3 C 2 C 4 C' C ' C '' DB Reader Tag 38/39
Re-encryption encryption Approach (2) Model Assume Tag : passive (Low cost) Tag memory : read-write Tag : Tag 내부에 ID 에대한암호문 C 저장 Reader : Tag 와통신할때마다암호문재암호화전송 Back-end database Reader 로부터얻은암호문 C 를통해 Tag 와관련된정보얻음 받은암호문에대한재암호화수행하여 reader 에게전송 재암호화로프라이버시보호 Re- encryption 환경에서의공격방어 Saito et al [2004] 39/46
Re-encryption encryption Approach (2) Re-encryption method ElGamal encryption 기반 시스템공개키 : m 메시지의암호문 : 랜덤값 r ( k, k ) 사용 복호화 : 비밀키 사용 Saito et al [2004] C m y g y g k 0 k 0 k 1 k 1 [ (, ) ; (, ) ] [ (, ) ; (, ) ] 0 0 0 x 1 1 1 y 0 0 1 1 x 0 1 x 0 0 m / ( m y k / g k x ) m k1 k1 x m / ( y / g ) 1 g x if m 1, m m e lse, 1 0 재암호화 : 랜덤값 r ' ( k, k ) ' ' 0 1 사용 ' ' ' ' 0 0 1 1 C ' [(, ) ; (, )] [(, ) ; (, )] ' ' ' ' k k k k 0 0 1 1 0 1 0 1 1 1 40/46
Re-encryption encryption Approach (2) Model Saito et al [2004] 1 Query 4 DB 3 5 C C' Reader C my g y g k0 k0 k1 k1 [(, ) ; (, )] [(, ) ; (, )] 0 0 1 1 ' ' ' ' 0 0 1 1 C ' [(, ) ; (, )], r ' ( k, k ) k k k k 1 1 0 1 0 1 1 1 0 1 ' ' ' ' 0 1 0 0 1 0 1 1 1 1 k k k k k k k k k k [( my y, g g ) ; ( y, g )] Tag 자신이외부에서입력된재암호화된암호문 check 로공격자의공격을막을수있음 2 C 6 C' C [( 0, 0) ; ( 1, 1)] Tag if ', ' 1 or 1 then 1 1 abort else m / ' ' x 1 1 1 if m 1 1 then C C ' else abort 41/39
Re-encryption encryption Approach (2) Saito et al [2004] Model : Attack (message 변경 ) Insecure 1 Query 3 C 2 C 4 DB C ' 생성 5 C' Reader C' C '' C [( 0, 0) ; ( 1, 1)] Tag if '', '' 1 or 1 then 1 1 abort else C '' [( '', '') ; ( '', '')] 0 0 1 1 k1 k1 [( m, m ) ; ( y, g )] A A m '' x 1 1 1 if m 1 / '' 1 then C C '' else abort 42/46
Re-encryption encryption Approach (2) 4 Improved Model DB r (,, ) X 1 2 n 5 3 C, X 1 1 2 2 [(, ),, ( n n, )] 1 1 1 1 h( S, i, ) Secret value Current session number Reader Insecure 1 Query 2 C If X h( S, i, ) Saito et al [2004] C [(, ) ; (, )] Tag 0 0 1 1 0 0 1 1 C ' [(, ) ; (, )], ( k 1,..., n) C i 6 k k k 1 k 1 [(, ) ; (, )] C else abort ' i 1, X S, i 0 1 0 1 1 1 1 1 43/46
Re-encryption encryption Approach (2) Model : Attack (man-in-the middle attack) Saito et al [2004] 3 C 1 Query 2 C C [(, ) ; (, )] 0 0 1 1 S, i DB 5, X Reader 6, X Tag 4 생성 C ' [(, ) ; (, )] k k k 1 k 1 0 1 0 1 1 1 1 1 C k k k 1 k 1 ' [(, ) ; (, )] 0 1 0 1 1 1 1 1 C ', C '',... Trace :privacy 44/46
Future Works 현재까지의제안된기법 : 비효율적인기법바코드대체역할수행에적합한저가형인증방법연구 Type 3, 4, 5 를위한인증방법연구 Re-encryption 기법에대한연구 45/46
감사합니다 46/46