안전한 해시 알고리즘은 무엇입니까?
약어 SHA로 알려진 보안 해시 알고리즘은 암호화 적으로 안전한 것으로 간주되는 해싱 알고리즘입니다. 보안 해시 알고리즘으로 해시 된 원래 데이터는 일반적으로 실행 가능한 컴퓨팅 성능으로 재구성 할 수 없습니다. 보안 해시 알고리즘은 종종 디지털 서명을 포함하여 메시지를 인증하기 위해 다른 알고리즘과 함께 사용됩니다.
일부 네트워크 라우터 및 방화벽은 하드웨어에서 직접 보안 해시 알고리즘을 구현합니다. 이를 통해 처리량에 미치는 영향을 최소화하면서 데이터 패킷을 인증 할 수 있습니다. 많은 오픈 소스 구현을 포함한 보안 해시 알고리즘 소프트웨어도 있습니다. 미국 국립 표준 기술 연구소 (NIST)와 CSE (Canadian Communications Security Establishment)는 CMVP (Cryptographic Module Verification Program)를 공동으로 운영합니다. 이 공식 프로그램은 민감한 애플리케이션에 대한 보안 해시 알고리즘 구현의 올바른 작동을 인증합니다.
미국 정부는 6 개 이상의 보안 해시 알고리즘을 표준화했습니다. SHA-0과 SHA-1은 1990 년대에 개발 된 최초의 화신이었습니다. 2000 년대에 개발 된 SHA-2 시리즈에는 SHA-224, -256, -384 및 -512가 포함되었습니다. 이들은 내용이 다른 두 문서가 일반적으로 해시 충돌을 피하면서 두 개의 고유 한 해시 값 세트를 생성하도록 설계되었습니다.
NIST에 의해 1993 년에 처음 출판 된 SHA-0 알고리즘은 상당한 약점이 발견 된 후 신속하게 중단되었습니다. 1995 년 SHA-1로 대체되었으며, 여기에는 SHA-0의 공개되지 않은 문제를 해결하는 추가 계산 단계가 포함됩니다. 두 알고리즘 모두 최대 2 64 -1 비트의 메시지를 160 비트 "다이제스트"로 해시합니다. 둘 다 동작에 512 비트의 블록 크기와 32 비트의 워드 크기를 사용합니다.
SHA-1은 일부 일반적인 인터넷 프로토콜 및 보안 도구에서 사용됩니다. 여기에는 IPsec, PGP, SSL, S / MIME, SSH 및 TLS가 포함됩니다. SHA-1은 일반적으로 분류되지 않은 정부 문서에 대한 보호 체계의 일부로 사용됩니다. 민간 부문은이 보안 해시 알고리즘을 사용하여 중요한 정보도 제공합니다. 2010 년에는 정부의 일반적인 사용이 중단 될 예정입니다.
SHA-224, -256, -384 및 -512는 2001 년에서 2004 년 사이에 NIST에서 발표했습니다. SHA-2 제품군이라고도하는이 4 가지 알고리즘은 일반적으로 SHA-1보다 강력합니다. SHA-224 및 SHA-256은 SHA-1과 동일한 블록, 워드 및 최대 입력 메시지 크기를 사용합니다. 반대로 SHA-224는 224 비트 다이제스트를 생성하는 반면 SHA-256은 256 비트 다이제스트를 생성합니다. SHA-384 및 SHA-512는 블록 크기를 1024 비트로, 워드 크기를 64 비트로, 최대 입력 메시지 길이를 2128-1 비트로 늘립니다. SHA-384에 의해 생성 된 다이제스트는 384 비트이며 SHA-512 다이제스트에는 512 비트가 포함되어 있습니다.
SHA-0 및 SHA-1과 마찬가지로 SHA-2 제품군은 미국 NSA (National Security Agency)에서 설계했습니다. 심각한 결함은 SHA-2에 공개되지 않았지만 NIST는 차세대 보안 해시 알고리즘을 개발하기위한 경쟁을 시작했습니다. SHA-3이라고하는이 새로운 알고리즘은 2012 년에 공개 항목 모음에서 선택 될 것입니다. 기존 알고리즘을 기반으로하지 않고 새로운 디자인이 될 것으로 예상됩니다.