[爆卦]拋物線方程式推導是什麼?優點缺點精華區懶人包

雖然這篇拋物線方程式推導鄉民發文沒有被收入到精華區:在拋物線方程式推導這個話題中,我們另外找到其它相關的精選爆讚文章

在 拋物線方程式推導產品中有1篇Facebook貼文,粉絲數超過3,460的網紅Taipei Ethereum Meetup,也在其Facebook貼文中提到, 📜 [專欄新文章] 私鑰分割 — Shamir’s Secret Sharing ✍️ Kimi Wu 📥 歡迎投稿: https://medium.com/taipei-ethereum-meetup #徵技術分享文 #使用心得 #教學文 #medium 私鑰分割 — Shamir’s ...

  • 拋物線方程式推導 在 Taipei Ethereum Meetup Facebook 的精選貼文

    2018-12-20 17:59:05
    有 29 人按讚


    📜 [專欄新文章] 私鑰分割 — Shamir’s Secret Sharing
    ✍️ Kimi Wu
    📥 歡迎投稿: https://medium.com/taipei-ethereum-meetup #徵技術分享文 #使用心得 #教學文 #medium

    私鑰分割 — Shamir’s Secret Sharing

    在做區塊鏈應用的時候,最常碰到的一個問題就是,怎麼保管私鑰,怎麼讓使用者方便,但又同時是安全的。第一個想法就是備份金鑰(不論是passphrase/keystore/私鑰),但是如果把使用者金鑰(加密)備份到自己的server,只要server的安全上有個不小心,使用者的金鑰就可能就被盜取了,就算是加密過的,也難保不會被破解。那如果切成好幾部分,有好幾份備份呢? 那怎麼切,才能確保安全呢?這就是本篇的重點啦!

    最直覺的想法就是直接切成N等份,例如32bytes的私鑰分成四份,然後任三份可以組成完整的私鑰,這樣每份至少需要11 bytes。聽起來問題好像解決了,但要怎麼切分,可以保證4取3可以完整組回私鑰,又是另一個麻煩的問題(自己寫的演算法,如果沒有被完整測試過,屆時使用者的私鑰組不回來,公司的問題就大了)。ZeroPass有作切分金鑰並且提供備份的服務,不過找不到他們背後的演算法,後來google到Shamir’s Secret Sharing,覺得很酷,在概念上用很簡單的數學就解決了這個問題,所以在這裡跟大家分享。

    我是參考這篇,淺顯易懂,不介意看英文的可以直接看。

    如何拆分

    先定義一下要我們接下來要幹嘛

    把秘密(secret)拆分成N份,並且只需M(M < N)份即可組回完整的秘密,被拆分過的每一份秘密叫做share。

    建立一個(M-1)次方程式

    假設,我們要傳遞的秘密是數字3,然後希望3份(M=3)就能回復完整的秘密,所以要建立一個一元二次(M-1)方程式,y=ax ²+bx+c。

    a跟b可以任選,而c是秘密(在我們的例子就是3),我們選a=2, b=1,所以方程式為y=2x ²+x+3。

    接著,我們任意取三點(因為M=3),(1, 6),(2, 13),(-2, 9)

    而這三個點座標就是三個share。最終可以由這三個點座標(share)還原秘密(secret)。

    如何還原

    目標是,還原(M-1)次方程式。

    若能取得原本的方程式,即可拿到秘密。我們知道兩點可以成一直線,而三點可以定義一個拋物線。現在,我們有三個點(1, 6),(2, 13),(-2, 9),但不知道曲線

    不過M=3,所以可以知道方程式為y=ax ²+bx+c,然後,我們知道三個座標(1, 6),(2, 13),(-2, 9),接著就是國中數學了 (1, 6) => c = a + b -6 (2 13) => c = 4a + 2b -13 (-2, 9) => c = 4a -2b - 9 過程就不推導了,最後就可以得出a=2, b=1然後我們的秘密數字c=3。 是不是很神奇啊! 在GitHub上簡單找了一些實作,有需要的可以參考一下Shamir’s Secret Share in JavaShamir’s Secret Sharing in CShamir’s Secret Sharing in Golang

    Originally published at kimiwublog.blogspot.com.

    私鑰分割 — Shamir’s Secret Sharing was originally published in Taipei Ethereum Meetup on Medium, where people are continuing the conversation by highlighting and responding to this story.

    👏 歡迎轉載分享鼓掌

你可能也想看看

搜尋相關網站