当前位置: 首页 > news >正文

excel怎么做超链接到网站建设银行浙江网站首页

excel怎么做超链接到网站,建设银行浙江网站首页,大理州建设局门户网站,网站制作案例1. 引言 闪电网络可能是比特币之上部署的最受期待的技术创新。闪电网络#xff0c;为由 Joseph Poon 和 Tadge Dryja 于2015年首次提出的支付层#xff0c;承诺支持#xff1a; 用户之间几乎无限数量的链下交易#xff0c;几乎免费#xff0c;同时利用比特币提供的安全性…1. 引言 闪电网络可能是比特币之上部署的最受期待的技术创新。闪电网络为由 Joseph Poon 和 Tadge Dryja 于2015年首次提出的支付层承诺支持 用户之间几乎无限数量的链下交易几乎免费同时利用比特币提供的安全性。 2016年时至少三个公司——Poon 和 Dryja 的 Lightning、 Blockstream 和 Blockchain—— 目前正在致力于该技术的实施。但除了这个小型技术前沿之外很少有人完全了解“小额支付的未来”将如何提升比特币的能力。 本文分3大块来介绍闪电网络协议 第一部分列出了闪电网络的基本构建块并展示了如何将这些构建块组合起来创建“智能合约”该合约可用于实现闪电网络的第一个要求双向支付通道。第二部分解释了双向支付渠道如何转变为网络以及哈希时间锁合约HTLC如何将网络中的不同通道连接在一起。第三部分解释了如何将 HTLC 放置在双向支付通道中以确保交易可以完全在链下进行。 2. 闪电网络基本构建块 2.1 构建模块 #1未确认的交易 从本质上讲比特币协议由交易组成这些交易通常与之前的交易相关联也可能与未来的交易相关联。每笔交易都包含 输入指比特币发送的地址 和输出 指比特币发送到的地址。此外输入必须包括发送比特币的要求如证明输入地址“所有权”的签名。与此同时输出建立了新的要求这些要求必须包含在后续 交易的输入中 。 作为其主要功能之一闪电网络是由或多或少的常规比特币交易构建的。只是这些交易通常实际上并不通过比特币网络广播。相反它们存储在用户的本地节点上 - 但闪电网络交易可随时通过网络广播。 本文中 黑色边框表示的是已确认交易蓝色边框表示的是仅当其前序交易已被确认后可由Alice广播的交易红色边框表示的是仅当其前序交易已被确认后可由Bob广播的交易 如上图中所示 Alice可随时签名并广播其未确认交易并给Bob发送2个BTC仅当Alice已签名并广播交易且得到确认之后Bob才可以签署属于他的2个BTC将其中一个BTC发送给Carol另一个BTC留给Bob自己。 2.2 构建模块#2双花保护 闪电网络的第二个构建模块可能不需要太多解释因为它可以说 是比特币本身存在的理由 双花保护。如果两笔交易或输入依赖于相同的输出则只有一笔交易可以确认。 这里要记住的重要一点是即使是未经确认的交易也可能是冲突的这意味着只有1笔交易可被确认。 如上图中所示 Alice必须选择其中一笔交易来签名并广播无法同时签名和广播2笔交易若同时也只有一笔交易会被确认即变成黑框表示。 2.3 构建模块 #3多重签名 闪电网络的第三个构建块也是一个简单的构建块多重签名multisig地址。或者更一般地说P2SH 地址。 多重签名地址是比特币地址顾名思义需要多个私钥才能“解锁”并从中花费比特币。多重签名地址可以在各种条件下设置。例如需要三个可能的密钥中的两个或者十五个中的十五个或者几乎任何其他组合。 闪电网络通常使用2-of-2多重签名设置。从 2-of-2 多重签名地址解锁比特币需要来自两个专用密钥的两个签名。 如上图中所示 Alice和Bob之前设置了一个multisig地址2人分别有一个密钥若无Bob的签名Alice没法自行花费该multisig地址需注意当某签名添加到某交易之后无法修改该交易内容。在密码学中签名是交易和seal的混合且是一长串独特的数字字串。 2.4 构建模块#4时间锁 第四个组成部分是时间锁。时间锁可以在输出中“锁定比特币”使它们仅在未来的某个时刻才可被花费包含在后续输入中。 有两种不同类型的时间锁 绝对类型称为 CheckLockTimeVerify (CLTV)CLTV 将比特币锁定到未来或多或少的具体时间实际时间和日期或特定的区块高度。以及相对类型称为 CheckSequenceVerify (CSV)CSV 使用相对时间。一旦 CVS 输出被记录在区块链上从该 点开始需要一定数量的区块 才能再次被花费。【在闪电网络中常将CSV表示为clock用作delay】 2.5 构建块#5哈希值和秘密 第五个也是最后一个构建块——密码学——是比特币本身最基本的构建块。但在闪电网络中它以一种新的方式应用。 简而言之“value”或“secret”是一长串独特的数字即使对于具有无限尝试的计算机来说实际上也无法猜测。通过特殊的计算这个value或secret可以被“哈希”成不同的数字字符串即“哈希值”。 诀窍是 任何知道该value的人都可以轻松地重现哈希值。但反过来则不然。这是一条单行道。 这个技巧可用在比特币本身再次“锁定比特币”。事实上​​这确实是比特币的工作原理。如哈希值可以包含在输出中并要求后续输入包含相应的value才可被花费。 如上图中所示 本文以带颜色的钥匙来表示value或secret相应的哈希值以相同颜色和相同数字的锁来表示 2.6 第一个挑战双向支付渠道 甚至在闪电网络出现之前 支付渠道的概念 就已经存在了一段时间。典型的支付渠道对于某些目的很有用但也有局限性它们是单向的。Alice可以向Bob支付几笔链下交易但Bob根本无法通过同一通道向Alice支付。 作为闪电网络的一个关键特征Poon 和 Dryja 提出了无需信任的双向支付通道。 2.6.1 打开通道 要建立双向支付通道双方必须首先就opening交易达成一致。此opening交易决定了各自存入通道的比特币数量。 假设Alice想向Bob发送一枚比特币。由于Alice和Bob希望更频繁地进行交易因此他们决定开放一份双向支付通道并用它来发送比特币。发送一整个比特币对于支付渠道来说可能会很多因为这对于小额支付可能更有用 - 但这是完全可能的。 为了打开通道Alice 和 Bob 各发送 5 个BTC到 2-of-2 多重签名地址。这就是“opening交易”。只有当Alice和Bob都签署后续交易时才能从该地址花费比特币。 此外Alice 和 Bob 都创建一个秘密一串数字并交换哈希值。 Alice 现在立即从opening交易中创建后续交易。这是“commitment交易”。通过commitment交易Alice向自己发送了4个BTC并向第二个多重签名地址发送了6个BTC。第二个多重签名地址有点奇怪。它可以由Bob自己解锁但只有在它被包含在区块链上并开采了1000个额外的区块之后才能解锁它包括一个 CSV 锁。 或者它可以由 Alice 自己打开但前提是她 还 包含 Bob 刚刚向她提供哈希值的秘密。当然Alice不知道这个秘密是什么——Alice只知道哈希值——所以Alice现在无法使用这个选项。 Alice签署了其commitment交易但不光播相反Alice将其签名后的commitment交易给了Bob。 与此同时Bob也做了同样的事情但是是镜像的。Bob还创建了一笔commitment交易从中将 6 个比特币发送给自己并将 4 个比特币发送到一个时髦的新多重签名地址。如果 Alice 再等待 1000 个区块她就可以解锁该地址或者 Bob 可以使用 Alice 的秘密来解锁该地址。 Bob签署了其创建的commitment交易并将其创建并签名的commitment交易交给Alice。 在交换“half-valid” commitment交易和秘密哈希值之后他们都签署并广播opening交易以确保其记录在区块链上。该通道现已正式开通。 此时Alice 和 Bob 都可以签署并广播他们从对方获得的半有效commitment交易。如果Alice这样做了Bob会立即获得6个BTC。如果Bob这样做了Alice会立即获得4个BTC。但无论谁签署并广播该交易都必须等待 1000 个区块才能解锁后续的多重签名地址并领取剩余的BTC。 然而这是支付渠道的关键技巧 既不签署也不广播自己的那份交易。 2.6.2 更新通道 过了一会儿Bob想给Alice发回一个比特币。他们想要更新通道状态使余额再次达到五比五。为了实现这一目标Alice和Bob做了两件事 首先两者都重复上述过程除了开仓交易已记录在区块链上该部分被跳过。这次Alice和Bob都将5个BTC归为自己并且都将5个BTC归为时髦的多重签名地址。这些多重签名地址的条件相似只是它们需要 新的 秘密Alice 和 Bob 都互相提供新的 哈希值。他们都签署了新的一半有效的commitment交易并将其交给对方。其次Alice和Bob互相传递他们在 第一个 设置中所使用的 第一个 秘密。 此时Alice 和 Bob 都可以签署并广播他们刚刚获得的新的“半有效”commitment交易。他们的交易对手将立即获得 5 个比特币而广播方则必须等待 1000 个区块。因此通道已更新。 但是是什么阻止Bob广播旧的commitment交易呢该commitment交易导致了一条向他支付 6 个比特币的路径而不是 5 个……。 当然阻止Bob的是他的第一个秘密他现在已经把这个秘密告诉了Alice。 Bob无法再安全地签署和广播旧的commitment交易因为Alice现在知道Bob的第一个秘密。如果Bob要签署并广播该commitment交易他将立即向Alice发送 4 个BTC……而他必须等待 1000 个区块才能领取自己的 6 个BTC。这是一个问题因为现在Alice知道了他的秘密Alice可以利用这段时间击败Bob并夺取另外6个BTC 由于Bob也拥有Alice的秘密因此反之亦然。如果Alice尝试签署并广播旧的commitment交易Bob可以窃取通道中的所有BTC。 这当然意味着Alice和Bob都有强烈的公平竞争动机并且只签署和广播通道的最新状态。 3. 将双向支付通道扩展为支付网络 接下来这种双向支付渠道设置需要扩展以允许通过网络进行支付。 Alice 和 Bob 建立了一个双向支付通道。现在Alice想向第三人Carol支付1 BTC。 为此Alice和Carol可以在他们之间开辟一条支付通道。但他们实际上并不需要这样做。事实证明Bob 和 Carol 已经有一个双向通道因此 Alice 可以通过 Bob 向 Carol 付款。 具体来说Alice可以向Bob支付1 BTCBob可以向Carol支付1 BTC。 然而Alice并不真正信任Bob——或者Carol Alice担心如果她付钱给BobBob永远不会真正付钱给Carol。或者Bob可能会付钱给Carol但Carol会声称她从未收到过这笔钱而Alice不知道该责怪谁。 因此 如果Bob也向Carol支付了1 BTCAlice希望确保她只向Bob支付1 BTC。 这是通过简单的加密技巧部分完成的。 当Alice想要向Carol发送BTC时她告诉Carol创建一个value随机数字字符串并向她发送哈希值。Alice还告诉Carol用原始value与Bob交换比特币。与此同时Alice从Carol那里拿到了哈希值转向Bob并告诉Bob如果Bob向她提供相应的value只有Carol有她就会给Bob一个比特币。因此Bob转向Carol并给了Carol 1BTC以换取value。然后Bob将这个value返回给Alice。Alice知道Bob一定是从Carol那里得到了value以换取BTC因此得出结论Carol得到了她的BTC。所以Alice可以放心地给Bob 1BTC。 几乎每个人都很高兴。 在这种“天真的”场景中中间人Bob仍然必须信任Alice和Carol Bob必须相信Carol在向她发送了比特币后确实给了他value而Bob必须相信Alice在向她提供了value后确实给了他1 BTC。 因此bitcoin -for-value trade必须在网络上得到绝对保证。更具体地说如果Bob给Carol 1 BTC他必须保证从Alice那里拿回1BTC。 这就是哈希时间锁定合约HTLC的用武之地。 3.1 Hash Time-Locked Contracts哈希时间锁定合约 所以Alice和Bob想通过HTLC完成bitcoin -for-value trade。Bob和Carol也想以相同的value进行bitcoin -for-value trade- 但现在先不关注后续会讲。 为此Alice 不是直接向 Bob 发送BTC而是将BTC发送到一个新的又是时髦的多重签名地址。锁定在该地址上的BTC可以通过两种不同的方式解锁。 第一个选项是Bob包含他的签名和value。第二种选择是Alice包含她自己的签名。然而这个选项有一个CLTV 时间锁Alice 只能在比如两周后签署并广播交易。 这意味着Bob有两周的时间来创建后续交易其中包含他的签名和value并将其广播以将比特币从时髦的多重签名地址发送给自己。因此这笔交易是有保障的。Bob只有在提供value的情况下才能索取Alice的BTC通过比特币网络广播它使其公开可见Alice可以看到。 如果Bob没有及时提供valueAlice可以通过“超时替代方案”取回她的比特币。简单的。 回到网络因为这就是需要 HTLC 设置的真正原因。 如前所述不仅 Alice 和 BobBob 和 Carol 也建立了 HTLC。因此如果Carol向Bob索要她的比特币Bob将获得value作为回报该value将在区块链上可见。 因此如果发生这种情况Bob也能从Alice那里得到比特币。Bob 可以获取 Carol 在区块链上公开显示的value将其包含在他与 Alice 的 HTLC 中并为自己索取BTC。两个通道有效衔接。 最后一个细节是在Alice从Bob那里收回她的BTC之前Bob必须从Carol那里获得value这一点很重要。如果Bob在Alice收回其付款之后才从Carol那里获得value那么Bob毕竟被困在中间。因此Bob 和 Carol 的 HTLC 中的超时必须在 Alice 和 Bob 的 HTLC 中的超时到期之前到期。如正好十天之后而不是两周。这也是 HTLC 需要 CheckLockTimeVerify (CLTV) 而不是 CheckSequenceVerify (CSV) 的原因。 最后还有一个问题需要解决为了使闪电网络发挥作用所有这些都必须在链下完成。 4. 闪电网络 到目前为止Alice 和 Bob 开通了一个双向支付通道他们都用 5 BTC为其提供资金。他们来回进行了两笔交易在当前的通道状态下Alice 和 Bob 都可以通过在区块链上“dropping删除通道”来为自己申领 5 BTC。 现在他们希望在通道中包含 HTLC。这是为了确保如果Carol向Bob索要BTC以换取她的value那么Bob也能从Alice那里得到比特币作为回报。 与上一步一样Alice 和 Bob 首先创建一个新的commitment交易。在很多方面这些commitment交易与之前的commitment交易非常相似它们包括 一个普通输出以及一个带有 CSVCheckSequenceVerify时间锁和特殊哈希锁的时髦多重签名地址的输出。 同样与上一步一样Alice 和 Bob 交换他们的旧秘密以有效地使旧通道失效。而且一旦交换Alice和Bob都可以签署他们那份commitment交易并可能随时将它们放到区块链上。 都是熟悉的领域。除了一处变化。Alice 和 Bob 的commitment交易现在都包含一项新输出价值 1 BTC。这使得余额为 4-5-1Alice 为 4 个Bob 为 5 个新输出为 1 个。 这个新输出本质上是 HTLC。它甚至比迄今为止的所有其他输出更时髦因为有三种方法可以解锁HTLC输出 1首先新的输出在 Alice 和 Bob 的commitment交易中会释放BTC前提是 Bob 的签名和value包含在后续交易中。因此无论 Alice 还是 Bob 签署并广播commitment交易只有 Bob 可以解锁该输出——如果他包含该value。但这两个commitment交易之间有一个小区别 如果 Bob drop删除通道则会涉及 CSV 时间锁。他需要等待 1,000 个区块。如果Alice放弃频道Bob可以立即领取这1 BTC。 2如果 Bob 放弃通道他必须等待 1,000 个区块的原因与之前看到的非常相似它允许 Alice 拿走这1 BTC以防 Bob 试图签署和广播旧的通道状态。这就是解锁输出的第二种方法的用武之地。如果Alice提供Bob的最新秘密她就可以“窃取”资金。 两个人可以玩这个游戏如果Alice试图欺骗并广播这个已经过时的通道Bob可以使用Alice的秘密索取这个1 BTC。他甚至不需要提供该value。 3第三与任何其他 HTLC 一样两项commitment交易还包括 Alice 常见的 CLTV 超时回退。如果Bob在两周内没有包含该value如因为他没有从Carol那里得到它Alice可以收回她的BTC。同样Alice 或 Bob 是否断开通道对于此选项并不重要。 那么这一切给带来了什么 Alice和Bob都持有半有效的承诺交易。如果Alice在区块链上放弃了她的commitment交易她会立即向Bob发送5 BTC。此外她还可以等待 1,000 个区块并为自己领取 4 个比特币。另外Bob 有两周时间提供value并在“HTLC 输出”中领取BTC。如果他在两周内没有提供valueAlice可以收回这个BTC。与此同时Bob也可以随时放弃他的commitment交易并立即向Alice发送4 BTC。然后他需要等待 1,000 个区块才能从一个地址再索取 5 个比特币如果他提供了该value还可以从 HTLC 输出中索取另1 BTC。如果他在两周内没有提供该valueAlice 可以收回这1 BTC。 当然如果Alice或Bob在未来的任何时候试图作弊并在该通道过时时对其进行签名和广播那么双方都可以完全阻止对方并窃取该通道中的所有比特币。 4.1 Settling the Status 此时Bob保证会收到BTC以换取该value假设他拥有value。他所要做的就是签署并广播他从 Alice 那里获得的commitment交易将其价值包含在后续交易中并签署并广播该交易。 Alice知道这一点。她不可能骗走Bob的BTC——即使她通过其他方式知道了该value。 因此两人不妨在通道之外“settle”。Bob可以简单地将value交给AliceAlice可以同意将通道状态更新到更正常的状态而无需HTLC和超时期限。 假设双方都希望保持通道开放那么他们自然会这么做这比必须将通道放到区块链上要不那么麻烦得多。 4.2 通道关闭 最后这是闪电网络的真正力量 至此以上描述的几乎所有内容通常都根本不需要访问比特币区块链。 如果 Alice 和 Bob 都想“和平”地关闭通道他们可以简单地从原始opening交易中创建一个交易以覆盖自opening交易以来发生的所有事情。从这次结束交易中他们向自己发送了通道的公平份额——即表示最新的通道状态。 具体来说这意味着如果Alice想要关闭通道她此时可以简单地创建一个交易向自己支付 4 个比特币向Bob支付 6 个比特币并要求Bob签署并广播该交易。既然他没有理由不这样做那么他很可能会配合并关闭通道。 最终只有两笔交易会通过比特币网络广播并包含在一个区块中 opening交易和closing交易。 即使Alice和Bob之间交易一百万次这也将成立从而从区块链上卸下巨大的负担。 参考资料 [1] 2016年5月31日 Bitcoin Magzine博客UNDERSTANDING THE LIGHTNING NETWORK, PART 1: BUILDING A BIDIRECTIONAL BITCOIN PAYMENT CHANNEL [2] 2016年6月7日 Bitcoin Magzine博客UNDERSTANDING THE LIGHTNING NETWORK, PART 2: CREATING THE NETWORK [3] 2016年6月17日 Bitcoin Magzine博客UNDERSTANDING THE LIGHTNING NETWORK, PART 3: COMPLETING THE PUZZLE AND CLOSING THE CHANNEL
http://www.pierceye.com/news/513477/

