阿里云
发表主题 回复主题
  • 291阅读
  • 2回复

oracle和mysql的 AES加密解密

级别: 小白
发帖
0
云币
-35
hi



谁 写过 oracle 和mysql 的 AES加解密函数,能保证两个数据库加解密后的 结果是一样的?


下面是我写的oracle的 加密函数,,mysql 怎么写 都 结果不一样。求大神指导呀,mysql版块人气太低了。



  1. CREATE OR REPLACE FUNCTION return_encrypted_data(data IN VARCHAR2)


  2.   RETURN RAW IS


  3.   key             VARCHAR(32) := '8297BAEA1DF39330A143045BAE8E1027';


  4.   encryption_mode NUMBER := DBMS_CRYPTO.ENCRYPT_AES256 +


  5.                             DBMS_CRYPTO.CHAIN_ECB + DBMS_CRYPTO.PAD_PKCS5;


  6. BEGIN


  7.   RETURN DBMS_CRYPTO.Encrypt(UTL_I18N.STRING_TO_RAW(data, 'AL32UTF8'),


  8.                              encryption_mode,


  9.                              UTL_I18N.STRING_TO_RAW(key, 'AL32UTF8'));


  10. END;


复制代码



本主题由 王楠w_n 于 2016-9-6 14:14 审核通过





级别: *
发帖
*
云币
*


不错.
级别: *
发帖
*
云币
*


看了下面的帖子才搞定,刚刚接触mysql,太生疏了。

http://mysqlblog.fivefarmers.com ... -better-encryption/




  1. BEGIN


  2.   DECLARE keystr VARCHAR(4000);


  3.   DECLARE str VARCHAR(4000);


  4.   DECLARE sdata varchar(500);


  5.   SET @@session.block_encryption_mode = 'aes-256-ecb';


  6.   set sdata=i_data;


  7.         set keystr ='8297BAEA1DF39330A143045BAE8E1027';


  8.   set str=hex(AES_ENCRYPT(sdata,keystr));


  9.         RETURN str;


  10. END


复制代码
发表主题 回复主题
« 返回列表
«12345678910»
共10页
上一主题下一主题

限100 字节
批量上传需要先选择文件,再选择上传
 
验证问题: 48 + 23 = ?
上一个 下一个
      ×
      全新阿里云开发者社区, 去探索开发者的新世界吧!
      一站式的体验,更多的精彩!
      通过下面领域大门,一起探索新的技术世界吧~ (点击图标进入)

      版权声明

      开发者论坛为你提供“oracle和mysql的 AES加密解密”的内容,论坛中还有更多关于 “oracle和mysql的 AES加密解密” 的内容供你使用,该内容是网友上传,与开发者论坛无关,如果需要删除请联系zixun-group@service.aliyun.com,工作人员会在5个工作日内回复您。