当前位置:首页 » 比特币问答 » 比特币脚本含义

比特币脚本含义

发布时间: 2023-02-07 07:24:27

Ⅰ BTC 比特币 内涵

1、区块链和比特币的概念、内涵、本质等。

2、区块链相关法律法规、规定规划、通知公告等。

第一,笔者眼中的区块链:

如同它名字一般,是指一个区域连接成一块,最终形成很多区块的拼接,而每一个区块都有一个节点可以承载不同的事物,比如说你买一箱苹果在这个节点上销售者给你卖100块,你就可以通过这个链条知道上一个种苹果的农户是50块卖给销售者的,信息公开并且透明化,可以揭开交易、服务、沟通过程中的层层面纱;个人认为区块链不是去中心化,而是所有中心化的联合,因为每一个节点就是一个小中心,将所有中心连接起来形成一整个区块链数据库,而不是传统的将一个事物孤立为一点从而发散,是需要每一个节点配合联动,是一种思想模型,一种载体建立在分布式核算和存储上,只是不存在中心化的硬件或管理机构,任意节点的权利和义务均等,一个系统中的数据块由整个系统中具有维护功能的节点来共同维护。

网络和360网络的解释,和根据我国工业和信息化部《中国区块链技术和应用发展白皮书(2016)》的定义:其是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。

2018年3月31日,《区块链技术原理与开发实战》正式引入高校讲堂,首次课程在西安电子 科技 大学南校区开讲。2018年4月,一群来自牛津大学的学者宣布创办世界上第一所区块链大学——伍尔夫大学。5月29日,网络上线区块链新功能,以保证词条编辑公正透明。

...

第二.笔者眼中的比特币:

基于区块链技术应用发展起来的数字货币,非法定货币,向法律规则发起了挑战,引发诸多 社会 和财产风险。需要我们慎重评估区块链技术应用可能存在的法律问题,思考对策。监管问题...

...

...

狭义区块链,是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。

广义区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。一般说来,区块链系统由数据层、网络层、共识层、激励层、合约层和应用层组成数据层封装了底层数据区块以及相关的数据加密和时间戳等技术;网络层则包括分布式组网机制、数据传播机制和数据验证机制等;共识层主要封装网络节点的各类共识算法;激励层将经济因素集成到区块链技术体系中来,主要包括经济激励的发行机制和分配机制等;合约层主要封装各类脚本、算法和智能合约是区块链可编程特性的基础(区块链技术的广泛应用,离不开智能合约,所谓的智能合约就是以数字编码的形式定义承诺。交易的双方无须彼此信任,一切交易都由代码强制执行。但智能合约的形式及其内容的效力,还没有得到法律和司法的正式认可,其作为数字编码的形式体现出来的合同文本,尚无法确知,是否可以构成生效合同的要件,是否可以符合司法拟采信证据的真实性、合法性、有效性。);应用层则封装了区块链的各种应用场景和案例。

区块链已经从区块链1.0——数字货币到2.0——数字资产与智能合约,发展到现在区块链3.0——DAO、DAC(区块链自洽组织、区块链自洽公司)-->区块链大 社会 (科学,医疗,教育,区块链+AI)。从比特币等加密货币到追踪中国放养肉鸡。专门跟加密货币相关的专利申请——不包括在区块链专利类别中——在2017年增长了16%,达到602项。中国2017年申请了225项区块链项专利,而2016年为59项,

其次是美国(去年为91项,2016年为21项)。其体系结构的核心优势:任何节点都可以创建交易,在经过一段时间的确认之后,就可以合理地确认该交易是否为有效,区块链可有效地防止双方问题的发生。对于试图重写或者修改交易记录而言,它的成本是非常高的。

区块链实现了两种记录:交易以及区块。交易是被存储在区块链上的实际数据,而区块则是记录确认某些交易是在何时,以及以何种顺序成为区块链数据库的一部分。交易是由参与者在正常过程中使用系统所创建的(以加密数字货币为例,一笔交易是由b将代币发送给a所创建的),而区块则是由我们称之为矿工的单位负责创建。

