政策监管

1.无监管/ Unregulated

无监管表示一些不按规则管理和控制的东西,如目前的加密货币仍然不受许多政府管制。

2.受监管/ Regulated

受监管表示按照当地或受约束的国际规则去控制或管理某些事情或领域。

3.反洗钱/ Anti Money Laundering / AML

反洗钱,是指为了预防通过各种方式掩饰、隐瞒毒品犯罪、黑社会性质的组织犯罪、恐怖活动犯罪、走私犯罪、贪污贿赂犯罪、破坏金融管理秩序犯罪等犯罪所得及其收益的来源和性质的洗钱活动,是一系列旨在防止将非法收入转化为合法收入、维护市场经济秩序的政策及法律体系。

4.法币/ 法定货币/ Fiat Currency

法定货币是政府宣称有价值的货币,例如美元就是一种法定货币。法定货币本身没有任何价值,也不代表任何有价值的东西,但是法定货币保持其价值,因为本质上它代表公众对政府和银行的信心和信任。

5.法令/Flat

当权者的官方命令、声明或特定政策,即政权机关所颁布的命令、指示、决定等的总称。

来源:《区块链行业词典》—维京研究院、甲子智库

投资风险

1.分散式阻断服务攻击/ Distributed Denial-of-Service Attacks / DDoS

DDoS 是一种对网站或其他在线服务的计算机进行攻击,导致服务减速或关闭,阻止真实用户接受服务。DDoS 是由一台计算机获得对许多其他计算机的控制而引起的,这些计算机是用户所不知道的,攻击并将计算机引向在线服务,因为成千上万的计算机试图与一个在线服务连接,所以它变得不堪重负,最终导致不能为用户提供服务。

2.庞氏骗局/ Ponzi Scheme

庞氏骗局是以查尔斯·庞齐的名字命名的,他是一名伪造概念企业的人,他向投资者承诺在45 天内将50% 的钱返还给投资者,或者在90 天内100% 返还。他没有使用他们的钱来建立一个企业,而是用新投资者的资金用来偿还原始投资者,同时查尔斯把一部分投资收入囊中。这种把新投资者的钱用来偿还原始投资者的非法行为,被称为庞氏骗局,其表现形式为在没有具体生产经营的前提下对资金进行“拆东墙补西墙”。

3.丝绸之路/ Silk Road

丝绸之路是一个非法的网站,营业于2011 年至2013 年10 月,允许人们使用比特币等加密货币买卖非法产品和服务,如毒品、武器、身体部位和刺客等。

4.黑客攻击/ Hacking

黑客攻击是指以未经授权或未经批准的方式强行用计算机恶意操作另一台计算机或其计算机系统的过程。

5.Cryptojacking

黑客在受害者的计算机上安装病毒程序,在受害者不知情的情况下下秘密挖掘加密货币。

选择安全性最高的脑钱包

1.比特币的找零机制——脑钱包

开始用脑钱包时,我是想这样用它的:每次收款就在blockchain.info上查看到帐情况,需要给别人付款转账的时候再把私钥导入到Armory,使用完了就删除掉整个Armory的钱包文件,绝对不让脑钱包私钥在网络上多逗留一刻。这很合理,长期把脑钱包私钥放在钱包文件那就不叫脑钱包了。
那是我第一次把脑钱包私钥导入到 Armory, 我完成了一笔1BTC的转账,正想把存着我的脑钱包私钥的Armory钱包删除,但不知道怎么的我觉得应该点开查看我的脑钱包地址下的余额是否正确。这一查看吓死我了:我发现我导入的脑钱包的地址上的BTC余额为零!钱包地址本那里多了一个标有Change字样的地址,其余额正是我脑钱包地址应该有的。瞬间我就石化了:我只是转了1BTC出去,它怎么没经我同意就把我脑钱包上剩下的BTC转到Armory钱包的一个新的地址上?如果我刚刚把Armory钱包文件都删除了,岂不是我的BTC都丢失了?好险!后来我通过查资料,知道这是比特币的找零机制:为了保证隐私(匿名性)客户端默认设置(不只Armory默认是这样,另一个轻客户端Electrum也是)为每转出一笔钱就把剩下的自动转移到钱包里面新的一个地址名下。这个目的是好的,但是和我用脑钱包的初衷完全背离:我用脑钱包的目的就是想让我的BTC永远的和我的那句暗号绑在一起,现在它给我转到别的地址去了!这太扯了!于是我决定找找看Armory上是否有不找零的设置选项,还真的找到了,终于解决了问题。具体设置如图1.9-1.10:

  • 第一步:通过菜单File点击settings进入设置,把用户模式user mode设置为expert,见图1.9:image017图1.9第二步,转账时选中Use an existing address for change(找零到一个已存在的地址,如果你不选中这个,就会把脑钱包上的余额转移到一个新的地址上),再选中Remember for future transactions(记住为以后转账默认设置,选中这个以后就不用在重复设置了。)见图1.10:image019图1.10

    通过上面的设置,我们就可以避免脑钱包上的比特币糊里糊涂地被找零到新地址上了。

    2.如何在客户端上导入脑钱包私钥生成脑钱包之后,你可以直接转比特币到该地址,通过www.blockchain.info 搜索该地址就可以看到转账记录,不用任何客户端也可以使用。但是一旦你要使用该地址中的比特币你就必须用到其私钥了,具体来说就是把私钥导入到比特币客户端中,就可以自由支配地址上的比特币了。这里重点介Armory客户端——号称目前功能最强大的比特币客户端,因为下一主题要介绍的就是这个客户端的冷藏和离线交易功能。
    在“私钥从生成到使用都不接触网络”的原则下,假设(也建议)你仍然在离线的电脑上操作Armory,导入私钥到 Armory的具体操作如下:

    • 第一步:用在线电脑登录bitcoinarmory.com,下载好并复制到离线电脑中安装好Armory。
    • 第二步:新建一个Armory钱包,要注意我们的目的不是使用这个钱包的地址和私钥,是用来导入我们脑钱包的私钥和地址的;

    具体操作见图1.4-1.6:

    image007image009image011image013image015

    3.如何生成无法被暴力破解的最高安全性的脑钱包我们的主题是“使用无法被暴力破解的最高安全性的脑钱包”,按道理说如果你是一个正常人,这种暗号这样的安全性也就够了,很少概率会被猜到或破解了。不过如果你是像我这么严重强迫症的家伙,下面的内容你一定要知道并应用。
    无法被爆力破解的最高安全性的脑钱包其实就是用两句暗号分别生成两对私钥和地址,再用这两对私钥相乘(地址不用),生成一对新的私钥和地址。
    例如我用刚刚的那句暗号(我们叫它暗号1):
    “2010年我读了一本书,书名叫《把时间当作朋友》,我特别认同181页的内容。”生成了私钥1:5JueocrCHvCpqsV45DiFiUXKG6nB61MpYTd35PH2phhkVTWnK6Z
    现在我在选多一句暗号(暗号2)“我12岁那年和黄小明打了一架,我左手脱臼他头破血流,但是我们现在是朋友。”
    按刚刚的方法生成了另一对私钥(私钥2)和地址:
    地址:1D4JjK3dM46mFqDFfxB8KJWCk4xHNFaJ4Y
    私钥:5JznMx1b3YKQMSGGnz7QpMZ2zvvk9ckGHHhjt96HoCbkX4PWkqH

    接着我们把
    私钥1:5JueocrCHvCpqsV45DiFiUXKG6nB61MpYTd35PH2phhkVTWnK6Z

    私钥2:5JznMx1b3YKQMSGGnz7QpMZ2zvvk9ckGHHhjt96HoCbkX4PWkqH
    生成一对新的
    私钥和地址:
    地址:1GyvtsBgXti8FhqmNv7HjT38V8msKxWoxf
    私钥:5JSbvC1GNb74jDjdijY5XnhNcfbngaTAaHavchkn3JdHnnzQ4Kh

    具体操作步骤是:

    • 第一步:点击网页菜单上的 Vanity Wallet ;
    • 第二步:分别复制私钥1和私钥2(地址不用)到网页上的那两个输入框上;
    • 第三步:点击选上 Multiply ;
    • 第四步:点击生成按钮 Calculate Vanity Wallet.

    细节见图1.3:image005

    4.生成脑钱包现在假设你已经保存好这个网页,并且复制到离线的电脑上用chrome 打开。以下是生成脑钱包的具体操作:

    • 第一步:点击网页菜单上的 Brain Wallet,并选中 Enter Passphrase 输入框后面的 Show;
    • 第二步:输入暗号,这里我用刚刚即兴选择的那一句;
    • 第三步:点击 Show 下面 View 按钮生成私钥和地址;

    就可以看到生成的私钥和地址啦!!!
    地址:1Fd8zmErZRccNUmG3pjcys887Uqt5QMA1v
    私钥:5JueocrCHvCpqsV45DiFiUXKG6nB61MpYTd35PH2phhkVTWnK6Z
    细节见图1.2:

    image003

    5.生成脑钱包的工具其实生成脑钱包的工具就是一个有JavaScript的网页。用chrome 或 firefox登录www.bitaddress.org,然后如果你像我这样强迫症,非要让自己的私钥从生成到使用都不接触网络,以最大限度的避免被盗的话,在网页上点击右键,把这个网页另存为下来(这其实很必要,你以后可以离线用这个工具了)。具体见图1.1:

    image001

    6.选择脑钱包暗号的原则

  • 原则1:字符足够多以防止被爆力破解;
  • 原则2:对别人来说特别不容易猜出来;
  • 原则3:对你自己来说特别容易记起来;   这就是我们选择脑钱包暗号的原则。基于这3个原则我即兴选择一句暗号:
  • 2010年我读了一本书,书名叫《把时间当作朋友》,我特别认同181页的内容。
    这样字符够多了;同时这句话里面包含了很多个人独特的经历,对我自己来说也很容易记得;对别人来说却不容易猜:他要猜到2010年还要猜到是读一本书,而且还要猜到书名,还要猜到我认同181页——Mission: Impossible. 基于这个3个原则,选择自己的暗号吧,接下来我们要看看具体如何生成脑钱包了。
  • 7.脑钱包简介
  • 在比特币的世界里,比特币地址(格式类似这样:1JwSSubhmg6iPtRjtyqhUYYH7bZg3Lfy1T)相当于银行帐号,比特币私钥(格式类似这样:5KJvsngHeMpm884wtkJNzQGaCErckhHJBGFsvd3VyK5qMZXj3hS)相当于开启这个帐号的密码,一个地址(帐号)对应一个私钥(密码)。只知道比特币地址是不能得知比特币私钥的,也是无法动用里面的比特币的,这和你知道别人的银行帐号但不知道别人的帐号密码不能取款和转账一样。但是和银行不一样的是,知道了比特币私钥却可以得知其比特币地址,并且能对该地址下的比特币进行转账,也就是说获得比特币私钥就拥有了该私钥和地址下的比特币的完全控制权——私钥就是一切!所以如果1:你弄丢了你的比特币私钥;或2:你的比特币私钥给别人知道了,你该地址下的比特币也就完蛋了:要么永远动用不了地址上的比特币,要么被知道你的私钥的人转走。等等,这些好像和你一直在用的比特币客户端比如Bitcoin-QT不一样,你可能都不用涉及到私钥的概念。那是因为私钥都包含在钱包文件wallet.dat里面了,平时我们所指的备份钱包就是备份这个存有私钥的文件。如果你想进阶到一个更高的使用比特币的水平,私钥的概念是必须了解并掌握的,其带来的优势也是很明显的,比如你可以不再依赖钱包文件,不局限于某个客户端,可以用各种不同的客户端(最好是比特币官网上有推荐的)导入私钥使用里面的比特币,并可用完即删除以防止比特币被盗。现在我假设通过上面的解释,你已经清楚比特币的地址和私钥的概念,接下来我们来了解脑钱包。我们都知道,比特币的地址(帐号)和私钥(密码)都是很长的一串字符,光靠脑子记忆是行不通的。比特币地址倒没关系,你可以写下来发给要转账给你的人,让他转账给你。但你不能泄露或丢失你的比特币私钥,否则该地址下的比特币你会被转走或没永远用不了。为了保证不泄露或丢失比特币私钥你可能会把密钥打印出来(这就是纸钱包了)并保存在一个高度安全的地方,比如存进银行保险箱、藏在你家床底下、或在你家院子里(如果有的话)挖个洞埋起来……但是,这也太麻烦了,幸好我们还有另一种选择:脑钱包。现在想象一下,有这样的一个工具:你可以用一句话做为暗号在该工具上生成一个比特币地址和对应的一个私钥(这就是脑钱包了),你可以用这个生成的地址来接收比特币,用这个生成的私钥来转账,你不必记住私钥也不必把私钥打印下来,每次需要用比特币的时候就用这句暗号去这个工具上把私钥再生成一遍,使用完了再在客户端上把私钥删除。你所需要做的只是:确保记住这句暗号(李笑来老师提醒脑钱包有风险:一个不小心摔成脑震荡。。。这个等一下我们有办法解决)。这是很酷的一件事情!

