社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  区块链

是否所有区块链阵列实现都不正确?

Sophie259 • 6 年前 • 2005 次点击  

我在网络上发现了许多区块链实现,但它们是真正可以扩展的区块链吗? Here 我们可以看到区块链是作为一个数组启动的。

var blockchain = [getGenesisBlock()];

Here 我们可以看到相同的实现:

constructor() {
        this.chain = [this.createGenesis()];
    }

This 文章还建议:

constructor(genesisNode) {
     this.chain = [this.createGenesisBlock()];

然而,这些实现中是否有任何一个可以扩展?

技术上,根据 maerics ,

根据ECMA-262第5版,阵列的最大长度 由于 touint32抽象操作,因此最长的数组 232-1=4294967295=42.9亿元素。

尺寸不是问题。以太坊使用“仅” 7 millions blocks ,比特币“仅” 500k 因此,未来有足够的空间。我想的真正问题是,读取数组的最后一个元素需要多长时间,这是否可以扩展? 在区块链中,“块”结构总是需要读取最后一个块的散列值,因此我假设随着它的扩展,需要更长的时间才能完成。

如果比特币和/或以太坊的区块链阵列没有更多空间存储区块,那么比特币和/或以太坊会做什么?区块链会就此结束吗?

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/30548
 
2005 次点击  
文章 [ 1 ]  |  最新文章 6 年前
molamk
Reply   •   1 楼
molamk    6 年前
  • 这个 可扩展性 问题来自 确认交易并达成共识的成本 在节点之间。所以访问某个块的成本并不是问题所在。
  • 链链是 非数组 . 从概念上来说,它更像是 链表
  • 无限制 块的数量(但硬币的数量有一个)。存储这些块的空间也不受限制。

回答这个问题

是的,问题中给出的所有实现都不正确/不足以让区块链工作。对于一些实现,您可以参考 Bitcoin's repository Ethereum's