官术网_书友最值得收藏!

2.6.2 比特幣中的公鑰加密

將公鑰加密技術(shù)用于比特幣區(qū)塊鏈,主要目的是創(chuàng)建關(guān)于用戶身份的安全數(shù)字參考。有關(guān)“誰是誰”以及“誰擁有什么”的安全數(shù)字參考是P2P交易的基礎(chǔ)。公鑰加密允許使用一組加密密鑰證明一個人的身份:私鑰和公鑰。兩個鍵的組合創(chuàng)建了數(shù)字簽名。這個數(shù)字簽名證明了一個人的代幣所有權(quán),并允許通過一個稱為“錢包”的商品來控制代幣。數(shù)字簽名證明了一個代幣的所有權(quán),并允許一個人控制一個人的資金。正如我們手工簽署銀行交易或支票,或者我們使用身份驗證進(jìn)行網(wǎng)上銀行業(yè)務(wù)一樣,我們使用公鑰加密技術(shù)來簽署比特幣交易或其他區(qū)塊鏈交易。

在公鑰加密中,雙方分發(fā)其公鑰并允許任何人使用其公鑰加密消息。公鑰是從私鑰數(shù)學(xué)生成的。雖然從私鑰計算公鑰非常容易,反過來卻只能用粗暴的力量來實(shí)現(xiàn)。猜測鑰匙是可能的,但是代價非常大。因此,如果知道公鑰,則不是問題,但私鑰必須始終保密。這意味著,即使每個人都知道一個人的公鑰,也沒有人可以從中獲取一個私鑰。現(xiàn)在,消息可以安全地傳送給私鑰所有者,只有該私鑰的所有者能夠使用與公鑰關(guān)聯(lián)的私鑰解密消息。這種方法也可以反過來。使用私鑰簽名的任何消息都可以使用相應(yīng)的公鑰進(jìn)行驗證。該方法也稱為“數(shù)字簽名”。

公鑰的模擬示例是掛鎖的示例。讓我們假設(shè),小明和小李想要私下交流,因此他們都購買掛鎖。如果小李想要向小明發(fā)送消息,但是害怕有人可能攔截并閱讀它,他會要求小明將掛鎖(解鎖)發(fā)送給他。小李現(xiàn)在可以將他的信放在一個小盒子里并用小明發(fā)給他的掛鎖鎖上。這封信可以在世界各地發(fā)送,而不會被未經(jīng)授權(quán)的人攔截。只有擁有掛鎖鑰匙的小明才能打開這封信。當(dāng)然,有人可以嘗試打破盒子(蠻力),而不是使用鑰匙。這是可能的,但困難取決于盒子的彈性和鎖的強(qiáng)度。

公鑰加密中的關(guān)鍵問題是,增加從公鑰導(dǎo)出私鑰的難度,同時不會導(dǎo)致從私鑰導(dǎo)出公鑰的難度同時增加。通過猜測結(jié)果來破解加密有多難、猜測私鑰需要多長時間,以及它有多貴?私鑰由數(shù)字表示,這意味著數(shù)字越大,不知道該數(shù)字的人就越難猜測。隨著計算機(jī)變得更快、更高效,我們必須提出更復(fù)雜的算法,無論是使用更大的數(shù)字還是發(fā)明更具彈性的算法。

如果猜測一個隨機(jī)數(shù)需要幾十年的時間,那么該數(shù)字就被認(rèn)為是安全的。每種加密算法都容易受到所謂的暴力攻擊,這種攻擊是指通過嘗試所有可能的組合來猜測我們的私鑰,直到找到解決方案為止。為了確保難以猜測數(shù)字,彈性私鑰具有最低要求:它必須是(1)隨機(jī)生成的數(shù)字。它需要是一個(2)非常大的數(shù)字。它必須使用(3)安全算法來生成密鑰。隨機(jī)性非常重要,因為我們不希望任何其他人或機(jī)器使用相同的密鑰,并且人類不善于提出隨機(jī)性。

主站蜘蛛池模板: 伽师县| 平顶山市| 襄汾县| 双柏县| 隆化县| 凌源市| 阜南县| 南京市| 罗城| 会理县| 陇西县| 巴林左旗| 托克托县| 从江县| 垫江县| 鄂州市| 泰兴市| 绥德县| 上思县| 太仓市| 高陵县| 茌平县| 兴隆县| 奉节县| 辽源市| 洛南县| 台南市| 盘山县| 前郭尔| 达拉特旗| 宜城市| 巴南区| 油尖旺区| 友谊县| 宜宾县| 阿巴嘎旗| 平南县| 济南市| 鹤山市| 田林县| 吉安市|