What is Security?
Security 는 Confidentiality, Integrity, Availability 3가지로 균형잡혀 있다.
Cryptographic Objectives
암호학의 목적은 무엇일까?
Threats Exposure of data -> Tampering with data -> Impersonation -> Exposure of personal information -> Identification of individual -> Denial of service -> Forbidden access -> |
Goal Confidentiality Integrity Authentication Privacy Anonymity Availability Authorization |
- Confidentiality
기밀성이란 정보를 다른 사람이 접근할 수 없도록 감싸거나 보호하는 방식이다.
encryption 을 사용하여 기밀성을 유지할 수 있다.
- Integrity
송수신되는 정보의 내용이 추가, 삭제, 변경, 지연 되지 않도록 보호되어야 하는 성질이다.Cryptographic Hash, SHA, Message Authentication Code 를 사용해서 무결성을 유지할 수 있다.
- Authentication
사용자임을 식별할 수 있다는 것을 의미한다.digital signature 을 통해 인증성을 확인할 수 있다.
- Non-Repudiation
Sender가 Receiver에게 어떤 정보를 보냈는데, 나중에 그런 정보를 보낸 적 없다며 자신이 한 일을 부인하는 것을 말합니다.
따라서 digital signature(who) + notarization(what, where) 로 이를 증명할 수 있다.
- Privacy
자신에 대한 정보를 다른 사람들에게 선택적으로 공개할 수 있는 권리를 뜻한다.
- Anonymity
익명성이란 개인이 다른 사람들과 구별되지 않는 것으로, 식별할 수 없는 상태를 뜻한다.
- Authorization
이용자가 자원에 접근할 수 있는 올바른 권리를 확인 및 부여하는 것이다.access control 이란 label, date/time, IP address, domain 등을 통해 인증된 장치를 제한할 수 있는 것이다.
- Availability
허가받지 않는 대상들이 정보에 접근하는 것을 방지하고, 허가된 대상들만 접근할 수 있도록 하는 것이다.Cryptography 만으로는 Dos 공격을 막을 수 없다. 따라서 Cryptography 와 다른 기술들(Backup, Redundancy, Traffic Monitoring and Analysis, Redirectrion) 들이 필요하다.
Cryptology
cryptology 란 단어는 암호학이란 뜻으로, 그리스어로 hidden word 라는 뜻을 가진다.즉, 암호학은 특정 단어의 기밀성과 보안성을 위해 뜻을 숨기는 것이다.암호학은 암호화 기법인 Cryptography 와 암호해독 기법인 Cryptanalysis 로 나뉜다.
- Cryptography
Plaintext 의 의미를 숨기는 다양한 방법론이다.cipher 란 plaintext 를 ciphertext 로 변환하는 함수이다.
- Cryptanalysis
ciphertext 로부터 plaintext 를 결정하는 과정 -> 암호해독 을 뜻한다.
Encyprtion/Decryption
- Encryption : Plaintext -> Cipher text C = E(M, K) // 메세지와 key 가 input, Ciphertext 가 output
C : Ciphertext, E : Encryption, M : message, K : Key
- Decryption : Cipher text -> PlaintextM = D(C,K) // Ciphertext 와 key 가 input, 메세지가 output
- Kerckhoffs Principle
- cipher 의 security 는 cipher 의 알고리즘의 기밀성을 지키는데 의존하는 것이 아니라 오직 key 의 기밀성을 지키는데 의존해야 한다.
- Attacker 는 key 를 제외한 E, D 알고리즘을 추측할 수도 있다.
- Symmetric Encryption
암호화와 복호화에 같은 key 를 사용하는 알고리즘이다.
- Assymetric Encryption
암호화와 복호화에 서로 다른 key 를 이용하는 알고리즘이다.
공개키를 이요해서 암호화하고, 공개키에 해당하는 개인키를 이용해 복호화한다.
Message Authentication/Hashing
요구사항
1. H(M) 은 계산하기 쉬워야 한다.
2. Preimage Resistance
H(x) 가 주어졌을 때 M을 찾아내기 어려워야한다. 즉, 역추적이 어려워야 한다.
3. Collision Resistance
H(M1) = H(M2) 인 M1 이 주어졌을 때 다른 M2 를 찾는 것이 어려워야한다. (Weak)
H(x) = H(x') 가 되는 x'≠x 를 찾는 것이 어려워야한다. (Strong)
4. Avalanche Effect
값이 조금만 바뀌어도 많은 변화가 있어야 한다. 즉, 연관성을 알지 못하도록 해야한다.1-bit 의 변화가 50% 에 가까운 bit 변화를 도출해낸다.
Digital Signature
송신자가 자신의 비밀키로 암호화한 메시지를 수신자가 송신자의 공용키로 해독하는 방식이다.
Randomness
대부분의 암호 시스템에선 random 생성이 요구된다.
따라서 CSPRNG 는 next-bit Test 를 통과해야 한다.
next-bit Test : k개의 bit 가 주어졌을 때, (k+1) 번째 bit 를 50% 보다 좋은 확률로 예측할 수 있으면 안된다.
'정보보안' 카테고리의 다른 글
6. Basic Mathematics for Cryptography (0) | 2021.10.31 |
---|---|
5. Conventional Cryptography Systems (0) | 2021.10.30 |
4. Theory of Secure Communication (0) | 2021.10.30 |
3. Network and Systems (0) | 2021.10.30 |
2. History of Cryptography (0) | 2021.10.30 |
댓글