your programing

scrypt의 .NET 구현

lovepro 2020. 12. 30. 19:49
반응형

scrypt의 .NET 구현


나는에 대해 읽은 scrypt 와 오버의 장점 중 일부 bcrypt 특정 상황에서 해시 알고리즘.

어쨌든 scrypt는 아직 널리 사용되지 않는 것 같습니다. 지금까지 .NET 구현을 본 사람이 있습니까 (C #에서 선호 됨)?


마지막으로 CryptSharp 라이브러리 에서 C #의 scrypt 구현을 찾았습니다 .
라이브러리는 오픈 소스이며 ISC 라이센스를 사용합니다 .

버전 기록

1.2.0 2011 년 1 월 23 일 :
SCrypt KDF는 이제 CryptSharp.Utility.SCrypt로 지원됩니다.
SCrypt에서 요구하는 djb의 Salsa20을 추가했습니다.


여기에 .NET 용 SCrypt의 새로운 구현이 있습니다 : https://github.com/replicon/Replicon.Cryptography.SCrypt

훌륭한 라이브러리 인 CryptoSharp와 달리이 라이브러리는 네이티브 라이브러리를 둘러싼 패키지 래퍼로 구현됩니다. 이를 통해 SSE2와 같은 네이티브 레벨 명령어를 사용하여 구현 성능을 상당히 향상시킬 수 있습니다.

단점은 네이티브 컴파일 된 어셈블리를 포함하고, 사용할 올바른 어셈블리를 감지하고, 패키지를 풀고,로드해야한다는 것입니다. 즉, 모든 환경에 이상적이지는 않지만 작동하는 곳에서는 훌륭하게 작동합니다.


저처럼 빠른 Google (상단 링크로 표시됨)을 통해이 질문에 도달 한 경우 이제 SCrypt를 Nuget 패키지로 프로젝트에 다운로드 할 수 있습니다.

PM> Install-Package Scrypt.NET

다음과 같이 사용하십시오.

ScryptEncoder encoder = new ScryptEncoder();
string hashsedPassword = encoder.Encode("mypassword");

및 비교

ScryptEncoder encoder = new ScryptEncoder();
bool areEquals = encoder.Compare("mypassword", hashedPassword);

여기 Github 링크

참조 URL : https://stackoverflow.com/questions/4845977/net-implementation-of-scrypt

반응형