㈠ 區塊鏈技術
背景:比特幣誕生之後,發現該技術很先進,才發現了區塊鏈技術。比特幣和區塊鏈技術同時被發現。
1.1 比特幣誕生的目的:
①貨幣交易就有記錄,即賬本;
②中心化機構記賬弊端——可篡改;易超發
比特幣解決第一個問題:防篡改——hash函數
1.2 hash函數(加密方式)
①作用:將任意長度的字元串,轉換成固定長度(sha256)的輸出。輸出也被稱為hash值。
②特點:很難找到兩個不同的x和y,使得h(x)=h(y)。
③應用:md5文件加密
1.3 區塊鏈
①定義
區塊:將總賬本拆分成區塊存儲
區塊鏈:在每個區塊上,增加區塊頭。其中記錄父區塊的hash值。通過每個區塊存儲父區塊的hash值,將所有的區塊按照順序連接起來,形成區塊鏈。
②區塊鏈如何防止交易記錄被篡改
形成區塊鏈後,篡改任一交易,會導致該交易區塊hash值和其子區塊中不同,發現篡改。
即使繼續篡改子區塊頭中hash值,會導致子區塊hash值和孫區塊中不同,發現篡改。
1.4 區塊鏈本質
①比特幣和區塊鏈本質:一個人人可見的大賬本,只記錄交易。
②核心技術:通過密碼學hash函數+數據結構,保證賬本記錄不可篡改。
③核心功能:創造信任。法幣依靠政府公信力,比特幣依靠技術。
1.5如何交易
①進行交易,需要有賬號和密碼,對應公鑰和私鑰
私鑰:一串256位的二進制數字,獲取不需要申請,甚至不需要電腦,自己拋硬幣256次就生成了私鑰
地址由私鑰轉化而成。地址不能反推私鑰。
地址即身份,代表了在比特幣世界的ID。
一個地址產生之後,只有進入區塊鏈賬本,才能被大家知道。
②數字簽名技術
簽名函數sign(張三的私鑰,轉賬信息:張三轉10元給李四) = 本次轉賬簽名
驗證韓式verify(張三的地址,轉賬信息:張三轉10元給李四,本次轉賬簽名) = True
張三通過簽名函數sign(),使用自己的私鑰對本次交易進行簽名。
任何人可以通過驗證韓式vertify(),來驗證此次簽名是否有由持有張三私鑰的張三本人發出。是返回true,反之為false。
sign()和verify()由密碼學保證不被破解。·
③完成交易
張三將轉賬信息和簽名在全網供內部。在賬戶有餘額的前提下,驗證簽名是true後,即會記錄到區塊鏈賬本中。一旦記錄,張三的賬戶減少10元,李四增加10元。
支持一對一,一對多,多對已,多對多的交易方式。
比特幣世界中,私鑰就是一切!!!
1.6中心化記賬
①中心化記賬優點:
a.不管哪個中心記賬,都不用太擔心
b.中心化記賬,效率高
②中心化記賬缺點:
a 拒絕服務攻擊
b 厭倦後停止服務
c 中心機構易被攻擊。比如破壞伺服器、網路,監守自盜、法律終止、政府幹預等
歷史 上所有有中心化機構的機密貨幣嘗試都失敗了。
比特幣解決第二個問題:如何去中心化
1.7 去中心化記賬
①去中心化:人人都可以記賬。每個人都可以保留完整的賬本。
任何人都可以下載開源程序,參與P2P網路,監聽全世界發送的交易,成為記賬節點,參與記賬。
②去中心化記賬流程
某人發起一筆交易後,向全網廣播。
每個記賬節點,持續監聽、持續全網交易。收到一筆新交易,驗證准確性後,將其放入交易池並繼續向其它節點傳播。
因為網路傳播,同一時間不同記賬節點的交一次不一定相同。
每隔10分鍾,從所有記賬節點當中,按照某種方式抽取1名,將其交易池作為下一個區塊,並向全網廣播。
其它節點根據最新的區塊中的交易,刪除自己交易池中已經被記錄的交易,繼續記賬,等待下一次被選中。
③去中心化記賬特點
每隔10分鍾產生一個區塊,但不是所有在這10分鍾之內的交易都能記錄。
獲得記賬權的記賬節點,將得到50個比特幣的獎勵。每21萬個區塊(約4年)後,獎勵減半。總量約2100萬枚,預計2040年開采完。
記錄一個區塊的獎勵,也是比特幣唯一的發行方式。
④如何分配記賬權:POW(proof of work) 方式
記賬幾點通過計算一下數學題,來爭奪記賬權。
找到某隨即數,使得一下不等式成立:
除了從0開始遍歷隨機數碰運氣之外,沒有其它解法,解題的過程,又叫做挖礦。
誰先解對,誰就得到記賬權。
某記賬節點率先找到解,即向全網公布。其他節點驗證無誤之後,在新區塊之後重新開始新一輪的計算。這個方式被稱為POW。
⑤難度調整
每個區塊產生的時間並不是正好10分鍾
隨著比特幣發展,全網算力不算提升。
為了應對算力的變化,每隔2016個區塊(大約2周),會加大或者減少難度,使得每個區塊產生的平均時間是10分鍾。
#歐易OKEx# #比特幣[超話]# #數字貨幣#
㈡ 比特幣如何防止篡改
比特幣網路主要會通過以下兩種技術保證用戶簽發的交易和歷史上發生的交易不會被攻擊者篡改:
非對稱加密可以保證攻擊者無法偽造賬戶所有者的簽名;
共識演算法可以保證網路中的歷史交易不會被攻擊者替換;
非對稱加密
圖 4 - 51% 攻擊
總結
比特幣使用了非對稱加密演算法,保證攻擊者在有限時間內無法偽造賬戶所有者的簽名;
比特幣使用了工作量證明的共識演算法並引入了記賬的激勵,保證網路中的歷史交易不會被攻擊者快速替換;
㈢ 區塊鏈初始數據如何防止篡改
一旦信息經過驗證並添加至區塊鏈,就會永久的存儲起來,除非能夠同時控制住系統中超過51%的節點,否則單個節點上對資料庫的修改是無效的,因此區塊鏈的數據穩定性和可靠性極高。
㈣ 為什麼區塊鏈可以做到不可篡改
區塊鏈是從零開始有序的鏈接在一起的,每個區塊都指向前一個區塊,稱為前一個區塊的子區塊,前一區塊稱為父區塊。
每個區塊都有一個區塊頭,里邊包含著父區塊頭通過演算法生成的哈希值,通過這個哈希值可以找到父區塊。當父區塊有任何改動時,父區塊的哈希值也發生變化。這將迫使子區塊哈希值欄位發生改變,以此類推,後邊的子子區塊,子子子區塊都會受影響。一旦一個區塊有很多後代以後,除非重新計算此區塊所有後代的區塊,但是這樣重新計算需要耗費巨大的計算量,所以區塊鏈越長區塊歷史越無法改變。
㈤ 區塊鏈技術能有效防止數據的篡改嗎
可以的,它的特點就是在於將數據分布式管理也能夠有效地降低別人對數據篡改的幾率,也實現了個人信息的安全化管理,六度鏈一直推的就是這個。
㈥ 區塊鏈不可篡改的原因
1. 交易不可被篡改
2. 區塊體不可被篡改
3. 區塊頭不可被篡改
4. 區塊鏈不可被篡改
拓展資料:
1、區塊鏈的共識機制具備「少數服從多數」以及「人人平等」的特點,其中「少數服從多數」並不完全指節點個數,也可以是計算能力、股權數或者其他的計算機可以比較的特徵量。「人人平等」是當節點滿足條件時,所有節點都有權優先提出共識結果、直接被其他節點認同後並最後有可能成為最終共識結果。以比特幣為例,採用的是工作量證明,只有在控制了全網超過51%的記賬節點的情況下,才有可能偽造出一條不存在的記錄。當加入區塊鏈的節點足夠多的時候,這基本上不可能,從而杜絕了造假的可能
2、智能合約是基於這些可信的不可篡改的數據,可以自動化的執行一些預先定義好的規則和條款。以保險為例,如果說每個人的信息(包括醫療信息和風險發生的信息)都是真實可信的,那就很容易的在一些標准化的保險產品中,去進行自動化的理賠。在保險公司的日常業務中,雖然交易不像銀行和證券行業那樣頻繁,但是對可信數據的依賴是有增無減。因此,筆者認為利用區塊鏈技術,從數據管理的角度切入,能夠有效地幫助保險公司提高風險管理能力。具體來講主要分投保人風險管理和保險公司的風險監督
3、區塊鏈通過結點連接的散狀網路分層結構,能夠在整個網路中實現信息的全面傳遞,並能夠檢驗信息的准確程度。這種特性一 定程度上提高了物聯網交易的便利性和智能化。區塊鏈+大數據的解決方案就利用了大數據的自動篩選過濾模式,在區塊鏈中建立信用資源,可雙重提高交易的安全性,並提高物聯網交易便利程度。為智能物流模式應用節約時間成本。區塊鏈結點具有十分自由的進出能力,可獨立的參與或離開區塊鏈體系,不對整個區塊鏈體系有任何干擾。區塊鏈 +大數據解決方案就利用了大數據的整合能力,促使物聯網基礎用戶拓展更具有方向性,便於在智能物流的分散用戶之間實現用戶拓展
㈦ 什麼是區塊鏈
什麼是區塊鏈?會對以後的生活帶來什麼樣的改變?
區塊鏈是分布式數據存儲、點對點傳輸、共識機制、加密演算法等計算機技術的新型應用模式。
區塊鏈(Blockchain),是比特幣的一個重要概念,它本質上是一個去中心化的資料庫,同時作為比特幣的底層技術,是一串使用密碼學方法相關聯產生的數據塊,每一個數據塊中包含了一批次比特幣網路交易的信息,用於驗證其信息的有效性(防偽)和生成下一個區塊。
比特幣白皮書英文原版其實並未出現 blockchain 一詞,而是使用的 chain of blocks。最早的比特幣白皮書中文翻譯版中,將 chain of blocks 翻譯成了區塊鏈。這是“區塊鏈”這一中文詞最早的出現時間。
國家互聯網信息辦公室2019年1月10日發布《區塊鏈信息服務管理規定》,自2019年2月15日起施行。
狹義來講,區塊鏈是一種按照時間順序將數據區塊以順序相連的方式組合成的一種鏈式數據結構, 並以密碼學方式保證的不可篡改和不可偽造的分布式賬本。
所以終上所述,這無疑是一個改變生活的新技術,未來的整個社會的生產活動都會以區塊鏈作為底層邏輯展開進行,很多事情我們都可以觸手可及,加上人工智慧和大數據的融入,能讓我們輕松搞定現在看來貌似比較繁瑣的事情,比如一些證券市場的交易,和理財活動的智能化匹配。
通俗易懂的說區塊鏈是將人財物,人機物、人場貨一體化,打包做成一個整體;把它放在一個基礎設施上來運行的網路計算中心。
㈧ 區塊鏈的問題
區塊鏈有一定用處,但絕非萬能。
區塊鏈主要有兩個問題。
1 區塊鏈無法驗證系統以外的信息真偽,如果上傳區塊鏈的信息本身就是假的,區塊鏈的防偽防篡改就毫無價值。若要保證上傳信息真實,還是要有一個權威機構把關。既然都相信這個權威機構上傳的信息了,為什麼又要害怕它篡改信息呢?用不用區塊鏈又有啥區別呢?
2 在區塊鏈世界裡,代碼就是法律,系統可自動運行,但是,一旦與現實世界交互,現實世界可就不一定認同代碼的法律了。比如,區塊鏈上簽了一份合同,到期自動執行,劃轉資產,但是,現實中若有老賴,不按區塊鏈上合同執行現實中的資產劃轉,這合同就是一紙空文,還得現實中的法院等機構出手。
區塊鏈第一個落地應用,比特幣,之所以有如此大的影響力,是因為它剛好可以避開上述兩個問題。
比特幣完全是自成一系的,所有信息都產生於比特幣系統內部,具有封閉性和可驗證性,比特幣不與任何現實資產掛鉤,所以才能便捷地通過程序自動運行。
比特幣由於其完全虛擬,完全靠程序和規則運行,所以無國界,不受監管控制,無需匯兌,自由流通,無法凍結沒收,人人可用,不會超發貶值,這是它相對於法幣的優勢。
但是,正因為比特幣完全靠定死了的規則和程序自動運行,比特幣供給沒有彈性,若私鑰被盜財產就會丟失,且無法追回,這也是它的缺點。
同樣,現實中運用區塊鏈技術,如果真的追求代碼就是法律,私鑰證明一切的話,若私鑰被盜,必然會導致資產丟失無法追回。比如,將股份映射到區塊鏈上,難不成某一大股東的私鑰丟了,他的股份也就全部用不了了嗎?這也是區塊鏈無法迴避的問題。
綜上,區塊鏈真正的殺手鐧應用,其實就是加密貨幣。搞無幣區塊鏈,並沒有那麼大的顛覆性作用,而且要慎防一些騙子打著區塊鏈的旗號騙錢騙補貼。
#數字貨幣# #比特幣[超話]#
㈨ 區塊鏈技術中的去中心化的特徵是什麼
區塊鏈技術中的去中心化的特徵是去中心化、去信任、集體維護。
1、去中心化:整個網路沒有中心化的硬體或者管理機構,任意節點之間的權利和義務都是均等的,且任一節點的損壞或者失去都會不影響整個系統的運作。因此也可以認為區塊鏈系統具有極好的健壯性。
2、去信任:參與整個系統中的每個節點之間進行數據交換是無需互相信任的,整個系統的運作規則是公開透明的,所有的數據內容也是公開的,因此在系統指定的規則范圍和時間范圍內,節點之間是不能也無法欺騙其它節點。
3、集體維護:系統中的數據塊由整個系統中所有具有維護功能的節點來共同維護的,而這些具有維護功能的節點是任何人都可以參與的。
(9)區塊鏈防修改擴展閱讀
區塊鏈技術從來就不排斥監管,監管節點可以方便地接入任何一個區塊鏈網路。由於區塊鏈的公開透明特性,監管機構反而可以更加方便地監控整個系統的交易數據,而且由於區塊鏈的防篡改特性。
交易一旦發生後即不可更改、不可刪除,那種數據造假蒙蔽監管的情況就不可能發生了,更有利於監管機構對市場行為進行監督。由此可見,區塊鏈將成為監管科技(RegTech)的重要工具。
參考資料來源:網路-區塊鏈
㈩ 區塊鏈:防篡改的哈希加密演算法
同學A和B在教室里拋硬幣,賭誰打掃衛生,正面朝上,則A打掃,反面朝上,則B打掃,這個策略沒有什麼問題。
然而,如果把情景遷移到網路聊天室,A和B同樣進行拋硬幣的游戲,估計B就不會答應了,因為當A拋了硬幣,B不論是猜
正面還是反面,A都可以說B猜錯了。
怎麼解決這個問題呢?要不先給拋硬幣的結果加密,B再猜?這個方法可以試一下。
假設任意奇數代表硬幣正面,任意偶數代表反面。A想一個數375,然後乘以一個258,把其結果告訴B為96750,並聲明A想的375為密鑰,由他保管。
在接下來驗證結果時,A可以謊稱258為他想的數,375為密鑰,A還是立於不敗之地。那如果A事先把密鑰告訴B呢?B可以直接算出原始數字,失去了保密作用。
這種知道加密方法就知道了解密方法顯然行不通,那有沒有一種方法,知道了加密方法仍然無法恢復原文呢?
顯然是有的,在加密過程中加入不可逆運算就OK了。A設計新的加密方式:
假設A想的數是375,進行加密:
B拿到結果120943,但他幾乎不能根據120943反算出密匙375。
如果B想要驗證A是否說謊:
終於可以拋硬幣了……
這種丟掉一部分信息的加密方式稱為「單向加密」,也叫 哈希演算法 。
有個問題:
這個是有可能的,但可以解決,就是增加上述演算法的難度,以致於A很難很難找到。
根據以上表述,一個可靠的哈希演算法,應該滿足:
密碼學中的哈希函數有3個重要的性質,即 抗碰撞性、原像不可逆、難題友好性 。
碰撞性,就是指A同學事先找出一奇一偶使得哈希結果一致,在計算上是不可行的。
首先,把大空間桑拿的消息壓縮到小空間上,碰撞肯定是存在的。假設哈希值長度固定為256位,如果順序取1,2,…2 256 +1, 這2 256 +1個輸入值,逐一計算其哈希值,肯定能找到兩個輸入值使得其哈希值相同。
A同學,看到這里時, 請不要高興的太早。因為你得有時間把它算出來,才是你的。為什麼這么說呢?
根據生日悖論,如果隨機挑選其中的2 130 +1輸入,則有99.8%的概率發現至少一對碰撞輸入。那麼對於哈希值長度為256為的哈希函數,平均需要完成2 128 次哈希計算,才能找到碰撞對。如果計算機每秒進行10000次哈希計算,需要約10 27 年才能完成2 128 次哈希計算。
A同學,不要想著作弊了,估計你活不了這么久。當然如果計算機運算能力大幅提升,倒是有可能。
那麼完整性還用其他什麼用途呢?
用來驗證信息的完整性,因為如果信息在傳遞過程中別篡改,那麼運行哈希計算得到的哈希值與原來的哈希值不一樣。
所以,在區塊鏈中,哈希函數的抗碰撞性可以用來做區塊和交易的完整性驗證。
因為一個哈希值對應無數個明文,理論上你並不知道哪個是。就如,4+5=9和2+7=9的結果一樣,知道我輸入的結果是9,但能知道我輸入的是什麼數字嗎?
如果,對消息m進行哈希計算時,在引入一個隨機的前綴r,依據哈希值H(r||m),難以恢復出消息m,這代表該哈希函數值隱藏了消息m。
所以,B同學,根據結果想反推出原數據,這是不大可能的事,就猶如大海里撈針。
難題好友性,指沒有便捷的方法去產生一滿足特殊要求的哈希值。是什麼意思呢,通俗的講,就是沒有捷徑,需要一步一步算出來。假如要求得到的哈希結果以若干個0開頭,那麼計算找到前3位均為0的哈希值和找到前6位均為0的哈希值,其所需的哈希計算次數是呈一定數量關系。
這個可以怎麼用呢?在區塊鏈中,可以作為共識演算法中的工作量證明。
主要描述了哈希函數的3個重要性質: 抗碰撞性、原像不可逆、難題友好性 。
因為這些重要性質,區塊鏈中的區塊和交易的完整性驗證、共識演算法的工作量證明等功能用哈希函數來實現。
[1].鄒均,張海寧.區塊鏈技術指南[M].北京:機械出版社,2016.11
[2].長鋏,韓鋒.區塊鏈從數字貨幣到信用社會[M].北京:中信出版社,2016.7
[3].張健.區塊鏈定義未來金融與經濟新格局[M].北京:機械工業出版社,2016.6