亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        oracle數據庫中RSA算法的應用

        2017-12-20 03:35:40任彥燕
        山西電子技術 2017年6期
        關鍵詞:數據庫

        任彥燕

        (太原理工大學計算機科學與技術學院,山西 太原 030024)

        oracle數據庫中RSA算法的應用

        任彥燕

        (太原理工大學計算機科學與技術學院,山西 太原 030024)

        隨著計算機網絡和Internet的發(fā)展,全球信息化己成為人類社會發(fā)展的大趨勢。在今天的信息社會里,科學技術的研究和發(fā)展十分快速,數據安全保密問題也日益突出。RSA作為非對稱加密算法,算法強度復雜、安全性依賴于算法與密鑰,能夠很好地將信息進行加密。而人們通常對加密后的內容摸不清頭緒,更直觀明白的是加密前的內容,因此,解密工作很有必要。解密需要對應相應的解密算法,找到相應的解密密鑰,并且在很短的時間內將此工作完成,是十分困難的事情,而又快又準進行解密工作,更是難上加難,因此解密也是非常有技術含量的事情。

        數據安全; RSA; 解密

        1 加密描述

        oracle中對表中部分字段進行RSA加密,將varchar數據轉化為二進制數據,再進行數據的動態(tài)加密,形成新的加密二進制數據。

        2 解決方案

        尋找DES加密的公鑰和私鑰,以及加密算法,根據相應的加密算法書寫相應的解密算法,對oracle加密字段進行解密工程,最終將解密后的二進制數據轉化為最初可以看懂的varchar數據進行展示。

        oracle中對表字段數據進行數據轉化和加密,并調用java代碼對數據進行RSA加密。

        3 加解密過程描述

        1) 確定加密公鑰,加密私鑰。

        2) 使用RSA_ENCRYPT(UTL_I18N.STRING_TO_RAW(IN_STR, 'AL32UTF8'),PUBLIC_KEY,PRIVATE_KEY)加密算法,并對IN_STR字段用AL32UTF8進行varchar到raw的數據轉化。

        3) 加密算法的實現。

        CREATE OR REPLACE FUNCTION RSA_ENCRYPT(SRC_DATA RAW, PUBLIC_KEY VARCHAR2, PRIVATE_KEY VARCHAR2) return RAW

        as language java name 'Encryptor.encrypt(byte[], java.lang.String, java.lang.String) return 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代表加密私鑰。采用對數據庫中的單個字母進行轉換,位移等方式,將數據庫中的數據進行加密。

        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代表解密私鑰。采用對數據庫中的單個字母進行轉換,位移等方式,將數據庫中的數據進行解密。并最終返回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 FUNCTION ryy_RSA_ENCRYPT(SRC_DATA RAW, PUBLIC_KEY VARCHAR2, PRIVATE_KEY VARCHAR2) return RAW as language java name ’Test.decrypt(byte[], java.lang.String, java.lang.String) return byte[]’;

        調用解密方法和使用相應的公鑰和私鑰并對二進制數據進行轉化:

        CREATE OR REPLACE FUNCTION ryy_CHK_ENCRYPT(IN_STR RAW) RETURN VARCHAR2 IS

        ENCRYPTED_RAW RAW(2000); --加密的二進制文本

        YUAN_ZIDUAN VARCHAR2(1000);

        PUBLIC_KEY VARCHAR2(1000); --密鑰

        PRIVATE_KEY VARCHAR2(1000); --密鑰

        BEGIN

        IF IN_STR IS NULL THEN

        RETURN NULL;

        END IF;

        PUBLIC_KEY := ”;

        PRIVATE_KEY :=”;

        ENCRYPTED_RAW := RYY_RSA_ENCRYPT(IN_STR,PUBLIC_KEY,PRIVATE_KEY);

        YUAN_ZIDUAN:=UTL_I18N.raw_to_char(ENCRYPTED_RAW, ’AL32UTF8’);

        RETURN YUAN_ZIDUAN;

        END;

        4) 最終在oracle的表中調用相應的方法,對表中相應的字段進行解密:

        select a.busi_id,ryy_CHK_ENCRYPT(a.encrypted_not_pass) from CHK_BUSI_RESULT_DET a

        5) 解密后,獲得加密前的數據內容,如圖3所示。

        圖3 解密后數據圖

        5 本研究的亮點

        加密、解密,密切跟數據庫中的數據相關,將java程序與oracle數據庫緊密結合,java代碼和sql語言合為一體,結合生產實踐,將理論的加解密應用到現實數據中,達到一定的研究高度。且快速的,將加密數據進行解密,高效的解決實際問題是我們學習、工作中一直追求的目標。

        [1] 鞠宏偉,李鳳銀,禹繼國,等.基于RSA的證實數字簽名方案[J].計算機工程,2006,32(7):154-156.

        ApplicationofRSAAlgorithminOracleDatabase

        Ren Yanyan

        (TaiyuanUniversityofTechnology,TaiyuanShanxi030024,China)

        With the development of computer network and Internet, the global informatization has become the general trend of human society development. In today's 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 relies 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, finds 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.

        data security; RSA; decryption

        2017-10-13

        任彥燕(1992- ),女,山西太原人,在讀碩士研究生,專業(yè)方向:軟件工程開發(fā)與應用。

        1674- 4578(2017)06- 0066- 02

        TP309.7

        A

        猜你喜歡
        數據庫
        數據庫
        財經(2017年15期)2017-07-03 22:40:49
        數據庫
        財經(2017年2期)2017-03-10 14:35:35
        兩種新的非確定數據庫上的Top-K查詢
        數據庫
        財經(2016年15期)2016-06-03 07:38:02
        數據庫
        財經(2016年3期)2016-03-07 07:44:46
        數據庫
        財經(2016年6期)2016-02-24 07:41:51
        數據庫
        財經(2015年3期)2015-06-09 17:41:31
        數據庫
        財經(2014年21期)2014-08-18 01:50:18
        數據庫
        財經(2014年6期)2014-03-12 08:28:19
        數據庫
        財經(2013年6期)2013-04-29 17:59:30
        色又黄又爽18禁免费网站现观看 | 麻豆av传媒蜜桃天美传媒| 国产精品视频免费的| 国内精品久久人妻性色av| 国产av久久在线观看| 国产精品永久免费| 色爱区综合激情五月综合小说| 国产对白刺激在线观看| 永久中文字幕av在线免费| 成人网站在线进入爽爽爽| 国产99久久亚洲综合精品| 亚洲中文久久久久无码| 亚洲桃色蜜桃av影院| 无码人妻一区二区三区免费看| 无码国产色欲xxxxx视频| 久久久精品456亚洲影院| 97久久综合精品国产丝袜长腿 | 综合久久加勒比天然素人| 国产自拍高清在线观看| 全球中文成人在线| аⅴ天堂国产最新版在线中文 | 成在线人免费视频| 日韩毛片在线看| 国产精品国产三级国av在线观看| 亚洲精品国产成人久久av| 亚洲欧美日韩国产精品一区二区| 国产欧美成人| 亚洲大片一区二区三区四区 | 亚洲av久久久噜噜噜噜| 无码人妻丰满熟妇精品区| 国产自产21区激情综合一区| 19款日产奇骏车怎么样| 久久综合狠狠色综合伊人| 欧美视频九九一区二区| 97中文乱码字幕在线| 噜噜综合亚洲av中文无码| 亚洲日韩精品欧美一区二区一| japanese色国产在线看视频| 国产不卡在线观看视频| 人妻熟女一区二区三区app下载| 国产精品亚洲欧美天海翼|