作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我对 PHP 很陌生,我正在查看一些处理哈希的可证明性公平代码。我想知道当这些值被散列时到底发生了什么。我知道它将其转换为十六进制,但它到底是如何做到的。另外“-”到底在做什么?这是我正在查看的代码,以便让每个人都有更好的想法。提前致谢!
$server_seed = "39b7d32fcb743c244c569a56d6de4dc27577d6277d6cf155bdcba6d05befcb34";
$lotto = "0422262831";
$round_id = "1";
$hash = hash("sha256",$server_seed."-".$lotto."-".$round_id);
$roll = hexdec(substr($hash,0,8)) % 15;
echo "Round $round_id = $roll";
最佳答案
SHA-256 是一种 256 位(32 字节)哈希算法,可以为高达 264-1 位的输入计算哈希码。它经过 64 轮散列。计算出的哈希码将是一个 64 位十六进制数。例如,rajeshpatel 的 SHA-256 哈希代码为 5662895e0af2b7b9c23c753b44b3628299a009949000e6cfd60fd16c02c00433
PHP 有 hash()
函数来计算 SHA-256 哈希码。
<?php
echo hash('sha256', 'www.MyTecBits.com');
?>
关于php - PHP 中的散列。 SHA-256 如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35679969/
我是一名优秀的程序员,十分优秀!