File tree 1 file changed +9
-4
lines changed
di-qi-zhang-.-shou-quan-he-ren-zheng/jiao-yi-jiao-ben-he-jiao-ben-yu-yan
1 file changed +9
-4
lines changed Original file line number Diff line number Diff line change 27
27
28
28
现在让我们将所学到的关于脚本和堆栈的知识应用到一些简单的示例中。
29
29
30
- 正如我们将在图7-2中看到的那样,脚本 2 3 OP\_ ADD 5 OP\_ EQUAL 展示了算术加法操作符 OP\_ ADD,将两个数字相加并将结果放入堆栈中,然后是条件操作符 OP\_ EQUAL,它检查结果的总和是否等于5。为了简洁起见,本书中的示例有时会省略 OP\_ 前缀。有关可用的脚本操作符和函数的更多详细信息,请参阅比特币维基的脚本页面 。
30
+ 正如我们将在图7-2中看到的那样,脚本 2 3 OP\_ ADD 5 OP\_ EQUAL 展示了算术加法操作符 OP\_ ADD,将两个数字相加并将结果放入堆栈中,然后是条件操作符 OP\_ EQUAL,它检查结果的总和是否等于5。为了简洁起见,本书中的示例有时会省略 OP\_ 前缀。有关可用的脚本操作符和函数的更多详细信息,请参阅 [ 比特币维基的脚本页面 ] ( https://en.bitcoin.it/wiki/Script ) 。
31
31
32
32
尽管大多数传统的输出脚本都引用了一个公钥哈希(本质上是一个传统的比特币地址),从而要求证明拥有权才能花费这些资金,但脚本并不一定要那么复杂。任何输出和输入脚本的组合,只要产生 TRUE 值,都是有效的。我们用作脚本语言示例的简单算术也是有效的脚本。
33
33
34
34
使用算术示例脚本的一部分作为输出脚本:
35
35
36
- 3 OP\_ ADD 5 OP\_ EQUAL
36
+ ```
37
+ 3 OP_ADD 5 OP_EQUAL
38
+ ```
37
39
38
40
这可以通过包含以下输入脚本的交易来满足:
39
41
42
+ ```
40
43
2
44
+ ```
41
45
42
46
验证软件结合了这些脚本:
43
47
44
- \
45
- 2 3 OP\_ ADD 5 OP\_ EQUAL
48
+ ```
49
+ 2 3 OP_ADD 5 OP_EQUAL
50
+ ```
46
51
47
52
\
48
53
正如我们在图7-2中所看到的那样,当执行此脚本时,结果为OP\_ TRUE,使得交易有效。尽管这是一个有效的交易输出脚本,但请注意,得到的UTXO可以被任何具有算术技能的人花费,以知道数字2满足脚本。
You can’t perform that action at this time.
0 commit comments