社区
基础和管理
帖子详情
怎样用dbms_crypto 包进行加密数据
cowboylhl
2007-04-23 05:56:57
我想对一个数据库数据进行加密,怎样才能用dbms_crypto 包,要安装dbms_crypto 包吗?
...全文
871
30
打赏
收藏
怎样用dbms_crypto 包进行加密数据
我想对一个数据库数据进行加密,怎样才能用dbms_crypto 包,要安装dbms_crypto 包吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
30 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
林礼达
2012-07-31
打赏
举报
回复
login as sysdba
fwwly819316
2012-06-11
打赏
举报
回复
[Quote=引用 27 楼 的回复:]
知道啦
[/Quote]
哥们儿你知道了,发一下解决方案啊!
liugaojun
2008-06-12
打赏
举报
回复
login as sysdba
cowboylhl
2007-04-26
打赏
举报
回复
知道啦
cowboylhl
2007-04-25
打赏
举报
回复
大侠们,下面这是什么错误?该怎么做?
SQL> alter system set encryption key authenticated BY "topSecret";
alter system set encryption key authenticated BY "topSecret"
*
第 1 行出现错误:
ORA-28368: 无法自动创建 wallet
AFIC
2007-04-24
打赏
举报
回复
那是10g的,你该用
dbms_obfuscation_toolkit
cowboylhl
2007-04-24
打赏
举报
回复
帮我看看撒,这个问题在哪儿:
SQL> GRANT EXECUTE ON dbms_crypto TO LIHAILONG;
GRANT EXECUTE ON dbms_crypto TO LIHAILONG
*
第 1 行出现错误:
ORA-00942: 表或视图不存在
cowboylhl
2007-04-24
打赏
举报
回复
还是谢谢你
AFIC
2007-04-24
打赏
举报
回复
兄弟你真执著阿,我都感动了。
我告诉你啊
www.google.com
下班了,88。
cowboylhl
2007-04-24
打赏
举报
回复
说说dbms_crypto_toolkit.Encrypt()的参数情况
cowboylhl
2007-04-24
打赏
举报
回复
详细说明一下撒,教教我怎么做才能使用dbms_crypto呀
cowboylhl
2007-04-24
打赏
举报
回复
为什么不存在呀指教一下撒
AFIC
2007-04-24
打赏
举报
回复
当然,DATA_CRYPTO不存在,直接
dbms_crypto_toolkit.Encrypt()
cowboylhl
2007-04-24
打赏
举报
回复
一调用这个包的函数就会出现:
第 2 行出现错误:
ORA-00904: "DATA_CRYPTO"."ENCRYPT": 标识符无效
cowboylhl
2007-04-24
打赏
举报
回复
不是说dbms_crypto默认是安全的么,必须授权吗
cowboylhl
2007-04-24
打赏
举报
回复
这个包可以
AFIC
2007-04-24
打赏
举报
回复
不用,那个是public的,
你DBMS_CRYPTO_TOOLKIT.HASH_CHECKSUM
之类的函数不能用吗?
cowboylhl
2007-04-24
打赏
举报
回复
返回这个错误信息:
帮我看看撒,这个问题在哪儿:
SQL> GRANT EXECUTE ON dbms_crypto TO LIHAILONG;
GRANT EXECUTE ON dbms_crypto TO LIHAILONG
*
第 1 行出现错误:
ORA-00942: 表或视图不存在
cowboylhl
2007-04-24
打赏
举报
回复
我用的system用户
AFIC
2007-04-24
打赏
举报
回复
你用哪个用户执行grant execute on DBMS_crypto to LHL的阿……
返回的具体错误信息?
加载更多回复(10)
nve:一个可以轻松存储和检索名称的实用程序
欢迎来到 nve! (名称:值
加密
) 使用 Oracle PL/SQL 轻松存储和检索名称:值对
加密
(NVE)
数据
的实用程序。 该项目的目标是能够使用最强大的
加密
方法轻松保存敏感信息。 该项目使用 Oracle 的
dbms
_
crypto
包
使用 256 位 AES 算法与密码块链接和 PKCS#5 兼容填充
进行
实际
加密
。 在最简单的形式中,您只需使用以下代码即可
加密
数据
: 简单的
加密
程序调用 begin nve.encrypt ('anyStringName','anyStringValue'); end;
数据
将保存在 3 个表中:一个Name查找表,一个存储每个 Name:Value 对的唯一
加密
密钥的 1/2(又名“盐”)的表,最后一个存储
加密
的Value
数据
的表. 检索
数据
也很容易,以下面的代码为例: 简单解密函数调用 set serveroutput on
DES
数据
加密
数据
加密
技术 我们经常需要一种措施来保护我们的
数据
,防止被一些怀有不良用心的人所看到或者破坏。在信息时代,信息可以帮助团体或个人,使他们受益,同样,信息也可以用来对他们构成威胁,造成破坏。在竞争激烈的大公司中,工业间谍经常会获取对方的情报。因此,在客观上就需要一种强有力的安全措施来保护机密
数据
不被窃取或篡改。
数据
加密
与解密从宏观上讲是非常简单的,很容易理解。
加密
与解密的一些方法是非常直接的,很容易掌握,可以很方便的对机密
数据
进行
加密
和解密。 一:
数据
加密
方法 在传统上,我们有几种方法来
加密
数据
流。所有这些方法都可以用软件很容易的实现,但是当我们只知道密文的时候,是不容易破译这些
加密
算法的(当同时有原文和密文时,破译
加密
算法虽然也不是很容易,但已经是可能的了)。最好的
加密
算法对系统性能几乎没有影响,并且还可以带来其他内在的优点。例如,大家都知道的pkzip,它既压缩
数据
又
加密
数据
。又如,
dbms
的一些软件
包
总是
包
含一些
加密
方法以使复制文件这一功能对一些敏感
数据
是无效的,或者需要用户的密码。所有这些
加密
算法都要有高效的
加密
和解密能力。 幸运的是,在所有的
加密
算法中最简单的一种就是“置换表”算法,这种算法也能很好达到
加密
的需要。每一个
数据
段(总是一个字节)对应着“置换表”中的一个偏移量,偏移量所对应的值就输出成为
加密
后的文件。
加密
程序和解密程序都需要一个这样的“置换表”。事实上,80x86 cpu系列就有一个指令‘xlat’在硬件级来完成这样的工作。这种
加密
算法比较简单,
加密
解密速度都很快,但是一旦这个“置换表”被对方获得,那这个
加密
方案就完全被识破了。更进一步讲,这种
加密
算法对于黑客破译来讲是相当直接的,只要找到一个“置换表”就可以了。这种方法在计算机出现之前就已经被广泛的使用。 对这种“置换表”方式的一个改进就是使用2个或者更多的“置换表”,这些表都是基于
数据
流中字节的位置的,或者基于
数据
流本身。这时,破译变的更加困难,因为黑客必须正确的做几次变换。通过使用更多的“置换表”,并且按伪随机的方式使用每个表,这种改进的
加密
方法已经变的很难破译。比如,我们可以对所有的偶数位置的
数据
使用a表,对所有的奇数位置使用b表,即使黑客获得了明文和密文,他想破译这个
加密
方案也是非常困难的,除非黑客确切的知道用了两张表。 与使用“置换表”相类似,“变换
数据
位置”也在计算机
加密
中使用。但是,这需要更多的执行时间。从输入中读入明文放到一个buffer中,再在buffer中对他们重排序,然后按这个顺序再输出。解密程序按相反的顺序还原
数据
。这种方法总是和一些别的
加密
算法混合使用,这就使得破译变的特别的困难,几乎有些不可能了。例如,有这样一个词,变换起字母的顺序,slient 可以变为listen,但所有的字母都没有变化,没有增加也没有减少,但是字母之间的顺序已经变化了。 但是,还有一种更好的
加密
算法,只有计算机可以做,就是字/字节循环移位和xor操作。如果我们把一个字或字节在一个
数据
流内做循环移位,使用多个或变化的方向(左移或右移),就可以迅速的产生一个
加密
的
数据
流。这种方法是很好的,破译它就更加困难!而且,更进一步的是,如果再使用xor操作,按位做异或操作,就就使破译密码更加困难了。如果再使用伪随机的方法,这涉及到要产生一系列的数字,我们可以使用fibbonaci数列。对数列所产生的数做模运算(例如模3),得到一个结果,然后循环移位这个结果的次数,将使破译次密码变的几乎不可能!但是,使用fibbonaci数列这种伪随机的方式所产生的密码对我们的解密程序来讲是非常容易的。 在一些情况下,我们想能够知道
数据
是否已经被篡改了或被破坏了,这时就需要产生一些校验码,并且把这些校验码插入到
数据
流中。这样做对
数据
的防伪与程序本身都是有好处的。但是感染计算机程序的病毒才不会在意这些
数据
或程序是否加过密,是否有数字签名。所以,
加密
程序在每次load到内存要开始执行时,都要检查一下本身是否被病毒感染,对与需要加、解密的文件都要做这种检查!很自然,这样一种方法体制应该保密的,因为病毒程序的编写者将会利用这些来破坏别人的程序或
数据
。因此,在一些反病毒或杀病毒软件中一定要使用
加密
技术。 循环冗余校验是一种典型的校验
数据
的方法。对于每一个
数据
块,它使用位循环移位和xor操作来产生一个16位或32位的校验和 ,这使得丢失一位或两个位的错误一定会导致校验和出错。这种方式很久以来就应用于文件的传输,例如 xmodem-crc。 这是方法已经成为标准,而且有详细的文档。但是,基于标准crc算法的一种修改算法对于发现
加密
数据
块中的错误和文件是否被病毒感染是很有效的。 二.基于公钥
Oracle之
DBMS
_
CRYPTO
包
的使用(
加密
包
)
关于
加密
的内容比较较多,我这里主要介绍使用
DBMS
_
CRYPTO
进行
对
数据
的
加密
以及
加密
后的
数据
进行
解密。下面我们以例子的形式
进行
说明。 如果要使用
dbms
_
crypto
包
,需要授予如下权限: SQL> grant execute on
dbms
_
crypto
to djp01 2 / Grant succeeded. SQL> 下面,我们看一个
数据
加密
的例子: SQL> se...
通过
DBMS
_
CRYPTO
包
对表敏感字段
进行
加密
通过
DBMS
_
CRYPTO
包
对表敏感字段
进行
加密
Oracle中 的
DBMS
_
CRYPTO
加密
包
对Oracle内部
数据
的
加密
,可以简单得使用
DBMS
_
CRYPTO
来
进行
,效果还是不错的,而且使用也比较方便,所以今天专门来学习一下这个
包
的使用方法。在使用之前,要注意两件事情: 1、
DBMS
_
CRYPTO
包
是10g才有的,如果在10g以前的版本,使用
DBMS
_OBFUSCATION_TOOLKIT
包
; 2、
DBMS
_
CRYPTO
默认只有SYSDBA用户才可执行,所以其他...
基础和管理
17,377
社区成员
95,128
社区内容
发帖
与我相关
我的任务
基础和管理
Oracle 基础和管理
复制链接
扫一扫
分享
社区描述
Oracle 基础和管理
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章