- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这里是 SQL 新手。我正在处理一个包含数据(longblob
类型)的表,它看起来像这样(导入到 phpMyAdmin 中):
这些文件(显然)使用 AES_Encrypt()
进行了 AES 加密。我知道 key ID 为 2332 的文件的 key ,我想在那个“blahb”(blob)上调用 AES_Decrypt()
。为此,我写了一个程序:
BEGIN
DECLARE dat longblob;
SELECT blahb into dat from fyle where keeid = p_id;
SELECT AES_Decrypt(dat, p_key) into p_out;
END
然后将它嵌入到 intp phpMyAdmin 中,如下所示:
但是,当我使用 keyid 2332 和已知密码调用它时,它只返回 NULL。
我问这个问题是因为我想知道:我的存储过程是否正确?
因为如果是,我知道我认为正确的 key 实际上是错误的,或者我以错误的方式使用它。由于这是我第一次编写 SQL 过程,所以我不知道错误是在第一个原因还是第二个原因中:/。
(服务器数据:“服务器版本:10.1.10-MariaDB - mariadb.org 二进制分发版”,“Apache/2.4.17 (Win32) OpenSSL/1.0.2d PHP/5.6.19”)
编辑:运行评论中的查询结果显然是一个 blob,但没有下载链接!然而,它确实大大简化了查询,我现在甚至不必为此创建过程。
最佳答案
你不需要一个过程来获得解密的 blob。改为在 select 语句中调用函数:
SELECT AES_Descrypt(blahb, 'PLACE_HERE_YOUR_KEY') from fyle where keeid = 2332
在 PHPMyAdmin 中将 blob
字段显示为 text
非常简单,并且已在 this question 中介绍。 .
关于mysql - AES_Decrypt() 返回空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36142311/
我正在尝试使用 AES_DECRYPT 来解密表中的多个列,我该怎么做? 我正在尝试: SELECT column_a, column_b, column_c AES_DECRYPT(column_a
我一直在尝试许多不同的变体来让 AES_Decrypt 工作。我从字段类型 VARBINARY 开始,然后尝试了 BLOB 但仍然没有运气,不断返回 NULL。最终我尝试了这个: SELECT AES
我仍然不知道如何在 WHERE 子句中实现 AES_DECRYPT。 到目前为止我已经: SELECT id, AES_DECRYPT("name","salt"), AES_DECRYPT("add
这个问题已经有答案了: Unable to AES_DECRYPT after AES_ENCRYPT in mysql (4 个回答) 已关闭 7 年前。 我在 mysql 服务器 5.5.38 上
这里是 SQL 新手。我正在处理一个包含数据(longblob 类型)的表,它看起来像这样(导入到 phpMyAdmin 中): 这些文件(显然)使用 AES_Encrypt() 进行了 AES 加密
这个问题在这里已经有了答案: AES ECB encrypt/decrypt only decrypts the first 16 bytes (2 个回答) 4年前关闭。 我不知道为什么下面的代码会
我创建了一个加密表。无论大小写如何,我都试图在表中搜索特定字符串,但我无法让它工作 要搜索的字符串(员工) select aes_decrypt(category, 'salt') from test
我在 mysql 上有一个加密表,当我在命令窗口中运行以下查询时,我得到了预期的结果: select AES_DECRYPT(field,'key') as field from table 当我从
我有一些数据已加密存储在我的数据库之一上。这些是我希望在数据库上加密存储的个人详细信息。加密部分(AES_ENCRYPT(fname, $key) 工作正常 - 它以加密形式存储数据,正是我想要的方式
我有 MySQL 问题。 我想使用 AES_DECRYPT 解密 blob,并通过查询在 phpMyAdmin 中尝试 SELECT key_value ,AES_DECRYPT(key_value,
我正在使用 codeigniter。 运行以下查询后: $names = this->db->query("SELECT AES_DECRYPT(nombre,'".$key."') AS nombr
我有一个加密的 MySQL 数据库。当我执行 select where 时,它不会返回任何值。 SELECT cast(aes_decrypt(email, 'salt') as CHAR(100
我正在尝试从一些旧的遗留工作中的表中检索数据,电子邮件字段的字段中都有“[BLOB - 32 B]”,因此已加密 - 谁能解释一下我如何使用 AES_DECRYPT 来收集此表中的实际电子邮件地址?
在我的开发机器 WAMP 下,AES_ENCRYPT 和 AES_DECRYPT 没有按要求工作,我也用 ENCODE 和 DECODE 进行了测试,同样的事情发生了......我不明白为什么....
我正在介绍 MYSQL 中的加密功能。 只写了一个简单的SQL语句,将加密条目添加到字段中 INSERT INTO test_table (field1) VALUES(aes_encrypt('fi
我使用 AES_DECRYPT 将敏感数据存储在 mysql 表中。现在该表大约有 50 Mb。 我有一个 Web 界面(使用 PHP),访问者可以在其中搜索数据。我执行了一个 LIKE 搜索: SE
我发现了类似的问题,但这个问题没有明确的答案。我有这张 table : CREATE DATABASE testDB DEFAULT CHARACTER SET utf8 COLLATE utf8_g
我想更新没有 AES_ENCRYPT 的 JTable 数据可以更新和查看,但由于每次我尝试调用此方法时数据都会加密数据仍然是加密的。我该如何解决这个问题? private void Update_T
我的代码运行得很好。但后来我决定在将值存储到数据库之前对它们进行加密。我在将值存储在数据库中时使用 aes_encrypt 来加密值。我正在使用 aes_decrypt 来解密从数据库中检索/选择的值
我正在尝试替换消息并解密消息,我尝试了查询: select aes_decrypt(message,'Password')as message, replace(message,'#TD1
我是一名优秀的程序员,十分优秀!