字符串相等性测试针对base64编码的sha512摘要失败

时间:2018-06-29 09:13:29

标签: postgresql postgresql-10

我有下表

   Column    |            Type            | Collation | Nullable |
-------------+----------------------------+-----------+----------+-------------------
 name        | text                       |           | not null |
 code        | text                       |           | not null |

我使用以下INSERT插入新元素

INSERT INTO table(name, code)
    VALUES('SOMENAME',encode(digest(gen_random_uuid()::text,'sha512'), 'base64')) ;

现在,当我尝试针对code字段进行选择时:

SELECT * FROM tabel WHERE code='K5HUaRwxsXzkAl3NaWHbBkvnYEK/...';

它返回一个空集。

----------
(0 rows)

令人困惑的是,它似乎只对 SHA512 base64 编码无效,如果我使用 SHA256 ,或者如果我将编码更改为 HEX

我感觉这可能是一个错误,但是我缺少什么吗?

0 个答案:

没有答案