关于Oracle数据库替代加密算法
替代密码算法的原理是使用替代法进行加密,就是将明文中的字符用其它字符替代 后形成密文。例如:明文字母a、b、c、d ,用D、E、F、G做对应替换后形成密文。
这里在Oracle的存储过程,通过替换加密算HRef="https://bimogu.com/zh-my/tags-5o1d-0.html" target="_blank" >法来实现密码存入数据库时的加密。
1.--------------------------------
2.--------------------------------
3.--Oracle数据库加密----替代算法---
4.--
5.--------------------------------
TE OR REPLACE PROCEDURE pro_insert(
7. uName IN e%TYPE, --用户名
8. uPwd IN %TYPE --密码,这个要加密
9.) IS
N
11.
12.--定义变量
ARE
14. insertSQL nvarchar2(200 ); --一个待构造的sql语句
15. key numeric(2); --密钥
16. totalLetter numeric(2); --字母的总个数
17. targetCode nvarchar2(15); --转化后的字符密码表示
18. lengthUpwd numeric(2); --密码长度
19. initCodeVal numeric(3); --原始密码每位上字符对应的数值
20. targetCodeVal numeric(3);
21. BEGIN
22.
23. key := 3; --密钥赋值
24. totalLetter := 26; --字母总数
25. targetCode := ''; --转化后的'字符
26.
27.
28. --获取初始密钥的长度
29. lengthUpwd := LENGTH(uPwd);
30. 31. --逐个对初始密钥进行加密
32. FOR i IN thUpwd
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;
pro_insert;
相關文章
-
三级数据库:在SQLSERVER中实现RSA加密算法
为了使广大考生在备战计算机等级考试时,更快的掌握相应知识点,下面是小编搜索整理的三级数据库:在SQLSERVER中实现RSA加密算法,供参考练习,预祝考生们考出自己理想的成绩!/*本次修改增加了unicode的支持,但是加密后依然显示 -
oracle数据库密码修改设置途径
一、忘记除SYS、SYSTEM用户之外的用户的登录密码。用SYS (或SYSTEM)用户登录。CONN SYS/PASS_WORD AS SYSDBA;使用如下语句修改用户的密码。ALTER USER user_name IDENTIFIED BY newpass;注意:密码不能全是数字。 -
Oracle数据库与FoxPro数据的转换
我们大家都知道Oracle数据库的数据格式和微机通用的实际应用格式有所不同,所以在实际操作中我们不能对Oracle的数据直接调用,Oracle数据库所提供的相关前台的开发工具Developer 2000虽然可以访问Oracle的数据。并有数据 -
Oracle数据库插入日期型数据的方法
racle数据库插入日期型数据,应该怎么下手呢?下面小编为大家整理了关于Oracle数据库插入日期型数据的方法,希望能为你提供帮助:往Oracle数据库中插入日期型数据(to_date的用法)INSERT INTO FLOOR VALUES ( to_date ( ' -
关于ORACLE数据库结构的简介
ORACLE的数据库结构大家都了解吗?如果不了解,下面小编为大家整理了关于ORACLE数据库结构简介的文章,希望能为你提供帮助: 一、物理结构:1、数据文件:ORACLE数据库包含若干数据文件,数据文件存储数据库数据,包括表、索引等 -
Oracle数据库SELECT语句
学习oracle数据库自然会用到查询(SELECT)语句,下面yjbys小编为大家列举各种查询语句,希望能帮助到各位!普通用户连接conn scott/tiger超级管理员连接 conn sys/sys as sysdbaDisconnect 断开连接把SQL存到文件 save c: -
Oracle数据库基础知识:SELECT语句
SELECT语句是指用来查询、添加、 和删除数据库中数据的语句, 和删除数据库中数据的语句 , 它们 是 SELECT 、 INSERT 、 UPDATE 、 DELETE等. 下面是Oracle数据库基础知识——SELECT语句,希望对大家有所帮助 -
Oracle认证数据库备份的方法
Oracle认证数据库备份方法有哪些?为帮助大家更好学习Oracle认证基础知识,yjbys小编为大家分享的是Oracle认证数据库备份的方法如下:操作下面的列出的技巧来确保你不会在每周一次的数据库备份过程中健忘关头轨范。每周一 -
oracle数据库基础使用方法解析
Oracle数据库产品为财富排行榜上的前1000家公司所采用,许多大型网站也选用了Oracle系统。下面是小编整理的关于oracle数据库基础使用方法解析,希望大家认真阅读!基础概念:数据库:存储数据的数据库,Oracle一般只有一个全 -
Oracle考试知识点:修改数据库名db-name的方法
新建控制文件,改数据库名db_name的方法: 1、先把原来的`控制文件备份成文本文件格式(@ORACLE_BASE/admin/udump/目录下)SQL>alter database backup controlfile to trace; 2、再把原来的控制文件重命名$cd $ORAD