Blacknet介绍

概述:Blacknet是黑币作者rat4在2018年9月开始立项,通过14周的燃烧周期,燃烧Blackcoin作为价值锚定的一条代码从零开始构建的POS3.0公链。(1)主网于12月23日正式上线。 (2)众所周知,Blackcoin作为一个POS版本的比特币,所采用的Pos3.0算法获得了许多币种的认可,上百种币种引用到了Blackcoin的POS技术。 Blacknet正是在这个基础上, 运用Kotlin开发语言,开发出的新一代的公链旨在解决比特币的不足。 (3)

Blacknet是一条可扩展的POS网络。没有预挖,没有ICO,没有基金会。计划实现的功能有:基于账户的POS证明、离线挖矿、原子互换、投票、加密消息、无授权扩展。并计划将在POS算法、去中心化交易所、零知识匿名上进行功能应用上的扩展。 (4)

一:为什么用账户而不是UTXOs (5)
比特币和它的很多衍生物,存储用户的余额都是基于未消费的交易输出 unspent tx outputs(UTXOs):整个系统的状态就是由UTXOs来组成(可以把它想象成“币”),这样每个币都有所有者和价值,每一个交易需要一个多个币,并创造出一个或多个币,它们依赖如下的验证约束:

1.每个相关输入必须有效并且未花费
2.每个交易必须有签名,并且符合每个输入的所有者的
3.总的输入等于输出
用户的“余额”就是总的这些“币”,并且用户可以提供私钥来产生有效的签名。


Blacknet不打算采用这种方案,而采用更简便的方法:每一个账户都有一个余额状态(以及特定的内部数据),一笔交易如果在账户上有足够的余额支付,则交易是有效的。在这种情况下,发送账户被为借方计入值,接收账户为贷方计入值。

UTXOs的好处:

1.高度的隐私:如果用户使用一个新地址来做交易,比较难把它和其他账户关联起来。这非常适用于货币,但是对于dapps就太武断,因为dapps经常会涉及到记录复杂的一系列用户状态,并不是像货币那样的简单的状态。
2.潜在的扩展范式:UTXOs理论上更兼容特定的可扩展性范式,我们可以仅仅依靠一些币的所有者来维护Merkle proof的所有权,即使每个人包括所有者决定忘记这些数据,也只有所有者受害。在账户范式中,每一个丢失了Merkle tree对应一个账户部分的人,就不能处理影响到这个账户的操作,包括给它发送消息。尽管如此,非UTXO依赖的扩展范式也是存在的。

账户的好处:
1.节省大量空间:例如,如果一个账户有5个UTXO,然后切换UTXO模式到账户模式可以减少的空间是(20 + 32 + 8) * 5 = 300 bytes(20 for the address, 32 for the txid and 8 for the value) 到 20 + 8 + 2 = 30 bytes (20 for the address, 8 for the value, 2 for a nonce(see below))。在实际中,可能没有这么多,因为账户需要存储在Patricia tree (see below) ,但是依然节省了大量空间。另外,交易可以变小(例如:以太坊100 bytes VS. 200-250 bytes比特币),因为每一个交易只需要一个引用,一个签名和产生一个输出。
2.更大的替换性:因为这里没有区块链意义上的币,所以UTXO变得不符合实际,无论是技术上还是法律上,需要去建立黑名单计划,去区分币的来源。
3.常量轻客户端引用:轻客户端可以在任何点引用所有和账户关联的数据,通过扫描状态树用特定的方法。在一个UTXO范式中,每个交易的引用变化,对于一个长期运行的dapps来讲,会造成特定的烦恼,如果采用上面讲的UTXO范式机制的话。
4.POS:虽然可以把POS加入UTXO范例, 但这个范例会比只使用账户更复杂和丑陋。

账户范式的一个弱点是,为了防止重放攻击,每一个交易都必须需要一个“序号”,账户需要跟踪这个序号的使用,如果序号比最后一个序号大一就接受这个序号。这意味着,长期未使用的账号不能被账户状态剔除。

二:离线挖矿(6)

Blacknet的去中心化矿池功能可以看作是一个去中心化的银行,用户可以随存随取,进出自由完全去中心化。任何人可以无条件组建矿池,只要能够获得足够信任(其他账户愿意将权重租借给你)。

Blacknet池介绍:
Blacknt所推出的Lease功能,
通俗地讲就是把自己个人账户的挖矿权重租借给矿池地址, 由矿池地址根据所借到的权重进行集中挖矿。

以下举例说明整个权重出租的流程。

1.权重出租
个人账户将闲置或者零散权重出租给矿池地址, 以此作为获得挖矿分红的依据。
※权重出租最小单位为1000BLN。

出租时所产生区块高度作为取消时的依据之一, 高度可以之后在区块浏览器中确认。
当权重出租发生后,个人账户的Balance,即所拥有Blacknet数量将发生相应减少。
此时,矿池账户的stakingBalance(权重)亦不会马上发生变化。
要等1350个区块高度时间后才能反映到矿池地址的stakingBalance(权重)上去。
※1350区块高度时间为成熟时间
※1350区块高度时间大约为24H

成熟后矿池地址Balance不会变化,只会增加相应的stakingBalance(权重)。

2.权重出租取消
当个人Account想取消(赎回)权重时,可随时取消,不用等到矿池stakingBalance(权重)成熟。
取消后个人账户Balance立即恢复出租前的数量。
※权重取消必须填写正确的权重出租时的高度height和数量amount, 如果以上两者不一致,就不能取消。
出租时的区块高度height和数量amount可到Blacknet区块浏览器中查询Account得到。

三: 为什么采用POS?Blacknet在POS弊端上的优化。

参考资料
(1)https://blacknet.ninja/burn.html 初始燃烧分配详情
(2)https://blacknet.ninja/posts/2018-12-21-launch.html 创世块生成时间
(3)https://bitcointalk.org/index.php?topic=469640.34760 #34762
(4)https://blacknet.ninja/specs.html Blacknet 特点
(5)https://blacknet.ninja/posts/2018-08-06-why-accounts.html https://github.com/ethereum/wiki/wiki/Design-Rationale#accounts-and-not-utxos
(6)http://stakepool.xyz 枫牌矿池
黑币官网 黑网官网 黑币More钱包官网 黑币区块链浏览器 AEX交易所 百度黑币吧 gitter黑币在线聊天社区