亚洲一级免费看,特黄特色大片免费观看播放器,777毛片,久久久久国产一区二区三区四区,欧美三级一区二区,国产精品一区二区久久久久,人人澡人人草

Oracle認(rèn)證

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

時間:2024-06-15 12:05:18 Oracle認(rèn)證 我要投稿
  • 相關(guān)推薦

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

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

  這里在Oracle的存儲過程,通過替換加密算法來實(shí)現(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 ); --一個待構(gòu)造的sql語句

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

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

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

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

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

  20. targetCodeVal numeric(3);

  21. BEGIN

  22.

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

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

  25. targetCode := ''; --轉(zhuǎn)化后的字符

  26.

  27.

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

  29. lengthUpwd := LENGTH(uPwd);

  30. 31. --逐個對初始密鑰進(jìn)行加密

  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. --構(gòu)造一個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ù)庫替代加密算法】相關(guān)文章:

Oracle數(shù)據(jù)庫SQLPLUS介紹07-16

Oracle數(shù)據(jù)庫基本知識08-12

學(xué)習(xí)Oracle數(shù)據(jù)庫技巧攻略06-09

Oracle數(shù)據(jù)庫知識點(diǎn):SQLPLUS介紹07-16

Oracle數(shù)據(jù)庫基礎(chǔ)知識:SELECT語句10-07

2016最新Oracle數(shù)據(jù)庫導(dǎo)入導(dǎo)出命令總結(jié)07-16

Oracle數(shù)據(jù)庫中表的四種連接方式07-26

Oracle數(shù)據(jù)庫無響應(yīng)故障處理方式08-17

Oracle發(fā)展歷程08-25

Oracle認(rèn)證體系介紹01-30