대칭 키 암호화는 유사한 키를 사용하여 메시지를 암호화하고 해독하는 일종의 암호화 방식입니다. 이러한 데이터 인코딩 접근 방식은 정부와 군대 간의 비밀 통신을 용이하게 하기 위해 지난 수십 년 동안 주로 사용되었습니다.
대칭 키 암호화는 공유 키, 비밀 키, 단일 키, 단일 키 및 궁극적으로 개인 키 암호화라고 합니다. 이러한 형태의 암호화를 사용하면 키를 공유한 발신자와 수신자 모두에게 알려야 합니다. 이 접근 방식의 복잡성은 키의 배포입니다.
대칭 키 암호화 체계는 일반적으로 스트림 암호 또는 블록 암호와 같이 분류됩니다. 스트림 암호는 한 번에 단일 비트(바이트 또는 컴퓨터 워드)에서 작동하고 키가 반복적으로 변경되도록 일종의 피드백 구조를 실행합니다.
블록 암호는 각 블록에서 동일한 키를 사용하여 한 번에 하나의 정보 블록을 암호화하기 때문에 소위 블록 암호입니다. 일반적으로 동일한 평문 블록은 블록 암호에서 유사한 키를 사용할 때 동일한 암호문으로 계속 암호화되지만 동일한 평문은 스트림 암호에서 다른 암호문으로 암호화됩니다.
블록 암호는 다음과 같은 여러 모드 중 하나로 작동할 수 있습니다. -
-
ECB(Electronic Codebook) 모드는 가장 간단한 애플리케이션이며 공유 키를 사용하여 평문 블록을 암호화하여 암호문 블록을 형성할 수 있습니다. 두 개의 동일한 일반 텍스트 블록이 항상 동일한 암호문 블록을 생성합니다. 이것이 블록 암호의 가장 일반적인 모드이지만 여러 무차별 대입 공격에 영향을 받습니다.
-
CBC(Cipher Block Chaining) 모드는 암호화 방식에 피드백 구조를 삽입합니다. CBC에서 평문은 암호화 전에 이전 암호문 블록과 배타적 논리합(XOR)됩니다. 이 모드에는 유사한 암호문에 대해 두 개의 동일한 평문 notencrypt 블록이 있습니다.
-
CFB(Cipher Feedback) 모드는 자체 동기화 스트림 암호로서의 블록 암호 구현입니다. CFB 모드를 사용하면 블록 크기보다 작은 단위로 데이터를 암호화할 수 있으며, 이는 대화형 터미널 입력 암호화를 비롯한 일부 애플리케이션에서 유용할 수 있습니다. 1바이트 CFB 모드를 사용하는 경우.
들어오는 각 문자는 블록, 암호화 및 전송된 블록과 비슷한 크기의 시프트 레지스터에 있습니다. 수신측에서는 암호문을 해독하고 블록의 더 많은 비트를 버립니다.
-
OFB(Output Feedback) 모드는 동기 스트림 암호와 개념적으로 동일한 블록 암호 구현입니다. OFB는 평문 및 암호문 비트스트림 모두에 독립적인 내부 피드백 구조를 사용하여 유사한 평문 블록이 동일한 암호문 블록을 만드는 것을 방지합니다.