티스토리 뷰
암호학(cryptography)는 조작되지 않은 숨겨진 정보가 허가된 사람에게만 공개할 수 있는 방법을 뜻한다. 정보를 보호하기 위한 방법론인 것이다. 기밀성(confidentiality), 무결성(integrity), 인증(authentication) 의 요소를 가지고 있다. 기밀성은 숨겨진 정보, 무결성은 조작되지 않은 정보, 인증은 허가된 사람을 의미한다. 암호화 되지 않은 글을 평문(plain text)라고 한다. 평문을 암호화한 것을 암호문(cipher text)라고 한다. 평문을 암호문으로 만드는 과정을 암호화, 암호문을 평문으로 만드는 과정을 복호화라고 한다.
단방향 암호화
데이터의 무결성을 위하여 사용되며 암호화는 가능하지만 복호화는 불가하다. 대표적인 알고리즘이 해시(hash) 알고리즘이다. 같은 데이터라면 해시 알고리즘을 통해 암호화를 하면 결과 값이 같다.
hash generator
양방향 암호화
암호화와 복호화를 키(key)를 가지고 진행하는 방식이다.
대칭키 방식
같은 키를 가지고 암호화와 복호화를 진행한다.
개인이 가지고 있는 자료에서 대칭키 양방향 암호화를 사용하는 것은 괜찮지만, 보안의 위험성 때문에 대칭키 방식으로 데이터를 주고 받는 것은 위험하다. 해석하려면 키가 필요하기 때문에 다른 사람에게 데이터를 전해줄 때, 키도 전달해주어야 한다. 키가 누출되면 데이터의 정보도 누출되는 것이다.
비대칭키 방식
공개키(public key)와 비공개키(private key)의 key pair를 가지고 암호를 관리한다. 공개키로 암호화를 한다면 비공개키로 복호화를 해야하고, 비공개키로 암호화를 했다면 공개키로 복호화를 해야한다.
위와 같이 A가 비대칭키 방식으로 비공개키와 공개키를 만들어 공개키를 공개한다. 그럼 B가 공개키를 사용하여 암호문을 만들고 A에게 암호문을 전달한다. 공개키와 암호문이 공개되지만 비공개키로만 암호문을 복호화할 수 있기 때문에 공개키와 암호문이 유출되더라도 암호문이 복호화되지 않는다. 데이터의 기밀성을 유지할 수 있다.
비공개키로 암호화를 한다면 그와 짝을 이루는 공개키로 복호화가 가능하다. 데이터가 조작되지 않은 A의 데이터임을 전자서명으로 확인하고 싶을 때 사용할 수 있다. B가 받은 A의 암호문을 A가 공유한 공개키로 복호화 하였을 때, 평문이 일치한다면 그것은 A가 작성한 자료임을 확인할 수 있다. 데이터의 인증을 확보할 수 있다.
정리
암호화와 복호화, 단방향과 양방향 암호화 방식에 대해 정리하였다. 보안을 유지하기 위한 암호학의 기본 개념들이다.
출처 : 생활코딩 암호학 강의를 듣고 정리한 내용입니다.
'Others' 카테고리의 다른 글
Git, Github 명령어 - 로컬, 리모트 브랜치 관리 (0) | 2021.03.24 |
---|---|
컴퓨터 용어사전 - Docker를 설치하며 찾아본 용어들 (0) | 2021.01.28 |
정규표현식 (Regular Expressions) (0) | 2020.12.27 |
- Total
- Today
- Yesterday
- Transaction
- 객체지향
- Spring
- React
- TCP/IP
- 알고리즘
- 모의면접준비
- CS
- 카카오
- javascript
- 우아한테크코스
- 회고
- 마스터즈코스
- python
- java
- JPA
- TIL
- 우테코수업
- 글쓰기미션
- 내부코드
- 개발공부일지
- 네트워크
- 운영체제
- DB
- JS
- 인증
- 월간회고
- OS
- 코드스쿼드
- 학습로그
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |