三分鐘帶你了解比特幣的數學原理!

2020-12-22 電子發燒友

三分鐘帶你了解比特幣的數學原理!

工程師2 發表於 2018-04-19 15:48:00

2017年已然逝去,過去的一年人類對於科技再度狂熱,但是狂熱所引發的思潮卻指向了截然不同的方向。

一個爆炸性的突破是引力波被實驗證實,從而驗證了愛因斯坦廣義相對論的預言。數十年前,韋伯的引力波實驗就已經家喻戶曉,但是其宣布的幾次探測到的引力波沒有得到世間公認。韋伯的歷史角色一直在科學殉道者和江湖郎中之間徘徊。這次引力波探測成功,無疑將韋伯定義為歷史先驅,使得他多舛的命運被賦予上悲劇英雄的色彩;同時,這也宣示著人類理性思維的巨大成功。愛因斯坦廣義相對論的建立遵循了經典理論研究途徑,從公理體系的建立,到嚴格數學推理,直至精確物理預言,最後由實驗檢驗;數學推理中抽象的黎曼幾何超越了人類直覺,真正指導愛因斯坦建立恢弘體系的是對理論體系內在和諧性的審美。

另一個顛覆性的進展是人工智慧,特別是機器學習的熱潮。這幾年來,機器學習的知識技巧鋪天蓋地而來,學生每天都被各種學術廣告所衝擊,眼花繚亂、難以適從,終日處於被時代拋棄的焦慮之中。經過數年的學術訓練後,依然無法對於問題進行數學建模、理論分析,取而代之的是「端到端」的訓練技巧。這種基於經驗統計的「鍊金術」是否最終會被嚴格理論所闡發和提煉,目前仁者見仁,智者見智。靜待泡沫散去,時光自會蒸餾出醇酒。

第三個狂潮卻饒有興味,比特幣和區塊鏈。年末比特幣市場日趨狂熱,日益脫離數字貨幣的初心,淪為豪賭的工具。雖然人類對於金錢的追求日益非理性,但是中本聰設計的比特幣網絡協議卻是基於人類理性的假設。人類歷史上,金融交易系統都是建立在信任基礎之上的,一直存在可信賴的中心機構來認證個人擁有的財富值,來認證每筆交易的正確性。而比特幣卻顛覆了這兩點:比特幣系統不需要信任機構作為中心;比特幣系統具有不可追蹤性,無法從帳戶地址推斷所有者。這種數字貨幣系統是基於如下的兩個理性假設:首先,比特幣網絡上「好人」永遠多於「壞人」;其次,基於橢圓曲線的加密算法是安全的,無法被輕易破解。

橢圓曲線理論的興起得益於費馬大定理(Fermat『s Last Theorem)的證明。費馬猜測方程當n大於2時,不存在整數解。這一猜測猶如萬丈絕壁,橫亙在數論發展的歷史道路上長達三百餘年。最關鍵的突破來自於橢圓曲線。谷山豐提出的谷山-志村猜測建立了橢圓曲線和模形式(某種周期性全純函數)之間的重要聯繫。谷山豐雖然洞察到了天機,但是無法證明,三十出頭蹈海而逝,其新婚的妻子也殉情自殺。後來,安德魯。懷爾斯(Andrew Wiles)證明了谷山-志村猜測的一部分,從而證明了費馬大定理。費馬定理的證明自然是人類思想史上的豐碑,谷山為數學殉道,終成千古絕唱;懷爾斯數十年如一日痴心追夢,令人景仰。但是,在那時,無人會預料費馬定理證明所孕育的橢圓曲線理論會有一日成為比特幣網絡的基礎。

數學上愈是艱深的理論,轉換成算法愈是難以破解,因此也是愈發安全。在有限域上,橢圓曲線所定義的代數簇(解的點集)是一個有限的離散點集。每條橢圓曲線和直線有三個交點,我們將其理解為三個點之和為0,如此在代數簇上定義了一個群結構。在這個群中,我們可以構造一些容易檢驗但是難以求解的問題,所謂單向函數,例如離散對數。這些單向函數用於數字籤名,使得用戶容易驗證,但是無法偽造,由此構成了比特幣協議的基礎。數學上,對於橢圓曲線群結構的理解,對於比特幣系統至關重要。

