不,并非如此。有些人说SSL被破解了,但目前没有更安全的系统。X.509公钥基础设备(PKI)是PKI多年演变和改良的结果。而且,PKI仍然在改进。因为它支持SSL协议,许多实力雄厚的企业希望它变得更完善,比如说Google公司就在聘请员工来完善PKI。我们再具体一点。关于X.509公钥基础设施人们最关注的问题是该系统的CA太多了。数百个CA意味着每个CA都能发放所有用户都接受的证书。如何阻止一家CA发放伪造的证书给冒名顶替者呢?目前发放证书的行为无迹可寻,因此这是一个现实的问题。Google正在开发一种叫做“证书透明度”的解决方案:https://www.certificate-transparency.org/它是一种可公开查阅的、不可伪造的所有已发放证书的检查日志。事实上,它的工作机制有点像比特币的块环链。每份证书可以包括一个验证链接,链接到公开日志 的某个条目。一旦某个CA开始使用这个系统,如果某个证书由该CA签署,但不包括验证链接,那么它就被视为无效,被拒绝。这意味着CA 不再能私下发放证书。通过查看检查日志,你就能查到一家CA是否以你的名字(或是与你相似的名字)发放了证书(这...
我能使用PGP信任网络吗?
作者:宋, 宋城 | 2018-04-04 16:31 | 比特币常见问题解答
不能,v1版的协议不 支持PGP。不过任何人都可充当CA,事实上苹果公司就推出了一种运行在MacOS操作系统的GUI认证授权软件。但你必须说服其他人相信你,这才是困难 之处。“信任网络”(webof trust)没有解决这个问题——为了签署密钥的目的,你必须说服他人相信你。尽管如此,我们可以想像彼此互信的社区能创建自己的CA,发放身份认证。例如,Bitcointalk可以发放自己的证书,用论坛用户名作为身份。如果钱包创建者/硬钱包设计者决定相任Bitcointalk,你就可以看到论坛用户名显示在你的Trezor上面。
“身份”是如何工作的?
作者:宋, 宋城 | 2018-04-04 16:30 | 比特币常见问题解答
协议能用多种方式扩展,但v1版协议只能在X.509数字证书结构下工作。这种结构也被SSL协议采用。本质上,任何人都能获 得证明某种身份的证书。身份往往只是一个Email地址或网站域名(例如,bitcointalk.org就有一个包含其域名的证书)。它也可以是一个合 法名称,比如说“MichaelC Hearn”或“Mt Gox Ltd”。事实上,如果你有一个带芯片的(电子)护照,那么你已经有了一个包含你护照数据的证书,但这个证书没多少用,因为它和个人密钥没有丝毫关系。有时证书需要付费,有时它们是免费的。CA永远不会去获取你的个人密钥。相反,你在本地生成一个个人密钥,然后要求CA去签署你的公用密钥。同时,你证明 了自己的身份,如果你的身份是一个Email地址,那么你通常会收到一个可点击的链接。如果身份是你的名字,你也许得提交某种文书。这种机制是否会削弱比特币的匿名性或私有性?不会。人们总是知道他们准备付款给哪个身份。这种身份不一定要法律意义上的身份。它可以是论坛用户名或是假名,因此即使是在丝绸之路网站,这种机制也是适用的——你知道自己将要付款给“毒贩丹”。你基本上不会因为不知道付款的流向...
不。付款请求和付款反馈直接在买家和卖家之间传送。他们不会被外部环境记录。协议还有哪些其他特征?譬如说小费。付款请求和付款反馈消息使用一种叫做“协议缓冲”(protocolbuffer)的容易扩展的格式。我编辑了一份未来的协议特征列表:https://bitcointalk.org/index.phptopic=270055.msg2890147#msg2890147这些特征目前一个都不存在。不过,在创造这些特征之前,我们需要找到一个存放这些特征所需要的数据的地方。新的支付协议是一个极完美的地方。
付款请求必须签名吗?
作者:宋, 宋城 | 2018-04-04 16:28 | 比特币常见问题解答
不。没有签名这些请求只是一个包含地址和备注的容器。
收款是如何运作的?
作者:宋, 宋城 | 2018-04-04 16:27 | 比特币常见问题解答
当付款请求签署时,签署的不只是地址,备注也会签署。通过保留签署的付款请求和你为满足付款要求创造的交易,你就获得了一份数学意义上的付款证明。因为付 款的备注包含了说明,商家既无法和你争辩你的付款目的,也不能争辩说没有收到款项(当然,除非他们声称自己的私人密钥被窃)。这种机制很棒,因为它补充了使用多重签名交易的低信任度第三方争议调解机制的缺失。现在,如果你试图调解交易纠纷,就会碰到这种问题:卖家说“卖家没发 货!”,而商家却说“买家没给我付款!”,或者你会碰到更麻烦的问题:买家说“卖家寄来的不是我要买的东西”,卖家却说“我给他的确实是我们商量好的东 西。”因为新的收款机制,查明某笔交易的细节和赔偿占理的交易人突然变得很简单。
验证是怎么一回事?
作者:宋, 宋城 | 2018-04-04 16:26 | 比特币常见问题解答
比特币在某种程度是一个棘手的项目,因为我们通常是在用于普通目的的电脑上转移资金,这种电脑容易被攻击或是感染病毒。维萨和万事卡公司敦促所有人使用芯片卡和专用读卡器这样具有特定目的又不能安装其他应用程序的硬件。我们的方法必须和他们有点差异,但仍会用到专用硬件。Trezor设备是一种仅用于比特币的迷你电脑,它通过USB接口插入到“真正”的电脑。Trezor有一个显示屏和几个按钮,它保管了你的私人密钥。当你希望付款时,付款明细会显示在屏幕上,如果数据无误,你就摁下“确认”按钮,交易就会获得签署认证。这种设计对于今天的比特币来说有一个明显的漏洞。你在屏幕上看到的“付款明细”看起来会是这个样子:Pay 0.5 BTC to 1EZEqFBd8yuc9ir2761987qk3VcALC8YQ?那个收款地址来自哪呢?是的,来自你的电脑。而你的电脑有可能感染了病毒。病毒可能把网络商店发给你的地址换成了病毒作者的比特币地址,因为地址只是一串 随机的数字,你根本不知道已经被替换了。尽管病毒不会立即清空你的钱包,可它还是能够在你付款时偷走你的付款,避免这种损失的关键就是使用特别的硬件!新的付款协议允许收款 方...
在协议的v1版中:退款。发款方在提交交易的同时可向收款方提交一些退款地址。如果卖家希望给买家快速退款,他们可以这样做。再也不会出现尝试去“猜测”用户 地址的问题(有时因为共享钱包的问题,你会弄错用户的地址)。Bitcoin-QT客户端为每一笔采用这种方式的付款生成一个退款地址,但你只有确实收到 了退款才会看到这个地址。备注。可点击的链接可能已经包含了短字符串或是标签,但它们的长度受到浏览器和二维码的限制。新协议允许付款请求包括长度不限的备注,这种备注可用来注释你购买的物品。在验证付款请求时,这种功能超级好用。
请求的消息允许你请求的付款分散到多个输出(你不必使用支付到地址方式的输出,而且输出可以包含任何脚本,比如说多重签名脚本)。新协议也使得付款方能够 将同一笔付款分割成多笔交易进行提交。当某个应用生成了一个付款请求(比如说给你发薪水),新协议就会知道请求的付款金额是多少,然后它将这笔款分摊到多 个输出。付款方或许仍然可以生成一笔巨大的交易;但是,为了最大化隐私、最小化漏洞,付款方采用化整为零的付款方式更明智。为什么发款方将交易直接提交给收款方?通常,付款给某人时,你将交易广播到点对点网络,然后收款方等待这笔钱到账。这种机制能正常运作,但缺乏弹性。譬如,要是发款方不能够使用互联网怎么办? 要是发款方/收款方的电脑装有讨厌的只允许web流量的防火墙怎么办?要是收款方正在经营矿机生意,根本不想广播交换该怎么办?在新的支付协议中,请 求包括如何提交付款的指令。通常,钱包会也收到一个HTTPSURL来提交数据,但另一种方法或许更简单。譬如,安卓钱包应用已经支持使用蓝牙技术将交易 直接发送给收款方(双方都要使用安卓钱包)。当你正在旅游无法获得互联网连接时,这是一种很好的付款方式。付款协议将我们的付款行...
使用比特币的标准方式是每笔收款一个地址。这可能在下面的场合造成隐私泄漏。假设说,你在一家接受比特币付款的小咖啡馆工作,再假设一杯咖啡的价格是0.01BTC。整整一个月,你们收到了很多这样的小额付款。月底的时候,你要发 工资了,你给了老板一个新的比特币地址。他收集了许多小额的比特币咖啡款,然后付款给那个地址,产生了一个工资大小的巨额输出。随后,你去酒吧,你的朋友说:“嘿,伙记,你上周和我打赌还欠我10美元呢。”于是,你给他发送了价值10美元的比特币。你的钱包必然会选择用你的薪水大 小的输出来付款。你的朋友现在可以查看他收到的那笔交易,且知道这笔款来自一个巨额的薪水大小的输出。现在,你的朋友们知道你的收入是多少了。有一种更好的收款方式:你给老板100个比特币地址,然后他将小额的咖啡款付给100个不同的地址。这样链接显示的金额会小很多,但实际上没有人会那么做。
  • 1
  • 2
  • 3
  • 4