문제

SHA1과 RSA의 차이점은 무엇입니까? 그것들은 단지 다른 알고리즘입니까, 아니면 어떤 수준에서 다른 것들 (즉, 다른 것들에 사용)이 다릅니다.

도움이 되었습니까?

해결책

근본적으로 다릅니다.

Sha1 해시 알고리즘으로, 편도 함수이며, 모든 크기의 입력을 고정 길이 출력 (이 경우 160 비트)으로 전환합니다. 암호화 해시 함수는 무차별 힘을 제외하고 동일한 출력을 제공하는 두 개의 입력을 찾을 수없는 것입니다 (예 : 128 비트 기능의 경우 평균 2^64 메시지를 사용해야합니다. 생일 역설이라고 불리는 "충돌".

실제로 SHA1의 경우 이것은 더 이상 그렇지 않습니다. 알고리즘은 (최소한 암호화 용어로) Xiaoyun Wang 등이 묘사 한 충돌 공격으로 고전적인 생일 공격을 이겼습니다. SHA2 패밀리는 깨지지 않았으며 NIST가 SHA3 알고리즘 또는 알고리즘 제품군에 동의하는 프로세스가 진행 중입니다.

편집하다 - Google은 이제 실제 SHA1 충돌을 생성하고 게시했습니다.

RSA 비대칭 암호화 알고리즘으로, 출력으로 입력을 암호화하여 해독 할 수 있습니다 (반대로 할 수없는 해시 알고리즘 대조). 암호화 (개인)와 암호화 (공개)에 대해 다른 키를 사용합니다. 따라서 이것은 다른 사람으로부터 암호화 된 메시지를 수신하는 데 사용할 수 있습니다. 공개 키를 게시 할 수 있지만 개인 키로 귀하만이 암호화 된 메시지를 해독 할 수 있습니다.

RSA의 키를 뒤집는 경우 디지털 서명을 생성하는 데 사용될 수 있습니다. 개인 키로 무언가를 암호화하여 누구나 공개 키로 해독 할 수 있으며 공개 키가 귀하에게 속한다고 확신하면 당신이 원본을 암호화 한 사람이라는 확신. 이것은 일반적으로 해시 함수와 함께 수행됩니다. 입력 해시를 해시 한 다음 개인 키로 암호화하여 입력 메시지에 고정 된 길이의 디지털 서명을 제공합니다.

다른 팁

이전의 답변은 이미 충분한 설명입니다. 그러나 나는 당신이 Sha와 RSA가 종종 함께 나오기 때문에이 질문을한다고 생각합니다. 그래서 왜 이유를 설명하겠습니다.

먼저, 그것을 명심하십시오

RSA는 효율적이지 않지만 Sha는입니다.

Windows 7을 다운로드하고 Microsoft의 원래 Windows 7인지 확인하십시오. Microsoft가 RSA에 의해 Windows 7을 암호화한다면, 우리는 그것을 참지 못하도록하는 데 오랜 시간이 걸릴 것입니다. 따라서 Microsoft는 Windows 7에서 SHA1을 사용하고 128 비트 길이의 데이터를 생성합니다. 그런 다음 Microsoft는이 128 비트 긴 데이터를 RSA로 암호화합니다 (개인 키 사용).

그런 다음 공개 키가 Microsoft에서 온 것인지 확인하는 것입니다. 그런 다음 SHA1을 사용하여 128 비트 길이의 데이터도 생성하십시오. 그런 다음 RSA의 공개 키를 사용하여 Microsoft의 서명을 해독합니다. 그런 다음 두 개의 128 비트 긴 데이터를 비교하여 일치하는지 확인하십시오.

SHA1은 해싱 알고리즘 (문서 및 인증 서명)이며 RSA는 암호화/암호 해독 알고리즘 (보안 통신)입니다.

다른 사람들이 언급했듯이, 그들은 다른 기능을하는 근본적으로 다른 것들입니다. RSA를 사용하여 정보를 무작위 형식으로 긁어내는 반면 SHA1을 사용하여 메시지의 무결성을 보장합니다 (예 : 비트 중 어느 것도 변경되지 않았습니다). 보안 응용 프로그램에서 필요한 기능에 따라 하나 또는 둘 다를 사용합니다.

SHA1은 암호화 해시 함수 인 반면 RSA는 암호화 알고리즘입니다.

해시 함수는 데이터 조각을 가져 와서 고정 길이의 문자열을 반환합니다. 암호화 해시 함수에서 모든 반환 문자열은 동일한 확률을 갖습니다. 해시 숫자 만 주어지면 입력을 결정할 수 없으며 동일한 해시를 제공하는 다른 입력 (매우 작은 확률로 실기)을 찾을 수 없습니다. SHA1에는 보안 결함이 있습니다.

암호화에 대한 알고리즘은 데이터를 가져옵니다. 그러나 출력은 고정 길이가 아닙니다 - 암호화. 출력 (암호화)이 주어지면 (올바른 키가있는 경우) 입력을 결정할 수 있습니다.

SHA (Secure Hash 알고리즘) 알고리즘은 길이가 264 비트 미만의 메시지를 취하고 160 비트 메시지 다이제스트를 생성합니다. 알고리즘은 MD5보다 약간 느리지 만 메시지 소화가 커지면 무차별 충돌 및 반전 공격에 대해 더 안전합니다. 보안 해시 표준 (SHS, FIPS 180)에 지정된 알고리즘은 NIST에 의해 개발되었습니다. SHA-1은 1994 년에 출판 된 SHA에 대한 개정이다. 개정판은 SHA에서 미공개 결함을 수정했습니다. 그 디자인은 Rivest가 개발 한 MD4 해시 기능 패밀리와 매우 유사합니다. SHA-1은 ANSI X9.30 표준에도 설명되어 있습니다.

RSA는 공개 키 암호화를위한 알고리즘입니다. 암호화뿐만 아니라 서명에 적합한 것으로 알려진 최초의 알고리즘이며, 공개 키 암호화의 첫 번째 큰 발전 중 하나입니다. RSA는 전자 상업 프로토콜에 널리 사용되며 충분히 긴 키와 최신 구현 사용이 주어지면 안전하다고 생각됩니다.

가장 주목할만한 차이점은 SHA가 암호화 알고리즘이고 RSA는 암호화 및 서명 알고리즘이라는 것입니다.

2005 년 8 월 16 일에 2^63 작업에서 SHA-1에서 충돌을 찾을 수 있다고 발표되었습니다. 이 연구 결과는 베이징에있는 Tsinghua University의 Xiaoyun Wang 교수와 Andrew Yao 및 Frances Yao 교수와 함께입니다. Wang, Yin 및 Yu의 작업을 확장하여 충돌이 2^69 작업에서 찾을 수 있음을 보여주었습니다. 그 의미는 RSA보다 SHA에서 충돌이 더 쉽다는 것입니다. 그러나 특히 두 개의 유사한 키가 충돌 한 적이 없습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top