전력 분석: SPA 및 DPA
전력 흔적을 수집하고 단순 전력 분석과 차분 전력 분석을 수행합니다.
전력 분석: SPA 및 DPA은(는) CoddyKit의 무료 Cryptology Academy 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Cryptology Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Cryptology Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
전력 분석이란 무엇인가
전력 분석은 암호 연산 중 장치가 소비하는 순간 전력을 측정합니다. 소비 전력은 처리 중인 데이터에 따라 달라지므로 비밀 키 비트가 유출될 수 있습니다.
단순 전력 분석(SPA)
SPA에서는 단일 전력 추적을 시각적으로 검사합니다. 제곱-곱셈 지수 연산은 지수를 유출합니다. 곱셈 단계의 전력 프로파일이 제곱만 수행하는 단계와 다르기 때문입니다.
차분 전력 분석(DPA)
DPA는 여러 추적에 걸쳐 통계 분석을 수행합니다. 공격자는 단일 키 비트 가설을 정하고, 예측된 중간값에 따라 추적을 나눈 다음, 상관관계가 급증하는 지점을 찾습니다.
해밍 가중치 모델
핵심 가정은 처리 중인 값에서 1비트의 개수, 즉 해밍 가중치에 전력 소비량이 비례한다는 것입니다. 이는 낮은 주파수의 CMOS 논리에서 잘 성립합니다.
상관 전력 분석(CPA)
CPA는 각 시간 표본에서 예측한 중간값의 해밍 가중치와 측정된 전력 사이의 Pearson 상관관계를 사용합니다. 올바른 키 가설에서 가장 높은 상관관계가 나타납니다.
실제 전력 추적 기록
연구자들은 대상 장치와 직렬로 전류 감지 저항을 연결하고, 오실로스코프 또는 ChipWhisperer 보드를 사용하여 100 MS/s 이상의 속도로 추적을 디지털화합니다.
AES에 대한 DPA: 키 복구
첫 번째 AES 라운드를 대상으로 각 256개의 키 바이트 후보에 대해 SubBytes 출력의 해밍 가중치를 예측하고 추적과 상관관계를 계산합니다. 올바른 바이트는 약 0.9 이상의 상관관계로 두드러집니다.
고차 DPA
마스킹된 구현은 각 중간값을 무작위 분할값으로 나눕니다. 2차 DPA는 두 시간 지점(분할값과 마스크)을 곱 또는 절댓값 차이 결합 함수로 결합합니다.
RSA 제곱-곱셈에 대한 DPA
선택 메시지 공격을 사용하여 여러 추적에서 제곱만 수행하는 전력 패턴과 제곱 후 곱셈하는 전력 패턴을 구별하면 RSA 개인 키의 지수 비트를 복구할 수 있습니다.
도구 및 플랫폼
오픈 소스 ChipWhisperer 플랫폼은 전력 기록, 추적 정렬 및 CPA를 위한 하드웨어와 Python 소프트웨어를 제공합니다. AES, RSA 및 ECC 대상을 기본으로 지원합니다.
이해도 확인
상관 전력 분석에서 올바른 키 가설은 잘못된 가설과 무엇으로 구별됩니까?
학습 내용 복습
SPA는 단일 추적을 시각적으로 읽고, DPA는 여러 추적에 걸쳐 통계를 사용합니다. CPA는 해밍 가중치 모델과 Pearson 상관관계를 사용합니다. 대응책에는 ECC에 대한 마스킹과 무작위 투영 좌표가 포함됩니다.
자주 묻는 질문
“전력 분석: SPA 및 DPA” 강의는 무료인가요?
네 — “전력 분석: SPA 및 DPA” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Cryptology Academy 강의 전체를 잠금 해제할 수 있습니다. Cryptology Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
“전력 분석: SPA 및 DPA”에서 뭘 배우나요?
전력 흔적을 수집하고 단순 전력 분석과 차분 전력 분석을 수행합니다. 브라우저에서 직접 실행하는 실습 코드로 Cryptology Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
Cryptology Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 Cryptology Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.
“전력 분석: SPA 및 DPA” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 Cryptology Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 Cryptology Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- 타이밍 공격: 실행 시간에서 키 추출하기
- 전력 분석: SPA 및 DPA
- 전자기 및 음향 부채널
- 대응책: 마스킹, 블라인딩 및 상수 시간 코드