处理密码

目前,用户名和密码凭据是用于身份验证的最常见凭据。 尽管其他类型的凭据(如证书和生物识别)开始进入系统和网络的世界,但它们通常由密码进行备份。 而且,即使使用证书,其加密密钥也必须受到保护。 因此,在可预见的将来,用户名和密码将继续用于凭据。

鉴于密码和加密密钥将持续一段时间,软件系统必须以安全的方式使用它们。 如果网络或计算机系统要保持安全,则必须保护密码免受入侵者的保护。 起初,这可能看起来微不足道。 但是,由于攻击者能够探查用户的密码,因此网络后系统在系统之后和网络遭到入侵。 问题包括用户与某人共享其密码,以及攻击者可以渗透的软件。

不可能以完全安全的方式将机密信息存储在软件中。 由于将密码和加密密钥存储在软件系统中永远无法完全安全,因此建议不要将其存储在软件系统中。

但是,当密码必须存储在软件系统中(通常是这种情况)时,可以采取预防措施。 主要预防措施是使入侵者能够尽可能困难地发现密码。 就像锁定你的家门一样,如果有人决心闯进来,几乎不可能阻止他们这样做。 但希望,你将足够提高难度水平,让被入侵者宁愿找到更容易的猎物。

有多种方法可使攻击者更难发现密码。 但是,实际可以执行的操作的程度通常是与网络或系统用户愿意与之生存的权衡。 例如,采用未使用“单一登录”的情况,并且每次启动应用程序时都会提示用户输入密码。 在大多数情况下,这将给用户带来重大负担,他们可能会抱怨。 不仅这样,而且缺少单一登录效率低下,会降低用户的工作效率。 因此,实际上,除了登录时,不会从用户收集密码。

鉴于密码通常必须存储在软件系统上,请务必确保密码尽可能安全,并维护用户的便利性。 有关详情,请参阅以下主题:

注意

在应用程序中使用完密码后,通过调用 SecureZeroMemory 函数从内存中清除敏感信息。