通过非 Ruby 应用程序验证 Resftul 身份验证
Posted
技术标签:
【中文标题】通过非 Ruby 应用程序验证 Resftul 身份验证【英文标题】:Verifying Resftul Authentication through a Non Ruby App 【发布时间】:2010-12-06 03:53:12 【问题描述】:我正在尝试从 php 应用程序对 restful_authentication 进行身份验证,但是我知道它使用 SHA1(摘要--salt--password--RESTFUL_AUTH_KEY)。问题是无论我尝试多少,我都无法让哈希匹配。通读文档,我看到摘要只是 restful auth 密钥,但这就是我感到困惑的地方。除了使用 ruby 之外,还有其他人能够找到一种方法来匹配散列密码吗?如果可以的话,该怎么做?
【问题讨论】:
【参考方案1】:这里是一个使用 php 的例子:
<?php
$password = 'SomePassword';
$salt = 'saltHashFromDB';
$sitekey = 'siteKeyFromConfig';
function pwcrypt($password, $salt, $sitekey)
$digest = $sitekey;
$i = 0;
while ($i < 10)
$digest = sha1($digest.'--'.$salt.'--'.$password.'--'.$sitekey);
$i++;
return $digest;
echo pwcrypt($password,$salt,$sitekey);
?>
这是一个非常简单的示例,您应该能够基于此将其集成到您的应用程序中。我知道在 ruby 代码中有大约 4 或 5 个函数,它一个接一个地调用来做同样的事情,把它放在一个地方应该更容易理解。
如果您需要任何说明,请告诉我。
谢谢,
C4colo
【讨论】:
以上是关于通过非 Ruby 应用程序验证 Resftul 身份验证的主要内容,如果未能解决你的问题,请参考以下文章
Dora.Interception, 为.NET Core度身打造的AOP框架[4]:演示几个典型应用