KR20220075094A - Aes가 탑재된 avr장비의 소비패턴 분석을 통한 mlp 기반의 aes 복호화 방법 - Google Patents

Aes가 탑재된 avr장비의 소비패턴 분석을 통한 mlp 기반의 aes 복호화 방법 Download PDF

Info

Publication number
KR20220075094A
KR20220075094A KR1020200162507A KR20200162507A KR20220075094A KR 20220075094 A KR20220075094 A KR 20220075094A KR 1020200162507 A KR1020200162507 A KR 1020200162507A KR 20200162507 A KR20200162507 A KR 20200162507A KR 20220075094 A KR20220075094 A KR 20220075094A
Authority
KR
South Korea
Prior art keywords
aes
avr
power
key
mlp
Prior art date
Application number
KR1020200162507A
Other languages
English (en)
Other versions
KR102505081B1 (ko
Inventor
이훈재
김기환
이병국
이상곤
Original Assignee
동서대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 동서대학교 산학협력단 filed Critical 동서대학교 산학협력단
Priority to KR1020200162507A priority Critical patent/KR102505081B1/ko
Publication of KR20220075094A publication Critical patent/KR20220075094A/ko
Application granted granted Critical
Publication of KR102505081B1 publication Critical patent/KR102505081B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/003Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/24Key scheduling, i.e. generating round keys or sub-keys for block encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

실시예는 AES가 탑재된 AVR장비의 소비패턴 분석을 통한 MLP 기반의 AES 복호화 방법에 관한 것이다.
구체적으로, 이러한 AES 복호화 방법은 AVR장비의 AES암호화된 전력정보를 복호화할 경우, 전술한 일실시예에 따른 학습 모델에 의해서 복호화가 이루어짐으로써, 범용적으로 사용되는 암호 알고리즘인 AES의 비밀키를 파악하여 AES복호화를 이루어낸다.
보다 구체적으로는, 상기 AES의 비밀키를 파악하는 것은 AVR장비의 전력을 분석할 경우, AVR하드웨어의 소비전력을 측정하여 AI 범주에 해당하는 MLP를 사용하여 이루어진다.
그리고, 이러한 경우 일실시예는 상기 학습 모델이 아래와 같이 이루어진다.
즉, AES의 평문과 비밀키 XOR 연산시점 또는 각 함수 부분을 이벤트발생시점으로 해서 전류변화 정보를 획득하고 AES의 각 키별로 전류변화 유형을 대응해서, 다수의 상이한 비밀키별로 소비전력 패턴을 생성한 MLP모델의 학습 데이터로 학습하여 된다.
따라서, 이를 통해 알려진 대부분의 암호 알고리즘과 마찬가지로 별도의 전력분석공격에 취약함을 보인 AES 알고리즘에 방어기술을 적용해서 전력분석공격이 가능함을 확인하는 목적을 달성한다.

Description

AES가 탑재된 AVR장비의 소비패턴 분석을 통한 MLP 기반의 AES 복호화 방법{Method for decoding Adavanced Encryption Standard employing Multi Layer Perceptron according to analysis of Advanced Virtual RISC equipment with AES}
본 명세서에 개시된 내용은 전력분석 기술 분야에 관한 것으로, 보다 상세하게는 하는 AVR(Advanced Virtual RISC)장비의 전력을 분석할 경우, AVR장비로부터 AES암호화된 전력정보를 수집하여 복호화해서 안정적인 전력분석이 될 수 있도록 하는 기술에 관한 것이다.
본 명세서에서 달리 표시되지 않는 한, 이 섹션에 설명되는 내용들은 이 출원의 청구항들에 대한 종래 기술이 아니며, 이 섹션에 포함된다고 하여 종래 기술이라고 인정되는 것은 아니다.
일반적으로, 부채널 공격 중 가장 강력하고 대표적인 전력 분석 방법은 현재의 암호시스템을 위협하는 가장 강력한 수단으로 연구되어 왔으며 거의 모든 암호 알고리즘을 대상으로 하고 있다.
부가적으로, 이러한 전력 분석과 관련하여 AVR(Advanced Virtual RISC)장비는 전원 공급 장치로 사용되는데, 불안정한 전압을 가진 전력을 일정한 범위의 전압을 가진 전력으로 변환하여 공급한다. 그래서, 이러한 전력 분석에 AVR장비의 전력이 적용되기도 한다.
이와 관련하여, 여기에서 사용되는 AES(Adavanced Encryption Standard) 암호 알고리즘은 많은 연구자들에 의해 분석되어 전력분석공격에 취약함을 입증하였다. 이처럼 이전에 알려진 대부분의 암호 알고리즘과 마찬가지로 별도의 전력분석공격에 대한 방어대책이 필요하다고 할 수 있다.
이러한 경우, 상기 AES 암호 알고리즘에 대한 전력분석공격은 평문과 비밀키가 배타적 논리합 연산을 수행하는 시점, 또는 각 함수들에 대한 부분을 공격시점으로 이루어졌으며, 이에 따라 안전하지 않음을 증명하였다.
그리고, 종래기술로서 등록특허 제10-0949538호의 AES 라인달 알고리즘을 이용하는 암호화 및 복호화 장치와 그 방법이 있는데, 특정 라운드에 대한 라운드키를 이용하여 암호화 또는 복호화를 위한 연산을 수행한다.
다른 종래기술로서 등록특허 제10-1614331호에는 이동 통신 시스템에서 AES 알고리즘을 이용한 암호화 장치 및 방법도 있는데, AES 블록 알고리즘을 통해 수행되는 AES 모드를 이용한 암호화 장치에 관한 것이다.
그러나, 상기와 같은 종래의 AES 암호 알고리즘은 전력분석공격에 취약하거나, 송수신 암호에 방어기술에 방어기술을 적용하여 보안에 영향을 주는 단점이 있었다.
개시된 내용은, 알려진 대부분의 암호 알고리즘과 마찬가지로 별도의 전력분석공격에 취약함을 보인 AES 알고리즘에 방어기술을 적용해서 전력분석공격이 가능함을 확인하는 목적을 달성하도록 하는 AES가 탑재된 AVR장비의 소비패턴 분석을 통한 MLP 기반의 AES 복호화 방법을 제공하고자 한다.
실시예에 따른 AES가 탑재된 AVR장비의 소비패턴 분석을 통한 MLP 기반의 AES 복호화 방법은,
AVR장비의 AES암호화된 전력정보를 복호화할 경우, 일실시예에 따른 학습 모델에 의해서 복호화가 이루어짐으로써, 범용적으로 사용되는 암호 알고리즘인 AES의 비밀키를 파악하여 AES복호화를 이루어낸다.
보다 구체적으로는, 상기 AES의 비밀키를 파악하는 것은 AVR장비의 전력을 분석할 경우, AVR하드웨어의 소비전력을 측정하여 AI 범주에 해당하는 MLP(Multi Layer Perceptron)를 사용하여 이루어진다.
그리고, 이러한 경우 상기 학습 모델은 아래와 같이 이루어진다.
즉, AES의 평문과 비밀키 XOR 연산시점 또는 각 함수 부분을 이벤트발생시점으로 해서 전류변화 정보를 획득하고 AES의 각 키별로 전류변화 유형을 대응해서, 다수의 상이한 비밀키별로 소비전력 패턴을 생성한 MLP모델의 학습 데이터로 학습하여 되는 것을 특징으로 한다.
실시예들에 의하면, AVR장비의 전력을 분석할 경우, AVR하드웨어의 소비전력을 측정하여 AI 범주에 해당하는 MLP를 사용하여 범용적으로 사용되는 암호 알고리즘인 AES의 비밀키를 알아낸다.
그래서, 이를 통해 알려진 대부분의 암호 알고리즘과 마찬가지로 별도의 전력분석공격에 취약함을 보인 AES 알고리즘에 방어기술을 적용해서 전력분석공격이 가능함을 확인하는 목적을 달성한다.
도 1은 일실시예에 따른 AES가 탑재된 AVR장비의 소비패턴 분석을 통한 MLP 기반의 AES 복호화 방법을 개념적으로 설명하기 위한 도면
도 2는 일실시예에 따른 AES가 탑재된 AVR장비의 소비패턴 분석을 통한 MLP 기반의 AES 복호화 방법이 적용된 시스템을 전체적으로 도시한 도면
도 3은 도 2의 시스템에 적용된 관리 정보처리장치의 구성을 도시한 블록도
도 4는 일실시예에 따른 AES가 탑재된 AVR장비의 소비패턴 분석을 통한 MLP 기반의 AES 복호화 방법을 순서대로 도시한 플로우 차트
도 5는 일실시예에 따른 AES가 탑재된 AVR장비의 소비패턴 분석을 통한 MLP 기반의 AES 복호화 방법에 적용된 학습 모델을 설명하기 위한 도면
도 6은 도 5의 학습 모델로 소비전력을 학습한 결과를 보여주는 도면
도 1은 일실시예에 따른 AES가 탑재된 AVR장비의 소비패턴 분석을 통한 MLP 기반의 AES 복호화 방법을 개념적으로 설명하기 위한 도면이다.
도 1에 도시된 바와 같이, 일실시예의 AES 복호화 방법은 기존의 관리 정보처리장치(200)가 다수의 상이한 AVR장비(100)에 대한 AES암호화된 전력정보를 분석할 경우, 각각의 AVR장비(100)로부터 AES암호를 제공받아 복호화함으로써, 안정적으로 AVR장비의 전력을 분석하는 것을 전제로 한다.
이때, 상기 AES 암호 알고리즘은 예를 들어, AES-128 알고리즘을 사용한다.
일반적으로, AES-128 알고리즘은 대칭키 블록 암호 방식으로 AddRoundKey, SubBytes, ShiftRows, MixColumns 함수로 구성되며, 평문이 입력되면 각 함수가 반복 수행되고 여러 라운드가 동작되며, 연산에 사용되는 키는 키 스케줄(Key Schedule)을 통해 다음 평문 블록 시에 사용될 키를 생성한다.
그리고, 일실시예에 따른 AES 복호화 방법에 적용되는 AES 암호 알고리즘의 방어기술로 랜덤화 방법을 사용한다. 이때 상기 랜덤화 방법은 스크램블러(scrambler)와 디스크램블러(de-scrambler)를 활용하기에 회로가 단순하면서도 차분전력분석(DPA, Differential Power Analysis) 방어에 효과적으로 적용된다.
이러한 경우, 상기 차분전력분석 방어는 키/서브키 랜덤화와, 평문/라운드 입력값 랜덤화를 적용한다.
참고적으로, 상기 스크램블러는 데이터 통신에서 모뎀 송출 데이터의 “0” 연속시에 수신단에서 클럭 동기 복구가 어렵기에, 송출데이터의 랜덤화를 위하여 제안된 것이다. 그리고, 이에 따라 통신장비의 수신단에서는 디스크램블러로 역변환시킨 다음 데이터를 모뎀으로 입력시키게 된다.
이러한 상태에서, 일실시예에 따라 상기 AES 복호화 방법은 기본적으로 AES 암호는 영향을 줄 수 있기 때문에 security에 영향이 없도록 구현과정에만 반영하고, 송·수신 암호에는 적용을 하지 않는다. 이러한 특성을 통해 암호 알고리즘의 성능저하는 없으며, 전력분석공격에 대한 안전성을 제공할 수 있도록 한다.
이를 위해, 일실시예에 따른 AES 복호화 방법은 AES가 탑재된 하드웨어를 대상으로 마이크로컨트롤러의 소비전력을 측정하고 AI를 사용하여 올바른 비밀키를 평균적으로 90%이상 적중하는 성능을 보이는 시스템이다. 그리고, 여기에서 사용된 AI는 딥러닝 분야에서 MLP(Multi Layer Perceptron)로 입력된 값은 소비전력과 추측 가능한 모든 비밀키이며, 출력은 가장 높은 확률로 추측되는 올바른 비밀키다.
구체적으로는, 이러한 AES 복호화 방법은 AVR장비의 전력을 분석할 경우, AVR하드웨어의 소비전력을 측정하여 AI 범주에 해당하는 MLP를 사용하여 범용적으로 사용되는 암호 알고리즘인 AES의 비밀키를 알아낸다.
보다 상세하게, 이러한 AES 복호화 방법은 아래와 같이 이루어진다.
먼저, 상기 AES 복호화 방법은 AES 암호 알고리즘의 평문과 비밀키가 XOR연산을 수행하는 시점 또는 각 함수들에 대한 부분을 이벤트발생시점 즉, 공격시점으로 설정하고 오실로스코프를 사용하여 ARM, AVR 등의 그라운드로 누설되는 전류의 변화를 측정한다. 그리고 나서, 측정한 데이터의 종류에 대해서는 AES에서 사용할 수 있는 모든 키를 사용하여 다양한 샘플을 획득한다. 이후 비밀키별로 획득한 소모전력 패턴을 설계한 MLP모델의 학습 데이터로 사용하고 학습을 완료시킨다.
이후 공격목표와 동일한 제품에 AES를 탑재한 모든 제품을 대상으로 전력을 측정하고 학습된 모델을 통해 분석함으로써, 곧바로 AES의 비밀키를 사용한 것으로 추정된 값을 출력한다.
추가적으로, 이러한 AES 복호화 방법은 이러한 경우에 비밀키와 추측키가 올바른 약 90%로의 성공률을 높이기 위해 일정한 구간을 나누어 추정된 키가 연속되면 해당 구간을 비밀키로 확정하여 출력한다.
따라서, 이를 통해 일실시예에 따른 AES 복호화 방법은 알려진 대부분의 암호 알고리즘과 마찬가지로 별도의 전력분석공격에 취약함을 보인 AES 알고리즘에 방어기술을 적용하여 전력분석공격이 가능함을 확인하는 목적을 달성한다.
도 2는 일실시예에 따른 AES가 탑재된 AVR장비의 소비패턴 분석을 통한 MLP 기반의 AES 복호화 방법이 적용된 시스템을 전체적으로 도시한 도면이다.
도 2에 도시된 바와 같이, 일실시예에 따른 시스템은 여러 곳에 위치한 다수의 상이한 AVR장비(100-1, 100-2~100-n)와, 각 장비(100-1, 100-2~100-n)의 전력정보를 일실시예에 따른 학습 모델로 AES복호화해서 전력분석하는 관리 정보처리장치(200)를 포함한다.
추가적으로, 일실시예의 시스템은 상기 관리 정보처리장치(200)를 통해 전력분석이 될 경우에 전력분석 결과에 따라 관련된 정보 예를 들어, 전력고장 정보 등을 제공받는 전력관리기관 정보처리장치와, 경찰기관 정보처리장치, 고장수리처 정보처리장치를 포함한다.
상기 다수의 상이한 AVR장비(100-1, 100-2~100-n)는 멀리 떨어진 상이한 곳에 위치하여 일정한 전력을 공급할 경우, 상기 관리 정보처리장치(200)로 자신의 전력정보를 즉, AES암호화된 전력정보를 제공해서 자신의 전력에 대한 정상 여부 등을 분석하도록 한다. 이러한 경우, 상기 다수의 상이한 AVR장비(100-1, 100-2~100-n)는 이렇게 전력정보가 제공될 시에 자가망을 통해 미리 등록된 관리 정보처리장치(200)와 미리 설정된 통신 프로토콜에 따라 연결을 수행함으로써, 전체적으로 전력정보가 일괄 보내진다. 참고적으로, 여기에서 사용되는 통신 프로토콜은 일반적인 기술에 속하는 것으로 상세한 설명은 생략한다.
상기 관리 정보처리장치(200)는 상기 다수의 상이한 AVR장비(100-1, 100-2~100-n)로부터 AES암호화된 전력정보가 제공될 경우, 미리 설정된 전력분석 포맷으로부터 각각의 AVR장비에 대한 전력정보를 분석해서 사용 중인 전력의 정상 여부 등을 확인한다. 이러한 경우, 상기 관리 정보처리장치(200)는 일실시예에 따라 이러한 전력정보가 분석되기 전에, 전력정보에 암호화된 AES정보를 일실시예에 따른 학습 모델에 의해 복호화함으로써, AES 알고리즘에 방어기술이 적용될 수 있도록 한다. 이때, 상기 학습 모델은 AES의 평문과 비밀키 XOR 연산시점 또는 각 함수 부분을 이벤트발생시점으로 해서 전류변화 정보를 획득하고 AES의 각 키별로 전류변화 유형을 대응해서, 다수의 상이한 비밀키별로 소비전력 패턴을 생성한 MLP모델의 학습 데이터로 학습하여 된다(보다 구체적인 설명은 아래에서 계속함).
도 3은 도 2의 시스템에 적용된 관리 정보처리장치의 구성을 도시한 블록도이다.
도 3에 도시된 바와 같이, 일실시예의 관리 정보처리장치(200)는 다수의 상이한 AVR장비(100)로부터 AES암호화된 전력정보를 수신하는 통신부(201)와, 전술한 학습 모델로 복호화하는 복호화부(202) 및 복호화된 결과로 전력을 분석하는 제어부(203)를 포함한다.
그리고, 일실시예에 따른 관리 정보처리장치(200)는 추가적으로 상기 전력이 분석될 경우에 상기 학습 모델을 포함한 관리 정보를 등록한 데이터베이스(204)와, 이러한 전력 분석과 관련된 관리자의 요청정보를 입력받는 키신호 입력부(205)를 포함한다.
상기 통신부(201)는 다수의 상이한 AVR장비(100)에 대한 전력을 분석할 경우, 각각의 AVR장비(100)로부터 AES암호화된 전력정보를 수신하여 통합적으로 AVR장비(100) 각각의 전력정보를 수집한다. 그리고, 이러한 경우 상기 통신부(201)는 이렇게 전력정보가 수집된 경우, 미리 설정된 통신 프로토콜에 따라 수신된 전력정보를 분석하여 실제 전력정보를 추출한다. 참고적으로, 상기 통신 프로토콜은 원격지의 장비를 모니터링하는데 사용되는 종래의 것으로, 예를 들어 IoT 또는 지그비 등을 이용한다.
상기 복호화부(202)는 상기 통신부(201)를 통해 AVR장비(100)의 AES암호화된 전력정보가 추출될 경우, 이러한 AES암호화에 대응되는 복호화 포맷으로부터 AES암호를 복호화하여 정상적으로 권한이 부여된 관리자에 한해서 전력분석이 이루어질 수 있도록 한다. 그리고, 이에 더하여 일실시예에 따라 상기 복호화부(202)는 이렇게 복호화가 될 경우, 전술한 일실시예의 학습 모델에 의해 복호화함으로써, AES 알고리즘에 방어기술이 적용될 수 있도록 한다. 구체적으로는, 상기 복호화부(202)는 AES암호화된 전력정보가 추출될 경우에 각각의 AES암호화된 전력정보에 대해서 먼저 현재의 상이한 비밀키별로의 소비전력 패턴을 산출하여 이 비밀키별로의 소비전력 패턴에 의해 상기 학습 모델을 적용해서 비밀키를 추정한다. 그래서, 상기 복호화부(202)는 복호화를 할 경우, 이러한 비밀키로부터 복호화 동작을 수행함으로써, 알려진 대부분의 암호 알고리즘과 마찬가지로 별도의 전력분석공격에 취약함을 보인 AES 알고리즘에 방어기술을 적용한다.
상기 제어부(203)는 상기 복호화부(202)를 통해 전력정보가 복호화될 경우, 이러한 결과로부터 AVR장비(100)의 전력을 미리 설정된 전력분석 포맷에 의해 분석해서 정상 여부 등을 확인한다.
상기 데이터베이스(204)는 AVR장비(100)의 전력을 분석할 경우에, 각각의 AVR장비 정보와 사용되는 AES의 각 키에 따른 일실시예의 학습 모델을 포함한 정보에 대해서 미리 등록을 상기 제어부(203)의 제어에 의해 수행하여 구비한다.
도 4는 일실시예에 따른 AES가 탑재된 AVR장비의 소비패턴 분석을 통한 MLP 기반의 AES 복호화 방법을 순서대로 도시한 플로우 차트이다.
도 4에 도시된 바와 같이, 일실시예의 AES 복호화 방법은 먼저 관리 정보처리장치가 다수의 상이한 AVR장비에 대한 AES암호화된 전력정보를 분석할 경우, 각각의 AVR장비로부터 AES암호를 제공받아 복호화해서, 안정적으로 AVR장비의 전력분석함을 전제로 한다.
이러한 상태에서, 일실시예에 따른 AES 복호화 방법은 이렇게 AES암호화된 전력정보를 복호화할 경우, 미리 AES의 평문과 비밀키 XOR 연산시점 또는 각 함수 부분을 이벤트발생시점으로 해서 전류변화 정보를 획득하고 AES의 각 키별로 전류변화 유형을 대응해서, 다수의 상이한 비밀키별로 소비전력 패턴을 생성한 MLP모델의 학습 데이터로 학습하여 학습 모델을 등록한다(S401~S404).
그리고 나서, 이러한 AES암호화된 전력정보가 제공될 경우(S405), 각각의 AES암호화된 전력정보에 대해서 현재의 상이한 비밀키별로의 소비전력 패턴을 산출하여 추출한다(S406).
그래서, 이렇게 추출된 비밀키별로의 소비전력 패턴에 의해 상기 학습 모델을 적용해서 비밀키를 추정한다(S407).
따라서, 이를 통해 일실시예에 따른 AES 복호화 방법은 알려진 대부분의 암호 알고리즘과 마찬가지로 별도의 전력분석공격에 취약함을 보인 AES 알고리즘에 방어기술을 적용해서 전력분석공격이 가능함을 확인하는 목적을 달성한다.
이상과 같이, 일실시예는 AVR장비의 AES암호화된 전력정보를 복호화할 경우, 전술한 일실시예에 따른 학습 모델에 의해서 복호화가 이루어짐으로써, 범용적으로 사용되는 암호 알고리즘인 AES의 비밀키를 파악하여 AES복호화를 이루어낸다.
보다 구체적으로는, 상기 AES의 비밀키를 파악하는 것은 AVR장비의 전력을 분석할 경우, AVR하드웨어의 소비전력을 측정하여 AI 범주에 해당하는 MLP를 사용하여 이루어진다.
그리고, 이러한 경우 일실시예는 상기 학습 모델이 아래와 같이 이루어진다.
즉, AES의 평문과 비밀키 XOR 연산시점 또는 각 함수 부분을 이벤트발생시점으로 해서 전류변화 정보를 획득하고 AES의 각 키별로 전류변화 유형을 대응해서, 다수의 상이한 비밀키별로 소비전력 패턴을 생성한 MLP모델의 학습 데이터로 학습하여 된다.
따라서, 이를 통해 알려진 대부분의 암호 알고리즘과 마찬가지로 별도의 전력분석공격에 취약함을 보인 AES 알고리즘에 방어기술을 적용해서 전력분석공격이 가능함을 확인하는 목적을 달성한다.
한편, 추가적으로 다른 실시예에 따른 AES 복호화 방법은 이렇게 전력분석에 대한 안정성을 제공하면서도, 전력분석이 될 경우에 복호화에 대한 성능은 그대로 유지하여 안정된 전력분석 환경을 제공할 수 있도록 한다.
구체적으로는, 연산결과의 차이가 없어 기존의 암호환경을 사용할 수 있는 특성을 가지며, 암호 알고리즘의 성능저하는 없으면서도 안정된 전력분석이 이루어질 수 있도록 한다.
이를 위해, 이러한 AES 복호화 방법은 아래와 같이 이루어진다.
a) 즉, 상기 AES암호화는 키 값이 1비트 단위로 입력될 때마다, 스크램블러에 의해 값을 변화하여 키스케줄 과정에 입력해서 키/서브키를 랜덤화한다.
b) 그리고, 평문 값이 1비트 단위로 입력될 때마다 스크램블러로 값을 변화하여 평문/라운드 입력값과 배타적 논리합시켜, 평문/라운드 입력값을 랜덤화한다.
그래서, 이러한 상태에서 전술한 일실시예에 따라 비밀키 추정이 될 경우, 상기 랜덤화 결과로부터 비밀키를 상기 키스케쥴에 따라 상기 학습 모델로서 순차적으로 적용해서 추정한다.
따라서, 이를 통해 상기 AES 복호화 방법은 이러한 전력분석이 될 경우, 이러한 구성으로부터 복호화에 대한 성능이 그대로 유지됨으로써, 연산결과의 차이가 없어 기존의 암호환경을 사용하면서, 암호 알고리즘의 성능저하는 없이 안정된 전력분석이 이루어진다.
또한, 이에 더하여 상기 AES 복호화 방법은 전술한 바와 관련하여 향상된 효과를 얻을 수 있도록 아래의 구성을 더 포함한다.
보다 상세하게는, 상기 AES 복호화 방법은 전술한 환경이 될 경우, 라운드에 대해 아래의 구성을 가짐으로써, 향상된 효과를 얻는다.
구체적으로는, 상기 라운드는,
a) 반복적인 구조로서, 반복이 될 때마다 AES암호화된 데이터를 갱신한다.
b) 그리고, 상기 갱신된 AES암호화된 데이터의 보상 데이터를 구비한다.
c) 또한, 상기 갱신된 AES암호화된 데이터의 해밍 거리와 상기 보상 데이터의 해밍 거리는 합이 미리 설정된 값으로 일정하도록 한다.
다른 한편으로는, 또 다른 실시예에 따른 AES 복호화 방법은 이러한 시스템 환경 하에서 보안관리를 위해 아래의 구성을 더 구비한다.
구체적으로는, 이러한 AES 복호화 방법은 상기 다수의 상이한 AVR장비가 해시트리를 기준으로 하위의 해시값과 메시 네트워킹으로 구성하여 전력정보를 상기 관리 정보처리장치에 제공한다.
그리고, 상기 관리 정보처리장치는 상기 전력정보의 복호화가 될 경우, 상기 해시트리의 상위 해시값을 저장하여 다수의 상이한 AVR장비별로 해시값을 연결해서 해당하는 해시노드를 구성함으로써, 보안관리한다.
도 5는 일실시예에 따른 AES가 탑재된 AVR장비의 소비패턴 분석을 통한 MLP 기반의 AES 복호화 방법에 적용된 학습 모델을 설명하기 위한 도면이다.
도 5에 도시된 바와 같이, 일실시예에 따른 학습 모델은 먼저 AES의 평문과 비밀키가 XOR연산을 수행하는 시점 또는 각 함수들에 대한 부분을 공격시점으로 설정하고 오실로스코프를 사용하여 ARM, AVR 등의 그라운드로 누설되는 전류의 변화를 측정했다.
그리고, 측정한 데이터의 종류는 AES에서 사용할 수 있는 모든 키를 사용하여 다양한 샘플을 획득한다. 이후 비밀키별로 획득한 소모전력 패턴을 설계한 MLP모델의 학습 데이터로 사용하고 학습이 완료되도록 한다.
도 6은 도 5의 학습 모델로 소비전력을 학습한 결과를 보여주는 도면이다.
도 6에 도시된 바와 같이, 도 5의 학습 모델로 소비전력을 학습한 결과는 타켓이 되는 동일한 제품에 AES를 탑재한 모든 제품을 대상으로 전력을 측정하고 학습된 모델을 통해 분석하면 곧바로 AES의 비밀키를 사용한 것으로 추정된 값을 출력한다.
그리고, 실험에서 비밀키와 추측키가 올바른 성공률은 약 90%로 성공률을 높이기 위해 일정한 구간을 나누어 추정된 키가 연속되면 해당 구간을 비밀키로 확정하여 출력한다.
100 : AVR장비 200 : 관리 정보처리장치
201 : 통신부 202 : 복호화부
203 : 제어부 204 : 데이터베이스
205 : 키신호 입력부