橢圓曲線的加法群

橢圓曲線具有形式 ,多項式方程有相異根的充要條件是非零。我們考察代數簇這裡是無窮遠點。

圖1. 橢圓曲線上的加法

如圖1所示,我們考慮定義在實數域上的一條橢圓曲線,它和過點P,Q的直線交於第三個點R,過R做鉛直線,鉛直線和橢圓曲線交於第四個點。第四個點和R互反,記為。那麼,我們定義加法 。經過簡單代數運算,我們得到如此定義的加法使得橢圓曲線上所有的點構成一個加法群,無窮遠點為單位元。圖2. 橢圓曲線上的乘法。

圖2顯示了橢圓曲線上的乘法。如果我們過點G做切線,切線交橢圓曲線於-2G,經過反射得到2G。如此,我們可以定義4G,8G等等。

以上的幾何運算可以直接轉換成代數運算。令,過兩點的直線為,這裡那麼。由此,我們看到如果橢圓曲線的係數A和B在某個域K中,的坐標也在域K中,那麼和的坐標也在域K中。由此,龐加萊(Poincare)證明了實數域上橢圓曲線E(R)上所有坐標在K中的點E(K)(並上無窮遠點)構成子群。

複數域上的橢圓曲線-黎曼面

如果橢圓曲線的域為複數域,那麼橢圓曲線的代數簇構成一張黎曼面,虧格為一的拓撲輪胎。首先我們定義一個格點,那麼輪胎是商空間。

圖4. 複數域上的橢圓曲線。

我們定義威爾斯特拉斯p-函數,(Weierstrass p-function),那麼我們令則。這裡威爾斯特拉斯p-函數是雙周期函數,滿足周期性條件。

這時,橢圓曲線群的結構為,即為拓撲輪胎。我們固定一個大於1的正整數N,定義子群,即橢圓曲線上所有秩可以整除N的點構成的子群。那麼這個子群是兩個循環子群的乘積。

有理數域上的橢圓曲線如果橢圓曲線的域為有理數域,具有無窮多個點。Mordell於1922年證明了是有限生成的群,存在有限點集,任意一個點可以被表示為,

更進一步,,這裡是橢圓曲線的有限階撓子群,r被稱為是橢圓曲線的秩(rank)。1977年,Mazur證明了橢圓曲線的撓子群只有15種情況,和。但是橢圓曲線的秩卻依然神秘,人們猜測對於任意大的r,都存在有理數域上的一條橢圓曲線,其秩等於r。

有限域上的橢圓曲線

令p是一個正整數,是模p的整數域。一條橢圓曲線,滿足,其代數簇是離散點集,如圖5所示,同一條橢圓曲線在不同的有限域上,其代數簇包含不同數目的離散點。

圖5. 同一條橢圓曲線,在不同的有限域上具有不同數目的離散點

Hasse在1922年證明了有限域上橢圓曲線代數簇點的個數和(p+1)的差不大於p的平方根的兩倍 :。特別的,如果p為2的指數,即所謂的Koblitz曲線,那麼。

令橢圓線E是定義在一個有限域上,,,令S和T是橢圓曲線上的兩個點,找到整數m使得,這一問題被稱為是離散對數問題。目前求解離散對數最為有效的是Pollar方法,其算法複雜度為,為k的指數級複雜度。比特幣協議中數字籤名的安全性就是離散對數問題的指數級複雜度。

一般而言,如果橢圓曲線群具有更加豐富的結構,那麼離散對數問題的難度會被降低。數學上的常用手法是將有限域變換成另外一個域,尤其是有理數域,從而建立兩個橢圓曲線群之間的同態,並且在特定情況下,同態可以被增強為同構。具體而言,固定一個有理數域上橢圓曲線E(Q),將其係數模p,我們把它映射到有限域上的橢圓曲線E(Fp),每個E(Q)上的點P(x,y)被映射到E(Fp)上的點,假設x=a/b,那麼。這一映射被稱為是 Reduction Modulo p Map。如果E(Fp)非退化,那麼這一映射給出群E(Q)和E(Fp)之間的同態。至關重要的是,如果我們選定一個正整數N,和p彼此互素,那麼Reduction Modulo p Map是 之間的同構。這個定理的重要性,無論怎麼強調都不會為過。

