gpt4 book ai didi

c# - SecureString 解决方案很好但有内部矛盾?

转载 作者:行者123 更新时间:2023-11-30 15:41:03 25 4
gpt4 key购买 nike

我看到这个线程:

When would I need a SecureString in .NET?

代码是:

SecureString password = new SecureString("password");

对比

SecureString pass = new SecureString();
foreach (char c in "password".ToCharArray())
pass.AppendChar(c);

而且我确实理解第二个的好处(逐个字符添加字符)- 这样黑客将无法跟踪内存中随机位置的所有字符(与他可以找到的 mem 中的一个字符串相比)。

我不理解的部分是那部分: enter image description here

那个黄色代码在内存中恭敬!

那么……好处在哪里?

最佳答案

带有 ToCharArray() 的第二个代码示例只是演示了填充安全字符串的受限方式。它不是(最佳)实践的样本。

您链接到的线程提供了大部分答案:Securestring 提供了部分解决方案来避免使用纯文本密码(在内存中)。不是一个完整的解决方案。

但从接受的答案中提取这两点:

  • WPF 的 PasswordBox 控件在内部将密码保存为 SecureString。
  • System.Diagnostics.ProcessInfo 的密码属性是一个 SecureString。

它们一起可以让您安全地将密码传输到进程。

关于c# - SecureString 解决方案很好但有内部矛盾?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8688160/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com