Claims (4)

  1. 관리 정보처리장치가 다수의 상이한 AVR(Advanced Virtual RISC)장비에 대한 AES(Adavanced Encryption Standard)암호화된 전력정보를 분석할 경우, 각각의 AVR장비로부터 AES암호를 제공받아 복호화함으로써, 안정적으로 AVR장비의 전력을 분석하는 방법에 있어서,
    상기 전력정보를 복호화할 경우, 미리 AES의 평문과 비밀키 XOR 연산시점 또는 각 함수 부분을 이벤트발생시점으로 전류변화 정보를 획득하고 AES의 각 키별로 전류변화 유형을 대응해서, 다수의 상이한 비밀키별로 소비전력 패턴을 생성한 MLP(Multi Layer Perceptron)모델의 학습 데이터로 학습하여 학습 모델을 등록하는 제 1 단계;
    상기 전력정보가 제공될 경우, 각각의 전력정보에 대해서 현재의 상이한 비밀키별로의 소비전력 패턴을 산출하여 추출하는 제 2 단계; 및
    상기 추출된 비밀키별로의 소비전력 패턴에 의해 상기 학습 모델을 적용해서 비밀키를 추정하는 제 3 단계; 를 포함하는 것을 특징으로 하는 AES가 탑재된 AVR장비의 소비패턴 분석을 통한 MLP 기반의 AES 복호화 방법.
  2. 청구항 1에 있어서,
    상기 AES암호화는,
    a) 키 값이 1비트 단위로 입력될 때마다, 스크램블러에 의해 값을 변화하여 키스케줄 과정에 입력해서 키/서브키를 랜덤화하고,
    b) 평문 값이 1비트 단위로 입력될 때마다 스크램블러로 값을 변화하여 평문/라운드 입력값과 배타적 논리합시켜, 평문/라운드 입력값을 랜덤화하고,

    상기 제 3 단계는,
    상기 비밀키 추정이 될 경우, 상기 랜덤화 결과로부터 비밀키를 상기 키스케쥴에 따라 상기 학습 모델로서 순차적으로 적용해서 추정하는 것; 을 특징으로 하는 AES가 탑재된 AVR장비의 소비패턴 분석을 통한 MLP 기반의 AES 복호화 방법.
  3. 청구항 2에 있어서,
    상기 라운드는,
    a) 반복적인 구조로서, 반복이 될 때마다 AES암호화된 데이터를 갱신하고,
    b) 상기 갱신된 AES암호화된 데이터의 보상 데이터를 구비하고,
    c) 상기 갱신된 AES암호화된 데이터의 해밍 거리와 상기 보상 데이터의 해밍 거리는 합이 미리 설정된 값으로 일정한 것; 을 특징으로 하는 AES가 탑재된 AVR장비의 소비패턴 분석을 통한 MLP 기반의 AES 복호화 방법.
  4. 청구항 1에 있어서,
    상기 다수의 상이한 AVR장비는,
    해시트리를 기준으로 하위의 해시값과 메시 네트워킹으로 구성하여 전력정보를 상기 관리 정보처리장치에 제공하고,

    상기 관리 정보처리장치는,
    상기 전력정보의 복호화가 될 경우, 상기 해시트리의 상위 해시값을 저장하여 다수의 상이한 AVR장비별로 해시값을 연결해서 해당하는 해시노드를 구성함으로써, 보안관리하는 것; 을 특징으로 하는 AES가 탑재된 AVR장비의 소비패턴 분석을 통한 MLP 기반의 AES 복호화 방법.
