일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 레지스터
- 아두이노
- 네트워크
- 네오플
- 던파
- 네트워크보안
- 반도체 취업
- 아두이노우노
- 반도체
- 컴퓨터구조
- 유니티
- 인터럽트
- neople
- MLAgent
- Unity
- 메타마스크
- 게임기획
- 반도체 엔지니어
- 메모리
- 이더리움
- 면접
- 머신러닝
- 에러
- 암호화
- 보안
- 유니티에러
- memory
- MuchineRunning
- 던전앤파이터
- 아두이노함수
- Today
- Total
Dreaming Deve1oper
Cryptography_Symmetric Key 본문
■ Symmetric / Single key: sender와 reciever가 하나의 동일한 키를 가져야한다는 의미
- sender가 암호화하여 보낸것을 Decryption(복호화) 가능.
- 암호화 할 경우와 복호화를 진행할 경우 둘 다 Key가 필요하지만 동일하기에 하나의 키만 사용하는 것.
Security Objectives (보안의 기본적인 목적)
Confidentality [기밀성]: 메시지, 파일의 내용을 숨김. (암호화, 복호화와 연관↑) 나랑 통신하려고 의도되어 있는 사람만 메시지를 볼 수 있음.
└ Secret Key, public key encryption
Integrity [무결성]: 수정 및 변경된 내용을 감지.
└ Hash function
Availability [가용성]: 데이터의 존재 여부 숨김이 적음. 서비스의 fail을 유도. (도스, 디도스)
└ Secret Key, public key encryption
Authenticity [인증성]: 대칭키냐 비대칭키냐에 따라 인증을 처리.
└ Public Key encryption
Non-repudiation [부인방지]
└ Public Key encryption
Cryptanalysis (암호해석)
■ 암호해석의 목적
- Break message
- Break key
- Break algorithm
※일반적으로 사용되는 Crypto algorithm은 오픈소스이다.
※정보를 Secure하게 보호하는 것은 Crypto algorithm에서 진행하는 것이 아닌 사용하는 Key의 기밀성, 안정성에 의해 이루어진다.
Taxonomy of Attacks (분류체계 공격)
- Ciphertext-only attack: Attacker has ciphertext for messages encrypted with key (deduce keys and plaintext messages)
- Known plaintext attack: Attacker additionally knows the plaintext of the messages (deduce keys or decryption algorithm)
- Chosen plaintext attack: Attacker can obtain the ciphertext for selected plaintext messages (deduce keys or a decryption algorithm)
- Chosen ciphertext attack: Attacker can obtain decrypted versions of select ciphertext (deduce keys decryption algorithm)
Breakable vs Practically breakable
- Unconditionally secure: 암호를 해독할 수 없다. 암호문의 양이 암호 분석가가 평문을 얻을 수 없도록 한다.
- Computationally secure: 최악의 경우에 시나리오를 기반으로 깨지지 않는 알고리즘.
- Breakable: 모든 알고리즘은 이론적으로 깨진다. (OTP 제외/물리적은 sync를 통해 이루어지기 때문)
사람이 만든 Secure syestem은 100% 안전할 수 없다.
단 데이터를 공격할 경우 연산하는 시간이 오래 걸리느냐 적게 걸리느냐가 중요한 것.
└ 연산할 때 100일이 걸렸고, Key change가 30일마다 이루어진다면, 공격은 실패한 것이고 결국 이는 Secure한 것.
■ Whay makes a good Cryptosystem?
훌륭한 암호 시스템은 알고리즘의 보안이 아닌, 키에 의존하는 보안 시스템이다.
'네트워크 보안' 카테고리의 다른 글
Key Distribution (0) | 2021.10.16 |
---|---|
Cryptography_Symmetric Key_3 (0) | 2021.10.16 |
Cryptography_Symmetric Key_2 (0) | 2021.10.13 |
암호화 (0) | 2021.10.11 |
정보 보호의 정의와 3원칙 (0) | 2021.10.10 |