c# - 如何用另一种语言模仿旧的 ASP.net 密码加密?
问题描述
我的任务是在 Windows Server 2003 R2 上重建一个用 ASP.net 和 VB 编写的古老网站。在我让他们创建新密码之前,我需要允许用户使用他们当前(旧)密码登录到新网站。
我可以访问所有文件和代码,以及哈希和盐等数据库,以及 Web.config 及其<machineKey/>
.
我的问题是,我如何散列(实际上它在 ASP.net 中设置为“加密”)用户输入的另一种语言,以便我可以比较他们第一次登录时的散列值?
<machineKey/>
说validation="SHA1"
。Web.config 在其他地方没有提到算法。用于在 VB 代码中创建用户的特定 .NET 方法是。System.Web.Security.Membership.CreateUser()
我如何在 Node.js、Java 或 PHP 中模仿它(如果需要,我可以从这些语言中翻译)?
编辑:如果有人能破译这种方法并告诉我实际发生了什么,我将不胜感激。
解决方案
推荐阅读
- javascript - 关于 node.js 和 npm 库的可移植性
- c# - BackgroundService(IHostedService) 中的 ClientWebsocket 停止静默工作
- javascript - 无法在引导程序 5 的弹出窗口中添加结帐和清除购物车按钮
- javascript - 查找 html 中的所有复选框
- php - 过滤自定义产品循环以从 WooCommerce 中的类别中获取产品
- .net - 不再支持 ItemGroup `XamarinBuildDownloadRestoreAssemblyAar`
- python - 为什么没有根据 google-auth 库安装 requests 模块?
- spring-boot - SpringBootTest 不会使用 Spring Boot 2.4.3 回退到“默认”配置文件
- android - 颤振中just_audio pugin的问题
- lotus-notes - 在 LotusScript 中生成随机语言