如何将 php crypt 函数(SHA512)转换为 ruby​​?

How to convert php crypt function (SHA512) to ruby?(如何将 php crypt 函数(SHA512)转换为 ruby​​?)
本文介绍了如何将 php crypt 函数(SHA512)转换为 ruby​​?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

注意:我不是在寻找解决方法,我在寻找一个普通的 ruby​​ 解决方案!

这个问题类似于这个 问题,但没有得到回答,这只是那里的炮弹突击队的一种解决方法.

this question is the similar to this question, but it isn't answerd, its just a workaround to a shell commando there.

我想生成一个与 debian/etc/shadow 格式兼容的 sha512 加密字符串.

i want to generate a sha512 encrypted string which is compatible with the format in debian /etc/shadow.

以下使用 php 创建一个正确的字符串:p>

the following create a correct string with php:

$salt = 'fGn9LR75';
$hash = crypt('test', '$6$'.$salt);
// hash is:
// $6$fGn9LR75$YpI/vJHjEhvrYp5/eUSRinpiXdMthCxFWSEo0ktFNUaRBsA7pCWYzzmQptmnfyHno9YEJFNHYuESj3nAQmSzc1

据我所知,这是一个正常的、加盐的 base64 编码字符串.sha 生成方法的规范是 这里

as far as i know this a normal, salted base64 encoded string. the spec of the sha generation method is here

推荐答案

irb(main):001:0> salt = 'fGn9LR75';
irb(main):002:0* hash = 'test'.crypt('$6$' + salt);
irb(main):003:0* hash
=> "$6$fGn9LR75$YpI/vJHjEhvrYp5/eUSRinpiXdMthCxFWSEo0ktFNUaRBsA7pCWYzzmQptmnfyHno9YEJFNHYuESj3nAQmSzc1"

SHA256/512 的 crypt() 算法不是简单的 base64 编码散列.这是一个故意疯狂的过程,涉及并行运行的多个哈希.

The crypt() algorithm for SHA256/512 is not simply a base64-encoded hash. It's an intentionally crazy process which involves multiple hashes running in parallel.

这篇关于如何将 php crypt 函数(SHA512)转换为 ruby​​?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Convert JSON integers and floats to strings(将JSON整数和浮点数转换为字符串)
in php how do I use preg replace to turn a url into a tinyurl(在php中,如何使用preg替换将URL转换为TinyURL)
all day appointment for ics calendar file wont work(ICS日历文件的全天约会不起作用)
trim function is giving unexpected values php(Trim函数提供了意外的值php)
Basic PDO connection to MySQL(到MySQL的基本PDO连接)
PHP number_format returns 1.00(Php number_Format返回1.00)