终极钱包安全备份法

1.防止三种丢失可能的终极备份方法

以下的备份方法是各种单个方法的综合,建议全部运用起来,这样效果也是最好的,也可以根据需要只使用其中几种,但一定要记住三种可能的丢币情况,并针对性的去设计备份方法。

A )使用双倍安全性的脑钱包,并把脑钱包私钥导入到离线电脑的Armory客户端加密钱包中冷储存。这样做的目的是万一你忘记了脑钱包暗号了,你可以从这个冷储存中找到私钥,而且平时离线交易转账也比较方便,不必每次都重新导入私钥。但是一定要注意,除了钱包加密,电脑的操作系统也一定要设密码,并贴一个“此电脑不能上网,待维修”的提醒,以防止被身边的人“借用电脑”。

B )经常复习脑钱包暗号以防止时间长了忘记。你可以把复习脑钱包暗号这件事安排为按时间重复的(如2个月复习一次)日程事件,时间到了手机或电脑提醒复习。复习不能是回忆几遍就行了,是要到离线电脑上打开那个生成脑钱包的离线网页,重新生成一遍,看看私钥(和地址)是否正确。用改编变异的方式把脑钱包暗号写下来,存放在安全的地方。

这个方法需要详细说明一下:

第一:有四种改编和变异的方法任选一种即可:变换暗号的关键字眼、删减暗号的关键字眼、变换暗号文字的排列顺序、增加无关的文字。下面以我们用过的暗号来举例说明:

原来的暗号是:2010年我读了一本书,书名叫《把时间当作朋友》,我特别认同181页的内容。
变换关键字眼:2011年我读了一本书,书名叫《心理学改变生活》,我特别认同292页的内容。
删减关键字眼:我读了一本书,书名叫《把时间当作朋友》,我特别认同。增加无关文字:就在2010年我读了一本书,书名叫做《把时间当作朋友》,我真的特别认同其中181页的内容。这个暗号不太好改变顺序,就不举例了。

第二:接着还要考虑写在哪里,写完要存放在哪里:

以写日记或文章的方式把变异的暗号以行文所需的两句话写进日记本中(除了你自己,别人不可能知道其中的秘密的)使其看起来不那么刻意、唐突,然后藏在家里隐私的地方(有条件可以存银行保险柜)。通过这样的方式记录暗号,相当于具备纸钱包的功能,但是比纸钱包更隐蔽(纸钱包格式太过引人注目),别人看到了也不可能注意得到。这也是我固执地认为脑钱包要胜过纸钱包的原因之一。

C )把隐藏有变异的脑钱包暗号的文章制作一份电子版备份,并同步到云端。本来直接制作一个doc格式就可以了,因为很普通的一篇文章,不引人注目,即使黑客入侵你的云端帐号也不会注意到里面有什么秘密,但是要注意我们的标题是“严重强迫症者”,我们要把任何可能造成私钥泄露的漏洞哪怕再小也要堵上!所以我们可以把电子版的备份更改后缀名为jpg图片格式,使其看起来就像一个坏掉的打不开的图片,或者更甚,我们可以把这打不开的假图片压缩为zip格式并伪装为一个真正的图片,需要的时候再还原出来。“把压缩文件伪装成图片”的具体方法可以在网上搜索一下关键字“把压缩文件伪装成图片”

只要做足上面ABC三种备份方法,你要同时发生以下4种情况,才能弄丢你的私钥:1、忘记脑钱包暗号,2、冷储存的电脑硬盘彻底坏掉,3、记录有变异暗号的日记本丢了,4,电子版的暗号备份在本地计算机和云端同时删除了。如果这4种情况真的同时发生了,那你的人品就是真的是差到前无古人后无来者的程度了,我只能深表同情。

D)把最少两种或以上的备份告诉一个完全信任的人。即使我们做到以上的所有步骤,仍然有一点是防止不了的,那就是如果我们自己出现人身意外……所以就很有必要把两种或以上的备份和还原的方法告诉自己最亲最值得信任的人了。这个各人情况不同,我无法真正有效地建议,大家视自己的情况安排就是了。

2.三种可能丢失的情况

为什么要备份钱包?答案是防止丢币。可能大部分人都会这么回答。这是没错的,但不够具体,比较模糊,最终也会影响效果。如果我们能更进一步把丢币这个问题分解一下,其实可以得到三种可能丢币的情况,这将有助于我们针对各种可能的情况设计更好的措施,得到最佳的效果。 三种可能的丢币情况分别是: 第一种可能丢币的情况:被黑客通过各种入侵手段盗取钱包或私钥。这种可能的情况是大家共同意识到并考虑得最多的,但预防措施却不一定做足,比如有人因为怕麻烦竟然连起码的钱包加密都没能做到;有人会对钱包进行简单加密,但这些对于防止黑客入侵盗取比特币是很不足够的,特别是在windows系统环境下。 第二种可能丢币的情况:因为各种原因自己弄丢了钱包、钱包密码或私钥。这种可能的情况也是大部分人(除了新手,新手可能会因为没备份钱包文件在重装系统后丢失钱包文件)能考虑到的,并且会做各种备份,比如用脑钱包、纸钱包、钱包文件备份到U盘和云端。但一样做的不是很好,有时候反而方便了第一中丢币可能:黑客盗取。比如有人竟然将客户端的原形钱包文件格式(QT钱包格式:wallet.dat、Armory钱包格式:XXX.wallet、electrum格式:electrum.dat)不做任何伪装就备份到云端上了,而且钱包密码还居然跟云端帐号密码一样(在现实中我就见过有人是这样),总之颇为顾此失彼。最后还有一种属于自己弄丢钱包(私钥)和密码的可能性:出现人身意外。 第三种可能的丢币情况:被身边的人有意或无意中得到钱包(和密码)或私钥。这种可能的情况相对比较少被考虑到,可能也是所做的相关防护最不足的。想象一下这种情景:身边走的比较近的人(但是不一定特别可靠的),知道你有在搞比特币。突然有一天你没在家(你家有人)的时候他去你家了,然后不管出于什么原因,他借用你的电脑结果“不小心”打开你的钱包(或私钥)或在某个抽屉里发现了你的纸钱包备份……这些都是有可能发生的。 以上的讨论涵盖了所有可能丢币的情况,和相关的防护(备份)措施。从中我们可以看到由于模糊性,使我们没有考虑周全并针对各种可能设计安全备份,导致防护不足。可能你要说这也太夸张了,那都是多小概率的事件啊,果然是严重的强迫症。但我要说的是,小概率事件一旦发生了就是毁灭性的,是你承受不了(呵呵,我自己因为忘记900个LTC的钱包密码都难受的要命,不敢想象要是我的比特币都丢了。),如果比特币值得我们认真对待,那我们就尽量在相关的各方面认真一点吧。有没有一种备份方法能兼顾防止这三种可能丢币的情况呢?答案是有的,但不是单一的备份方法,是各种方法的组合,相信配合上一节介绍的冷储存和离线交易,能实现最大程度上的比特币使用安全。

