IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 区块链 -> Dfinity集成比特币方案概述 -> 正文阅读

[区块链]Dfinity集成比特币方案概述

图片

比特币是一种基于P2P开源协议的去中心化数字货币,比特币使用未花费交易输出(UTXO)会计模型,即交易创建输出,这些输出用作于其他交易的输入,然后创建新的交易输出。

比特币是一种不支持智能合约的资产支付网络,拥有智能合约的特币将会增加巨大的价值:比特币的智能合约将利用作为安全高效执行智能合约平台Dfinity来创建,这种集成将为去中心化金融(DeFi)创建更大的构想空间以及造福效应,例如目前的以太坊只能通过封装比特币实现,集成之后的比特币将可以用于支付Dfinity链上的任何类型的服务,这绝对打开了一个无穷的应用场景。

图片

图片

此提案的目标是具有以下功能将比特币网络直接集成:

  • Canisters可以直接持有比特币,即Canisters的余额是在真实的比特币网络上捕获的,这些建立在比特币网络上的代理Canisters可以运行图灵完备逻辑,并基于此决定与其它普通比特币用户或者其他调用比特币代理智能合约的Canisters进行比特币交易。

  • Canisters可以创建比特币交易并且可靠的中继到比特币网络。

直接集成不仅意味Canister可以容纳比特币,而且还意味着以不用引入跨链桥中介实现。

预期集成比特币网络需要Canisters提供一些先决条件:

(1)使Canisters能够在比特币上接受和持有比特币;

(2)跟踪属于容器的UTXO集,并使Canisters能够查询其各自的UTXO集;

(3)使Canisters能够创建比特币交易并接受来自Canisters的此类交易中继到比特币网络;

实现功能1:Canisters必须拥有一个阈值ECDSA公钥,它们的比特币地址来自该公钥,阈值ECDSA是一个单独的功能,实现功能1需要重新发布一个ECDSA提案供于社区投票。

实现功能2:需要将比特币区块摄取到Dfinity链上,验证它们并跟踪比特币区块链,一旦区块在区块链上的后继区块中有足够的的工作量,交易及其UTXO就可以根据请求被提取并提交给Canisters。

实现功能3:取决于前面提到的阈值ECDSA功能,这使得Canisters可以消耗UTXO,此外Dfinity必须建立一个通信通道,通过该通道,来自比特币智能合约的Canisters传出的交易可以可靠的中继到比特币网络。

图片

接下来概述了技术设计的高级概述,下图进一步说明了高层设计。

  • get_utxo_set(canister_id: PrincipalId, num_confirmations: u32) -> Vec该函数返回Canister_id对应的UTXO集,其中num_confirmations指定UTXO必须具有最小的确认数,如果确认数为k,则该交易有k-1 个后继比特币区块。

  • put_transaction(transaction: BtcTransaction) -> BtcSystemResponse 请求将交易提交到比特币网络,响应表明BTC系统组件是否已收到交易,然后将其异步传输到比特币网络。

接下来该提案作者将进一步提供一个计算机库,该计算机库为开发者提供以下便利功能:

  • get_balance(num_confirmations) -> BtcBalance???该函数返回给一定数量确认的比特币余额

  • send_bitcoin(金额,收件人)-> BtcSystemResponse??该函数将制定的比特币金额发送到提供收件人地址。

图片

在网络层,实现了此功能需要的多个组件,值得注意的是,比特币适配器在这一层实现了比特币特定的功能:它连接到比特币网络维护比特币网络的最新视图,并根据请求向共识层提供区块,以防止不诚实的比特币节点向BTC系统组件发送垃圾请求。

BTC 系统组件接收由比特币适配器在网络层通过共识和消息路由提供的比特币区块。比特币适配器和 BTC 系统组件之间的协议使比特币适配器能够决定接下来提供哪个区块。BTC 系统组件进一步使传出的比特币交易在网络层可用,在那里它们被传输到连接的比特币节点。

图片

以上提案是来自设计来自开发者Dieter Sommer对多种可能设计的评估,并且在架构清晰度、分散性和可拓展性方面被认为是最适合Dfinity集成比特币的设计提案。

