티스토리 뷰

728x90
  • 암호화 종류
양방향 암호화
암호화, 복호화 둘다 가능한 것
단방향 암호화 암호화는 가능하지만 복호화는 불가능한것.

따라서 보안이 중요시되는 시스템 암호는 대부분 단방향 암호화를 사용한다.


  • 키 종류
대칭키(비밀키) 비대칭키(공개키/개인키)
- 암호화에 사용된 키를 일반에게 공개하지 않고 개인이 비밀로 하여, 이 키를 아는자만이 볼 수 있도록 함.
- 암호화, 복호화 키가 동일
- 대표 알고리즘 : DES, SEED, 3DES, AES 등
- bit수가 적고 수행시간이 짧다
- 키 교환을 위한 안전한 매커니즘 전달 방법 필요.
-각 쌍의 사용자들마다 유일한 키가 생성되어 다수의 쌍이 존재 할 경우 키의 수가 증가된다.
-인증 기능이 없다.

- 대칭키가 가지는 키분배의 문제점을 해결. (키가 공개되어 있어 따로 분배할 필요가 없다.)
-인증기능 제공(개인키가 있으므로 - 전자 서명에 사용)
-속도가 느리다
-공개키로 비밀키를 복호화하는 것은 불가능하다
-송신자는 수신자의 공개키로 평문을 암호화 한다.
송신자는 암호화된 메시지를 상대방에게 전달한다. 메시지는 암호화되어 있으므로 전달 도중에 유출되거나 도청되도 암호문으로부터 원문을 알아내기가 어렵다.
수신자는 자신의 비밀키로 암호화된 메시지를 해독하여 평문을 얻는다
  • SSL/TLS로 예를 든 비대칭키 교환
  1. HTTPS 를 사용할 경우 웹 서버에는 RSA 기반의 공개키 인증서를 설치합니다.
  2. SSL/TLS 에서는 상대방과 키를 교환하기 위한 몇 개의 알고리즘이 있고 가장 간단한 RSA 인증서 기반 키 교환은 다음과 같이 동작합니다.
    1. 암호화 통신에 사용할 알고리즘 결정
    2. 클라이언트는 암호화 통신에 세션 키를 랜덤 함수를 사용하여 생성
    3. 클라이언트는 서버의 인증서에서 공개키를 추출
    4. 서버의 공개키를 사용하여 2에서 생성한 세션 키를 암호화하여 서버에 전달
    5. 서버는 개인키를 사용하여 데이타를 해독한 후 세션 키를 추출
    6. HTTPS 통신 시작

좀 더 자세히 알고싶다면... >>

https://gajy.tistory.com/59

 

SSL/TLS handshake

1. (client -> server) client hello client random와 클라이언트가 지원하는 protocol version, client cipher suite 리스트, SNI extension(옵션), curve 리스트(ECDHE의 경우) 전송 2. (server -> client) serv..

gajy.tistory.com


  • 해시함수

 

임의의 길이의 데이터를 고정된 길이의 데이터로 매핑하여 해시 값으로부터 원래 값을 유추하기 어렵게 설계된 함수. 해시 함수에 의해 얻어지는 값은 해시 값, 해시 코드, 해시 체크섬 또는 간단하게 해시라고 한다.

임의이 입력이 있을 경우 정해진 길이의 출력을 하는 일방향 함수(One Way function)를 의미하며 동일한 입력에 대해 동일한 출력을 내야 하며 다른 값인데 동일한 출력을 내는 경우(해시 충돌)가 극히 드물어야 한다.

유명한 알고리즘으로는 MD5(보안 문제때문에 암호용으로는 사용 되지 않음), SHA1(현재는 안전하지 않음), SHA-2(SHA256, SHA384, SHA512) 등이 있다.

암호 알고리즘에는 키가 사용되지만, 해시 함수는 키를 사용하지 않으므로 같은 입력에 대해서는 항상 같은 출력이 나오게 된다. 이러한 함수를 사용하는 목적은 입력 메시지에 대한 변경할 수 없는 증거값을 뽑아냄으로서 메시지의 오류나 변조를 탐지할 수 있는 무결성을 제공하는 목적으로 주로 사용된다.

해시 함수는 전자 서명과 함께 사용되어 효율적인 서명 생성을 가능하게 한다. 긴 메시지에 대해 서명을 하는 경우, 전체 메시지에 대해 직접 서명을 하는 것이 아니고 짧은 해쉬값을 계산해 이것에 대해 서명을 하게 된다. 공개키 연산은 많은 계산량을 필요로 하기 때문에 전체 메시지를 공개키 길이의 블록 단위로 나누어 모든 블록에 대해 서명을 하는 것은 매우 비효율적이다. 그러므로 먼저 메시지를 입력 받아 짧은 해시값을 계산하고, 이것에 대해 한 번의 서명 연산을 하는 것이다. 이 계산값은 원래의 메시지에 대한 서명으로 인정된다.

 

 

 

 

 

 

 

728x90

'환경' 카테고리의 다른 글

URL 기반 통신이 안될 때 (DNS 53포트)  (0) 2022.08.29
SSL/TLS handshake  (0) 2022.08.24
도커 읽기전용 볼륨  (0) 2022.06.08
도커 볼륨  (0) 2022.06.08
도커 네트워크 구조  (0) 2022.06.08
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/10   »
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 29 30 31