利用Armory的冷储存和离线交易功能

1.私钥冷储存和离线交易的具体操作

一共有六个步骤,其中第一至第三步是完成私钥冷储存创建的过程;第三到第六步是平时转账是进行离线交易的操作过程。六个步骤分别为:

  • 第一步:用离线电脑的Armory客户端创建冷藏钱包
  • 第二步:制作不包含私钥的只能观看的钱包备份
  • 第三步:把不包含私钥的只能只能观看的钱包备份导入到在线电脑的Armory客户端上
  • 第四步:用在线电脑的Armory客户端创建未签名交易。
  • 第五步:把未签名交易拿到离线电脑的Armory客户端上签名
  • 第六步:把已签名的交易拿到在线电脑的Armory客户端上广播完成转账

下面我们一步一步展开:

  • 第一步:用离线电脑的Armory客户端创建冷藏钱包。这一步的操作和上一节在Armory上创建钱包或导入脑钱包私钥一样,这里不在赘述。
  • 第二步:制作不包含私钥的只能观看的钱包备份(Watching-Only),并保存到U盘上,细节见图2.1:image021图2.1:第三步:把不包含私钥的只能只能观看的钱包备份导入到在线电脑的Armory客户端上。细节见图2.2-2.3image023图2.2image025图2.3
    注意:完成这一步之后,Armory会停止响应一会儿,然后提示导入已经成功并重新同步数据,整个过程需要时间大概3-10分钟,视电脑速度而定。图2.4是成功导入只能观看的钱包备份并同步好数据之后:image027图2.4

    到这一步为止我们已经完成了私钥的冷储存,接下来的步骤是日常转账交易中的离线交易操作。

    第四步:用在线电脑的Armory客户端创建未签名交易

  • 顾名思义,未签名交易就是还没有通过私钥签名的交易,我们平时要转账给别人的时候,可以按需要先创建这样未签名的交易,具体操作见图2.5-2.7:image029图2.5image031图2.6image033图2.7image035图2.8image037图2.9image039图2.10到这里为止,我们已经完成了一笔离线交易中创建未签名交易的操作并保存为文件到U盘,接下来的步骤就是我们把这笔未签名交易复制到离线电脑上,用Armory客户端进行签名。第五步:把未签名交易拿到离线电脑的Armory客户端上签名。

    通过上一步,我们把未签名交易一文件的形式保存早U盘,现在把U盘插入到离线电脑上,并打开Armory客户端,因为离线电脑的Armory客户端的钱包包含私钥,所以能对这笔未签名交易进行签名,具体操作见图2.11-2.17:image041图2.11

    image043图2.12image043图2.13image045图2.14image047图2.15image049图2.16image051图2.17

    到这里为止,我们已经为未签名的离线交易签名完毕并自动保存在U盘中,接下来的步骤就是拿去在线电脑的Armory客户端上进行广播。第六步:把已签名的交易拿到在线电脑的Armory客户端上广播完成转账。这是最后一步了,通过把以签名的离线交易拿到在线电脑的Armory客户端上广播,整个转账过程将全部完成。具体操作见图2.18-2.23:image053图2.18

    image055图2.19image057图2.20image059图2.21
    以上完整介绍“私钥冷储存和离线交易”的概念和相关的操作,建议感兴趣和有条件的朋友可以配合脑钱包的那一节,开始用小额的比特币进行实际操作以熟练掌握。

    2.工具准备

  • 准备一个U盘、两部电脑,其中一部连接网络,另一部不要连接网络,两部电脑分别安装不同的操作系统(防止病毒和木马通过U盘在同系统不同电脑上传播),并分别安装好Armory客户端(下载地址:https://bitcoinarmory.com/get-armory/ ),要注意,在线的Armory客户端需要在安装有Bitcoin QT客户端的系统上才能正常运行,如果你的在线电脑没有Bitcoin QT客户端,就需要先安装一个。离线电脑的Armory客户端不需要以Bitcoin QT客户端为基础,可以独立运行。这里有个操作系统选择的建议,如果你日常主要用的系统是Windows,那就在离线电脑上安装LINUX。我自己的组合就是Windows7 + Linux mint(基于UBUNTU的一个Linux版本),如果实在没有两台电脑,也可以在同一台电脑上安装不同的系统来实现,只是这样平时转账的时候要重启电脑进入不同操作系统,会有点不方便。

3.私钥冷储存和离线交易的概念

正如我们在第一节讨论过的,转账要用到私钥,有私钥就能转账,私钥就是一切,所以毫不夸张的说我们要像保护自己的生命一样保护自己的私钥!但是很多人对自己的私钥保护严重不足,很多人在windows系统下加密了钱包,简单的备份一下钱包文件,以为这样就挺安全了,其实这是很危险的。因为所有的客户端其实都是把私钥和地址存放在钱包文件(钱包文件存放在系统的AppData文件夹里面),我们都知道比特币转账需要要联网,这样也就为黑客打开了一扇盗取我们的比特币的方便之门了,技术厉害的黑客完全可以通过在你的电脑上植入木马获得钱包文件并在你转账输入钱包密码时记录键盘获得钱包密码,这样你的比特币就和你永别了。每个人都希望这样的事情不要发生在自己身上,但是光有希望肯定是不够的,得有实际行动才行!利用Armory的私钥冷储存和离线交易功能正是这样切实的保护方法。简单来说,Armory的私钥冷储存就在一台永不上线的电脑上安装好Armory客户端并管理我们的私钥(可以是Armory自己生成的也可以是导入的)让我们的私钥不接触网络。但是转账的时候需要网络啊:Armory离线交易功能可以让我们的私钥在完全不接触网络的前提下完成转账,这就很牛逼了!只要我们的私钥不接触网络,就不可能被黑客盗取。除非那不是黑客是黑社会破门入。

 

比特币交易构成

1.SIGHASH_SINGLE

该签名类型其次自由松散,仅对自己的输入、输出签名,并留空sequence字段。其输入的次序对应其输出的次序,比如输入是第3个,那么签名的输出也是第三个。简单理解就是:我同意花费我的那笔钱,且只能花费到我认可的输出,至于单子里的其他输入、输出,我不关心。

2.SIGHASH_NONE

该签名类型是最自由松散的,仅对输入签名,不对输出签名,输出可以任意指定。某人对某笔币签名后交给你,你可以在任意时刻填入任意接受地址,广播出去令其生效。简单理解就是:我同意花费我的那笔钱,至于给谁,我不关心。

3.SIGHASH_ALL

该签名类型为默认类型,也是目前绝大部分交易采用的,顾名思义即签名整单交易。首先,组织所有输出、输入,就像上文分解Hex过程一样,每个输入都对应一个签名,暂时留空,其他包括sequence等字段均须填写,这样就形成了一个完整的交易Hex(只缺签名字段)。然后,每一个输入均需使用私钥对该段数据进行签名,签名完成后各自填入相应的位置,N个输入N个签名。简单理解就是:对于该笔单子,认可且只认可的这些输入、输出,并同意花费我的那笔输入。

4.签名类型

由于一个交易的输入、输出都可能具有多个,那么签名也具有多种类型,目前共三类:SIGHASH_ALL, SIGHASH_NONE, SIGHASH_SINGLE。

5.交易签名

签名是对所有权的验证,节点收到交易广播后,会对交易进行验证,通过后则收录进内存、打包进Block,否则,丢弃之。签名就类似传统纸质合同盖章、签字过程,合法转移所有权的保证手段。

6.Pubkey Hash TX

该类是最常见的交易类型,由N个输入、M个输出构成。

7.Script Hash TX

该类交易目前不是很常见,大部分人可能没有听说过,但是非常有意义。未来应该会在某些场合频繁使用。该类交易的接受地址不是通常意义的地址,而是一个合成地址,以3开头(对,以3开头的也是比特币地址!)。三对公私钥,可以生成一个合成地址。在生成过程时指定n of 3中的n,n范围是[1, 3],若n=1,则仅需一个私钥签名即可花费该地址的币,若n=3,则需要三把私钥依次签名才可以。

8.Generation TX

每个Block都对应一个产量交易(Generation TX),该类交易是没有输入交易的,挖出的新币是所有币的源头。

9.交易类型

交易有三种常见类型:产量交易(Generation),合成地址交易(Script Hash),通用地址交易(Pubkey Hash)。该分类并非严格意义的,只是根据交易的输入输出做的简单区分。

10.交易简介

交易(Transaction)是比特币系统的信息载体,最小单元。而块(Block)就是将这些基础单元打包装箱,贴上封条,并串联起来。巨大算力保障了块的安全,也就保障了单个交易的安全。

时间戳服务与存在证明

1.构造特殊交易

带有数字摘要的交易如何构造呢?下面以32字节的数字摘要为例,提出数个可行方法,其他长度的可变换得出。

方式一:交易额承载信息

32字节可以分割为16个双字节,每个双字节的数值范围是:0~65535。比特币的现行单位可以分割至小数点后八位,那么我们可以利用最后的5位来存放一个数值,一共需要16个输出(Tx output)即可完成32字节的信息存储。中间涉及比特币最大数量为:

.00065535 * 16 = .0104856 btc
需要的比特币数量很少,约0.01Btc,且输出依然发回给自己的地址,唯一的代价就是付出矿工费(Tx Fee)。任何人都可以使用之。

方式二:数字摘要的Hash作地址输入

回顾一下地址的生成算法(下图是一个未压缩公钥生成地址的过程,公钥是否压缩对该证明过程没有影响):

47602d38-0356-11e3-8fa7-ba59e99eee85

我们用数字摘要的Hash值代替图中红色框中的值,然后得到一个地址,我们把0.00000001 btc打入该地址,形成交易,收录后完成证明。验证时,需要首先得到数字摘要hash值,再生成对应的地址,核对地址是否一致即可。

这个方法有个缺点,打入该地址的币永远消失了,因为没有其对应的私钥。虽然可以只需1聪,目前价值几乎忽略不计,但毕竟浪费了。该方法可以进一步衍生一些类似的方法。曾有个网站使用之,后来该网站关闭了。

方式三:数字摘要的Hash作私钥

大小介于1 ~ 0xFFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFE BAAE DCE6 AF48 A03B BFD2 5E8C D036 4141之间的数,都可以认为是一个合法的私钥,其大小为32字节。那么,可以把数字摘要的Hash作私钥,并推算出公钥和地址。

将任意币值输出至该地址构成交易,交易收录后,通过私钥再转移走即可。这样便在block chain里留下了这个地址。验证时重复该过程,检查地址是否一致即可。

该方法不会像方法二那样形成浪费,也比较容易操作。我们依然SatoshiDice的种子文件为例,种子数字摘要的Hash为:9b0d87ac871518cfd8601aa456b58fa74c01194cfeb25e7f3eecf43759d6ccb4。

借助bitaddress.org,输入私钥(种子hash)后:得到两把公钥,分别对应两个地址。证明时将币打入任何一个地址即可,建议使用未压缩公钥地址,因为并不是所有客户端都对压缩公钥支持良好。然后将该私钥导入任何一个客户端,再把该地址的钱转移到一个安全的地方。最后,公开私钥和对应收录地址的交易。

2.比特币做存在证明

时间点后向证明

因为block hash的不可伪造性,能提供Block Hash即可证明存在于该Block时刻之后。例如,你在拍照的时候,拿着打印有block hash的纸即可证明:你在该block时刻之后进行的拍摄。

时间点前向证明

前向证明需要精心构造一个包含数字摘要的交易,待该交易进入block中。便可以证明你在该block时刻之前拥有该数字摘要。前向证明的关键是能把信息写入时间戳服务载体。

时间区间证明

有时候,仅仅证明时间点之前或之后是不够的,需要能够确认到某一个时刻。将上述方式综合即可完成:

1)将block A的hash值添入数据文件,并制作文件数字摘要。(时间点后向证明)

