新手分享
比特币是世界上第一个区块链和加密货币。其主要用例是点对点支付转账。比特币通常被称为数字黄金,它提供了一种安全且去中心化的方式来存储和管理价值。这一核心价值主张使比特币成为迄今为止最受欢迎和广泛使用的加密网络。许多其他网络在创建新用例和创新时也从这些相同的核心价值观中汲取灵感。
解释一下,虽然比特币的创建纯粹是为了以去中心化的方式存储和管理价值,但其他网络扩展到其他领域,创造了托管去中心化应用程序的方法。去中心化应用程序(DApps)已经占据了世界正在经历一场风暴,因此,人们一直在推动创建使用最流行的网络比特币运行的此类应用程序。然而,这并不是比特币诞生的原因,因此它比以太坊等许多支持智能合约的网络要复杂一些。
那么比特币版本的智能合约是如何运作的呢?使用这种方法可以实现哪些功能?
让我们探讨比特币智能合约的概念,并深入了解比特币网络上不同类型的智能合约。
比特币有智能合约吗?是的,比特币区块链支持智能合约。开发者可以使用Script这种脚本语言在比特币上编写和部署智能合约。
那么,为什么当提到智能合约这个话题时,人们第一个想到的并不是比特币呢?
通常,你会听到人们说比特币不是“图灵完备”。但事实上,这并不完全正确。相反,这一切都与称为操作码的东西有关。或者更多的是,比特币缺乏它们。
操作码本质上是一小段代码,代表可以在特定网络上执行的函数。在某些区块链上,例如以太坊,其中一些操作码有权读取和写入区块链的当前“状态”。然后,您可以组合许多这些操作码来创建由区块链交易触发的复杂的自动化任务。这些操作码组被称为智能合约,负责无数的区块链应用程序和平台。
然而,比特币脚本不包含这些类型的操作码。这也意味着比特币在任何特定时刻都没有记录的当前“状态”。相反,它只是记录谁拥有什么,并允许人们通过 UTXO 发送和接收代币,并且对如何执行价值转移的条件选择有限。
所以,现在您知道为什么比特币智能合约并不完全符合您的预期,所以让我们看看它们是如何工作的。
什么是比特币智能合约以及它们如何工作?Bitcoin 智能合约与其他网络上的智能合约一样,只是在满足某些预定义条件时自动执行的代码片段。所以,你可以想象,它们的工作方式是相似的。
首先,重要的是要知道比特币使用自己的计算语言:脚本进行操作。脚本使用类似锁和钥匙系统的东西来执行智能合约。发送者设置条件或规则以便处理交易——充当锁。接下来,接收者必须提供匹配的“密钥”(也是脚本中的一段代码),以满足发送者设置的条件。
那么现在可以设置什么样的条件呢?
让我们通过探索比特币上存在的各种类型的智能合约来找到这个问题的答案。
比特币智能合约的类型支付到公钥哈希脚本(P2PKH)这是最常见的交易类型。发送者将比特币寻址到接收者的公钥的哈希值。要获取资金,接收者必须证明自己拥有资金对应的私钥。
这就像锁上一个盒子并将钥匙交给一个人。
多重签名脚本(MultiSig)多重签名需要多个签名才能使一笔交易有效。一个例子是 2-of-3 MultiSig,它需要三个签名中的至少两个签名才能执行交易。这增加了额外的安全层,并且经常被企业使用。
这就像一个需要同时打开两把或更多钥匙的保险箱。
时间锁定比特币交易(nLockTime 和 nSequence)这允许在任何给定时间创建交易,但仅在指定的未来日期或区块高度有效。这是一种“后期”比特币交易的方式,对于各种金融协议都很有用。这是一种与交易有关的时间锁。
BIP-65 和 BIP-112 引入了有关“nLockTime”和 nSequence 字段的新操作码,使得时间锁定交易成为可能。
本质上,这些操作码允许条目指定早期第一次可以将其添加到一个块中——直到达到一定数量的块或经过一定时间后,交易才能完成。简而言之,这些时间锁定的操作码很重要,因为没有它们,整个闪电网络就不可能存在!
支付到脚本哈希(P2SH – BIP16)P2SH 不是将输出锁定到公钥,而是将它们锁定到脚本的哈希。花费者需要提供与哈希匹配的脚本并满足其条件。这可以实现复杂的脚本,而不会给发送者带来详细信息的负担。 P2SH 随着 BIP-16 升级而发挥作用。
例如,您用拼图挑战朋友。如果他们解决了这个问题,他们就会得到比特币。
Pay-to-taproot (P2TR – BIP341)P2TR 是一种保护隐私的复杂脚本,允许多方创建看起来像单个签名的签名,从而增强隐私和效率。
它是 P2PKH 和 P2SH 的组合,具有更多的隐私性。这是 BIP-341 提案的一部分,通常称为 Taproot 升级e.
MiniscriptMiniscript 的引入是为了使复杂的支出条件(比特币已经具备的能力)更容易为开发人员使用和实现。简而言之,它是一种简单的编码语言,可以实现多种功能。从本质上讲,它允许您的比特币钱包处理更高级的操作,例如需要一个帐户的多个密钥或拥有一个具有某些支出条件(仅在一段时间后才激活)的钱包。
虽然这不是严格意义上的智能合约,但这是 Miniscript 提供的更灵活的托管方案之一。
现在您已经了解了一些高级功能,让我们深入了解一些更具体的功能。
比特币上的 NFT 怎么样——它们到底存在吗?
比特币上的代币和 NFT Ordinals 协议于 2023 年 1 月在比特币上推出,通过将数据附加到各个 Satoshi 来实现“Ordinal NFT”。每个中本聪通过直观的订购系统获得一个唯一的编号。
序数 NFT 完全依赖于e 比特币区块链,无需单独的代币。然而,这意味着,记入的中本聪现在会争夺网络上的区块空间,导致网络费用飙升。
BRC-20——比特币序数的代币标准——使用 JSON 数据来促进各种代币功能。目前,BRC-20代币标准提供三个主要功能:
部署:此功能允许用户创建新的 BRC-20 代币合约。 铸币:用户可以使用铸币功能生成特定数量的 BRC-20 代币。 转账:转账功能使用户可以发送一定数量的 BRC-20 代币。 20 个代币到另一个地址。BRC-20 代币标准相对较新。因此,功能有限且不完全用户友好。
比特币 L2 或第 2 层解决方案可以帮助比特币克服这一限制。
比特币第 2 层上的智能合约比特币智能合约的功能有限。然而,比特币上的第 2 层区块链允许开发人员编写更复杂的代码智能合约。
为了更好地理解它们的工作原理,让我们看一些比特币第 2 层链的示例。
闪电网络闪电网络(LN)是比特币的第2层扩展解决方案,旨在通过在链下进行大部分交易来促进快速且低成本的交易。它使用支付渠道进行操作,这些支付渠道就像用户之间促进支付的私人链外隧道。
除了即时付款和低费用之外,闪电网络还可以在“闪电应用程序”或“LApps”中创建更复杂的智能合约,例如哈希时间锁定合约(HTLC)。这些合约是可编程的,最常用于小额支付、即时交换和流支付等功能。
闪电网络也是谨慎日志合约(DLC)的所在地。为了澄清这些合同,允许两方进行打赌,使用与预言机的连接来验证现实生活中的事件。虽然预言机对于这些赌注的结算至关重要,但它并不是直接的。直接参与创建和结算合同的交易。这些是投注各方之间直接协商的。
StacksStacks 是一条与比特币一起工作的链。它使开发人员能够在比特币之上构建智能合约和去中心化应用程序(dApp)。
他们采用“转移证明”(PoX)——一种允许 Stacks 区块链在利用比特币安全性的同时处理其交易的方法。
堆栈上的智能合约
使用 Stacks,开发人员可以创建广泛的应用程序,从去中心化金融 (DeFi) 平台到不可替代代币 (NFT) 和去中心化社交网络。
它充当一个更加多样化和广泛的生态系统,同时保持比特币作为基础层的稳健性和安全性。
基于Stacks的智能合约在比特币上的两个应用是:
Hiro 钱包:它是一款非托管钱包,可在 Stacks 生态系统内实现安全连接和交易。比特币用户可以参与Stacking,奖励系统,向支持网络的用户分配 BTC 并在指定期限内锁定 STX 代币。
比特币命名服务(BNS):BNS 是比特币的去中心化命名系统,类似于以太坊的 ENS,最近注册量激增。要拥有 BTC 名称,用户必须与 Stacks 链上的智能 BNS 合约进行交互。
开始在比特币上使用智能合约了解比特币智能合约的工作原理对于安全地参与加密货币和 DeFi 至关重要。如果用户能够理解智能合约代码来评估智能合约是否可以安全交互,那就更好了。
与在任何区块链上使用智能合约一样,您应该优先考虑私钥的安全性。最好的方法是通过硬件钱包(例如 .
硬件钱包使私钥始终保持离线状态,并且还可以实现清晰的签名。这有助于用户在批准交易之前清楚地阅读交易详细信息。
此外,硬件方面allets 为 Hiro Wallet 提供支持,用户可以通过该支持将它们配对并开始堆叠 STX 并将它们委托给值得信赖的验证者。
现在您已经了解了有关比特币智能合约的一切,您已准备好投入其中。因此,获取 并连接到 并开始探索比特币生态系统。现在是教育的时代,从生态系统访问比特币是安全且易于理解的。
比特币是世界上第一个区块链和加密货币。其主要用例是点对点支付转账。比特币通常被称为数字黄金,它提供了一种安全且去中心化的方式来存储和管理价值。这一核心价值主张使比特币成为迄今为止最受欢迎和广泛使用的加密网络。许多其他网络在创建新用例和创新时也从这些相同的核心价值观中汲取灵感。
解释一下,虽然比特币的创建纯粹是为了以去中心化的方式存储和管理价值,但其他网络扩展到其他领域,创造了托管去中心化应用程序的方法。去中心化应用程序(DApps)已经占据了世界正在经历一场风暴,因此,人们一直在推动创建使用最流行的网络比特币运行的此类应用程序。然而,这并不是比特币诞生的原因,因此它比以太坊等许多支持智能合约的网络要复杂一些。
那么比特币版本的智能合约是如何运作的呢?使用这种方法可以实现哪些功能?
让我们探讨比特币智能合约的概念,并深入了解比特币网络上不同类型的智能合约。
比特币有智能合约吗?是的,比特币区块链支持智能合约。开发者可以使用Script这种脚本语言在比特币上编写和部署智能合约。
那么,为什么当提到智能合约这个话题时,人们第一个想到的并不是比特币呢?
通常,你会听到人们说比特币不是“图灵完备”。但事实上,这并不完全正确。相反,这一切都与称为操作码的东西有关。或者更多的是,比特币缺乏它们。
操作码本质上是一小段代码,代表可以在特定网络上执行的函数。在某些区块链上,例如以太坊,其中一些操作码有权读取和写入区块链的当前“状态”。然后,您可以组合许多这些操作码来创建由区块链交易触发的复杂的自动化任务。这些操作码组被称为智能合约,负责无数的区块链应用程序和平台。
然而,比特币脚本不包含这些类型的操作码。这也意味着比特币在任何特定时刻都没有记录的当前“状态”。相反,它只是记录谁拥有什么,并允许人们通过 UTXO 发送和接收代币,并且对如何执行价值转移的条件选择有限。
所以,现在您知道为什么比特币智能合约并不完全符合您的预期,所以让我们看看它们是如何工作的。
什么是比特币智能合约以及它们如何工作?Bitcoin 智能合约与其他网络上的智能合约一样,只是在满足某些预定义条件时自动执行的代码片段。所以,你可以想象,它们的工作方式是相似的。
首先,重要的是要知道比特币使用自己的计算语言:脚本进行操作。脚本使用类似锁和钥匙系统的东西来执行智能合约。发送者设置条件或规则以便处理交易——充当锁。接下来,接收者必须提供匹配的“密钥”(也是脚本中的一段代码),以满足发送者设置的条件。
那么现在可以设置什么样的条件呢?
让我们通过探索比特币上存在的各种类型的智能合约来找到这个问题的答案。
比特币智能合约的类型支付到公钥哈希脚本(P2PKH)这是最常见的交易类型。发送者将比特币寻址到接收者的公钥的哈希值。要获取资金,接收者必须证明自己拥有资金对应的私钥。
这就像锁上一个盒子并将钥匙交给一个人。
多重签名脚本(MultiSig)多重签名需要多个签名才能使一笔交易有效。一个例子是 2-of-3 MultiSig,它需要三个签名中的至少两个签名才能执行交易。这增加了额外的安全层,并且经常被企业使用。
这就像一个需要同时打开两把或更多钥匙的保险箱。
时间锁定比特币交易(nLockTime 和 nSequence)这允许在任何给定时间创建交易,但仅在指定的未来日期或区块高度有效。这是一种“后期”比特币交易的方式,对于各种金融协议都很有用。这是一种与交易有关的时间锁。
BIP-65 和 BIP-112 引入了有关“nLockTime”和 nSequence 字段的新操作码,使得时间锁定交易成为可能。
本质上,这些操作码允许条目指定早期第一次可以将其添加到一个块中——直到达到一定数量的块或经过一定时间后,交易才能完成。简而言之,这些时间锁定的操作码很重要,因为没有它们,整个闪电网络就不可能存在!
支付到脚本哈希(P2SH – BIP16)P2SH 不是将输出锁定到公钥,而是将它们锁定到脚本的哈希。花费者需要提供与哈希匹配的脚本并满足其条件。这可以实现复杂的脚本,而不会给发送者带来详细信息的负担。 P2SH 随着 BIP-16 升级而发挥作用。
例如,您用拼图挑战朋友。如果他们解决了这个问题,他们就会得到比特币。
Pay-to-taproot (P2TR – BIP341)P2TR 是一种保护隐私的复杂脚本,允许多方创建看起来像单个签名的签名,从而增强隐私和效率。
它是 P2PKH 和 P2SH 的组合,具有更多的隐私性。这是 BIP-341 提案的一部分,通常称为 Taproot 升级e.
MiniscriptMiniscript 的引入是为了使复杂的支出条件(比特币已经具备的能力)更容易为开发人员使用和实现。简而言之,它是一种简单的编码语言,可以实现多种功能。从本质上讲,它允许您的比特币钱包处理更高级的操作,例如需要一个帐户的多个密钥或拥有一个具有某些支出条件(仅在一段时间后才激活)的钱包。
虽然这不是严格意义上的智能合约,但这是 Miniscript 提供的更灵活的托管方案之一。
现在您已经了解了一些高级功能,让我们深入了解一些更具体的功能。
比特币上的 NFT 怎么样——它们到底存在吗?
比特币上的代币和 NFT Ordinals 协议于 2023 年 1 月在比特币上推出,通过将数据附加到各个 Satoshi 来实现“Ordinal NFT”。每个中本聪通过直观的订购系统获得一个唯一的编号。
序数 NFT 完全依赖于e 比特币区块链,无需单独的代币。然而,这意味着,记入的中本聪现在会争夺网络上的区块空间,导致网络费用飙升。
BRC-20——比特币序数的代币标准——使用 JSON 数据来促进各种代币功能。目前,BRC-20代币标准提供三个主要功能:
部署:此功能允许用户创建新的 BRC-20 代币合约。 铸币:用户可以使用铸币功能生成特定数量的 BRC-20 代币。 转账:转账功能使用户可以发送一定数量的 BRC-20 代币。 20 个代币到另一个地址。BRC-20 代币标准相对较新。因此,功能有限且不完全用户友好。
比特币 L2 或第 2 层解决方案可以帮助比特币克服这一限制。
比特币第 2 层上的智能合约比特币智能合约的功能有限。然而,比特币上的第 2 层区块链允许开发人员编写更复杂的代码智能合约。
为了更好地理解它们的工作原理,让我们看一些比特币第 2 层链的示例。
闪电网络闪电网络(LN)是比特币的第2层扩展解决方案,旨在通过在链下进行大部分交易来促进快速且低成本的交易。它使用支付渠道进行操作,这些支付渠道就像用户之间促进支付的私人链外隧道。
除了即时付款和低费用之外,闪电网络还可以在“闪电应用程序”或“LApps”中创建更复杂的智能合约,例如哈希时间锁定合约(HTLC)。这些合约是可编程的,最常用于小额支付、即时交换和流支付等功能。
闪电网络也是谨慎日志合约(DLC)的所在地。为了澄清这些合同,允许两方进行打赌,使用与预言机的连接来验证现实生活中的事件。虽然预言机对于这些赌注的结算至关重要,但它并不是直接的。直接参与创建和结算合同的交易。这些是投注各方之间直接协商的。
StacksStacks 是一条与比特币一起工作的链。它使开发人员能够在比特币之上构建智能合约和去中心化应用程序(dApp)。
他们采用“转移证明”(PoX)——一种允许 Stacks 区块链在利用比特币安全性的同时处理其交易的方法。
堆栈上的智能合约
使用 Stacks,开发人员可以创建广泛的应用程序,从去中心化金融 (DeFi) 平台到不可替代代币 (NFT) 和去中心化社交网络。
它充当一个更加多样化和广泛的生态系统,同时保持比特币作为基础层的稳健性和安全性。
基于Stacks的智能合约在比特币上的两个应用是:
Hiro 钱包:它是一款非托管钱包,可在 Stacks 生态系统内实现安全连接和交易。比特币用户可以参与Stacking,奖励系统,向支持网络的用户分配 BTC 并在指定期限内锁定 STX 代币。
比特币命名服务(BNS):BNS 是比特币的去中心化命名系统,类似于以太坊的 ENS,最近注册量激增。要拥有 BTC 名称,用户必须与 Stacks 链上的智能 BNS 合约进行交互。
开始在比特币上使用智能合约了解比特币智能合约的工作原理对于安全地参与加密货币和 DeFi 至关重要。如果用户能够理解智能合约代码来评估智能合约是否可以安全交互,那就更好了。
与在任何区块链上使用智能合约一样,您应该优先考虑私钥的安全性。最好的方法是通过硬件钱包(例如 .
硬件钱包使私钥始终保持离线状态,并且还可以实现清晰的签名。这有助于用户在批准交易之前清楚地阅读交易详细信息。
此外,硬件方面allets 为 Hiro Wallet 提供支持,用户可以通过该支持将它们配对并开始堆叠 STX 并将它们委托给值得信赖的验证者。
现在您已经了解了有关比特币智能合约的一切,您已准备好投入其中。因此,获取 并连接到 并开始探索比特币生态系统。现在是教育的时代,从生态系统访问比特币是安全且易于理解的。