KR1020200162507A 2020-11-27 2020-11-27 Aes가 탑재된 avr장비의 소비패턴 분석을 통한 mlp 기반의 aes 복호화 방법 KR102505081B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200162507A KR102505081B1 (ko) 2020-11-27 2020-11-27 Aes가 탑재된 avr장비의 소비패턴 분석을 통한 mlp 기반의 aes 복호화 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200162507A KR102505081B1 (ko) 2020-11-27 2020-11-27 Aes가 탑재된 avr장비의 소비패턴 분석을 통한 mlp 기반의 aes 복호화 방법

Publications (2)

Publication Number Publication Date
KR20220075094A true KR20220075094A (ko) 2022-06-07
KR102505081B1 KR102505081B1 (ko) 2023-03-02

Family

ID=81987045

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200162507A KR102505081B1 (ko) 2020-11-27 2020-11-27 Aes가 탑재된 avr장비의 소비패턴 분석을 통한 mlp 기반의 aes 복호화 방법

Country Status (1)

Country Link
KR (1) KR102505081B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100772550B1 (ko) * 2006-05-11 2007-11-02 경북대학교 산학협력단 전력분석공격에 안전한 메시지 블라인딩 방법
KR20110060570A (ko) * 2009-11-30 2011-06-08 한국전자통신연구원 부채널 분석기의 분석 방법
KR102072335B1 (ko) * 2019-08-14 2020-01-31 동서대학교 산학협력단 스크램블러를 이용한 aes 암호 알고리즘에 대한 전력분석공격 방어기술 적용방법
KR102169369B1 (ko) * 2019-10-31 2020-10-23 국민대학교산학협력단 경량 블록 암호화에 대한 1차 부채널 공격에 대응하는 방법 및 이를 이용한 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100772550B1 (ko) * 2006-05-11 2007-11-02 경북대학교 산학협력단 전력분석공격에 안전한 메시지 블라인딩 방법
KR20110060570A (ko) * 2009-11-30 2011-06-08 한국전자통신연구원 부채널 분석기의 분석 방법
KR102072335B1 (ko) * 2019-08-14 2020-01-31 동서대학교 산학협력단 스크램블러를 이용한 aes 암호 알고리즘에 대한 전력분석공격 방어기술 적용방법
KR102169369B1 (ko) * 2019-10-31 2020-10-23 국민대학교산학협력단 경량 블록 암호화에 대한 1차 부채널 공격에 대응하는 방법 및 이를 이용한 장치

