문제

나는 삼중을 체크 아웃했다. 블록 크기는 64 비트입니다.

8 비트 블록 크기에 대한 알고리즘이 있습니까?

감사

편집 : 나는 완벽한 보호를 위해 이것을 사용하지 않고, 코드를 보는 사람이 일반 텍스트를 찾지 않아야하는 정당한 상황에 대해서는 이것을 사용하려고합니다. 그래서 8 비트는 나에게도 괜찮습니다.

도움이 되었습니까?

해결책

8 비트 키가있는 RSA :)

진지하게, 블록 기반 사이퍼는 무국적자입니다. 블록의 암호 텍스트는 이전 블록이 아닌 블록의 클리어 텍스트에만 의존합니다 (그렇지 않으면 스트림 사이퍼가 될 것입니다). 8 비트 블록에 작용하는 블록 사이퍼는 쉽게 무차별 적으로 묶을 수 있으므로 아무런 의미가 없습니다.

다른 팁

8 비트 블록이있는 블록 암호는 각 입력 블록을 256 개의 가능한 값으로 암호화 할 수 있음을 의미합니다. 즉, 공격자는 입력 값을 추측 할 확률이 1/256입니다. 이러한 알고리즘을 안전하게 사용하는 것은 매우 어렵다는 것이 밝혀졌습니다. 그럼에도 불구하고 가능한 8 비트 블록 이상의 블록 암호를 정의하고 "완벽하게"하는 것; 일반적으로 유용 할 것으로 기대하지 마십시오.

바이트에 의해 바이트를 암호화하는 "스트림 암호"로 알려진 "블록이없는"암호도 있습니다 (또는 "비트별로"). 대부분은 키에서 임의의 양의 바이트를 생성하는 의사 랜덤 생성기 일뿐입니다. 생성 된 스트림은 데이터와 결합하여 XOR로 암호화됩니다. 전통적인 스트림 암호는 RC4입니다. 하지만 더 새롭고 더 좋습니다 스트림 암호가 설계되었습니다.

블록 암호는 그 자체로 수학적 도구입니다. 실제로 데이터를 암호화하려면 블록 암호를 올바르게 사용해야합니다. 키워드는입니다 체인 그리고 . 체인은 실제로 블록 암호에 들어가는 것을 정의하고 출력으로 무엇을 해야하는지 정의하는 것입니다. 패딩은 데이터에 일부 바이트를 가역 가능한 방식으로 추가하여 패딩 메시지 길이가 선택된 체인 모드에 적합합니다. 전통적인 체인 모드가 호출됩니다 CBC. 새로운 (그리고 아마도 더 나은) 체인 모드는 CTR (동일한 링크)이며, 패딩의 필요성을 피할 수있는 추가 보너스가 있습니다 (CTR은 블록 암호를 스트림 암호로 바꿉니다).

블록 암호는 사용해야합니다 AES 삼중 대신. 더 빠르고 안전하며 현재 미국 표준입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top