컴퓨터 개론 √ 원리를 알면 IT가 맛있다 쉽게 배우는 컴퓨터 기본 원리 한빛미디어 교재출판부.

Slides:



Advertisements
Similar presentations
10-7 부동소수점 (Floating-Point) 계산  컴퓨터에서 숫자를 표기하는 방법  가수 (Fraction) : 부호화된 고정소수점 숫자 지수 (Exponent) : 소수점의 위치를 표시 ( 예 )10 진수 를 표기하면 Fraction Exponent.
Advertisements

1/29 키보드로 직접 입력할 수 없는 다양한 기호와 한자를 입력하는 방법을 알아 보자. 또한 블록으로 영역을 설정하는 여러 가지 방법에 대해 살펴본 후 블록 으로 설정된 내용을 복사하여 붙여넣거나, 잘라내고 이동하는 방법에 대해서 도 알아보자. 02_ 문서의 입력과 편집.
Chapter | 4 암호화 기술 Ⅱ암호화. ❖ 암호  통신문의 내용을 제 3자가 판 독할 수 없는 글자 · 숫 자 · 부호 등으로 변경 시킨 것 2/16 암호? 철수 영희 Plaintext attack attack ? ? Cryptography 개방통신로 모레 3.
최성락 최인석 나주한. 특징 : 공개키 n, g 를 사용하여 키 분배가 가능. (g 는 Zn 의 primitive element) Discrete logarithm 에 기반. 두 명 이상의 경우에도 적용가능. 키 교환 없이도.
1 08 배열. 한국대학교 객체지향연구소 2 C 로 배우는 프로그래밍 기초 2 nd Edition 배열  동일한 자료유형의 여러 변수를 일괄 선언  연속적인 항목들이 동일한 크기로 메모리에 저장되는 구조  동일한 자료 유형이 여러 개 필요한 경우에 이용할 수 있는.
파워포인트 2007.
B4-1.
Excel 일차 강사 : 박영민.
암호-4장. 공개키 암호 ㅎㅎ 정보보호 기능의 가장 핵심적 기술인 암호를 다룬다. 흥미로운 암호의 역사를 소개하고, 고전적인 암호체계로부터 현대적인 디지털 암호체계에 이르는 기술의 발전을 살펴보고 현대의 고급 암호분석 기법을 소개한다. 한빛미디어(주)
6 장. ER-관계 사상에 의한 관계 데이터베이스 설계
5장 Mysql 데이터베이스 한빛미디어(주).
교과목 소개 정보보호.
Chapter 02 순환 (Recursion).
File Depender 중간 발표.
공개키 암호화 프로그래밍 전자상거래보안.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
Error Detection and Correction
정보화 사회와 컴퓨터 보안.
멀티미디어 시스템 (아날로그 이미지,신호를 디지털로 변환 방법) 이름 : 김대진 학번 :
Chap 4. 공개키 암호.
Homework #5 (1/3) 다음을 수행한 후, 결과 파일들을 출력하여 제출한다.
6장. printf와 scanf 함수에 대한 고찰
2007 1학기 11 프로젝트 기초 실습.
제9장 공개키 암호 (I) Public-key Cryptography
5장 Mysql 데이터베이스 한빛미디어(주).
11장. 1차원 배열.
암호화 및 인증.
Ⅲ. 이 차 방 정 식 1. 이차방정식과 그 풀이 2. 근 의 공 식.
전자상거래 보안 (암호학과 네트워크보안) ) Chul Ho Rhee
프로그래밍 개요
어서와 C언어는 처음이지 제14장.
5. Context-free 문법 5-1. 서 론 5-2. 유도와 유도 트리 5-3. CFG표기법.
자료구조: CHAP 7 트리 –review 순천향대학교 컴퓨터공학과 하 상 호.
Java의 정석 제 5 장 배 열 Java 정석 남궁성 강의 의
Quiz #7 다음 수들을 합병 정렬과 퀵 정렬 알고리즘을 이용하여 오름 차순으로 정렬하였을 때, 데이터 이동 회수를 각각 구하라. 여러분은 정렬 과정을 단계별로 보이면서 이동 회수를 추적해야 한다. 단, 퀵 정렬시에 피봇으로 배열의 왼쪽 첫 번째 원소를 선택한다. 5.
☆ASCII☆ 김연주.
Term Projects 다음에 주어진 2개중에서 한 개를 선택하여 문제를 해결하시오. 기한: 중간 보고서: 5/30 (5)
연산자 (Operator).
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
3D 프린팅 프로그래밍 05 – 반복패턴 만들기 강사: 김영준 목원대학교 겸임교수.
16 장 네트워크 보안 : 방화벽과 VPN 16.1 개요 16.2 기밀성 16.3 전자 서명 16.4 인터넷 보안
Choi Seong Yun 컴퓨터 프로그래밍 기초 #06 : 반복문 Choi Seong Yun
Chapter 02. 자바 기본 문법.
1. 2진 시스템.
비대칭 암호화 알고리즘 공개키 암호화 알고리즘 소속 : 한세사이버보안고등학교 조장 : 안도현
빌드 성공.
균형이진탐색트리 이진 탐색(binary search)과 이진 탐색 트리(binary search tree)와의 차이점
디버깅 관련 옵션 실습해보기 발표 : 2008년 5월 19일 2분반 정 훈 승
제 15 강 문자와 코드 shcho.pe.kr.
수동 설치시는 설치 방법 1. 두번에 설치 CD 속에 fscommand 폴더 밑에 Osstem 이라는 폴더를
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
2장 PHP 기초 PHP의 시작과 끝을 이해한다. 주석문에 대하여 이해한다. echo 문을 이용하여 화면에 출력하
DA :: 퀵 정렬 Quick Sort 퀵 정렬은 비교방식의 정렬 중 가장 빠른 정렬방법이다.
SPL3D Printer If 조건문.
컴퓨터 구성요소와 사용 컴퓨터 문서 작업 인터넷 활용
쉽게 배우는 알고리즘 2장. 점화식과 점근적 복잡도 분석
Chapter 10 데이터 검색1.
12 그리드 시스템.
세션에 대해 알아보고 HttpSession 에 대해 이해한다 세션 관리에 사용되는 요소들을 살펴본다
1장. 시저의 암호.
상관계수.
(c) Byoungcheon Lee, Joongbu Univ.
8장 선택 논리 II 1. 논리연산자 1.1 논리연산자 : AND (&&) 1.2 논리연산자 : OR (||)
수치해석 ch3 환경공학과 김지숙.
암호 시스템 (Crypto system) 신효철
김선균 컴퓨터 프로그래밍 기초 - 12th : 문자열 - 김선균
 6장. SQL 쿼리.
