CS & SW & IT 용어

[양방향, 단방향 암호화]란 무엇인가

Haksae 2022. 1. 30. 00:04
정의
- 평문(Plaintext) : 해독 가능한 형태의 메시지(암호화전 메시지)
- 암호문(Cipertext) : 해독 불가능한 형태의 메시지(암호화된 메시지)
- 암호화(Encryption) : 평문을 암호문으로 변환하는 과정
 - 복호화(Decryption) : 암호문을 평문으로 변환하는 과정
- 전자서명
  - 송신자의 Private Key로 메시지를 서명하여 전달
  - 수신자측에서는 송신자의 Public Key를 이용하여 서명값을 검증
암호화는 평문을 특정 key를 이용해 해독할 수 없는 형태로 변경하는 것을 뜻한다.
암호화 기법에는 크게 양방향과 단방향 암호화가 있는데,
평문을 암호화 한 암호문을 반대로 복호화 할 수 있는지 여부에 따라서 양방향, 단방향이 나눠진다.

[양방향 암호화]

양방향 암호화는 암호화된 데이터에 대한 복호화가 가능한 암호화 방식을 말한다.
  • 암호화된 암호문을 복화화 할 수 있는 방법에 따라 대칭키와 비대칭키로 나뉜다.
  • 대칭키 (비공개키) 암호화
    • 암/복호화에 동일한 키를 사용하는 암호화 방식이다.
    • 따라서 키가 노출되면 안되므로 공개를 하지 않는디. 그리하여 비공개키라 부른다.
    • 장점 : 속도가 빠르다.
    • 단점 : 키 배송 위험성이 존재하여 송신 측에서 수신 측에 암호 키를 전달하는 과정에서 노출 우려가 존재한다.

  • 비대칭키(공개키) 암호화
    • 암/복화화에 다른 키를 사용하는 암호화 방식이다.
    • 노출시켜선 안되는 privita key / 노출시켜도 상관없는 키를 public key라고 한다.
    • 보통의 경우 데이터를 중요하게 다뤄야하는 서버 측에서 private key를 사용하고, 누구나 사용해야하는 클라이언트 측에서 public key를 사용한다.
    • 장점 : 키 배송의 문제를 근본적으로 차단하여 안정성이 높다.
    • 단점 : 대칭키 방식에 비해서 느리다.

[단방향 암호화]

단방향 암호화는 암호문을 평문으로 복호화 할 수 없는 기법을 의미한다.
  • Hash를 이용하여 암호화를 진행한다.
  • hash할 때, hash 값은 크기와 알고리즘에 따라 암호문의 결과가 완전 상이하다.
  • 한번 암호화되면 복호화가 되지 않기 때문에, 비밀번호와 같은 종류의 데이터를 관리할 때 유용하게 사용된다.
  • 장점 : 복호화를 할 수 없기 때문에 보안에 유리하다.
  • 단점 : 다시 되돌릴 수 없다.
  • 단방향 Hash 알고리즘 (참고로 MD-5는 뚫렸다...)
알고리즘 분류 알고리즘명 MD 길이 블록 길이 최대 메시지 길이
MD5 MD5 128bit 512bit 무한
RIPEMD RIPEMD-160 160bit 512bit 2^64-1bit
SHA-1 SHA-1 160bit 512bit 2^64-1bit
SHA-2 SHA-224 224bit 512bit 2^64-1bit
SHA-2 SHA-256 256bit 512bit 2^64-1bit
SHA-2 SHA-384 384bit 1024bit 2^128-1bit
SHA-2 SHA-512 512bit 1024bit 2^128-1bit
SHA-3 SHA-2와 디자인이 달리짐      

 

암호화 총정리

 

참고

https://javaplant.tistory.com/26

https://velog.io/@kho5420/bcrypt-jwt-%EC%96%91%EB%B0%A9%ED%96%A5-%EC%95%94%ED%98%B8%ED%99%94-%EB%8B%A8%EB%B0%A9%ED%96%A5-%EC%95%94%ED%98%B8%ED%99%94