如何向一个普通理工科大学毕业生解释比特币?
提出这个问题是因为看了挺多关于比特币的解释,至今没有发现非常易懂的。我相信任何系统都能在某个抽象层面得到较为简单的概括和类比。因此一致致力于寻找这么一个关于比特币的解释。谢谢大家!
补充一下:在这里我指定的对象并不是小孩子或者其他完全不懂数理概念的群体,而是有一定基础概念的理工科大学生。希望能因此降低问题难度。
补充一下:在这里我指定的对象并不是小孩子或者其他完全不懂数理概念的群体,而是有一定基础概念的理工科大学生。希望能因此降低问题难度。
4 个回答
饶志臻 - iOS程序员一枚
推荐来自: Joey 、陈大明 、亦可喜 、森夏 、陈绍棠 、一本正经胡说八道 、爱飞的大花猫 、木偶会涂鸦 、李大伟更多 »
比特币就是一串编码,这个编码是某个方程的解,这个方程有2100万个解,所以比特币是有限的,然后你利用计算机对这个方程进行求解,如果得到一个解,而这个解又不是别人已经得出的解,那就意味着你得到这个比特币。你得到这个比特币这条信息,写入一个数据库里,并告诉所有有这个数据库的人,我得到这个比特币,你们快更新你们的数据库。
比特币交易也一样,你要把这个比特币送给我,你告诉所有人,其他人查一下数据库,的确,这个比特币是你的,你的比特币就转到我的名下,大家的数据库又更新了一下。每个人都有一个相同的数据库,你可以理解为一个游戏,你做了一个操作,这个操作就发向了所有的玩家。
如果一个新玩家上线了,他先从其它玩家那里把这个数据库下载下来。然后你想把一个属于你的比特币送给他,你把这个操作告诉其它玩家,其它玩家检查自己的数据库,发现这个比特币是你的,就同意了这次交易,你们一起修改数据库,这个比特币就属于他了。当然有的玩家可以不同意这次操作,但只要大部分的玩家都同意,这次交易就成立了。这次交易记录被永久写入数据库里,随时都可以查阅。数据库的话,换个意思就是一个账本
补充
你把比特币卖给我 这个比特比交易信息发给其它的玩家,短时间内已经有10个玩家反馈这个比特币是你的 同意这次交易, 我相信这个是你的 就认可这次交易,这条信息被发给其它玩家,其它玩家修改数据库的时候也会问问其它玩家同意这次交易不,数据被一直转发下去,发现有大于一半的玩家都同意,就修改自己的数据库,将比特币转到我的名下,其它的玩家也会发现大于一半的玩家同意,这个交易就被写入所有人的数据库里。这个比特币就是我的了。当然如果发现有大于一半玩家以上都不同意,就不修改自己的数据库,这条交易对于其它玩家来说就是不成立的。这个比特币在之后我的数据库和其它玩家的数据库进行比对的时候会被修正,这个比特币就不属于我了。但你要控制这10个玩家都欺骗我还是很有难度的,而我为了稳妥也可以等大于一半的玩家反馈这个比特币是你的,再认可这次交易。所以比特币是相当安全的货币,因为你无法做到控制大于一半玩家数的数据库
SaberAlexander - 用技术和思考改变世界
推荐来自: Joey 、ws2358
kaffa - The Grail could not be taken beyond the Great Seal.
推荐来自: Joey 、incqyh
1999年9月,招商银行在国内全面启动一网通 1.0 版——全国首家网上银行,这个 Windows 客户端软件基于 Windows 证书加密 API 和银行信用背书,在同时代第一大行工商银行还在每支行 500 万增设网点的时候,它实现了边际成本为零来开设虚拟网点,实现了基于 Internet 的金钱价值的交换。
我们考虑这个事情,和账户有关的交易指令从网络一端传输到银行服务器,事情的成立有两个信任作为基石:
另外,再考虑你向另外一个人转账的过程,你发出转账指令给银行,银行记录你的交易指令,并操作你的账户进行转账,并记录下来。为了确保每一笔记账都被完整记录和处理,它们会进行每日跑批确保每一笔交易进行结算。
这里我们发现,所有的交易都会依次通过招商银行某台服务器的处理,我们需要无条件的信任银行这个“中心”。如果银行这个服务器上的数据遭到修改,这笔交易可能会出错。
虽然讲了好几段,但应该很好理解。那我们引出比特币,它是在 TCP/IP 协议应用层之上的第 5 层协议。这层协议通过一种基于工作量证明的区块链技术,去除了需要信用背书的中心,可以使网络上的任意(匿名)客户交换彼此的价值。
晕了?这里需要解释两个概念:工作量证明(proof-of-works)和区块链(blockchian)。
假设你工作了一个月,公司依据你的工作天数按合同发放月薪,你的工作量证明即来自你的考勤记录,假设你是一个黑客,你抹去了存在公司服务器中你请假的天数,那么公司将按你篡改的数据给你发放薪酬。
而区块链是对网络中所有交易进行大规模复制的数据库。它用高昂的计算代价作为工作量证明,避免了伪造的可能,正因为它向比特币网络中所有的节点复制数据库,因为这种工作量证明具备不可篡改性,而实现了去中心化。
公司薪酬工作量证明的中心即公司服务器中的考勤数据,而区块链上,这种数据库得到确认后会存在于所有节点上,除非黑客能控制比特币网络的大部分节点,否则黑客也无法修改这些数据了。
这种不需要信任一个自带信用背书的中心的机制,存在于互联网节点的每个角落,加上比特币网络跨越国界,而国与国之间存在博弈,因而全世界不会统一关停比特币网络,特别是那些通货膨胀特别厉害的,局势特别动荡,货币超发,缺乏信用背书的国度的存在。让比特币获得了不需要相信任何一个网络节点的信用背书。
这个问题,就是密码学中的拜占庭将军问题。
虽然通过高昂代价计算出的比特币的计算机内形式只是一串数字,但为了得到这串数字,除了用力计算以外,别无它法。加上比特币强制定义不可篡改的 2100 万枚上限(类似黄金这种不可再生资源的总量),约束了它不会超发而导致通货膨胀。
所以这串数字比特适合作为货币等价物,人们故称之为——比特币。
shadow3002 - 魔法师
推荐来自:
1. 概念层面:想解决的问题?采用的技术?
2. 具体层面:引导他思考如何实现,把概念层面的问题与实现一一对应。
概念层面可以阅读中本聪的论文(只阅读前面,不要深入细节),具体层面可以看“想知道比特币(和其他加密货币)的原理吗?”。
个人的部分笔记:
想解决的问题?
一句话,交易去中心化,干掉第三方。
在比特币之前, 互联网上的交易都必需依赖可信任的第三方. 但基于信任的系统会带来一些问题, 比如由于第三方不能避免调节纠纷(mediating disputes), 所以交易是可以被撤销的. 而这增加了交易成本, 限制了最小实际交易规模, 也不能支持不可撤销服务. (因为可以撤销, 就可能存在诈骗).
采用的技术?
中本聪提出了名为工作量证明(Proof-of-Work)的共识算法,这个算法维护出区块链。
区块链,是能保证共识的分布式线性表。
具体来说,作用就是只要大多数人遵守规则,那么所有账本是一致的(保证所有人记录的信息是一致的, 顺序也相同) 。
共识问题: 需要一个协议, 保证所有账本是一致的. (保证所有人记录的信息是一致的, 顺序也相同) 最初提出比特币的论文讨论的就是这个问题. 工作量证明是比特币的共识问题解决方案.
思想: 信任计算量最大的那个账本(区块链).
工作量证明: 对于一段数据, 这段数据加上一段特定长度的特定数据形成新的数据段, 如果这个数据段通过一个密码哈希函数, 使得哈希值前 n 位为 0, 那么加上的数据段就是工作量证明.
工作量证明使决策投票时的权重由运算力决定, 如果攻击者想创造一个新链(修改过去的块, 伪造交易等等), 必需不断进行工作量证明, 使新链比正常链更长, 也就是说他必需相对其他所有正常节点一直保持运算力优势.
妙的是, 寻找这个数字很难, 但验证确很容易. 而且每次账本改变(加入新块), 都需要重新寻找.