.NET de la mise en œuvre de scrypt
J'ai lu sur scrypt et certains de ses avantages sur le bcrypt algorithme de hachage dans certaines circonstances.
De toute façon, il semble scrypt n'est pas aussi largement utilisé encore. Quelqu'un a vu jusqu'à présent un .NET de la mise en œuvre de celui-ci (favorisée en C#)?
- Trouvé le lien vers le document original (quelques liens supprimés à partir de celui que vous avez posté)
- Je ne suis pas sûr de savoir comment beaucoup scrypt a été examiné par le bon cryptographes. Et de l'examen est très important avant de vous faire confiance crypto.
- N'est-ce pas la même PDF le Tarsnap site renvoie à: tarsnap.com/scrypt/scrypt.pdf ?
- Personnellement, je pense que le développement de KDFs qui sont difficiles à force brute avec du matériel spécialisé est important. Je ne sais pas pourquoi il est si peu question de ces fonctions. Le bénignes généralement, l'utilisateur dispose d'un processeur d'usage général et beaucoup de RAM, alors que pour l'attaquant de la performance par logique porte de compte. Et la plupart des fonctions de hachage sont très bon marché à mettre en œuvre dans le matériel.
- Je suis d'accord! Je ne veux pas l'utiliser dans un environnement de production. Mais j'aimerais bien jouer un peu avec elle et de la recherche si elle pourrait être une alternative à l'utilisation d'une certaine manière dans le futur.
- Il en est ainsi! Je n'ai pas vu celle-là 😉
Vous devez vous connecter pour publier un commentaire.
Finalement, j'ai trouvé une mise en œuvre de scrypt en C# dans le CryptSharp bibliothèque.
La bibliothèque est open source et utilise le La licence ISC.
Il y a une nouvelle mise en œuvre de SCrypt pour .NET ici: https://github.com/replicon/Replicon.Cryptography.SCrypt
Contrairement à CryptoSharp, qui est une grande bibliothèque, celui-ci est mis en œuvre comme un emballés wrapper autour d'une bibliothèque native. Cela lui permet d'utiliser les indigènes au niveau des instructions (comme SSE2) pour améliorer les performances de la mise en œuvre tout à fait un peu.
L'inconvénient est qu'il doit contenir compilées en natif assemblées, de détecter le droit d'utiliser, de décompresser, puis de le charger. Cela signifie qu'il n'est pas idéal pour tous les environnements, mais il fonctionne très bien où elle travaille.
Dans le cas où, comme moi, vous êtes venu à cette question par l'intermédiaire d'un rapide google (est venu comme le lien en haut) vous pouvez maintenant télécharger SCrypt comme un package Nuget dans votre projet.
Utiliser comme suit:
et en comparant
Github lien ici