본문 바로가기

보안 연구/Side_Channel_Attack

[ChipWhisperer tutorial] Simple Power Analysis Tutorials. Timing Analysis with Power for Password Bypass

이번 tutorial은 Password의 우회에 대한 Power를 사용하여 Timing을 분석하는 방법이다.

 

This tutorial will introduce you to breaking devices by determining when a device is performing certain operations. It will use a simple password check, and demonstrate how to perform a basic power analysis.

Note this is not a prerequisite to the tutorial on breaking AES. You can skip this tutorial if you wish to go ahead with the AES tutorial.

 

이번 tutorial은 장치가 operation을 수행할 때를 결정하는 것으로부터 device를 공격하는 방법을 소개한다. 간단한 password를 check하는 방법을 사용하여 기본적인 power를 분석하는 방법을 알아보자. (Firmware와 Setup은 생략한다.)

 

1. Scopes and Platforms

[Figure.1] Parameter block

 

2. Communicating With The Target

As was mentioned at the beginning of the tutorial, the firmware we loaded onto the target implements a basic password check. After getting a '\n' terminated password, the target checks it and enters an infinite loop, so before communicating with it, we'll need to reset it.

 

We'll be doing this a lot, so we'll define a function that resets the target (this function is also available by running "Helper_Scripts/Setup.ipynb" as we did above):

 

a basic password check를 구현하는데, \n으로 종료된 password를 확인 후 무한 loop에 들어가므로 communication 전 에 reset해야 한다. 이번 tutorial에서 이러한 것을 많이 수행하기 때문에 target을 reset하는 function을 정의한다. [Figure.2]는 이러한 target을 reset하는 function을 정의하는 code이다.

 

[Figure.2] The function that resets the target

현재 실습에서는 PLATFORM을 CWLITEARM을 사용하므로 else 구문을 실행한다.