作者zxcmnb (我的证照来自ㄊ大电脑)
看板DigiCurrency
标题Re: [闲聊] IOTA真的能实现足够的算力吗
时间Tue Jan 23 16:14:52 2018
※ 引述《kugwa (苦瓜)》之铭言:
: 交易confirmed之後就再也不会被撤销了
: 这与Blockchain的「最长链的交易才被帐本采用 新区块一接上最长链就立即更新帐本」
: 有着截然不同的性质
: 来看看Tangle如何防止双花
: 其实有了上述概念之後应该不难理解
: 用互斥交易A跟B的例子来说明
: 假设大家走A的sub-tangle
: 当A的累积权重到达一定量被视为confirmed 才会被帐本采计
: 这时候再拿B後面跟一大串交易接到Tangle上是没有意义的
: 因为B跟A互斥 而A已经confirmed 所以B不可能被帐本采计
假设攻击者私底下同时产生A和B 且分别被confirm以後
再把两串tangle同时广播到网路上
这时候网路就会分裂了
假设A和B分别是送大笔金额到某两个交易所
其中一个交易所就会遭受严重的损失
只要攻击者有超越全网的算力 是没有任何有效的防卫的
blockchain或是tangle能够成立的先决条件都是攻击者的算力不能过大
要怎样激励让IOTA的全网算力足够大才是真正的问题
(这似乎也是你一开始的问题?)
: 比较一下区块链双花的情形
: 帐本采计最长链里的所有交易
: 假设目前最长链里有A交易
: 现在有一条短链 里面有B交易
: 短链藉由超高算力变成新的最长链
: 这时A就被从帐本里撤销了 而B进入帐本
: 所以其实区块链里的交易 并不像Tangle里的交易一样会confirmed
: 因为只要有足够的算力 是可以撤销任何交易的
: 只是要达到这个足够的算力超难而已
: 事实上
: 我能往新的方向思考
: 是因为grapherd大大发了这篇文(#1QOqgSY5)
: 他再次强调
: 1. 一笔交易被认同并导致帐本状态转变後 这笔交易就不会再被撤销了
: 2. 正常节点的数量很重要
: 这两点显然完全与区块链不符
: 第二点似乎跟网路拓朴有关暂时不管
: 光第一点就非常让我想不通了
: 因为区块链不可能有不会被撤销的交易
: 因此我试着接受第一点
: 并且试着寻找新的出路
: 就看到一线曙光
: 最後连为何要扯到网路拓朴也明朗了
: 先前我之所以一直不相信Tangle会采用confirm交易的做法
: 是因为我认为confirm交易会导致非常难以收拾的後果
: 亦即全网帐本将不再一致 如同这篇我想表达的(#1QNh7H5m)
: 但IOTA却大方接受了全网帐本不一致 硬是往这个方向下手
: 如此疯狂的做法是我完全没有预料到的
: (其实我後来发现grapherd大大在这篇 #1QNrXVf_ 就有解释全网帐本的确会不一致)
: 总结
: 我认为Tangle与Blockchain的关键差异
: 就在於交易是否会真的confirmed
: 这个根本的差异导致Tangle与Blockchain的性质有以下区别
: Tangle的帐本是可以分裂为不同势力的
: 而节点究竟受到哪个势力的帐本影响较大
: 取决於节点的邻居属於哪派势力 也就是必须考虑网路拓朴
: Blockchain的帐本则是统一的
: 所以不必考虑网路拓朴
: 若您仍有不解之处
: 我很乐意继续与您讨论
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.216.154.132
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/DigiCurrency/M.1516695295.A.001.html
1F:推 kugwa: 网路真的会分裂没错 这也是我一开始最难以相信的地方 01/23 16:28
2F:→ kugwa: 你这个思考方向没错 01/23 16:29
3F:→ kugwa: 所以才会扯到要利用网路拓朴来减少攻击者影响的节点数 01/23 16:31
4F:推 a2935373: 我有个问题耶 用botnet去污染一般用户的帐本可行吗? 01/23 17:19
5F:→ a2935373: 我不搞垮整个网路 但是让不特定多数的帐本烂掉 01/23 17:20
6F:推 tcn1john: IOTA 关於botnet的讨论真的很少... 可能还没遇到问题吧 01/23 17:58
7F:推 grapherd: 现在是 mutual pair, 就大家讨厌的手动配对,botnet没有 01/23 18:11
8F:→ grapherd: 办法污染账本的,因为对方没有跟你pair. 01/23 18:11
9F:→ grapherd: 没pair的情况下sink (iri 接收端)不会收你的packet. 01/23 18:12
10F:→ kuma660224: 那网路分裂时,被攻击的那边,谁来保护? 01/23 19:00
11F:→ kuma660224: 还是就算你倒楣被感染而舍弃,只隔离救没事的? 01/23 19:01
12F:推 kugwa: 我也好奇 01/23 19:03
13F:→ kugwa: 但似乎是这样 01/23 19:03
14F:→ kugwa: 攻击者附近的倒楣 01/23 19:03
15F:→ kuma660224: 这……这样货币的信心会gg吧。 01/23 19:17
16F:→ kuma660224: 小花偷钱未遂,小明你交友不慎所以处罚你。 01/23 19:17
17F:推 a2935373: 额.... 所以不靠协调者这攻击还真的可行? 01/23 19:33
18F:推 kugwa: 说法好像是单一节点攻击者可以感染的范围很小 01/23 19:47
19F:→ kugwa: 范围之外的节点 因为正常的交易已经confirmed 所以无动於衷 01/23 19:49
20F:→ kugwa: 在诚实算力足够的情况下 交易接上Tangle到confirmed的时间 01/23 19:49
21F:→ kugwa: 会很短很短 01/23 19:49
22F:→ kugwa: 吧!? 01/23 19:50
23F:→ kuma660224: 不管影响多寡,身旁有恶意者就陪葬? 01/23 20:01
24F:→ kuma660224: 这跟区块链保障全部交易差异很大 01/23 20:01
25F:→ kuma660224: 多次确认後几乎不可能被攻击 01/23 20:03
26F:推 kugwa: 没错ㄋ 所以我才觉得很扯 会想在网路拓朴这块找解 01/23 20:04
27F:→ kuma660224: 无COO时看起来像那边中箭就割舍哪边 01/23 20:04
28F:→ kuma660224: 与其说保护,感觉更像损害控管 01/23 20:05
29F:→ a2935373: 所以如果botnet够多的区域可能整个被拖垮? 01/23 20:16
30F:→ DarkerDuck: IOTA这个解法终究还是无法真正免除trusted 3rd party 01/23 20:27
31F:→ DarkerDuck: 网路被攻击分裂後,还是要寻找官方"可信"节点同步回去 01/23 20:27
32F:→ a2935373: 如果是这样的话根本也一般用户没有连到其他节点的意义啊 01/23 20:36
33F:推 kugwa: 我觉得譬喻成损害控管颇贴切 01/23 20:38
34F:→ kugwa: 信仰区块链的人不敢往这个方向思考应该也很正常 01/23 20:39
35F:→ kugwa: 我真的也还没完全搞懂IOTA是怎麽在这麽艰难的状态下找解 01/23 20:39
36F:→ kugwa: 但我觉得开拓思考方向很不错 01/23 20:40
37F:推 a2935373: 如果不追求full node要开放给所有人 其实也不成问题 01/23 20:45
38F:→ kuma660224: 损害控管或者断尾求生。 01/23 20:51
39F:→ kuma660224: 先保护iota体系,而不是保护局部用户 01/23 20:51
40F:→ kuma660224: 但这样似乎没考虑到用户信心问题。 01/23 20:51
41F:→ kuma660224: 就像个别银行可倒闭,银行体系不能倒 01/23 20:52
42F:→ kuma660224: 而且政府即使让银行倒,也有存款保险 01/23 20:53
43F:→ kuma660224: 不敢完全放手,让多数倒楣用户吃屎 01/23 20:53
44F:→ kuma660224: 以维护货币的信心。 01/23 20:54
45F:→ kuma660224: 若只是微型小额交易,这问题不大 01/23 20:55
46F:→ kuma660224: 但要变成主流资产储存与结算... 01/23 20:56
47F:→ a2935373: 强制要求连上安全节点就好了吧 01/23 21:13
48F:推 kugwa: 或许可以每个full node实名并具有安全等级 01/23 21:16
49F:推 a2935373: 回到上面的问题 那跟一般IOT连线做啥? 01/23 21:23
50F:→ DarkerDuck: 谁来做KYC,谁来认证这个节点是"安全的" ? 01/23 21:29
51F:→ DarkerDuck: IOTA这种做法其实最後是不可能达成真正去掉authority 01/23 21:31
52F:→ DarkerDuck: 它的去中心化程度大概就类似Ripple而已 01/23 21:32
53F:→ DarkerDuck: 就几个官方认可的跑payment gateway,剩下client依附上 01/23 21:32
54F:推 kugwa: 所以到此为止了吗 我之前还觉得技术上神解的说 01/23 21:59
55F:→ DarkerDuck: 他这种方法当然可以做,市场绝对也有人会买单 01/23 22:02
56F:→ DarkerDuck: 反正对於很多企业甚至大众,去中心化不是重点 01/23 22:03
57F:→ DarkerDuck: 但我不认为它可以达到跟比特币一样的去掉可信第三方 01/23 22:04
58F:→ DarkerDuck: 比特币有专业化的矿工,但你不需要去信任它就可以连线 01/23 22:04
59F:→ DarkerDuck: 而IOTA从一开始就要选可信的节点连线,等级有差 01/23 22:05
60F:→ DarkerDuck: 反正IOTA的目标本来就不是要当比特币这种金流结算货币 01/23 22:08
61F:→ DarkerDuck: 对於IOT M2M的微交易,企业化与中心化或许根本没差 01/23 22:09
64F:→ Ash1taka: 有点像每隔一段时间自动洗牌的样子 01/23 22:18
65F:推 Ash1taka: 所以诚实节点即使倒楣跟坏节点连线当上邻居,也只是暂时 01/23 22:27
66F:→ Ash1taka: 各个节点有机会被干扰一时,但不会一直持续 01/23 22:30
67F:→ kuma660224: 你会遇上诈骗集团,但不会永远都是遇上诈骗集团 01/23 22:42
68F:→ kuma660224: 是这个意思吗? 这好像也只是损害控管的概念而已 01/23 22:42
69F:推 kugwa: 所以被攻击的节点要怎麽变回来啊 01/23 22:43
70F:→ kugwa: 能不依赖可信的节点吗 01/23 22:44
71F:推 Ash1taka: 一个node所有连线对象都联合骗它的话,它会上当 01/23 23:18
72F:→ Ash1taka: 但连线对象中有一部分好node,它就会发现矛盾资讯吧 01/23 23:19
73F:→ Ash1taka: 发现矛盾应该就不会上当了,但我还不知它如何分辨谁说谎 01/23 23:22
74F:→ Ash1taka: 或者有没有必要下这个判断... 01/23 23:22
75F:→ Ash1taka: 我贴的第一个连结里面有模拟的结果,全部1000个节点、 01/23 23:23
76F:→ Ash1taka: 就算一开始就有高达70%是恶意节点,tangle都能自我恢复 01/23 23:25
77F:推 Ash1taka: 文中还有提到一个node在tangle中运作愈久愈难被攻击 01/23 23:28
78F:→ DarkerDuck: 它这边的攻击行为是日蚀攻击吧 01/23 23:52
79F:→ DarkerDuck: 和那种用高PoW伪造Tangle帐本的攻击不一样 01/23 23:53
80F:推 Ash1taka: 看起来是日蚀没错 01/24 00:18
81F:推 Ash1taka: 其他种攻击... 也许去Discord问Roman Semko? 01/24 00:26