【问题标题】:Change encoding from Default to Unicode for encryption将编码从默认更改为 Unicode 以进行加密
【发布时间】:2021-02-24 09:23:24
【问题描述】:

我有一个项目,其中存储在数据库中的所有内容都是加密的。对于编码,我们使用System.Text.Encoding.Default.GetBytes(text)

问题是现在客户想要添加对波兰语(和其他北欧)字符的支持并且使用Default 编码不起作用,波兰语字符被转换为英文字符(例如Ą被转换为A) .

我无法更改编码(Unicode 似乎有效),因为之前的数据将会丢失。

有没有办法解决这个问题并在保留旧数据的同时添加对新字符的支持?

【问题讨论】:

    标签: c# encryption encoding .net-4.5


    【解决方案1】:

    要清楚;您意识到“编码”不是“加密”,但我想您加密了通过编码字符串数据获得的字节数组?

    然后我建议使用 UTF-8(西方字母最有效的编码)对所有现有数据进行解密、重新编码和重新加密,添加“版本”或“ encoding" 列,指示使用哪种编码对数据进行加密。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-09-17
      • 2013-10-10
      • 1970-01-01
      • 2021-02-18
      • 2013-10-18
      • 1970-01-01
      • 1970-01-01
      • 2021-10-10
      相关资源
      最近更新 更多