gpt4 book ai didi

mysql - 在 mysql 中使用 AES_ENCRYPT 和 VARCHAR

转载 作者:行者123 更新时间:2023-11-29 13:50:38 25 4
gpt4 key购买 nike

我正在使用AES_ENCRYPT()AES_DECRYPT()用于mysql数据的加密和解密。无论我是否使用VARCHAR(),一切都工作正常或VARBINARY()但这仅适用于我要 checkin 的少量数据。我的记录已在 VARCHAR() 中格式,我更喜欢它们原样加上我想要针对这些用户加密的详细信息是他们的联系人和短信(可以是他们想要的任意数量,以便让您了解可能的数据大小)。现在如果我使用 VARCHAR()在字符长度合理的情况下,坚持使用 VARCHAR() 会更好吗?某事或某处/有时我必须转移到 VARBINARY()由于某些原因或问题?请大家给我好的建议,这样我就可以留下VARBINARY()这期了。落后并继续使用我的VARCHAR()列前面键入。让我想到这个问题的是,当我用谷歌搜索它时,我发现用户的 react 不一,有人说用户 VARCHAR()和一些VARBINARY()而有些根本没有问题,更令人担忧的是 MYSQL 文档更喜欢或我所说的,VARBINARY() 。我知道这可能是因为数据返回是 BINARY/BLOB fromat 的原因,但是为什么 VARCHAR()完全允许类型吗?希望能澄清我的问题,谢谢

最佳答案

AES_ENCRYPT() 下所述:

AES_ENCRYPT() encrypts a string and returns a binary string.

对我来说,结果应该存储在二进制字符串类型列中,即 VARBINARY

至于使用VARCHAR可能出现的问题:

  1. 根据您的字符集,某些字节序列可能无效并可能被拒绝;和

  2. 无意的字符集转换可能会破坏您的密文。

关于mysql - 在 mysql 中使用 AES_ENCRYPT 和 VARCHAR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16729346/

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