머신러닝을 이용한 부채널 분석과 CC 평가

 


                                                                                                             홍석희 교수

 

 공통평가기준((Common Criteria, 이하 CC))은 선진 각국들이 정보 보호 제품에 서로 다른 평가 기준을 가지고 평가를 시행하여 시간과 비용 등이 낭비되는 문제점을 없애기 위해 동일한 평가기준을 적용하여 평가하고 평가등급을 부여하는 국제적인 평가제도이다. 

 CC는 유럽의 ITSEC, 캐나다의 CTCPEC, 미국의 TCSEC을 기반으로 하여 만들어진 평가 기준으로, 유럽과 미국이 주도하고 있다. 공통평가기준은 암호화 기능이 있는 제품의 경우 가장 강력하며 현실적인 암호분석 기법인 부채널 분석을 평가기준으로 포함하고 있다. 특히 전자여권, 전자신분증, 신용카드, 현금카드, 암호화폐의 전자지갑, 교통카드 등으로 사용될 수 있는 스마트카드의 경우 부채널 분석법의 적용은 필수적이며 높은 등급을 받기 위해서는 부채널 분석에 대해 안전한 알고리즘 구현은 매우 중요한 요소라 할 수 있다.

 CC 평가에서는 평가자의 숙련도, 분석에 필요한 시간, 분석대상 제품에 대해 공개된 정보, 제품분석에 필요한 분석 장비, 제품에 대한 접근성 및 정보추출의 어려움 등을 종합적으로 판단하여 등급을 평가하고 있다. 이러한 기준은 부채널 분석을 적용할 때도 동일하게 적용되고 있다. 그런데 이러한 평가기준은 거의 평가자에 의존한다고 해도 과언이 아니다. 예를 들어 평가자인 A B가 있다고 하더라도 A B에 따라 필요한 시간, 필요한 장비, 제품에서 얻을 수 있는 정보의 양이 달라지며, 이러한 요소는 평가등급을 달라지게 할 수 있다. 실례로 모회사의 스마트카드가 모평가기관에서 평가를 받았을 때 EAL4 등급을 받아 다른 평가기관에서 평가를 다시 신청하여 EAL4+를 받은 예가 존재한다. 이러한 이유는 앞에서도 언급하였듯이 평가요소의 대부분이 평가자에 의하여 결정되며, 이러한 요소들이 평가등급을 결정하기 때문이다.

 이러한 실례를 본다면 우리는 CC 평가결과를 100% 신뢰할 수 없을 것이다. 그렇다면 어떠한 방식으로 평가를 해야 객관적이고 정량화된 평가를 할 수 있을 것인가? 이러한 답을 얻기 위해 CC 평가기관에서는 부채널 분석 분야에서 머신러닝을 이용한 분석을 시도하고 있다. 그 이유는 머신러닝 알고리즘을 선택하면 어느 정도 객관적이고 정량화된 결과를 얻을 수 있을 것이라는 생각 때문이다. 물론 머신러닝을 이용한 부채널 분석이 초기 연구단계라 평가결과의 객관성을 논하기에는 이른 감이 있지만 머신러닝을 이용한 CC평가 가능성은 크다고 할 수 있으며, 향후로도 이러한 연구가 많이 이루어질 것임에는 틀림없다고 판단된다.

 그렇다면 부채널 분석에서 평가자에 의존하는 부분은 어느 부분일까? 부채널 분석은 고전적인 암호 분석기법이 아니라 암호장비가 동작될 때 나오는 여러 가지 부가정보-전자파, 전력소모량, 소리, 시간 등등-를 이용하여 이 정보를 가지고 비밀정보를 찾는 분석이다. 전력파형이나 전자파를 이용하는 부채널 분석은 크게 전력파형이나 전자파형을 수집하는 단계, 수집된 파형을 정렬하고 처리하는 전처리 단계, 그리고 비밀정보를 분석하는 단계로 나눌 수 있다. 이 중 평가자에 가장 의존하는 단계는 파형정렬 및 전처리 단계이다. 그 이유는 대부분의 암호 장비들이 부채널 분석을 어렵게 하기 위하여 동작 중에 임의 지연(Random Delay)을 발생시키거나 동작주파수를 변형시켜 파형의 정렬을 어렵게 하거나, 때로는 잡음(Noise)으로 파형에 대한 왜곡현상이 발생되기 때문에, 파형을 정렬시키기 위해서는 평가자의 경험 및 숙련도에 의존하여 전처리가 이루어진다. 평가자에 의존하는 다른 한 부분은 파형에서 공격포인트(Point of Interest)을 어떻게 찾느냐이다. 이 부분도 평가자의 경험과 숙련도에 많이 의존하는 부분이다. 따라서 파형정렬, 공격포인트의 선택 등 모든 과정을 머신러닝 알고리즘에 맡겨 평가의 정량화를 시도하고자 하는 것이 머신러닝을 이용한 부채널 분석의 최종 목표라 할 수 있다.

 현재 프랑스 기관인 ANSSI는 부채널 분석 테스트 데이터 셋인 ASCAD Database를 배포하고 있으며, 이 데이터 셋의 경우 기존의 공격보다 딥러닝의 일종인 MLP (Multilayer Perceptron) 기법을 이용할 경우 기존의 공격법보다 좋은 결과를 보이고 있다. 또한 Riscure사는 아직 초기 버전이지만 머신러닝을 이용하여 부채널 분석을 시도하는 SW를 판매하는 등 머신러닝과 부채널 분석을 접목한 연구가 활발히 이루어지고 있다. 이러한 연구흐름에 발맞추고 향후 3년 내에 세계 최고의 부채널 분석 연구기관으로 발돋움하기 위하여 우리 대학원의 암호알고리즘 연구실은 오늘도 연구와 시행착오를 통하여 발전하고 있다. 발전하는 암호알고리즘 연구실에 정보보호대학원 일원들의 관심과 성원을 기대해본다.