SHA-3: 두 판 사이의 차이

위키백과, 우리 모두의 백과사전.
내용 삭제됨 내용 추가됨
Luckas-bot (토론 | 기여)
잔글 r2.7.1) (로봇이 더함: pl:Konkurs na SHA-3
TedBot (토론 | 기여)
잔글 봇: 분류 앞 공백 정리
 
(사용자 20명의 중간 판 31개는 보이지 않습니다)
1번째 줄: 1번째 줄:
{{위키데이터 속성 추적}}
{{불확실|소프트웨어}}
{{SHA 상자}}
'''SHA-3'''은 [[SHA-2]]를 대체하기 위해 [[미국 국립표준기술연구소]]가 2015년 8월에 발표한 [[암호화 해시 함수]]의 이름이다. 이 함수는 [[SHA-1]]과 [[SHA-2]]를 대체하기 위해 기획되었다. 기존의 해시 함수와는 다르게, 미국 국립표준기술연구소에서 직접 함수를 디자인하는 것이 아니라, 공개적인 방식을 통해 후보를 모집한 다음 함수 안전성을 분석하여 몇 차례에 걸쳐 후보를 걸러내는 방식으로 진행되었다.


2012년 10월 1일에 귀도 베르토니조앤 데먼, 질 반 아쉐, 마이클 피터스가 설계한 [[Keccak]]이 SHA-3의 해시 알고리즘으로 선정되었다.<ref name="keccak">[http://www.boannews.com/media/view.asp?idx=33102&kind=1 5년간 공모 끝에 SHA-3 해시 알고리즘 최종 선정!, 보안뉴스](2012년 10월 5일)</ref>
'''SHA-3'''은 2011년 2월 현재 미국 [[국립표준기술연구소]](NIST)에서 공모하고 있는 [[암호학적 해시 함수]]의 이름이다. 이 함수는 [[SHA-1]]과 [[SHA-2]]를 대체하기 위해 기획되었으며, 기존의 해시 함수와는 다르게, NIST에서 직접 함수를 디자인하는 것이 아니라, 공개적인 방식을 통해 후보를 모집한 다음 함수 안전성을 분석하여 몇 차례에 걸쳐 후보를 걸러내는 방식으로 진행되고 있다.


2015년 8월 5일, 미국 국립표준기술연구소가 SHA-3 암호화 해시 함수 표준을 발표하였다.<ref>{{뉴스 인용|url = https://www.federalregister.gov/articles/2015/08/05/2015-19181/announcing-approval-of-federal-information-processing-standard-fips-202-sha-3-standard|title = Announcing Approval of Federal Information Processing Standard (FIPS) 202, SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions, and Revision of the Applicability Clause of FIPS 180-4, Secure Hash Standard
== 후보 목록 ==
|last = |first = |date = 2015-08-05|work = |access-date = |via = }}</ref>


== SHA-3 예제 ==
후보 모집은 2008년 10월 31일에 마감되었다. 2008년 12월 9일에 총 51개의 해시 함수가 첫번째 후보로 발표되었으며<ref name="Round1">{{웹 인용|url=http://csrc.nist.gov/groups/ST/hash/sha-3/Round1/index.html|제목=Round 1|확인일자=2008-12-09|확인일자=2008-12-10}}</ref>, 2009년 7월 24일에 두번째 후보가 14개로 압축되었다. 2010년 12월 10일에 최종 후보 다섯개가 발표되었다.
[[미국 국립표준기술연구소]]가 게시한 예제 해시 값<ref>{{웹 인용|title=NIST.gov – Computer Security Division – Computer Security Resource Center|url=http://csrc.nist.gov/groups/ST/toolkit/examples.html#aHashing}}</ref>


<span style="color: green;">SHA3-224("")</span>
=== 최종 후보 ===
6b4e03423667dbb73b6e15454f0eb1abd4597f9a1b078e3f5b5a6bc7
최종 후보의 목록은 다음과 같다.
<span style="color: green;">SHA3-256("")</span>
* [[BLAKE]]
a7ffc6f8bf1ed76651c14756a061d662f580ff4de43b49fa82d80a4b80f8434a
* [[Grøstl]]
<span style="color: green;">SHA3-384("")</span>
* [[JH]]
0c63a75b845e4f7d01107d852e4c2485c51a50aaaa94fc61995e71bbee983a2ac3713831264adb47fb6bd1e058d5f004
* [[Keccak]]
<span style="color: green;">SHA3-512("")</span>
* [[Skein]]
a69f73cca23a9ac5c8b567dc185a756e97c982164fe25859e0d1dcc1475c80a615b2123af1f5f94c11e3e9402c3ac558f500199d95b6d3e301758586281dcd26
<span style="color: green;">SHAKE128("", 256)</span>
7f9c2ba4e88f827d616045507605853ed73b8093f6efbc88eb1a6eacfa66ef26
<span style="color: green;">SHAKE256("", 512)</span>
46b9dd2b0ba88d13233b3feb743eeb243fcd52ea62b81b82b50c27646ed5762fd75dc4ddd8c0f200cb05019d67b592f6fc821c49479ab48640292eacb3b7c4be


1비트를 변경하면 출력값의 각 비트가 50% 확률로 변경되어, [[쇄도 효과]] 때문에 상당한 변화가 일어난다.:
=== 2차 후보 ===
<span style="color: green;">SHAKE128("The quick brown fox jumps over the lazy dog", 256)</span>
최종 후보에서 떨어진 2차 후보는 다음과 같다. 최종 후보가 발표될 당시 이들 중에서 취약성이 완전하게 드러난 것은 없다.
f4202e3c5852f9182a0430fd8144f0a74b95e7417ecae17db0f8cfeed0e3e66e
* Blue Midnight Wish
<span style="color: green;">SHAKE128("The quick brown fox jumps over the lazy do<span style="color: red;">f</span>", 256)</span>
* CubeHash
853f4538be0db9621a6cea659a06c1107b1f83f02b13d18297bd39d7411cf10c
* ECHO
* Fugue
달라진 비트는 총 126개이며, 이는 전체 비트 수 256개의 약 49.22%이다.
* Hamsi
* Luffa
* Shabal
* SHAvite-3
* SIMD


=== 1차 후보 ===
== 각주 ==
2차 심사를 통과하지 못한 후보는 다음과 같다. 먼저, 완전한 취약성이 드러나지는 않은 후보 목록은 다음과 같다.
* ARIRANG<ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/2/2c/Arirang.pdf|제목=ARIRANG|형식=PDF|저자=Jongin Lim|공저자=Donghoon Chang, Seokhie Hong, Changheon Kang, Jinkeon Kang, Jongsung Kim, Changhoon Lee, Jesang Lee, Jongtae Lee, Sangjin Lee, Yuseop Lee, Jaechul Sung|확인일자=2008-10-29|확인일자=2008-11-11}}</ref> (CIST - [[고려대학교]])
* CHI<ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/2/2c/Chi_submission.pdf|제목=Submission to the SHA-3 Competition: The CHI Family of Cryptographic Hash Algorithms
|확인일자=2008-11-11|저자=Philip Hawkes|coauthors=Cameron McDonald|작성일자=2008-10-30}}</ref>
* CRUNCH<ref>{{웹 인용|url=http://www.voltee.com/crunch/|제목=CRUNCH
|확인일자=2008-11-14|저자=Jacques Patarin|coauthors=Louis Goubin, Mickael Ivascot, William Jalby, Olivier Ly, Valerie Nachef, Joana Treger, Emmanuel Volte}}</ref>
* [[Fast Syndrome Based Hash|FSB]]
* [[Lane (hash function)|Lane]]
* Lesamnta<ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/5/5c/Lesamnta.pdf|제목=SHA-3 Proposal: Lesamnta|형식=PDF|저자=Hirotaka Yoshida|coauthors=Shoichi Hirose, Hidenori Kuwakado|작성일자=2008-10-30|확인일자=2008-12-11}}</ref>
* [[MD6]] ([[Ron Rivest|Rivest]] et al.)
* [[SANDstorm]] ([[Sandia National Laboratories]])
* Sarmal<ref>{{웹 인용|url=http://homes.esat.kuleuven.be/~kvarici/sarmal_hash.html|제목=The Sarmal Hash Function|확인일자=2010-10-12|저자=Kerem Varıcı|coauthors=Onur Özen and Çelebi Kocair}}</ref>
* [[SWIFFT]]X
* TIB3<ref>{{웹 인용|url=http://www.famaf.unc.edu.ar/~penazzi/tib3/submitted/Supporting_Documentation/TIB3_Algorithm_Specification.pdf|제목=The TIB3 Hash|저자=Daniel Penazzi|coauthors=Miguel Montes|확인일자=2008-11-29}}</ref>

취약성이 드러난 후보 목록은 다음과 같다.

* AURORA ([[Sony]] and [[Nagoya University]])<ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/b/ba/AURORA.pdf|제목=AURORA: A Cryptographic Hash Algorithm Family|형식=PDF|coauthors=Tetsu Iwata, Kyoji Shibutani, Taizo Shirai, Shiho Moriai, Toru Akishita|작성일자=2008-10-31|확인일자=2008-12-11}}</ref><ref>{{웹 인용|url=http://eprint.iacr.org/2009/113.pdf|제목=Attacks on AURORA-512 and the Double-Mix Merkle-Damgaard Transform|형식=PDF|coauthors=Niels Ferguson, Stefan Lucks|작성일자=2009|확인일자=10 July 2009}}</ref>
* Blender<ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/5/5e/Blender.pdf|제목=BLENDER: A Proposed New Family of Cryptographic Hash Algorithms|형식=PDF|저자=Colin Bradbury|작성일자=25 October 2008|확인일자=2008-12-11}}</ref><ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/2/20/Observations_on_Blender.pdf|제목=Observations and Attacks On The SHA-3 Candidate Blender|형식=PDF|저자=Craig Newbold|확인일자=2008-12-23}}</ref><ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/4/48/Blender-preimage.pdf|제목=Preimage Attack on Blender|형식=PDF|저자=Florian Mendel|확인일자=2008-12-23}}</ref>
* Cheetah<ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/c/ca/Cheetah.pdf|제목=The Hash Function Cheetah: Specification and Supporting Documentation|형식=PDF|저자=Dmitry Khovratovich|coauthors=Alex Biryukov, Ivica Nikolić|작성일자=October 30, 2008|확인일자=2008-12-11}}</ref><ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/d/d9/Cheetah_length-extension.txt|제목=Danilo Gligoroski - Cheetah hash function is not resistant against length-extension attack|저자=Danilo Gligoroski|작성일자=2008-12-12|확인일자=21 December 2008}}</ref>
* Dynamic SHA<ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/e/e2/DyamicSHA.pdf|제목=Dynamic SHA|형식=PDF|저자=Zijie Xu|확인일자=2008-12-11}}</ref><ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/e/e7/Dynamic-sha_length-extension.txt|제목=Dynamic SHA is vulnerable to generic attacks
|저자=Vlastimil Klima|작성일자=2008-12-14|확인일자=21 December 2008}}</ref>
* Dynamic SHA2<ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/5/5b/DyamicSHA2.pdf|제목=Dynamic SHA2|형식=PDF|저자=Zijie Xu|publisher=NIST|확인일자=2008-12-11}}</ref><ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/0/0e/Dynamic-sha2_length-extension.txt|제목=Dynamic SHA2 is vulnerable to generic attacks|저자=Vlastimil Klima|작성일자=2008-12-14|확인일자=21 December 2008}}</ref>
* [[Elliptic curve only hash|ECOH]]
* Edon-R<ref>{{웹 인용|url=http://www.item.ntnu.no/people/personalpages/fac/danilog/edon-r|제목=edon-r|확인일자=10 November 2008|저자=Danilo Gligoroski|coauthors=Rune Steinsmo Ødegård, Marija Mihova, Svein Johan Knapskog, Ljupco Kocarev, Aleš Drápal|작성일자=November 4, 2008}}</ref><ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/7/74/Edon.pdf|제목=Cryptanalysis of Edon-R|확인일자=10 July 2009|coauthors=Dmitry Khovratovich, Ivica Nikolić, Ralf-Philipp Weinmann|작성일자=2008}}</ref>
* EnRUPT<ref>{{웹 인용|url=http://www.enrupt.com/|제목=EnRUPT - The Simpler The Better|확인일자=10 November 2008|저자=Sean O'Neil|coauthors=Karsten Nohl, Luca Henzen|작성일자=2008-10-31}}</ref><ref>{{웹 인용|url=http://homes.esat.kuleuven.be/~sindeste/enrupt.html|제목=Collisions for EnRUPT|확인일자=2008-11-07|저자=Sebastiaan Indesteege|작성일자=November 6, 2008}}</ref>
* ESSENCE<ref>{{웹 인용|url=http://www.math.jmu.edu/~martin/essence/Supporting_Documentation/essence_NIST.pdf|제목=ESSENCE: A Candidate Hashing Algorithm for the NIST Competition|확인일자=2008-11-08|저자=Jason Worth Martin|작성일자=October 21, 2008|형식=PDF}}</ref><ref>{{웹 인용|url=http://www.131002.net/data/papers/NRALLMP09.pdf|제목=Cryptanalysis of ESSENCE|형식=PDF}}</ref>
* LUX<ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/f/f3/LUX.pdf|제목=Hash family LUX - Algorithm Specifications and Supporting Documentation|형식=PDF|저자=Ivica Nikolić|coauthors=Alex Biryukov, Dmitry Khovratovich|확인일자=2008-12-11}}</ref>
* MCSSHA-3<ref>{{웹 인용|url=http://registercsp.nets.co.kr/hash_competition.htm|제목=MCSSHA-3 hash algorithm|확인일자=2008-11-08|저자=Mikhail Maslennikov}}</ref><ref>{{웹 인용 |url=http://131002.net/data/papers/AN.pdf|제목=Second preimages on MCSSHA-3|형식=PDF|확인일자=14 November 2008|coauthors=Jean-Philippe Aumasson and María Naya-Plasencia}}</ref>
* [[NaSHA (hash function)|NaSHA]]
* Sgàil<ref>{{웹 인용|url=http://www.allicient.co.uk/files/sgail/Supporting_Documentation/specification.pdf|제목=The Sgàil Cryptographic Hash Function|확인일자=9 11 2008|작성일자=September 2008|저자=Peter Maxwell|형식=PDF}}</ref><ref>{{웹 인용|url=http://www.allicient.co.uk/2008/11/05/aww-psh/|제목=Aww, p*sh!|확인일자=2008-11-06|저자=Peter Maxwell|작성일자=November 5, 2008}}</ref>
* [[Spectral Hash]]
* Twister<ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/3/39/Twister.pdf|제목=The Twister Hash Function Family|형식=PDF|저자=Michael Gorski|coauthors=Ewan Fleischmann, Christian Forler|작성일자=October 28, 2008|확인일자=2008-12-11}}</ref><ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/d/dd/Twister_attack.pdf|제목=Cryptanalysis of Twister|형식=PDF|저자=Florian Mendel, Christian Rechberger, Martin Schläffer|작성일자=2008|확인일자=19 May 2009}}</ref>
* Vortex<ref>{{웹 인용|url=http://eprint.iacr.org/2008/464|제목=Vortex: A New Family of One Way Hash Functions based on Rijndael Rounds and Carry-less Multiplication|확인일자=11 November 2008|저자=Michael Kounavis|coauthors=Shay Gueron|작성일자=November 3, 2008}}</ref><ref>{{웹 인용|url=http://www.131002.net/data/papers/ADMRT09.pdf|제목=Cryptanalysis of Vortex|형식=PDF|저자=Jean-Philippe Aumasson, Orr Dunkelman, Florian Mendel, Christian Rechberger, Søren S. Thomsen|작성일자=2009|확인일자=19 May 2009}}</ref>

제출자가 공식적으로 참여를 철회한 목록은 다음과 같다.

* Abacus<ref name="Round1" /><ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/b/be/Abacus.pdf|제목=Abacus: A Candidate for SHA-3|형식=PDF|저자=Neil Sholer
|확인일자=October 29, 2008|확인일자=2008-12-11}}</ref>
* Boole<ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/3/37/BoolePaper.pdf|제목=Design and Primitive Specification for Boole|확인일자=2008-11-08|저자=Gregory G. Rose|형식=PDF}}</ref><ref>{{웹 인용|url=http://csrc.nist.gov/groups/ST/hash/sha-3/Round1/documents/BOOLE_Comments.pdf|제목=OFFICIAL COMMENT: BOOLE|형식=PDF|저자=Gregory G. Rose|작성일자=10 Dec 2008|확인일자=2008-12-23}}</ref>
* DCH<ref name="Round1" /><ref>{{웹 인용|url=http://web.mit.edu/dwilson/www/hash/dch/Supporting_Documentation/dch.pdf|제목=The DCH Hash Function|형식=PDF|저자=David A. Wilson|작성일자=October 23, 2008|확인일자=23 November 2008}}</ref>
* Khichidi-1<ref name="Round1" /><ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/d/d4/Khichidi-1.pdf|제목=A NEW HASH ALGORITHM: Khichidi-1|형식=PDF|저자=Natarajan Vijayarangan|확인일자=2008-12-11}}</ref>
* MeshHash<ref name="Round1" /><ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/5/5a/Specification_DIN-A4.pdf|제목=MeshHash|형식=PDF|저자=Björn Fay|확인일자=30 November 2008}}</ref>
* SHAMATA<ref name="Round1" /><ref>{{웹 인용|url=http://www.uekae.tubitak.gov.tr/home.do?ot=1&sid=601&pid=547|제목=SHAMATA hash function: A candidate algorithm for NIST competition |확인일자=10 November 2008|저자= Orhun Kara|coauthors=Adem Atalay, Ferhat Karakoc and Cevat Manap}}</ref>
* StreamHash<ref name="Round1" /><ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/0/09/Streamhash.pdf|제목=StreamHash Algorithm Specifications and Supporting Documentation|형식=PDF|저자=Michal Trojnara|작성일자= October 14, 2008|확인일자=15 December 2008}}</ref>
* Tangle<ref name="Round1" /><ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/4/40/Tangle.pdf|제목=The Tangle Hash Function|형식=PDF|저자=Rafael Alvarez|coauthors=Gary McGuire and Antonio Zamora|확인일자=2008-12-11}}</ref>
* WaMM<ref>{{웹 인용|url=http://www.washburnresearch.org/cryptography/archive/WaMM-SHA3.pdf|제목=WAMM: A CANDIDATE ALGORITHM FOR THE SHA-3 COMPETITION
|확인일자=9 11 2008|저자=John Washburn|형식=PDF}}</ref><ref>{{웹 인용|url=http://csrc.nist.gov/groups/ST/hash/sha-3/Round1/documents/WaMM_Comments.pdf|제목=OFFICIAL COMMENT: WaMM is Withdrawn|형식=PDF저자=John Washburn|작성일자=2008-12-20|확인일자=2008-12-23}}</ref>
* Waterfall<ref>{{웹 인용|url=http://ehash.iaik.tugraz.at/uploads/1/19/Waterfall_Specification_1.0.pdf|제목=Waterfall Hash - Algorithm Specification and Analysis|확인일자=9 11 2008|작성일자=October 15, 2008|저자=Bob Hattersly|형식=PDF}}</ref><ref>{{웹 인용|url=http://csrc.nist.gov/groups/ST/hash/sha-3/Round1/documents/Waterfall_Comments.pdf|제목=OFFICIAL COMMENT: Waterfall is broken|형식=PDF|저자=Bob Hattersley|작성일자=2008-12-20|확인일자=2008-12-23}}</ref>

== 주석 ==
<references/>
<references/>


== 참고 사이트 ==
== 외부 링크 ==
* [http://keccak.noekeon.org/ Keccak 웹사이트]
* [http://csrc.nist.gov/groups/ST/hash/sha-3/index.html NIST 공모전]
{{암호화 해시}}
* [http://ehash.iaik.tugraz.at/wiki/The_SHA-3_Zoo SHA-3 Zoo]
{{전거 통제}}


[[분류:암호화 해시 함수]]
[[분류:암호화 해시 함수]]

[[de:SHA-3]]
[[en:NIST hash function competition]]
[[fi:SHA-3]]
[[fr:NIST hash function competition]]
[[ja:SHA-3]]
[[pl:Konkurs na SHA-3]]
[[pt:SHA-3]]

2024년 5월 5일 (일) 00:44 기준 최신판

SHA
개념
해시 함수 · SHA · DSA
주요 개념
SHA-0 · SHA-1 · SHA-2 · SHA-3

SHA-3SHA-2를 대체하기 위해 미국 국립표준기술연구소가 2015년 8월에 발표한 암호화 해시 함수의 이름이다. 이 함수는 SHA-1SHA-2를 대체하기 위해 기획되었다. 기존의 해시 함수와는 다르게, 미국 국립표준기술연구소에서 직접 함수를 디자인하는 것이 아니라, 공개적인 방식을 통해 후보를 모집한 다음 함수 안전성을 분석하여 몇 차례에 걸쳐 후보를 걸러내는 방식으로 진행되었다.

2012년 10월 1일에 귀도 베르토니조앤 데먼, 질 반 아쉐, 마이클 피터스가 설계한 Keccak이 SHA-3의 해시 알고리즘으로 선정되었다.[1]

2015년 8월 5일, 미국 국립표준기술연구소가 SHA-3 암호화 해시 함수 표준을 발표하였다.[2]

SHA-3 예제[편집]

미국 국립표준기술연구소가 게시한 예제 해시 값[3]

SHA3-224("")
6b4e03423667dbb73b6e15454f0eb1abd4597f9a1b078e3f5b5a6bc7
SHA3-256("")
a7ffc6f8bf1ed76651c14756a061d662f580ff4de43b49fa82d80a4b80f8434a
SHA3-384("")
0c63a75b845e4f7d01107d852e4c2485c51a50aaaa94fc61995e71bbee983a2ac3713831264adb47fb6bd1e058d5f004
SHA3-512("")
a69f73cca23a9ac5c8b567dc185a756e97c982164fe25859e0d1dcc1475c80a615b2123af1f5f94c11e3e9402c3ac558f500199d95b6d3e301758586281dcd26
SHAKE128("", 256)
7f9c2ba4e88f827d616045507605853ed73b8093f6efbc88eb1a6eacfa66ef26
SHAKE256("", 512)
46b9dd2b0ba88d13233b3feb743eeb243fcd52ea62b81b82b50c27646ed5762fd75dc4ddd8c0f200cb05019d67b592f6fc821c49479ab48640292eacb3b7c4be

1비트를 변경하면 출력값의 각 비트가 50% 확률로 변경되어, 쇄도 효과 때문에 상당한 변화가 일어난다.:

SHAKE128("The quick brown fox jumps over the lazy dog", 256)
f4202e3c5852f9182a0430fd8144f0a74b95e7417ecae17db0f8cfeed0e3e66e
SHAKE128("The quick brown fox jumps over the lazy dof", 256)
853f4538be0db9621a6cea659a06c1107b1f83f02b13d18297bd39d7411cf10c

달라진 비트는 총 126개이며, 이는 전체 비트 수 256개의 약 49.22%이다.

각주[편집]

외부 링크[편집]