Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 파이썬
- 파이썬배열
- 정처기
- bottomnavigation
- 파이썬예제
- 엑티비티
- 안드로이드
- 자바연산자
- 운영체제목적
- 안드로이드스튜디오
- 정처기운영체제
- 코딩
- 스누핑
- androidstudio
- int크기
- 운영체제종류
- 백준
- 코딩공부
- 바텀네비게이션
- 파이썬리스트
- 데이터베이스
- java
- 자바예제
- 자바
- 파이썬배열예제
- 정보처리산업기사
- 컴퓨터일반
- 업다운게임코드
- 정처산기
- 파이썬공부
Archives
- Today
- Total
발전을 위한 기록
[정보보안] Diffie-Hellman(디피헬만) 키 교환 알고리즘 본문
728x90
Diffie-Hellman 알고리즘은 대칭키 배송 문제 해결 방법 중 하나입니다.
두 사람이나 시스템 간에 안전하게 통신하기 위해 비밀 키를 안전하게 교환하는 데 사용합니다.
Diffie-Hellman(디피-헬만) 알고리즘이란?
대칭키(비밀키)를 안전하게 교환하기 위한 알고리즘 중 하나입니다.
공개키 암호 시스템의 한 종류로서, 통신에 사용되는 공개 키와 개인 키를 생성하고 교환하여 통신의 안전성을 보장합니다.
Diffie-Hellman 알고리즘의 작동원리
1. 소수와 원시근 선택
- 두 통신 당사자가 함께 사용할 큰 소수(P)와 원시근(G)를 선택합니다.
- 두 통신 당사자는 서로 소수(P)와 원시근(G)를 공개합니다.
소수 선택 조건
- 충분히 큰 소수를 선택해야 합니다.
- 큰 소수를 선택함으로써 해킹 시도를 어렵게 만들어 보안성을 높일 수 있습니다.
원시근 선택 조건
- G가 P의 원시근이여야 합니다.
- 원시근의 거듭제곱이 P로 나누어 떨어지지 않는 모든 다른 수를 만들어야합니다.
- 선택한 원시근 G를 사용하여 G의 1승부터 G의 P-1승까리 계산 했을떄, 이 값들이 P로 나누어 떨어지면 안됩니다.
- 나누어 떨어지면 키 교환에 사용되는 숫자가 예측 가능해집니다.
2. 개인 키 생성
- 각 통신 당사자는 개인 비밀 키 (x,y)를 선택합니다.
- 개인키 x,y는 소수 P와 서로소인 수여야 합니다.
3. 공개 키 생성
- 각 당사자는 선택한 소수(P)와 원시근(G)를 사용하여 공개 키를 계산합니다.
4. 비밀 키 생성
- 각 당사자는 상대방의 공개 키와 자신의 개인 키를 사용하여 공동으로 비밀 키를 생성합니다.
- 둘의 비밀 키 값이 동일하면 최종적으로 공유되는 대칭키가 됩니다.
5. 비밀 키 교환
- Alice는 Bob에게 비밀 키 Ka를 보냅니다.
- Bob은 Alice에게 비밀 키 Kb를 보냅니다.
6. 암호화와 복호화
- Alice와 Bob은 안전하게 공유된 비밀키를 사용하여 메시지를 암호화하고 복호화할 수 있습니다.
예제
Alice와 Bob은 소수(P)를 23으로 그 소수의 원시근(G) 5를 사용하여 디피헬만 알고리즘을 사용하여 비밀키를 공유하기로 했습니다. Alice의 개인 키는 6이고, Bob의 개인키는 15입니다. 이때 최종적으로 얻어지는 비밀 키의 값은 얼마입니까?
풀이
비밀 키 값이 모두 2이므로, 최종적으로 얻어지는 비밀 키의 값은 2입니다.
728x90
'정보보안' 카테고리의 다른 글
[정보보안] 공개키 암호 알아보기 : 정의, 키의 개수, 종류 (0) | 2024.05.07 |
---|---|
[네트워크보안] 전송계층(TCP, UDP) (0) | 2022.05.01 |
[네트워크보안]OSI 7계층 (0) | 2022.03.25 |
[네트워크 보안] 네트워크 분류(LAN, PAN, WAN, MAN) (0) | 2022.03.15 |
[정보보호] 정보보안 3요소 (0) | 2022.02.28 |