SHA: 두 판 사이의 차이
내용 삭제됨 내용 추가됨
잔글 r2.6.5) (로봇이 바꿈: he:Secure Hash Algorithm |
편집 요약 없음 |
||
1번째 줄:
{{다른 뜻 넘어옴|SHA}}
'''SHA'''(Secure Hash Algorithm, 안전한
SHA-1은 SHA 함수들 중 가장 많이 쓰이며, [[트랜스포트 레이어 보안|TLS]], [[SSL]], [[PGP (소프트웨어)|PGP]], [[SSH]], [[IPSec]] 등 많은 보안 프로토콜과 프로그램에서 사용되고 있다. SHA-1은 이전에 널리 사용되던 [[MD5]]를 대신해서 쓰이기도 한다. 혹자는 좀 더 중요한 기술에는 SHA-256이나 그 이상의 알고리즘을 사용할 것을 권장한다.
SHA-0과 SHA-1에 대한 공격은 이미 발견되었다. SHA-2에 대한 공격은 아직 발견되지 않았으나, 전문가들은 SHA-2 함수들이 SHA-1과 비슷한 방법을 사용하기 때문에 공격이 발견될 가능성이 있다고 지적한다. 이들은 이제 새로운
== SHA 함수군 ==
10번째 줄:
[[파일:SHA-1.svg|thumb|right|300px|SHA-1 압축 함수가 블록 하나를 처리하는 과정. A, B, C, D, E는 각각 32비트 내부 상태이고, F는 계속 변하는 비선형 함수이며, K<sub>t</sub>는 상수이다. [[그림:lll.png|왼쪽 회전]]<sub>''n''</sub>은 ''n''비트만큼 왼쪽으로 회전하는 연산이고, [[파일:Boxplus.png|덧셈]]은 법 2<sup>32</sup>에 대한 덧셈을 나타낸다.]]
최초의 알고리즘은 [[1993년]]에 [[미국 표준 기술 연구소]](NIST)에 의해 '''안전한
NIST는 나중에
=== 크기 비교 ===
19번째 줄:
{| class="wikitable"
! 알고리즘 !!
|- align="center"
| '''SHA-0''' || 160 || 160 || 512 || 64 || 32 || 80 || +,and,or,xor,rotl || 발견됨
30번째 줄:
|}
여기서 내부 상태는 데이터 블록 하나를 압축한 뒤의 "내부적인
== 예제 ==
다음은 SHA-1
SHA1("The quick brown fox jumps over the lazy dog")
= 2fd4e1c67a2d28fced849ee1bb76e7391b93eb12
SHA1("The quick brown fox jumps over the lazy dog.")
= 408d94384216f890ff7a0c3528e8bed1e0b01621
빈 문자열의
SHA1("") = da39a3ee5e6b4b0d3255bfef95601890afd80709
|