【问题标题】:Encrypt and decrypt Non varchar column in Mysql databaseMysql数据库中非varchar列的加密和解密
【发布时间】:2020-05-01 09:05:54
【问题描述】:

我四处搜索并进行了一些测试,但似乎找不到加密和解密非 varchar 数据类型的列的方法。

CREATE TABLE TEMP_ENCRYPT (
 TEST_STRING VARCHAR(255),
 TEST_INT INT 
 )

INSERT INTO TEMP_ENCRYPT (TEST_STRING, TEST_INT) VALUES
(DES_ENCRYPT('valor string', '1234'), DES_ENCRYPT('56', '1234'))


select
 TEST_STRING as a,
 DES_DECRYPT(TEST_STRING, '1234') as aa,
 TEST_INT as b,
 DES_DECRYPT(TEST_INT, '1234') as bb
from TEMP_ENCRYPT

这个选择返回

一个 |啊 |乙 | bb

ÿ£ßû↵gê Tïë¦ß |值字符串 | 0 | 0

这似乎是一个基本的事情,我做错了什么?

【问题讨论】:

    标签: mysql encryption


    【解决方案1】:

    DES_ENCRYPT('56', '1234') 将导致/+nNpdXyewki,它不能存储在用于整数的列中,因此它会(取决于您的设置)存储为0 或引发警告。如果要存储加密数据,则需要将其存储在支持字符串的列中。

    【讨论】:

    • 真的吗?这似乎是一个障碍,不是吗?
    • @franmcod 无论如何都不是行级加密的问题。
    猜你喜欢
    • 1970-01-01
    • 2011-06-30
    • 2018-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-13
    • 1970-01-01
    • 2013-04-10
    相关资源
    最近更新 更多