2)将摘要信息构造至交易中,广播之。(时间点前向证明)

3)当交易被block B收录进去,那么即可证明,该文件于block A与B的时间间隔中存在。

如果交易给了足够的矿工费(Transaction Fee),具有较高优先级的话,便很有可能被紧随其后的block收录。连续的block约10分钟,那么就在一个相对小的时间内作了证明,可以近似认为是时间点。

3.数字摘要

简单来说,对一串数据进行Hash运算,得到的Hash值称为数字摘要。除了Hash函数,还有其他方式,如密钥签名等也可以得到。Hash值通常是一个非常巨大的数,例如用SHA256时,Hash值区间非常大:1~2256。数字摘要的计算过程不可逆,那么可以认为: 欲证明你拥有某个文件,提供该文件的Hash值(及Hash函数)即可。第三方可以轻易验证文件的Hash值来判断之。

4.时间戳服务

比特币本质是构造了一个永不停息、无坚不摧的时间戳系统。 然后该系统上添加若干特性后使得具有货币的功能。报纸从另一个角度讲也是一种时间戳服务。 比特币具有下列优良的特性可以更完美的用于存在证明: 不可预测/伪造。因block的计算是随机事件,其hash值是一个32字节的随机大数(2256)。想蒙对该数的概率实在是太低了。 不可销毁/修改。Block Chain拥有巨大的算力在维护与延续,对于N个确认的block,想篡改是不可能的。 block具有天然时间特性。timestamp是block meta字段之一。 block可以存储信息。对于block meta信息,是无法控制的。但block会收录交易,而交易是可以”写入”自己的数据。

5.存在证明

存在证明就是向第三方证明某个物品/事件,在过去的某个时刻存在过。 这是一件很简单的事情,提供票据、通信记录之类的就可以办到。但这些并不严格,因为这些证据都是非常易伪造或销毁。要完成证明,必须依赖强有力的证据链,这个必须是任何人都无法伪造与销毁的,或者说伪造成本极其高昂近乎不可能。 报纸之所以能够成为有效的时间证明系统是因为: 不可伪造性。新闻等信息是无法预测的,尤其是证券大盘数据,报纸上大量充满这样的信息,所以无人能够提前伪造。 公开且不可销毁。报纸通常拥有很大的发行数量,受众广泛,一旦发布出去就分散到各个角落,很难再次收集齐全并全部销毁。通常图书馆也会存档数十年期限的报纸。 具有时间特征。报纸具有很强时间特征,版面到处可见的是时间标记。 借助报纸可以完成某个时间之后的存在证明,但无法完成某个时间之前的。例如,你拿9月1号的报纸拍摄进照片,那么仅能证明其在9月1号之后拍摄,可能是9月1号,也可能是9月15号。

工作证明与挖矿

1.算力巨头

全网算力的上升对比特币是极其有利的,这是毫无疑问的。但目前大矿池与矿业巨头使得算力高度集中化,这与中本聪所设想的一CPU一票(one-CPU-one-vote)的分散局面背道而驰,或许是他未曾预料的。 挖矿是一项专业劳动,最后必然会交给最专业的人或团队,因为这样才能实现资源配置最优,效率最高。普通投资人通过购买算力巨头的股票:1. 完成投资;2. 分享算力红利。看似中心化的背后其实依然是分散的: 矿业公司的背后是无数分散的投资人 矿池背后是无数分散的个体算力 既得利益使得算力巨头倾向于维护系统而不是破坏,因其收益均建立在比特币系统之上,既得利益者断然不会搬石头砸自己脚。甚至很多巨头在达到一定算力占比后会主动控制算力增长,使得低于某阈值内。

2.算力攻击的危害

攻击者算出block后,block&Txs必须能够通过验证,否则其他节点都会拒掉,攻击便无意义。攻击者无法做出下列行为: 偷盗他人的币。消费某个地址的币时,需要对应的ECDSA私钥签名,而私钥是无法破解的。 凭空制造比特币。每个block奖励的币值是统一的规则,篡改奖励币值会导致其他节点会拒绝该block。 唯一的益处是可以选择性的收录进入block的交易,对自己的币进行多重消费(Double Spending)。 过程是这样的:假设现在block高度为100,攻击者给商户发了一个交易10BTC,记作交易A,通常这笔交易会被收录进高度101的block中,当商户在101块中看到这笔交易后,就把货物给了攻击者。此时,攻击者便开始构造另一个高度为101的block,但用交易B替换了交易A,交易B中的输入是同一笔,使得发给商户的那笔钱发给他自己。同时,攻击者需要努力计算block,使得他的分支能够赶上主分支,并合并(Merge)被大家接受,一旦接受,便成功地完成了一次Double Spending。 攻击难度呈指数上升,所以成功的Double Spending通常是一个极小概率事件。

3.算力攻击的概率

算力攻击是一个概率问题,这里作简单叙述:

  • p = 诚实节点挖出block概率
  • q = 攻击者挖出block概率,q = 1 – p
  • qz = 攻击者从z个block追上的概率

a22dae50-fb92-11e2-95aa-3e346efdab40

我们假设p>q,否则攻击者掌握了一半以上的算力,那么概率上永远是赢的。该事件(攻击者胜出)的概率是固定,且N次事件之间是相互独立的,那么这一系列随机过程符合泊松分布(Poisson Distribution)。Z个块时,攻击者胜出的期望为lambda:

e386fa6c-fc20-11e2-8376-73d9a367bf98

攻击者在攻击时已经偷偷的计算了k个块,那么这k个块概率符合泊松分布(下图左侧部分),若k<=z,那么追赶上后续z-k个块的概率为(q/p)z-k,即:

d08dfcca-fc21-11e2-9740-907f2a89de88

展开为如下形式:

b08c63ec-fc23-11e2-8f43-c932daec9f7c

由于block的链式形式,随着块数的上升,攻击者赢得的概率呈指数下降。这是很多应用等待六个甚至六个以上确认的原因,一旦超过N个确认,攻击者得逞的可能微乎其微,概率值快速趋近零。

当攻击者的算力超过50%时,便可以控制Block Chain,俗称51%攻击。

4.Block hash

Block hash的计算是随机概率事件,当有节点广播出难度更高的block后,大家便跑到那个分支。在比特币系统运行过程中,算力经常在分支间跳来跳去,此现象称为Hash Dance。一般情况下,分支的高度为1~2,没有大的故障很难出现高于2的分支。

Hash Dance起名源于Google Dance.

5.分支博弈

我们假设所有的节点: 都是理性的,追求收益最大化 都是不诚实的,且不惜任何手段获取利益 所有节点均独自挖矿不理会其他节点,并将所得收益放入自己口袋,现象就是一个节点挖一个分支。由于机器的配置总是有差别的,那么算力最强的节点挖得的分支必然是最长的,如果一个节点的分支不是最长的,意味其收益存在不被认可的风险(即零收益)。为了降低、逃避此风险,一些节点肯定会联合起来一起挖某个分支,试图成为最长的分支或保持最长分支优势。 一旦出现有少量的节点联合,那么其他节点必然会效仿,否则他们收益为零的风险会更大。于是,分支迅速合并汇集,所有节点都会选择算力更强的分支,只有这样才能保持收益风险最小。最终,只会存在一个这样的分支,就是主干分支(Best/Main Chain)。 对于不诚实节点来说,结局是无奈的:能且只能加入主干挖矿。不加入即意味被抛弃,零收益;加入就是老实干活,按占比分成。

