내 연락처 정보
우편메소피아@프로톤메일.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
스트림 암호를 소개하기 전에 먼저 기본 전제 지식 포인트-XOR 연산을 이해하겠습니다.
연산규칙 : 0과 같고 1과 다름
특징: 한 비트는 두 번 XOR되어 원래 비트로 복원될 수 있습니다.
일반 텍스트: 1100
키: 0101(암호화됨)
암호문: 1001
키: 0101(암호해독)
일반 텍스트: 1100
이점:이러한 가역성을 통해 암호화 및 암호 해독 변환 모두에 XOR 연산을 사용할 수 있습니다.
결점:공격자가 키를 추측하거나 캡처할 수 있으면 XOR을 통해 쉽게 암호를 해독할 수 있습니다.
XOR 연산을 암호화와 복호화에 동시에 사용할 수 있는 이유는 가역성에 있지만 보안이 전적으로 키 숨기기에 의존한다는 단점도 있습니다.
OTP(One-Time Pad)는 스트림 암호화 알고리즘으로, 구현이 몇 가지 주요 원칙을 엄격하게 따르는 경우 이론상 가장 안전한 암호화 방법 중 하나로 간주됩니다.
1. 키는 일반 텍스트만큼 길어야 합니다.: 이는 각 암호화가 암호화되는 메시지와 정확히 동일한 길이의 키를 사용함을 의미합니다.
2. 키는 실제로 무작위여야 합니다.: 키의 모든 비트는 패턴이나 예측 가능성 없이 무작위로 생성되어야 합니다.
3. 키는 한 번만 사용해야 합니다.: 여러 메시지를 암호화하는 데 동일한 키를 사용하면 안 됩니다. 그렇지 않으면 암호문 간의 상관 관계를 사용하여 메시지 내용을 추론할 수 있습니다.
4. 키는 비밀로 유지되어야 합니다: 키의 배포 및 보관은 제3자의 접근을 방지하기 위해 매우 안전해야 합니다.
이점:
결점:
사람들은 일회용 패드 암호화 알고리즘을 연구할 때 키 관리 및 길이 문제를 해결하려고 합니다. 키의 작은 부분만 제공하여 일반 텍스트 암호화를 위한 모든 키를 생성할 수 있는 방법이 있다면, 스트림 암호는 이 아이디어를 기반으로 개발되었습니다.
스트림 암호에서는 PRNG(의사 난수 생성기)를 통해 작은 키(종종 시드 또는 초기화 벡터라고 함)를 사용하여 일반 텍스트와 동일한 길이의 의사 난수 키 스트림을 생성합니다. 그런 다음 이 키스트림은 일반 텍스트와 XOR되어 암호문을 생성합니다. 마찬가지로, 암호 해독 프로세스는 동일한 키 스트림으로 암호문을 XOR하여 일반 텍스트를 복구하는 것입니다.
열쇠키스트림 생성
일반 텍스트 문자열을 비교하려면 다음 규칙을 사용하세요.
암호화하려면:
![]()
선형 피드백 시프트 레지스터는 일반적으로 의사 난수 키를 생성하는 데 사용됩니다. 여기서는 그 원칙을 다루지 않겠습니다.
암호화 및 복호화 과정은 다음과 같이 설명할 수 있습니다.
스트림 암호의 설계 원칙은 실제로 특정 보안 속성을 가진 키스트림을 생성할 수 있는 키스트림 생성기를 만드는 데 중점을 둡니다. 키 스트림 시퀀스에는 다음 속성이 있어야 합니다.
거대한 주기 : 키 스트림의 기간은 키 스트림의 동일한 세그먼트의 재사용을 방지할 수 있을 만큼 충분히 길어야 합니다. 이렇게 하면 암호화된 데이터의 패턴이 노출되고 암호 분석가가 서로 다른 메시지의 유사점과 차이점을 비교하여 공격을 수행할 수 있습니다. 이론적으로 n비트 키 공간의 경우 이상적인 주기 길이는 2n-1이어야 합니다. 실제로 기간이 길다는 것은 키 스트림이 덜 자주 반복된다는 것을 의미하므로 암호화 시스템의 보안이 향상됩니다.
좋은 통계적 특성 : 키스트림은 진정한 무작위 비트 시퀀스처럼 보여야 합니다. 즉, 0과 1의 균등 분포, 두 개 이상의 연속 비트 간의 독립성, 예측 패턴이나 주기성이 없는 등 다양한 통계 테스트를 충족해야 합니다. 좋은 통계 속성은 스트림 암호화 보안의 중요한 구성 요소인 키 스트림의 예측 불가능성을 보장하는 데 도움이 됩니다.
선형 분석에 대한 저항 : 스트림 암호는 암호 분석가가 키 스트림과 일반 텍스트 또는 암호 텍스트 간의 선형 상관 관계를 찾아 키 또는 일반 텍스트를 복구하려고 시도하는 선형 분석에 저항해야 합니다. 이를 위해서는 일반적으로 키스트림 생성기의 출력이 비선형이거나 최소한 단순한 선형 시스템 해결 방법이 키스트림이나 키 자체를 추론하지 못하도록 충분한 비선형 구성요소가 포함되어 있어야 합니다.