HYCON(Hyperconnected Coin)是基于Infinity项目团队开发的一款更快,更具可扩展性区块链的数字资产。它使用DAG(有向无环图)结构,能够同时发布多个块,并且能够解决冲突事务并通SPECTER一致性算法拒绝双重花费。
无限项目的愿景是提供一个便捷、安全、可扩展、以用户为中心的区块链,以及可被广泛采用的加密货币生态系统。结合 SPECTRE 协议和 Black2b 哈希算法,我们提出了一种既安全又方便的新型加密货币。
在无限项目的形成过程中,我们提出了下面两个关键问题:
鉴于现有加密货币的局限性,市场的需求是什么?我们怎样提供解决方案?
一种加密货币须具备哪些特性才能被广泛采用并融入到更为广泛的经济中?
考虑到这些问题,我们对现有的区块链进行了彻底分析——包括比特币、以太坊以及各种有前景的代币,揭示了每个项目的优势和弱点。然而很难找到一个能够回答我们最初提出的问题的项目。
因此,无限项目团队开始研究新的适合在现实世界中大规模采用的技术和算法,来帮助我们实现目标。与此同时,我们设计了无限项目的基本框架,并制定了以下 5 个核心目标:
1. 确定加密货币的实际市场需求
2. 开发一种灵活的加密货币
3. 建立以用户为中心的区块链平台
4. 建立可持续创新的生态系统
5. 研究去中心化加密货币交易所的实现办法
创世区块
韩国标准时间2018年1月4日凌晨3:15 ( GMT 9 ) , HYCON 发布了创世区块 , 可以在GitHub(HYCON 存储库的一部分)上查看。
哈希算法
HYCON 采用 Blake2b 作为系统中唯一的哈希函数 ,而随着 ASIC 技术的最新发展【38】,Blake2b 逐渐被抗矿机(ASIC-resistant)的 Cryptonight算法所取代,Monero 也采用该算法。Cryptonight 算法工作时使用伪随机内存读写操作,故与标准ASIC 体系结构不兼容,却使得 CPU 与 GPU 的工作性能差别相对不那么明显。今后,为了防止采掘资源的中央化,计划遵循 Monero 设定的示例,并定期调整哈希算法,以在开采期间维持 ASIC 阻力。
共 识 机 制 ——SPECTRE协议
比特币的共识机制是中本协议 , 与之不同 , HYCON使用称作SPECTRE的协议作为共识机制。SPECTRE在两组块之间采用投票算法,以成对的方式对它们进行排序,如块x应在块y之前,或块y应在块x之前,使得区块链变为有向无环图(简称 DAG)的形式。
序列化-协议缓冲器
在区块链系统中,任意时刻都有任意数量的信息在网络上飞来飞去,重要的是节点软件能够以一致且正确的方式解码这些数据。由谷歌开发的协议缓冲器允许在不同的平台上使用一致的消息定义,从而允许使用各种编程语言来开发运行在无限区块链上的节点。由于序列化层与编程语言无关,所以对于跨平台的程序是非常有用的。协议缓冲器还允许向后和向前兼容,使得更新更容易产生软分支,而不是硬分支。它还使第三方软件更加兼容,允许其他开发人员与 HYCON 网络进行交互。
采矿
概述
和大多数现有加密货币相似,采矿出块需要提供工作量证明(PoW)。矿工根据 DAG 末端的哈希值计算下一个块的哈希值、块中所含交易的梅克尔树(Merkle)根,以及一个随机数, 该随机数在超过当前难度的哈希值被计算出来之前一直变化。SPECTRE的创始人认为使用该协议可以做到每秒产出 10 个块,而 HYCON 则以每秒 1 个块作为初始目标。虽然目前的原型采用了工作量证明,但是我们非常清楚比特币和以太坊所需的大量电力,所以正在考虑其他选择。其中一种不太为人知的方法是空间证明(Proof of Space)。它要求矿工预先计算并存储大量数据,然后在其中搜索找到满足当前难度的答案。这种方法使用很少的电力,且已被 Burst Coin 和 Space Mint证明有效。
采矿过程的细节
采矿开始时将对块头的内容进行编码和哈希计算,块头不会因为采矿而改变。这些内容包括与先行块的关联、块中所含交易的梅克尔树(Merkle)根、块的难度目标、块的时间戳,以及带有Trie 前缀的 MPT 树( Merkle Patricia Tree) 根 ,代表了该块中的交易结束后 的状 态。
钱包与账户
钱包图形用户界面(GUI)
运行 HYCON 软件的完整节点可以访问本地托管的网页图形用户界面(GUI)进行钱包操作 、交易,以及区块链的开采等。该图形用户界面使用 React 编写,支持轻量级的高性能接口。
HYCON 钱包
HYCON 钱包采用行业标准的椭圆曲线加密法进行交易签署 , 特别是 sep256k,并根据BIP39的规定使用恢复钱包的助记码,以方便集成第三方钱包供应商。根据BIPS32和44 的规定,还为 HD(分层确定性)钱包作出了规定。
HYCON 地址
HYCON 地址是从相关公钥的 32 字节 blake2b 散列中分片生成的 20 字节数组。对于人类可读性,地址输出为 base58 字符串,前缀为大写 H。字符串的最后 4 个字符用作地址的校验和。校验和分三步计算。首先,计算地址的 32 字节 blake2b 哈希。然后,这个哈希输出被编码为 base58 字符串。最后,这个字符串中的前 4 个字符被提取并附加到地址的字符串表示形式中。以这种方式使用校验和将意外使用错误输入地址的可能性降至最低。
HYCON 地址由 32 字节 Blake2b 解析的结果生成 20 字节。为了加毒地址的第一个文字是以大写H开始,Base 58 string的结果构成。string的最后四个字是地址的格子岛。格子岛算为三阶段。先计算地址的 32 字节 blake2b 海报价格后,结果以 Base 58 string 编码。最后还附上了带有 4 个字的地址。如果用这种方式使用格子岛,可最小化输入地址的可能性。
账户与余额
为了记录 HYCON 用户的支出与余额,需要用到一个会计模型。HYCON 采用的模型是基于以太坊所使用并在其黄皮书中描述的,一种叫做 Merkle-Patricia Trie(带 Trie 前缀的MPT(Merkle Patricia Tree))的数据结构。每个块都包含块中交易结束后的状态。用 MPT 树根的 blake2b 哈希值表示,代表了所有 HYCON 账户的账户数据。
保存的账户数据包括某个 HYCON 账户的余额 , 与该账户相关的最近块的关联信息 ,以及一个随机数,代表该账户发起了多少交易。随机数用于防范重放攻击(Replay Attack),而前块的关联信息其实是一种优化,使交易历史查询更快,也使 SPECTRE 更容易追踪双重支付问题。在会计模型中使用 blake2b 哈希,因为它允许处理大量交易和余额所需的合适的哈希。
相关链接:
https://www.qukuaiwang.com.cn/szhb/3052.html###
暂无内容
暂无内容