...

(部分)区块链的特点:

1. 去中心化:使用分布式核算和存储,不存在中心化的硬件或管理机构,任意节点的权利和义务都是均等的,系统中的数据块由整个系统中具有维护功能的节点来共同维护。

2. 开放性:系统开放的,除了交易各方的私有信息被加密外,区块链的数据对所有人公开,任何人都可以通过公开的接口查询区块链数据和开发相关应用,因此整个系统信息高度透明。(私有物被加密,公有物透明)

3. 自治性:区块链采用基于协商一致的规范和协议(比如一套公开透明的算法)使得整个系统中的所有节点能够在去信任的环境自由安全的交换数据,使得对“人”的信任改成了对机器的信任,任何人为的干预不起作用。

4. 信息不可篡改:一旦信息经过验证并添加至区块链,就会永久的存储起来,除非能够同时控制住系统中超过51%的节点,否则单个节点上对数据库的修改是无效的,因此区块链的数据稳定性和可靠性极高。

5. 匿名性:由于节点之间的交换遵循固定的算法,其数据交互是无需信任的(区块链中的程序规则会自行判断活动是否有效),因此交易对手无须通过公开身份的方式让对方自己产生信任,对信用的累积非常有帮助。

综上笔者认可的观点是区块链是一种系统,是一种算法技术的创新应用,只要不涉及伦理问题和道德风险,本不存在国家监管与法律规制问题。

...

参考文献

1. 郑惠敏:《区块链法律:部分国家对虚拟货币、数字代币的性质认定》大风号自媒体。

2. 曹磊:《区块链,金融的另一种可能》.首席财务官.2015年24期。

3. 王文嫣:《安全透明的公共账本——区块链》.上海证券报·中国证券网.2016年2月26日。

4. 蒋润祥;魏长江:《区块链的应用进展与价值探讨》.金融视界.2016年Z2期。

5. “区块链”到底是什么?和普通人有什么关系?.网易 科技 .2016年8月5日。

6. 刘晋豫:《 香港证监会发布公告提醒数字货币风险 称其会在必要时采取执法行动》凤凰网 财经 金色 财经 .2018年2月9日。

7. 苏德栋:试论区块链法律规制与风险.中华全国律师协会.

Ⅱ 比特币支持智能合约吗

不支持 比特币只能点对点传输目前

Ⅲ 如何理解区块链的智能合约

智能合约”(smart contract)这个术语至少可以追溯到1995年,是由多产的跨领域法律学者尼克·萨博(Nick Szabo)提出来的。他在发表在自己的网站的几篇文章中提到了智能合约的理念。他的定义如下:

“一个智能合约是一套以数字形式定义的承诺(promises),包括合约参与方可以在上面执行这些承诺的协议。”

让我们更加详细地探讨他的定义的意思。

承诺

一套承诺指的是合约参与方同意的(经常是相互的)权利和义务。这些承诺定义了合约的本质和目的。以一个销售合约为典型例子。卖家承诺发送货物,买家承诺支付合理的货款。

数字形式

数字形式意味着合约不得不写入计算机可读的代码中。这是必须的,因为只要参与方达成协定,智能合约建立的权利和义务,是由一台计算机或者计算机网络执行的。

更进一步地说明:

(1)达成协定

智能合约的参与方什么时候达成协定呢?答案取决于特定的智能合约实施。一般而言,当参与方通过在合约宿主平台上安装合约,致力于合约的执行时,合约就被发现了。

(2)合约执行

“执行”的真正意思也依赖于实施。一般而言,执行意味着通过技术手段积极实施。

(3)计算机可读的代码

另外,合约需要的特定“数字形式”非常依赖于参与方同意使用的协议。

协议

协议是技术实现(technical implementation),在这个基础上,合约承诺被实现,或者合约承诺实现被记录下来。选择哪个协议取决于许多因素,最重要的因素是在合约履行期间,被交易资产的本质。