相关文章:

  • 网站建设三方合同范本wordpress数字链接出现404
  • 下载用的网站怎么做网站模板怎么使用教程
  • 没有网站 可以做百度口碑吗展馆的科普网站建设
  • 河北网站备案查询系统商城网站seo
  • 网站申请页面网站空间不够用怎么办
  • 网站开发最合适的搭配螺栓球网架
  • 广东网站建设排名凡科建站下载
  • 建设厅网站预算员报名时间网站建设策划书的编制
  • 厦门手机网站建设公司哪家好鲜花网站源码
  • 北京家居网站建设如何制作软件手机软件
  • 北京网站建设策划解决方案长沙建设工程造价网站
  • 北京网站设计公司价格阿里云wordpress插件
  • 网站建设自助建站企业萧山人才网手机版
  • 长沙建站挺找有为太极wordpress 需要zend
  • 通信管理局 网站备案天猫网站设计教程
  • 营销型网站制作成都打造品牌的三点策略
  • 做查工资的网站如何下载网页在线视频
  • 北沙滩网站建设公司主页怎么填
  • 手机asp网站网站设计方案
  • 长春市网站开发广东一站式网站建设推荐
  • 企业网站推广策略商会联盟网站建设方案
  • 清丰网站建设百度推广建设网站是不是合发
  • 邢台12345网站哪个公司的装饰设计公司
  • 嘉兴网嘉兴网站建设手机网站管理软件
  • 网站主色调简介怎么说本地常州微信网站建设
  • 电子商务网站数据库建设怎样推广一个网站
  • illustrator 学习网站wordpress外链产品
  • 电脑端网站一般做多宽最好网页游戏制作成本
  • 怎样做好手机网站建设wordpress开启xml rpc
  • 泉州企业网站建设公司做外贸要建什么网站