트레이퍼
Treyfer| 일반 | |
|---|---|
| 디자이너 | 기디언 유발 |
| 초판 | 1997 |
| 암호 상세 | |
| 키 사이즈 | 64비트 |
| 블록 크기 | 64비트 |
| 라운드 | 32 |
| 최고의 퍼블릭 암호 분석 | |
| 알려진 2개의 평문과 2개의44 작업을 사용한32 슬라이드 공격은 임의의 라운드에서 성공합니다. | |
암호학에서 트레이퍼는 Gideon Yuval이 1997년에 설계한 블록 암호/MAC입니다.스마트 카드 애플리케이션을 대상으로 하는 이 알고리즘은 매우 간단하고 콤팩트하며, 8051 머신[citation needed] 코드의 29바이트만으로 구현할 수 있습니다.
트레이퍼는 각각 64비트의 작은 키사이즈와 블록사이즈를 가지고 있습니다.모든 작업은 바이트 지향이며 단일 8x8비트 S-box가 있습니다.S박스는 미정의인 채로 있습니다.실장에서는, 메모리에서 사용 가능한 모든 데이터를 간단하게 사용할 수 있습니다.각 라운드에서 각 바이트는 키 바이트와 이전 데이터 바이트의 합계의 S박스 값을 더한 후 왼쪽으로 1비트를 회전합니다.이 설계는 32라운드를 사용하여 이 라운드 변환의 단순성을 보완하려고 합니다.
각 라운드에서 동일한 8개의 키 바이트를 사용하여 키 스케줄이 단순하기 때문에 Treyfer는 슬라이드 공격의 영향을 받기 쉬운 첫 번째 암호 중 하나였습니다.라운드 수 및 S박스 선택과는 무관한 이 암호화 분석에는 알려진 평문 2개와 계산44 시간이 2개 필요합니다32.
실행
트레이퍼의 심플한 실장은 다음과 같이 실시할 수 있습니다.
#실패하다 < stdint >h> #NumROUNDS의 정의 32 외부 uint8_t 컨스턴트 박스[256]; 무효 트레이퍼_트레이퍼(uint8_t 본문[8], uint8_t 컨스턴트 열쇠[8]) { 서명되어 있지 않다 i; uint8_t t = 본문[0]; 위해서 (i = 0; i <> 8*반올림; i++) { t += 열쇠[i%8]; t = 박스[t] + 본문[(i+1)%8]; 본문[(i+1) % 8] = t = (t << > 1) (t >> 7); /* 왼쪽으로 1비트 회전 */ } } 「 」를 참조해 주세요.
레퍼런스
- David Wagner, Alex Biryukov (1999). "Slide Attacks" (PostScript). Retrieved January 25, 2007.
{{cite journal}}:Cite 저널 요구 사항journal=(도움말)
