在介绍Hash算法之前,先给大家来个数据结构中对hash表(散列表)的简单解释,然后我再逐步深入,讲解一下hash算法. 一.Hash原理——基础篇 1.1 概念 哈希表就是一种以 键-值(key-indexed) 存储数据的结构,我们只要输入待查找的值即key,即可查找到其对应的值. 哈希的思路很简单,如果所有的键都是整数,那么就可以使用一个简单的无序数组来实现:将键作为索引,值即为其对应的值,这样就可以快速访问任意键的值.这是对于简单的键的情况,我们将其扩展到可以处理更加复杂的类型的键. 使…
今天在学椭圆曲线密码(Elliptic Curve Cryptography,ECC)算法,自己手里缺少介绍该算法的专业书籍,故在网上查了很多博文与书籍,但是大多数博客写的真的是...你懂的...真不愧是 ‘天下文章一大抄’ 啊! 雷同不说,关键是介绍的都不是很清楚,是我在阅读过程中.产生的很多疑问无法解决!例如:只来句‘P+Q=R’,但是为什么等于呢?是根据什么计算出来的呢? 后来查了好久,才发现:这是规定的.是定义!瞬间很是无语! 好了,不吐槽了,为了方便大家对椭圆曲线密码算法有系统的了解,…
章节 区块链 – 介绍 区块链 – 发展历史 区块链 – 比特币 区块链 – 应用发展阶段 区块链 – 非对称加密 区块链 – 哈希(Hash) 区块链 – 挖矿 区块链 – 链接区块 区块链 – 工作量证明 区块链 – 交易流程与挖矿 区块链 – 矿工的激励 区块链 – 默克尔树(Merkle Tree) 区块链 – 付款确认 区块链 – 处理冲突 区块链 – 用户隐私 区块链 – 防范攻击 区块链 – 进一步深入了解 密码学中,最重要的函数之一是哈希函数.哈希函数将任意大小的数据(内容)映射…
在计算机领域,Merkle树大多用来进行完整性验证处理.在处理完整性验证的应用场景中,特别是在分布式环境下进行这样的验证时,Merkle树会大大减少数据的传输量以及计算的复杂度. Merkle哈希树是一类基于哈希值的二叉树或多叉树,其叶子节点上的值通常为数据块的哈希值,而非叶子节点上的值是将该节点的所有子节点的组合结果的哈希值. 如下图所示为一个Merkle哈希树,节点A的值必须通过节点C.D上的值计算而得到.叶子节点C.D分别存储数据块001和002的哈希值,而非叶子节点A存储的是其子节点C.…
自MoreToken钱包跑路之后,2019年3月以来陆续多个钱包.交易所跑路,造成了大量用户账户被盗,仅MoreToken钱包用户损失总价值就达12.2亿人民币,用户损失惨重.为什么这么多钱包.交易所都钟爱跑路呢?人们普遍认为:钱包不就只是一种交易工具而已吗,用户账户的Token并没有存储在钱包中,钱包跑路与用户的Token有什么关系? 咱们先来分析一下个其中的技术原理.推广模式以及跑路套路,我们以钱包为例进行分析. iFace安全专家揭秘:区块链钱包技术原理 市面上的钱包几乎千篇一律地使用用户…
农历春节后,互联网创业圈并不太平. 最早,滴滴被曝裁员,占比约为全员的15%,涉及员工约2000人.CEO程维在全员会议上称公司要做好过冬准备.此后,京东接棒,其裁员对象上升至副总裁级别高管,比例占到了该级别的10%. 大环境不景气,区块链行业又能怎样?招聘,作为判断一个产业成熟与否的“试金石”,它能给我们哪些启示? 互联网裁员声“此起彼伏”,巨头布局区块链 2019年以来,包括阿里巴巴.京东.滴滴.斗鱼.知乎.美团点评.网易严选等知名互联网公司相继被曝裁员.虽不少公司出面否认,但一时之间媒体大…
密码学中,最重要的函数之一是哈希函数.哈希函数将任意大小的数据(内容)映射到固定大小的数据(哈希值). 哈希函数是单向的,从内容生成哈希值很容易,但从哈希值映射到内容很难. 比特币使用SHA-256哈希函数,该函数生成一个大小为256位(32字节)的哈希值(输出).如图所示 Bob在向Alice下订单时,创建了一条类似于上面所示的消息.把这个消息通过哈希函数生成32字节的哈希值. 哈希值的特点是,哈希值对于对于消息内容是唯一的,消息内容有任何改动,哪怕是多了个字符,生成的哈希值也是不一样的. 所…
问题导读1.哈希算法在区块链的作用是什么?2.什么是哈希算法?3.哈希算法是否可逆?4.比特币采用的是什么哈希算法? 作用在学习哈希算法前,我们需要知道哈希在区块链的作用哈希算法的作用如下:区块链通过哈希算法对一个交易区块中的交易信息进行加密,并把信息压缩成由一串数字和字母组成的散列字符串. 区块链的哈希值能够唯一而精准地标识一个区块,区块链中任意节点通过简单的哈希计算都接获得这个区块的哈希值,计算出的哈希值没有变化也就意味着区块链中的信息没有被篡改. 定义 hash (哈希或散列)算法是信息技…
什么是Merkle Tree? Merkle Tree 的命名来自于美国密码学家Ralph C. Merkle ,关于他的个人资料:传送门https://en.wikipedia.org/wiki/Ralph_Merkle.与前面讲的几种算法不同,Merkle Tree是一种树结构,而并非具体的某种算法. 在具体讲之前,简单说一下哈希算法: 哈希算法是密码学中一种基础的算法,通常的特点: 1.任意的输入值经过哈希算法都能产生固定长度的输出. 2.输入值的微小变化都能导致输出值的巨大变化. 优秀的…
最近区块链领域流行了一种"怪病",许多区块链项目或者设计方案都加入了一个叫做VRFs的算法.那么, (1) 什么是VRFs? (2) VRFs在区块链中解决了什么问题? 本文旨在介绍VRFs的原理以及在区块链中的用途,不涉及复杂的VRFs的详细设计实现以及安全性证明. VRFs介绍 VRFs全称Verifiable Random Functions,也就是可验证随机函数.从名字上可以看出VRFs有三个重要的特点: 可验证 随机性 函数组 实际上,VRFs是hash函数构造的公钥密码方案…