前一主題已經介紹了區塊鏈都用到了哪些技術,本主題將逐一介紹。
數據區塊
比特幣的交易記錄會保存在數據區塊之中,比特幣系統中大約每10分鐘會產生一個區塊,每個數據區塊-般包含區塊頭(Header)和區塊體(Body)兩部分
區塊頭封裝了當前的版本號、前一區塊地址、時間戳、隨機數、當前區塊的目標哈希值、Merkle樹的根值等信息。
區塊體中則主要包含交易計數和交易詳情。交易詳情就是比特幣系統中的記賬本,每一筆交易都會被永久地計入到數據區塊中,而且對所有人開放查詢。區塊體中的默克爾樹將會對每一筆交易進行數字簽名,確保每一筆交易都不可偽造且沒有重復交易。
什么是時間戳比特幣時間戳服務器有什么不同
時間戳,英文叫timestamp,最早指的就是一個物理的橡膠戳,扣到一個文件上表示這個文件的發布要早于時間戳上的當前時間。但是本文中我們聊的其實是數字時間戳,后面我們就都簡稱為時間戳了。時間戳就是計算機生成的一個時間,例如某年月日幾點幾分,格式有很多種,但是總之就是一個很簡短的用來表示時間的字符串。
區塊的時間戳其實也只是記錄區塊創建的大概時間,也不能作為判斷交易先后順序的依據。比特幣上的所謂的時間戳服務器,其實就是它的整個POW系統,因為這個系統可以保證系統上每十分鐘就創建一個區塊。同時系統會未每一個區塊計算出哈希,每個區塊中都保存著之前區塊的哈希,有了這些哈希作為定位符,區塊鏈就是一條單向的先后順序明確的鏈條了。每個區塊自然也就有了明確的先后順序,同時也就是意味著里面包含的交易也都有了明確的交易順序,這就是比特幣時間戳服務器的基本原理。
Phoenix Finance 遭到攻擊導致損失 10 萬 USDC:金色財經報道,據 CertiK 監測,3 月 7 日 DeFi 協議 Phoenix Finance 遭到攻擊導致損失約 10 萬 USDC。攻擊者使用假 OPT 代幣借用 USDC,然后將資金橋接到以太坊并存入 Tornado Cash。[2023/3/8 12:49:32]
p2p網絡和共識算法
P2P網絡,字面上的意思就是一種點對點的網絡或是對等就算,在國內也很早就有應用,比如大名鼎鼎的種子,也就是被人們經常使用的迅雷,還有已經消亡的快播,可以說P2P網絡,在你很早之前就已經出現,只是在這里加上了共識算法,進一步的穩定這個對等網絡的安全。
挖礦和工作量證明機制
說到比特幣就不得不提挖礦,而挖礦不是傳統意義上去煤窯里挖礦,而是通過計算機的計算能力和一種特殊的算法模型來實現,同等情況下誰的計算能力和速度快,誰就有機會獲取本次獎勵的機會,而工作量證明就是在挖礦的時候,比特比系統的算法會給一個評價,每一個礦工都是平等的,統一對待,最終只有多個人會獲取本次挖礦的獎勵,也就是每個礦工的工作量證明。在工作量證明之后,也推出了很多新的模式,比如PoS、Dpos等新的權益算法,在后文會一一介紹。
匿名交易機制和比特幣錢包
首先為什么會出現匿名交易機制?當初中本聰在創建比特幣的時候,他作為一個極客,自然對隱私也是很注重的,比如現在10年過去了,仍然沒有人知道中本聰是誰,或許就是這樣的原因讓比特幣附有了匿名交易機制,為了不被追蹤到,當然也是為了個人隱私的防泄漏。
既然有匿名交易,那么就來分析一下傳統意義上的匿名機制和比特比的匿名機制有何區別?首先說傳統的隱私模型,比如股票交易,每一筆成交都會出現一個交易的訂單,而作為托管方是知道交易雙方的信息,只是作為中介不會把信息泄露出去,這就出現了假匿名現象,而比特幣的匿名機制是通過比特幣的去中心化網絡來協調雙方交易,對外可見的信息僅僅只有雙方的錢包地址,而這個地址背后屬于誰并沒有人知道,因此比特幣的匿名相對傳統交易有更健全的匿名機制,但是如果通過交易的地址及交易額做關聯分析,也可以獲得交易者的一點蛛絲馬跡,比特幣的匿名交易并沒有實現完全的匿名交易,目前市面上的匿名交易數字貨幣比較好的有:門羅幣(Monero)、zcash、horizen、grin、verge、komodo、Zcoin等
Aptos生態DeFi協議Thala Labs宣布上線Thala測試網:2月25日消息,Aptos生態DeFi協議Thala Labs宣布Thala測試網已上線,包含兩項核心產品:Move Dollar CDP vaults和ThalaSwap。此外,RWA特定抵押品和清算機制以及L0全鏈(Omnichain)可替代性功能正在積極研究中。
去年10月消息,Thala Labs宣布完成600萬美元種子輪融資,ParaFi Capital、White Star Capital和Shima Capital共同領投,其他投資者包括Beco Capital、LedgerPrime、Saison Capital和Infinity Ventures Crypto。[2023/2/25 12:29:12]
比特幣錢包目前分類有很多中,比如輕錢包、全節點錢包、冷錢包、在線錢包、硬件錢包等,而對于初期投資者而言,如果是需要長期投資,那可以選擇一個冷錢包或一些比較大型機構出的錢包用來長期存儲,比如coinbase、火幣錢包、trustwallet、luno、bitpay,當然也可以直接選擇硬件錢包,比如ledger、keepkay、trezor等,如果你只是玩玩并不是一個忠實的HODL,那么你完全可以在交易所存儲,當然需要是一些知名的大型交易所,比如國內的幣安、火幣、okex、國外的:coinbase、p網、B網、bitmex等平臺,還有一種情況就是,如果你不是一個折騰的人,或者是投資額度比較小,那么用幣安或coinbase、luno直接當存儲也是可以的,用一個去中心化的錢包也是很安全的。
Notice:為什么推薦了幣安,而不是火幣,已經出海和未出海,作為投資者你懂的。
Polygon鏈上加密游戲項目Calvaria完成250萬美元預售輪融資:金色財經報道,加密游戲項目Calvaria宣布已完成250萬美元預售輪融資,旗下開發的玩賺戰斗卡牌策略游戲《Duels of Eternity》將提供可在移動應用商店和 PC 上使用的完整免費游戲 (F2P) 版本,將傳統和休閑游戲玩家帶入區塊鏈。據Calvaria透露,這款游戲基于Polygon區塊鏈構建,他們正計劃組建一支內部電子競技團隊,并邀請大型電子競技品牌參加比賽。(cointelgraph)[2023/1/4 9:51:04]
UTXO和Account模型
UTXO是未花費的交易輸出,它是比特幣交易過程中的單位。除創世區塊以外,所有區塊中的交易會存在若干個輸入和若干個輸出,創世區塊和后來挖礦產生的區塊中給礦工獎勵的交易沒有輸入,除此之外,在比特幣系統中,某筆交易得到輸入必須是另一筆交易未被使用的輸出,同時這筆輸入也需要上一筆輸出地址所對應的私匙進行簽名。當前整個區塊鏈網絡中的UTXO會被存儲在每個節點中,只有滿足了來源于UTXO和數字簽名條件的交易才是合法的。所以區塊鏈系統中的新交易并不需要追溯整個交易歷史,就可以確認當前交易是否合法。優點:計算是在鏈外的,交易本身既是結果也是證明。節點只做驗證即可,不需要對交易進行額外的計算,也沒有額外的狀態存儲。交易本身的輸出UTXO的計算是在錢包完成的,這樣交易的計算負擔完全由錢包來承擔,一定程度上減少了鏈的負擔。除Coinbase交易外,交易的Input始終是鏈接在某個UTXO后面。交易無法被重放,并且交易的先后順序和依賴關系容易被驗證,交易是否被消費也容易被舉證。UTXO模型是無狀態的,更容易并發處理。對于P2SH類型的交易,具有更好的隱私性。交易中的Input是互不相關聯的,可以使用CoinJoin這樣的技術,來增加一定的隱私性。<缺點:無法實現一些比較復雜的邏輯,可編程性差。對于復雜邏輯,或者需要狀態保存的合約,實現難度大,且狀態空間利用率比較低。當Input較多時,見證腳本也會增多。而簽名本身是比較消耗CPU和存儲空間的<ACCOUNT模型對于Account模型,Account模型保存了世界狀態,鏈的狀態一般在區塊中以StateRoot和ReceiptRoot等形式進行共識。交易只是事件本身,不包含結果,交易的共識和狀態的共識本質上可以隔離的。<優點:合約以代碼形式保存在Account中,并且Account擁有自身狀態。這種模型具有更好的可編程性,容易開發人員理解,場景更廣泛。批量交易的成本較低。設想礦池向礦工支付手續費,UTXO中因為每個Input和Out都需要單獨Witnessscript或者Lockingscript,交易本身會非常大,簽名驗證和交易存儲都需要消耗鏈上寶貴的資源。而Account模型可以通過合約的方式極大的降低成本。<缺點:Account模型交易之間沒有依賴性,需要解決重放問題。對于實現閃電網絡/雷電網絡,Plasma等,用戶舉證需要更復雜的Proof證明機制,子鏈向主鏈進行狀態遷移需要更復雜的協議。<Merkle樹
MetaMask Grants DAO公布首批贈款接收方:Agoric和Safeheron:12月23日消息,MetaMask公布其新成立的MetaMask Grants DAO首批贈款接收方,分別為JavaScript智能合約Agoric和數字資產安全存管解決方案提供商Safeheron。Agoric將通過該筆50萬美元的資助繼續開發一系列開源工具。Safeheron將通過該筆3.5萬美元的贈款開發和安全審計MetaMask Flask、Keystone硬件錢包和移動應用程序(MetaMask Mobile或替代品)的密鑰分片解決方案,MetaMask、Safeheron和Keystone已經合作實施2/2 MPC snap,這筆贈款將資助該項目向2/3 MPC snap發展。[2022/12/23 22:03:28]
Merkle樹是一種數據結構中的一種樹,可以是二叉樹,也可以是多叉樹,它具有樹結構的所有特點。merkle樹最早由RalphMerkle在1980年提出,在區塊鏈系統出現之前,曾廣泛用于文件系統和P2P系統中。
梅克爾樹,一般意義上來講,它是哈希大量聚集數據“塊”的一種方式,它依賴于將這些數據“塊”分裂成較小單位的數據塊,每一個bucket塊僅包含幾個數據“塊”,然后取每個bucket單位數據塊再次進行哈希,重復同樣的過程,直至剩余的哈希總數僅變為1:即根哈希。
礦工把區塊內所有交易的哈希值一字排開,讓相鄰的兩個交易哈希值牽手,再算出新哈希。繼續類似的操作直到只剩下頂部的一個節點,即Merkle根,存入區塊頭。礦工驗證、記錄和整理交易的過程稱為“打包”。往上疊加哈希值,直到頂點就完成打包過程。
安全機構:Solana被盜事件黑客已將部分被盜資金轉移至以太坊和波場:8月5日消息,加密貨幣追蹤平臺MistTrack發文表示,Solana生態錢包被盜事件黑客已將部分被盜資金轉移至以太坊和波場,其中大部分被盜資金通過TransitSwap跨鏈完成轉移;TAd4uAHdSVpSjwzfBycmKcQR2UvaW8rVzy地址中的約11,801枚USDT在波場網絡被轉移至個人錢包,可能是通過場外交易OTC交易。此外,黑客的初始Gas費也來自同一個個人錢包。[2022/8/5 12:04:13]
Merkle樹有兩點特別神奇,首先它是逆生長的,先長葉子,然后是樹枝,最后是樹根;其次它的整個形狀也像是一棵樹倒過來的樣子,葉子在最下面保存著所有交易記錄,樹根長在了最上面,存放在區塊頭里。2000多筆交易,需要2000多個葉子節點存放,所以真實的merkle樹要茂盛很多。
雙重支付
雙重支付問題又稱為“雙花”問題,即利用貨幣的數字特性用“同一筆錢”完成兩次或者多次支付。在傳統的金融和貨幣體系中,由于金錢貨幣是物理實體,具有客觀唯一存在的屬性,所以可以避免雙重支付的情況。但在其他的電子貨幣系統中,則需要可信的第三方管理機構提供保證。區塊鏈技術則在去中心化的系統中不借助任何第三方機構而只通過分布式節點之間的相互驗證和共識機制,有效地解決了雙重支付問題,在信息傳輸的同時完成了價值轉移。區塊鏈技術通過區塊鏈接形成的時間戳技術加上驗證比特幣是否滿足UTXO和數字簽名,有效避免了雙重支付的問題。如果有人用同一筆UTXO構造了兩筆付給不同交易方的交易,則比特幣客戶端只會轉發最先被偵聽到的那個。礦工會選擇將那筆交易包入未來區塊,當其中一筆交易所在的區塊后有5個鏈接的區塊,這筆交易已經得到了6次確認。在比特幣區塊鏈上,通常的做法是6次確認后基本上該比特幣被雙花的概率會很小。按照中本聰在比特幣白皮書中的計算,6個確認后雙花的概率大概在0.024%
哈希函數
哈希函數在比特幣系統中也有著重要的應用區塊鏈中的數據并不只是原始數或者交易記錄,還包括它們的哈希函數值,即將原始數據編碼為特定長度的、由數字和母組成的字符串后,記入區塊鏈。哈希函數有著很多適合存儲區塊鏈數據的優點。
1)哈希函數處理過的數據是單向性的,通過處理過的輸出值幾乎不可能計算始的輸入值。
2)哈希函數,例如SHA256,將需要處理的數據分塊,每塊512字節,然后用Merkle-Damgard轉換函數把初始向量256字節)和第一塊做輸入,生成256字節,再作為初始向量與下一數字塊進行Merkle-Damgard轉換,如此重復直到最后最后一個數據塊。最后結果就是一個256字節的哈希值。因此,輸入數據越長,哈希函數處理的時間就越長
3)哈希函數的輸入值即使只相差一個字節,輸出值的結果也會迥然不同。比特幣系統中最常采用的哈希函數是雙SHA256哈希函數,通俗來說就是將不同長度的原始數據用兩次SHA256哈希函數進行處理,再輸出長度為256的二進制數字來進行統一的識別和存儲。總之,哈希函數是比特幣系統中的關鍵技術,為比特幣系統提供了很多便利。本主題后面的章節將會對哈希函數做詳細介紹,此處不贅述。
加秘算法
除了哈希算法以外,比特幣中還存在一種為交易加密的非對稱加密算法。非對稱加密算法指的就是存在一對數學相關的密鑰,使用其中一個密鑰進行加密的數據信息,只有使用另一個密鑰才能對該信息進行解密。這對密鑰中,對外公開的密鑰叫作公鑰,不公開的密鑰就叫作私鑰打個比方來說,公鑰就像銀行的賬戶,私鑰就像是該賬戶的密碼或者賬戶所有者的簽名。區塊鏈之上的有效交易有一個用于交易發起方私鑰簽名有效的數字簽名,而該交易的簽名可以通過使用交易發起方的公鑰進行驗證。公鑰可以通過算法從私鑰中計算得出,但私鑰卻不能從公鑰中推出。比特幣系統中使用的就是一種非常典型的非對稱加密算法—橢圓曲線加密算法。
如上圖所示,比特幣系統一般從操作系統底層的一個密碼學安全的隨機源中取出一個256位隨機數作為私鑰,私鑰總數為256個,所以很難通過遍歷所有可能的私鑰得出與公鑰的對應的私鑰。用戶使用的私鑰還會通過SHA256和Base58轉換成易書寫和識別的50位長度的私鑰,公鑰則首先由私鑰和Secp256k1橢圓曲線算法生成65字節長度的隨機數。一般情況下,比特幣錢包的地址也由公鑰所生成,其生成過程為首先將公鑰進行SHA256和RIPEMD1160雙哈希運算,并生成20字節長度的摘要結果,這個將作為比特幣地址的主體信息,再在前面加上版本前綴0x00,在后面添加4個字節的地址校驗碼。地址校驗碼通過對摘要結果進行兩次SHA256運算,取哈希值的前4位產生。最后通過Base58處理把連在一起的版本前綴、主體信息和校驗碼轉換成可以容易讓人識別的比特幣字符地址。數字簽名
數字簽名就是在信息后面加上另一段內容,作為發送者的證明并且證明信息沒有被篡改。一般是發送者將信息用哈希算法處理得出一個哈希值,然后用私鑰對該哈希值進行加密,得出一個簽名。然后發送者再將信息和簽名一起發送給接收者。接收者使用發送者的公鑰對簽名進行解密,還原出哈希值,再通過哈希算法來驗證信息的哈希值和解密簽名還原出來的哈希值是否一致,從而可以鑒定信息是否來自發送者或驗證信息是否被篡改。參考資料:
知乎
簡書
區塊鏈技術指南--鄒均、張海寧、唐屹、李磊等
Tags:比特幣區塊鏈SHA比特幣中國官網聯系方式40億比特幣能提現嗎比特幣最新價格行情走勢區塊鏈工程專業學什么區塊鏈存證怎么弄區塊鏈技術發展現狀和趨勢SHA價格SHA幣
Dash是一個分散的自治組織,其中生態系統的治理模型和“規則”以及財務決策由投票和挖礦得到Dash通證的人員控制.
1900/1/1 0:00:002月2日,社交媒體巨頭Twitter推出了一款比特幣表情符號,這引發了加密貨幣圈人士的狂歡。據悉,Twitter聯合創始人兼首席執行官杰克·多西(JackDorsey)首先在Twitter上發布.
1900/1/1 0:00:00加密通訊軟體「Telegram」,堪稱加密貨幣社群的「御用」社群平臺。借著廣大用戶支持,Telegram公司在去年12月表示,要開發自己的區塊鏈平臺「TelegramOpenNetwork」,和.
1900/1/1 0:00:00WannaCry,一種“蠕蟲式”的勒索病軟件,大小3.3MB,由不法分子利用NSA泄露的危險漏洞“EternalBlue”進行傳播.
1900/1/1 0:00:00原標題:幣市519 2021年5月19日成了繼去年「3·12」黑天鵝日后又一個令加密資產市場玩家哀嚎的日子.
1900/1/1 0:00:00Loopring在過去24小時的交易中價格下跌了7.97%。加密貨幣目前在過去7個交易日內價格上漲3.41%后以0.0923美元的價格交易.
1900/1/1 0:00:00