사자자리
[암호학] 암호학이란? (cf. 인코딩) 본문
커리큘럼의 목표
- 암호학을 공부해본 적 없는 분들에게 암호학을 넓고 얕게 알려드리는 것
- 실제 상용 프로그램에 쓰이는 암호 알고리즘의 특징 이해하기
- 안전한 서비스를 개발하기 위해 어떤 암호 기술을 사용해야 하는지 이해하기
암호학(Cryptography)
- 정보를 보호하기 위한 언어학적 및 수학적 방법론을 다루는 학문
- 정수론, 대수학, 확률론 등 다양한 수학 이론에 기반하므로 자세한 이해를 위해 대학 수준의 수학 지식이 필요할 수 있다.
- 좁은 의미: 제삼자로부터 정보를 보호하는 방법에 대한 연구
- 넓은 의미: 수신자와 송신자가 서로의 신원을 확인하는 방법, 메세지가 중간에 조작되지 않았음을 보증하는 방법 등을 연구
암호 시스템(Cryptosystem)
- 암호화와 복호화로 정보가 전달되는 체계
- 키 생성(Key Generation): 암호화 및 복호화에 사용할 키를 만드는 과정
- 암호화(Encryption): 키를 이용해 평문(Plaintext)을 암호문(Ciphertext)로 변환하는 과정
- 복호화(Decryption): 송신자가 전송한 암호문을 수신자가 키를 이용해 평문으로 변환하는 과정
암호학의 필요성
- 컴퓨터에 대한 의존도가 높아졌다.
- 네트워크를 통해 민감한 정보가 빈번하게 오간다.
인코딩(Encoding)
- 암호화와 유사하게 데이터를 다른 형태로 변환하는 것
- 암호화와 달리, 데이터의 기밀성을 고려하지 않으며 누구나 디코딩하여 원문을 구할 수 있다.
- 데이터를 숨기기 위해서 보다는, 크기를 줄이거나 컴퓨터가 이해하기 쉬운 형식으로 변형하려고 사용한다.
- 인코딩의 예시 중 하나는 압축이다.
'Dreamhack > 암호학 Cryptography' 카테고리의 다른 글
[암호학] 블록 암호: AES (0) | 2022.08.06 |
---|---|
[암호학] 블록 암호: DES (0) | 2022.08.06 |
[암호학] 현대 암호 (0) | 2022.07.31 |
[암호학] 고전 암호 (0) | 2022.07.31 |
[암호학] 배타적 논리합과 합동식 (0) | 2022.07.24 |
Comments