전력 분석

Power analysis
차동 전력 분석 다이어그램입니다.
전력 분석을 사용하여 RSA 키비트를 감시합니다.왼쪽 피크는 스쿼링 전용 스텝 중의 전력 소비량을 나타내고 오른쪽(넓은) 피크는 곱셈 스텝을 나타내 지수 비트0과 1을 구별할 수 있습니다.

전력 분석은 공격자가 암호화 하드웨어 디바이스의 소비 전력을 조사하는 사이드 채널 공격의 한 형태입니다.이러한 공격은 디바이스의 기본적인 물리적 특성에 의존합니다.반도체 디바이스는 물리법칙에 의해 제어됩니다.물리법칙은 디바이스 내의 전압변화에 따라 매우 작은 전하(전류)의 이동이 필요하다는 것을 나타냅니다.이러한 전류를 측정함으로써 조작되는 데이터에 대한 소량의 정보를 학습할 수 있다.

단순 전력 분석(SPA)에는 전력 트레이스 또는 시간 경과에 따른 전기 활동 그래프를 시각적으로 해석하는 작업이 포함됩니다.DPA(Differential Power Analysis)는 전력 분석의 보다 고도의 형태로, 공격자는 복수의 암호화 조작으로 수집된 데이터의 통계 분석을 통해 암호화 계산 내의 중간 값을 계산할 수 있습니다.SPA와 DPA는 1998년 Paul Kocher, Joshua JaffeBenjamin [1]Jun에 의해 오픈 암호 커뮤니티에 도입되었습니다.

배경

암호학에서 사이드 채널 공격은 스마트 카드, 변조 방지 "블랙 박스" 또는 집적회로 등의 보안 장치로부터 비밀 데이터를 추출하기 위해 사용됩니다.사이드 채널 분석에서는 일반적으로 암호 키 및 기타 비밀 정보를 디바이스에서 비침습적으로 추출하려고 합니다.이것의 간단한 예는 독일 탱크 문제입니다. 탱크의 일련 번호는 탱크의 생산 데이터에 대한 자세한 내용을 제공합니다.물리적 보안에서 비침습적 공격은 공격이 성공하면 공격자가 존재한 흔적이 남지 않는 잠금 피킹과 유사합니다.

심플한 전력 분석

Simple Power Analysis(SPA; 단순 전력 분석)는 시간 경과에 따른 디바이스에서 사용되는 전류의 그래프를 시각적으로 검사하는 사이드 채널 공격입니다.소비 전력의 변화는, 디바이스가 다른 조작을 실행함에 따라서 발생합니다.예를 들어 마이크로프로세서가 실행하는 명령마다 소비전력 프로파일이 다릅니다.

따라서 비밀값에 의존하는 코드플로우는 전력소비량 모니터링을 통해 코드플로우가 누출됩니다(따라서 비밀값도 누출됩니다).간단한 예로서 다음과 같이 패스워드 체크를 검토합니다.

부울 check_password(비밀번호)(컨스턴트  입력[]){   컨스턴트  correct_password(비밀번호)[] = "param2";     한다면 (스트렌(입력) != 스트렌(correct_password(비밀번호))) 돌아가다 거짓의;     위해서 (인트 i = 0; i < > 스트렌(correct_password(비밀번호)); i++){        한다면 (입력[i] != correct_password(비밀번호)[i]) {            돌아가다 거짓의;        }    }     돌아가다 진실의; } 

이 패스워드 체크에는 실행시간이 일정하지 않기 때문에 Timing 공격이 포함될 수 있습니다.함수는 이용 가능한 결과를 사용자에게 출력하지 않을 수 있지만, 예를 들어 응답이 반환되기 전에 보정 지연이 있을 수 있습니다.소비전력을 관찰하면 실행되는 루프의 수가 명확해집니다.

마찬가지로 RSA 구현에서 스쿼링 및 곱셈 작업을 구분할 수 있으므로 상대방이 비밀 키를 계산할 수 있습니다.전력 소비량의 변동 폭이 작더라도 표준 디지털 오실로스코프는 데이터에 의한 변동을 쉽게 나타낼 수 있습니다.주파수 필터 및 평균화 기능(예: 오실로스코프에 내장된 기능)은 고주파 성분을 필터링하는 데 자주 사용됩니다.

차동 전력 분석

DPA(Differential Power Analysis)는 암호 시스템의 전력 소비량 측정을 통계적으로 분석하는 사이드 채널 공격입니다.공격은 비밀키를 사용하여 작업을 수행하는 동안 마이크로프로세서 또는 기타 하드웨어의 다양한 전력 소비량에 편중됩니다.DPA 공격은 신호 처리오류 수정 특성을 가지고 있어 노이즈가 너무 많은 측정에서 비밀을 추출하여 간단한 전력 분석으로 분석할 수 없습니다.DPA를 사용하면 취약한 스마트 카드나 다른 장치가 수행하는 여러 암호화 조작의 전력 소비량 측정을 분석하여 개인 키를 얻을 수 있습니다.

고차 미분 전력 분석

High-Order Differential Power Analysis(HO-DPA; 상위 차분 전력 분석)는 DPA 공격의 고급 형태입니다.HO-DPA를 사용하면 여러 데이터 소스와 다른 시간 오프셋을 분석에 통합할 수 있습니다.HO-DPA는 분석이 복잡하고 [2]SPA 또는 DPA를 사용하면 대부분의 취약한 디바이스를 쉽게 파손할 수 있기 때문에 SPA 및 DPA보다 널리 사용되지 않습니다.

전력 분석 및 알고리즘 보안

