오늘의 공부 👍
오늘은 암호화의 종류, 단방향 암호화, 양방향 암호화에 대해서 알아보려고 한다.
📝 암호화
▷ 암호화를 하는 이유
암호화를 하는 이유에는 여러가지가 있을 수 있지만, 만약 DB가 해킹을 당하게 된다면 해커가 해당 DB에 저장되어 있는 데이터들을 가져갈 수 있는데, 그 데이터들로 추가 해킹을 당하는 일이 발생할 수 있습니다.
그래서 기밀성을 유지하기 위해 암호화하여 저장하는 것입니다.
▷ 암호화를 구성하는 요소
- 평문(Plaintext) - 해독 가능한 형태의 메시지(암호화전 메시지)
- 암호문(Cipertext) - 해독 불가능한 형태의 메시지(암호화된 메시지)
- 암호화(Encryption) - 평문을 암호문으로 변환하는 과정
- 복호화(Decryption) - 암호문을 평문으로 변환하는 과정
▷ 암호화의 종류
-
암호화에는 여러가지 방법이 있을 수 있습니다.
-
대표적으로 단방향 암호화와 양방향 암호화가 있는데, 단방향은 암호화 할 수는 있어도 복호화가 불가능하고, 양방향은 복호화가 가능하다는 특징이 있습니다.
-
먼저 단방향 암호화부터 알아보겠습니다
▷ 단방향 암호화
- 해싱(Hashing)을 이용한 암호화 방식
- 평문을 암호문으로 암호화는 가능하지만 암호문을 평문으로 복호화 하는 것은 불가능.
- 해시란 원본 데이터를 매핑 시켜 완전히 다른 암호화된 데이터로 변환시키는 것이다.
- 해시에 의해 암호화된 데이터를 다이제스트(digest)라고 합니다.
▷ 양방향 암호화
- 대칭형 암호화와 비대칭형 암호화가 있습니다.
- 암호문을 평문으로로 복호화 할 수 있는 암호화 기법입니다.
- 암호화 된 문자열을 복호화 하기 위해선 암호화 할 때 사용했던 키와 같은 것을 사용해야 합니다.
출처 및 참고
코드캠프