數據和密碼的存儲和安全管理是加密和區塊鏈世界中最重要的方面之一,並且普遍存在於所有在線環境中。
加密是一種“隱藏文字”的藝術,能夠將純文本轉換爲密文,反之亦然,它可以幫助黑客難以允許未經授權的訪問某些網絡和交易。
讓我們深入研究加密保護有價值信息和密碼的不同方法。
一般在密碼學中談到密碼保護時,都會提到兩種加密方法:對稱加密和非對稱加密。
對稱加密是指使用單個密鑰來加密和解密信息的一種文本加密:
加密密鑰在發送者和接收者之間共享,通常事先達成一致:它代表加密貨幣中允許用戶訪問和管理其數字資源的核心元素。
單密鑰對稱加密是保護密碼、交易以及操作節點之間通信的最常用手段之一。
例如,在將資金從一個錢包轉移到另一個錢包時,它可以確保只有參與交易的兩方讀取和共享信息,從而保證數據不被窺探。
然而,儘管對稱加密有諸多優勢,但在可擴展性和密鑰管理方面卻存在侷限性。
事實上,在擁有更多用戶的系統中,成對通信的需求極大地限制了這種做法的擴展。同時,更多的用戶意味着在所謂的“私鑰”的管理和保存方面存在人爲錯誤,如果丟失,就會導致加密貨幣或虛擬錢包中存儲的數據丟失。
爲了克服這些限制,非對稱加密通過在密碼編碼和解碼中提供一對單獨的密鑰(公鑰和私鑰)來幫助我們。
這種額外的安全級別立即提高了數據保護能力:公鑰可以與任何網絡上的任何人共享(例如當我們共享我們的地址以接收加密付款時),而私鑰必須保密。
這兩個密鑰都是由一種算法生成的,該算法使用大素數來創建兩個唯一且數學上關聯的密鑰。
無論如何,擁有公鑰的人可以加密消息,但只有私鑰的持有者才能解密文本。我們可以將其想象成一個電子郵件收件箱:擁有公鑰的人可以發送消息,但只有私鑰的所有者才能打開電子郵件並閱讀消息。
Trust Wallet或MetaMask等非託管軟件錢包使用非對稱加密技術爲用戶提供最高程度的安全性。
加密和區塊鏈領域的密碼加密採用不同的格式,可用於不同的目的並提供不同級別的安全性:
- MD5(消息摘要5) :
MD5 算法由 Ronald Rivest 於 1991 年開發,可從可變長度的輸入生成 128 位哈希值(32 個十六進制字符)。
由於算法中發現漏洞,它不再被認爲是安全的。但是,它仍然在某些傳統環境中使用,例如用於驗證文件的完整性。
- SHA-1(安全散列算法 1):
SHA-1 生成 160 位哈希值(40 個十六進制字符)。
它不再像以前那樣安全,已經顯示出一些漏洞:現在它通常被更強大的算法(如 SHA-256 和 SHA-3)取代。然而,它仍然在廣泛的系統和新應用程序中使用。
- 鹽:
鹽是一個隨機的位序列,在計算哈希值之前添加到密碼中。
它解決了散列方法中的衝突問題(兩個不同的密碼生成相同的散列)。
通過添加鹽,即使是相同的密碼也會有完全不同的哈希值。這使得攻擊者更難通過暴力攻擊來解密密碼。
- 加密:
Bcrypt 是一種專門爲密碼加密而設計的哈希算法。
使用鹽和一定次數的迭代來減慢哈希計算的速度。它被廣泛用於數據庫領域保護用戶密碼。
加密格式的選擇取決於參考系統的具體需求。如今,建議使用 bcrypt 或 SHA-2 等哈希算法來保護密碼並減輕網絡攻擊。
保護加密貨幣中的密碼和有價值信息的另一種方法是依靠哈希函數,即將任何形式的數據轉換爲固定長度的字符串的算法。
通過使用強大的哈希算法,我們可以有效地保護敏感信息並防止網絡攻擊。
哈希函數是不可逆的:不可能將哈希轉換回其原始數據。它們在區塊鏈上的數據管理中至關重要,因爲它們允許在不損害其初始完整性的情況下構造信息
哈希還可以作爲所有加密密碼的指紋,保護用戶免遭其帳戶上未經授權的操作。
事實上,對原始數據的任何修改都會產生新的哈希值,該哈希值不再對應於原始來源,因此無法在區塊鏈上進行驗證。
確保密碼安全(更具體地說是消息中數據的真實性和完整性)的另一種方法是使用所謂的“數字簽名” (非對稱加密技術)。
這只是確保特定數據的所有者批准交易的一種方法。通常,發送者使用私鑰創建數字簽名以加密簽名數據,而接收者獲得簽名者的公鑰以解密數據。此代碼代表無可辯駁的證據,證明消息是由發送者獨自創建的,並且沒有被在線篡改。
當談到數字簽名時,人們立即想到Ledger 、Trezor 和 Bitbox 等簽名設備,它們允許在交易廣播到加密網絡的其餘部分之前驗證交易。
但是,請注意不要將這些設備視爲錢包:它們不包含您的加密貨幣,而只允許您批准使用它們所需的交易。