前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >区块哈希游戏竞猜系统开发(成熟代码)

区块哈希游戏竞猜系统开发(成熟代码)

原创
作者头像
开发weixin-XTKF556
发布2022-06-24 16:17:46
3350
发布2022-06-24 16:17:46
举报
文章被收录于专栏:程序员11程序员11

区块链的四大核心技术是密码学、分布式账本、共识机制和智能合约。密码学作为其中最重要的部分,可以说是区块链的基石,其他技术都是基于密码学构建区块链的高层建筑。区块链中主要使用的密码算法有两部分:

  一是哈希算法,

  二是非对称加密。

  首先,它是去中心化的。原来由一方维护的数据库,变成了多方共同维护的数据库。每个人都通过共识一起写数据,没有人可以单独控制数据。

  其次,它允许每个人从单独的账户变为联合记账,这带来了数据的一致性和公开透明。

  另外,区块链只允许写入数据,不允许删除和修改,可以防止数据被秘密篡改。简单来说,哈希算法是一个特殊的函数。无论输入多长的字符串,都可以通过这个函数得到一个定长的输出值。就像身份证号码一样,永远是十八号,也是全国唯一的一个。哈希算法的输出值称为哈希值。哈希算法具有三个特点。

  哈希算法的第一个特点是抗碰撞能力。所谓碰撞,就是输入两个不同的数据,最后得到相同的输入。就像我们购物的时候撞衫,坑的碰撞就是大部分的输入都能得到唯一的输出。在区块链的世界里,任何交易或账户的地址都是完全由哈希算法生成的。这也保证了区块链网络中交易或账户地址的唯一性。第二个特点是它是单向的。例如,如果输入一串数据,可以通过哈希算法得到一个哈希值,但是没有办法将这个哈希值反演得到输入的数据串。这是单向的,正是基于此,区块链有效地保护了我们信息的安全。哈希算法的第三个特点是抗篡改能力。对于任何输入,即使是很小的变化,散列值的变化也会非常大。它的这个特征在块和块之间的连接中起着关键作用。区块链的每个区块都由前一个区块的哈希值标记。除非有人能破解整条链上所有的哈希值,否则一旦数据记录在链上,就不可能篡改。 哈希性质:

  (1)单向性。Thatis,givenaninputnumber,itiseasytocalculateitshashvalue,butgivenahashvalue,theoriginalinputnumbercannotbeobtainedaccordingtothesamealgorithm.

  (2)弱抗碰撞性。Thatis,givenaninputnumber,itiscomputationallyinfeasibletofindanotherhashvaluetogetagivennumberwhenusingthesamemethod.

  (3)强抗碰撞性。Thatis,foranytwodifferentinputnumbers,itisnotfeasibletocalculatethesamehashvalueaccordingtothesamealgorithm.

  简单解释:哈希(Hash)算法,即散列函数。它是种单向密码体制,即它是一个从明文到密文的不可逆的映射,只有加密过程,没有解密过程。同时,哈希函数可以将任意长度的输入经过变化以后得到固定长度的输出。哈希函数的这种单向特征和输出数据长度固定的特征使得它可以生成消息或者数据。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
区块链
云链聚未来,协同无边界。腾讯云区块链作为中国领先的区块链服务平台和技术提供商,致力于构建技术、数据、价值、产业互联互通的区块链基础设施,引领区块链底层技术及行业应用创新,助力传统产业转型升级,推动实体经济与数字经济深度融合。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档