使用 Base64 编码将字节数组转换为 SecureString 的安全方法

Secure way to convert a byte array to SecureString with Base64 encoding

我有一个 byte[] 需要用 Base64 和 return 编码为 SecureString。我目前的代码如下:

        string privateString = Convert.ToBase64String(byteArray);
        SecureString result = new SecureString();
        foreach (char c in privateString)
        {
            result.AppendChar(c);
        }
        // wipe the byte array...

问题是调用 Convert.ToBase64String 是不安全的,因为它创建了一个我无法破坏的托管字符串。 有这样做的安全方法吗?

就无需中间字符串的 base-64 数据编码方式而言:System.Buffers.Text.Base64。然而! SecureString 不安全,现在基本上不应该使用。曾经。它没有针对任何有意义的攻击提供任何有用的保护。