쿠피나
Kupyna| 일반 | |
|---|---|
| 초간출판 | 2014 |
| 관련 | 고스트 |
| 인증 | DSTU 표준 |
| 디테일 | |
| 다이제스트 크기 | 임의(8–420비트) |
| 라운드 | 10(최대 크기 8–256) 또는 14(최대 크기 257–256) |
| 최고의 공개 암호 분석 | |
| 쿠피나-256 4발을 2회에67 걸쳐, 5발을120 2회에 걸쳐 격돌하는 리바운드 공격.[1] | |
쿠피나(우크라이나어: :уп ппин)는 우크라이나 국가 표준 DSTU 7564:2014에 정의된 암호 해시함수다.[2][3] 러시아에서 표준화된 Streebog 해시함수와 유사하게, 구 표준 GOST 34.11-95에 정의된 구식 GOST 해시함수를 대체하기 위해 만들어졌다.
표준은 해시함수 외에도 다이제스트 크기가 256비트, 384비트, 512비트인 쿠피나를 이용한 메시지 인증 코드 생성을 기술하고 있다.
설명
쿠피나 해시함수는 데이비스를 사용한다.–이븐-만수어 암호 기반 마이어 압축 함수. 압축함수는 Kalyna 블록 암호에서[4] 얻은 T와 T라는 두 개의⊕ 고정+ 순열로 구성되며, 다음 네 가지 연산으로 구성된다. AddRoundConstant, SubBytes, ShiftBytes 및 MixColumns. 라운드 기능은 4개의 서로 다른 S-box를 사용한다.[5]
이 함수는 임의 길이의 다이제스트를 8 ~ 512비트까지 반환할 수 있다. n비트 다이제스트를 반환하는 함수를 쿠피나-n이라고 한다. 권장 다이제스트 길이는 256비트, 384비트, 512비트 입니다.
설계자들은 압축함수를 4회 반복한 후에는 차등과 반발 공격이 효과적이지 않다고 주장한다.[6]
쿠피나는 폴리곤아툼의 우크라이나 이름이다.
쿠피나 해시의 예
빈 문자열의 해시 값.
Kupyna-256("") 0x cd5101d1ccdf0d1d1f4ada56e888cd724ca1a0838a3521e7131d4fb78d0f5eb6 Kupyna-512("") 0x 656b2f4cd71462388b64a37043ea55dbe445d452aecd46c3298343314ef04019 \ bcfa3f04265a9857f91be91fce197096187ceda78c9c1c021c294a0689198538
모든 암호 해시함수와 마찬가지로 메시지의 작은 변화라도 눈사태 효과로 인해 평균적으로 출력 비트의 절반인 원본과 다른 해시를 초래할 것이다(압도적인[clarification needed] 확률). 예를 들어 문장 끝에 마침표를 추가하는 경우:
Kupyna-256("The quick brown fox jumps over the lazy dog") 0x 996899f2d7422ceaf552475036b2dc120607eff538abf2b8dff471a98a4740c6 Kupyna-256("The quick brown fox jumps over the lazy dog.") 0x 88ea8ce988fe67eb83968cdc0f6f3ca693baa502612086c0dcec761a98e2fb1f
암호해석
크리스토프 도브라위니그, 마리아 아이클세더, 플로리안 멘델은 그뢰슬에 대한 반발 공격을 바탕으로 쿠피나-256에 대한 반발 공격을 시간 복잡성 2와67 시간 복잡성 2와120 함께 4라운드로 줄인 쿠피나-256에 대한 충돌 공격을 설명한다.[1]
또한 지안 주와 르동은 쿠피나-256에 대한 충돌 공격과 시간 복잡성120 2와 기억 복잡성 2를250 가진 6라운드 쿠피나-256과 시간 및 기억 복잡성 2를498 가진 8라운드 쿠피나-512에 대한 유사 프리이미지 공격을 설명한다. 그들은 이러한 공격이 쿠피나의 어떤 보안 주장에도 위협이 되지 않는다는 점에 주목한다.[7]
오누르 뒤먼은 MAC 체계에 사용될 때 쿠피나에 대한 차등 고장 분석을 발표했다. 논문에 따르면 주의 1바이트를 복구하려면 2.21–2.42의 결함이 필요하다.[8]
참조
- ^ a b Christoph Dobraunig, Maria Eichlseder, and Florian Mendel (2015-10-01). "Analysis of the Kupyna-256 Hash Function" (PDF).
{{cite journal}}: Cite 저널은 필요로 한다.journal=(도움말)CS1 maint: 작성자 매개변수 사용(링크) - ^ http://jurliga.ligazakon.ua/news/2015/2/16/124401.htm 암호 알고리즘 및 프로토콜에 대한 국가 표준의 확장(러시아어)
- ^ https://eprint.iacr.org/2015/885.pdf 우크라이나의 새로운 표준: 쿠피나 해시함수
- ^ https://eprint.iacr.org/2015/650.pdf 우크라이나의 새로운 암호화 표준: 칼리나 블록 암호
- ^ https://github.com/Roman-Oliynykov/Kupyna-reference Kupyna 해시함수의 참조 이행 (DSTU 7564:2014)
- ^ http://www.slideshare.net/oliynykov/kupyna 암호해시함수에 관한 새로운 우크라이나 국가표준의 주요 속성
- ^ Jian Zou, Le Dong (2015-10-02). "Cryptanalysis of the Round-Reduced Kupyna Hash Function" (PDF).
{{cite journal}}: Cite 저널은 필요로 한다.journal=(도움말)CS1 maint: 작성자 매개변수 사용(링크) - ^ Onur Duman (2016-06-15). "Application of Fault Analysis to Some Cryptographic Standards" (PDF).
{{cite journal}}: Cite 저널은 필요로 한다.journal=(도움말)CS1 maint: 작성자 매개변수 사용(링크)