這種變換代數曲線基本數域的方法非常優雅,本質上如果用有限域,我們得到的是數論問題,如果我們用複數域,我們得到的是黎曼面的復幾何問題。例如,著名的橢圓曲線L序列問題,就是數論和代數幾何的交叉點。令E是一個固定的橢圓曲線,其係數A,B為整數。對任意一個素數p,我們將E映射到模p域上,得到橢圓曲線E(Fp),我們定義E(Fp)的跡為, 著名的L-序列(L-series) 將所有的跡編碼至一個函數。

Wile證明L(E,s)可以解析延拓到整個複平面上。s=1是L(E,s)的零點,著名的Brich-Swinnerton-Dyer猜測是說這一零點的指標,等於有理域上曲線E(Q)的生成元的個數。最近,華裔數學新星惲之瑋和張偉贏得了2018數學「新視野獎」,這一大獎由谷歌創始人、FaceBook創始人、俄羅斯富翁米爾納夫婦和馬化騰等共同捐贈。

小結

橢圓曲線連接著代數幾何和數論,蘊含著自然的天機,其博大精深令無數的數學家心醉神迷,一往情深。從谷山豐的慷慨悲歌、到威爾斯的英雄史詩,再到中本聰的妙手神算, 從數學聖壇上的抽象理論到金融市場的數字貨幣,從數學家為自然真理的決絕殉道,到芸芸眾生貪婪癲狂的拜金主義,這一切方向都是狂悖混亂,截然相反,卻又順理成章,天衣無縫。歷史的發展總是超出想像,顛覆一切,卻又天道循環,生生不息。我們深信, 人性中對真理的追求和對金錢的追求,亙古不變:會有更多的青年才俊,為追尋自然真理而苦心孤詣,嘔心瀝血;也會有更多的金融高手,閃轉騰挪,翻手雲雨。依隨橢圓曲線理論的進一步突破,更多的金融創新會再度橫空出世。

打開APP閱讀更多精彩內容

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容圖片侵權或者其他問題,請聯繫本站作侵刪。 侵權投訴

