전력 분석 공격이 소개되면서 다양한 대응법들이 제안되었고 그러한 대응법들 중 블록 암호의 경우, 암/복호화 연산도중 중간 값이 전력 측정에 의해 드러나지 않도록 하는 마스킹 기법이 잘 알려져 있다. 블록 암호의 마스킹 기법은 비선형 연산에 대한 비용이 가장 크며, 따라서 AES, ARIA, SEED의 경우 S-box에 대한 대응법을 효율적으로 설계해야만 한다. 하지만 기존의 AES, ARIA, SEED의 S-box에 대한 대응 방법은 마스킹 S-box 테이블을 사용하는 방법으로 하나의 S-box당 256 bytes의 RAM을 필수적으로 사용한다. 하지만 가용 RAM의 크기가 크지 않은 경량보안 디바이스에 이러한 기존의 대응법은 사용이 부적합하다. 본 논문에서는 이러한 단점을 보완하기 위해 마스킹 S-box 테이블을 사용하지 않는 새로운 대응법을 제안한다. 본 논문에서 제안하는 새로운 대응 기법은 비용이 적은 ROM을 활용, RAM의 사용량을 줄일 뿐 아니라 마스킹 S-box 테이블 생성 시간을 소요하지 않으므로 축소 라운드마스킹 기법 적용 시 고속화도 가능하다.
전력 분석 공격이 소개되면서 다양한 대응법들이 제안되었고 그러한 대응법들 중 블록 암호의 경우, 암/복호화 연산도중 중간 값이 전력 측정에 의해 드러나지 않도록 하는 마스킹 기법이 잘 알려져 있다. 블록 암호의 마스킹 기법은 비선형 연산에 대한 비용이 가장 크며, 따라서 AES, ARIA, SEED의 경우 S-box에 대한 대응법을 효율적으로 설계해야만 한다. 하지만 기존의 AES, ARIA, SEED의 S-box에 대한 대응 방법은 마스킹 S-box 테이블을 사용하는 방법으로 하나의 S-box당 256 bytes의 RAM을 필수적으로 사용한다. 하지만 가용 RAM의 크기가 크지 않은 경량보안 디바이스에 이러한 기존의 대응법은 사용이 부적합하다. 본 논문에서는 이러한 단점을 보완하기 위해 마스킹 S-box 테이블을 사용하지 않는 새로운 대응법을 제안한다. 본 논문에서 제안하는 새로운 대응 기법은 비용이 적은 ROM을 활용, RAM의 사용량을 줄일 뿐 아니라 마스킹 S-box 테이블 생성 시간을 소요하지 않으므로 축소 라운드마스킹 기법 적용 시 고속화도 가능하다.
In the recent years, power analysis attacks were widely investigated, and so various countermeasures have been proposed. In the case of block ciphers, masking methods that blind the intermediate values in the en/decryption computations are well-known among these countermeasures. But the cost of non-...
In the recent years, power analysis attacks were widely investigated, and so various countermeasures have been proposed. In the case of block ciphers, masking methods that blind the intermediate values in the en/decryption computations are well-known among these countermeasures. But the cost of non-linear part is extremely high in the masking method of block cipher, and so the countermeasure for S-box must be efficiently constructed in the case of AES, ARIA and SEED. Existing countermeasures for S-box use the masked S-box table to require 256 bytes RAM corresponding to one S-box. But, the usage of the these countermeasures is not adequate in the lightweight security devices having the small size of RAM. In this paper, we propose the new countermeasure not using the masked S-box table to make up for this weak point. Also, the new countermeasure reduces time-complexity as well as the usage of RAM because this does not consume the time for generating masked S-box table.
In the recent years, power analysis attacks were widely investigated, and so various countermeasures have been proposed. In the case of block ciphers, masking methods that blind the intermediate values in the en/decryption computations are well-known among these countermeasures. But the cost of non-linear part is extremely high in the masking method of block cipher, and so the countermeasure for S-box must be efficiently constructed in the case of AES, ARIA and SEED. Existing countermeasures for S-box use the masked S-box table to require 256 bytes RAM corresponding to one S-box. But, the usage of the these countermeasures is not adequate in the lightweight security devices having the small size of RAM. In this paper, we propose the new countermeasure not using the masked S-box table to make up for this weak point. Also, the new countermeasure reduces time-complexity as well as the usage of RAM because this does not consume the time for generating masked S-box table.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
본 논문에서는 AES, ARIA, SEED의 부채널 대응 방법 설계를 위해 가장 큰 연산량을 차지하는 Sbox에 대해 효율적인 대응법을 제안하고자 한다. 이를 위해 가용 RAM이 크지 않은 경량 보안 디바이스에 쉽게 적용할 수 있도록 MS 테이블을 생성하지 않는 새로운 대응 기법을 설계한다.
본 논문에서는 경량 보안 디바이스에 기존 전력 분석 대응 기법 적용 시 문제가 되었던 RAM의 사용량을 줄이기 위해 마스킹 S-box 테이블을 사용하지 않는 새로운 대응 기법을 제안하였다. 제안하는 방법은 연산을 위한 중간 값 저장에 필요한 메모리 이외의 별도의 RAM을 사용하지 않으며 축소 라운드 마스킹 기법을 적용 시 마스킹 S-box 테이블 생성 시간 단축으로 인해 연산 속도도 향상 시킬 수 있었다.
본 절에서는 RAM의 크기가 제약적인 환경을 고려 하여 마스킹 S-box 테이블을 사용하지 않는 S-box 대응 기법을 설계하고자 한다.
제안 방법
제안하는 마스킹 S-box는 위의 다섯 개의 Lemma들을 이용해 설계되었다. 따라서, 제안 기법은 일차 전력 분석으로부터 안전성을 제공한다.
본 논문에서는 AES, ARIA, SEED의 부채널 대응 방법 설계를 위해 가장 큰 연산량을 차지하는 Sbox에 대해 효율적인 대응법을 제안하고자 한다. 이를 위해 가용 RAM이 크지 않은 경량 보안 디바이스에 쉽게 적용할 수 있도록 MS 테이블을 생성하지 않는 새로운 대응 기법을 설계한다. 제안 기법은 연산 중간 값을 저장하는데 필요한 메모리를 제외하고 RAM을 사용하지 않으며 뿐만 아니라 축소 라운드 마스킹 기법의 적용 시 마스킹 S-box 생성 시간 단축으로 인해 연산 시간 단축의 효과도 가진다.
제안 기법은 복합체 위에서의 역원 연산을 이용해 마스킹 S-box 함수를 구성하도록 한다. 제안하는 방법은 연산의 효율성을 위해 복합체 위에서의 연산을 사전 계산해 RAM에 비해 비용이 적은 ROM에 저장 하는 방식을 사용한다.
제안하고자 하는 MS 함수는 두 난수 m, m′과 마스킹된 S-box 입력 값 x̃(= x⊕m)으로부터 마스킹된 S-box 출력 값 Ax- 1⊕a⊕m′ 을 연산한다.
제안하는 기법은 2절에서 설명한 복합체 위에서의 역원 연산의 개념을 이용하며 각 연산 단계에 해당하는 중간 값 ai를 랜덤한 두 값 (ai1 , ai2 )으로 나누어 연산하도록 한다. 이 때, ai = ai1⊕ai2의 식이 항상 만족할 수 있도록 두 값을 연산한다.
제안하는 마스킹 S-box는 위의 다섯 개의 Lemma들을 이용해 설계되었다. 따라서, 제안 기법은 일차 전력 분석으로부터 안전성을 제공한다.
제안 기법은 복합체 위에서의 역원 연산을 이용해 마스킹 S-box 함수를 구성하도록 한다. 제안하는 방법은 연산의 효율성을 위해 복합체 위에서의 연산을 사전 계산해 RAM에 비해 비용이 적은 ROM에 저장 하는 방식을 사용한다.
이론/모형
제안하는 마스킹 기법과 기존 기법의 성능을 비교 하기 위해 일반적인 마스킹 테이블 생성기법인 알고리즘 1과 제안 기법을 ARIA에 적용하여 성능을 측정하였다. 실험 환경은 다음과 같다.
성능/효과
3. a, b가 GF(2n )의 임의의 원소이고 ma, mb는 GF(2n )에서 균일하게 분포된 서로 독립인 난수라고 한다면, (a⊕ma)(b⊕mb)는 a, b에 모두 독립이다.
4. a가 GF(2n )의 임의의 원소이고 ma, mb는 GF(2n )에서 균일하게 분포된 서로 독립인 난수라고 한다면, (a⊕ma )mb는 a에 독립이다.
5. a가 GF(2n )의 임의의 원소이고, λ가고정된 상수일 때, ma가 GF(2n )에서 균일하게 분포된 a, λ에 독립인 난수라고 한다면, (a⊕ma ) 2λ는 a에 독립이다.
제안 기법은 연산 중간 값을 저장하는데 필요한 메모리를 제외하고 RAM을 사용하지 않으며 뿐만 아니라 축소 라운드 마스킹 기법의 적용 시 마스킹 S-box 생성 시간 단축으로 인해 연산 시간 단축의 효과도 가진다. 실제로 제안 기법을 ARIA에 적용하여 성능을 비교하였을 때 속도 향상의 결과가 있음을 확인할 수 있었다.
[표 3]는 제안하는 마스킹 S-box 연산 기법을 적용한 ARIA 구현의 메모리 사용량을 알고리즘 1을 적용한 ARIA의 마스킹 기법과 비교하고 있다. 제안 기법은 기존 기법과 비교하여, 1024 bytes의 RAM을 절약할 수 있다. 이는 가용 RAM의 크기가 크지 않은 경량 보안 디바이스에 새로운 알고리즘이 적합함을 의미한다.
제안 기법은 암호 연산에서 비교적 많은 시간을 소요하지만 마스킹 S-box 테이블을 생성하지 않으므로 이에 해당하는 Masked S-box 테이블 생성 시간을 단축할 수 있었다. 따라서, 일반적인 ARIA 암호 대응기법[1]은 Masked S-box 테이블 생성 → Encrypt의 순서로 동작한다.
이를 위해 가용 RAM이 크지 않은 경량 보안 디바이스에 쉽게 적용할 수 있도록 MS 테이블을 생성하지 않는 새로운 대응 기법을 설계한다. 제안 기법은 연산 중간 값을 저장하는데 필요한 메모리를 제외하고 RAM을 사용하지 않으며 뿐만 아니라 축소 라운드 마스킹 기법의 적용 시 마스킹 S-box 생성 시간 단축으로 인해 연산 시간 단축의 효과도 가진다. 실제로 제안 기법을 ARIA에 적용하여 성능을 비교하였을 때 속도 향상의 결과가 있음을 확인할 수 있었다.
본 논문에서는 경량 보안 디바이스에 기존 전력 분석 대응 기법 적용 시 문제가 되었던 RAM의 사용량을 줄이기 위해 마스킹 S-box 테이블을 사용하지 않는 새로운 대응 기법을 제안하였다. 제안하는 방법은 연산을 위한 중간 값 저장에 필요한 메모리 이외의 별도의 RAM을 사용하지 않으며 축소 라운드 마스킹 기법을 적용 시 마스킹 S-box 테이블 생성 시간 단축으로 인해 연산 속도도 향상 시킬 수 있었다.
질의응답
핵심어
질문
논문에서 추출한 답변
부채널 공격이 소개된 계기는 무엇인가?
수학적으로 안전한 것으로 알려진 알고리즘조차도구현 단계에서 고려되지 못한 부가적인 정보의 누출이 있다는 것이 알려졌고, 이로부터 비밀 키의 값을 알아낼 수 있는 부채널 공격(Side Channel Attack)이 소개되었다[14]. 이러한 부채널 공격이 소개되면서 많은 암호시스템 설계자들은 효율적인 대응법들을 연구하기 시작했고, 부채널 공격 중 하나인 차분 전력 분석(Differential Power Analysis, DPA)[12, 13,15]에 대한 대응법으로는 마스킹 대응법(masking method)이 활발히 연구되어지고 있다[5,7, 8,9].
차분 전력 분석에 대한 대응법으로 활발히 연구되고 있는 것은 무엇인가?
수학적으로 안전한 것으로 알려진 알고리즘조차도구현 단계에서 고려되지 못한 부가적인 정보의 누출이 있다는 것이 알려졌고, 이로부터 비밀 키의 값을 알아낼 수 있는 부채널 공격(Side Channel Attack)이 소개되었다[14]. 이러한 부채널 공격이 소개되면서 많은 암호시스템 설계자들은 효율적인 대응법들을 연구하기 시작했고, 부채널 공격 중 하나인 차분 전력 분석(Differential Power Analysis, DPA)[12, 13,15]에 대한 대응법으로는 마스킹 대응법(masking method)이 활발히 연구되어지고 있다[5,7, 8,9].
MS 테이블의 생성은 AES, ARIA, SEED의 경우 하나의 256 bytes의 S-box마다 256 bytes의 RAM을 요구하는데, 이는 어떠한 문제를 일으키는가?
하지만 이러한 MS 테이블의 생성은 AES, ARIA, SEED의 경우 하나의 256 bytes의 S-box마다 256 bytes의 RAM을 요구한다. 이는 가용 RAM이 크지 않은 경량 보안 디바이스에 적합하지 않을 수 있으며 마스킹 S-box 생성에 필요한 연산 시간으로 인해 많은 속도 저하를 가져온다.
참고문헌 (15)
유형소, 하재철, 김창균, 박일환, 문상재, "랜덤 마스킹 기법을 이용한 DPA 공격에 안전한 ARIA구현," 한국정보보호학회논문지 16(2), pp. 129-139, April 2006
Advanced Encryption Standard (AES), FIPS PUB 197, November 26, 2001, available at http://csrc.nist.gov/encryption/ aes.
A. Satoh, S. Morioka, K. Takano, and S. Munetoh, "A Compact Rijndael Hardware Architecture with S-Box Optimization," ASIACRYPT'01, LNCS 2248, pp. 239-254, 2001.
B. Zakeri, M. Salmasizadeh, A. Moradi, M. Tabandeh, and M. Shalmani, "Compact and Secure Design of Masked AES S-Box," ICICS'07, LNCS 4861, pp. 216- 229, 2007.
C. Herbst, E. Oswald, and S. Mangard, "An AES Smart Card Implementation Resistant to Power Analysis Attacks," ACNS'06, LNCS 3989, pp. 239-252, 2006.
D. Canright, "A Very Compact Rijndael S-box.Technical Report," NPS-MA-04- 001, Naval Postgraduate School (September 2004), http://web.nps.navy.mil/ -dcanrig/pub/NPS-M A-05-001.pdf
E. Oswald and K. Schramm. "An Efficient Masking Scheme for AES Software Implementations," WISA'05, LNCS 3786, pp. 292-305, 2006.
E. Oswald, S. Mangard, N. Pramstaller, and V. Rijmen., "A Side-Channel Analysis Resistant Description of the AES S-box," FSE'05, LNCS 3557, pp. 413-423, 2005.
J. Bl¨omer, J. Guajardo, and V. Krummel. "Provably Secure Masking of AES," SAC'04, LNCS 3357, pp. 69-83, 2005.
Jovan D. Golic, Christophe Tymen. "Multiplicative Masking and Power Analysis of AES," CHES'02, LNCS 2523, pp. 198- 212, 2003.
Mehdi-Laurent Akkar and Christophe Giraud. "An Implementation of DES and AES, Secure against Some Attacks," CHES'01, LNCS 2162, pp. 309-318, 2001.
P. Kocher, J. Jaffe, and B. Jun, "Differential power analysis," CRYPTO'99, LNCS 1666, pp. 388-397, 1999.
P. Kocher, J. Jaffe, and B. Jun, "Introduction to differential power analysis and related attacks," http://www.cryptography. com/dpa/te chnical, June 1998.
P. Kocher, J. Jaffe, and B. Jun, "Timing Attacks on Implementations of Diffie- Hellman, RSA, DSS, and Others Systems," CRYPTO'96, LNCS 1109, pp. 104- 113, 1996.
T. S. Messerges, E. A. Dabbish, and R. H. Sloan, "Power analysis attacks on modular exponentiation in Smart cards," CHES'99, LNCS 1717, pp. 144-157, 1999.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.