컴퓨터는 어떻게 덧셈, 뺄셈을 할까? 2011년 10월 5일 정동욱.
(Permutations and Combinations)
6 객체.
Presentation transcript:

컴퓨터 개론 √ 원리를 알면 IT가 맛있다 쉽게 배우는 컴퓨터 기본 원리 한빛미디어 교재출판부

Chapter 11. 보안과 암호화

학습목표 보안과 암호화의 개념에 대해 살펴본다. 시저 암호, 트리테미우스 암호, 비게네르 암호, 전치형 암호, 폴리비우스 암호 등 초기 암호화 방식에 대해 살펴본다. 공개키 암호화 방식에 대한 개념과 DH 비밀키 교환 방식 그리고 RSA 암호화 방식에 대해 살펴본다.

암호화 기술 Section 1: 보안과 암호화의 개요 보안 문제 발생: 해킹, 바이러스 등의 사이버 범죄나 개인정보 유출 필요 기능: 신원 확인, 정보 비밀성 유지, 무결성 유지 보안 주체 : 국가(1960년대 이전)  민간(1970년대 중반)

시저 암호 Section 2: 초기 암호화 방식 시저 암호문의 예 시저 암호의 평문 문자와 암호 문자의 관계를 나타내는 암호화 표 암호문을 해석 평문(plaintext) : 암호화되지 않은 문장 암호문(ciphertext) : 암호화된 문장 암호화 : 평문을 암호문으로 바꾸는 과정 복호화 : 암호문을 평문으로 바꾸는 과정

시저 암호 Section 2: 초기 암호화 방식 단어를 이용한 암호화 ① 단어 JEJUEDUCATION에서 반복되는 문자가 있으면 처음 나오는 문자 외에는 모두 삭제. 그러면 다음과 같이 되는데, 이것이 키가 됨 ② 윗줄에 평문 문자인 알파벳을 순서대로 쓰고, 아랫줄에 키를 첫 번째 위치부터 씀

