【问题标题】:Which characters can the AES Encryption output?AES 加密可以输出哪些字符?
【发布时间】:2021-02-06 08:38:04
【问题描述】:

我正在尝试构建一个使用 AES 加密字符串的网络应用程序。我将加密的字符串存储在一个文件中,并在需要时再次解密。但我需要添加一个 delimiter 来将加密字符串与文件中的普通字符串分开。因此,定界符自然会是 AES 输出中不包含的某个字符。那么分隔符可以是哪些字符?我尝试使用谷歌搜索,但找不到任何令人满意的结果。 JavaScript 或 PHP 中的任何代码都会有所帮助

【问题讨论】:

  • 欢迎来到 Stackoverflow。由于您没有标记任何编程语言,因此很难以代码形式提供任何建议(顺便说一句,要求代码是违反 ST 规则的......)。一般回答您的问题:将 AES 加密的输出编码为 Base64 并使用“:”作为分隔符 - 此字符被广泛使用。
  • 好吧....我不知道...谢谢 :-)
  • 使用基于标签的解决方案对你来说很好How do you parse and process HTML/XML in PHP?。 Like 这里的加密数据,它应该是十六进制或base64的代码...

标签: javascript php encryption cryptography aes


【解决方案1】:

加密函数的输入和输出通常是字节数组;你想编码数据。好的候选者是 Hex 或 Base64。两者都有明确定义的字符集。

【讨论】:

  • 你能不能给我一个代码,因为我没有很好地理解它
  • 您的加密数据可以包括您选择的可能分隔符。如果您将原始字节编码为 Base64,那么它将仅包含 64 个允许的 Base64 字符:[A..Z, a..z, 0..9, +, /] 这样您就可以安全地使用 # 或$ 作为分隔符,基本上是任何未出现在 Base64 字符集中的字符。
猜你喜欢
  • 2015-06-20
  • 2020-04-09
  • 1970-01-01
  • 2010-12-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-04-07
  • 1970-01-01
相关资源
最近更新 更多