常见问题解答

来自Bitcoin Wiki
Finway讨论 | 贡献2012年6月22日 (五) 13:25的版本 我怎样才能获得比特币?
跳转至: 导航搜索

在这里你可以找到一些常见问题的答案.

目录

基本的

什么是比特币(bitcoins)?

比特币(bitcoins)是Bitcoin系统中的货币单位。常在衡量价格或数量时使用其短称:BTC (例如:100 BTC)。比特币不是一个实际存在的物体。它只是一个和某个Bitcoin Address互相关联的数字。具体可以参考Bitcoin的比特币介绍

我怎样才能获得比特币?

有N种方法可以获得比特币:

我可以通过Paypal购买比特币么?

虽然可以(比如通过 #bitcoin-otc )找到希望通过Paypal支付来出售比特币给你的人,但大多数主要的交易市场并不允许通过Paypal来支付。这是因为已经发生了多次类似的事件:某人在Paypal上为购买比特币进行了支付,收到了比特币,然后欺骗性地向Paypal投诉说他/她从来没有收到想要的货物。Paypal在这些事件上经常是站在买方(欺骗者)一边,所以交易市场不再允许通过Paypal进行交易。

不过,你仍然可以通过这种方式直接向个人购买比特币,但这需要买卖双方互相有足够的信任。因此,作为比特币卖家的一方应提高警惕。

新比特币是如何创建出来的?

单位时间内的比特币的数量,假设基于完美的10分钟间隔

简单说,每十分钟产生一次。

新比特币在每个网络节点在解决了一定的数学计算(比如,创建新的block)后生成。这个生成过程被认为是难以重现和proof of work的。解决问题后得到的回报是automatically adjusted,因此在比特币网络的头4年,将会产生总额为10,500,000 BTC的比特币。这个数量每隔4年就自动减半,也就是说在第4至第8年会产生5,250,000 BTC,第8至12年则只有2,625,000 BTC,如此类推。到最后,总共产生的比特币数量为接近21,000,000 BTC。

另外,伴随着网络一同建立的还有一个系统。平均每隔10分钟,该系统就尝试去收集网络上产生的block里面的新比特币。创建新比特币的难度系数是随着参与尝试产生新比特币的人数而变化的。整个网络一致认可基于产生最前面的2016个block所花的时间实现这些行为。因此,难度系数与产生这些最早的block所花的时间内投入到产生这些新的比特币的平均计算资源有关。某个人“发现”一个block的可能性是他所用的计算资源和所有同时在网络上生成block的计算资源的比值。

目前已存在多少比特币?

现在的数量

交易链块(block)的数目乘以一个block的比特币值就是目前已经存在的比特币的数量。对于头210,000个block,其比特币值是每个block 50 BTC,接下来的210,000个block是25 BTC,再下来是12.5 BTC,6.25 BTC,如此类推。

比特币的可分割性如何?

技术上,1个比特币基于目前的数据结构可以被分割到8个小数位。也就是说目前最小的比特币单位是0.00000001 BTC。如果在未来出现对比特币分割为更小单位的需求,届时社区需要就如何实现更小的分割量进行讨论。目前,为了方便,比特币系统的软件中只会显示2位小数(例如:0.01 BTC)。这是因为小于0.01BTC的比特币其价值微乎其微。

上面提到的过段时间就减半的情况,在当已经减半到一个非常小的数值时又会怎样?

报酬将会从0.00000001 BTC 变成0。也就是说,不会再有新的比特币被创建出来。

计算的过程是以64位有符号整数向右移位的方式进行的,也就是不断除以2的过程。该整数值等于 BTC * 100,000,000 的值。这也是比特币的结余或价值在程序内部存放的方式。需要注意的是,按照目前的规则,可能需要将近100年才会出现问题,而到了那个时候,比特币已经可能有所变化。

需要用多长时间才能产生全部的比特币?

最后一个产生的block将会是第6,929,999号。大约会在2140年产生。届时,流通中的比特币数量将会被固定在 20,999,999.9769 BTC。

即使比特币的分割精度可以从现时的8位小数继续扩充,但流通的BTC总量永远固定在一个比2千1百万稍小的数(假设所有的事情都没有发生变化)。例如,如果实现了16位小数的分割精度,则最后的比特币数量将会是 20999999.999999999496 BTC。

如果不会再有新的比特币被创建出来,那么是否还会有新的交易链块(block)被创建?

绝对会!甚至在新比特币终止创建之前,交易费的使用将使得创建新的交易链块(block)所带来的交易费比创建新的比特币更有价值(注:新创建的比特币的价值已经被分割到远小于通常的交易费用了)。当创建比特币终止时,比特币的使用维持将会完全依赖于这些费用。因此,在 #6,929,999 号block之后仍然会有新的block产生,只要届时人们仍然在使用比特币。

但如果不再有新的比特币被创建出来,当比特币丢失后将会怎样呢?不会有问题么?

根本不会。基于供求原理,如果比特币的总量减少,则剩下的比特币的需求将会上升,因而这些比特币就会具有较高的价值。于是,当比特币丢失后,剩下的比特币的价值就会增加来补偿。随着比特币的价值上升,用于购买一件事物的比特币的数量便会相应地减少。这也就是我们常说的通货紧缩现象,简单说,就是钱更值钱了。到最后,如果事情发展到网络上最大的交易量都小于1个BTC,则只需要简单地把小数位向右移动一下,系统就可以继续运行下去。

如果每一次的交易都要被网络广播出去才能生效,那么比特币是否具备伸缩性,以减少网络传输和降低负载?

比特币的技术协议允许轻量级的客户端不需要下载整个交易历史就可以使用比特币。随着网络流量的增长,这一特性会越来越显得必要,该概念的具体实现(即比特币客户端软件)也会被开发出来。具备完整交易记录信息的网络节点在某个时候将会变成一种专门性的服务。

基于对软件的修改,具备完整交易记录信息的比特币节点将会只需要很常见的一些硬件设备(比如几个机架的当前硬件水平的服务器)就能很容易地跟上VISA和万事达卡(MasterCard)两者组合的水平。值得注意的是,万事达卡网络在结构上与比特币有某些相似之处:都是点对点的广播网络。

可以参考Scalability.

BitCoin网络如何处理CAP定理

为何我必须要等上10分钟才能花我收到的比特币?

要等上10分钟的理由是,10分钟是系统找到一个有效的交易链块所需要的平均时间。值得注意的是基于运气这个时间实际上会稍长或稍短,10分钟只是一个简单的平均情况。

在软件的界面中显示为“证实的”或“确认的”(confirmations,取决于软件的汉化)的交易链块记录的内容是比特币如何被网络一致认可由谁拥有。一旦发现所有人都同意你对一个block里面的记录的比特币具有所有权,你就可以把这些比特币花掉。如果某个人尝试通过撤销一项交易来欺骗整个系统,在最终被认定无效之前也有可能网络上的某些节点会对此进行认可。所以,一项交易获得的确认越多,则该交易被证伪、被撤销的风险就会越低。只需要6个blocks或者1小时,就可以使得撤销交易所需要的运算量达到完全不切实际的程度。这与信用卡可以在交易后的三个月内拒付的特点相比明显要好得多。

如果你要追问“10分钟”的更详细的由来,答案是:这是Satoshi对新block在大型网络中传递所需的时间和由于交易链分拆而被浪费的工作量之间的折衷选择。如果你没有看懂这句话,别着急。参考这篇比特币的技术论文(英文)可以让你更清楚。

为了能用比特币买或者卖东西是否必须要登上10分钟?

不。如果交易的价值不高,不去等待认可也是合乎情理的。

问这类问题的人们通常想的都是诸如超级市场或者自动售卖机一类的场景,像2010年7月的这个帖子(英文)中讨论的那样。零确认的交易同样会在软件界面中显示,但你无法把比特币花出去。当然,你应对你能否在未来花掉这些钱的风险进行评估。通常上,在0确认的情况下销售相当便宜的商品(如零食、数字下载等等)时不算是什么大问题,只要你在运行一个和比特币网络连接得很好的节点就行。

为什么我的比特币地址不断变化?

每当“你的地址”中所列出的地址收到1项交易,Bitcoin软件就会用一个新的地址替换它。这是为了鼓励你对每一项交易都使用一个新地址,从而增强匿名性。您所有的旧地址仍都可用,你可以在“设置->你的接收地址”看到它们。

经济

比特币的价值从何而来?又是谁在支撑比特币?

比特币之所以有价值,是因为许多人接受比特币为一种支付手段。参见:list of Bitcoin-accepting sites

我们常说的“货币以黄金作为支撑”这句话的实际意义是存在着可以把货币兑换为黄金的承诺。某种意义上,你可以说比特币是以商人的价格标签来支持的,因为价格标签也是一种承诺:承诺可以用特定数量的货币来交换货物。

一种常见的误解是,比特币的价值来源于产生它所消耗的电力。但是,成本不等于价值。雇1千个人在地上挖个大坑需要很高的成本,但这件事毫无价值。另一方面,虽然对于有用的货币来说“短缺”是一种关键的需求,但“短缺”本身并不能使任何事物更有价值。比如你的指纹是绝无仅有的,但这并不意味着你的指纹就有任何交易价值。

如果有人把全部存在的比特币都买下了呢?

如果有人把世界上所有的黄金都买下来又会怎样呢?可想而知,在尝试全盘收购的过程中,买家/卖家只会把价格托到天高,最终买家会耗尽全部的钱。而且,不是所有的比特币都是可以出售的,没有人能买下本来就不能出售的比特币,就像黄金储备那样。

其实还有最关键的一点:货币的用途是流通,如果真有可能全部的比特币都被买下,那么比特币的流通用途就消失了,也就是说,比特币就会分文不值。没有那个收购者会去做这种白白送钱给人花的事情。

比特币的货币政策导致了螺旋式的通货紧缩

参见:Deflationary spiral

网络

我是否需要配置自己的防火墙以便能运行比特币的客户端软件?

比特币客户端软件需要和其他节点连接。连接通常是通过TCP端口8333发起的。因此,如果你希望你的比特币客户端软件可以连接到其他节点,你需要在防火墙上允许向外的到TCP 8333端口的连接。另外,比特币客户端还会尝试通过TCP端口6667连接到IRC服务(比如irc.lfnet.org),以便能找到可供连接的其他节点。

如果想限制防火墙规则为只连接到某些特定的IP,并且不想允许任何IRC连接,你可以在fallback nodes list找到可供连接的静态节点地址。即使你的ISP阻挡了通常的IRC端口,也可以通过端口7777连接到irc.lfnet.org。但如果确实要通过这个后备端口来连接的话,你要么需要重新编译比特币客户端软件,要么需要修改你的路由规则。比如,在Linux上你可以通过以下处理来绕过对端口6667的阻挡:

echo 173.246.103.92 irc.lfnet.org >> /etc/hosts
iptables -t nat -A OUTPUT -p tcp --dest 173.246.103.92 --dport 6667 -j DNAT --to-destination :7777 -m comment --comment "bitcoind irc connection"

节点对端发现机制是如何工作的?

比特币客户端软件主要是通过连接到IRC服务器(irc.lfnet.org的#bitcoin频道)来查找网络上的对端的。如果无法连接到IRC服务器(比如通过加密路由软件来连接互联网),软件将改为通过一个内置的节点列表进行初始连接,然后再通过这些节点查询其它节点的地址。

采矿

什么是采矿?

所谓采矿只是一种形象的说法。采矿实际上是通过消耗计算能力去寻找有效的block并创造新的比特币的过程。

从技术上说,采矿是计算之前的交易链块的hashnonce。如果哈希值小于当前的difficulty,就会形成一个新的交易链块,采矿人同时会获得50个新创建的比特币作为回报。如果哈希值不小于当前的难度系数,一个新的nonce将被使用,再去计算新的哈希值。以上过程被每一个矿工每秒钟重复成千上万甚至百万次。

我挖了很久都没有获得任何新比特币,出了什么问题?

在比特币网络运行的早期,任何人都可以通过普通的CPU去找到新的交易链块。随着越来越多的人加入到采矿队伍,寻找新交易链块的难度系数随之大幅提高到用普通CPU平均可能需要几年才能找到一个有效的交易链块的程度。唯一可承受的或者有时效的采矿方法是使用高端显卡和特殊的软件(参见为何GPU采矿比CPU快)。由于CPU采矿越来越没有意义,比特币客户端软件在未来可能会删除这个功能。

采矿的计算过程是否用在某些有意义的计算上了?

由于采矿完全是比特币网络内部的事情,因此计算过程也是基于比特币网络进行的,与任何分布式计算项目无关。采矿的过程实际上是比特币网络的基础,起到了保护比特币网络的作用,因此是有用的,并不是无意义的计算。

这难道不算浪费能源?

在创建一个自由的货币系统上消耗能源很难说是浪费。同时,对于现时世界上的各种货币系统,比如银行或者信用卡公司,其运行都要消耗大量的能源,而且比比特币网络要多得多。

为何不使用对于其他方面也有用途的计算?

为了保证比特币网络系统的安全,使用的计算需要有一些必不可少的特性。这些特性与其他一般用途的计算有冲突。

帮助

我想了解更多信息,那里可以寻找帮助?

  • 参考 简介入门
  • 观看各种Press发布的视频、播客和博文
  • 参与到 [[1]]
  • 在[IRC]频道上讨论
  • 如果要了解比特币网络运行的详细内容,可以收听 这个播客

参见