再次以销售合约为例。假设,参与方同意货款以比特币支付。选择的协议很明显将会是比特币协议,在此协议上,智能合约被实施。因此,合约必须要用到的“数字形式”就是比特币脚本语言。比特币脚本语言是一种非图灵完备的、命令式的、基于栈的编程语言,类似于Forth。

智能合约


链乔教育在线旗下学硕创新区块链技术工作站是中国教育部学校规划建设发展中心开展的“智慧学习工场2020-学硕创新工作站 ”唯一获准的“区块链技术专业”试点工作站。专业站立足为学生提供多样化成长路径,推进专业学位研究生产学研结合培养模式改革,构建应用型、复合型人才培养体系。

Ⅳ 4. 比特币的密钥、地址和钱包 - 精通比特币笔记

比特币的所有权是通过密钥、比特币地址和数字签名共同确定的。密钥不存在于比特币网络中,而是用户自己保存,或者利用管理私钥的软件-钱包来生成及管理。

比特币的交易必须有有效签名才会被存储在区块中,因此拥有密钥就拥有对应账户中的比特币。密钥都是成对出现的,由一个公钥和一个私钥组成。公钥相当于银行账号,私钥就相当于银行卡密码。通常情况下密钥由钱包软件管理,用户不直接使用密钥。

比特币地址通常是由公钥计算得来,也可以由比特币脚本得来。

比特币私钥通常是数字,由比特币系统随机( 因为算法的可靠性与随机性正相关,所以随机性必须是真随机,不是伪随机,因此比特币系统可以作为随机源来使用 )生成,然后将私钥作为输入,使用椭圆曲线算法这个单向加密函数生成对应的公钥,再将公钥作为输入,使用单向加密哈希函数生成地址。例如,通过公钥K得到地址A的计算方式为:

其中SHA256和PIPEMD160被称为双哈希或者HASH160,Base58Check是带有验证功能的Base58编码,验证方式为先计算原始数据(编码前)的验证码,再比较编码后数据的验证码,相同则地址有效,否则无效。而在使用Base58Check编码前,需要对数据做处理。
处理方式为: 版本前缀 + 双哈希后的数据 + 校验码
其中版本前缀是自定义的,如比特币私钥的前缀是0x80,校验码是把版本前缀和双哈希后的数据拼接起来,进行两次SHA256计算,取前4字节。得到处理的数据后,再进行Base58编码,得到最终的结果。

下图是Base58Check版本前缀和Base58编码后的结果

密钥可以采用不同的编码格式,得到的编码后结果虽然不同,但密钥本身没有任何变化,采用哪种编码格式,就看情况而论了,最终目的都是方便人们准确无误的使用和识别密钥。
下图是相同私钥采用不同编码方式的结果:

公钥也有很多种格式,不过最重要的是公钥被分为压缩格式和非压缩格式,带04前缀的公钥为非压缩格式的公钥,而03,02开头的标识压缩格式的公钥。

前面说过,公钥是椭圆曲线上的一个点,由一对坐标(x, y)表示,再加上前缀,公钥可以表示为:前缀 x y。
比如一个公钥的坐标为:

以非压缩格式为例,公钥为(略长):

压缩格式的公钥可以节省一定的存储,对于每天成千上万的比特币交易记录来说,这一点点的节省能起到很大效果。

因为椭圆曲线实际上是一个方程(y2 mod p = (x3 + 7)mod P, y2是y的平方,x3是x的立方),而公钥是椭圆曲线上的一个点,那么公钥即为方程的一个解,如果公钥中只保留x,那么可以通过解方程得到y,而压缩公钥格式有两个前缀是因为对y2开方,会得到正负两个解,在素数p阶的有限域上使用二进制算术计算椭圆曲线的时候,y坐标或奇或偶,所以用02表示y为奇数,03表示y为偶数。

所以压缩格式的公钥可以表示为:前缀x
以上述公钥的坐标为准,y为奇数为例,公钥K为:

不知道大家发现没有,这种压缩方式存在一个问题,即一个私钥可以得出两个公钥,压缩和非压缩公钥,而这两个公钥都对应同一个私钥,都合法,但生成的比特币地址却不相同,这就涉及到钱包软件的实现方式,是使用压缩公钥还是非压缩公钥,或者二者皆用,这个问题后面来介绍。

