프로그래밍/컴퓨터보안 3

[컴퓨터 보안] PGP (Pretty Good Privacy)와 Kerberos (커버로스)

PGP (Pretty Good Privacy)PGP는 인터넷 전자우편을 암호화하고 복호화하는데 사용된다. Phil Zimmermann이라는 사람이 개발을 했는데 개발 후에 이 사람이 수출을 시도하려다 미국에 저지 당하게 된다. 하지만 결국 빼냈고 나중에 와서는 공개로 바뀌었다. 지금 보면 이것은 굉장히 멋진 아이디어라고 생각한다. 그 당시 이것이 왜 국가기밀이었는지 실감이 날 정도이다. 이런 천재적 발상을 한 개발자가 존경스럽다. 왼쪽은 Alice 오른쪽은 Bob이란 친구다. Alice는 Bob에게 기밀성을 유지하는 이메일을 보내고 싶어한다. Alice의 입장먼저 Alice는 Ks라는 대칭키를 제작한다. (이것을 Bob과 안전하게 나눠갖는 것이 목적)보내려는 메세지 m 을 Alice가 제작한 대칭키 Ks..

[컴퓨터보안] 해시 (Hash Function) 함수 보안

Hash Function임의의 긴 입력값을 적절하게 처리하여 짧은 값을 출력하는 함수.암호학에서 사용하는 해쉬 함수 : 메세지 서명, 인증, 무결성 등에 사용.디지털 서명과 결합되어 메세지 무결성을 제공하는데 효율적이다.매핑된 해시 값으로는 원래 값을 알아내기 힘들다는 것에 착안하였다. 생활 속의 Hash function ??은행 현금인출기, 신용카드 확인, 주민번호, 휴대폰 명의, 생년월일, 성인 인증 등비밀번호 분실시 휴대폰으로 인증번호를 받는 경우. 인증번호는 항상 다름 (hash function으로 생성)압축 오류 검사, 파일 다운로드 오류 검사 해쉬 함수 과정 밑에 그림이 전자 서명을 하는 과정을 간략히 나타낸 것이다. 메세지를 Hash를 돌려서(무결성, integrity) 저 체크무늬 박스가 ..

[컴퓨터보안] El Gamal (엘가말) 과 Diffie - Hellman (디피헬만) 프로토콜

El Gamal (엘 가말) RSA 알고리즘은 소인수분해가 어렵다는 점을 이용하였고 El Gamal은 이산대수의 어려움을 이용하였다. 큰 소수 p를 정하고 p보다 작은 임의의 g,x를 선택한다. 방법 :Y = g^x mod p 를 계산한다. 공개키 : Y, p, g 가 되고 비밀키 : x 가 된다.p-1과 relative prime 한 임의의 k를 정한다.암호화는 a = g^k mod p , b = M*Y^k mod p 인 (a,b)를 정한다. (M은 암호화할 값)복호화는 b/a^x mod p = y^k*M/a^x mod p = M특징은 k를 임의로 설정하기 때문에 동일한 M에 대해 매번 다르게 암호화 된다. (RSA와의 차이점) 그리고 Ciphertext는 원래 M 길이의 2배가 된다. Diffie -..