oracle数据库中rsa算法的应用

上传人:小** 文档编号:31383824 上传时间:2018-02-07 格式:DOC 页数:4 大小:58.50KB
返回 下载 相关 举报
oracle数据库中rsa算法的应用_第1页
第1页 / 共4页
oracle数据库中rsa算法的应用_第2页
第2页 / 共4页
oracle数据库中rsa算法的应用_第3页
第3页 / 共4页
oracle数据库中rsa算法的应用_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《oracle数据库中rsa算法的应用》由会员分享,可在线阅读,更多相关《oracle数据库中rsa算法的应用(4页珍藏版)》请在金锄头文库上搜索。

1、oracle 数据库中 RSA 算法的应用 任彦燕 太原理工大学计算机科学与技术学院 摘 要: 随着计算机网络和 Internet 的发展, 全球信息化己成为人类社会发展的大趋势。在今天的信息社会里, 科学技术的研究和发展十分快速, 数据安全保密问题也日益突出。RSA 作为非对称加密算法, 算法强度复杂、安全性依赖于算法与密钥, 能够很好地将信息进行加密。而人们通常对加密后的内容摸不清头绪, 更直观明白的是加密前的内容, 因此, 解密工作很有必要。解密需要对应相应的解密算法, 找到相应的解密密钥, 并且在很短的时间内将此工作完成, 是十分困难的事情, 而又快又准进行解密工作, 更是难上加难,

2、因此解密也是非常有技术含量的事情。关键词: 数据安全; RSA; 解密; 作者简介:任彦燕 (1992-) , 女, 山西太原人, 在读硕士研究生, 专业方向:软件工程开发与应用。Application of RSA Algorithm in Oracle DatabaseRen Yanyan Taiyuan University of Technology; Abstract: With the development of computer network and Internet, the global informatization has become the general tre

3、nd of human society development. In todays information society, the research and development of science and technology is very fast, and the problem of data security and security is becoming increasingly prominent.RSA, as an asymmetric encryption algorithm, has complex strength and security. It reli

4、es on algorithms and keys that can encrypt the information well. People usually do not understand the encrypted content, and what is more intuitive is the content before encryption. Therefore, decryption is necessary. The corresponding decryption requires the corresponding decryption algorithm, find

5、s the corresponding decryption key and this work should be completed in a very short period of time, so it is very difficult thing, and quickly and accurately to decrypt is even more difficult. Therefore, the decryption is also very technical matter.Keyword: data security; RSA; decryption; 1 加密描述ora

6、cle 中对表中部分字段进行 RSA 加密, 将 varchar 数据转化为二进制数据, 再进行数据的动态加密, 形成新的加密二进制数据。2 解决方案寻找 DES 加密的公钥和私钥, 以及加密算法, 根据相应的加密算法书写相应的解密算法, 对 oracle 加密字段进行解密工程, 最终将解密后的二进制数据转化为最初可以看懂的 varchar 数据进行展示。oracle 中对表字段数据进行数据转化和加密, 并调用 java 代码对数据进行 RSA加密。3 加解密过程描述1) 确定加密公钥, 加密私钥。2) 使用 RSA_ENCRYPT (UTL_I18N.STRING_TO_RAW (IN_ST

7、R, AL32UTF8) , PUBLIC_KEY, PRIVATE_KEY) 加密算法, 并对 IN_STR 字段用 AL32UTF8 进行varchar 到 raw 的数据转化。3) 加密算法的实现。CREATE OR REPLACE FUNCTION RSA_EN-CRYPT (SRC_DATA RAW, PUBLIC_KEY VAR-CHAR2, PRIVATE_KEY VARCHAR2) return RAWas language java nameEncryptor.encrypt (byte, java.lang.String, java.lang.String) return

8、byte;RSA_ENCRYPT (UTL_I18N.STRING_TO_RAW (IN_STR, AL32UTF8) 方法中调用了java 中 Encryptor 类的.encrypt (byte, java.lang.String, java.lang.String) 方法, 进行数据加密1。Encryptor 类的 encrypt (byte, java.lang.String, java.lang.String) 方法:byte中的内容是需要加密的字段, 第一个 java.lang.String 代表加密公钥, 第二个 java.lang.String 代表加密私钥。采用对数据库中的单

9、个字母进行转换, 位移等方式, 将数据库中的数据进行加密。4) 解密算法的实现。根据上述的加密算法, 相反方向进行解密。首先, 先将加密后的内容, 调用java 中 Encryptor 类的.decrypt (byte, java.lang.String, java.lang.String) 方法, 进行数据解密。Encryptor 类的 decrypt (byte, java.lang.String, java.lang.String) 方法:byte中的内容是需要解密的字段, 第一个 java.lang.String 代表解密公钥, 第二个 java.lang.String 代表解密私钥。

10、采用对数据库中的单个字母进行转换, 位移等方式, 将数据库中的数据进行解密。并最终返回 byte类型的数据。得到 byte类型的数据后, 使用 UTL_I18N.raw_to_char (ENCRYPTED_RAW, AL32UTF8) ;方法, 将 byte类型的数据转化为人们可以看懂的字符类型的数据。4 oracle 数据库中应用1) oracle 数据库中数据加密后的结果。图 1 加密数据图 下载原图2) 将 java 程序引入到 oracle 数据库中, 如图 2 所示。图 2 程序引入图 下载原图3) 将解密算法引入到 oracle 数据库中CREATE OR REPLACE FUN

11、CTION ryy_RSA_ENCRYPT (SRC_DATA RAW, PUBLIC_KEY VAR-CHAR2, PRIVATE_KEY VARCHAR2) return RAW as language java nameTest.decrypt (byte, java.lang.String, java.lang.String) return byte;调用解密方法和使用相应的公钥和私钥并对二进制数据进行转化:4) 最终在 oracle 的表中调用相应的方法, 对表中相应的字段进行解密:select a.busi_id, ryy_CHK_ENCRYPT (a.encrypted_not_pass) from CHK_BUSI_RESULT_DET a5) 解密后, 获得加密前的数据内容, 如图 3 所示。图 3 解密后数据图 下载原图5 本研究的亮点加密、解密, 密切跟数据库中的数据相关, 将 java 程序与 oracle 数据库紧密结合, java 代码和 sq 语言合为一体, 结合生产实践, 将理论的加解密应用到现实数据中, 达到一定的研究高度。且快速的, 将加密数据进行解密, 高效的解决实际问题是我们学习、工作中一直追求的目标。参考文献1鞠宏伟, 李凤银, 禹继国, 等.基于 RSA 的证实数字签名方案J.计算机工程, 2006, 32 (7) :154-156.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 管理论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号