Dieter Sommer考虑到另一种设计是引入oracle(预言机)Canisters,这是一个常规Canisters,提供为Canisters所需要的UTXO集和接收比特币交易功能:这首先需要中继比特币网络将比特币区块发送到oracle Canisters,这意味着必须引入与这些中继相关的信任假设,这种设计不符合直接集成的目标,此外该设计还存在可扩展性限制,因为所有的比特币智能合约Canisters都将与oracle Canister容器交互。

Dieter Sommer研究的另外一个设计是在所有提供比特币功能的子网中引入一个oracle Canisters,这种设计要求这些Canister在多个方面具有特殊性:它们必须在不消耗Cycles的情况下运作,并在子网启动时实例化,这会有额外的技术挑战:例如在布线方面,这导致Dieter Sommer放弃了设计。

图片

该提案的功能将会影响IC协议堆栈的所有四层,并且需要所有受影响团队工作,大多数工程工作都在网络层和执行层进行,因为所有与比特币相关的功能都在这两层中实现,与共识层?和 治理层集成的工程相对较小。

实施工作将尽可能在不同的层上进行。虽然没有详细的开发工作时间表,但目标是在 2021 年底之前实施和测试所有工程。该提案对阈值 ECDSA 功能有很强的依赖性,因为它是比特币集成的硬性先决条件。阈值 ECDSA 功能的质量保证在集成比特币网络起到关键作用,因为一旦比特币形式的价值转移到罐中,功能部署就不能再合理地回滚。

以上提案是由开发者Dieter Sommer设计,如果你拥有更好的集成比特币提案可以通过在开发者论坛中提交:

  • 集成比特币提案论坛开始时间为:9月10日

  • 社区对话:9月13日

  • NNS Motion提案提交时间:UTC时间9月15日 15:00

  • NNS Motion提案结束时间:UTC时间9月17日15:00

  • 如果NNS Motion提案通过,实施+测试+部署需要数月时间。

该提案涉及的范围目标:

  • 比特币不支持通用智能合约功能,而只是支持通用智能合约语义的一小部分的有限脚本语言。为比特币交易设想的智能合约功能允许用户部署一个Canisters或利用一个现有的Caanisters,该Canisters可以接收和传输比特币并执行以图灵完备编程语言表达的任意智能合约逻辑。为此,Canisters必须能够持有比特币余额,这需要阈值 ECDSA 协议。该协议使托管Canisters的副本能够共享 ECDSA 私钥并使用使用秘密共享私钥的加密多方计算创建 ECDSA 签名,也就是说,无需任何节点学习有关私钥的任何信息,同时共同计算签名以签署交易。智能合约需要访问比特币区块链的状态,即所谓的链状态。因此,我们需要在互联网计算机上复制链状态,并为实现智能合约的Canisters提供服务以查询它,从而接收与 UTXO 相关的信息。此功能允许任何Canisters验证和创建比特币交易并实施强大的智能合约逻辑。

  • 比特币网络上的交易本质上是缓慢且昂贵的。Dfinity希望通过在互联网计算机上构建分类账功能来实现快速确认和低成本的交易,允许用户将比特币转入和转出该Ledger上的账户,从而在互联网计算机上创建封装好的比特币。用户可以将比特币转入他们在Ledger的账户,并在互联网计算机上通过Ledger交易买卖比特币,并在几秒钟内完成,而与在比特币区块链上执行相同交易相比,仅产生一小部分交易费用。包装比特币的持有者可以通过将他们的账户余额转移到他们的比特币地址来随时结算他们的账户。

Dfinity深圳社区,专注于Dfinity生态技术发展交流与优质项目挖掘分析。

?

  区块链 最新文章
盘点具备盈利潜力的几大加密板块,以及潜在
阅读笔记|让区块空间成为商品,打造Web3云
区块链1.0-比特币的数据结构
Team Finance被黑分析|黑客自建Token“瞒天
区块链≠绿色?波卡或成 Web3“生态环保”标
期货从入门到高深之手动交易系列D1课
以太坊基础---区块验证
进入以太坊合并的五个数字
经典同态加密算法Paillier解读 - 原理、实现
IPFS/Filecoin学习知识科普(四)
上一篇文章      下一篇文章      查看所有文章
加:2021-09-24 10:36:49  更:2021-09-24 10:37:08 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/28 3:14:45-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计