种子,私钥,公钥,身份

種子~私鑰~公鑰~身份

加密 Token 錢包基本數學原理:

Random ==》Public key + Private Key

演化後,一般錢包軟件是這樣 :

Seed + x ===> Public key + Private Key
x = 0, 然後 x = x+ , 程式寫法,需要一組鑰匙 x=0 就搞定了,但一般上一個錢包需要管理多個鑰匙,因此 第二個是 x=1, 然後是 x = 3, Seed + x 的組合其實是代替 Random,但為了方便用戶,Seed 容易記在腦海裡,然後 x 變數應許多個鑰匙在同一個 Seed 裡。

最原始,離線下製造出來的 Random ==》Public key + Private Key ,就是業界所號稱的冷藏錢包,cold wallet 。

Private Key 或 Seed ,記住任何一個,就可以動用 Public Key裡的 Token。Seed 相對下 Random 的程度有限,因此比 Random 容易破解,錢包軟件的各種技術算法,其實就是在 Seed 方面下功夫,一組 Seed 碼一般上也是隨機取得,可以製造出任何 Crypto token 所需要的 Random碼。

加密技術的安全考量最根本的算法,目前最常見的程式是 elliptic curve cryptography (ECC) 。依照 ECC 程式,從 Private Key 找 Public Key,電腦運算是馬上找到,一般 CPU 1秒鐘可以算上萬甚至上億個回合,而要從 Public Key 找出 private key ,直接算不出但電腦從 0 算起總有一天會算到,時間長短的問題,既然是數字,以現在世界的電腦運算資源做本位,要算出 Private Key 的時間設定在幾億年,舊比特幣錢包據說也許可以被量子計算破解,但升級版錢包是可以把時間再提高幾兆倍,與時並進,簡單講,無法破解。

啥是 ECC?這個數學方程式中四數學有學到:
先來試試看:
A = B x B x B, 比如 8 = 2 x 2 x 2, 27 = 3 x 3 x 3
這種簡單算術,B 找 A 容易,A 找 B 相對耗時。
B 是 Private Key,A 是 Public Key ,可以用普通計算機,試一試,A = 10 , B = ??? , B = 2.1 , A = ???
數學答案是肯定的,只有一個,電腦會考慮到數位極限。

ECC 方程式 : ( A x A ) = ( B x B x B ) + ( C x B )+ D

這 ECC 已經算是博士級別的研究了,有興趣就自己谷歌。我要強調一點,凡是 ECC 算出的 Private Key ,答案只有一個 Public Key,這不是信不信的問題或哲理,這是數學。

現有流行的加密貨幣錢包邏輯 (NXT,BURST, NEM, ARDOR):

Address + nonce 算出 Seed,
然後才從 Seed 算出一組 Private Key 和 Public Key
nonce 其實是 Random 碼,某些布陣下用過了就丟叫 nonce 。
靠 Address 要算出符合規格的 Seed ,這 Seed 基本上也是隨機 Random 碼,從 Address 可以算出無數個 Seed,但從 Seed 算回頭只能找到一個 Address 。

以上這種種條件,也是數學方程式可以辦到的事,有興趣就直接去參考 NXT, BURST,NEM 或 Ardor 的 Github,我只是個車大砲數學老師。從 Seed 找 Private Key 基本上跟原有比特幣的方程式一樣。

為何我要提起 Address ?原因只有一個,那就是 ID,可以是個人的 ID 比如 MyKad 號碼,ID 碼是不變的。一般人都會不小心透露自己用的 Seed 碼,如果有這種情況發生,就必須馬上換一個新的 Seed ,條件是 ID 不變。

要做國民 AirDrop 的數學概念,基本上我已經講完。Blockchain 是機制簡化透明化,不好做到複雜化。

摘自okchai

Share this article

Leave a comment

Related Posts

Market Psychology Towards Bitcoin

Forward from BOKchain : Bitcoin price: $3K: Scam$4K: Scam$5K: Scam$6K: Scam$7K: Meh$8K: Meh$9K: Meh$10K: Meh$11K: Meh$12K: “Moving”$13K: Hm$14K: Hm$15K: Hm$16K: Maybe$17K: Maybe$18K: Wow$19K: WOW$20K: Google: […]

03 Jan 2020