btc數據結構
❶ 比特幣數據結構是怎樣的呢
你好,你問的這個問題相當有水準。
P2P即點對點
問題① 比特幣的交易信息和連接塊存儲在哪?
通俗點說 交易信息等確認 都是通過特殊演算法計算後 隨機 交由曠工驗證的。不存在在哪裡的問題
問題② 有專門的存儲伺服器嗎?
沒有。這就是去中心化。沒有類似央行的發行 管理機構 但它設計之初就有一套約束機制,確保人很難作弊
問題三 和傳統的電子現金沒有什麼區別了呢
沒有發行機構 方便 便捷 跨國際流通 低成本 比特幣可以說是一種革命性的創新。 電子現金顯然不具備可比性。
下面括弧這段引用網路:
(比特幣經濟使用整個P2P網路中眾多節點構成的分布式資料庫來確認並記錄所有的交易行為,並使用密碼學的設計來確保貨幣流通各個環節安全性。P2P的去中心化特性與演算法本身可以確保無法通過大量製造比特幣來人為操控幣值。基於密碼學的設計可以使比特幣只能被真實的擁有者轉移或支付。這同樣確保了貨幣所有權與流通交易的匿名性。比特幣與其他虛擬貨幣最大的不同。)
個人觀點:比特幣確實是一種革命性創新 加密技術 電子貨幣 有不少優點。
但是投資有風險 幣市水更深。 它的價格目前存在較大泡沫,含有炒作 投機成分。
❷ 比特幣如何算出來的
要想了解bitcoin的技術原理,首先需要了解兩個重要的密碼技術: HASH碼:將一個長字元串轉換成固定長度的字元串,並且其轉換不可逆,即不太可能從HASH碼猜出原字元串。bitcoin協議里使用的主要是SHA256。
公鑰體系:對應一個公鑰和私鑰,在應用中自己保留私鑰,並公開公鑰。當甲向乙傳遞信息時,可使用甲的私鑰加密信息,乙可用甲的公鑰進行解密,這樣可確保第三方無法冒充甲發送信息;同時,甲向乙傳遞信息時,用乙的公鑰加密後發給乙,乙再用自己的私鑰進行解密,這樣可確保第三者無法偷聽兩人之間的通信。最常見的公鑰體系為RSA,但bitcoin協議里使用的是lliptic Curve Digital Signature Algorithm。 和現金、銀行賬戶的區別? bitcoin為電子貨幣,單位為BTC。在這篇文章里也用來指代整個bitcoin系統。 和在銀行開立賬戶一樣,bitcoin里的對應概念為地址。每個人都可以有1個或若干個bitcoin地址,該地址用來付賬和收錢。每個地址都是一串以1開頭的字元串,比如我有兩個bitcoin賬戶,和。一個bitcoin賬戶由一對公鑰和私鑰唯一確定,要保存賬戶,只需要保存好私鑰文件即可。 和銀行賬戶不一樣的地方在於,銀行會保存所有的交易記錄和維護各個賬戶的賬面余額,而bitcoin的交易記錄則由整個P2P網路通過事先約定的協議共同維護。 我的賬戶地址里到底有多少錢? 雖然使用bitcoin的軟體可以看到當前賬戶的余額,但和銀行不一樣,並沒有一個地方維護每個地址的賬面余額。它只能通過所有歷史交易記錄去實時推算賬戶余額。 我如何付賬? 當我從地址A向對方的地址B付賬時,付賬額為e,此時雙方將向各個網路節點公告交易信息,告訴地址A向地址B付賬,付賬額為e。為了防止有第三方偽造該交易信息,該交易信息將使用地址A的私鑰進行加密,此時接受到該交易信息的網路節點可以使用地址A的公鑰進行驗證該交易信息的確由A發出。當然交易軟體會幫我們做這些事情,我們只需要在軟體中輸入相關參數即可。 網路節點後收到交易信息後會做什麼? 這個是整個bitcoin系統里最重要的部分,需要詳細闡述。為了簡單起見,這里只使用目前已經實現的bitcoin協議,在當前版本中,每個網路節點都會通過同步保存所有的交易信息。 歷史上發生過的所有交易信息分為兩類,一類為"驗證過"的交易信息,即已經被驗證過的交易信息,它保存在一連串的「blocks」裡面。每個"block"的信息為前一個"bock"的ID(每個block的ID為該block的HASH碼的HASH碼)和新增的交易信息(參見一個實際的block)。另外一類指那些還"未驗證"的交易信息,上面剛剛付賬的交易信息就屬於此類。 當一個網路節點接收到新的未驗證的交易信息之後(可能不止一條),由於該節點保存了歷史上所有的交易信息,它可以推算中在當時每個地址的賬面余額,從而可以推算出該交易信息是否有效,即付款的賬戶里是否有足夠余額。在剔除掉無效的交易信息後,它首先取出最後一個"block"的ID,然後將這些未驗證的交易信息和該ID組合在一起,再加上一個驗證碼,形成一個新的「block」。 上面構建一個新的block需要大量的計算工作,因為它需要計算驗證碼,使得上面的組合成為一個block,即該block的HASH碼的HASH碼的前若干位為1。目前需要前13位為1(大致如此,不確定具體方式),此意味著如果通過枚舉法生成block的話,平均枚舉次數為16^13次。使用CPU資源生成block被稱為「挖金礦」,因為生產該block將得到一定的獎勵,該獎勵信息已經被包含在這個block裡面。 當一個網路節點生成一個新的block時,它將廣播給其它的網路節點。但這個網路block並不一定會被網路接受,因為有可能有別的網路節點更早生產出了block,只有最早產生的那個block或者後續block最多的那個block有效,其餘block不再作為下一個block的初始block。 對方如何確認支付成功? 當該筆支付信息分發到網路節點後,網路節點開始計算該交易是否有效(即賬戶余額是否足夠支付),並試圖生成包含該筆交易信息的blocks。當累計有6個blocks(1個直接blocks和5個後續blocks)包含該筆交易信息時,該交易信息被認為「驗證過」,從而該交易被正式確認,對方可確認支付成功。 一個可能的問題為,我將地址A裡面的余額都支付給地址B,同時又支付給地址C,如果只驗證單比交易都是有效的。此時,我的作弊的方式為在真相大白之前產生6個僅包括B的block發給B,以及產生6個僅包含C的block發給C。由於我產生block所需要的CPU時間非常長,與全網路相比,我這樣作弊成功的概率微乎其微。 網路節點生產block的動機是什麼? 從上面描述可以看出,為了讓交易信息有效,需要網路節點生成1個和5個後續block包含該交易信息,並且這樣的block生成非常耗費CPU。那怎麼樣讓其它網路節點盡快幫忙生產block呢?答案很簡單,協議規定對生產出block的地址獎勵BTC,以及交易雙方承諾的手續費。目前生產出一個block的獎勵為50BTC,未來每隔四年減半,比如2013年到2016年之間獎勵為25BTC。 交易是匿名的嗎? 是,也不是。所有BITCOIN的交易都是可見的,我們可以查到每個賬戶的所有交易記錄,比如我的。但與銀行貨幣體系不一樣的地方在於,每個人的賬戶本身是匿名的,並且每個人可以開很多個賬戶。總的說來,所謂的匿名性沒有宣稱的那麼好。 但bitcoin用來做黑市交易的還有一個好處,它無法凍結。即便警方追蹤到了某個bitcoin地址,除非根據網路地址追蹤到交易所使用的電腦,否則還是毫無辦法。 如何保證bitcoin不貶值? 一般來說,在交易活動相當的情況下,貨幣的價值反比於貨幣的發行量。不像傳統貨幣市場,央行可以決定貨幣發行量,bitcoin里沒有一個中央的發行機構。只有通過生產block,才能獲得一定數量的BTC貨幣。所以bitcoin貨幣新增量決定於: 1、生產block的速度:bitcoin的協議里規定了生產block的難度固定在平均2016個每兩個星期,大約10分鍾生產一個。CPU速度每18個月速度加倍的摩爾定律,並不會加快生產block的速度。 2、生產block的獎勵數量:目前每生產一個block獎勵50BTC,每四年減半,2013年開始獎勵25BTC,2017年開始獎勵額為12.5BTC。 綜合上面兩個因素,bitcoin貨幣發行速度並不由網路節點中任何單個節點所控制,其協議使得貨幣的存量是事先已知的,並且最高存量只有2100萬BTC
❸ 區塊鏈本質是什麼比特幣原理又是什麼二者究竟有何區別
一枚比特幣價格從2萬多美元狂漲到4萬美元。這不由得引起了我的研究興趣,或者說簡單了解了一下比特幣到底是什麼,它的機理具體是什麼樣子的,揭開它的神秘面紗。因此,簡單搜索了一些資料,也對比特幣有些了解,便把手頭上的資料整理了一下。
(3)目的:去中心化,減少風險
中心式網路只有中央伺服器能夠存儲和處理數據,其缺點是工作量大,一旦癱瘓則整個系統癱瘓;數據存儲量大;中央管理者許可權大。
分布式網路中的所有伺服器均能夠存儲和處理數據,各伺服器之間地位平等,可以存儲更多的數據和具有更高的安全性。
大致的科普內容就是這樣,如果還想多了解一些,可以看看中本聰的論文和下面的官方科普視頻。
❹ 比特幣低層區塊鏈技術的特徵
2015年被稱為區塊鏈技術的元年,如今距離比特幣大熱已經過去了兩年多,人們對區塊鏈技術的熱情依然沒有消退,那麼,這神秘的區塊鏈技術究竟是個什麼呢?
區塊鏈技術到底是什麼?
狹義的概念:區塊鏈技術是一種按照時間順序將數據區塊以順序相連的方式組合成的一種鏈式數據結構,並以密碼學的方式保證的不可篡改和不可偽造的分布式賬本。
廣義的概念:區塊鏈技術是利用塊鏈式數據結構來驗證與存儲數據、利用分布式節點共識演算法來生成和更新數據、利用密碼學的方式保證數據傳輸和訪問的安全、利用由自動化腳本代碼組成的智能合約來編程和操作數據的一種全新的分布式基礎架構與計算範式。
人話:區塊鏈技術就是一種全民參與記錄的方式。在區塊鏈系統中,每個人的記錄都能夠得到記錄下來,並將記錄的內容分發到系統內的每個人進行備份。這樣一種去中心化的方式大大提高了系統安全性。
區塊鏈技術有什麼好處?
1、區塊鏈技術具有高度可靠性。
區塊鏈的設計使它能夠有效預防故障和攻擊。由於一個區塊鏈是由一群開放的用戶共享,即使區塊鏈網路中單一節點出現故障,也不會導致其他節點上信息的缺失,其餘的參與者仍然可以照常運行,區塊鏈上的交易傳輸並不會收到影響。
2、區塊鏈具有透明性。
區塊鏈的透明性表現在區塊鏈上的任何數據的更新都會被同步的更新到整個區塊鏈上,區塊鏈網路上的任何數據記錄都能夠在各個節點查詢到。區塊鏈消除了數據的不對稱性,提高了網路節點間的信任度。
3、區塊鏈上存儲的記錄不可改變。
除非區塊鏈上超過50%的節點都對同一記錄進行更改,否則所有數據都不能改變。這降低了交易中的欺詐風險。而且儲存的記錄具有不可撤銷的特徵。當新數據寫入區塊後,新生成的區塊將會被拷貝至區塊鏈中的全部區塊,這樣的流程不可逆轉,因此區塊鏈具有不可撤銷性的特徵。這提高了交易的精度,也簡化了數據處理的流程,更降低了保持數據原始性和交易可追溯性的成本
❺ 什麼是比特幣 區塊鏈
1.比特幣是區塊鏈技術的第一個成功的應用
2.區塊鏈技術是利用塊鏈式數據結構來驗證與存儲數據、利用分布式節點共識演算法來生成和更新數據、利用密碼學的方式保證數據傳輸和訪問的安全、利用由自動化腳本代碼組成的智能合約來編程和操作數據的一種全新的分布式基礎架構與計算範式。
❻ 什麼是比特幣分叉
比特幣中一個區塊的容量就是1M(兆位元組)吧。而一筆交易是250到500位元組之間。
按照這種演算法,那麼一個區塊大約包含的4 194.3(筆)交易。
比特幣中一個區塊確認的時間是10分鍾,那麼一個區塊每秒能處理的7個交易,可能有時候連7筆都達不到。
這樣會造成一什麼後果呢?
比特幣的分叉分為硬分叉和軟分叉。
硬分叉是:指比特幣的區塊格式或交易格式發生改變時,未升級的節點拒絕驗證已經升級的節點生產出的區塊。
已經升級的節點可以驗證未升級節點生產出的區塊,大家各自延續自己認為正確的鏈,所以分成兩條鏈。
什麼是軟分叉呢?
軟分叉是指比特幣交易的數據結構發生改變時,
未升級的節點可以驗證已經升級的節點生產出的區塊,
而且已經升級的節點也可以驗證未升級的節點生產出的區塊。
❼ 比特幣最小單可以買幾個
從目前的技術上來講,比特幣數據結構下一個比特幣可以分割到8位小數,所以比特幣最小單位是0.00000001BTC,但交易的話就不能這么少了。
據比特寶統計,目前國內比特幣交易平台的通用的最小交易單位是0.01BTC,所以樓主提出的0.0001是無法買賣的。
❽ 比特幣交易是如何確認的
比特幣的交易方式
比特幣是類似電子郵件的電子現金,交易雙方需要類似電子郵箱的「比特幣錢包」和類似電郵地址的「比特幣地址」。和收發電子郵件一樣,匯款方通過電腦或智能手機,按收款方地址將比特幣直接付給對方。下列表格,列出了免費下載比特幣錢包和地址的部分網站。
比特幣地址是大約33位長的、由字母和數字構成的一串字元,總是由1或者3開頭,例如""。比特幣軟體可以自動生成地址,生成地址時也不需要聯網交換信息,可以離線進行。可用的比特幣地址超過2個。形象地說,全世界約有2粒沙, 如果每一粒沙中有一個地球,那麼比特幣地址總數遠遠超過所有這些「地球」上的所有的沙子的數量。
比特幣地址和私鑰是成對出現的,他們的關系就像銀行卡號和密碼。比特幣地址就像銀行卡號一樣用來記錄你在該地址上存有多少比特幣。你可以隨意的生成比特幣地址來存放比特幣。每個比特幣地址在生成時,都會有一個相對應的該地址的私鑰被生成出來。這個私鑰可以證明你對該地址上的比特幣具有所有權。我們可以簡單的把比特幣地址理解成為銀行卡號,該地址的私鑰理解成為所對應銀行卡號的密碼。只有你在知道銀行密碼的情況下才能使用銀行卡號上的錢。所以,在使用比特幣錢包時請保存好你的地址和私鑰。
比特幣的交易數據被打包到一個「數據塊」或「區塊」(block)中後,交易就算初步確認了。當區塊鏈接到前一個區塊之後,交易會得到進一步的確認。在連續得到6個區塊確認之後,這筆交易基本上就不可逆轉地得到確認了。比特幣對等網路將所有的交易歷史都儲存在「區塊鏈」(blockchain)中。區塊鏈在持續延長,而且新區塊一旦加入到區塊鏈中,就不會再被移走。區塊鏈實際上是一群分散的用戶端節點,並由所有參與者組成的分布式資料庫,是對所有比特幣交易歷史的記錄 。 中本聰預計,當數據量增大之後,用戶端希望這些數據並不全部儲存自己的節點中。為了實現這一目標,他採用引入散列函數機制。這樣用戶端將能夠自動剔除掉那些自己永遠用不到的部分,比方說極為早期的一些比特幣交易記錄。
❾ 比特幣交易是否有最低標准呢
比特幣以聰為單位,1個比特幣等於1億聰。
從現階段的技術上說,比特幣數據結構下一個比特幣能夠切分成8位小數,因此比特幣最小的單位是0.00000001比特幣,但交易買賣的話就不可以那麼少。
現階段中國虛擬貨幣交易平台的通用的最小買賣單位是0.01比特幣。
如今虛擬貨幣交易服務費也要需要0.01個比特幣,按照EXX的價格,轉賬手續費也在120元上下。
比特幣最小數值為0.00001,連網路成本費都不夠支付,當你僅僅只是購買來玩玩的話,很多外場組織可能都有一定的限定,所以不太可能允許你買幾十塊錢人民幣的比特幣。
而且不同的平台的規定也是不一樣的,要看交易對的深度來決定最小可以買入多少。