赞
踩
我们要用PHP编程语言构建区块链,区块链本身就是一个非常简单的概念,它是一个非常简单的数据结构,数字货币是很复杂,但区块链不是,它们复杂的原因是共识算法,挖矿机制和运行在他们之上的一切,但区块链本身是很容易理解的,在你真正了解区块链是如何工作的之前,你需要知道什么,你需要知道什么是哈希hash?它们是如何工作的?
哈希基本上是某种数据的数字签名,例如可以拍一部电影,可以hash它并得到一个数字签名;可以拿一封电子邮件,可以把它hash并得到一个数字签名;还可以拿一个字,也可以hash它,你可以拿任何数据,然后hash它,你都可以得到一个hash值。它只是对该数据进行数字签名。
我们将在PHP中构建区块链,这将非常简单,如果你懂一点儿编程,你也可以用另一种语言来做,如果你不懂编程,我想你仍然能够大致理解它是如何工作的,所以让我们来谈谈哈希hash。
<?php
$list1 = ["a","b","c"];
$list2 = ["a","b","c"];
echo "list 1: ".md5(serialize($list1));
echo "<br/>list 2: ".md5(serialize($list2));
?>
正如你所看到的,我们有两个列表,我们有两个包含a、b、c的列表,这是数据,这是我们试图hash的字符串,让我们看看我们从列表1和2中得到什么样的数字签名。
输出结果:
list 1: ec10e0c7a344da191700ab4ace1a5e26
list 2: ec10e0c7a344da191700ab4ace1a5e26
你可以看到,当我们得到这两个哈希字符串或数字签名,这两个是相同的。
如果我现在改变list1中的内容,例如:
<?php
$list1 = ["aaa","b","c"]; //Changed
$list2 = ["a","b","c"];
echo "list 1: ".md5(serialize($list1
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。