6.主链分叉

从block hash算法我们知道,合理的block并不是唯一的,同一高度存在多个block的可能性。那么,当同一个高度出现多个时,主链即出现分叉(Fork)。遇到分叉时,网络会根据下列原则选举出Best Chain:

1)不同高度的分支,总是接受最高(即最长)的那条分支

2)相同高度的,接受难度最大的

3)高度相同且难度一致的,接受时间最早的

4)若所有均相同,则按照从网络接受的顺序

5)等待Block Chain高度增一,则重新选择Best Chain

94b6ba76-f621-11e2-95b0-febc373535b7

按照这个规则运作的节点,称为诚实节点(Honest Nodes)。节点可以诚实也可以不诚实。

7.新block诞生过程

下面是一个简单的步骤描述,实际矿池运作会有区别,复杂一些:

1)节点监听全网交易,通过验证的交易进入节点的内存池(Tx Mem Pool),并更新交易数据的Merkle Hash值

2)更新时间戳

3)尝试不同的随机数(Nonce),进行hash计算

4)重复该过程至找到合理的hash

5)打包block:先装入block meta信息,然后是交易数据

6)对外部广播出新block

7)其他节点验证通过后,链接至Block Chain,主链高度加一,然后切换至新block后面挖矿                                                                                                    由于hashPrevBlock字段的存在,使得大家总是在最新的block后面开挖

8.Block Hash算法

Block Hash算法

Block头部信息的构成:

字段名 含义 大小(字节)
Version 版本号 4
hashPrevBlock 上一个block hash值 32
hashMerkleRoot 上一个block产生之后至新block生成此时间内,
交易数据打包形成的Hash
32
Time Unix时间戳 4
Bits 目标值,即难度 4
Nonce 随机数 4

nHeight+1) % nInterval != 0) {
// 未达到周期个数,无需调节
return pindexLast->nBits;
}

// Go back by what we want to be 14 days worth of blocks
const CBlockIndex* pindexFirst = pindexLast;
for (int i = 0; pindexFirst && i < nInterval-1; i++) pindexFirst = pindexFirst->pprev;

// 计算本次2016个块的实际产生时间
// Limit adjustment step
int64 nActualTimespan = pindexLast->GetBlockTime() – pindexFirst->GetBlockTime();
// 限定幅度,最低为1/4,最高为4倍
if (nActualTimespan < nTargetTimespan/4) nActualTimespan = nTargetTimespan/4; if (nActualTimespan > nTargetTimespan*4)
nActualTimespan = nTargetTimespan*4;

// 根据最近2016个块的时间,重新计算目标难度
// Retarget
CBigNum bnNew;
bnNew.SetCompact(pindexLast->nBits);
bnNew *= nActualTimespan;
bnNew /= nTargetTimespan;

if (bnNew > bnProofOfWorkLimit)
bnNew = bnProofOfWorkLimit;

return bnNew.GetCompact();
Block字段详解

1)Version,版本号,很少变动,一般用于软件全网升级时做标识

2)hashPrevBlock,前向Block Hash值,该字段强制多个Block之间形成链接

3)hashMerkleRoot,交易Hash树的根节点Hash值,起校验作用,保障Block在网络传输过程中的数据一致性,有新交易加入即发生变化

4)Time,Unix时间戳,每秒自增一,标记Block的生成时间,同时为block hash探寻引入一个频繁的变动因子

5)Bits,可以推算出难度值,用于验证block hash难度是否达标

6)Nonce,随机数,在上面数个字段都固定的情况下,不停地更换随机数来探寻

最为关键的字段是hashPrevBlock,该字段使得Block之间链接起来,形成一个巨大的“链条”。Block本是稀松平常的数据结构,但以链式结构组织起来后却使得它们具有非常深远的意义:

1)形成分支博弈,使得算力总是在主分支上角逐

2)算力攻击的概率难度呈指数上升(泊松分布)

每个block都必须指向前一个block,否则无法验证通过。追溯至源头,便是高度为零的创世纪块(Genesis Block),这里是Block Chain的起点,其前向block hash为零,或者说为空。

9.挖矿

挖矿即不断接入新的Block延续Block Chain的过程。 挖矿为整个系统的运转提供原动力,是比特币的发动机,没有挖矿就没有比特币。挖矿有三个重要功能: 发行新的货币(总量达到之前) 维系货币的支付功能 通过算力保障系统安全 金矿消耗资源将黄金注入流通经济,比特币通过“挖矿”完成相同的事情,只不过消耗的是CPU时间与电力。当然,比特币的挖矿意义远大于此。

10.工作证明

工作证明(Proof Of Work,简称POW),顾名思义,即工作量的证明。通常来说只能从结果证明,因为监测工作过程通常是繁琐与低效的。 比特币在Block的生成过程中使用了POW机制,一个符合要求的Block Hash由N个前导零构成,零的个数取决于网络的难度值。要得到合理的Block Hash需要经过大量尝试计算,计算时间取决于机器的哈希运算速度。当某个节点提供出一个合理的Block Hash值,说明该节点确实经过了大量的尝试计算,当然,并不能得出计算次数的绝对值,因为寻找合理hash是一个概率事件。当节点拥有占全网n%的算力时,该节点即有n/100的概率找到Block Hash。 工作证明机制看似很神秘,其实在社会中的应用非常广泛。例如,毕业证、学位证等证书,就是工作证明,拥有证书即表明你在过去投入了学习与工作。生活大部分事情都是通过结果来判断的。

比特币常见问题解答

1.SSL是不是被人可怕地破解了?

不,并非如此。有些人说SSL被破解了,但目前没有更安全的系统。X.509公钥基础设备(PKI)是PKI多年演变和改良的结果。而且,PKI仍然在改进。因为它支持SSL协议,许多实力雄厚的企业希望它变得更完善,比如说Google公司就在聘请员工来完善PKI。我们再具体一点。关于X.509公钥基础设施人们最关注的问题是该系统的CA太多了。数百个CA意味着每个CA都能发放所有用户都接受的证书。如何阻止一家CA发放伪造的证书给冒名顶替者呢?
目前发放证书的行为无迹可寻,因此这是一个现实的问题。Google正在开发一种叫做“证书透明度”的解决方案:http://www.certificate-transparency.org/它是一种可公开查阅的、不可伪造的所有已发放证书的检查日志。事实上,它的工作机制有点像比特币的块环链。每份证书可以包括一个验证链接,链接到公开日志 的某个条目。一旦某个CA开始使用这个系统,如果某个证书由该CA签署,但不包括验证链接,那么它就被视为无效,被拒绝。这意味着CA 不再能私下发放证书。通过查看检查日志,你就能查到一家CA是否以你的名字(或是与你相似的名字)发放了证书(这是一种反钓鱼诈骗的方法)

2.我能使用PGP信任网络吗?

不能,v1版的协议不 支持PGP。不过任何人都可充当CA,事实上苹果公司就推出了一种运行在MacOS操作系统的GUI认证授权软件。但你必须说服其他人相信你,这才是困难 之处。“信任网络”(webof trust)没有解决这个问题——为了签署密钥的目的,你必须说服他人相信你。尽管如此,我们可以想像彼此互信的社区能创建自己的CA,发放身份认证。例如,Bitcointalk可以发放自己的证书,用论坛用户名作为身份。如果钱包创建者/硬钱包设计者决定相任Bitcointalk,你就可以看到论坛用户名显示在你的Trezor上面。

3.“身份”是如何工作的?

协议能用多种方式扩展,但v1版协议只能在X.509数字证书结构下工作。这种结构也被SSL协议采用。本质上,任何人都能获 得证明某种身份的证书。身份往往只是一个Email地址或网站域名(例如,bitcointalk.org就有一个包含其域名的证书)。它也可以是一个合 法名称,比如说“MichaelC Hearn”或“Mt Gox Ltd”。事实上,如果你有一个带芯片的(电子)护照,那么你已经有了一个包含你护照数据的证书,但这个证书没多少用,因为它和个人密钥没有丝毫关系。有时证书需要付费,有时它们是免费的。CA永远不会去获取你的个人密钥。相反,你在本地生成一个个人密钥,然后要求CA去签署你的公用密钥。同时,你证明 了自己的身份,如果你的身份是一个Email地址,那么你通常会收到一个可点击的链接。如果身份是你的名字,你也许得提交某种文书。 这种机制是否会削弱比特币的匿名性或私有性? 不会。人们总是知道他们准备付款给哪个身份。这种身份不一定要法律意义上的身份。它可以是论坛用户名或是假名,因此即使是在丝绸之路网站,这种机制也是适用的——你知道自己将要付款给“毒贩丹”。你基本上不会因为不知道付款的流向而发送到无效的地址。 你不会经常知道付款方的真实身份,但支付协议不会创建双向的身份。只有请求付款的实体具有签名的选择(当然,他们可以不签名)。

4.付款请求会存储在块环链中吗?

不。付款请求和付款反馈直接在买家和卖家之间传送。他们不会被外部环境记录。协议还有哪些其他特征?譬如说小费。付款请求和付款反馈消息使用一种叫做“协议缓冲”(protocolbuffer)的容易扩展的格式。我编辑了一份未来的协议特征列表:http://bitcointalk.org/index.phptopic=270055.msg2890147#msg2890147这些特征目前一个都不存在。不过,在创造这些特征之前,我们需要找到一个存放这些特征所需要的数据的地方。新的支付协议是一个极完美的地方。