比特币钱包最主要的功能就是替用户保管比特币私钥,比特币钱包有很多种,比如非确定性(随机)钱包,确定性(种子)钱包。所谓的非确定性是指钱包运行时会生成足够的私钥(比如100个私钥),每个私钥仅会使用一次,这样私钥管理就很麻烦。确定性钱包拥有一个公共种子,单向离散方程使用种子生成私钥,种子足够回收所有私钥,所以在钱包创建时,简单备份下,就可以在钱包之间转移输入。

这里要特别介绍下助记码词汇。助记码词汇是英文单词序列,在BIP0039中提出。这些序列对应着钱包中的种子,种子可以生成随机数,随机数生成私钥,私钥生成公钥,便有了你需要的一切。所以单词的顺序就是钱包的备份,通过助记码词汇能重建钱包,这比记下一串随机数要强的多。

BIP0039定义助记码和种子的创建过程如下:

另外一种重要的钱包叫做HD钱包。HD钱包提供了随机(不确定性) 钥匙有两个主要的优势。
第一,树状结构可以被用来表达额外的组织含义。比如当一个特定分支的子密钥被用来接收交易收入并且有另一个分支的子密钥用来负责支付花费。不同分支的密钥都可以被用在企业环境中,这就可以支配不同的分支部门,子公司,具体功能以及会计类别。
第二,它可以允许让使用者去建立一个公共密钥的序列而不需要访问相对应的私钥。这可允许HD钱包在不安全的服务器中使用或者在每笔交易中发行不同的公共钥匙。公共钥匙不需要被预先加载或者提前衍生,但是在服务器中不具有可用来支付的私钥。

BIP0038提出了一个通用标准,使用一个口令加密私钥并使用Base58Check对加密的私钥进行编码,这样加密的私钥就可以安全地保存在备份介质里,安全地在钱包间传输,保持密钥在任何可能被暴露情况下的安全性。这个加密标准使用了AES,这个标准由NIST建立,并广泛应用于商业和军事应用的数据加密。

BIP0038加密方案是: 输入一个比特币私钥,通常使用WIF编码过,base58chek字符串的前缀“5”。此外BIP0038加密方案需要一个长密码作为口令,通常由多个单词或一段复杂的数字字母字符串组成。BIP0038加密方案的结果是一个由base58check编码过的加密私钥,前缀为6P。如果你看到一个6P开头的的密钥,这就意味着该密钥是被加密过,并需个口令来转换(解码) 该密钥回到可被用在任何钱包WIF格式的私钥(前缀为5)。许多钱包APP现在能够识别BIP0038加密过的私钥,会要求用户提供口令解码并导入密钥。

最通常使用BIP0038加密的密钥用例是纸钱包一一张纸张上备份私钥。只要用户选择了强口令,使用BIP0038加密的私钥的纸钱包就无比的安全,这也是一种很棒的比特币离线存储方式(也被称作“冷存储”)。

P2SH函数最常见的实现时用于多重签名地址脚本。顾名思义,底层脚本需要多个签名来证明所有权,然后才能消费资金。这类似在银行开设一个联合账户。

你可以通过计算,生成特殊的比特币地址,例如我需要一个Hello开头的地址,你可以通过脚本来生成这样一个地址。但是每增加一个字符,计算量会增加58倍,超过7个字符,需要专门的硬件或者矿机来生成,如果是8~10个字符,那么计算量将无法想象。

Ⅳ 比特币ETH是什么意思

比特币是BTC,而ETH是以太坊
比特币(Bitcoin)的概念最初由中本聪在2008年11月1日提出,并于2009年1月3日正式诞生[1]。根据中本聪的思路设计发布的开源软件以及建构其上的P2P网络。比特币是一种P2P形式的虚拟的加密数字货币。点对点的传输意味着一个去中心化的支付系统。
以太坊(英文Ethereum)是一个开源的有智能合约功能的公共区块链平台,通过其专用加密货币以太币(Ether,简称“ETH”)提供去中心化的以太虚拟机(EthereumVirtualMachine)来处理点对点合约。

