본문 바로가기

Dev/Encryption

해쉬 함수 SHA1CryptoServiceProvider, SHA1Managed 차이

SHA1CryptoServiceProvider는 윈도우의 CryptoAPI(CAPI)를 래핑한 unmanaged 구현체 이고,
SHA1Managed는 .NET으로 구현한 Managed 코드


SHA1Managed가 상대적으로 느리다고 하는데, 그 차이는 ms 단위의 속도를 중요시 하지 않는 업무라면 문제 없을 듯 하고,
자체 구현이라 이식성도 좋아 보임


물론 사용 가능 하다면 SHA1CryptoServiceProvider 쓰는것이 최선..



http://codeissue.com/issues/i34dda6deaad90a/difference-between-sha1-sha1cryptoserviceprovider-sha1managed-and-sha1cng


SHA1CryptoServiceProvider: this is wrapper for unmanaged CryptoAPI(CAPI). This is Federal Information Processing Standard (FIPS) certified.

SHA1Managed: this is complete implementation of SHA1 using managed code. This is fully managed but not FIPS certified and may be slower.