5.付款请求必须签名吗?

不。没有签名这些请求只是一个包含地址和备注的容器。

6.收款是如何运作的?

当付款请求签署时,签署的不只是地址,备注也会签署。通过保留签署的付款请求和你为满足付款要求创造的交易,你就获得了一份数学意义上的付款证明。因为付 款的备注包含了说明,商家既无法和你争辩你的付款目的,也不能争辩说没有收到款项(当然,除非他们声称自己的私人密钥被窃)。 这种机制很棒,因为它补充了使用多重签名交易的低信任度第三方争议调解机制的缺失。现在,如果你试图调解交易纠纷,就会碰到这种问题:卖家说“卖家没发 货!”,而商家却说“买家没给我付款!”,或者你会碰到更麻烦的问题:买家说“卖家寄来的不是我要买的东西”,卖家却说“我给他的确实是我们商量好的东 西。” 因为新的收款机制,查明某笔交易的细节和赔偿占理的交易人突然变得很简单。

7.验证是怎么一回事?

比特币在某种程度是一个棘手的项目,因为我们通常是在用于普通目的的电脑上转移资金,这种电脑容易被攻击或是感染病毒。维萨和万事卡公司敦促所有人使用芯片卡和专用读卡器这样具有特定目的又不能安装其他应用程序的硬件。我们的方法必须和他们有点差异,但仍会用到专用硬件。Trezor设备是一种仅用于比特币的迷你电脑,它通过USB接口插入到“真正”的电脑。Trezor有一个显示屏和几个按钮,它保管了你的私人密钥。当你希望付款时,付款明细会显示在屏幕上,如果数据无误,你就摁下“确认”按钮,交易就会获得签署认证。
这种设计对于今天的比特币来说有一个明显的漏洞。你在屏幕上看到的“付款明细”看起来会是这个样子:
Pay 0.5 BTC to 1EZEqFBd8yuc9ir2761987qk3VcALC8YQ?
那个收款地址来自哪呢?是的,来自你的电脑。而你的电脑有可能感染了病毒。病毒可能把网络商店发给你的地址换成了病毒作者的比特币地址,因为地址只是一串 随机的数字,你根本不知道已经被替换了。尽管病毒不会立即清空你的钱包,可它还是能够在你付款时偷走你的付款,避免这种损失的关键就是使用特别的硬件!
新的付款协议允许收款 方使用一种“身份”(identity)来签署他们的请求。“身份”只是一串随机字符串,由某些“认证授权机构” (certificateauthority,以下简称CA)签署。这种机构发放签署证书,它告诉你:“我Bob Smith确信比特币地址1EZEqFBd8yuc9ir2761987qk3VcALC8YQ属于Mike Hearn”。现在,如果你的Trezor设备碰巧信赖Bob Smith身份验证的可靠性,它就会显示:Pay 0.5 BTC to MikeHearn?
这种消息不能被任何病毒篡改。所以你知道这种认证机制安全了很多。

8.新的支付协议增加了哪些新的特征?

在协议的v1版中: 退款。发款方在提交交易的同时可向收款方提交一些退款地址。如果卖家希望给买家快速退款,他们可以这样做。再也不会出现尝试去“猜测”用户 地址的问题(有时因为共享钱包的问题,你会弄错用户的地址)。Bitcoin-QT客户端为每一笔采用这种方式的付款生成一个退款地址,但你只有确实收到 了退款才会看到这个地址。 备注。可点击的链接可能已经包含了短字符串或是标签,但它们的长度受到浏览器和二维码的限制。新协议允许付款请求包括长度不限的备注,这种备注可用来注释你购买的物品。在验证付款请求时,这种功能超级好用。

9.新的支付协议如何解决这个问题?

请求的消息允许你请求的付款分散到多个输出(你不必使用支付到地址方式的输出,而且输出可以包含任何脚本,比如说多重签名脚本)。新协议也使得付款方能够 将同一笔付款分割成多笔交易进行提交。当某个应用生成了一个付款请求(比如说给你发薪水),新协议就会知道请求的付款金额是多少,然后它将这笔款分摊到多 个输出。付款方或许仍然可以生成一笔巨大的交易;但是,为了最大化隐私、最小化漏洞,付款方采用化整为零的付款方式更明智。 为什么发款方将交易直接提交给收款方? 通常,付款给某人时,你将交易广播到点对点网络,然后收款方等待这笔钱到账。这种机制能正常运作,但缺乏弹性。譬如,要是发款方不能够使用互联网怎么办? 要是发款方/收款方的电脑装有讨厌的只允许web流量的防火墙怎么办?要是收款方正在经营矿机生意,根本不想广播交换该怎么办? 在新的支付协议中,请 求包括如何提交付款的指令。通常,钱包会也收到一个HTTPSURL来提交数据,但另一种方法或许更简单。譬如,安卓钱包应用已经支持使用蓝牙技术将交易 直接发送给收款方(双方都要使用安卓钱包)。当你正在旅游无法获得互联网连接时,这是一种很好的付款方式。付款协议将我们的付款行为标准化,而不用限定在 某个特定的应用上。

10.为什么比特币地址会造成隐私泄漏?

使用比特币的标准方式是每笔收款一个地址。这可能在下面的场合造成隐私泄漏。 假设说,你在一家接受比特币付款的小咖啡馆工作,再假设一杯咖啡的价格是0.01BTC。整整一个月,你们收到了很多这样的小额付款。月底的时候,你要发 工资了,你给了老板一个新的比特币地址。他收集了许多小额的比特币咖啡款,然后付款给那个地址,产生了一个工资大小的巨额输出。 随后,你去酒吧,你的朋友说:“嘿,伙记,你上周和我打赌还欠我10美元呢。”于是,你给他发送了价值10美元的比特币。你的钱包必然会选择用你的薪水大 小的输出来付款。你的朋友现在可以查看他收到的那笔交易,且知道这笔款来自一个巨额的薪水大小的输出。现在,你的朋友们知道你的收入是多少了。 有一种更好的收款方式:你给老板100个比特币地址,然后他将小额的咖啡款付给100个不同的地址。这样链接显示的金额会小很多,但实际上没有人会那么做。

11.哪些应用会执行新支付协议?

预计在 Bitcoin-Qt的下一个版本将包括新的支付协议,MultiBit/AndroidBitcoin Wallet、CoinBase和CoinPunk都会支持新的支付协议。BitPay也承诺执行新的支付协议,因此所有使用BitPay服务的商家都自 动支持新协议。如果你的应用打算支持新协议,请告诉我,我会加到这里。 比特币地址有哪些弊病? 很多。它们会造成隐私泄漏;它们缺乏弹性,很难扩展新功能;它们不能验证;它们只能单向执行。

12.支付协议是如何运作的?

首先,协议将一小块包含付款指令(指示你如何付款给某人)的数据格式化,然后通过提交一条付款消息生成一种如何满足这些指令的正式规范。这种数据设计为能够在将来扩展,这样我们就能够增加许多有用的功能。 将来的可点击比特币链接形式就像下面这条链接: bitcoin:1EZEqFBd8yuc9ir2761987q7k3VcALC8YQ?request=https://bitcoinstore.com/r/aBcdE 点击链接后,你的钱包应用程序将下载请求的URL,然后解析它收到的付款请求。请求的消息包含另一个URL(http://bitcoinstore.com/r/aBcdE),完成的交易将提交到那个URL(而不是广播到点对点网络)。

13.为什么付款给IP的方式会失败?

这种方式不太安全是一个原因,任何知道用“中间人攻击”来攻击你的网络连接的人都能够偷走用这种方式发送的资金。另一个更现实的原因是,当时没有任何接受 比特币付款的网络商店。事实上,当时比特币是一个只支持Windows系统的纯粹的GUI应用程序,不支持任何JSON-RPC应用程序接口,因此没有任 何人能创建支持比特币付款的网络商店。这样,你就无法知道比特币收款方是否在线,这意味着将付款打给比特币地址更可靠。此外,付款给IP地址还有网络连接 转换保护(NAT)、防火墙等麻烦因素。 但是,这种想法并不错,因此我们现在要重新采用,不过其设计会更加良好。我们希望,随着时间的推进,这种付款方式将在大多数应用上逐渐取代付款给比特币地址的方式。不必担心,比特币地址不会消亡,如果你需要,比特币地址仍然能够使用。

14.什么是支付协议?

许多比特币老资格应该还记得比特币第一个版本v0.1,这个版本允许你使用两种不同的方式付款。一种是输入比特币地址,另一种则是输入IP地址。你的电脑 将连接到那个IP地址的节点,然后执行一种基本支付协议(该协议会要求收款的节点提供最新的公用密钥),最后直接将支付交易上传至服务器。 中本聪认为这种支付协议是大多数人使用比特币的原因。它具有一些优点,比如说保证付款地址能更新。他最初的想法是付款地址只有在收款方离线时才能使用。但 是,他想错了——付款给比特币地址的方式逐渐占据统治性地位,几乎没有人使用付款给IP地址的功能。最终,付款给IP地址的方式被剔除。

15.既然比特币是一种p2p货币,那么会不会出现另一种p2p货币同它竞争?

这完全有可能发生。比如同样是p2p下载,就有bt下载、edonkey下载以及emule下载之分,但这是好事而不是坏事,这说明p2p类型的货币迎来了大发展,并获得了越来越多的市场认可。但由于比特币是元老,新货币要想获得同样的认可度,这不是一件易事。要知道货币是否有价值,完全取决于使用者对其有无信心。

16.如果政府封杀比特币,比特币价值会归零吗?

