密碼學(xué)將“加密”置于加密貨幣中。它的存在時(shí)間比我們的數(shù)字時(shí)代要長(zhǎng)得多,并且在幾個(gè)世紀(jì)以來(lái)像語(yǔ)言一樣發(fā)展。
密碼學(xué)是一門(mén)通過(guò)將信息轉(zhuǎn)換為只有預(yù)期接收者才能處理和閱讀的形式來(lái)保護(hù)信息的科學(xué)。它的第一個(gè)已知用途可以追溯到公元前1900年,作為埃及墳?zāi)怪械南笮挝淖帧T撔g(shù)語(yǔ)本身來(lái)自希臘語(yǔ)kryptos和graphein,分別表示隱藏和書(shū)寫(xiě)。
最著名的用途之一是由朱利葉斯·凱撒在公元前40年左右開(kāi)發(fā)的,并被恰當(dāng)?shù)孛麨閯P撒密碼。密碼使用一條秘密信息,告訴您如何加擾并因此解密消息。凱撒使用了一種替代密碼,其中字母表中的每個(gè)字母都被字母表中更靠上或靠下不同固定位置的一個(gè)字母替換。例如,字母表可以向右移動(dòng)五位,這意味著字母“A”現(xiàn)在是“F”,“B”現(xiàn)在是“G”等等。這意味著他可以傳遞信息而不必?fù)?dān)心被攔截,因?yàn)橹挥兴墓賳T知道如何解讀信息。
用于密碼學(xué)的凱撒密碼輪(kprojekt/iStock/Getty Images Plus)
16世紀(jì)的密碼學(xué)家Giovan Battista Bellaso設(shè)計(jì)了Vigenere密碼(錯(cuò)誤地歸因于外交官Blaise de Vigenere),據(jù)信這是第一個(gè)使用加密密鑰的密碼。字母表被寫(xiě)成26行,每行移動(dòng)一個(gè)字母以創(chuàng)建一個(gè)網(wǎng)格。寫(xiě)出加密密鑰以匹配消息的長(zhǎng)度。然后,網(wǎng)格被用來(lái)加密消息,一個(gè)字母一個(gè)字母。最后,發(fā)送者將加密的消息和秘密關(guān)鍵字分享給擁有相同網(wǎng)格的接收者。
然后出現(xiàn)了計(jì)算機(jī),它啟用了更復(fù)雜的密碼學(xué)。但目標(biāo)保持不變:將可讀消息(純文本)轉(zhuǎn)換為非預(yù)期讀者無(wú)法理解的內(nèi)容(密文)。該過(guò)程稱為加密,是通過(guò)公共互聯(lián)網(wǎng)連接共享信息的方式。有關(guān)如何解密或解密數(shù)據(jù)的知識(shí)稱為密鑰,只有預(yù)期的各方才能訪問(wèn)此信息。
密碼學(xué)是如何工作的?
加密信息的方法有很多種,復(fù)雜程度取決于數(shù)據(jù)可能需要的保護(hù)程度。但是我們通常會(huì)看到三種類型的密碼算法。
對(duì)稱加密
對(duì)稱加密(或密鑰加密)依賴于單個(gè)密鑰。這意味著數(shù)據(jù)的發(fā)送方和接收方都共享相同的密鑰,然后使用該密鑰對(duì)信息進(jìn)行加密和解密。
為此,需要提前商定密鑰。雖然仍然是一個(gè)很好的加密來(lái)源,但只有一個(gè)密鑰保護(hù)信息的事實(shí)意味著通過(guò)不安全的連接發(fā)送信息時(shí)存在一些風(fēng)險(xiǎn)。想象一下,您想通過(guò)將前門(mén)鑰匙藏在門(mén)墊下與朋友分享您的前門(mén)鑰匙。您的朋友現(xiàn)在可以訪問(wèn)您的房子。但是,陌生人也有可能在未經(jīng)您許可的情況下找到鑰匙并進(jìn)入。
非對(duì)稱加密
非對(duì)稱加密(或公鑰加密)使用一對(duì)密鑰。這種增加的安全級(jí)別立即增強(qiáng)了對(duì)數(shù)據(jù)的保護(hù)。在這種情況下,每個(gè)密鑰都有一個(gè)用途。有一個(gè)可以通過(guò)任何網(wǎng)絡(luò)與任何人交換的公鑰。此密鑰包含有關(guān)如何加密數(shù)據(jù)的信息,任何人都可以使用它。但也有一個(gè)私鑰。私鑰不共享并保存有關(guān)如何解密消息的信息。這兩個(gè)密鑰都是由一種算法生成的,該算法使用大素?cái)?shù)來(lái)創(chuàng)建兩個(gè)唯一的、數(shù)學(xué)鏈接的密鑰。任何有權(quán)訪問(wèn)公鑰的人都可以使用它來(lái)加密消息,但只有私鑰持有者才能解密消息。
它的工作原理幾乎就像一個(gè)郵箱。任何人都可以將消息放入存款槽。但是只有郵箱的所有者才有鑰匙打開(kāi)它并閱讀郵件。這是大多數(shù)加密貨幣交易的基礎(chǔ)。
哈希函數(shù)
散列函數(shù)是密碼學(xué)保護(hù)信息的另一種方式。但它不使用密鑰,而是依靠算法將任何數(shù)據(jù)輸入轉(zhuǎn)換為固定長(zhǎng)度的字符串。
散列函數(shù)也不同于其他形式的加密,因?yàn)樗鼈冎荒芤砸环N方式工作,這意味著您無(wú)法將散列轉(zhuǎn)換回其原始數(shù)據(jù)。
哈希對(duì)于區(qū)塊鏈管理至關(guān)重要,因?yàn)樗鼈兛梢约用艽罅啃畔⒍粫?huì)損害原始數(shù)據(jù)。以有組織的方式來(lái)構(gòu)建數(shù)據(jù)不僅可以提高效率,而且對(duì)于任何已加密的數(shù)據(jù),哈希值還可以充當(dāng)數(shù)字指紋。然后,這可用于在通過(guò)網(wǎng)絡(luò)傳輸期間驗(yàn)證和防止任何未經(jīng)授權(quán)的修改。對(duì)原始數(shù)據(jù)的任何更改都會(huì)產(chǎn)生新的哈希值,該哈希值不再與原始數(shù)據(jù)匹配,因此無(wú)法在區(qū)塊鏈上進(jìn)行驗(yàn)證。
數(shù)字簽名
數(shù)字簽名是確保消息、軟件或數(shù)字文檔中數(shù)據(jù)的安全性、真實(shí)性和完整性的另一個(gè)關(guān)鍵方面。顧名思義,它們的作用類似于物理簽名,是將您的身份與數(shù)據(jù)綁定的獨(dú)特方式,因此可以作為驗(yàn)證信息的一種方式。
但是,數(shù)字簽名不是像物理簽名那樣使用獨(dú)特的字符來(lái)表示您的身份,而是基于公鑰密碼術(shù)。數(shù)字簽名以代碼形式出現(xiàn),然后由于兩個(gè)相互驗(yàn)證的密鑰而附加到數(shù)據(jù)中。發(fā)送方通過(guò)使用私鑰對(duì)與簽名相關(guān)的數(shù)據(jù)進(jìn)行加密來(lái)創(chuàng)建數(shù)字簽名,接收方獲取簽名者的公鑰來(lái)解密數(shù)據(jù)。
如果收件人無(wú)法使用提供的公鑰解密和讀取簽名文檔,則表明文檔或簽名存在問(wèn)題,因此無(wú)法對(duì)文檔進(jìn)行身份驗(yàn)證。
密碼學(xué)
加密貨幣的一大吸引力在于它們?cè)趨^(qū)塊鏈上的安全性和透明度。所有這些都依賴于加密機(jī)制。這就是大多數(shù)基于區(qū)塊鏈的加密貨幣保持安全的方式,因此它構(gòu)成了加密貨幣的本質(zhì)。
早在2009年,比特幣創(chuàng)造者中本聰(Satoshi Nakamoto)就在密碼學(xué)留言板上提出了一種解決長(zhǎng)期以來(lái)一直是數(shù)字貨幣致命弱點(diǎn)的雙重支付問(wèn)題的方法。當(dāng)同一單位的加密貨幣有可能被花費(fèi)兩次時(shí),就會(huì)出現(xiàn)雙花問(wèn)題,這會(huì)破壞人們對(duì)它們作為在線支付解決方案的信任,并使它們基本上毫無(wú)價(jià)值。
中本聰提議使用一種點(diǎn)對(duì)點(diǎn)分布式賬本,該賬本帶有時(shí)間戳并通過(guò)加密手段進(jìn)行保護(hù)。這導(dǎo)致了我們今天所知的區(qū)塊鏈的創(chuàng)建。與所有技術(shù)一樣,密碼學(xué)將不斷發(fā)展以跟上對(duì)安全數(shù)字環(huán)境的需求。隨著區(qū)塊鏈和加密貨幣越來(lái)越多地跨行業(yè)和跨界采用,情況尤其如此。
原文:https://www.coindesk.com/what-is-cryptography,作者:Annika Feign