怎样用dbms_crypto 包进行加密数据

cowboylhl 2007-04-23 05:56:57
我想对一个数据库数据进行加密,怎样才能用dbms_crypto 包,要安装dbms_crypto 包吗?
...全文
871 30 打赏 收藏 转发到动态 举报
写回复
用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)
数据加密技术 我们经常需要一种措施来保护我们的数据,防止被一些怀有不良用心的人所看到或者破坏。在信息时代,信息可以帮助团体或个人,使他们受益,同样,信息也可以用来对他们构成威胁,造成破坏。在竞争激烈的大公司中,工业间谍经常会获取对方的情报。因此,在客观上就需要一种强有力的安全措施来保护机密数据不被窃取或篡改。数据加密与解密从宏观上讲是非常简单的,很容易理解。加密与解密的一些方法是非常直接的,很容易掌握,可以很方便的对机密数据进行加密和解密。 一:数据加密方法 在传统上,我们有几种方法来加密数据流。所有这些方法都可以用软件很容易的实现,但是当我们只知道密文的时候,是不容易破译这些加密算法的(当同时有原文和密文时,破译加密算法虽然也不是很容易,但已经是可能的了)。最好的加密算法对系统性能几乎没有影响,并且还可以带来其他内在的优点。例如,大家都知道的pkzip,它既压缩数据加密数据。又如,dbms的一些软件总是含一些加密方法以使复制文件这一功能对一些敏感数据是无效的,或者需要用户的密码。所有这些加密算法都要有高效的加密和解密能力。 幸运的是,在所有的加密算法中最简单的一种就是“置换表”算法,这种算法也能很好达到加密的需要。每一个数据段(总是一个字节)对应着“置换表”中的一个偏移量,偏移量所对应的值就输出成为加密后的文件。加密程序和解密程序都需要一个这样的“置换表”。事实上,80x86 cpu系列就有一个指令‘xlat’在硬件级来完成这样的工作。这种加密算法比较简单,加密解密速度都很快,但是一旦这个“置换表”被对方获得,那这个加密方案就完全被识破了。更进一步讲,这种加密算法对于黑客破译来讲是相当直接的,只要找到一个“置换表”就可以了。这种方法在计算机出现之前就已经被广泛的使用。 对这种“置换表”方式的一个改进就是使用2个或者更多的“置换表”,这些表都是基于数据流中字节的位置的,或者基于数据流本身。这时,破译变的更加困难,因为黑客必须正确的做几次变换。通过使用更多的“置换表”,并且按伪随机的方式使用每个表,这种改进的加密方法已经变的很难破译。比如,我们可以对所有的偶数位置的数据使用a表,对所有的奇数位置使用b表,即使黑客获得了明文和密文,他想破译这个加密方案也是非常困难的,除非黑客确切的知道用了两张表。 与使用“置换表”相类似,“变换数据位置”也在计算机加密中使用。但是,这需要更多的执行时间。从输入中读入明文放到一个buffer中,再在buffer中对他们重排序,然后按这个顺序再输出。解密程序按相反的顺序还原数据。这种方法总是和一些别的加密算法混合使用,这就使得破译变的特别的困难,几乎有些不可能了。例如,有这样一个词,变换起字母的顺序,slient 可以变为listen,但所有的字母都没有变化,没有增加也没有减少,但是字母之间的顺序已经变化了。 但是,还有一种更好的加密算法,只有计算机可以做,就是字/字节循环移位和xor操作。如果我们把一个字或字节在一个数据流内做循环移位,使用多个或变化的方向(左移或右移),就可以迅速的产生一个加密数据流。这种方法是很好的,破译它就更加困难!而且,更进一步的是,如果再使用xor操作,按位做异或操作,就就使破译密码更加困难了。如果再使用伪随机的方法,这涉及到要产生一系列的数字,我们可以使用fibbonaci数列。对数列所产生的数做模运算(例如模3),得到一个结果,然后循环移位这个结果的次数,将使破译次密码变的几乎不可能!但是,使用fibbonaci数列这种伪随机的方式所产生的密码对我们的解密程序来讲是非常容易的。 在一些情况下,我们想能够知道数据是否已经被篡改了或被破坏了,这时就需要产生一些校验码,并且把这些校验码插入到数据流中。这样做对数据的防伪与程序本身都是有好处的。但是感染计算机程序的病毒才不会在意这些数据或程序是否加过密,是否有数字签名。所以,加密程序在每次load到内存要开始执行时,都要检查一下本身是否被病毒感染,对与需要加、解密的文件都要做这种检查!很自然,这样一种方法体制应该保密的,因为病毒程序的编写者将会利用这些来破坏别人的程序或数据。因此,在一些反病毒或杀病毒软件中一定要使用加密技术。 循环冗余校验是一种典型的校验数据的方法。对于每一个数据块,它使用位循环移位和xor操作来产生一个16位或32位的校验和 ,这使得丢失一位或两个位的错误一定会导致校验和出错。这种方式很久以来就应用于文件的传输,例如 xmodem-crc。 这是方法已经成为标准,而且有详细的文档。但是,基于标准crc算法的一种修改算法对于发现加密数据块中的错误和文件是否被病毒感染是很有效的。 二.基于公钥

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