【问题标题】:How can I decode base32 to string in mysql如何将base32解码为mysql中的字符串
【发布时间】:2015-04-25 01:29:35
【问题描述】:

我正在寻找一种将base32加密的字符串解码回mysql中的原始字符串的方法。 我知道有一个 SP 可以使用 base64 执行此操作,但找不到 base32 的任何内容。

有可能吗?有没有可以在某处使用的存储过程?

有什么方法可以实现?

谢谢!

【问题讨论】:

  • 这当然是可能的。如果您真的必须在数据库端进行,您可以编写自己的 SP。否则,请查看您是否可以找到更适合该任务的语言的解决方案。

标签: mysql converter base32


【解决方案1】:

BASE 64 或 BASE 32 未加密,它们只是经过编码。 MySQL 没有像 Base 64、FROM_BASE_64 e TO_BASE_64 那样执行 Base 32 字符串编码/解码的本机函数。

作为替代方案,您可以尝试 CONV 数学函数(取决于存储为 BASE32 的内容)。假设您将 UUID 数字存储为 DECIMAL,需要将它们显示为 BASE32,反之亦然:

SELECT uuid, conv(uuid, 10, 32) uuid_b32, conv(conv(uuid, 10, 32), 32, 10) 
FROM database.table;

上面的答案是针对不同基数之间的数字转换。如果不是这种情况,例如当您将二进制文件存储在 blob 列上时,您可能需要在 MySQL 之外进行编码/解码。您可以使用MIME::Base32 或您首选语言的适当模块。无论如何,您需要知道该字段是否有以 Base32 编码的文本或二进制文件。

【讨论】:

    猜你喜欢
    • 2014-02-26
    • 2019-03-06
    • 1970-01-01
    • 2010-10-13
    • 2011-10-09
    • 2019-07-02
    • 2019-05-05
    • 2017-11-23
    • 2023-03-07
    相关资源
    最近更新 更多