一二三区免费观看|av无码字幕av|亚洲AV综合色区无码一区|五月激情网婷婷激情|久久久久久久久久久久久大色天下|国产97av在线|四虎一区在线观看|96人人操_人人|九九九日本精品免费观看|伊人久久激情

Oracle數(shù)據(jù)庫替代加密算法

時間:2024-08-21 13:07:15 Oracle認證 我要投稿
  • 相關推薦

關于Oracle數(shù)據(jù)庫替代加密算法

  替代密碼算法的原理是使用替代法進行加密,就是將明文中的字符用其它字符替代 后形成密文。例如:明文字母a、b、c、d ,用D、E、F、G做對應替換后形成密文。

  這里在Oracle的存儲過程,通過替換加密算法來實現(xiàn)密碼存入數(shù)據(jù)庫時的加密。

  1.--------------------------------

  2.--------------------------------

  3.--Oracle數(shù)據(jù)庫加密----替代算法---

  4.--

  5.--------------------------------

  6.CREATE OR REPLACE PROCEDURE pro_insert(

  7. uName IN scott.users.uname%TYPE, --用戶名

  8. uPwd IN scott.users.upwd%TYPE --密碼,這個要加密

  9.) IS

  10.BEGIN

  11.

  12.--定義變量

  13.DECLARE

  14. insertSQL nvarchar2(200 ); --一個待構造的sql語句

  15. key numeric(2); --密鑰

  16. totalLetter numeric(2); --字母的總個數(shù)

  17. targetCode nvarchar2(15); --轉化后的字符密碼表示

  18. lengthUpwd numeric(2); --密碼長度

  19. initCodeVal numeric(3); --原始密碼每位上字符對應的數(shù)值

  20. targetCodeVal numeric(3);

  21. BEGIN

  22.

  23. key := 3; --密鑰賦值

  24. totalLetter := 26; --字母總數(shù)

  25. targetCode := ''; --轉化后的字符

  26.

  27.

  28. --獲取初始密鑰的長度

  29. lengthUpwd := LENGTH(uPwd);

  30. 31. --逐個對初始密鑰進行加密

  32. FOR i IN 1..lengthUpwd

  33. LOOP

  34.

  35. initCodeVal := ASCII(SUBSTR(uPwd,i,1) ) -96 ;

  36. --如果替代后的字母超過了z

  37. targetCodeVal := MOD((initCodeVal + key), totalLetter );

  38.

  39. --如果是字母z

  40. IF targetCodeVal = 0 THEN

  41. targetCodeVal := 26;

  42. END IF;

  43.

  44. targetCodeVal := targetCodeVal + 96;

  45.

  46. --將加密后的字符拼裝

  47. targetCode := targetCode || CHR(targetCodeVal);

  48. END LOOP;

  49.

  50. --構造一個sql語句

  51. insertSQL := 'INSERT INTO users (uName, uPwd ) VALUES('''

  52. ||uName||''','''||targetCode||''')';

  53. EXECUTE IMMEDIATE TO_CHAR(insertSQL);

  54.

  55. END;

  56.END pro_insert;

【Oracle數(shù)據(jù)庫替代加密算法】相關文章:

Oracle數(shù)據(jù)庫語句大全10-08

ORACLE數(shù)據(jù)庫碎片的整理08-18

oracle數(shù)據(jù)庫基本語句08-21

Oracle數(shù)據(jù)庫認證層次08-29

Oracle數(shù)據(jù)庫的基本介紹09-04

Oracle數(shù)據(jù)庫SQLPLUS介紹10-09

Oracle數(shù)據(jù)庫SELECT語句10-25

Oracle 數(shù)據(jù)庫查詢小技巧10-17

oracle數(shù)據(jù)庫基礎知識07-26

Oracle數(shù)據(jù)庫基本知識09-13