我有这个C#代码:publicstaticstringEncript(stringstrData){stringhashValue=HashData(strData);stringhexHashData=ConvertStringToHex(hashValue);returnhexHashData;}publicstaticstringHashData(stringtextToBeEncripted){//ConvertthestringtoabytearrayByte[]byteDataToHash=System.Text.Encoding.Unicode.GetBytes(text
在我的代码中,我正在生成URL的哈希值(实际上是无限长度的)。我目前正在使用sha1(),我知道它发生碰撞的可能性很小,但我有最多255个字节来存储哈希,所以我觉得我还不如使用可用空间来降低碰撞的可能性,甚至进一步。是否有:另一个具有更长或可自定义哈希长度的PHP哈希函数?一种使用固定长度散列函数(如sha1)和可变长度输入来生成更长散列的方法?或者,sha1的20字节散列是否足够好,我应该停止担心它? 最佳答案 Or,issha1's20-bytehasgoodenoughforanythingandIshouldstopworr
CodeIgniter使用MD5或SHA1进行哈希处理:$str=do_hash($str);//SHA1$str=do_hash($str,'md5');//MD5但是,我的项目需要SHA-256。我将如何解决这个问题? 最佳答案 不可以只调用php自带的hash()吗?$str=hash("sha256",$str); 关于php-使用SHA-256进行CodeIgniter哈希,我们在StackOverflow上找到一个类似的问题: https://st
我查看并找到了获取PHPsha512哈希并在C#中匹配它的代码。我目前正在寻找一种方法,从用C#制作的散列开始,并在PHP中获得相同的结果。我们正在慢慢地从asp.net转移到PHP,并且需要一种方法来检查我们在数据库中的密码。这是用于生成哈希的C#代码。//Createahashfromapwdandsaltusingsha512publicstaticstringCreatePasswordHash(string_password,string_salt){stringsaltAndPwd=String.Concat(_password,_salt);SHA512sha512=ne
Laravel可以正确存储用户名和电子邮件,但在我添加哈希函数时不会为密码字段保存任何内容。我的Controller代码:publicfunctionstore(){$data=Input::only(['username','email','password'=>Hash::make('password')]);$newUser=User::create($data);if($newUser){Auth::login($newUser);returnRedirect::route('profile');}returnRedirect::route('user.create')->wi
目前我初始化如下:$my_hash=array();像这样填充:$my_hash[$key]=$value;但是当我如下检查我的key时if($my_hash[$key])服务器抛出一个错误。如何检查我的key? 最佳答案 if(array_key_exists($key,$my_hash)){//doyourstuff}它不完全是哈希表。它是PHP中的数组数据类型。更多关于数组的操作可以在这里看到:http://php.net/manual/en/ref.array.php 关于php
我开始在我的项目上开发用户注册。用户将通过电子邮件发送的链接确认他们的注册。我想我可以使用表单中插入的电子邮件,加上一个随机盐,然后散列这个连接的字符串,这样每个字符串标记都是唯一的。链接将是这样的:http://www.example.com/register/7ddf32e17a6ac5ce04a8ecbf782ca509我认为它很好并且易于构建,但我不确定它是否足够安全。我正在使用CakePHP2.7和SQLServer2014开发这个项目。 最佳答案 这实际上取决于您如何生成MD5。只要确保您的数据是随机的。我不使用MD5来
我正在构建我的第一个Laravel应用程序,我正在尝试弄清楚我应该如何在模型级别散列密码。问题是,当尝试使用LaravelHash::类时,找不到它。我试图查找相关的API文档,但除了对Illuminate命名空间类的一些引用之外找不到任何东西-从我收集到的Hash::应该全局可用?我是PHP命名空间的新手,我猜这可能与问题有关,因为错误表明它正在寻找App\Hash我知道它不是部分App命名空间,但Illuminate命名空间。这是我的代码:attributes['password']=Hash::make($value);}}任何有助于找出造成这种情况的原因的帮助,以及任何建议,我
有什么好处吗sha1(sha1(sha1($password.$salt)));基本上有多个sha1与只有一个sha1sha1($password.$salt); 最佳答案 不要,我再说一遍,不要尝试通过对您的哈希执行“特殊”操作来使您的密码哈希更安全。首先,sha1(sha1(sha1($input)))每次迭代的副作用只有增加碰撞的机会*。增加碰撞的机会是一件非常糟糕的事情。与其亲自动手尝试密码学,何不相信该领域真正的专家制作的库?使用PortablePHPpasswordhashingframework.PHPass实际上使用
我有一个系统使用MD5来散列我的用户的密码并将其存储到我的数据库中。现在,我正在更改为另一个使用SHA1(和一个唯一的系统SALT,而不是用户唯一的)来散列密码的系统。如何使用PHP将用户旧的MD5密码转换为我的新SHA1密码? 最佳答案 您不能将md5转换为sha但实际上您的用户仅在他们即将登录时才使用密码,因此您可以修改脚本一点点自动更新//Theuserisnotauthticatedyet$auth=false;$updated=false;//FromyourLoginform$user=$_POST['user'];$p