T*******x 发帖数: 8565 | 1 昨天通过本版的介绍看了一下blockchain,觉得这个确实可能是一个改变未来的技术。
有一个疑问:参与blockchain的每一个node都要下载整个blockchain的所有历史数据吗
?那这个历史数据越来越大怎么办?现在bitcoin的历史数据据说大概几十G,这不算
啥 ,但是以后越来越大怎么办?对node的要求越来越高,能够参与的越来越少了。 |
n*********2 发帖数: 357 | 2 > 参与blockchain的每一个node都要下载整个blockchain的所有历史数据吗?
是的。
》 那这个历史数据越来越大怎么办?
这也是为什么Bitcoin 要增加新块创建的难度的原因。
》现在bitcoin的历史数据据说大概几十G,这不算啥
这个历史数据已经很大了。 现在开一个新的节点, 光下载和检查旧的历史纪录就要一
个星期。
》但是以后越来越大怎么办?
根据Bitcoin 的设计, 这个增长速度不会大到无法控制的地步。(大致每10分钟一个
新的块。)
》对node的要求越来越高,能够参与的越来越少了。
对, 这是一个问题。 如前所述, 现在运行一个新的节点不是那么容易的了。
我的感觉就是大部分人其实不是真懂 blockchain 是个什么东东。 都是跟风。 我读过
人行里搞技术的人写的这方面, 感觉他们压根就不懂这玩意。 估计是商业上有人搞,
他们有压力, 必须跟, 就玩概念。
现在blockchain 被滥用的倾向很大: 什么应用都拿来套一套, 然后卖炒作。
【在 T*******x 的大作中提到】 : 昨天通过本版的介绍看了一下blockchain,觉得这个确实可能是一个改变未来的技术。 : 有一个疑问:参与blockchain的每一个node都要下载整个blockchain的所有历史数据吗 : ?那这个历史数据越来越大怎么办?现在bitcoin的历史数据据说大概几十G,这不算 : 啥 ,但是以后越来越大怎么办?对node的要求越来越高,能够参与的越来越少了。
|
n*w 发帖数: 3393 | 3 还有那个etherum 的smart contract. 看起来就是一段小代码。有什么特别? |
n*w 发帖数: 3393 | 4 我看到一个peer to peer买卖多余的太阳能电的start up。 说用block chain。每户电
源都装个小盒子。我猜miner也在上面运行。
问题是这个盒子运算能力应该不强。有人接个强机器是不是就可以乱搞了?blockchain
在iot说是应用广泛。但iot都是computing power超弱的。很容易找到个计算能力超过
半数的机器吧? |
d******c 发帖数: 2407 | 5 要说技术改变世界政治和经济,这大概算一个突出例子了。对整个地下金融,国际金融
都有很大的影响。
有个blogger井底望天声称他向国内高层建议跟进blockchain,并且被采纳来着,肯定
有政府决策在里面。
不知道创始者到底是谁,是不是那个日本人。
【在 n*********2 的大作中提到】 : > 参与blockchain的每一个node都要下载整个blockchain的所有历史数据吗? : 是的。 : 》 那这个历史数据越来越大怎么办? : 这也是为什么Bitcoin 要增加新块创建的难度的原因。 : 》现在bitcoin的历史数据据说大概几十G,这不算啥 : 这个历史数据已经很大了。 现在开一个新的节点, 光下载和检查旧的历史纪录就要一 : 个星期。 : 》但是以后越来越大怎么办? : 根据Bitcoin 的设计, 这个增长速度不会大到无法控制的地步。(大致每10分钟一个 : 新的块。)
|
n*********2 发帖数: 357 | 6 这个太阳能电小盒子听起来就是一个滥用 Blockchain 的应用。
NPR曾经报道过一个用Blockchain 来存储病人病历供所有医生来查询的应用。 我去那
个公司的网站看了一下, 发现就是忽悠。 IT界瞎搞的也很多。
etherum 我没有仔细看过。 不过那个etherum网站并不提供技术文本(或者我遗漏了?
)。 它只是提供一个工具平台。感觉到大规模滥用Blockchain的时代要来了。
blockchain
【在 n*w 的大作中提到】 : 我看到一个peer to peer买卖多余的太阳能电的start up。 说用block chain。每户电 : 源都装个小盒子。我猜miner也在上面运行。 : 问题是这个盒子运算能力应该不强。有人接个强机器是不是就可以乱搞了?blockchain : 在iot说是应用广泛。但iot都是computing power超弱的。很容易找到个计算能力超过 : 半数的机器吧?
|
n*********2 发帖数: 357 | 7 Bitcoin 是天朝贪官们转钱出国的天然好工具。 不知道土共为什么还要拥抱它。 应当
把它当成洪水猛兽才对。
》》 不知道创始者到底是谁,是不是那个日本人
这个要真是穷究, 应当不难找到。 既然提到了这个, 有一个问题: 给定两个软件包
(源码, 比如 C++), 有没有这样开源工具来检测这两个软件包是不是同一个人或者
同一个小组开发的? (比如通过编程风格, 等等)
【在 d******c 的大作中提到】 : 要说技术改变世界政治和经济,这大概算一个突出例子了。对整个地下金融,国际金融 : 都有很大的影响。 : 有个blogger井底望天声称他向国内高层建议跟进blockchain,并且被采纳来着,肯定 : 有政府决策在里面。 : 不知道创始者到底是谁,是不是那个日本人。
|
w***g 发帖数: 5958 | 8 这样的检测工具倒是可以用deep learning来做。直接拿github上的代码训练。
就是不知道会不会有市场。
【在 n*********2 的大作中提到】 : Bitcoin 是天朝贪官们转钱出国的天然好工具。 不知道土共为什么还要拥抱它。 应当 : 把它当成洪水猛兽才对。 : 》》 不知道创始者到底是谁,是不是那个日本人 : 这个要真是穷究, 应当不难找到。 既然提到了这个, 有一个问题: 给定两个软件包 : (源码, 比如 C++), 有没有这样开源工具来检测这两个软件包是不是同一个人或者 : 同一个小组开发的? (比如通过编程风格, 等等)
|
n*********2 发帖数: 357 | 9 市场不知道。 但是搞出几个大的(世界级)新闻是很有希望的。
【在 w***g 的大作中提到】 : 这样的检测工具倒是可以用deep learning来做。直接拿github上的代码训练。 : 就是不知道会不会有市场。
|
a*w 发帖数: 4495 | 10 看过一个说法,每个交易都存储于多个节点,
而不是全部节点。
【在 T*******x 的大作中提到】 : 昨天通过本版的介绍看了一下blockchain,觉得这个确实可能是一个改变未来的技术。 : 有一个疑问:参与blockchain的每一个node都要下载整个blockchain的所有历史数据吗 : ?那这个历史数据越来越大怎么办?现在bitcoin的历史数据据说大概几十G,这不算 : 啥 ,但是以后越来越大怎么办?对node的要求越来越高,能够参与的越来越少了。
|
|
|
l******n 发帖数: 9344 | 11 blockchain‘用在iot?blockchain的有点对iot没有用处呀
blockchain
【在 n*w 的大作中提到】 : 我看到一个peer to peer买卖多余的太阳能电的start up。 说用block chain。每户电 : 源都装个小盒子。我猜miner也在上面运行。 : 问题是这个盒子运算能力应该不强。有人接个强机器是不是就可以乱搞了?blockchain : 在iot说是应用广泛。但iot都是computing power超弱的。很容易找到个计算能力超过 : 半数的机器吧?
|
l******n 发帖数: 9344 | 12 如果不是所有节点都有所有的transaction,那fraud就变得很容易。信息完全公开透明
,所有节点地位必须平等。否则decentralization就是joke了
【在 a*w 的大作中提到】 : 看过一个说法,每个交易都存储于多个节点, : 而不是全部节点。
|
a*w 发帖数: 4495 | 13 每个交易都随机选多个节点存储,容易破解
吗?
【在 l******n 的大作中提到】 : 如果不是所有节点都有所有的transaction,那fraud就变得很容易。信息完全公开透明 : ,所有节点地位必须平等。否则decentralization就是joke了
|
T*******x 发帖数: 8565 | 14 我觉得blockchain/bitcoin似乎有两个功能,它们不一定非要在一起不可:一个是作为
公开账本的可信性,一个是作为新的货币的挖掘产生机制。
可信性一定要建立在挖掘难度上吗?还是只建立在公开的复制到世界各地的大量的node
上?
【在 T*******x 的大作中提到】 : 昨天通过本版的介绍看了一下blockchain,觉得这个确实可能是一个改变未来的技术。 : 有一个疑问:参与blockchain的每一个node都要下载整个blockchain的所有历史数据吗 : ?那这个历史数据越来越大怎么办?现在bitcoin的历史数据据说大概几十G,这不算 : 啥 ,但是以后越来越大怎么办?对node的要求越来越高,能够参与的越来越少了。
|
n*w 发帖数: 3393 | 15 both
node
【在 T*******x 的大作中提到】 : 我觉得blockchain/bitcoin似乎有两个功能,它们不一定非要在一起不可:一个是作为 : 公开账本的可信性,一个是作为新的货币的挖掘产生机制。 : 可信性一定要建立在挖掘难度上吗?还是只建立在公开的复制到世界各地的大量的node : 上?
|
d******c 发帖数: 2407 | |
b*******s 发帖数: 5216 | 17 有种东西叫代码混淆工具
【在 n*********2 的大作中提到】 : Bitcoin 是天朝贪官们转钱出国的天然好工具。 不知道土共为什么还要拥抱它。 应当 : 把它当成洪水猛兽才对。 : 》》 不知道创始者到底是谁,是不是那个日本人 : 这个要真是穷究, 应当不难找到。 既然提到了这个, 有一个问题: 给定两个软件包 : (源码, 比如 C++), 有没有这样开源工具来检测这两个软件包是不是同一个人或者 : 同一个小组开发的? (比如通过编程风格, 等等)
|
n*********2 发帖数: 357 | 18 同意。
【在 n*w 的大作中提到】 : both : : node
|
n*********2 发帖数: 357 | 19 我说的那几个应用, 比较明显的是(C++)源代码没有被混淆;在源码里面,有些个人
风格还比较明显。
【在 b*******s 的大作中提到】 : 有种东西叫代码混淆工具
|
i*******d 发帖数: 1430 | 20 问的是blockchain,答的是bitcoin。虽然有联系但并不是一回事。
blockchain的scalability的问题我并没有见到有什么好的解决方式。针对想bitcoin这
样的应用尚可忍受。别的很多应用根本不能忍。说什么用blockchain来做 IoT绝对是忽
悠。
【在 n*********2 的大作中提到】 : > 参与blockchain的每一个node都要下载整个blockchain的所有历史数据吗? : 是的。 : 》 那这个历史数据越来越大怎么办? : 这也是为什么Bitcoin 要增加新块创建的难度的原因。 : 》现在bitcoin的历史数据据说大概几十G,这不算啥 : 这个历史数据已经很大了。 现在开一个新的节点, 光下载和检查旧的历史纪录就要一 : 个星期。 : 》但是以后越来越大怎么办? : 根据Bitcoin 的设计, 这个增长速度不会大到无法控制的地步。(大致每10分钟一个 : 新的块。)
|
|
|
n*********2 发帖数: 357 | 21 >> 问的是blockchain,答的是bitcoin。虽然有联系但并不是一回事。
为了避免歧义,有必要精确定义一下blockchain: 什么样的数据结构才能叫blockchain?
我的理解是: hash chain + proof of work [+ digital signature]
(最后一个可能不同的应用有不同的要求)
这个你有不同的见解吗? 讨论讨论?
【在 i*******d 的大作中提到】 : 问的是blockchain,答的是bitcoin。虽然有联系但并不是一回事。 : blockchain的scalability的问题我并没有见到有什么好的解决方式。针对想bitcoin这 : 样的应用尚可忍受。别的很多应用根本不能忍。说什么用blockchain来做 IoT绝对是忽 : 悠。
|
d******c 发帖数: 2407 | 22 我觉得他回答都是针对blockchain的,只不过用bitcoin的blockchain作为主要讨论对
象。
至于前面提到的盒子,IoT,我没有仔细了解,但是不可能用IoT做node,最多是IoT和
smart contract能匹配,机器之间自主通讯协作,这和node没什么关系。
另外以太币平台上很多是Ponzi骗局,用smart contract写个金字塔形态就开始骗人,
这些骗局是把以太币兑换值推高的一个重要因素。见我另一个帖子。
记录全部历史是负担很重,本来也就是在关键行业,金融之类的这不是问题。以后历史
太多的时候,我觉得可以有一部分node有超高速网络处理全部历史,其他个人的下载最
近的就行了,把所有历史做个hash,能一定程度上验证对个人node就够了。
【在 i*******d 的大作中提到】 : 问的是blockchain,答的是bitcoin。虽然有联系但并不是一回事。 : blockchain的scalability的问题我并没有见到有什么好的解决方式。针对想bitcoin这 : 样的应用尚可忍受。别的很多应用根本不能忍。说什么用blockchain来做 IoT绝对是忽 : 悠。
|
n*********2 发帖数: 357 | 23 说到 Bitcoin, 刚才想到了一个问题: 如果你想运行一个新的Bitcoin node, 你有
Bitcoin软件(软件里有the genesis block)。 你的Bitcoin软件可以先找到一些别的
Bitcoin节点, 然后从这些邻居节点下载整个blockchain (many blocks)。
我的问题是:在这个情况下, 你的Bitcoin软件是怎么检查/确认这些下载的
blockchain blocks的? (理论上, 你的邻居节点可能都是恶意的; 它们会合起来欺
骗你。在极端情况下, 你下载的blockchain blocks可能都是精心伪造的; the
genesis block 并不能让你确认整个blockchain的真伪。)
【在 d******c 的大作中提到】 : 我觉得他回答都是针对blockchain的,只不过用bitcoin的blockchain作为主要讨论对 : 象。 : 至于前面提到的盒子,IoT,我没有仔细了解,但是不可能用IoT做node,最多是IoT和 : smart contract能匹配,机器之间自主通讯协作,这和node没什么关系。 : 另外以太币平台上很多是Ponzi骗局,用smart contract写个金字塔形态就开始骗人, : 这些骗局是把以太币兑换值推高的一个重要因素。见我另一个帖子。 : 记录全部历史是负担很重,本来也就是在关键行业,金融之类的这不是问题。以后历史 : 太多的时候,我觉得可以有一部分node有超高速网络处理全部历史,其他个人的下载最 : 近的就行了,把所有历史做个hash,能一定程度上验证对个人node就够了。
|
d******c 发帖数: 2407 | 24 简单看了几个讨论,感觉问题不是太大
https://bitcoin.stackexchange.com/questions/17837/longer-fake-block-chain-
with-valid-transactions
https://bitcoin.stackexchange.com/questions/50606/how-do-you-know-that-block
-the-merket-root-the-hashes-in-the-path-are-authent/50610
https://bitcoin.stackexchange.com/questions/6065/why-must-some-bitcoin-
clients-download-the-block-chain-and-others-not
验证不需要全部信息,验证hash可以基本上认为是等价于验证全部(hash conflict的
可能性太小不考虑)
另外就是靠网络里大多数了,假设至少一半以上的是真的。如果整个网络大部分都是骗
子,那没有办法。不过那需要很大的计算成本。
【在 n*********2 的大作中提到】 : 说到 Bitcoin, 刚才想到了一个问题: 如果你想运行一个新的Bitcoin node, 你有 : Bitcoin软件(软件里有the genesis block)。 你的Bitcoin软件可以先找到一些别的 : Bitcoin节点, 然后从这些邻居节点下载整个blockchain (many blocks)。 : 我的问题是:在这个情况下, 你的Bitcoin软件是怎么检查/确认这些下载的 : blockchain blocks的? (理论上, 你的邻居节点可能都是恶意的; 它们会合起来欺 : 骗你。在极端情况下, 你下载的blockchain blocks可能都是精心伪造的; the : genesis block 并不能让你确认整个blockchain的真伪。)
|
n*********2 发帖数: 357 | 25 谢谢回复。
【更新: 我查到了。 每个 bitcoin 块的target value是嵌在那个块里的, 是从邻居
节点下载下来的。 所以,成功地检查了一个收到的块的 hash value 并不能证明那个
块不是假的, 因为那个target value也可以被伪造。】
【原帖】
我的这个问题没有问好。 再试一次: 比方说, 你从一个邻居节点下载了blockchain
的第5000th 块 (block)。要检查/确认这个块, 你必须先计算这个块的 hash value
,然后将这个值跟一个 target value 比较。如果这个hash value 小于那个target
value, 那么这个块很可能是好的。
问题是在一个分布式环境中, 你是怎么拿到这个块的target value的?(这个target
value不是一个静态值, 所以不能固化在Bitcoin软件里。这个target value是动态的
;在Bitcoin协议里,每2016块就要依据当时Bitcoin网上的计算能力调整一下当前的
target value [如果计算机多, 这个target value就变小]。)
如果你是从一个邻居节点拿到一个块的target value, 那么这个安全性就很成问题。
Bitcoin 的协议里好像没有明确谈到这个。
block |
a*****e 发帖数: 1700 | 26 你说这种情况不是不可能,但不用担心。
因为网络不停地有新 block 产生,而每个新 block 的签名都是以上一个 block 的签
名来验证的,所以只要知道一个 > 5000th 的正确 block,马上可以倒回去看你这个第
5000th block 能否推出这个正确 block 的签名,从而知道这个 5000th block 是否
真的在 chain 里面。
有各种 block chain 查询的网站,就算是 neigbour 都是恶意的,也不妨碍去第三方
验证一下。
总体来说,只要作假的成本高,而识别的成本低,那么整个链就能健康发展。
blockchain
value
target
【在 n*********2 的大作中提到】 : 谢谢回复。 : 【更新: 我查到了。 每个 bitcoin 块的target value是嵌在那个块里的, 是从邻居 : 节点下载下来的。 所以,成功地检查了一个收到的块的 hash value 并不能证明那个 : 块不是假的, 因为那个target value也可以被伪造。】 : 【原帖】 : 我的这个问题没有问好。 再试一次: 比方说, 你从一个邻居节点下载了blockchain : 的第5000th 块 (block)。要检查/确认这个块, 你必须先计算这个块的 hash value : ,然后将这个值跟一个 target value 比较。如果这个hash value 小于那个target : value, 那么这个块很可能是好的。 : 问题是在一个分布式环境中, 你是怎么拿到这个块的target value的?(这个target
|
n*********2 发帖数: 357 | 27 》 而每个新 block 的签名都是以上一个 block 的签名来验证的,
这个说法不准确。 在 Bitcoin 的 blockchain 里, 每一个 block 包括了上一个
block 的 hash value, 不是(数字)签名。估计你也是这个意思, 重复一下避免歧义。
》 所以只要知道一个 > 5000th 的正确 block,马上可以倒回去看你这个第
》 5000th block 能否推出这个正确 block 的签名,
问题是作为一个新的Bitcoin节点, 你的关于blockchain的检查是从哪里开始的: 是
从 the genesis block 呢还是从 一个5000后面的块开始的? the genesis block固化
在Bitcoin软件里, 是比较可信的; 如果是从 5000 后面的一个块开始, 那你是怎么
确认/检查这个开始块的(这是一个鸡生蛋, 还是蛋生鸡的问题)。
(也许我有点吹毛求疵, 但是这点在这个玩意里太重要了。)
【在 a*****e 的大作中提到】 : 你说这种情况不是不可能,但不用担心。 : 因为网络不停地有新 block 产生,而每个新 block 的签名都是以上一个 block 的签 : 名来验证的,所以只要知道一个 > 5000th 的正确 block,马上可以倒回去看你这个第 : 5000th block 能否推出这个正确 block 的签名,从而知道这个 5000th block 是否 : 真的在 chain 里面。 : 有各种 block chain 查询的网站,就算是 neigbour 都是恶意的,也不妨碍去第三方 : 验证一下。 : 总体来说,只要作假的成本高,而识别的成本低,那么整个链就能健康发展。 : : blockchain
|
a*****e 发帖数: 1700 | 28 如果不相信已有的验证(比如 block chain explorer 网站),当然可以自己从头开始
验证。
义。
【在 n*********2 的大作中提到】 : 》 而每个新 block 的签名都是以上一个 block 的签名来验证的, : 这个说法不准确。 在 Bitcoin 的 blockchain 里, 每一个 block 包括了上一个 : block 的 hash value, 不是(数字)签名。估计你也是这个意思, 重复一下避免歧义。 : 》 所以只要知道一个 > 5000th 的正确 block,马上可以倒回去看你这个第 : 》 5000th block 能否推出这个正确 block 的签名, : 问题是作为一个新的Bitcoin节点, 你的关于blockchain的检查是从哪里开始的: 是 : 从 the genesis block 呢还是从 一个5000后面的块开始的? the genesis block固化 : 在Bitcoin软件里, 是比较可信的; 如果是从 5000 后面的一个块开始, 那你是怎么 : 确认/检查这个开始块的(这是一个鸡生蛋, 还是蛋生鸡的问题)。 : (也许我有点吹毛求疵, 但是这点在这个玩意里太重要了。)
|
a*****e 发帖数: 1700 | 29 实际上 bitcoin full node 就是这么做的,而且它是选择已知范围内最长的 chain,
并不依赖其它方法区分 neighbor 是否恶意
【在 a*****e 的大作中提到】 : 如果不相信已有的验证(比如 block chain explorer 网站),当然可以自己从头开始 : 验证。 : : 义。
|
n*********2 发帖数: 357 | 30 》》 实际上 bitcoin full node 就是这么做的,
怎么做的?你能给出一步一步的技术细节吗?(你说的黑盒子办法没有回答这个问题。)
这个讨论就是在深究这个"技术"细节: 一个新加入的Bitcoin 节点, 它有Bitcoin软
件(其中有 the genesis block),可以找到几个(比如8个)邻居节点(也许是恶邻
),可以下载blockchain。 这个新的节点是怎么“逐步(一个块一个块地)”检查下
载的blockchain的?
【在 a*****e 的大作中提到】 : 实际上 bitcoin full node 就是这么做的,而且它是选择已知范围内最长的 chain, : 并不依赖其它方法区分 neighbor 是否恶意
|
|
|
d******c 发帖数: 2407 | 31 http://www.samlewis.me/2017/06/a-peek-under-bitcoins-hood/
如果我没理解错的话,所谓distributed的也还是需要一些central control。源码里有
一些DNS节点用于bootstrap。所以一开始是从官方节点出发,而不是先找邻居,只看见
邻居。
当然你要劫持了这些DNS节点或者修改了DNS就能搞破坏,这没办法。
。)
【在 n*********2 的大作中提到】 : 》》 实际上 bitcoin full node 就是这么做的, : 怎么做的?你能给出一步一步的技术细节吗?(你说的黑盒子办法没有回答这个问题。) : 这个讨论就是在深究这个"技术"细节: 一个新加入的Bitcoin 节点, 它有Bitcoin软 : 件(其中有 the genesis block),可以找到几个(比如8个)邻居节点(也许是恶邻 : ),可以下载blockchain。 这个新的节点是怎么“逐步(一个块一个块地)”检查下 : 载的blockchain的?
|
a*****e 发帖数: 1700 | 32 Google "bitcoin full node" helps
。)
【在 n*********2 的大作中提到】 : 》》 实际上 bitcoin full node 就是这么做的, : 怎么做的?你能给出一步一步的技术细节吗?(你说的黑盒子办法没有回答这个问题。) : 这个讨论就是在深究这个"技术"细节: 一个新加入的Bitcoin 节点, 它有Bitcoin软 : 件(其中有 the genesis block),可以找到几个(比如8个)邻居节点(也许是恶邻 : ),可以下载blockchain。 这个新的节点是怎么“逐步(一个块一个块地)”检查下 : 载的blockchain的?
|
a*****e 发帖数: 1700 | 33 理论上都不需要 trust bootstrap,选取目前已知最长链足以提供保障
【在 d******c 的大作中提到】 : http://www.samlewis.me/2017/06/a-peek-under-bitcoins-hood/ : 如果我没理解错的话,所谓distributed的也还是需要一些central control。源码里有 : 一些DNS节点用于bootstrap。所以一开始是从官方节点出发,而不是先找邻居,只看见 : 邻居。 : 当然你要劫持了这些DNS节点或者修改了DNS就能搞破坏,这没办法。 : : 。)
|
n*********2 发帖数: 357 | 34 》》理论上都不需要 trust bootstrap,选取目前已知最长链足以提供保障
我的理解是上面的这个表述是不对的。
如果一个新的节点“不加验证地”接收邻居节点给定的 target value的话, 从那个固
定的 genesis block起, 那个“邻居节点”可以很容易地产生一个任意长度的伪
blockchain。所以“已知最长链”并不能保证安全性。
【在 a*****e 的大作中提到】 : 理论上都不需要 trust bootstrap,选取目前已知最长链足以提供保障
|
a9 发帖数: 21638 | 35 关键你控制不了整个“邻居”节点啊。
【在 n*********2 的大作中提到】 : 》》理论上都不需要 trust bootstrap,选取目前已知最长链足以提供保障 : 我的理解是上面的这个表述是不对的。 : 如果一个新的节点“不加验证地”接收邻居节点给定的 target value的话, 从那个固 : 定的 genesis block起, 那个“邻居节点”可以很容易地产生一个任意长度的伪 : blockchain。所以“已知最长链”并不能保证安全性。
|
a*****e 发帖数: 1700 | 36 你这个场景得有一个前提,就是所有邻居都是“恶邻”,而且永不遇到“好邻”。
【在 n*********2 的大作中提到】 : 》》理论上都不需要 trust bootstrap,选取目前已知最长链足以提供保障 : 我的理解是上面的这个表述是不对的。 : 如果一个新的节点“不加验证地”接收邻居节点给定的 target value的话, 从那个固 : 定的 genesis block起, 那个“邻居节点”可以很容易地产生一个任意长度的伪 : blockchain。所以“已知最长链”并不能保证安全性。
|
n*********2 发帖数: 357 | 37 》》 你这个场景得有一个前提,就是所有邻居都是“恶邻”,而且永不遇到“好邻”。
不一定, 因为Bitcoin 遵从最长链原则(?)。
一旦一个很长的伪 Blockchain 被接受的话, 真的短一点的Blockchain反而会被拒绝
(因为它短)。
这个讨论到这儿该结束了。 我之所以问这个问题是因为这些细节没有出现在 Satoshi
的2009年的那篇文章中。有时只能从源码中找答案, 那个太花时间。
【在 a*****e 的大作中提到】 : 你这个场景得有一个前提,就是所有邻居都是“恶邻”,而且永不遇到“好邻”。
|
a*****e 发帖数: 1700 | 38 你真的理解什么是最长链吗?
https://bitcoin.stackexchange.com/questions/25170/can-the-blockchain-be-
outpaced-by-a-chain-of-low-difficulty-blocks
”。
Satoshi
【在 n*********2 的大作中提到】 : 》》 你这个场景得有一个前提,就是所有邻居都是“恶邻”,而且永不遇到“好邻”。 : 不一定, 因为Bitcoin 遵从最长链原则(?)。 : 一旦一个很长的伪 Blockchain 被接受的话, 真的短一点的Blockchain反而会被拒绝 : (因为它短)。 : 这个讨论到这儿该结束了。 我之所以问这个问题是因为这些细节没有出现在 Satoshi : 的2009年的那篇文章中。有时只能从源码中找答案, 那个太花时间。
|
n*********2 发帖数: 357 | 39 我们讨论的东西跟 forking 有关, 但是那个不是最根本的。(我早前也想过, 正常
的 forking 就说明了 blockchain 的检查应当从 genesis block 开始)
最本质的安全问题还是在 target value 是这么处理的。这个不读源码是不清楚的。不
过,大都数人恐怕对跑一个Bitcoin节点挣钱更有兴趣。
【在 a*****e 的大作中提到】 : 你真的理解什么是最长链吗? : https://bitcoin.stackexchange.com/questions/25170/can-the-blockchain-be- : outpaced-by-a-chain-of-low-difficulty-blocks : : ”。 : Satoshi
|
a*****e 发帖数: 1700 | 40 需要被承认的是游戏规则,以及实现整套规则的程序。
一旦确认了“最长链”的规则,连 genesis block 都不是必须的。
【在 n*********2 的大作中提到】 : 我们讨论的东西跟 forking 有关, 但是那个不是最根本的。(我早前也想过, 正常 : 的 forking 就说明了 blockchain 的检查应当从 genesis block 开始) : 最本质的安全问题还是在 target value 是这么处理的。这个不读源码是不清楚的。不 : 过,大都数人恐怕对跑一个Bitcoin节点挣钱更有兴趣。
|
|
|
n*********2 发帖数: 357 | 41 >> 一旦确认了“最长链”的规则,连 genesis block 都不是必须的。
(Sorry I cannot type Chinese for now.)
You have to be extremely careful here. If you start with nothing, you may
end up with nothing; there is simply no magic here.
>> 需要被承认的是游戏规则,以及实现整套规则的程序。
What really matters is not rules, but whether the rules have loopholes. If
ECDSA-256 is broken, will Bitcoin survive?
【在 a*****e 的大作中提到】 : 需要被承认的是游戏规则,以及实现整套规则的程序。 : 一旦确认了“最长链”的规则,连 genesis block 都不是必须的。
|
a9 发帖数: 21638 | 42 这个blockchain目前看来是安全的不用你自己去读代码,有很多懂的人代劳了。
【在 n*********2 的大作中提到】 : 我们讨论的东西跟 forking 有关, 但是那个不是最根本的。(我早前也想过, 正常 : 的 forking 就说明了 blockchain 的检查应当从 genesis block 开始) : 最本质的安全问题还是在 target value 是这么处理的。这个不读源码是不清楚的。不 : 过,大都数人恐怕对跑一个Bitcoin节点挣钱更有兴趣。
|