데이터가 손실 변조 및 유출되는 것을 막기위해 평문을 암호문으로 바꾸는 과정.
[ 평문 ]
보호해햐할 메세지, 원본 자체
[ 암호화 :encryption ]
평문을 암호문으로 변환하는 것.
[ 복호화 :decryption ]
암호문을 평문으로 변환하는 것.
허가받은 사용자가 해당 정보에 접근할 수 있어야 한다.
허가받은 사용자가 아니면 해당 정보가 변경되지 않도록 해야 한다.
a가 키페어 생성 (public key, privatekey )
a가 내용 작성 후 privatekey를 이용해 뒤에 암오화된 메세지를 덧붙임
b가 그 내용을 공개된 퍼블릭 키로 a의 암호문을 해독하여 평문 획득
// 크래커가 자신이 생성한 퍼블릭키와 프라이빗키 키페어를 생성해서 자신의 프라이빗 키로 문서를 암호화해서 올려서
// b사용자가 해당 내용을 받았다해도 b가 가지고 있는 퍼블릭키와 크래커가 프라이빗 키로 만든 문서가 일치되지 않으므로
// 정상적인 상태가 아님을 확인할 수 있다.
특정한 비밀키를 가지고 있는 사용자만 해당 내용을 볼 수 있다.
공개키로 암호화하고 비밀키로 복호화
특정한 비밀키로 암호화함으로써 공개키를 통해 해당 내용 확인가능 / 특정한 비밀키를 가진 사용자가 해당 내용을 보냈음을 인증.
비밀키로 암호화하고 공개키로 복호화
공개키 암호 알고리즘으로는 RSA, 엘가멜(ELGamal), ECC 등이 있다. 또한, 비대칭키 방식은 인수분해, 이산대수, 타원곡선 암호화(ECDAS), 디피-헬만(Diffie-Hellman) 등이 있다.
메시지를 임의로 만들어진 비밀 키를 이용해 암호화한 다음 이 비밀 키를 다시 수신자의 공개 키로 암호화하여 메시지와 함께 전송하는 것이다. 이렇게 하면 공개 키 암호 기술로는 짧은 비밀 키만을 암호화하고 보다 효율적인 비밀 키 암호 기술로 전체 메시지를 암호화하므로 양쪽의 장점을 취할 수 있다.
// 보내는 사람은 내용을 암호화하는데 사용한 비밀키를 받는 사람의 공개키로 암호화해서 보냄 그러면 받는 사람은 자신의 비밀키로 암호화되어 있는 키를 풀고, 풀린 비밀키(=보낸사람의비밀키)와 일치하는 공개키로 전체 내용을 복호화
RSA 기반의 알고리즘
해시함수를 이용하여 암호화된 값을 생성하는 것이며 복호화가 사실상 불가능하다.
대표적인 해시함수로는 SHA-2(224/256/384/512), SHA-3, RIPEMD-160, 월풀(Whirlpool) 등이 있다
✔️ 암호화에서 키는 평문을 암호화하거나 암호문을 복호화하는데 사용되는 중요한 기능을 담당하므로 철저하게 관리되어야 한다. 키 관리 시스템(KMS: Key Management System)은 기업이 데이터를 안전하게 보관하고 사용할 수 있도록, 암호화 키의 생성, 폐기, 관리 및 통합 기능을 제공하며, 별도의 시스템에 키를 보관한다.