比特币网络是一种去中心化的p2p网络,这就意味着不管是中国政府还是美国政府,都拿这东西没辙。p2p的软件有很多,基本上没能被任何机构封杀。之前的“海盗湾”被封,那是因为它只是个提供下载资源的网站,政府最多只能关闭某个比特币交易网站,而不可能封杀整个网络。目前中国政府基本上都不知道有比特币存在,就算政府准备打压,那必定是比特币有了巨大影响力之后的事情。但因为维基解密网站开始接受比特币捐助,所以美国政府对比特币异常痛恨,恨归恨,他也拿这没办法。

17.比特币与Q币是不是一回事?

两者完全不同,主要区别有以下几点。第一,q币是腾讯公司控制,他想发行多少都行,没人能够制约他,而比特币的发行速度是恒定的,任何人无法改变。第二,腾讯公司的服务器如果被入侵,那么你的q币就会被更改,但比特币网络节点不可能同时被入侵。第三,比特币目前可以兑换成几乎任何一种货币,但q币还不行。第四,腾讯公司可以任意更改q币规则,但比特币的规则无法改变。

18.比特币相关业务需要缴税吗?

在2012年9月,欧洲内部组织税务部(IOTA)在格鲁吉亚第比利斯举办了一个研讨会,题为“审计个人和法人实体,在使用电子货币”。参加研讨会的有来自23个国家的代表。IOTA技术性税务专家 Jerry Taylor认为:“在当前引人入胜的互联网中,对核算师而言,虚拟货币带来不少新挑战。同时,很多惊人的事情亦将在此发生。”比特币相关业务是否需要交税的问题在此研讨会当中被提出。
CLAG(Cryptocurrency Legal Advocacy Group )创办人 Matthew Elias 发表一份名为《连线之间:美国所得税调查及其对加密货币的影响》的报告,讨论对各项包括比特币在内的加密货币应纳的税项,报告强调纳税人确定自己因比特币相关转账而是否需要纳税,取决于该转账是否与现实事件关联。举个例子,当一个纳税人提供了比特币交易服务,则对现实事件的影响可能发生了,因为交易比特币的任何收益与亏损很可能会以公平的市场计算而得出。
2013年8月,德国政府正式认可比特币的法律和税收地位,成为全球第一个正式认可比特币合法身份的国家。德国政府将比特币归类为“货币单位”和“私人资金”,意味着与比特币相关的商业利益将被征税,但个人使用比特币仍将免税。此外,德国财政部对比特币的缴税有比较具体的说明:作为私人用途的比特币免税,用于商业用途的比特币则要交税,举例来说,如果某人在一年之内通过买卖比特币获利,则要缴纳25%的资本利得税,如果持有比特币一年以后再交易,则被视作私人用途,不用交税。

19.比特币会替代所有主权货币吗?

不可能。“统一”从来都是个理想化但不可实现的东西。在任何领域都一样。有人设想过用“世界语”统一所有语言,以失败告终。欧洲的“统一货币”出路也不是很理想。甚至,目前类似Bitcoin的p2p货币也有很多种——因为Bitcoin是开源的,所以,任何人都可以发行新的p2p货币——当然,至于是否会有足够的人使用信任支持其它的p2p货币,就是另当别论的事情了。

20.比特币挖矿是在浪费社会资源吗?

能比“从地下淘出黄金,而后冶炼、加工,做成金块之后再埋到地下,而后不断砍树制造特殊纸张超额印制纸币”更浪费社会资源?哦,对了,地球上所有银行的大厦都是最奢华的——往往比最著名的教堂都奢华。浪费的是谁的钱和资源?

21.比特币是合法的吗?

比特币目前依然可以认为是合法的,在世界范围内,比特币都可以被认定为是一种虚拟商品而受到法律的保护;但是比特币作为一种“货币”的法律地位则尚未有在任何国家确立,这也是比特币支持需要努力争取的地方。如果比特币不能被法律正式确认为一种货币,那么可能会给接受它的商家和个人带来税收申报上的不便,因为接受比特币的商家将被看作是以物易物交易,而这类交易在税收申报方面比普通的交易要麻烦一些。 同时,比特币作为一种和货币高度类似的商品,需要符合反洗钱的需求。比特币需要在交易、占有等方面纳入个人财产申报、银行业反洗钱系统、反内幕交易、反市场操纵等体系,比特币的交易所和存储机构也可能需要政府的监管和发放牌照。一些发展较快的比特币交易所和支付服务提供商,都在积极地探索和监管机构合作,通过申请牌照、积极同监管部门沟通等方式,将比特币的支付纳入到反洗钱、反恐怖主义融资等监管框架之中。 在中国,《人民币管理条例》规定,禁止制作和发售代币票券。由于代币票券的定义并没有明确的司法解释,如果比特币被纳入到“代币票券”中,则比特币在中国的法律前景面临不确定性。文化部、商务部关于加强网络游戏虚拟货币管理工作的通知(文市发〔2009〕20号)二○○九年六月四日 《通知》称首次明确了网络游戏虚拟货币的适用范围,对当前网络游戏虚拟货币与游戏内的虚拟道具做了区分;同时,通知称,《通知》规定从事相关服务的企业需批准后方可经营。同时对网络游戏虚拟货币的使用范围做出了严格规定:不得用以支付、购买实物产品或兑换其他企业的任何产品和服务,防止网络游戏虚拟货币对现实金融秩序可能产生的冲击。 在欧洲, 欧洲央行发表《虚拟货币架构》报告,认为比特币既不属于电子货币条令,也不符合支付服务条令。电子货币条令(2009/110/EC)使用三个标准来定义电子货币:(1)应以电子形式存储;(2)发行的资金金额价值不低于已发行的货币价值;(3)接受发行人以外的其他支付方式。比特币可能符合第一个和第三个标准,但不符合第二个标准。支付服务指令(2007/64/EC)规定了支付交易实行过程中的资金为电子货币,但它不监管电子货币的发行,也不修改电子货币制度中为电子货币指令提供的审慎性监管。因此,它引入了支付服务提供商的新类别——支付制度——但未获准发行电子货币。因此,比特币显然不属于支付服务指令的范围。 在美国,美国财政部金融犯罪执法系统FinCEN发布《金融犯罪执法网络法规在个人管理、交换或使用虚拟货币中的应用条例》(FIN-2013-G001)2013年3月18日《条例》首次阐明了虚拟货币,FinCEN法规定义货币(也指“实际”货币)为:美国或者其他国家的硬币或纸币,它们被指定为法定货币,可流通,通常由国家发行,作为交换的媒介被使用和接受。与实际货币相比,虚拟货币作为一种交换的媒介,在某些环境中像真实货币一样运转,但并不具备实际货币的全部属性。尤其是,虚拟货币在司法权上不具有法定货币的地位。本指引阐述了具备“可转换”性的虚拟货币。这种类型的虚拟货币具有实际货币的同等价值,或是实际货币的替代品。 2013年8月,德国政府正式认可比特币的法律和税收地位,成为全球第一个正式认可比特币合法身份的国家。

