개구리

FROG
개구리
일반
디자이너디아넬로스 게오구디스, 데미안 레루, 빌리 시몬 차베스
초판1998
암호 상세
키 사이즈128, 192 또는 256비트
블록 크기128비트
라운드8
최고의 퍼블릭 암호 분석
일부 취약한 키에 대한 차등 및 선형 공격

암호학에서 FROG는 Georgoudis, Leroux 및 Chaves가 작성한 블록 암호입니다.이 알고리즘은 8 ~128 바이트의 임의의 블록사이즈로 동작할 수 있으며 5 ~125 바이트의 키사이즈를 지원합니다.알고리즘은 8라운드로 구성되며 매우 복잡한 주요 일정이 있습니다.

1998년 코스타리카의 소프트웨어 회사인 TecApro에 의해 AES 공모전에 Advanced Encryption Standard 후보로서 제출되었습니다.Wagner 등(1999)은 FROG에 대한 다수의 약한 키 클래스를 발견했다.기타 문제로는 키 셋업이 매우 느리고 암호화가 비교적 느리다는 점이 있습니다.FROG는 최종 후보로 선정되지 않았다.

설계 철학

일반적으로 블록 암호는 암호문을 생성하기 위해 일반 텍스트개인 키에 고정된 일련의 수학 연산자 또는 논리 연산자(추가, XOR 등)를 적용합니다.공격자는 이 지식을 사용하여 일반 텍스트를 복구할 수 있는 암호의 취약점을 검색합니다.

암호 자체가 알려져 있음에도 불구하고 FROG의 설계 철학은 원시 연산의 정확한 순서를 숨기는 것입니다.다른 암호는 암호 키를 데이터(암호 텍스트를 생성하기 위해 일반 텍스트와 결합됨)로만 사용하는 반면, FROG는 이 키를 데이터 및 이러한 데이터를 결합하는 방법에 대한 명령으로 사용합니다.사실상 키의 확장 버전이 FROG에 의해 프로그램으로 사용됩니다.FROG 자체는 이 키에 의존하는 프로그램을 일반 텍스트에 적용하여 암호 텍스트를 생성하는 인터프리터 역할을 합니다.암호 해독은 암호 텍스트에 같은 프로그램을 반대로 적용함으로써 작동합니다.

묘사

FROG의 개요도

PROG 키 스케줄(또는 내부 키)의 길이는 2304 바이트입니다.빈 플레인 텍스트에 FROG를 반복적으로 적용하여 재귀적으로 생성됩니다.결과 블록은 8개의 레코드로 구성된 올바른 형식의 내부 키를 생성하도록 처리됩니다.FROG는 8라운드를 가지며, 각 라운드의 운영은 내부 키에 있는 1개의 레코드로 코드화된다.모든 작업은 바이트 단위로 이루어지며 XOR[1]대체로 구성됩니다.

PROG는 구현이 매우 용이합니다(레퍼런스 C 버전은 약 150줄의 코드만 있습니다).PROG 실장에 필요한 코드의 대부분은 비밀 내부 키를 생성하는데 사용됩니다.내부 암호 자체는 매우 짧은 코드 조각입니다.완전한 PROG 암호화 및 복호화를 수행하는 22개의 기계 명령어 조립 루틴을 작성할 수 있습니다.8비트 프로세서에서는 바이트 수준의 명령만 사용하기 때문에 구현이 정상적으로 실행됩니다.비트 고유의 조작은 사용되지 않습니다.내부 키가 계산되면 알고리즘은 매우 빠릅니다.8086 어셈블러를 사용하여 구현된 버전은 200MHz Pentium PC에서 실행 시 초당 2.2MB 이상의 처리 속도를 달성합니다.

보안.

FROG의 설계 이념은 예기치 않은 공격이나 알려지지 않은 공격으로부터 방어하는 것입니다.그러나 키가 암호화 프로그램으로 사용된다는 것은 일부 키가 취약한 암호화 프로그램에 해당될 수 있음을 의미합니다.David Wagner 등은 키 중 2개가 약하며, 이 경우 선택된 2개의 평문으로 키가58 깨질 수 있다는 것을 발견했다−33.

FROG의 또 다른 단점은 복호화 함수가 암호화 함수에 비해 확산 속도가 훨씬 느리다는 것입니다.여기서−29 2개의 키는 약하며 2개의 선택된 암호문을 사용하여36 깨질 수 있습니다.

메모들

  1. ^ 암호에 대한 자세한 설명은 여기를 참조하십시오.

레퍼런스

  • 데이비드 와그너, 닐스 퍼거슨, 브루스 슈나이어, FROG의 암호 분석, 제2회 AES 후보 회의 진행, pp175–181, NIST, 1999 [1].
  • Dianelos Georoudis, Damian Leroux 및 Billy Simon Chaves, The FROG Encryption Algorithm, 1998년 6월 15일 [2].

외부 링크