摘自“http://youtu.be/obRzfcvMshM” 視頻講解
1. 數(shù)字簽名
?數(shù)字簽名和交易記錄一一對(duì)應(yīng),記錄修改數(shù)字簽名變更,在對(duì)應(yīng)性的基礎(chǔ)上白魂,還需可鑒別性
采用非對(duì)稱加密法對(duì)sha-256的計(jì)算結(jié)果進(jìn)行加密汽纤,保證交易的可鑒別性(私鑰/公鑰)
2. 去中心化 peer to peer
確認(rèn)付款方有足夠的金額進(jìn)行支付, 所以電子交易的一個(gè)重點(diǎn):每筆交易都必須把以前的交易作為基礎(chǔ)福荸,而不是以余額為基礎(chǔ)
當(dāng)額度不足蕴坪,支付方必須增加一條交易記錄以確保額度 >=? 待支付額度
當(dāng)額度 > 待支付額度,系統(tǒng)會(huì)將余額以支付的方式支付給支付方
3. 轉(zhuǎn)賬記錄的存儲(chǔ)和維護(hù)
Q1:如何同步交易記錄敬锐?
A:當(dāng)比特幣終端登陸后背传,向附近的節(jié)點(diǎn)請(qǐng)求自己沒(méi)有的區(qū)塊,逐一校驗(yàn)交易的合法性滞造、區(qū)塊的合法性续室,當(dāng)確認(rèn)合法后才加入自己的塊鏈中
Q2:如何防止交易記錄被篡改?
A:每個(gè)區(qū)塊都包含上一個(gè)區(qū)塊的sha-256信息谒养,所以區(qū)塊中的任何記錄都不能進(jìn)行修改挺狰。當(dāng)篡改交易后,就會(huì)導(dǎo)致區(qū)塊鏈的斷裂买窟,這個(gè)區(qū)塊鏈也就不是最長(zhǎng)的區(qū)塊鏈
篡改者是否可以不斷的增加區(qū)塊丰泊,來(lái)保證這個(gè)被篡改的區(qū)塊鏈最長(zhǎng)呢?
Q3:如何防止同一筆收入被重復(fù)使用
A:1)礦工會(huì)檢查放入新區(qū)塊的每個(gè)交易記錄中的輸入值是否在前面的區(qū)塊所包含的交易記錄中使用過(guò)始绍;2)如果同時(shí)有兩個(gè)交易記錄瞳购,礦工只認(rèn)可其中一個(gè)交易記錄有效,并只將其加入到新區(qū)塊中
這三個(gè)問(wèn)題由區(qū)塊鏈技術(shù)解決亏推,數(shù)字貨幣網(wǎng)絡(luò)僅僅認(rèn)可并維護(hù)一條區(qū)塊鏈
新區(qū)塊的加入学赛,區(qū)塊內(nèi)的交易才能得到確認(rèn)
新區(qū)塊是由比特幣網(wǎng)絡(luò)上的“礦工”節(jié)點(diǎn)生成
礦工接收發(fā)送到網(wǎng)絡(luò)上的各個(gè)比特幣交易記錄,逐個(gè)檢查交易記錄的合法性
新區(qū)塊制作成功后發(fā)送給網(wǎng)絡(luò)上的各個(gè)節(jié)點(diǎn)吞杭,并添加到區(qū)塊鏈末尾
采用一個(gè)巧妙的方法限制單位時(shí)間內(nèi)生成的新區(qū)塊的數(shù)量
巧妙的方法:成功完成一個(gè)額外的工作后盏浇,才能把生成的區(qū)塊發(fā)布到網(wǎng)絡(luò)上
額外工作:這個(gè)額外的工作,整個(gè)比特幣網(wǎng)絡(luò)一般只有一個(gè)礦工能在10分鐘左右時(shí)間成功完成
這個(gè)額外的工作分2步:
? ? 1. 將新制作的區(qū)塊所包含的內(nèi)容(前一個(gè)區(qū)塊的SHA-256函數(shù)值+這個(gè)新區(qū)塊的基本信息+這個(gè)新區(qū)塊所包含的所有交易記錄)組合成一個(gè)字符串
? ? 2. 找一個(gè)隨機(jī)數(shù)
? ? ? ? 在這個(gè)字符串的末尾添加這個(gè)隨機(jī)數(shù)芽狗,組成新字符串
? ? ? ? SHA-256(新字符串)= 一個(gè)256位的二進(jìn)制數(shù)绢掰,如果這個(gè)256位的二進(jìn)制數(shù)的前72位全是0,才算成功完成了這個(gè)額外的工作
這個(gè)額外的工作難度非常高:
? ? 新字符串 = 前一個(gè)區(qū)塊的SHA-256函數(shù)值+這個(gè)新區(qū)塊的基本信息+這個(gè)新區(qū)塊所包含的所有交易記錄 + 隨機(jī)數(shù)
? ? SHA-256(新字符串) = (前72位全部為0)256位的二進(jìn)制數(shù)
網(wǎng)絡(luò)上的節(jié)點(diǎn)接收童擎、驗(yàn)證滴劲、添加新區(qū)塊
網(wǎng)絡(luò)上接收到這個(gè)新區(qū)塊的所有節(jié)點(diǎn)都做相同的操作:檢查區(qū)塊,符合要求就添加到自己區(qū)塊鏈的末尾
挖礦:尋找符合要求的隨機(jī)數(shù)
找到這個(gè)隨機(jī)數(shù)完全靠運(yùn)氣顾复,但礦工的運(yùn)算能力越強(qiáng)班挖,進(jìn)行sha-256函數(shù)運(yùn)算的速度越快,則運(yùn)氣會(huì)越好
挖礦拼的是運(yùn)算速度:
1. 原始使用個(gè)人計(jì)算機(jī):每秒能進(jìn)行大約60萬(wàn)次sha-256函數(shù)運(yùn)算
2. 使用GPU提高運(yùn)算速度
3. 專用礦機(jī)每秒能進(jìn)行大約10萬(wàn)億次sha-256函數(shù)運(yùn)算
礦工的激勵(lì)措施:
1. 比特幣獎(jiǎng)勵(lì):12.5BTC(2017)
2. 交易費(fèi)收入:區(qū)塊中所有交易的交易費(fèi)捕透,平均余約2BTC(2017)
平均每個(gè)區(qū)塊約14.5BTC聪姿,約合26萬(wàn)美元碴萧,即170萬(wàn)人民幣
問(wèn)題1: 同時(shí)生成多個(gè)新區(qū)塊(區(qū)塊內(nèi)交易記錄會(huì)有差異)哪個(gè)區(qū)塊會(huì)被添加到區(qū)塊鏈中?
? ? ? ? 多個(gè)區(qū)塊同時(shí)會(huì)加載在最后一個(gè)區(qū)塊鏈上末购,等待下一個(gè)新區(qū)塊的出現(xiàn)破喻,新區(qū)塊基于哪一個(gè)沖突區(qū)塊產(chǎn)生,那么該沖突區(qū)塊會(huì)被保留盟榴,其他區(qū)塊會(huì)被刪除
? ? ? ? 因?yàn)槎鄠€(gè)沖突區(qū)塊保存的交易不盡相同曹质,所以某些交易會(huì)被重新確定為未確認(rèn)交易,等待被加入新的交易區(qū)塊中擎场。當(dāng)交易記錄所在的區(qū)塊后面又添加了若干(小額交易1-2個(gè)羽德,大額交易3-6個(gè))新區(qū)塊后,才可以穩(wěn)妥的認(rèn)為本次交易被網(wǎng)絡(luò)確認(rèn)
Q:比特幣是怎么發(fā)行的迅办?
A:新比特幣作為對(duì)礦工的獎(jiǎng)勵(lì)進(jìn)入比特幣網(wǎng)絡(luò)進(jìn)行流通
獎(jiǎng)勵(lì)機(jī)制:
每生成21萬(wàn)個(gè)區(qū)塊宅静,獎(jiǎng)勵(lì)金額減半;如:0-21萬(wàn):50 BTC/塊站欺; 21-42萬(wàn):25 BTC/塊
從第693萬(wàn)個(gè)區(qū)塊開始姨夹,對(duì)礦工的獎(jiǎng)勵(lì)為0,也就是不再有新的比特幣流入比特幣網(wǎng)絡(luò)矾策,到時(shí)磷账,累計(jì)又2100萬(wàn)比特幣流入到了比特幣網(wǎng)絡(luò),礦工的收入將完全來(lái)自每筆比特幣轉(zhuǎn)賬交易的交易費(fèi)贾虽,交易費(fèi)只有比特幣在賬戶之間轉(zhuǎn)移逃糟,不是新產(chǎn)生的比特幣。也就是說(shuō)蓬豁,比特幣網(wǎng)絡(luò)上的比特幣總量永遠(yuǎn)不會(huì)超過(guò)2100萬(wàn)個(gè)
Q:比特幣存在哪里绰咽?
A:比特幣一般存在比特幣客戶端軟件的數(shù)據(jù)文件里,如果把數(shù)據(jù)文件弄丟了地粪,就永遠(yuǎn)的失去了里面的比特幣
Q:比特幣轉(zhuǎn)賬和支付寶轉(zhuǎn)賬的區(qū)別
A:比特幣不是銀行或金融機(jī)構(gòu)發(fā)行的剃诅,使用比特幣不需要綁定銀行卡,不需要任何身份證明驶忌,不要手機(jī)短信確認(rèn),只要能上網(wǎng)笑跛,只要安裝了比特幣客戶端軟件付魔,就可以轉(zhuǎn)賬或收款。所有的轉(zhuǎn)賬不受任何機(jī)構(gòu)監(jiān)督和管理飞蹂,轉(zhuǎn)錯(cuò)了几苍,完全沒(méi)有挽回的余地
Q:比特幣轉(zhuǎn)賬的手續(xù)費(fèi)?
A:比特幣客戶端會(huì)給一個(gè)推薦值或最低值陈哑,具體由支付方自己決定
比特幣所使用的主要技術(shù)和特點(diǎn):
1. 利用SHA-256算法和非對(duì)稱加密法制作數(shù)字簽名
2. 利用區(qū)塊鏈中的區(qū)塊存儲(chǔ)比特幣交易記錄
3. 設(shè)置額外的工作從而控制單位時(shí)間內(nèi)生成區(qū)塊的個(gè)數(shù)妻坝,同時(shí)保護(hù)比特幣網(wǎng)絡(luò)
4. 將已定數(shù)額的比特幣和區(qū)塊內(nèi)的所有交易費(fèi)獎(jiǎng)勵(lì)給成功生成區(qū)塊的礦工伸眶,激勵(lì)更多的礦工加入比特幣網(wǎng)絡(luò),促進(jìn)比特幣網(wǎng)絡(luò)的茁壯成長(zhǎng)
5. 比特幣轉(zhuǎn)賬不依賴銀行或其他金融機(jī)構(gòu)
6. 比特幣網(wǎng)絡(luò)內(nèi)比特幣的總量不會(huì)超過(guò)2100萬(wàn)比特幣