用于保护您的电子商务平台的最常见的密码哈希方法
已发表: 2019-01-232018 年,对于电子商务网站所有者和提供商业软件应用程序的人来说,密码哈希变得比以往任何时候都更加重要。
保护用户数据不再是建议,而是要求,因为消费者开始将他们的安全性和数据的安全性视为重中之重。
随着电子商务继续以稳健的速度增长,预计到 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,还有许多其他流行的电子商务平台可供选择。 无论您使用哪一种,确保您的在线电子商务商店之前的安全必须是重中之重,而密码哈希是您今天可以采用的最好的安全措施之一,也是最容易被忽视的安全措施之一。
密码的哈希值越正确,如果它使用盐和胡椒环等最新标准,那么基本上恶意行为者获取某人密码的唯一方法就是通过蛮力攻击。
并且通过我们上面提到的方法和各种内容管理系统使用的算法,即使是蛮力攻击也变得越来越困难。 也就是说,只有在您正确实施这些工具的情况下。