우리나라 경량 블록암호 표준인 LEA알고리듬을 8-비트 데이터 패스의 하드웨어로 구현하고, 구현된 LEA-128 암호 프로세서에 대해 상관관계 전력분석 공격의 취약성을 분석하였다. 본 논문에서 적용된 CPA는 공격을 위해 가정된 라운드키 값으로 계산된 데이터의 해밍 거리와 LEA 암호 프로세서의 전력 소모량 사이의 상관 계수를 분석함으로써 올바른 라운드키 값을 검출한다. CPA 공격 결과로, 최대 상관계수가 0.6937, 0.5507인 올바른 라운드키 값이 검출되었으며, 블록암호 LEA가 전력분석 공격에 취약함이 확인되었다. CPA 공격에 대한 대응 방안으로 TRNG(True Random Number Generator) 기반의 매스킹 방법을 제안하였다. TRNG에서 생성되는 난수를 암호화 연산 중간 값에 더하는 마스킹 기법을 적용한 결과, 최대 상관계수가 0.1293와 0.1190로 매우 작아 잘못된 라운드키 값이 분석되었으며, 따라서 제안된 마스킹 방법이 CPA 공격에 강인함을 확인하였다.
우리나라 경량 블록암호 표준인 LEA 알고리듬을 8-비트 데이터 패스의 하드웨어로 구현하고, 구현된 LEA-128 암호 프로세서에 대해 상관관계 전력분석 공격의 취약성을 분석하였다. 본 논문에서 적용된 CPA는 공격을 위해 가정된 라운드키 값으로 계산된 데이터의 해밍 거리와 LEA 암호 프로세서의 전력 소모량 사이의 상관 계수를 분석함으로써 올바른 라운드키 값을 검출한다. CPA 공격 결과로, 최대 상관계수가 0.6937, 0.5507인 올바른 라운드키 값이 검출되었으며, 블록암호 LEA가 전력분석 공격에 취약함이 확인되었다. CPA 공격에 대한 대응 방안으로 TRNG(True Random Number Generator) 기반의 매스킹 방법을 제안하였다. TRNG에서 생성되는 난수를 암호화 연산 중간 값에 더하는 마스킹 기법을 적용한 결과, 최대 상관계수가 0.1293와 0.1190로 매우 작아 잘못된 라운드키 값이 분석되었으며, 따라서 제안된 마스킹 방법이 CPA 공격에 강인함을 확인하였다.
Lightweight Encryption Algorithm (LEA) that was standardized as a lightweight block cipher was implemented with 8-bit data path, and the vulnerability of LEA encryption processor to correlation power analysis (CPA) attack was analyzed. The CPA used in this paper detects correct round keys by analyzi...
Lightweight Encryption Algorithm (LEA) that was standardized as a lightweight block cipher was implemented with 8-bit data path, and the vulnerability of LEA encryption processor to correlation power analysis (CPA) attack was analyzed. The CPA used in this paper detects correct round keys by analyzing correlation coefficient between the Hamming distance of the computed data by applying hypothesized keys and the power dissipated in LEA crypto-processor. As a result of CPA attack, correct round keys were detected, which have maximum correlation coefficients of 0.6937, 0.5507, and this experimental result shows that block cipher LEA is vulnerable to power analysis attacks. A masking method based on TRNG was proposed as a countermeasure to CPA attack. By applying masking method that adds random values obtained from TRNG to the intermediate data of encryption, incorrect round keys having maximum correlation coefficients of 0.1293, 0.1190 were analyzed. It means that the proposed masking method is an effective countermeasure to CPA attack.
Lightweight Encryption Algorithm (LEA) that was standardized as a lightweight block cipher was implemented with 8-bit data path, and the vulnerability of LEA encryption processor to correlation power analysis (CPA) attack was analyzed. The CPA used in this paper detects correct round keys by analyzing correlation coefficient between the Hamming distance of the computed data by applying hypothesized keys and the power dissipated in LEA crypto-processor. As a result of CPA attack, correct round keys were detected, which have maximum correlation coefficients of 0.6937, 0.5507, and this experimental result shows that block cipher LEA is vulnerable to power analysis attacks. A masking method based on TRNG was proposed as a countermeasure to CPA attack. By applying masking method that adds random values obtained from TRNG to the intermediate data of encryption, incorrect round keys having maximum correlation coefficients of 0.1293, 0.1190 were analyzed. It means that the proposed masking method is an effective countermeasure to CPA attack.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
본 논문에서는 IoT 환경에 적합한 8-비트 데이터 패스를 갖는 LEA-128 암호 프로세서를 설계하고, 설계된 LEA-128 암호 프로세서에 대해 CPA 공격 실험을 했다. 두 개의 라운드 변환에 대한 전력분석 공격의 결과로, 최대 상관계수 0.
본 논문에서는 우리나라 국가 표준으로 채택된 128-비트 블록암호 알고리듬 LEA에 대해 IoT 환경에 적합하도록 저면적의 8-비트 데이터 패스를 갖는 LEA 프로세서를 설계하고, 부채널 공격 방법 중 하나인 상관관계 전력분석 공격으로 비밀키 정보의 획득이 가능함을 실험으로 보였다. 또한, 부채널 공격에 대한 대응방안으로 링 오실레이터 기반의 TRNG(True Random Number Generator)와 마스킹 기법을 제안하고, LEA 프로세서에 적용하여 상관관계 전력분석 공격에 강한 내성을 가짐을 실험적으로 확인하였다.
본 논문에서는 하드웨어 환경에서 구현이 쉬운 RO샘플링 방법 기반 TRNG을 구현한다[15]. 난수 발생기는 잡음원와 후처리 단계로 구성된다.
제안 방법
LEA 암호 프로세서의 라운드 블록에서 소모되는 전력과 암호화 연산 중간값의 해밍거리 모델과의 상관관계를 제거하기 위해 그림 10과 같이 라운드 블록에 마스킹 기법을 적용하였다. 마스크 값은 TRNG로부터 8-비트 난수값을 16-클록에 걸쳐 입력받아 32-비트 레지스터 mask_1, mask_2, mask_3, mask_4에 저장되며, 그림 10에 적용되는 8-비트 마스크 값 m1, m2, m3, m4를 출력한다.
설계된 LEA-128 암호화 코어는 그림 1의 구조를 가지며, 라운드 블록, 키 스케줄 블록, 제어 블록으로 구성된다. 라운드 블록과 키 스케줄 블록을 8-비트 데이터 패스 구조로 설계하였으며, 평문과 비밀키가 입력되는 핀이 공유되도록 하였다.
그림 4는 Astro 툴을 사용하여 Auto P&R 방식으로 설계된 레이아웃 도면이다. 레이아웃으로부터 기생(parasitic) RC가 포함된 네트리스트를 추출하고, 시뮬레이션을 통해 전력소모 파형 측정하였다.
전력분석 공격에 대한 대응 방안으로 마스킹 기법을 적용하였다. 링 발진기 기반의 참 난수발생기를 구현하고, 생성된 난수를 라운드 블록에 마스크 값으로 적용하였다. 마스킹 기법을 적용한 LEA 암호 프로세서에 CPA 공격 실험을 진행한 결과, 최대 상관계수 0.
본 논문에서는 LEA에 대한 전력분석 공격 모의실험을 위해 평문을 128-비트 비밀키로 암호화하여 암호문을 생성하는 LEA-128 암호화 프로세서를 8-비트 데이터 패스로 설계하였다. 설계된 LEA-128 암호화 코어는 그림 1의 구조를 가지며, 라운드 블록, 키 스케줄 블록, 제어 블록으로 구성된다.
본 논문에서는 그림 6의 실선과 점선의 경로를 따라 연산되어 출력 레지스터 Dout에 저장된 값의 변화에 따른 실제 전력소모량과 해밍거리 모델 간의 상관계수 계산을 통해 라운드키를 분석하였다. 출력 레지스터는 다른 레지스터에 비해 부하 커패시턴스 용량이 비교적 크기 때문에 LEA-128 코어의 전체 전력소모량에서 차지하는 비중이 높아 분석 위치로 적합하다.
본 논문에서는 그림 9와 같이 TRNG를 설계하였으며, 후처리 단계는 최대 사이클 길이 280 -243 - 237 + 1와 편차 2-80을 갖는다. 43-비트 LFSR의 하위 8-비트와 37-비트 CASR의 하위 8-비트를 XOR하여 마스크 값으로 사용하며, 1회의 암호연산이 완료되면 새로운 마스크 값이 사용된다.
하지만 f=1에 가깝게 구현하기 위해서는 높은 구현 비용이 필요하므로, 성능과 면적간의 교환조건 관계를 고려하여 구현하는 것이 바람직하다. 본 논문에서는 인버터의 개수가 3, 5, 7, 11, 13, 17, 19개인 RO를 각각 20개 사용하여 엔트로피 소스을 구현하였다.
32-비트 순환이동이 8-비트 데이터 패스에서 처리되기 위해 4-클록이 필요하다. 본 논문의 8-비트 데이터패스 구조에서는 라운드키 가산과 상태 레지스터에 업데이트되고 4-클록에 걸쳐 쉬프트 되는 동안에 비트 순환이동이 이루어지도록 구현하였으며, 이를 통해 추가적인 레지스터 없이 비트 순환이동이 수행되도록 최적화 하였다.
차분 전력분석 공격은 전력소모 파형을 분석하는 것뿐만 아니라, 전력 소모량과 비밀키의 상관관계를 통계적인 방법으로 분석한다. 분석을 위해 암호장치가 임의의 평문 P와 비밀키 K를 이용하여 암호화 연산을 수행할 때의 전력소모 파형을 수집하여 표본화하고, 추측한 비밀키를 이용하여 연산을 수행하고, 분류 함수에 따라 전력소모 파형을 분류하여 평균의 차분 신호를 구한다. 상관관계 전력분석 공격(correlation power analysis;CPA)은 차분 전력분석 공격과 달리, 비밀키를 추정하여 얻은 암호화 연산 중간값을 해밍무게(hamming weight) 모델 또는 해밍거리(hamming distance) 모델로 변환한다[14].
상관계수 계산을 위해 소비전력 측정에 사용된 임의의 평문 1,000개와 추측된 비밀키를 사용하여 계산된 암호 연산 중간값에 따른 소모전력 모델을 생성하기 위해 해밍거리 모델로 변환한다. 다음으로, 측정된 전력소모 파형을 표본화한다.
상관관계 전력분석 공격은 추측된 비밀키를 사용하여 계산된 암호화 연산 중간값을 해밍거리 모델로 변환한 값과 실제 측정된 소모전력과의 상관관계를 계산하여 올바른 비밀키를 분석한다. 상관관계 계산방법은 식(3)과 같이 정의된다.
생성된 난수는 표 1과 같이 FIPS 140-2의 기준[16]을 적용하여 Monobit 테스트, Runs 테스트, Long run 테스트를 진행하였다. Monobit 테스트는 비트열에서 ‘1’의 개수이며, Runs 테스트는 ‘0’ 또는 ‘1’로만 구성된 연속적인 비트들의 개수이다.
설계된 LEA-128 암호 코어에 대한 전력분석 공격 모의실험을 위해 0.18-㎛ CMOS 표준셀을 사용하여 레이아웃을 설계하였다. 그림 4는 Astro 툴을 사용하여 Auto P&R 방식으로 설계된 레이아웃 도면이다.
설계된 LEA-128 암호 프로세서에 대해 상관관계 전력분석 공격은 그림 5의 과정으로 진행하였다. 임의의 평문 1,000개에 대하여 암호화 연산 중 발생하는 소비전력 측정을 위해 레이아웃에서 추출된 게이트 레벨 네트리스트를 이용하여 PrimeTime- PX로 전력소모 파형을 측정한다.
차분 전력분석 공격은 전력소모 파형을 분석하는 것뿐만 아니라, 전력 소모량과 비밀키의 상관관계를 통계적인 방법으로 분석한다. 분석을 위해 암호장치가 임의의 평문 P와 비밀키 K를 이용하여 암호화 연산을 수행할 때의 전력소모 파형을 수집하여 표본화하고, 추측한 비밀키를 이용하여 연산을 수행하고, 분류 함수에 따라 전력소모 파형을 분류하여 평균의 차분 신호를 구한다.
대상 데이터
문헌[4]의 표준에 제시된 128-비트의 평문 “0x10111213_14151617_18191a1b_1c1d1e1f”와 비밀키 “0x0f1e2d3c_4b5a6978_8796a5b4_c3d2e1f0”를 검증용 테스트 벡터로 사용하였다.
본 실험에 사용된 비밀키는 “0x0f1e2d3c_4b5a6978_8796a5b4_c3d2e1f0”이며, 키 스케줄링을 통해 생성된 최초 192-비트 라운드키는 “0x003a0fd4_02497010_194f7db1_02497010_090d0883_02497010” 이다.
본 논문에서는 LEA에 대한 전력분석 공격 모의실험을 위해 평문을 128-비트 비밀키로 암호화하여 암호문을 생성하는 LEA-128 암호화 프로세서를 8-비트 데이터 패스로 설계하였다. 설계된 LEA-128 암호화 코어는 그림 1의 구조를 가지며, 라운드 블록, 키 스케줄 블록, 제어 블록으로 구성된다. 라운드 블록과 키 스케줄 블록을 8-비트 데이터 패스 구조로 설계하였으며, 평문과 비밀키가 입력되는 핀이 공유되도록 하였다.
실험에 사용된 비밀키는 4.3절에서와 동일한 값 “0x0f1e2d3c_4b5a6978_8796a5b4_c3d2e1f0”이며, 키 스케줄링을 통해 생성된 최초 192-비트 라운드키는 “0x003a0fd4_02497010_194f7db1_02497010_090d0883_ 02497010” 이다.
이론/모형
5507을 갖는 하위 16비트의 라운드키 값이 얻어졌으며, 올바른 킷값으로 확인되었다. 전력분석 공격에 대한 대응 방안으로 마스킹 기법을 적용하였다. 링 발진기 기반의 참 난수발생기를 구현하고, 생성된 난수를 라운드 블록에 마스크 값으로 적용하였다.
성능/효과
기능 검증결과로 암호문 “0x9fc84e35_28c6c618_5532c7a7_04648bfc”가 출력되어 구현된 LEA-128 프로세서의 기능이 정상 동작함을 확인하였다.
본 논문에서는 IoT 환경에 적합한 8-비트 데이터 패스를 갖는 LEA-128 암호 프로세서를 설계하고, 설계된 LEA-128 암호 프로세서에 대해 CPA 공격 실험을 했다. 두 개의 라운드 변환에 대한 전력분석 공격의 결과로, 최대 상관계수 0.6937과 0.5507을 갖는 하위 16비트의 라운드키 값이 얻어졌으며, 올바른 킷값으로 확인되었다. 전력분석 공격에 대한 대응 방안으로 마스킹 기법을 적용하였다.
5507로 계산된 라운드키 (#)의 나머지 하위 8-비트((#)[15:8])인 0x08과 (#)의 나머지 하위 8-비트((#)[15:8])인 0x70이 분석되었음을 보이고 있다. 두 번의 분석으로 (#)의 하위 16-비트((#)[15:0])인 0x0883과 (#)의 하위 16-비트 ((#)[15:0])인 0x7010이 정확하게 분석되어 LEA- 128 암호 코어에 대한 CPA 공격이 성공하였음을 확인할 수 있다.
본 논문에서는 우리나라 국가 표준으로 채택된 128-비트 블록암호 알고리듬 LEA에 대해 IoT 환경에 적합하도록 저면적의 8-비트 데이터 패스를 갖는 LEA 프로세서를 설계하고, 부채널 공격 방법 중 하나인 상관관계 전력분석 공격으로 비밀키 정보의 획득이 가능함을 실험으로 보였다. 또한, 부채널 공격에 대한 대응방안으로 링 오실레이터 기반의 TRNG(True Random Number Generator)와 마스킹 기법을 제안하고, LEA 프로세서에 적용하여 상관관계 전력분석 공격에 강한 내성을 가짐을 실험적으로 확인하였다.
링 발진기 기반의 참 난수발생기를 구현하고, 생성된 난수를 라운드 블록에 마스크 값으로 적용하였다. 마스킹 기법을 적용한 LEA 암호 프로세서에 CPA 공격 실험을 진행한 결과, 최대 상관계수 0.1293, 0.1190를 갖는 잘못된 라운드키 값이 얻어졌다.
그림 11은 마스킹 적용 회로에 대한 CPA 공격 결과이다. 매스킹에 의해 매우 낮은 상관계수 값이 얻어졌으며, CPA 공격을 통한 비밀키 획득이 불가능함을 확인할 수 있다. 그림 11-(a)는 최대 상관계수 0.
1190으로 계산된 라운드키 (#)의 나머지 하위8-비트(#)[15:8])는 0xff, (#)의 나머지 하위 8-비트(#)[15:8])는 0x29로 분석되었음을 보이고 있다. 분석된 라운드키 값들은 모두 잘못된 값이며, 본 실험 결과를 통해 마스킹 기법이 적용된 LEA-128 코어는 CPA 공격에 안전하다는 것이 확인되었다.
Long run 테스트는 동일한 비트로 구성된 연속적인 비트의 최대 길이이다. 출력된 난수를 20,000 비트로 구성된 비트열로 변환한 후, 각각의 테스트 방법을 적용하여 기준 만족 여부를 판단한 결과, 구현된 TRNG는 FIPS 140-2 기준을 만족하는 것으로 평가되었다.
후속연구
본 논문의 매스킹 기법을 적용한 LEA 암호 프로세서는 상관관계 전력분석 공격에 라운드키 값이 노출되지 않는 안전성이 확인되었으며, 경량화된 암호 장치를 필요로 하는 IoT 시스템의 디바이스 보안 SoC 개발에 효과적으로 사용될 수 있을 것으로 평가된다.
질의응답
핵심어
질문
논문에서 추출한 답변
차분 전력분석 공격은 무엇을 분석하는가?
차분 전력분석 공격은 전력소모 파형을 분석하는 것뿐만 아니라, 전력 소모량과 비밀키의 상관관계를 통계적인 방법으로 분석한다. 분석을 위해 암호장치가 임의의 평문 P와 비밀키 K를 이용하여 암호화 연산을 수행할 때의 전력소모 파형을 수집하여 표본화하고, 추측한 비밀키를 이용하여 연산을 수행하고, 분류 함수에 따라 전력소모 파형을 분류하여 평균의 차분 신호를 구한다.
IoT 보안은 어떻게 구분되는가?
IoT 보안은 경량 암호ㆍ인증 및 이기종 네트워크 보안관리, 프라이버시 보호 등 다양한 보안기술이 요구되며, 디바이스 보안, 네트워크 보안 그리고 서비스 환경에 관련된 보안 등 크게 세 가지 영역으로 구분된다. IoT 디바이스 보안은 기존의 보안기술을 계승하여 경량화된 블록 암호 및 공개키 암호 알고리듬을 기반으로하며, 최근에는 IoT 환경에 적합하도록 개발된 경량 블록 암호 알고리듬으로 LEA, PRESENT와 공개키 암호인 타원곡선 암호가 활발하게 구현되고 있다[3-6].
CPA 공격의 대응방법으로 어떤 것이 있는가?
따라서 소모전력과 해밍거리 모델 간의 상관관계를 제거하는 것이 효과적인 대응 방안이다. 주로 사용되는 대응 방법으로는 암호화 연산 중간값에 난수를 더하는 마스킹(masking) 기법과 비트 스위칭에 따른 전력 소모량을 일정하게 하는 하이딩 기법 등이 있다. 특히 마스킹 기법은 구현과 적용이 쉬워 암호 시스템에서 많이 사용된다[11].
참고문헌 (16)
J. Ambareen, P. G. Shah and M. Prabhakar, "A Survey of Security in Internet of Things-Importance and Solutions," Indian Journal of Science and Technology, vol. 9, no. 45, pp. 1-7, Dec. 2016.
IoT Information Security Roadmap, Ministry of Science, ICT and Future Planning, Oct. 2014.
M. J. Sung and. K. W. Shin, "An Efficient Hardware Implementation of Lightweight Block Cipher LEA-128/ 192/ 256 for IoT Security Applications," Journal of the Korea Institute of Information and Communication Engineering, vol. 19, no. 7, pp. 1608-1616, Jul. 2015.
TTAK.KO-12.0223, 128-bit Block Cipher LEA, Telecommunications Technology Association (TTA), 2013.
W. L. Cho, K. B. Kim and K. W. Shin, "A Hardware Design of Ultra-Lightweight Block Cipher Algorithm PRESENT for IoT Applications," Journal of the Korea Institute of Information and Communication Engineering, vol. 20, no. 7, pp. 1296-1302 Jul. 2016.
H. A. Selma and H. M'hamed, "Elliptic curve cryptographic processor design using FPGAs," Proceedings of the IEEE 2015 International Conference on Control, Engineering & Information Technology (CEIT), Univ. of Tlemcen Tlemcen, Algeria, pp. 1-6, 2015.
P. Kocher, "Timing attacks on implementations of Diffie- Hellmann," Proceedings of the 16th Annual International Cryptology Conference (CRYTO'96), Santa Barbara, California, USA, pp. 104-113, 1996.
P. Kocher, J. Jaffe, and B. Jun, "Differential Power Analysis," Proceedings of the 19th Annual International Cryptology Conference (CRYPTO'99), Santa Barbara, California, USA, pp. 388-397, 1999.
K. Gandolfi, C. Mourtel, and F. Olivier, "Electromagnetic analysis: Concrete results," Proceedings of the Cryptographic Hardware and Embedded Systems (CHES 2001), Paris, France, pp. 251- 261, 2001.
E. Biham, A. Shamir, "Differential fault analysis of secret key cryptosystems," Proceedings of the 17th Annual International Cryptology Conference (CRYPTO'97), Santa Barbara, California, pp. 513-525, 1997.
M. Masoumi, P. Habibi and M. Jadidi, "Efficient Implementation of Masked AES on Side-Channel Attack Standard Evaluation Board," Proceedings of the International Conference on Information Society (i-Society 2015), London, England, pp. 151-156, 2015.
J. Choi and Y. Kim, "An improved LEA block encryption algorithm to prevent side-channel attack in the IoT system," Proceedings of the 2016 Asia-Pacific Signal and Information Processing Association Annual Summit and Conference (APSIPA), Jeju, Korea, pp. 1-4, 2016.
X. Duan, Q. Cui, S. Wang, H. Fang and G. She, "Differential Power Analysis Attack and Efficient Countermeasures on PRESENT," Proceedings of the 2016 8th IEEE International Conference on Communication Software and Networks, Beijing, China, pp. 8-12, 2016.
E. Brier, C. Clavier, and F. Oliver, "Correlation Power Analysis with a Leakage Model", Proceedings of the Cryptographic Hardware and Embedded Systems (CHES 2004), MA, USA, pp. 16-29, 2004.
B. Sunar, W. J. Martin and D. R. Stinson, "A Provably Secure True Random Number Generator with Built-In Tolerance to Active Attacks," IEEE Transactions on Computers, vol. 56, no. 1, pp. 109-119, Jan. 2007.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.