Section 2: 초기 암호화 방식 시저 암호 ③ 키에 속하는 문자를 제외한 알파벳의 나머지 문자를 순서대로 씀 : 암호화 표 ④ 완성된 암호화 표를 이용해서 평문을 암호문으로 바꾸면 다음과 같이 된다.

시저 암호 Section 2: 초기 암호화 방식 숫자와 단어를 동시에 이용한 암호화 숫자 7과 단어 LINUXANDWINDOWS ① 단어 LINUXANDWINDOWS에서 처음 나오는 문자를 제외한 반복되는 문자를 삭제하여 단어 키를 구함. 결국 키는 7과 LINUXADWOS가 됨 ② 윗줄에 평문 문자인 알파벳을 쓰고, 아랫줄에 숫자 키인 7만큼 오른쪽으로 이동하여 단어 키를 씀

Section 2: 초기 암호화 방식 시저 암호 ③ 단어 키에서 사용된 문자를 제외한 알파벳의 나머지 문자를 순서대로 씀. 평문 문자 Z까지 채워 넣었으면 다시 A부터 시작한다. 모두 채우면 암호화 표 완성 ④ 완성된 암호화 표를 이용해서 평문을 암호문으로 변경

Section 2: 초기 암호화 방식 트리테미우스 암호

트리테미우스 암호 Section 2: 초기 암호화 방식 동작 예 문자 C : 암호표에서 암호문 첫 번째 줄을 적용하여 C가 됨 문자 P : 암호문 두 번째 줄을 적용해 Q가 됨 문자 R : 암호문 세 번째 줄을 적용해 T가 됨 이런 과정을 거치면 다음과 같은 암호문 생성

비게네르 암호 Section 2: 초기 암호화 방식 트리테미우스 암호를 한 단계 발전시킨 것으로, 트리테미우스 암호의 i 번째 문자에 i 번째 줄에 있는 암호문을 적용하는 규칙성을 벗어난 암호화 방법 동작 예 암호화키 다음 문장을 암호화

Section 2: 초기 암호화 방식 비게네르 암호

비게네르 암호 Section 2: 초기 암호화 방식 암호문 생성 문자 C : 7번째 줄의 암호문을 적용해 I가 됨 문자 P : 1번째 줄의 암호문을 적용해 P가 됨 문자 R : 11번째 줄의 암호문을 적용해 B가 됨 암호문 생성

전치형 암호 Section 2: 초기 암호화 방식 원문의 문자 위치를 바꾸어 암호문을 생성하는 방법 동작 예 다음 문장을 암호화 4×6 행렬에 가로 방향으로 문장을 나열

전치형 암호 Section 2: 초기 암호화 방식 가로 방향으로 읽지 말고, 첫 번째 열을 시작으로 세로 방향으로 읽어 표현 암호문 생성

전치형 암호 Section 2: 초기 암호화 방식 암호문을 더 해독하기 어렵게 하려면 4×6 행렬에 가로 방향으로 암호문을 나열 첫 번째 열을 시작으로 세로 방향으로 읽으면 새로운 암호문이 생성 반복해서 암호화하면 다음과 같이 더 복잡한 암호문이 생성

폴리비우스 암호 Section 2: 초기 암호화 방식 문자를 숫자로 바꾸어 표현하는 암호화 기법 폴리비우스 암호표 암호화 예 문자 f는 2행 1열에 위치하므로 21로, 문자 p는 3행 5열이므로 35로 암호화 암호화 예

폴리비우스 암호 Section 2: 초기 암호화 방식 알파벳순에 상관없이 나열하면 해독이 어려워짐 'information and communication technology'라는 문장을 이용해 만든 표 다음 문장 암호화

폴리비우스 암호 Section 2: 초기 암호화 방식 폴리비우스 암호화 방법에 전치형 암호를 결합 '43 22 12 34 31 22 34 33'에 전치형 암호를 결합하는 방법

Section 3: 공개키 암호화 방식 비밀키 암호 방식 같은 암호화키를 이용해서 암호화하고 복호화한다.

Section 3: 공개키 암호화 방식 공개키 암호 방식 공개키를 이용해서 암호화하고 비밀키를 이용해서 복호화한다.

