키록

KeeLoq

KeeLoq는 Non-Linear Feedback Shift Register(NLFSR; 비선형 피드백 시프트 레지스터)를 사용하는 자체 하드웨어 전용 블록 암호입니다.단방향 명령어 전송 프로토콜은 Nanoq(Pty) Ltd의 Frederick Bruwer에 의해 설계되었으며, 암호 알고리즘은 Pretoria 대학의 Gideon Kuhn에 의해 개발되었으며, 실리콘 구현은 1980년대 중반 Nanoq Pty Ltd(남아공)의 Willem Smit에 의해 구현되었습니다.KeeLoq는 1995년에 마이크로칩 테크놀로지사에 1,000만 [1]달러에 매각되었다.NTQ105/106/115/125D/129D, HCS101/2XX/3XX/4XX/5XX 및 MCS31X2 등의 "코드 호핑" 인코더 및 디코더에 사용됩니다.KeeLoq는 크라이슬러, 대우, 피아트, GM, 혼다, 도요타, 볼보, 폭스바겐 그룹, 클리포드, 슈록 [2]재규어와 같은 많은 원격 키리스 엔트리 시스템에 사용되었습니다.

묘사

KeeLoq 암호화

KeeLoq "코드 호핑" 인코더는 0으로 채워진 32비트 블록을 KeeLoq 암호로 암호화하여 32비트 "호핑 코드"를 생성합니다.32비트 초기화 벡터는 암호화 전 및 복호화 후에 최하위 32비트에 선형적으로 부가(XORed)된다.

KeeLoq 암호는 64비트키를 받아들여 싱글비트 NLFSR을 528라운드로 실행하여 32비트 블록을 암호화합니다.NLFSR 피드백 함수는0x3A5C742E또는

KeeLoq는 암호화 중에는 NLFSR 상태의 비트1, 9, 20, 26 및 31을 입력으로 사용하고 복호화 중에는 비트0, 8, 19, 25 및 30을 사용합니다.이 출력은 NLFSR 상태의 2비트(암호화에서는 비트0과 16, 복호화에서는 비트31과 15) 및 키 비트(암호화에서는 키 상태의 비트0과 키 상태의 비트15)와 선형 결합되어 라운드마다 NLFSR 상태로 피드백됩니다.

버전

이 문서에서는 Classic KeyLoq 프로토콜에 대해 설명하지만 새로운 버전이 개발되었습니다.Dual KeeLoq 시스템은 Classic KeeLoq 시스템을 강화하는 타이머 기반 알고리즘입니다.이 새로운 버전의 목적은 지속적으로 증가하는 타이머 구동 카운터를 갖는 것입니다.이는 수신된 이벤트에 따라 카운터가 증가하는 Classic KeeLoq와는 반대입니다.이것은 Samy Kamkar의 작업에 RollJam으로 알려진 포획 및 재생 공격으로부터 보호합니다.

공격

리플레이 공격

단순화를 위해 개별 "코드 호핑" 구현에서는 일반적으로 암호 난스나 타임스탬프사용하지 않습니다.따라서 프로토콜은 기본적으로 재생 공격에 취약해집니다.예를 들어, 코드를 가로채는 동안 채널을 방해함으로써 도둑은 나중에 [4]사용할 수 있는 코드를 얻을 수 있다.이런 종류의 "코드 잡기"[5]는 이론적으로는 흥미롭지만, 자동차 [6]절도범들에게 널리 사용되는 것 같지는 않다.

이 기술을 활용하기 위해 Samy Kamkar가 설계하고 제작한 저렴한 프로토타입 장치에 대한 자세한 설명은 2015년에 나왔습니다.지갑 크기의 장치는 잠긴 차량 위나 근처에 숨겨져 나중에 차량을 잠금 해제하는 데 사용할 단일 키리스 엔트리 코드를 캡처할 수 있습니다.이 장치는 방해 신호를 전송하여 차량 소유자의 리모컨으로부터 롤링 코드 신호를 수신하는 것을 차단하는 동시에 차량 잠금을 해제하는 데 필요한 두 번의 시도로부터 이러한 신호를 기록합니다.기록된 첫 번째 코드는 소유자가 두 번째 시도를 한 경우에만 차량으로 전달되며, 기록된 두 번째 코드는 나중에 사용할 [7]수 있도록 유지됩니다.DEF CON [8]23에 대한 데모가 발표되었습니다.

암호 분석

KeeLoq 복호화

KeeLoq는 Andrey Bogdanov에 의해 슬라이딩 기술과 효율적인 선형 근사치를 사용하여 최초로 암호 분석되었습니다.니콜라 쿠르투아는 슬라이딩과 대수적 방법을 사용하여 킬록을 공격했다.Bogdanov 및 Courtois에 의한 공격은 지금까지 알려진 암호의 모든 코드 호핑 구현에서 감소된 키 공간의 단순한 브루트 포스에 훨씬 더 취약한 것으로 보이는 실제 구현에는 위협이 되지 않습니다.일부 KeeLoq "코드 그래버"는 FPGA 기반 장치를 사용하여 KeeLoq 기반 키를 약 2주 이내에 무차별적으로 파괴합니다.실제 [citation needed]구현에서는 키의 길이가 줄어들기 때문입니다.