相關焦點

  • 一分鐘帶你了解 比特幣挖機是如何獲取比特幣的?輕鬆帶你走進幣圈
    今天小牛帶你了解比特幣挖機是如何獲取比特幣的?輕鬆帶你走進幣圈。要回答這個問題,就要從比特幣的共識機制——工作量證明(PoW)說起。在比特幣的系統,記錄交易生產區塊是最重要的工作,為了鼓勵大家都來參與交易帳本的記錄,中本聰設計出了獎勵機制,用比特幣作為獎勵。
  • 比特幣背後的原理
    導語:比特幣背後的原理,數學是如何應用在虛擬貨幣的設計上的?很多人都不知道上面那個問題的答案,或者說至少不全了解。要想搞明白,同時也為了讓比特幣背後的技術細節顯得直觀,我們將從你會如何發明自的比特幣的過程中一步一步地闡明。
  • 比特幣的挖礦原理(比特幣是如何產生的?)
    這篇文章,我們繼續從底層原理出發,來揭開這些神秘的面紗(如果你沒看過之前的文章,強烈建議你先看下)。比特幣是什麼呢?比特幣是一種積分。積分的作用是幹嘛呢?大家知道:同理,在比特幣網絡裡,挖礦就可以獲得比特幣。比特幣可以用來在比特幣網絡裡轉帳或購買產品和服務。
  • 思緒漫步 | 比特幣與 SHA256 的數字原理:從社交資本連起
    發現比特幣的概念居然可以運用在社交上,於是想切實了解比特幣。26 日通過 B 站簡單了解了比特幣的技術原理,為之中的 SHA256 算法感到神奇。1.  對興趣話題的持續關注與深究2.  基本的搜索與溯源技能3.  不同領域內容的關聯4.  多信源的協調間這次實驗性的實踐了下把 YouTube 當成信源。
  • 光知道掙錢 卻不知比特幣的原理與運作機制?
    【PConline 雜談】眾所周知,比特幣依靠特定算法並通過大量的計算產生。然而,由於P2P的去中心化特性與算法本身,也將比特幣的總數量永久限制在了2100萬個。正因如此,比特幣才具有極強的稀缺性,這意味著其背後蘊藏著巨大的升值空間。But!本期我們不講發家致富,而是要向各位科普一下比特幣的原理與運作機制。
  • 五分鐘帶你了解哈希算法
    例如比特幣或者以太坊這種運行去中心化網絡和共識的機器,都會有上萬個節點通過P2P連接,並且需要「無需可信」和可驗證的效率。這些系統需要將信息寫入緊湊的格式,從而通過參與者進行保證安全和快速驗證。來源 | 巴比特比特幣和以太坊主要的primitive是區塊的notion,這是包含轉帳信息,時間戳和其他重要數據的數據結構。
  • 比特幣是什麼?5分鐘了解比特幣的基礎知識
    )等所接受並開始投資,並且有許多報章媒體也開始宣導加密貨幣的概念,再加上比特幣價值開始上漲,進而帶動更多的投資者願意加入,種種的推動之下讓比特幣快速的興起。比特幣是全世界第一個加密貨幣,在前面的文章中也有提到比特幣是以區塊鏈技術為基礎所發行的貨幣,英文是」bitcoin」,一般會縮寫成BTC,而且比特幣這種貨幣最小的單位可不是一個比特幣或者說一個BTC喔,比特幣的最小單位是」satoshi」,正好是用創始人中本聰的名字來命名的,一個BTC相當於108 個satoshi!
  • 四位數學名人,帶你了解不一樣的數學
    很多同學覺得數學很難,其實,數學80%的分數來源於基礎知識。20%的分數屬於難點,所以數學的學習就兩字「勤奮」,下面師兄分享四位名人的故事,帶你了解不一樣的數學。
  • 比特幣的原理及運作機制
    中本聰規定:每一張帳簿紙的交易清單第一條交易為「系統給這個小組支付50個比特幣」。也就是說,如果你生成了一張有意義的帳簿紙,並且被所有挖礦小組接受了,那麼就意味著這條交易也被接受了,你的挖礦小組獲得了50個比特幣。這就是礦工被叫做礦工的原因,也是為什麼之前說隨著交易和礦工的活動,比特幣的數量會不斷增多。例如下面是一個挖礦過程,這個小組的公共比特幣帳號為「UVWXYZ」。
  • 一年瘋漲500%的比特幣,背後是什麼原理?
    這篇文章我們先來講關於比特幣的第一部分內容。比特幣——數字信息運作的產物比如說我現在要從網上發一部電影或者一首歌給你,那麼我首先會把這個媒體文件附在郵件裡。接下來只要我一按下發送鍵,你就會收到這個文件。你可以選擇打開看或者刪除,也可以隨意處置這部電影。
  • 比特幣中的密碼學:哈希函數五大特性和挖礦原理
    比特幣本身是密碼學發展的產物,利用了密碼學中的很重要的「單向散列函數」以及數字籤名兩大技術來構建,今天我們來集中精力講解單向散列函數的5種重要的特性,以及比特幣挖礦相關的技術原理。舉個例子,你輸入的信息是一部《紅樓夢》(當然電腦識別出來就是0和1),然後你在紅樓夢的第100頁的第五句話把一個逗號改成句號,然後輸出的hash值就完全不同了。這就是哈希函數一個非常重要的特性。 但是collision resistance目前沒有數學證明這個碰撞不會發生,MD5就是最好的例子,之前是很安全的,但是後來找到了破解方法。
  • 比特幣錢包原理及JS實現實例
    我們可以通過多種不同的方式生成比特幣錢包,使用比特幣核心客戶端或使用在線錢包服務或從硬體錢包製造商處獲取等。比特幣錢包的組成?它包含兩個密鑰私鑰,公鑰和公共地址。私鑰用於硬幣的支付(即籤署交易),而公鑰用於驗證交易的籤名。
  • 比特幣的」三顆彩蛋「
    但是不用著急,這篇文章旨在讓更多這些領域以外的人,充分理解比特幣的技術。前段時間有一部很火的電影叫《頭號玩家》,講的是一個天才遊戲設計師哈利迪去世前在其設計的遊戲《綠洲》裡藏了3顆彩蛋,根據哈利迪提供的線索,最先找到這些彩蛋的玩家,將繼承哈利迪的巨額遺產。比特幣創始人中本聰同樣在比特幣白皮書裡藏了3顆彩蛋,找到它們,你就能更加深刻地理解比特幣的運作原理。
  • 通俗講解比特幣的原理及運作機制
    這篇文章的定位會比較科普,儘量用類比的方法將比特幣的基本原理講出來。中本聰規定:每一張帳簿紙的交易清單第一條交易為「系統給這個小組支付50個比特幣」。也就是說,如果你生成了一張有意義的帳簿紙,並且被所有挖礦小組接受了,那麼就意味著這條交易也被接受了,你的挖礦小組獲得了50個比特幣。這就是礦工被叫做礦工的原因,也是為什麼之前說隨著交易和礦工的活動,比特幣的數量會不斷增多。例如下面是一個挖礦過程,這個小組的公共比特幣帳號為「UVWXYZ」。
  • 990量化雲揭秘:什麼是比特幣的量化交易?比特幣量化交易靠譜嗎?
    量化交易,有時候也稱自動化交易,是指以先進的數學模型替代人為的主觀判斷,極大地減少投資者情緒波動的影響,避免在市場極度狂熱或悲觀的情況下做出非理性的投資決策,量化交易有很多種,包括跨平臺搬磚、趨勢交易、對衝套利、三角套利、跨期套利、ETF輪動套利等。1)比特幣適合量化交易嗎?
  • 牧牛區塊鏈金小雅帶你了解:新手更適合哪種方式來投資比特幣?
    2009年至今,比特幣總漲幅超2000萬倍,一躍成為古往今來最造富的神話。1、Satoshi Nakamoto,比特幣的創造者, 共持有980,000枚比特幣,現值784億元2、李笑來,原新東方教師, 曾做過銷售、教書、寫書、開公司,成為若干創業公司的創始合伙人,現在致力於比特幣相關聯合創業和天使投資。
  • 數學家的心思你不懂:比特幣 Logo 背後的故事
    這枚橙色的硬幣已經成為具有國際辨識度的符號,但其實比特幣並不是一開始就使用這個標誌的。在這個去中心化貨幣的誕生之初,中本聰(Satoshi Nakamoto)只為其製作了一個極其原始的Logo,與其它和比特幣相關的東西一樣原始。隨後社區不斷地進行迭代改進,最終固定為現在的Logo。那些老派的比特幣至上主義者也許還記得比特幣Logo設計的演變過程,以及Logo蘊含的數學符號的意義。
  • [故事] 詳解比特幣的原理及運作機制
    這是一篇定位為科普的文章,作者以一個通俗的故事,採用用類比的方法將比特幣的基本原理講出來。這篇文章不會涉及算法和協議中比較細節的部分。中本聰規定:每一張帳簿紙的交易清單第一條交易為「系統給這個小組支付50個比特幣」。也就是說,如果你生成了一張有意義的帳簿紙,並且被所有挖礦小組接受了,那麼就意味著這條交易也被接受了,你的挖礦小組獲得了50個比特幣。      這就是礦工被叫做礦工的原因,也是為什麼之前說隨著交易和礦工的活動,比特幣的數量會不斷增多。
  • 【科普讀物】一個故事告訴你比特幣的原理及運作機制(上)
    周末花時間看了一些比特幣原理相關的資料,雖然不敢說把每個細節都完全搞懂了,不過整體思路和關鍵部分的主要原理還是比較明白。寫一篇文章分享給大家。
  • 比特幣是什麼?什麼是挖礦?為什麼比特幣這麼值錢?
    那就是比如銀行這種系統,你把你的銀行卡裡的錢轉給了張三,於是銀行就在他的信息中心會做一筆會計的記帳記錄,你轉了一筆錢給張三,這叫中心式的記帳系統。只有中心可以記,別人不能記。而分布式的記帳系統是什麼呢?分布式的記帳系統就是大家都可以記,你也可以記,我也可以記,所有人都要在一段時間內把所有的交易記錄打包放到裡面。比特幣的算法規定就是十分鐘記一次帳。