如何防范AI盗取您的密码

译者 | 陈峻
审校 | 重楼
现如今,随着人工智能(AI)应用的普及和快速迭代,几乎任何人都可以轻而易举地利用AI进行密码破解之类的攻击 。这已经引起了业界的担忧 。下面,我将围绕着:密码破解究竟意味着什么,基于AI的密码猜测技术,以及我们该如何保护自己的密码免受此类攻击这三个方面展开讨论 。

如何防范AI盗取您的密码

文章插图
破解密码意味着什么?长期以来,密码始终是网络攻击者关注的焦点 。他们只需获取密码,就能绕过所有的安全系统,攫取整个系统的相关信息,及其存储在其中的所有数据 。
让我们先来了解一下与密码破解有关的散列(哈希,hashing)概念 。密码散列是一种通过更改原始记录中的数字,来安全地存储用户密码的方法 。其过程为:对用户的真实密码(通常为纯文本)进行数学计算处理,以输出固定长度的加密散列值 。例如,您在登录某个网站时将密码设置为“secret_password123”,那么该网站的预定义散列函数会根据该输入的数据,生成类似“3a5b9c1d8e7f2b6g”的特定散列输出 。换句话说,您在该网站数据库中留存的数据记录将是“3a5b9c1d8e7f2b6g”,而不是“secret_password123” 。对此,如果网络攻击者劫持了该网站的数据库,他们就不得不通过计算“3a5b9c1d8e7f2b6g”值,来逆向推导出您的真实密码 。然而,散列(哈希)算法的一个特点便是单向性 。这会使得密码的破解过程变得相当复杂 。不过,随着AI的赋能,黑客如今已可以采用多维度、不同的方法,去尝试着破解真实的散列密码 。AI能够破解密码吗?凭借人工智能的快速计算、以及处理大型数据集的能力,网络攻击者能够据此,来缩短并破解某些由加密算法保护的密码 。其中,最为典型的当属AI在密码破解过程中的学习能力 。只要有足够的数据和时间被用来学习特定的加密算法,人工智能模型就能够学会理解和破解加密所用到的数学关系 。可见,与普通的试错方法相比,人工智能可以更有效、更快速地破解密码 。
除了机器学习,网络攻击者仍然可以借助人工智能,对密码开展暴力破解的攻击方式 。此处的暴力破解是指,尝试所有可能的密码组合,以找到正确密码的过程 。而人工智能完全可以优化该过程,以减少重复破解密码的尝试次数 。
此外,人工智能还可以研究文本语言以及语法,成功地破解出那些基于自然语言的加密密钥 。也就是说,利用人工智能的语言模型,网络攻击者可以更加高效地在密码分析中,使用基于频率分析的方式予以破解 。基于AI的密码猜测技术密码的猜测往往直接涉及到各种数学方法 。作为密码学研究领域的一个分支,密码分析最典型的方式莫过于历史上赫赫有名的英格玛密码(Enigma Code) 。当然,人工智能也会用到如下以数学为基础的方式:
  • 频率分析:它试图通过分析密文中字母或符号的出现频率,来猜测加密密钥或密码 。通常,自然语言中的字母有着一定的频率分布规律,而经过加密后的文本字母也会出现类似的频率分布 。这种规律的捕捉对于简单的加密算法而言,是特别有效的 。
  • 差分密码分析:这是发现块密码算法(block cipher algorithms)弱点的理想方法 。该分析方法试图通过检查加密算法,在输入和输出之间的差异中,找到所使用的加密密钥 。
  • 线性和微分密码分析:它涉及到用于分析对称密钥加密算法的数学技术 。该技术试图利用加密算法的线性方程、或差分方程,去发现加密密钥 。
  • 错误分析:在加密算法的实际执行过程中,系统极可能会出现各种潜在的错误,或是暴露出与安全相关的漏洞 。该分析试图利用此类错误或漏洞,来伺机获取加密密钥 。
  • 随机性测试:由于加密算法的安全性主要取决于随机性,因此攻击者可以通过数学方法,来测试确定加密算法中使用到的随机性(其实是基于算法的“伪随机性”),以预测算法的输出结果 。
  • 特殊算法攻击:利用加密算法的相关知识和深入研究,网络攻击者可以发现某些典型算法的弱点,进而在此基础上开发出专门设计好的攻击方式 。
上述密码分析方法不仅能够帮助到网络攻击者,也能够协助密码分析师,来评估正在使用、或已经采用的密钥算法的健壮程度 。因此,它们对于密码安全的重要程度,是不言而喻的 。如何加强密码安全,防范人工智能攻击鉴于网络攻击者可以将人工智能和密码破解技术结合起来发起攻击,普通用户又该如何采取行之有效的措施,来予以应对呢?使用长而复杂的密码许多人趋向使用简单的短语作为密码,以方便记忆 。素不知,此举也方便了攻击者 。对此,我们需要采用足够长的密码(至少12个字符),以应对简单的猜测攻击 。


推荐阅读