用於保護您的電子商務平台的最常見的密碼哈希方法

已發表: 2019-01-23

2018 年,對於電子商務網站所有者和提供商業軟件應用程序的人來說,密碼哈希變得比以往任何時候都更加重要。

保護用戶數據不再是建議,而是要求,因為消費者開始將他們的安全性和數據的安全性視為重中之重。

隨著電子商務繼續以穩健的速度增長,預計到 2020 年電子商務銷售額將超過 40 億美元,保護用戶數據現在比以往任何時候都更加重要。

如果黑客或惡意行為者獲得了您的密碼數據庫的訪問權限,並且這些密碼以純文本形式存儲,那麼入侵者將可以訪問您網站或應用程序上的每個用戶帳戶。

避免這種情況的推薦方法是通過密碼散列。

電子商務黑客

如果沒有適當的網絡安全協議,電子商務店主就有可能將自己和他們的客戶置於危險之中。 我們無需深入了解 2013 年的 Target 黑客攻擊,即可了解黑客攻擊如何以及為何成為電子商務平台的主要威脅。

話雖如此,小型電子商務商店比大型公司面臨更大的風險,因為它們針對網絡犯罪分子的安全協議較少。 小型電子商務商店可能面臨的兩種最大的網絡犯罪包括網絡釣魚攻擊,其中用戶數據(例如他們的信用卡號和登錄信息)是目標,以及信用卡欺詐,黑客將嘗試提取信用卡號然後出售它們在黑市上。

正如您現在所希望的那樣,您的電子商務商店的安全性必須是您最關心的問題,這將要求您採用許多安全措施,包括密碼散列。

什麼是密碼哈希?

要了解當前如何在內容管理系統和 Web 應用程序上使用密碼散列,我們必須定義一些關鍵的東西。

當您對密碼進行哈希處理時,它基本上將密碼轉換為加擾表示或“字符串”,您可以使用它來避免將密碼存儲為純文本,以便惡意行為者可以找到它們。 散列在內部將值與加密密鑰進行比較以實際解釋密碼。

還應該注意的是,散列是一種不同於加密的加密安全形式。 這是因為加密旨在通過兩步過程加密和解密消息,但正如我們剛剛討論過的,散列旨在從文本中的前一個字符串生成一個字符串,只有很小的輸入變化就會有很大的不同。

您將看到的另一種散列措施是所謂的加鹽,它只是將字符添加到散列密碼的末尾以使其更難解碼。

與加鹽類似的是所謂的胡椒粉。 這還會在密碼末尾添加一個附加值。 有兩種不同的加鹽版本,第一種是您將值添加到密碼的末尾,正如我上面提到的,第二種是添加到密碼的值在位置和值上都是隨機的。 這樣做的好處是它使蠻力攻擊和某些其他攻擊變得非常困難。

目前使用的哈希算法

您將看到根據平台在密碼上使用的各種散列方法。 這也可能因內容管理系統而異。

最不安全的散列算法之一被稱為 MD5,它創建於 1992 年。正如您從 1992 年創建的算法中想像的那樣,它不是最安全的散列算法。 該算法使用比傳統加密標準低很多的 128 位值,因此這意味著它不是一個非常安全的密碼選項,而是更常用於安全性較低的要求,例如文件下載。

您將看到的下一個常見散列算法是 SHA-1。 該算法由美國國家安全局於 1993 年創建。 他們等了幾年才發布該算法,儘管它的開發僅比 MD5 晚一年,但它當時的安全性要高得多。 您可能仍然會看到一些密碼以這種方式進行哈希處理,但不幸的是,該標準已被決定不再安全。

作為美國國家安全局發布的 SHA1 的升級版,SHA-2 於 2001 年創建。與它的前身一樣,它不是由 NSA 專門創建的,只是在幾年前才標準化。 它仍然是安全散列密碼的可行方法。

您將看到的另一種密碼散列算法是 Bcrypt。 BCrypt 算法包含一種鹽,旨在防止暴力攻擊。

BCypt 用來使蠻力攻擊更加困難的工具之一是減慢惡意行為者可能正在使用的蠻力操作或程序。 這意味著如果嘗試蠻力攻擊,如果它完全成功,可能需要數年時間。

與 bCrypt 類似的是 Scrypt。 這種密碼散列算法還通過諸如鹽之類的額外防禦來擴展密鑰(旨在將隨機數據添加到散列函數輸入以創建更獨特的輸出),並使蠻力攻擊幾乎不可能,而 Scrypt 的另一個優點是它設計用於在受到蠻力攻擊時佔用大量計算機內存。 這意味著它有一項額外的措施來延長蠻力攻擊成功所需的時間。

我們將在內容管理系統和 Web 應用程序上看到的最後一個密碼散列算法是 PBKDF2。 這個密碼散列算法是由 RSA 實驗室創建的,和前面提到的算法一樣,它還為散列添加了擴展,使蠻力變得更加困難。

存儲散列密碼

在散列過程之後,並且在使用任何算法完成其工作之後,密碼的輸出將是其自身的加擾十六進製表示。

這意味著它將是一系列非常長的字母和數字,這些字母和數字將是網站或應用程序存儲的內容,以防黑客訪問該信息。

換句話說,如果黑客進入您的電子商務網站並找到用戶密碼數據庫,那麼他將無法使用它們直接登錄用戶帳戶。

相反,他或她將不得不解釋隨機字母和數字,以找出您的密碼實際上是什麼。

存儲散列密碼

多個網站密碼

有時您會遇到電子商務商店用戶可能需要在不同服務之間共享密碼的情況。

這方面的一個例子可能是,與基於 Web 的版本相比,您有一個單獨的移動設備應用程序構建,它可能是一種不同的技術或在不同的平台上。 在這種情況下,您需要跨多個平台同步散列密碼,這可能非常複雜。

幸運的是,有些公司可以幫助跨平台同步哈希密碼。 FoxyCart 就是一個例子,它是一項允許在應用程序之間同步散列密碼的服務。

把它包起來

除了 Foxy,還有許多其他流行的電子商務平台可供選擇。 無論您使用哪一種,確保您的在線電子商務商店之前的安全必須是重中之重,而密碼哈希是您今天可以採用的最好的安全措施之一,也是最容易被忽視的安全措施之一。

密碼的哈希值越正確,如果它使用鹽和胡椒環等最新標準,那麼基本上惡意行為者獲取某人密碼的唯一方法就是通過蠻力攻擊。

並且通過我們上面提到的方法和各種內容管理系統使用的算法,即使是蠻力攻擊也變得越來越困難。 也就是說,只有在您正確實施這些工具的情況下。