任什麼時候候,看到一個新的去中心化平臺,第一個問題應該是: 它能解決什麼問題? 算法
比特幣在過去六年的崛起證實了區塊鏈技術具備現實世界的價值。 然而,這種技術也有一些缺點,使它不能被用做全球通用的加密貨幣平臺。 一個明顯的缺點是對任何價值的交易都收取交易費的概念。 在快速發展的物聯網產業中,小額支付的重要性將會增長,支付大於價值轉移量的費用是不合理的。安全
2015年,由 David Sonstebo,Sergey Ivancheglo,Dominik Schiener 和 dr. Serguei Popov 共同創立了 IOTA。 IOTA有一個本地代幣 MIOTA,可是也可使用其餘不一樣的加密貨幣單位來衡量價值。 IOTA的固定供應量爲2,779,530,283,277,761枚代幣。 在 IOTA 平臺上,隨着收費的取消,交易速度已經成爲關注的焦點。 這使得 IOTA 成爲與物聯網結合使用的主要區塊鏈技術之一。 IOTA 沒有挖礦,也不會有額外的加密貨幣創造,這也消除了非自願的通貨膨脹。網絡
IOTA的願景是,經過覈實真相和交易的解決方案,使全部鏈接的設備都能使用。這些交易將激勵設備實時提供其屬性和數據。 這催生了全新的通用應用程序和價值鏈。有效的數據是有價值的,而分佈式分類帳是網絡上保證真實性和有效性的完美技術之一。分佈式
IOTA 被稱爲第三代的加密貨幣,實現了一個分佈式分類賬本,引入了有向無環圖的概念,而不是傳統的區塊鏈。 函數
系統的可擴展性意味着什麼呢? 它是系統、網絡或進程可以處理愈來愈多工做負載的能力。 簡單地說,這意味着 IOTA 網絡能夠處理日益增加的工做量,而不會減慢或中止網絡服務。 事實上,經過IOTA的網絡構建方式,使用IOTA的人越多,網速就越快。 這種方法與許多其餘加密方法相矛盾,後者隨着交易的增長,網絡速度會慢下來。區塊鏈
在大多數傳統的區塊鏈技術中,用戶的系統和驗證系統是相互競爭的。 用戶但願得到良好的客戶體驗。 這種體驗包括一個便宜或免費的交易,並且是快速和安全的。 做爲使用其計算能力來挖掘或驗證交易的補償,驗證系統在尋找可能的最高回報。 這種狀況形成了衝突,例如工做量證實和權益證實。 沒有足夠的費用,礦工就沒有動力去操做昂貴的挖礦設備。 若是沒有挖礦,區塊鏈就沒法工做。 從高層次上看,在 IOTA 網絡中,每一個新交易都做爲前兩個交易的驗證。 加密
物聯網是鏈接全部設備的網絡。 鏈接設備的數量只能在任何給定的時間進行估算,可是,物聯網設備的數量增加很是迅速。 IOTA技術正在爲機器對機器的經濟作準備。 一個鏈接智能設備的經濟體將以一種徹底自主的方式相互通訊、支付結算和交易數據。 IOTA將本身定位爲,物聯網數據和價值交換的基礎設施,在這裏,交易能夠在分佈式的環境中安全地執行。進程
IOTA使用一種基於有向無環圖(DAG)的數學概念,叫作 Tangle。 有向無環圖基本上是一個存儲系統,容許相互鏈接。 有向意味着兩個節點之間的全部連接都有一個集合和指定的方向。 無環意味着不可能在結構內部建立循環。資源
下圖是一個簡單的tangel,每一個方塊表明一個交易,也被稱爲一個site。 每一個site包含交易詳情: 發件人,收件人,金額等。 每一個確認的site也將有鏈接到至少2個其餘的site,這些鏈接被稱爲edge。 edge是用來驗證交易。數學
在上圖中,大多數site至少有兩條邊指向它們。 這些site是通過網絡確認的交易。 任何沒有2個edge指向它的site都是一個未確認的交易。
看一個更大的tangle, 接近終點的tangle(圈在紅色)是沒有2個或更多edge的site。 這些site都是新的交易,正在等待確認,稱爲'tangle 的尖端'。
如何將一個新的交易添加到 Tangle 中呢? 新的交易附加到 Tangle 的至少一個尖端上,算法會隨機選擇2個尖端。 發生驗證的過程是爲了確保被驗證的交易與之前的交易不衝突(這能夠防止重複支出)。 若是選擇的尖端之一不是有效交易,則忽略該尖端並放棄該尖端,而後隨機選擇一個新的尖端。 若是一切都檢查正確,新的交易就會附加到2個尖端,並驗證它。 經過這樣作,一個新的交易被添加到tangle和2個待確認的交易。 此外,新的交易成爲一個新的tangle,等待以徹底相同的方式被驗證。
這種技術使 IOTA 具備使人難以置信的可擴展性。 每一個新交易都驗證以前的兩個交易,這意味着 IOTA 實際上因爲使用的增多而變得更快。這與當前許多的區塊鏈平臺徹底相反。
對於傳統區塊鏈交易,一般的作法是使用確認數量來判斷一個塊是否值得信任。 IOTA有一個相似的,但改進過的技術,每一個site被分配一個初始值或本身的權重。 這個數字表示已經作了多少"工做"來驗證這個交易。 權重越大意味着已經作了更多的工做來證實這筆交易。 自權重能夠是一、三、六、9等(3 ^ n)。 每一個site也有一個累積權重,這是它本身的權重加上批准這項交易的全部交易權重的總和。
下圖假設每一個site的初始權重爲1。 在正方形中心的較大數字是site的累計權重,它是連接到它的全部site的總和。 較早的交易一般具備較高的累積權重,這是有意義的,由於它們已經被屢次驗證。
新的交易將經歷三個步驟。第一步是用設備的私鑰簽署交易,這是由設備自動完成的。 IOTA Tangle 使用 Winternitz簽名,這是一種基於哈希值的加密算法,取代了 ECC 橢圓曲線密碼學。 基於 Winternitz 哈希函數的簽名處理速度很快,這是 Tangle 在每秒交易速度方面居於領先地位的一個關鍵緣由。
第二步是確認尖端,新交易使用一個選擇算法來確認2個隨機的之前交易。 這確實須要一點計算能力——啓動交易的設備將新交易與其餘交易協調起來,直到達到特定的真實性評分。
第三步是爲交易進入tangle併成爲一個新的尖端。 一旦交易確認了以前的兩筆交易,它將以尖端的形式進入了tangle,並等待將來的交易確認。
tangle解決了傳統區塊鏈技術的兩個核心問題: 可擴展性和挖礦。IOTA提供了一個網絡,其中每一個新交易的每秒交易量都在增長,這解決了可擴展性的一個核心問題。 理論上,對於 DAG 每秒能夠處理的交易數量是沒有限制的。
交易速度只是可伸縮性的一部分。 可伸縮性的另外一個重要因素是數據存儲。 使用區塊鏈,每每須要整個鏈的完整拷貝,而後才能開始添加新的交易。 2018年9月的時候,比特幣區塊鏈的存儲空間已經接近200gb,並呈指數級增加。 並非全部的設備均可以存儲200gb 的數據,尤爲是物聯網設備。
IOTA的tangle比傳統的區塊鏈要輕得多。建立和驗證交易能夠經過只訪問一小部分的 Tangle 來完成,不須要存儲整個交易鏈。這能夠經過在添加新交易時得到足夠高的累積分數並驗證另外2個交易來實現。 新交易不須要根據網絡上的每一個交易進行驗證,而是根據一些舊交易進行驗證併爲驗證提供足夠的真實性。
區塊鏈經過工做量證實和權益證實,存在挖礦/驗證交易。礦工只有在補償金高於開採成本的狀況下才會將其資源用於挖礦。因爲 IOTA通常沒有挖礦,於是沒有挖礦費,這使得IOTA徹底無償使用成爲可能。
IOTA的目的是在機器對機器的經濟中維護、促進和提供激勵。使用容許可伸縮、接近即時和安全的協議進行價值和信息傳輸。爲了跟上不斷變化的技術和物聯網的發展,這須要提供一個底層的系統基礎設施來支持物聯網,IOTA 有可能填補這個空白嗎?
參考資料:
https://www.iota.org/the-foundation/our-vision
https://en.bitcoinwiki.org/wiki/IOTA#History
https://medium.com/@iotasuppoter/iota-the-hardware-part-a6100b5bb4d5
http://livebitnews.com/featured/iota-or-miota-what-is-the-difference/
(本文編譯自https://achainofblocks.com/2018/09/21/what-is-iota-simply-explained-iot/)