240 發(fā)簡(jiǎn)信
IP屬地:江蘇
  • @輪子偷盜者 請(qǐng)注明轉(zhuǎn)載出處

    區(qū)塊的持久化之BoltDB(一)

    在前面文章中,我們介紹說(shuō)Bitcoin網(wǎng)絡(luò)通過(guò)PoW共識(shí)以及選擇最長(zhǎng)鏈為主鏈來(lái)逐步達(dá)到共識(shí)结澄,使得網(wǎng)絡(luò)中各節(jié)點(diǎn)本地的區(qū)塊鏈最終保持一致捶障;同時(shí)恭取,交易時(shí)節(jié)點(diǎn)會(huì)根據(jù)解鎖腳本與鎖定腳本...

  • @Kevin陳大大 不可以,它只支持單一文件掏湾。

    區(qū)塊的持久化之BoltDB(五裹虫、完結(jié)篇)

    在上篇文章《區(qū)塊的持久化之BoltDB(四)》中,我們分析了讀寫(xiě)Transaction Commit時(shí)的各個(gè)步驟融击,其中重要的是與Bucket對(duì)應(yīng)的B+Tree節(jié)點(diǎn)的旋轉(zhuǎn)與分裂...

  • 如果節(jié)點(diǎn)重啟筑公,側(cè)鏈相關(guān)的utxo會(huì)丟失,會(huì)發(fā)生這種情況尊浪。

    Btcd區(qū)塊鏈的構(gòu)建(五)

    在《Btcd區(qū)塊鏈的構(gòu)建(三)》[http://www.reibang.com/p/06fe9de09172]和《Btcd區(qū)塊鏈的構(gòu)建(四)》[https://www.ji...

  • 區(qū)塊鏈的一致在于區(qū)塊和utxoset的一致匣屡,這里說(shuō)側(cè)鏈只存在于內(nèi)存中,嚴(yán)格來(lái)講是指對(duì)應(yīng)的utxos只在內(nèi)存中拇涤,不會(huì)寫(xiě)入db捣作。在maybeAcceptBlock中區(qū)塊還是會(huì)寫(xiě)入磁盤(pán)。

    Btcd區(qū)塊鏈的構(gòu)建(五)

    在《Btcd區(qū)塊鏈的構(gòu)建(三)》[http://www.reibang.com/p/06fe9de09172]和《Btcd區(qū)塊鏈的構(gòu)建(四)》[https://www.ji...

  • 對(duì)于一個(gè)"正常"節(jié)點(diǎn)鹅士,它打包的塊中的交易"花費(fèi)"的utxo券躁,肯定是主鏈上的塊中的交易的輸出,所以如果主鏈?zhǔn)且恢碌牡糁眩M管接收節(jié)點(diǎn)收到的塊是側(cè)鏈也拜,但其中的交易的input utxo一定要主鏈上;如果查找失敗趾痘,說(shuō)明主鏈不一致或者是惡意交易搪泳。

    Btcd區(qū)塊鏈的構(gòu)建(四)

    上一篇文章我們介紹了maybeAcceptBlock()中將區(qū)塊連入主鏈的主要步驟,其中checkConnectBlock()在區(qū)塊最終寫(xiě)入主鏈前作了較為復(fù)雜的檢查扼脐,本文將對(duì)...

  • 謝謝指出岸军,已經(jīng)更正。

    Btcd區(qū)塊鏈協(xié)議消息解析

    介紹完Bitcoin P2P網(wǎng)絡(luò)的組網(wǎng)機(jī)制后瓦侮,本文將介紹Peer之間交換的協(xié)議消息艰赞。Bitcoin節(jié)點(diǎn)將Transaction和Block在全網(wǎng)廣播,就是通過(guò)在Peer與Pe...

  • @lifeok 但是兩個(gè)coinbase肯定不一樣了

    Btcd區(qū)塊鏈的構(gòu)建(四)

    上一篇文章我們介紹了maybeAcceptBlock()中將區(qū)塊連入主鏈的主要步驟肚吏,其中checkConnectBlock()在區(qū)塊最終寫(xiě)入主鏈前作了較為復(fù)雜的檢查方妖,本文將對(duì)...

  • 謝謝,我更正一下罚攀。

    Btcd區(qū)塊鏈的構(gòu)建(五)

    在《Btcd區(qū)塊鏈的構(gòu)建(三)》[http://www.reibang.com/p/06fe9de09172]和《Btcd區(qū)塊鏈的構(gòu)建(四)》[https://www.ji...

  • @lifeok 區(qū)別就在于党觅,undo coinbase交易時(shí)雌澄,redo不可能恢復(fù);undo非coinbase交易時(shí)杯瞻,redo可能恢復(fù)镐牺。

    Btcd區(qū)塊鏈的構(gòu)建(四)

    上一篇文章我們介紹了maybeAcceptBlock()中將區(qū)塊連入主鏈的主要步驟,其中checkConnectBlock()在區(qū)塊最終寫(xiě)入主鏈前作了較為復(fù)雜的檢查魁莉,本文將對(duì)...

  • @lifeok coinbase交易與非coinbase交易的一個(gè)主要差別在于coinbase是出塊的時(shí)候產(chǎn)生并隨著block一起傳播的睬涧,而非coinbase交易產(chǎn)生后會(huì)在全網(wǎng)flooding,也就是說(shuō)非coinbase交易可能被不同的“礦工”打包進(jìn)不同的區(qū)塊旗唁,而coinbase交易產(chǎn)生后就在固定的區(qū)塊中畦浓。當(dāng)發(fā)生“分叉攻擊”時(shí),如果coinbase交易所在的區(qū)塊被從主鏈上刪除检疫,會(huì)導(dǎo)致該coinbase交易變成“unspendable”讶请,以及從該coinbase開(kāi)始的交易鏈無(wú)效;在分叉后屎媳,非coinbase交易可能被找包到了新的區(qū)塊中夺溢,使得他的UTXO仍然在utxoset中,仍然是“spendable”狀態(tài)剿牺。從這一點(diǎn)上講,必須保證coinbase交易有足夠多的確認(rèn)环壤,防止分叉后被從主鏈移除晒来。

    Btcd區(qū)塊鏈的構(gòu)建(四)

    上一篇文章我們介紹了maybeAcceptBlock()中將區(qū)塊連入主鏈的主要步驟,其中checkConnectBlock()在區(qū)塊最終寫(xiě)入主鏈前作了較為復(fù)雜的檢查郑现,本文將對(duì)...

  • @lifeok 刪除主鏈上的塊時(shí)湃崩,將區(qū)塊交易的輸出引用的utxoentry與要恢復(fù)的交易輸入引用的utxoentry并不一樣。utxoset記錄了tx hash與utxoentry之映射接箫,所在在處理當(dāng)前塊的時(shí)候攒读,可以根據(jù)塊中的交易hash從utxoset中查找到utxoentry;但是交易輸入引用的utxoentry所對(duì)應(yīng)的tx并不一定在當(dāng)前區(qū)塊中辛友,如果不通過(guò)utxoset或者spendjournal薄扁,就需要在鏈上查找對(duì)應(yīng)的交易。

    Btcd區(qū)塊鏈的構(gòu)建(五)

    在《Btcd區(qū)塊鏈的構(gòu)建(三)》[http://www.reibang.com/p/06fe9de09172]和《Btcd區(qū)塊鏈的構(gòu)建(四)》[https://www.ji...

  • 在(view *UtxoViewpoint) connectTransaction()方法中废累,我們可以看到spendjournal是通過(guò)交易輸入引用的utxoentry得到的邓梅,區(qū)塊連上主鏈后,區(qū)塊中交易花費(fèi)的utxoentry如果被fully spent邑滨,將被從utxoset中移除日缨,所以恢復(fù)的時(shí)候無(wú)法從輸入引用的utxoentry得到。同時(shí)掖看,uxtoset和spendjournal均是在數(shù)據(jù)庫(kù)Bucket中的K/V對(duì)直接記錄了tx hash或者block hash到utxoentry或spentTxOuts的映射匣距,所以在操作utxoset或者spendjornal時(shí)面哥,均不需要搜索區(qū)塊文件來(lái)定位區(qū)塊或者區(qū)塊中的交易,從而加快查找的過(guò)程毅待。

    Btcd區(qū)塊鏈的構(gòu)建(五)

    在《Btcd區(qū)塊鏈的構(gòu)建(三)》[http://www.reibang.com/p/06fe9de09172]和《Btcd區(qū)塊鏈的構(gòu)建(四)》[https://www.ji...

  • 120
    Btcd區(qū)塊鏈的構(gòu)建(總結(jié)篇)

    在《Btcd區(qū)塊鏈的構(gòu)建》系列文章中尚卫,我們展開(kāi)介紹了ProcessBlock()中的各個(gè)步驟,它主要包含三個(gè)步驟:一是對(duì)區(qū)塊進(jìn)行完整性檢查恩静;二是檢查區(qū)塊是否滿足寫(xiě)入?yún)^(qū)塊鏈的各...

  • 120
    Btcd區(qū)塊鏈的構(gòu)建(五)

    在《Btcd區(qū)塊鏈的構(gòu)建(三)》[http://www.reibang.com/p/06fe9de09172]和《Btcd區(qū)塊鏈的構(gòu)建(四)》[https://www.ji...

  • 120
    Btcd區(qū)塊鏈的構(gòu)建(四)

    上一篇文章我們介紹了maybeAcceptBlock()中將區(qū)塊連入主鏈的主要步驟焕毫,其中checkConnectBlock()在區(qū)塊最終寫(xiě)入主鏈前作了較為復(fù)雜的檢查,本文將對(duì)...

亚洲A日韩AV无卡,小受高潮白浆痉挛av免费观看,成人AV无码久久久久不卡网站,国产AV日韩精品