DH 비밀키 교환 방식 Section 3: 공개키 암호화 방식 두 사용자들 사이에 만나는 번거로움 없이 비밀키를 교환할 수 있는 방식으로 스탠포드 대학의 Diffie와 Hellman에 의해 개발 동작 예 ① 철수는 큰 소수 p, 베이스 g, 지수 x1 세 수를 선택한다. 계산을 쉽게 하기 위해 p는 43, g는 17, x1은 4로 선택한다. ② 다음 공식에 의해 y1을 생성한다(‘a mod b’는 ‘a를 b로 나눈 나머지’를 의미한다). y1은 15가 된다. p, g, y1은 공개하는 값이고, x1은 노출하면 안 되는 개인적인 값이다. ③ 철수는 p(=43), g(=17), y1(=15)을 영희에게 보낸다.

트리테미우스 암호 Section 3: 공개키 암호화 방식 ④ 영희는 자신만의 지수 x2를 선택하는데, x2를 6이라 하자. 다음 공식에 의해 y2를 생성한다. y2는 35가 된다. ⑤ 영희는 다음 공식에 의해 비밀키 s를 생성하는데, s는 11이 된다. ⑥ 영희는 y2(=35)를 철수에게 보낸다. ⑦ 철수도 다음 공식에 의해 비밀키 s를 생성하는데, s는 11이 된다. 철수와 영희는 11이란 비밀 키를 사용해 암호문을 만들고 해독

RSA 암호화 방식 Section 3: 공개키 암호화 방식 ‘공개키로 암호화하고, 그와 다른 비밀 키로만 열 수 있는’ 암호화 알고리즘 MIT 공대 연구팀 소속의 세 학자 Rivest, Shamir, Adleman에 의해 개발 동작 원리 두 개의 큰 소수들의 곱과 추가 연산을 통해 공개 키와 비밀 키를 구함. 이 과정을 거쳐 키들이 생성되면 처음의 두 소수는 더 이상 중요하지 않고 버려도 무방 공개키는 모두에게 공개되는 키지만, 비밀키는 자신만이 가지고 있는 키로 남에게 공개되어서는 안 됨. 이런 비밀키는 공개 키에 의해 암호화된 메시지를 복호화하는 데 사용

Section 3: 공개키 암호화 방식 RSA 암호화 방식

RSA 암호화 방식 Section 3: 공개키 암호화 방식 공개 키와 비밀키 생성 과정 ① 적당히 비슷하고 큰 소수 p, q를 선택한다. 계산을 쉽게 하기 위해 간단한 소수 13(=p)과 11(=q)을 선택한다. ② 다음 공식에 의해 공개키 n을 생성한다. ③ 다음 공식에 의해 φ(n)를 구한다. ④ 다음 조건을 만족하는 e를 선택한다.

RSA 암호화 방식 Section 3: 공개키 암호화 방식 ⑤ 다음 조건을 만족하는 d를 선택한다(수식 e*d≡1 (mod φ(n))은 “e*d를 φ(n)로 나누었을 때 나머지가 1이 된다.”는 의미다). ⑥ {n, e}가 공개 키고, {n, d}가 비밀 키다. p, q, φ(n)은 공개되지 않도록 한다. {143, 23}이 공개키가 되고,  {143, 47}이 비밀키가 된다.

RSA 암호화 방식 Section 3: 공개키 암호화 방식 암호화와 복호화 평문 문자가 m일 때, 공개키 {n, e}를 이용해 암호 문자 c를 구하는 수식 암호 문자 c를 비밀키 {n, d}를 이용해 복호화하는 수식 철수는 문자 ‘J’를 암호화해서 영희에게 보내고, 영희는 복호화하는 과정 ① 문자 ‘J’의 아스키코드 값은 1001010(= 10진수 74)이고, 영희의 공개 키 {n, e}는 {143, 23}이므로 철수는 암호화 수식에 대입하여 암호 문 자 94를 구함

RSA 암호화 방식 Section 3: 공개키 암호화 방식 암호화와 복호화 ② 철수는 영희에게 암호 문자 94를 보냄 ③ 암호 문자 94를 받은 영희는 자신의 비밀키 {n, d}가 {143, 47}이 므로 복호화하는 수식에 대입하여 74를 구해 평문 문자 ‘J’를 얻게 됨 제3자가 암호 문자 94를 가로챈다고 해도 영희의 공개키인 {143, 23}만 가지고는 복호화할 수 없음

Thank you