전력 분석을 통해 하드웨어의 '내부'를 확인할 수 있습니다.그렇지 않으면 '내부'를 확인할 수 있습니다.예를 들어 DES의 키 스케줄에는 28비트 키 레지스터를 회전시키는 작업이 포함됩니다.대부분의 구현에서는 최하위 비트가 1인지 여부를 확인합니다.이 경우 단말기는 레지스터를 오른쪽으로 이동하고 왼쪽 끝에 1을 추가합니다.비트가 0일 경우 레지스터는 1을 추가하지 않고 오른쪽으로 이동합니다.전력 분석을 통해 이러한 프로세스를 구별할 수 있으므로 상대방이 개인 키의 비트를 결정할 수 있습니다.

수학적으로 강하다고 생각되는 AES나 트리플 DES 의 알고리즘의 실장은 전력 분석 공격을 사용하여 문제없이 중단될 수 있습니다.그 결과 전력 분석 공격은 알고리즘 암호화와 구현 보안 요소를 결합합니다.

표준 및 실제 보안에 관한 사항

장치가 적의 물리적 소유가 될 수 있는 애플리케이션의 경우 전력 분석에 대한 보호는 일반적으로 주요 설계 요건입니다.보도에 따르면 전력 분석은 유료 [3]TV 시스템에 사용되는 조건부 액세스 모듈에 대해서도 사용되었다고 한다.

전력 분석 공격을 실행하는 데 필요한 장비는 널리 이용 가능합니다.예를 들어, 대부분의 디지털 스토리지 오실로스코프는 필요한 데이터 수집 기능을 제공하며, 데이터 분석은 일반적으로 기존 PC를 사용하여 수행됩니다.테스트랩용으로 설계된 시판 제품도 [4]이용할 수 있습니다.오픈 소스 Chip Whisperer 프로젝트는 전력 분석 [5]실험용 오픈 소스 하드웨어 및 소프트웨어의 첫 번째 완전한 툴 체인입니다.

단순하고 차동적인 전력 분석 공격 방지

전력 분석 공격은 일반적으로 상대의 감시는 수동적이기 때문에 디바이스에 의해 검출될 수 없습니다.또한 공격은 비침습적입니다.그 결과 물리적 인클로저, 감사 기능 및 공격 디텍터는 효과가 없습니다.대신 암호 시스템 엔지니어는 장치의 전력 변동이 공격자가 사용할 수 있는 정보를 노출시키지 않도록 해야 합니다.

간단한 전력 분석으로 조건부 분기의 실행 결과를 쉽게 구별할 수 있다.이는 조건부 분기의 실행 여부에 따라 장치가 다른 작업(다른 전력을 소비함)을 하기 때문이다.따라서 암호화 소프트웨어의 구현 내에서 조건부 브랜치에 영향을 미치는 비밀값이 없는지 주의해야 합니다.마이크로코드의 차이, 컴파일러에 의해 도입된 브랜치, 멀티플라이어의 소비전력 차이 등 다른 변동원에서도 SPA의 취약성이 발생합니다.

전력 소비량의 작은 편견이 악용 가능한 약점을 초래할 수 있기 때문에 차등 전력 분석은 예방하기가 더 어렵습니다.일부 대책 전략에는 암호 연산을 살아남는 수학적 관계에 의해 실제 값과 관련된 데이터에 대해 암호 연산이 발생하도록 알고리즘 수정이 포함됩니다.한 가지 방법은 파라미터를 블라인딩하여 값을 랜덤화하는 것입니다.DPA 공격의 효과를 줄이기 위한 다른 대책 전략에는 하드웨어 수정이 포함됩니다. 칩 내부 클럭 주파수를 변경하면 전기 신호가 동기화되지 않는 것으로 간주되어 기존 DPA의 [6][7]알고리즘 강화로 이어집니다.

특허

SPA 및 DPA 공격을 방지하기 위한 많은 기술들이 학술 자료에서 제안되었습니다.일반적으로 RSA와 같은 공개 키 시스템은 기본 대수 구조의 속성을 이용하여 보호되지만(RSA의 경우 이는 승수 동형 속성일 수 있음), 블록사이퍼와 같은 대칭 키 원시 요소에는 다른 방법(예: "마스킹")이 필요합니다.

RamBus와 같은 일부 기업은 DPA 방어 [8]메커니즘에 대한 지적 재산을 주장합니다.

레퍼런스

  1. ^ P. Kocher, Jaffe, B. Jun, Differential Power Analysis, 기술 보고서, 1998; 나중에 Advances in Cryptology – Crypto 99 Proceedings, 컴퓨터 과학 Vol. 1666, M. Wiener, ed, Springer-Verlag, 1999에 게재되었습니다.
  2. ^ Paul Kocher, Joshua Jaffe, Benjamin Jun, "차동 전력 분석관련 공격에 대한 소개 (1998)"
  3. ^ "Home Page - Cyber-Piracy: The Truth". Archived from the original on 2002-11-13.
  4. ^ "DPA Workstation Analysis Platform". Rambus.
  5. ^ 칩 위스퍼러:하드웨어 임베디드 보안 연구를 위한 오픈 소스 플랫폼
  6. ^ 자비에르 샤르벳, 헤르베 펠레티에 "웨이브릿 변환을 이용한 DPA 공격 개선(2005) 웨이백 머신에 2016-03-04 아카이브"
  7. ^ Jasper van Woudenberg, Marc Witteman, Bram Bakker "탄성 정렬에 의한 차분 전력 분석 개선(2011)"
  8. ^ "Licensed Countermeasures". Rambus.