1. 암호학
- 기밀성
- 무결성
- 내용이 조작되거나 홰손되지 않고 원본과 같아야 한다.
- 인증
- 권한이 있는 사람만 내용에 접근 할 수 있어여 한다.
2. 기본 개념
1) 평문 (plain text) :
- 평문은 일반적으로 암호화되지 않고 전송 또는 저장된 데이터를 의미한다. 원문이라고도 한다.
2) 암호문 (cipher text) :
- 암호 알고리즘을 이용하여 평문에 수행한 암호화의 결과이다.
3) 암호 알고리즘 (cryptography algorithm) :
- 키 (key) 를 통해서 평문과 암호문을 암호화, 복호화 시키는 알고리즘이다.
- 암호화 (encryption) : 평문을 암호문으로 만듬
- 복호화 (decrytion) : 암호문을 평문으로 만듬
3. 단방향 암호화 방식
- 암호화는 가능하지만 복호화는 안되는 방식
- 무결성을 생각하면 가장 좋은 방식
- 사용되는 대표적인 알고리즘:
CRC,MD5,RIPEMD160,SHA-1,SHA-256,SHA-512
- HASH : 데이터를 특정한 암호 알고리즘으로 데이터를 조각내어서 원본을 알 수 없게 만드는 방식
- HASH를 사용하는 예
- 무결성을 체크할때
- 전자서명 할때
- 파일의 식별자 정할때
- 사용자의 비밀번호를 서버에 저장할때
- 블록체인 기술이 적용되는 코인을 채굴할때
4. 양방향 암호화 방식
1) 대칭키 방식
- 암호화 할때와 복호화 할때 하나의 키 (key)를 사용한다
- AES, Serpent, Twofish, Blowfish, RC4, DES, IDEA ...
- 개인적으로 쓴다면 상관없지만, 타인에게 정보를 전달할때 원치 않은 타인에게 키 (key)가 탈취 당할 위험이 생긴다.
2) 비대칭키 방식
- 키 (key)를 공개키(public key) 와 비공개키(private key) 두 개를 만들어 관리하는 방식
- 원하는 상대방의 공개키(public key)를 받아 암호문을 전달한다.
- 전달 중에 원치 않은 타인에게 공개키(public key)가 탈취당해도 공개키(public key)로는 복호화가 불가능하여 보안에 문제가 없다. (비공개키(private key)는 절대 유출 NO)
- 전자서명 :
올린 파일(평문)이 제작자 본인이 맞는지 확인하는 방법
- 비공개키(private key)으로 평문을 암호화 시켜 전자서명으로 만든 뒤 평문에 붙여 전달한다.
- 전달된 전자서명은 공개키(public key)로 복호화하게 되면 평문의 내용과 일치한다.
- 따라서 크랙커가 속인 파일을 받았을 때 대처 할 수 있게 된다.
5. 권고 되는 암호 알고리즘