温馨提示:
1、以上信息仅供参考,不作任何建议;
2、根据《关于防范代币发行融资风险的公告》,我国境内没有批准的数字货币交易平台。根据我国的数字货币监管规定,投资者在自担风险的前提下拥有参与数字货币交易的自由。
应答时间:2021-02-01,最新业务变化请以平安银行官网公布为准。
[平安银行我知道]想要知道更多?快来看“平安银行我知道”吧~
https://b.pingan.com.cn/paim/iknow/index.html

Ⅵ 什么是脚本挖矿


比特币的核心原理是“区块链”,每一个区块对应一个帐单,将所有的区块链接起来就是区块链,任何交易信息和转账记录都记录在区块链中。要注意的是区块链存在于整个互联网中,所以任何比特币持有者都不担心比特币遭受损失。
每隔一个时间点,比特币系统会在系统节点上生成一个随机代码,互联网中的所有计算机都可以去寻找此代码,谁找到此代码,就会产生一个区块,随即得到一个比特币,这个过程就是人们常说的挖矿。
比特币挖矿。
就是用于赚取比特币的电脑,这类电脑一般有专业的挖矿芯片,多采用烧显卡的方式工作,耗电量较大。用户用个人计算机下载软件然后运行特定算法,与远方服务器通讯后可得到相应比特币,是获取比特币的方式之一。
据最新的外媒报道,随着数字货币呈现不断上涨的趋势,为了获取更多的数字货币。黑客入侵网站植入挖矿脚本后利用用户的CPU挖掘数字货币的做法越来越流行。其相关数据统计,目前已有2,496家运行过时软件的网站遭到黑客植入恶意代码,并利用访问者CPU挖掘。非法植入恶意挖矿脚本已成为了黑产的常见途径。

Ⅶ 比特币的加密(秘钥、地址、脚本验证)

https://en.bitcoin.it/wiki/Address

https://www.cnblogs.com/zhaoweiwei/p/address.html
生成方式:

P2PKH的交易脚本

举个真实的例子:
ScriptSig:
PUSHDATA(72)[9701] PUSHDATA(33)
[]

这里面的一个scriptSig由2部分组成,第一部分是签名,第二部分是公钥,PUSHDATA(N),表示要压入栈顶的byte,1个byte表示2个字符,PUSHDATA(72)表示压入144个字符

Output Scripts
HASH160 PUSHDATA(20)[] EQUAL
DUP HASH160 PUSHDATA(20)[] EQUALVERIFY CHECKSIG

第二个找零output地址因为是P2PKH开头的,所以格式和描述的一样

https://www.hibtc.org/2428.html
结合多重签名一起使用
scriptSig: ..signatures... <serialized script>
scriptPubKey: OP_HASH160 <scriptHash> OP_EQUAL

表示一共有n个参与方,只要有m个参与方同意了这笔交易,则这笔交易就生效了,具体的规则是通过scriptHash里面的脚本内容决定的
m-of-n multi-signature transaction:
scriptSig: 0 <sig1> ... <script>
script: OP_m <pubKey1> ... OP_n OP_CHECKMULTISIG

ScriptSig:
0[] PUSHDATA(72)[1201] PUSHDATA(71)[01] PUSHDATA1[]

HASH160 PUSHDATA(20)[] EQUAL

结合P2SH的新特征

https://en.bitcoin.it/wiki/Transaction
目前比特币支持两种类型的交易:Pay-to-PubkeyHash、Pay-to-Script-Hash

验证一笔P2PKH交易的一个输入是否合法:

总结:先验证这笔output是不是属于该用户,再验证该用户的签名是否有效

参考:
https://blog.csdn.net/jerry81333/article/details/56824166

初级版的比特币交易
https://www.jianshu.com/p/a57795ec562c

Ⅷ btc/ltc/eth/etc是什么意思