2007년 벨기에 루벤 대학COSIC 그룹(K.U.Leuven) 연구진은 이스라엘 동료들과 협력하여 이 [9]시스템에 대한 새로운 공격을 발견했다.연구진은 2006년 유출된 알고리즘의 세부사항을 이용해 취약점을 분석하기 시작했다.특정 모델의 차량에 공통되는 키의 부분을 판별한 후, 키와 차량간의 통신 스니프만으로 키의 고유 부분을 해독할 수 있다.

마이크로칩은 1996년에[10] 60비트 시드를 사용하는 KeeLoq IC 버전을 도입했습니다.60비트 시드를 사용하는 경우 공격자는 시스템이 [11]고장나기 전에 전용 병렬 브루트 포스 공격 머신 상에서 약 1011일의 처리를 필요로 합니다.

사이드 채널 공격

2008년 3월 독일 Ruhr University Bochum의 임베디드 보안 체어(Embedded Security) 연구진은 KeeLoq RFID [12][13]기술을 기반으로 한 원격 키리스 엔트리 시스템의 완전한 분해를 발표했습니다.그들의 공격은 KeeLoq 암호에 의존하는 모든 알려진 자동차와 빌딩 접근통제 시스템에 적용된다.

보춤 팀의 공격은 수신기와 리모컨에 내장된 비밀 암호키를 되찾을 수 있게 해준다.암호화 중 장치의 전력 소비량을 측정하는 데 기초합니다.전력 트레이스에 사이드 채널 분석 방법이라고 불리는 것을 적용하면, 연구자들은 리시버로부터 제조원 키를 추출할 수 있습니다.이것은 특정 제조원의 리모트 컨트롤에 유효한 키를 생성하기 위한 마스터 키라고 할 수 있습니다.키를 회복하기 위해 PC 상에서 약 65536개의 평문과 암호의 쌍을 선택하고 며칠을 계산해야 하는 앞에서 설명한 암호 해독 공격과는 달리 사이드 채널 공격은 키리스 엔트리 시스템(자동차, 차고, 빌드)에 널리 사용되는 이른바 KeeLoq 코드 호핑모드 동작(롤링 코드)에도 적용할 수 있습니다.링 등).

사이드 채널 분석의 가장 파괴적인 실제적인 결과는 공격자가 이전에 시스템의 마스터 키를 학습한 후 최대 100m(330ft) 거리에서 이 인코더로부터의 메시지를 2개만 가로채는 것으로 정규 인코더를 복제할 수 있는 공격입니다.또 다른 공격에서는 수신기의 내부 카운터(차고문, 차문 등)를 리셋할 수 있어 합법적인 사용자가 [14]문을 열 수 없다.

레퍼런스

  1. ^ 미국 특허 5517187, 브루어, 프레드릭 J.; Smit, Willem & Khun, Gideon J., "마이크로칩과 리모트 컨트롤 디바이스(Microchip Technology Inc.에 할당)"
  2. ^ 크라이슬러가 실제로 KeeLoq를 사용하고 있다는 증거는 (이 동영상에서) 확인할 수 있습니다.
  3. ^ MicroChip - MCS3142 - 보안 - KeeLoq 인코더 디바이스
  4. ^ 소프트웨어 정의 무선을 사용한 RF 리모트보안 분석
  5. ^ http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2075&param=en001022#P108_5361는 "나중에 회신할 수 있도록 이러한 전송을 기록하는 회선을 구축하는 것은 간단한 일이다.이러한 시스템을 코드 또는 키 그래버라고 합니다.
  6. ^ "FACT CHECK: Are Car Thieves Using 'Code Grabbers' to Steal Automobiles?".
  7. ^ Thompson, Cadie (2015-08-06). "A hacker made a $30 gadget that can unlock many cars that have keyless entry". Tech Insider. Retrieved 2015-08-11.
  8. ^ Kamkar, Samy (2015-08-07). "Drive It Like You Hacked It: New Attacks and Tools to Wirelessly Steal Cars". DEF CON 23. Retrieved 2015-08-11.
  9. ^ 차를 훔치는 방법 - KeeLoq에 대한 실용적인 공격
  10. ^ (나중에 Web 아카이브 백업에 게재 예정):1996년 12월 11일에 마이크로칩 프레스 릴리즈가 발표되었습니다.HCS410 KEELOQ 코드호핑 트랜스폰더 및 인코더..."
  11. ^ Martin Novotny; Timo Kasper. "Cryptanalysis of KeeLoq with COPACOBANA" (PDF). SHARCS 2009 Conference: 159–164. {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)
  12. ^ KeeLoq 접근통제 시스템의 완전한 붕괴
  13. ^ Thomas Eisenbarth; Timo Kasper; Amir Moradi; Christof Paar; Mahmoud Salmasizadeh; Mohammad T. Manzuri Shalmani (2008-02-29). "Physical Cryptanalysis of KeeLoq Code Hopping Applications" (PDF). Ruhr University of Bochum, Germany. Retrieved 2009-03-22. {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)
  14. ^ Kasper, Timo (November 2012). Security Analysis of Pervasive Wireless Devices—Physical and Protocol Attacks in Practice (PDF) (Ph.D.). Ruhr University Bochum, Germany. Retrieved 2015-08-11.

외부 링크