比特币的基础知识有哪些比特币的基础知识有哪些呢
大家好,比特币的基础知识有哪些相信很多的网友都不是很明白,包括比特币的基础知识有哪些呢也是一样,不过没有关系,接下来就来为大家分享关于比特币的基础知识有哪些和比特币的基础知识有哪些呢的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!
本文目录
比特币的价值是由什么决定的概括《比特币:一种点对点的电子现金系统》论文的要点比特币相关的基础术语有哪些比特币基础知识 你绝对想不到比特币的价值是由什么决定的比特币具有价值是因为它作为货币形式的一种是有用的。比特币具有货币的数学特性(持久性,可携带性,可互换性,稀缺性,可分割性和易识别性)而非依赖于物理特性(比如黄金和白银)或中央权力机构的信任(比如法定货币)。简而言之,比特币是由数学支持的。有了这些特性,一种货币形式要具有价值所需要的就是信任和使用。对比特币而言,这可以从它日益增长的用户,商家和初创企业基数上得到体现。同所有货币一样,比特币的价值直接来自于愿意接受它作为支付方式的人们,这也是唯一的来源。
比特币的价格由供需决定。当对比特币的需求增加,比特币价格就上涨;需求减少,价格就下跌。目前只有很少的比特币在流通,新的比特币以一个可预见的逐步下降的速率发行,这表示需求必须遵循这一通胀水平才能保持价格的稳定。和它可能会成为的市场规模相比,比特币目前仍然是一个相对较小的市场,无需大量资金就能促使市场价格上下波动,因此,比特币的价格仍然很不稳定。
资料来源:https://m.tuoluocaijing.cn/blockchain/4559.html
概括《比特币:一种点对点的电子现金系统》论文的要点导语
本课堂用通俗易懂的系列内容为大家呈现区块链与密码学领域相关知识。这里有知识也有故事,从感兴趣到有乐趣,点宽课堂等你来学。
这个系列中的课程内容首先从比特币着手进行入门介绍,再延伸至区块链的相关技术原理与发展趋势,然后深入浅出地依次介绍在区块链中应用的各类密码学技术。欢迎大家订阅本公众号,持续进行学习。
【本课堂内容全部选编自PlatON首席密码学家、武汉大学国家网络安全学院教授、博士生导师何德彪教授的《区块链与密码学》授课讲义、教材及互联网,版权归
属其原作者所有,如有侵权请立即与我们联系,我们将及时处理。】1.0
引言
我们先从一组小漫画聊起,先看看帅气的我(咳咳)和小明发生的故事。
-2-
-3-
看完漫画,大家对用区块链记账有了大概了解嘛?其实在区块链运转机制中,当然不能用石头剪刀布啦!而是让全网节点比赛,看谁先算出一个前X位都是0的随机数,谁就获得记账权,我太难了…
举个例子:整个比特币网络要约10分钟才能找出一个前10位都是0的随机数,所以确保同时只有一个节点记账。
而如何确保多方互相都信任呢,第一大家一起“抄作业”,并放在自己的书包里(账本),第二确保“作业”在字迹上盖个印章,确保不被篡改。
说是照抄一遍,其实交易内容是可以被加密的,虽然密文全网同步备份,没有对应的私钥还是看不到——确保了数据私密性和安全性。(没有钥匙休想打开我的作业本!)
而在“作业”上盖章,这个“印章”则是比喻区块正文的对应Hash(Merkel根),Hash相关的知识点在后面的课堂中会讲到,只要正文被篡改了哪怕一丁点儿,Hash就会变得完全不一样,“大家”也就知道正文被篡改了。
就像是篡改作业的笔记,不管是橡皮擦掉、胶条粘掉、还是用涂改液涂掉,都是留下痕迹哦,而这种篡改内容就会被整个区块链系统无情地抛弃。
大家对区块链是不是有一丢丢了解了呢,下面我们言归正传,来看看区块链的“爸爸”比特币的诞生记!
1.1
比特币“破蛋”
2008年11月,一位化名为中本聪(SatoshiNakamoto)的人,在密码学论坛metzdowd.com发表的一篇名为Bitcoin:APeer-to-PeerElectronicCashSystem(《比特币:一种点对点的电子现金系统》)的论文中首先提出了比特币。
2009年1月3日,中本聪发布了比特币系统并挖掘出第一个区块,被称为“创世区块”,最初的50个比特币宣告问世。
(比特币创世区块)
有趣的一点是,中本聪在创世区块中带上了一句话以证明这个区块挖出于2009年1月3日。是什么方式呢?看图~
(2009年1月3日《泰晤士报》头版)
中本聪将2009年1月3日《泰晤士报》中头版的新闻标题——Chancelloronbrinkofsecondbailoutforbanks(《财政大臣正处于第二次救助银行之际》)记在了创世区块中,而当时全球
金融危机正在席卷欧洲,无人幸免。当传统银行在金融海啸中挣扎之际,代表新一代支付方式的比特币创世区块诞生,貌似巧合的事情现在看来却意味深长,仿佛是命运的交接棒。
比特币趣闻之有史以来最贵的比萨
2010年5月22日,美国佛罗里达州程序设计员拉斯洛·豪涅茨(LaszloHanyecz)用10000个比特币,换了棒约翰(PapaJohns)比萨店的一个价值25美元的奶酪比萨。当时用于换取比萨的比特币目前价值高达605,000,000元人民币!
有趣的是,目前棒约翰(PZZA.US)在美股市值约为186亿人民币,10000枚比特币大约占棒约翰总股本的3.2%,妥妥股东前十,一辈子比萨吃不完啦!
备注:比特币价格取自2020年5月11日17:34
截止2022年,比特币运行了13个年头。
比特币无中央管理服务器,无任何负责的主体,无外部信用背书,系统软件全部开源,系统本身分布全球各个角落,就像是一个“三无产品”。
然而神奇的是,这样一个“三无”系统,十余年来一直都在稳定运行,没有发生过重大事故。在比特币运行期间,有大量黑客无数尝试攻克比特币系统,均无功而返。这一点也展示了比特币系统背后技术的完备性和可靠性。
随着比特币价格的一路走高,比特币风暴席卷全球。从比特币背后引申出的区块链技术,也逐渐成为人们探索的对象。希望将这样一个稳定可靠的系统应用到各类企业应用之中。
除了其背后的技术具备的扩展价值,比特币作为一种虚拟资产,也逐渐与现实世界中的法币建立起了“兑换”关系,于是也有了狭义的“价格”,如果从法币角度来看,其更像是一种“商品”。
比特币趣闻之我不叫加密货币
对于以比特币为大哥的众虚拟资产,一直有一个统一的称谓:加密货币(Cryptocurrency)。但加密一词是一个“未完成”的状态,有加密就必然有解密,难道还有解密货币?所以加密货币的称谓其实是一个误区。
Cryptography是“密码学”,包含加密技术和解密技术。消息即为明文,而被加密之后的消息,我们称之为密文。用某种特定的方式方法对其进行“伪装”处理,以隐藏其内容的过程,我们称之为加密(encryption)。当我们将密文转变为明文,这一过程我们称之为解密(decryption),所以Cryptocurrency应该译为“密码货币”。以后大家再见到“加密货币”记得要纠正哦~
【区块链与密码学】课堂第1-1讲今天就讲到这里啦,其实比特币最吸引人的是它十几年间创造的价格神话,比特币为何总是“大涨大跌”?又是谁推动比特币价格十几年间万倍增长?比特币系统完备性和可靠性背后又是靠什么技术支撑?
我们将在之后的第二讲详细拆解比特币背后的技术和比特币价格的细枝末节。敬请期待!
关注点宽学园,每周持续更新区块链系列课程,小宽带你进入区块链世界。
FOLLOWUS
©DigQuant
点击“阅读原文”,登录官网www.digquant.com,一起解锁更多金融科技姿势:涵盖Python、金融基础、量化投资、区块链、大数据、人工智能。DigMore,LearnMore!
比特币相关的基础术语有哪些比特币客户端(钱包):是处理发送和接收比特币的软件。最流行的是从bitcoin官网下载的客户端。还有其他一些选择。
钱包:有两层含义,1、是指比特币客户端(客户端一般指桌面客户端;钱包一般指轻量级的客户端或在线钱包);2、是指存储比特币地址和私钥的文件。
比特币地址:是一个诸如“13ignD31FysQbaBBVJUzffcQoFxxEuEcbE”的字符串,你可以从接收方获得。用客户端创建一个地址同时生成对应的私匙。
私匙:在比特币的背景下,私匙是和对应地址相关联的(从技术上讲,地址是私钥所对应的公钥的哈希值),并且存储在底层,并允许您转移当前地址所拥有的比特币。请注意,因为Bitcoin的使用的ECDSA加密算法,它能够生成从私钥生成对应的公钥和地址。
交易:交易是指一个通知整个比特币网络的信息,告诉全网交易的发生,允许接收者使用这些钱,防止发送者双重支付。
比特币基础知识 你绝对想不到椭圆曲线数字签名算法
椭圆曲线数字签名算法(ECDSA)是使用椭圆曲线对数字签名算法(DSA)的模拟,该算法是构成比特币系统的基石。
私钥
非公开,拥有者需安全保管。通常是由随机算法生成的,说白了,就是一个巨大的随机整数,32字节,256位。
大小介于1~0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141之间的数,都可以认为是一个合法的私钥。
于是,除了随机方法外,采用特定算法由固定的输入,得到32字节输出的算法就可以成为得到私钥的方法。于是,便有了迷你私钥(MiniPrivkey),原理很简单,例如,采用SHA256的一种实现:
privatekey=SHA256()1
迷你私钥存在安全问题,因为输入集合太小,易被构造常见组合的彩虹表暴力破解,所以通常还是使用系统随机生成的比较好,无安全隐患。
公钥
公钥与私钥是相对应的,一把私钥可以推出唯一的公钥,但公钥却无法推导出私钥。公钥有两种形式:压缩与非压缩。
早期比特币均使用非压缩公钥,现大部分客户端已默认使用压缩公钥。
这个貌似是比特币系统一个长得像feature的bug,早期人少活多代码写得不够精细,openssl库的文档又不足够好,导致Satoshi以为必须使用非压缩的完整公钥,后来大家发现其实公钥的左右两个32字节是有关联的,左侧(X)可以推出右侧(Y)的平方值,有左侧(X)就可以了。
现在系统里两种方式共存,应该会一直共存下去。两种公钥的首个字节为标识位,压缩为33字节,非压缩为65字节。以0x04开头为非压缩,0x02/0x03开头为压缩公钥,0x02/0x03的选取由右侧Y开方后的奇偶决定。
压缩形式可以减小Tx/Block的体积,每个TxInput减少32字节。
签名
使用私钥对数据进行签署(Sign)会得到签名(Signature)。通常会将数据先生成Hash值,然后对此Hash值进行签名。签名(signature)有两部分组成:R+S。由签名(signature)与Hash值,便可以推出一个公钥,验证此公钥,便可知道此签名是否由公钥对应的私钥签名。
通常,每个签名会有三个长度:73、72、71,符合校验的概率为25%、50%、25%。所以每次签署后,需要找出符合校验的签名长度,再提供给验证方。
地址
地址是为了人们交换方便而弄出来的一个方案,因为公钥太长了(130字符串或66字符串)。地址长度为25字节,转为base58编码后,为34或35个字符。base58是类似base64的编码,但去掉了易引起视觉混淆的字符,又在地址末尾添加了4个字节校验位,保障在人们交换个别字符错误时,也能够因地址校验失败而制止了误操作。
由于存在公钥有两种形式,那么一个公钥便对应两个地址。这两个地址都可由同一私钥签署交易。
公钥生成地址的算法:
Version=1byteof0(zero);onthetestnetwork,thisis1byteof111
Keyhash=VersionconcatenatedwithRIPEMD-160(SHA-256(publickey))
Checksum=1st4bytesofSHA-256(SHA-256(Keyhash))
BitcoinAddress=Base58Encode(KeyhashconcatenatedwithChecksum)1234
下图是非压缩公钥生成地址的过程:
对于压缩公钥生成地址时,则只取公钥的X部分即可。
推导关系
三者推导关系:私钥
公钥
两个地址。过程均不可逆。拥有私钥便拥有一切,但通常为了方便,会把对应的公钥、地址也存储起来。
交易
比特币的交易(Transation,缩写Tx),并不是通常意义的交易,例如一手交钱一手交货,而是转账。交易由N个输入和M个输出两部分组成。交易的每个输入便是前向交易的某个输出,那么追踪到源头,必然出现一个没有输入的交易,此类交易称为CoinBaseTx。CoinBase类交易是奖励挖矿者而产生的交易,该交易总是位于Block块的第一笔。
拥有一个输入与输出的Tx数据:
Input:
Previoustx:f5d8ee39a430901c91a5917b9f2dc19d6d1a0e9cea205b009ca73dd04470b9a6
Index:0
scriptSig:304502206e21798a42fae0e854281abd38bacd1aeed3ee3738d9e1446618c4571d10
90db022100e2ac980643b0b82c0e88ffdfec6b64e3e6ba35e7ba5fdd7d5
d6cc8d25c6b241501Output:
Value:5000000000
scriptPubKey:OP_DUPOP_HASH160404371705fa9bd789a2fcd52d2c580b65d35549d
OP_EQUALVERIFYOP_CH
ECKSIG12345678910一旦某个Tx的第N个输出成为另一个Tx的输入,那么该笔比特币即为已花费。每个交易有唯一Hash字符串来标识,通过对交易数据做两次SHA256哈希运算而来:
TxHashID=SHA256(SHA256(TxData))1
矿工费
矿工费(TransactionFee)是鼓励矿工将Tx打包进Block的激励报酬。计算一笔交易的矿工费:
TransactionFee=SUM(Inputsamount)-SUM(Outputsamount)1
每笔Tx的矿工费必然大于等于零,否则该笔Tx即为非法,不会被网络接收。
数据块
数据块(Block)是存储BlockMeta与Tx的地方。Block的第一笔Tx总是CoinBaseTx,因此Block中的交易数量总是大于等于1,随后是这段时间内网络广播出来的Tx。
找到合适的Block是一件非常困难的事情,需要通过大量的数学计算才能发现,该计算过程称为“挖矿”。首个发现者,会得到一些比特币作为奖励。
数据链
多个Block连接起来成为数据链(BlockChain)。
为了引入容错与竞争机制,比特币系统允许BlockChain出现分叉,但每个节点总是倾向于选择最高的、难度最大的链,并称之为BestChain,节点只认可BestChain上的数据。
首个Block称为GenesisBlock,并设定高度为零,后续每新增一个Block,高度则递增一。目前是不允许花费GenesisBlock中的比特币的。
每个Block中的Tx在此Block中均唯一
一个Tx通常只会在一个Block里,也可能会出现在多个Block中,但只会在BestChain中的某一个Block出现一次
货币存储
比特币是密码货币、纯数字化货币,没有看得见摸得着的硬币或纸币。一个人持有比特币意味着:
其拥有一些地址的私钥
这些地址是数笔交易的输出,且未花费
所有货币记录均以交易形式存储在整个blockchain数据块中,无交易无货币。货币不会凭空产生,也不会凭空消失。遗失了某个地址的私钥,意味着该地址上的Tx无法签署,无法成为下一个Tx的输入,便认为该笔比特币永久消失了。
货币发行
既然所有交易的输入源头都是来自CoinBase,产生CoinBase时即意味着货币发行。比特币采用衰减发行,每四年产量减半,第一个四年每个block的coinbase奖励50BTC,随后是25btc,12.5btc,并最终于2140年为零,此时总量达到极限为2100万个btc。
减半周期,严格来说,并不是准确的四年,而是每生成210000个block。之所以俗称四年减半,是因为比特币系统会根据全网算力的大小自动调整难度系统,使得大约每两周产生2016个block,那么四年约21万块block。
该函数GetBlockValue()用于计算挖得Block的奖励值:
int64staticGetBlockValue(intnHeight,int64nFees)
{
int64nSubsidy=50*COIN;
//Subsidyiscutinhalfevery210000blocks,whichwilloccurapproximatelyevery4years
nSubsidy=(nHeight/210000);
returnnSubsidy+nFees;
}123456789
当达到2100万btc以后,不再有来自CoinBase的奖励了,矿工的收入来源仅剩下交易的矿工费。此时,每个block的收入绝对值btc很低,但此时比特币应当会非常繁荣,币值也会相当的高,使得矿工们依然有利可图。
杜绝多重支付
传统货币存在多重支付(DoubleSpending)问题,典型的比如非数字时代的支票诈骗、数字时代的信用卡诈骗等。在比特币系统里,每笔交易的确认均需要得到全网广播,并收录进Block后才能得到真正确认。每笔钱的花销,均需要检测上次输入交易的状态。数据是带时间戳的、公开的,BlockChain由巨大的算力保障其安全性。所以比特币系统将货币的多重支付的风险极大降低,几近于零。通过等待多个Block确认,更是从概率上降低至零。一般得到6个确认后,可认为非常安全。但对于能影响你人生的重大支付,建议等待20~30个确认。
匿名性
任何人均可以轻易生成大量的私钥、公钥、地址。地址本身是匿名的,通过多个地址交易可进一步提高匿名性。但该匿名性并不像媒体宣传的那样,是某种程度上的匿名。因为比特币的交易数据是公开的,所以任何一笔资金的流向均是可以追踪的。
不了解比特币的人为它的匿名性产生一些担忧,比如担心更利于从事非法业务;了解比特币的人却因为它的伪匿名性而苦恼。传统货币在消费中也是匿名的,且是法律保障的,大部分国家都不允许个人涂画纸币。
地址本身是匿名的,但你可以通过地址对应的私钥签名消息来向公众证明你拥有某个比特币地址。
其他名词
哈希
哈希(Hash)是一种函数,将一个数映射到另一个集合当中。不同的哈希函数映射的空间不同,反映到计算机上就是生成的值长度不一样。同一个哈希函数,相同的输入必然是相同的输出,但同一个输出却可能有不同的输入,这种情况称为哈希碰撞。
常见的哈希函数有CRC32,MD5,SHA1,SHA-256,SHA-512,RIPEMD-160等,哈希函数在计算中有着非常广泛的用途。比特币里主要采用的是SHA-256和RIPEMD-160。
脑钱包纸钱包
前面提到过的脑钱包与纸钱包,这其实不算是钱包的分类,只是生成、存储密钥的方式而已。脑钱包属于迷你私钥的产物。脑钱包就是记在脑袋里的密钥,纸钱包就是打印到纸上的密钥,仅此而已。
有同学提到过,以一个计算机文件作为输入,例如一个数MB大小的照片,通过某种Hash运算后得到私钥的方法。这个方案的安全性还是不错的,同时可以防止盗私钥木马根据特征扫描私钥。文本形式存储私钥是有特征的,而一个照片文件却难以察觉,即使放在云盘等第三方存储空间中都是安全的。
OK,关于比特币的基础知识有哪些和比特币的基础知识有哪些呢的内容到此结束了,希望对大家有所帮助。