BTC是比特币
LTC是莱特币
ETH是以太坊
ETC是以太坊经典

Ⅸ 『学概念找员外』门限密码与多重签名

密钥分存还是有一个问题:密钥分存之后,如果后面要用原密钥来签名,那就需要取得子密钥,还原成原密钥,然后才能签名。这个过程有可能被黑客乘虚而入,盗取密钥。

密码学可以解决这个问题。如果子密钥储存在不同的设备中,可以以去中心化的方式还原原密钥,而不是在某台设备上完成,这种技术叫门限签名(threshold signature)技术。典型的例子就是使用双重安全机制的电子钱包(N=2且K=2),如果两个子密钥分别保存在个人电脑和手机上,你可以在电脑上发起付款,这时,电脑会生成一个签名片段,并发送到你的手机上,然后,手机会提示你付款信息(包括收款人、金额等),然后等待你确认。如果你确认了付款信息,这时,手机会利用它的子密钥完成整个签名,然后广播到区块链上。万一黑客控制了你的电脑,试图把比特币转到他的账户,你根据手机上的付款信息就知道有问题了,从而不会确认这笔交易。门限密码涉及的数学细节比较复杂,员外也看不懂,所以就不展开讨论了。

门限签名是密码学中的一项技术,将一个密钥切分成不同片段,分别储存,在交易签名时无须还原原密钥。而多重签名是比特币脚本的特性,把一个比特币账户的控制权交给多个密钥,这些密钥共同保障账户安全。门限签名和多重签名都能克服密钥单点保存的缺陷。

还有另外一种方法可以克服密钥单点保存的缺陷,即多重签名(multisignatures),这个名词在第3章曾出现过。通过比特币脚本,可以直接把一个比特币账户的控制权交给多个密钥,而不是将密钥分存。这些密钥可以保存在不同的地点,并分别生成签名。当然,最终完成的交易的信息还是会保存在某台设备上,但即使黑客控制了这台设备,他所能做的也只不过阻止这个交易被广播到整个网络上去。没有其他设备参与,他无法生成出一个正当有效的多重签名。

举例来说,假设A、B、C、D、E是一家公司的创始人,这家公司有许多的比特币。我们可能会用多重签名来保护这些比特币。这5个人,每人都有一对密钥,我们可以用其中的3个签名来保护冷储存,一笔交易需要5个人中至少3个人的签名才能完成。

这样,只要我们5个人在不同地方且使用不同的安全措施保存各自的密钥,那么比特币就会相当安全。黑客必须盗取我们当中3个人的密钥,才能盗取比特币。即便我们其中一个或两个背弃了我们,他(们)也无法卷款而逃,因为他们还需要另一个签名。同时,如果我们其中一个遗失了密钥,其他人还是可以取出比特币,并转到新的账户,重新设置密码。总而言之,多重签名可以比较妥善地管理在冷储存端的大额比特币,任何重大事项都需要多人的参与才能实现。

上文中,我们说到,人们使用门限签名技术的原因是为了实现双重安全机制或多重安全机制,使用多重签名技术的原因是为了实现多人对共同财产实现共同控制。实际上,这两种技术都可以实现上述两种目的。

热点内容
以太坊怎么挖矿知乎 发布:2025-05-20 22:17:39 浏览:578
比特币会实名交易吗 发布:2025-05-20 22:16:33 浏览:62
比特币生产流程 发布:2025-05-20 21:56:13 浏览:831
算力蜂的算力怎么购买 发布:2025-05-20 21:46:15 浏览:492
国金生态和数字货币有什么关系 发布:2025-05-20 21:46:07 浏览:86
郑州市中心去绿博园直通车 发布:2025-05-20 21:46:07 浏览:273
FIL和比特币谁有价值 发布:2025-05-20 21:38:45 浏览:104
玩币圈刚开始没币怎么玩 发布:2025-05-20 21:33:13 浏览:622
比特币行情怎么看走势图 发布:2025-05-20 21:24:34 浏览:671
比特币第一次加密 发布:2025-05-20 21:24:23 浏览:850