處理密碼

目前,使用者名稱和密碼認證是用於驗證的最常見認證。 即使其他類型的認證,例如憑證和生物特徵辨識,也開始尋找其進入系統和網路世界的方式,這些認證通常是由密碼所備份。 而且,即使使用憑證,其加密金鑰也必須受到保護。 因此,使用者名稱和密碼將繼續用於認證,並在未來可預期的未來。

假設密碼和加密金鑰即將在一段時間,請務必以安全的方式使用這些密碼和加密金鑰。 如果網路或電腦系統保持安全,密碼必須受到保護,以免遭受入侵者。 這一開始可能有點簡單。 不過,由於攻擊者能夠探查使用者的密碼,因此網路之後的系統與網路遭到入侵。 問題範圍從使用者與某人共用其密碼,到攻擊者可能滲透的軟體。

無法以完全安全的方式將秘密資訊儲存在軟體中。 而且,由於將密碼和加密金鑰儲存在軟體系統中永遠不會完全安全,因此建議不要將它們儲存在軟體系統中。

不過,當密碼必須儲存在軟體系統中時,通常是這種情況,可以採取預防措施。 主要預防措施是讓入侵者盡可能難以探索密碼。 就像鎖定您的房屋門一樣,如果有人決定中斷,則幾乎不可能防止他們這麼做。 但希望您已充分提高困難程度,讓入侵者發現較容易的預先準備。

有許多方式可讓攻擊者更難探索密碼。 不過,實際可以執行的工作範圍通常是與網路或系統使用者願意生存的取捨。 例如,採用未使用「單一登入」的情況,並在每次啟動應用程式時提示使用者輸入密碼。 在大部分情況下,這會對使用者造成重大負擔,而且可能會抱怨。 不僅如此,缺乏單一登入的效率不佳,也會降低使用者的生產力。 因此,實際上,密碼通常不會從使用者收集,但登入時除外。

假設密碼通常必須儲存在軟體系統上,請務必確保密碼盡可能保持安全,並維護使用者的便利性。 如需詳細資訊,請參閱下列主題:

注意

當您在應用程式中完成使用密碼時,請呼叫 SecureZeroMemory 函式,從記憶體中清除敏感性資訊。