草庐IT

HMAC_SHA

全部标签

ios - 如何将 NSString 散列为 SHA512

我有一个简短的问题...我正在构建一个社交媒体网站应用程序,我需要散列密码NSString。我将如何做到这一点?我在应用程序上有密码字段,我想对字符串进行哈希处理并在SHA512中对其进行编码以用于POST请求。提前致谢,技术达人 最佳答案 已回答:hashapasswordstringusingSHA512likeC#但这是复制粘贴的代码:#include+(NSString*)createSHA512:(NSString*)source{constchar*s=[sourcecStringUsingEncoding:NSASCI

ios - 使用 HMAC SHA1 的 CCKeyDerivationPBKDF 经常返回 -1

当我使用CCKeyDerivationPBKDF时来自#import,它返回-1这是一个未定义的结果。我不知道我是否错过了什么。如果我使用HMACMD5它可以返回成功或其他算法,并且仅当我使用HMACSHA1时它将返回错误状态。intfeedback=CCKeyDerivationPBKDF(kCCPBKDF2,clearTextData.bytes,clearTextData.length,secretData.bytes,secretData.length,kCCHmacAlgSHA1,2048,result,sizeof(result)); 最佳答案

hadoop - 我可以将 Hadoop 与 AWS4-HMAC-SHA256 一起使用吗?

我新创建的存储桶使用AWSSignatureVersion4.我正在尝试将它与Hadoop一起使用并收到消息:Exceptioninthread"main"org.apache.hadoop.fs.s3.S3Exception:org.jets3t.service.S3ServiceException:S3GETfailedfor'/'XMLErrorMessage:InvalidRequestTheauthorizationmechanismyouhaveprovidedisnotsupported.PleaseuseAWS4-HMAC-SHA256.HadoopAmazonS3上没

php - 相同的字符串,从 VB.net 和 PHP 获得的不同 SHA1 哈希值

我对字符串的SHA1散列值有一些疑问。我正在尝试将文件从用VB.net编写的客户端发送到用PHP编写的服务器。我的问题是,当我将相同的字符串传递给VB.net和PHP时,VB.net计算的SHA1值与PHP计算的值完全不同。比如我想对一个字符串进行Base64编码,然后计算这个Base64字符串的SHA1Hash。当计算机从vb.net版本和PHP版本执行此任务时,我得到两个不同的SHA1值,即使显然Base64编码字符串是相同的:VB.net:2E97A53B09C482A831540B532845BCAC79BFACCFPHP:350A2080264E2724D4BCBC521C3

php - 磁盘上文件的随机名称 sha1 或 uniqid 哪个更好?

为了将用户上传的文件存储在磁盘文件夹内的远程服务器上,我将文件名更改为$filename='/tmp/foo.txt';$newName=sha1_file($filename);//40characters//orIcando$newName=uniqid($filename)//13characters对于不太可能失败的新名称,哪种方法更可靠??谢谢。 最佳答案 更好的解决方案是使用tmpfile()或tempnam()。任何一个都可以保证创建一个未使用的文件,该文件不会发生冲突,也不会被流氓进程更改对您的权限“拦截”。tmpf

php - 使用 SHA1 时如何检查 PHP 字段是否为空

我正在使用SHA1加密密码。在我的原始代码中,我检查了密码字段是否为空:if(empty($newpassword)and(empty($newpassword2))){}由于我现在使用SHA1,当字段留空时它会自动生成da39a3ee5e6b4b0d3255bfef95601890afd80709,我该如何重写我的代码?将da39a3ee5e6b4b0d3255bfef95601890afd80709翻译回字符串?还是别的?请帮忙。if($_SERVER['REQUEST_METHOD']=='POST'){//oudepasswordcontroleif($password==$q

php - PHP 的 hash_hmac 函数的 C++ 等价物是什么?

我正在将PHP应用程序移植到C++。PHP应用程序正在使用此函数:hash_hmac—GenerateakeyedhashvalueusingtheHMACmethod如果我有这段代码,它实际上在做什么?$sStr=hash_hmac('sha256',$mydata,$mykey,$raw=true)我知道它使用sha256和我的key加密一些数据,但我如何在C++中执行此操作?我找到了hmac和sha2库,但不确定它们是否是我需要的。 最佳答案 我会考虑调查OpenSSL,一个可移植且完整的密码库(尽管它的名字,它不只是做SSL

php - 为什么像 sha1 这样的散列函数最多只使用 16 个不同的字符(十六进制)?

抱歉我有这种好奇心。sha1使用[a-f0-9]字符作为它的散列函数。我可以知道为什么它不使用所有可能的字符[a-z0-9]通过使用所有可用的字符它可以大大增加可能的不同哈希的数量,从而降低可能发生冲突的可能性.如果您认为这不是一个真正的问题,请发表评论,我会立即删除此问题。===如答案中所述,sha1NOT仅使用16个字符。正确的事实是:sha1是160位的二进制数据(引文)。我添加这个是为了防止混淆。 最佳答案 您将表示与内容混淆了。sha1是160位的二进制数据。您可以用以下方式轻松地表示它:hex:0xf1d2d2f924e

php - 使用 sha1 密码散列法恢复密码

我想为我的网站实现忘记密码功能。我使用sha1散列密码。我将如何为用户恢复它?实现它的最佳方法是什么? 最佳答案 简短的回答,你不能。您想实现密码重置功能,而不是密码检索功能。散列密码的全部意义在于您无法存储用户的密码,如果丢失也无法恢复。This应该让您大致了解如何允许用户重置忘记的密码: 关于php-使用sha1密码散列法恢复密码,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions

php - Node Crypto createHmac() 输出与具有相同输入的 PHP hash_hmac() 输出不同吗?

我正在尝试在Node.js中复制一个PHP哈希生成函数。此哈希用作API的一部分。PHP版本创建系统接受的正确输出。尽管我认为函数的输入相同,但Node版本会创建不同的输出。这是因为PHP和NodeHMAC函数的工作方式有一些根本不同吗?还是因为我只是缺少字符编码的一些怪癖?还是我只是搞砸了其他事情?PHP代码$url='https://example.com/api/endpoint';$user='apiuser';//Examplekey$key='+raC8YR2F+fZypNJ5q+CAlqLFqNN1AlAfWwkwJLcI7jrAvppjRPikWp523G/u0BLSp