암호화
1
영화 ‘이미테이션 게임’은 제2차 세계 대전 당시 ‘컴퓨터 과학의 아버지’라고 불리는 앨런 튜링(Alan Turing)이 독일군의 암호 체계인 ‘에니그마(Enigma)’를 해독하기 위해 분투하는 이야기를 그린 영화이다.
24시간마다 암호 체계가 바뀌는 ‘에니그마’ 해독을 위해 앨런 튜링은 ‘봄브(bombe)’라는 기계를 개발하며, 결국 독일군의 암호 해독에 성공한다.
데이터 중에는 전쟁 암호와 마찬가지로 누군가에게 유출되지 않아야 하는 중요한 데이터가 있다. 특히 데이터 활용이 폭발적으로 증가하고 있는 오늘날, 중요한 정보를 안전하게 보호하기 위한 암호화 기술의 역할이 더욱 커지고 있다.
2
제2차 세계 대전이 가져온 암호화 기술의 발전!
실생활에서 암호화되어 있는 데이터는 어떤 곳에서 사용하고 있을까?
3
3
3
3
암호화의 이해
암호화의 개념
① 암호화의 의미
4
• 암호화의 개념을 이해할 수
있다.
• 암호화와 복호화의 과정을 설
명할 수 있다.
② 암호 시스템의 구성 요소
5
01. 암호화의 이해
③ 암호화와 복호화 과정
6
01. 암호화의 이해
정보보호의 3원칙
•기밀성(Confidentiality): 특정 정보에 대해 허가된 사용자 또는 대상에 대해서만 접근이 가능해야 한다. 허가받지 않은 사용자 혹은 대상에 대해서는 접근이 되지 않아야 하며, 접근이 된다면 기밀성이 충족되지 않은 것이다.
•무결성(Integrity): 특정 정보에 대해 허가된 사용자 또는 대상에 대해서만 수정 및 삭제가 가능해야 한다. 허가받지 않은 사용자 혹은 대상이 특정 정보를 수정 및 삭제할 수 없어야 하며, 수정 및 삭제가 이루어진다면 무결성이 충족되지 않은 것이다.
•가용성(Availability): 특정 정보에 대해 허가된 사용자 또는 대상에 대해서는 필요시 항상 접근 및 사용이 가능해야 한다. 접근 및 사용이 불가하다면 가용성이 충족되지 않은 것이다.
④ 암호화의 기능
7
01. 암호화의 이해
인증 어떤 실체가 그 실체가 맞는지 확인하는 것을 말한다. 메시지가 위변조된 것이 아닌지 확인하거나 시스템에 접속한 사용자가 정상적인 사용자인지 확인하는 과정이 인증에 해당한다.
암호 기법의 종류
① 치환형 암호 기법
8
01. 암호화의 이해
② 전치형 암호 기법
9
01. 암호화의 이해
③ 비밀키 암호 기법
10
01. 암호화의 이해
④ 공개키 암호 기법
11
01. 암호화의 이해
⑤ 해시를 이용한 암호 기법
12
01. 암호화의 이해
해시 함수 가변 길이의 데이터를이용하여 고정 길이의 해시 값을 생성하는 함수로 같은 입력 값에 대해서는 같은 출력 값을 보장한다. 해시 값만으로는 원본 데이터를 복원할 수 없으므로 단방향 암호 기법이라 하며, 비밀번호, 전자 서명, 전자 상거래와 같은 입력값의 무결성을 검증할 때 주로 사용된다.
•MD5: 128비트 암호화 해시 함수로 주로 프로그램이나 파일이 원본 그대로인지를 확인하는 무결성 검사 등에 사용된다. 현재는 많은 취약점이 발견되어 보안 관련 용도의 사용은 권장되지 않는다.
•SHA: 해시 암호화 알고리즘의 모음을 말한다. 미국 국가안보국(NSA)이 1993년에 처음으로 설계했으며 SHA-0부터 시작하여 SHA-1, SHA-2, SHA-3 등으로 변형되어 왔다.
카이사르 암호 구현하기
▶ 나의 설정:
caesar_cipher( ‘ ’ , )
▶ 설정한 내용의 의미: 알파벳을 � ( 왼쪽 / 오른쪽 ) 으로 ( )칸 이동시킨다.
▶ 코드를 실행한 결과
13
intelligence
-5
5
diozggdbzixz
치환형과 전치형 암호 기법 적용하기
모둠에서 사용할 암호 기법을 치환형과 전치형 중에서 선택한 후 암호키를 정해 보자.
다른 모둠에 전달할 메시지를 작성해 보자.
14
치환형 암호 기법을 이용하기로 하고, 왼쪽으로 7글자씩 이동시키기로 한다.
This too shall pass
암호 기법을 활용하여 메시지를 암호화한 후 다른 모둠에 암호문을 공유해 보자.
다른 모둠으로부터 전달받은 암호문을 복호화하여 메시지의 의미를 해석해 보자. 그리고 어떤 모둠의 암호문이 가장 복호화하기 어려웠는지, 이유가 무엇이었는지 등 활동 소감을 나누어 보자.
15
This too shall pass
Mabl mhh latee itll
암호화의 활용 사례
16
암호화를 활용하여 데이터를
안전하게 관리하는 사례를
탐색할 수 있다.
BitLocker Wi-Fi의 송출 신호에 대한 보안을 위해 고안된 패킷 암호화 방식(Wi-Fi Protected Access)
SSL/TLS 인터넷을 통해 전송되는 데이터를 암호화하는 프로토콜이다. SSL/TLS는 인증, 암호화, 무결성을 보장하여 안전한 보안 채널을 생성한다.
17
17
17
17
17
18
02. 암호화의 활용 사례
WPA3 Wi-Fi의 송출 신호에 대한 보안을 위해 고안된 패킷 암호화 방식(Wi-Fi Protected Access)
HTTPS 웹 환경에서 텍스트와 하이퍼링크 정보를 주고받기 위해 개발된 HTTP 프로토콜의 보안을 강화시킨 프로토콜로 SSL/TLS를 통해 인터넷에서 전송되는 데이터를 암호화하여 안전한 연결을 제공한다.
암호화의 중요성과 필요성 생각해 보기
내가 사용하는 디지털 기술에서 암호화가 활용되는 사례를 찾아 분석해 보자.
19
의료 분야
사물 인터넷
웹 사이트(HTTPS)
환자 주민 번호, 바이오 정보, 진료 정보 등
사물 인터넷 기기가 수집하여 전송하는 데이터
웹 서비스 이용을 위해 전송되는 개인 정보
의료 기관에서 다루는 각종 민감 정보의 유출은 심각한 인권 침해를 유발할 수 있다.
사물 인터넷 기기가 다루는 데이터가 유출되면 사생활 침해 문제가 생길 수 있다.
웹에서의 보안 사고, 데이터 유출은 파급력이 커 막대한 피해를 일으킬 수 있다.
은행에서 관리하는 금융 데이터가 유출되면 대규모 경제 피해가 생길 수 있다.
데이터를 암호화하지 않았을 때 어떤 일이 발생할지 또 암호화가 왜 중요한지에 대해 모둠별로 토의해 보자.
생활 속에서 데이터를 안전하게 관리하고 보호하기 위한 실천 계획을 수립해 보자.
20
- 데이터 유출로 인해 개인 정보 침해, 사생활 침해가 발생할 수 있다.
- 데이터에 의도하지 않은 변조가 발생하여 데이터 무결성이 침해될 수 있다.
- 안전한 데이터 관리가 보장되지 않으면 데이터에 대한 신뢰가 낮아져 데이터 산업의 발전을 저해한다.
- 데이터 시대에서 개인의 안전과 인권 보호를 위한 장치로서 중요한 역할을 한다.
- 디지털 환경에서의 데이터 유출은 상상 이상의 막대한 피해를 유발할 수 있다.
- 데이터를 처리하는 기관이나 기업에 대한 신뢰가 보장되려면 안전한 데이터 관리가 선행되어야 한다.