Also Published As

Publication number Publication date
KR102505081B1 (ko) 2023-03-02

Similar Documents

Publication Publication Date Title
CN102685093B (zh) 一种基于移动终端的身份认证系统及方法
Cohney et al. Pseudorandom black swans: Cache attacks on CTR_DRBG
Bordel et al. Data authentication and anonymization in IoT scenarios and future 5G networks using chaotic digital watermarking
CN108259407B (zh) 一种基于时间戳的对称加密方法及系统
Paterson et al. Plaintext recovery attacks against WPA/TKIP
US11588627B2 (en) Systems and methods for utilizing quantum entropy in single packet authorization for secure network connections
KR101134217B1 (ko) 보안정책의 암호화 방법 및 그 방법을 구현하는침입탐지시스템
US11316831B2 (en) Partition-based prefix preserving anonymization approach for network traces containing IP addresses
Qasaimeh et al. Software randomness analysis and evaluation of lightweight ciphers: the prospective for IoT security
Mousavi et al. Security of Internet of Things using RC4 and ECC algorithms (case study: smart irrigation systems)
Cherifi et al. A practical implementation of unconditional security for the IEC 60780-5-101 SCADA protocol
Yao et al. Enhancing RC4 algorithm for WLAN WEP protocol
Huang et al. A secure communication over wireless environments by using a data connection core
Guo et al. Enabling privacy-preserving header matching for outsourced middleboxes
CN112003868B (zh) 一种基于白盒加密的智能家居系统安全通信方法
Liu et al. A data-aware confidential tunnel for wireless sensor media networks
KR102505081B1 (ko) Aes가 탑재된 avr장비의 소비패턴 분석을 통한 mlp 기반의 aes 복호화 방법
CN103249035A (zh) 无线传感网络数据加密传送方法
CN109698743A (zh) 一种基于消息填充漏洞的分组密码加密密文数据恢复方法
Bao et al. A data partitioning and scrambling method to secure cloud storage with healthcare applications
KR102308248B1 (ko) 양자난수 기반의 양자암호화칩이 탑재된 비화게이트웨이 및 이를 이용한 IoT디바이스간 비화통신 서비스 제공방법
Jin et al. Breaking real-world COTS USIM cards with unknown side-channel countermeasures
Kapusta et al. Secure data sharing with fast access revocation through untrusted clouds
Muthavhine et al. An application of the khumbelo function on the camellia algorithm to prevent attacks in iot devices
Jiang et al. Practical algorithm substitution attacks on real-world public-key cryptosystems

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant