寻找与 php 的 password-verify() 等效的 c#

2022-01-10 00:00:00 cryptography passwords php c#

我需要将一堆用户帐户 Moodle 导入用 c# 编写的系统.

I need to import a bunch of user accounts Moodle into a system written in c#.

Moodle 使用 password_hash() 函数来创建密码的哈希值.我需要能够在 c# 中验证这些密码.

Moodle uses password_hash() function to create hashes of passwords. I need to be able to verify these passwords in c#.

换句话说,我正在寻找 PHP 密码验证功能的 c# 实现(http://www.php.net/manual/en/function.password-verify.php ).

In other words I looking for a c# implementation of PHP's password verify function ( http://www.php.net/manual/en/function.password-verify.php ).

我用谷歌搜索了一下,但真的找不到任何接近的东西,所以我问是希望避免重新发明轮子:-)

I've googled a bit but couldn't really find anything close, so I am asking in hopes of avoiding reinventing the wheel :-)

谢谢!

推荐答案

知道了!

首先通过 NuGet 包安装 CryptSharp.(使用 2.0官方"包),顺便说一下,BCrypt.net 不适合我.

First install CryptSharp via NuGet Package. (Use the 2.0 "official" package), and by the way, BCrypt.net didn't work for me.

然后:

using CryptSharp;
bool matches = Crypter.CheckPassword("password goes here", "hash goes here");

请注意,哈希应该以以下内容开头:$2y$..."

Note that hash should start with something like: "$2y$..."

像魅力一样工作!:-)

Works like a charm! :-)

相关文章