SHA: 두 판 사이의 차이
내용 삭제됨 내용 추가됨
잔글 봇: 전거 통제 틀 추가 |
잔글 →크기 비교 |
||
16번째 줄:
=== 크기 비교 ===
{| class="wikitable sortable"
|+다음은 SHA 함수들의 특성을 요약한 표이다.
! colspan="2" |알고리즘과 변형
!해시값
크기
!내부 상태
크기
!블록
크기
!길이 한계
!과정 수
!사용되는 연산
!퍼포먼스의 예
(MiB/s)
!보안 강도
(bits)
!충돌
|-
| colspan="2" |'''MD5'''
|128
|128
(4 × 32)
|512
|2<sup>64</sup>− 1
|64
| +,and, xor, rot,
add (mod 2<sup>32</sup>),
or
|335
|<64
|발견됨
|-
| colspan="2" |'''SHA-0'''
|160
|160
(5 × 32)
|512
|2<sup>64</sup>− 1
|80
| +,and,or,xor,rotl
| -
|<80
|발견됨
|-
| colspan="2" |'''SHA-1'''
|160
|160
(5 × 32)
|512
|2<sup>64</sup>− 1
|80
| +,and,or,xor,rotl
|192
|<63
|발견됨
|-
| rowspan="2" |'''SHA-2'''
|''SHA-224''
''SHA-256''
|224
256
|256
(8 × 32)
|512
|2<sup>64</sup>− 1
|64
| +,and,or,xor,shr,rotr
|139
|112
128
|
|-
|''SHA-384''
''SHA-512''
''SHA-512''
''SHA-512/256''
|384
512
224
256
|512
(8 × 64)
|1024
|2<sup>128</sup>− 1
|80
| +,and,or,xor,shr,rotr
|154
|192
256
112
128
|
|-
| rowspan="7" |'''SHA-3'''
| rowspan="4" |''SHA3-224''
''SHA3-256''
''SHA3-384''
''SHA3-512''
| rowspan="4" |224
256
384
512
| rowspan="7" |1600
(5 × 5 × 64)
|1152
| rowspan="7" |무제한
| rowspan="7" |24
| rowspan="7" | +.nd, Xor, Rot,Not
| rowspan="7" | -
| rowspan="6" |112
128
192
256
| rowspan="6" |
|-
|1088
|-
|832
|-
|576
|-
| rowspan="3" |''SHAKE128''
''SHAKE256''
| rowspan="3" |d(가변)
d(가변)
|1344
|-
| rowspan="2" |1088
|-
|d/2와 128의
d/2와 256의
|
|}
기서 내부 상태는 데이터 블록 하나를 압축한 뒤의 "내부적인 해시값"의 크기를 나타낸다. 또한 SHA는 내부적으로 메시지 채움을 위해 데이터의 길이와 같은 추가적인 변수를 사용하며, 길이 한계는 이때 사용되는 변수의 크기를 나타낸다. 메시지 채움에 대한 자세한 설명은 [[머클-담고르 해시 함수]]를 참고하라.
== 예제 ==
|