22.比特币是庞氏骗局吗?
比特币的运作是否就像一个庞氏骗局。用户进入系统,通过用真实货币购买比特币,但只能在其它用户想购买他们的比特币时离开并取回资金,即在新的参与者想加入系统时。对于许多人来说,这是庞氏骗局的特征。但是,比特币不是庞氏骗局。庞氏骗局的操纵者,许诺投资者未来一定有回报,并把一些钱塞进自己的口袋。投资者赚其他下线投资者的钱,并诱惑更多的投资。当操纵者消失或找不到新的下线投资者的时候,投资就失败了。比特币不是庞氏骗局的原因,是因为比特币的主要用途是发送钱。比特币不能在放到集市上并迅速卖掉。因为比特币发送是直接从发送者到接收者的,中间没有机会欺骗。比特币由使用比特币软件的全网用户控制。没有幕后的操纵者来赚其他投资者的钱,并许诺回报,也没有下线投资者。 美国证券交易委员会从以下方面定义了庞氏骗局: 庞氏骗局是一种投资欺诈,现有投资者的回报将由新的投资者提供资金支付。庞氏骗局的组织者经常以低风险高回报为名招募新的投资者。在众多庞氏骗局中,诈骗者集中吸引新的资金,以支付对早期阶段投资者作出承诺的收益,或用于个人开支,而不是从事任何合法的投资。 欧洲央行的研究报告《虚拟货币研究》认为,“基于目前的知识基础,难以评估比特币系统是不是一个金字塔或庞氏骗局,但可以说,比特币对它的用户从财务角度来说是一个高风险的系统。”一方面,比特币的方案是一个分散的系统——至少在理论上,没有中央的组织者可以破坏系统,或带着资金消失。比特币的用户购买和出售自己的货币之间没有任何形式的中介,因此,似乎没有人从系统得益。除了受益于汇率的变化(就像在其他任何货币交易)或那些勤奋工作的“矿工”。出于奖励他们对于维护系统的安全性和信心做出的贡献,他们得到了一些额外收益。此外,这个计划并没有向任何人承诺高回报。虽然一些比特币的用户可能会尝试从汇率波动中获利,但不打算将比特币作为投资工具,只是一个交换媒介。
23.如果每次打开客户端都需要下载全部区块数据,比特币系统会不会过于笨重?
比特币系统协议允许轻量级的客户端使用比特币而无需下载全部交易历史。当流量增加后这个情况会日益突出,比特币概念的实施会持续发展,全网节点将在适当的时候成为为更加专门的服务。通过对软件的一些修改,并使用业界通用的硬件构建全网节点(一定数量的机柜即可)。值得指出的是万事达卡网络系统也是建构在类似于比特币的P2P广播机制上的。
24.为了能用比特币买或者卖东西是否必须要等上 10 分钟?
不。如果交易的价值不高,不去等待认可也是合乎情理的。问这类问题的人们通常想的都是诸如超级市场或者自动售卖机一类的场景,零确认的交易同样会在软件界面中显示,但你无法把比特币花出去。当然,你能在未来花掉这些钱。通常上,在 0 确认的情况下销售相当便宜的商品(如零食、数字下载等等)时不算是什么大问题,只要你在运行一个和比特币网络连接得很好的节点就行。
25.为何等上10分钟才能确认一次比特币转账交易?
要等上 10 分钟的理由是,10 分钟是系统找到一个有效的交易链块所需要的平均时间。值得注意的是基于运气这个时间实际上会稍长或稍短,10 分钟只是一个简单的平均情况。在软件的界面中显示为“证实的”或“确认的”(confirmations,取决于软件的汉化)的交易链块记录的内容是比特币如何被网络一致认可由谁拥有。一旦发现所有人都同意你对一个block 里面的记录的比特币具有所有权,你就可以把这些比特币花掉。如果某个人尝试通过撤销一项交易来欺骗整个系统,在最终被认定无效之前也有可能网络上的某些节点会对此进行认可。所以,一项交易获得的确认越多,则该交易被证伪、被撤销的风险就会越低。只需要 6 个 blocks 或者 1 小时,就可以使得撤销交易所需要的运算量达到完全不切实际的程度。这与信用卡可以在交易后的三个月内拒付的特点相比明显要好得多。
如果你要追问“10 分钟”的更详细的由来,答案是:这是 Satoshi 对新 block 在大型网络中传递所需的时间和由于交易链分拆而被浪费的工作量之间的折衷选择。
26.比特币总量有限,而且会永久丢失,会不会不够用?
根本不会。基于供求原理,如果比特币的总量减少,则剩下的比特币的需求将会上升,因而这些比特币就会具有较高的价值。于是,当比特币丢失后,剩下的比特币的价值就会增加来补偿。随着比特币的价值上升,用于购买一件事物的比特币的数量便会相应地减少。这也就是我们常说的通货紧缩现象,简单说,就是钱更值钱了。到最后,如果事情发展到网络上最大的交易量都小于 1 个 BTC,则只需要简单地把小数位向右移动一下,系统就可以继续运行下去。
27.如果有人把全部存在的比特币都买下了呢?
如果有人把世界上所有的黄金都买下来又会怎样呢?可想而知,在尝试全盘收购的过程中,买家/卖家只会把价格托到天高,最终买家会耗尽全部的钱。而且,不是所有的比特币都是可以出售的,没有人能买下本来就不能出售的比特币,就像黄金储备那样。其实还有最关键的一点:货币的用途是流通,如果真有可能全部的比特币都被买下,那么比特币的流通用途就消失了,也就是说,比特币就会分文不值。没有那个收购者会去做这种白白送钱给人花的事情。
28.比特币的价值从何而来?又是谁在支撑比特币?
比特币之所以有价值,是因为许多人接受比特币为一种支付手段。我们常说的“货币以黄金作为支撑”这句话的实际意义是存在着可以把货币兑换为黄金的承诺。某种意义上,你可以说比特币是以商人的价格标签来支持的,因为价格标签也是一种承诺:承诺可以用特定数量的货币来交换货物。一种常见的误解是,比特币的价值来源于产生它所消耗的电力。但是,成本不等于价值。雇1千个人在地上挖个大坑需要很高的成本,但这件事毫无价值。另一方面,虽然对于有用的货币来说“短缺”是一种关键的需求,但“短缺”本身并不能使任何事物更有价值。比如你的指纹是绝无仅有的,但这并不意味着你的指纹就有任何交易价值。
29.比特币是完全匿名的吗?
比特币用户可以开多个比特币地址,并且地址跟他现实生活中的真实身份也没有任何联系,因而具有一定匿名性,被广泛运用于洗钱和违禁物品交易,不过这一特性实为“伪匿名”,比特币的交易仍可以追本溯源到交易者本身。比特币的交易历史是完全公开的,所有人都可以通过你的钱包地址在区块链中查询你的钱包现金流入与流出,并可向上追溯至这些比特币的终极起源,即从区块生成后发送到的那个地址。这对个人隐私构成了巨大威胁。 比特币协议为上述问题提供了两种解决方案:(1)所有的比特币交易使用公共密钥,而无须个人身份证明;(2)比特币客户端可以生成无数个公共密钥,以帮助用户防止跟踪。 然而,越来越多的研究表明,这些保护措施是不够的。如果通过一些社会工程学手段,使得某个比特币钱包的物理地址(如IP地址)暴露,再配以大数据分析,那么,资金的来龙去脉与关系网将无从遁形。在《大数据时代》一书中,作者举了个例子证明大数据分析的威力:通过对美国在线(AOL)2006年8月公布的2000万匿名搜索查询记录的分析,《纽约书包》发现数据库中的4417749号样本代表的是佐治亚州的一名妇女。 德国和瑞士学者的一项研究显示,约40%比特币用户的真实身份可被发现,这其中有些用户还使用了官方推荐的隐私保护措施。加州大学圣地亚哥分校研究者即将发表的一篇论文中称,比特币交易网络对少数大账户的依赖性与日俱增,这使得用户的身份安全性大大降低。日后,通过大宗交易追踪到交易者的真实身份将变得容易,这最终可能会使得如今被大量用于洗钱等非法活动的比特币不再受宠。乔治梅森大学的研究人员发布了一篇涉及到监管比特币的入门书,书中的评价大大降低了它的匿名性。Vice发表了一篇“描述研究人员成功地把一些比特币交易去匿名化”的文章,并且第二天一篇类似的文章登上了商业周刊。
30.如果不再有新的比特币生成,会有新的区块产生吗?
是的!在比特币挖完之后,矿工挖矿的回报将来自交易费。假定届时人们一直使用比特币的话,在#6,929,999号区块之后还会有新的区块被生成。
31.挖完所有的比特币需要多久?
最后一个产出比特币的区块将是#6,929,999号区块,这大约会在公元2140年前后发生。届时流通中比特币的总数将恒定维持在20,999,999,9769 BTC。即使比特币的允许精度从目前的8位小数扩展,最终流通中的比特币将总是略低于2100万(假定其他参数不变)。例如,如果引入16位小数精度,最终的比特币总额将是20999999.999999999496 BTC。
32.比特币是怎样分割的?
技术上,1 个比特币基于目前的数据结构被分割到 8 个小数位。也就是说目前最小的比特币单位是 0.00000001 BTC。如果在未来出现对比特币分割为更小单位的需求,届时社区需要就如何实现更小的分割量进行讨论。
33.比特币是怎么发行的?
简单的说,大概每十分钟发行一次。
新比特币在每个网络节点在解决了一定的数学计算(比如,创建新的 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 的计算资源的比值。
34.什么是比特币?
比特币(英语:Bitcoin,简写:BTC,货币符号:฿),是一种用开源的 P2P 技术的软件而产生的电子货币。虚拟货币“比特币”的概念最初由中本聪(Satoshi Nakamoto,可能化名)在 2009 年提出。现在比特币也指根据中本聪的思路设计发布的开源软件以及建构其上的整个 P2P 网络。截止到 2013 年 5 月 31 日,全部发行比特币按市价换算为美元后,总值突破为 15亿美元。
与大多数现行货币不同的是,比特币货币系统是独立存在的,其运行不依赖于中央银行、政府、大型企业的支持或者信用担保。比特币使用遍布整个 P2P 网络节点的分布式数据库来管理货币的发行、交易和账户余额信息。中本聪采用密码学的原理,确保各个比特币节点按照既定的协议达成共识,从而确保货币流通各个环节的安全性。例如,比特币只能被它的真实拥有者使用,而且仅仅能使用一次,支付完成之后原主人即失去对该份额比特币的所有权。比特币货币总量按照设计预定的速率逐步增加,增加速度逐步放缓,并最终在 2140 年达到2100 万个的极限。P2P 的分布式特性与去中心化的设计结构,确保了理论上任何机构都不可能操控比特币的货币总量,或者制造通货膨胀。在全球范围内,比特币可以通过多个线上的交易所和服务商进行兑换交易,也可以在线下找到兑换点,兑换为现钞或金币。

账户

1.虚荣池/Vanlty pool

虚荣池是一个虚荣地址生成池,这种服务允许用户将他们的虚拟地址生成需求外包给第三方矿工,而不用担心会危及他们的安全。

2.虚荣地址挖矿/ Vanity-Mining

虚荣地址挖矿即通过计算机重复产生基于哈希函数的秘钥地址,直到通过大量的计算得到密钥中出现所期待的字符串的过程,其通过大量并行计算寻找特定字符串与加密货币挖矿寻找特定数学解在某种程度上相似。

3.虚荣地址/ Vanity Address

虚荣地址是指通过哈希函数计算随机产生特定的字符串,由于无法通过逆向计算哈希函数,因此只能不停地重复生成密钥,直到密钥中包含希望出现的字符串,而这样的密钥地址称为虚荣地址。

4.虚拟地址/ Virtual Address

虚拟地址是一串公开可用的字母和数字,并且以一组定制的字母和数字开始。虚拟地址允许接收,保存和发送加密货币。

5.地址/ Address / Addy

地址通过一系列密码算法推算形成,本质上是属于特定用户的公钥的哈希值,地址用于在网络上交易时接收和发送数据,由一连串字母和数字的字符串组成,但也可以表示为可扫描的二维码。

6.账户随机数/ Random Number

每个账号的交易计数,通过账户随机数可以防止重放攻击。例如,A 给B 发送20 个币,B 重放一遍又一遍,直到抽干A 的账户余额。

7.账户

账户是在总账中的一份记录,通过地址在总账中索引,总账包含有关该账户的状态的完整的数据。在一个加密货币系统中,该数据则包含了加密货币余额、未完成的交易订单等情况。