热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

oracle如何加密解密,oracle密码加密算法

oracle怎么解密db2加密后的数据通过配置本地数据库的tns配置文件实现:去oracle安装目录下oracle\product\10.2.0\db_2\NETWORK\ADMI

oracle 怎么解密db2加密后的数据

通过配置本地数据库的tns配置文件实现:

去oracle安装目录下oracle\product\10.2.0\db_2\NETWORK\ADMIN\ 找到tnsnames.ora,用记事本打开,里边有远程数据库的tns连接配置串如下

ORCL23 =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.23)(PORT = 1521))

)

(CONNECT_DATA =

(SID = ORCL)

)

)

添加好ip、端口和目标数据库的实例名(SID),然后确保tns名称(ORCL23)在整个文档中唯一,保存后打开数据库连接工具,输入远程数据库上的用户名密码,选择数据库对象为你配置的连接名就可以了

Oracle数据库中MD5解密方法是什么?

MD5解密方法

我在存储数据库的时候,通过md5加密方法将字段进行加密,当我在读取该字段时如何正确的读取原来的值啊

------解决方案--------------------

没办法,MD5是不可逆的。

你需要使用可逆加密算法。

------解决方案--------------------

插入表中的时候md5加密

比如:

$sql= "insert into register(names,pswd,repswd) values( '$_POST[names] ',md5( '$_POST[pswd] '),md5( '$_POST[repswd] ')) ";

$qid=mysql_query($sql);

读取的时候

$pswd=empty($_POST[ 'pswd '])? ' ':md5($_POST[ 'pswd ']);

------解决方案--------------------

如果业务要求可还原,那么不要采用MD5,请使用可逆加密算法,如DES加密。

MD5为不可逆散列算法,可用于存储用户密码,存储后不需要永远不需要知道明文。密码比较时只需将用户输入的密码再次转成MD5码与存储的相比较即可得知用户输入密码是否正确。

linux/unix操作系统一般采用MD5进行用户密码加密。

------解决方案--------------------

MD5目前所谓的破解只是采用碰撞法找到了对等因子。

比如:string1的MD5码为MD1,而现在我们做到的只是又找到了一个string2,它的MD5码也是MD1。

结果就是:用户登陆某采用MD5加密的系统时,本来密码是12345,现在可能用abcde也能登陆。

想想可能还原吗?如果可以还原,那天大的信息也能用32位长的字符串表示了,这不成了超级压缩算法了吗,整个宇宙的信息都可以用32位长表示了。不可逆的!

如何解密Oracle Warp加密过程

如何解密Oracle Warp加密过程

Oracle加密的原理就是先对源码进行lz压缩lzstr,然后对压缩数据进行SHA-1运算得到40位的加密串shstr,然后将加密串与压缩串拼接得到shstr+lzstr,然后对拼接后的字符串进行Oracle双字符转换(转换表)。最后将转换后的字符串进行base64编码,最终得到wrap的加密串。

Oracle定义DES加密解密及MD5加密函数示例

(1)DES加密函数

create

or

replace

function

encrypt_des(p_text

varchar2,

p_key

varchar2)

return

varchar2

is

v_text

varchar2(4000);

v_enc

varchar2(4000);

raw_input

RAW(128)

;

key_input

RAW(128)

;

decrypted_raw

RAW(2048);

begin

v_text

:=

rpad(

p_text,

(trunc(length(p_text)/8)+1)*8,

chr(0));

raw_input

:=

UTL_RAW.CAST_TO_RAW(v_text);

key_input

:=

UTL_RAW.CAST_TO_RAW(p_key);

dbms_obfuscation_toolkit.DESEncrypt(input

=

raw_input,key

=

key_input,encrypted_data

=decrypted_raw);

v_enc

:=

rawtohex(decrypted_raw);

dbms_output.put_line(v_enc);

return

v_enc;

end;

(2)DES解密函数

create

or

replace

function

decrypt_des(p_text

varchar2,p_key

varchar2)

return

varchar2

is

v_text

varchar2(2000);

begin

dbms_obfuscation_toolkit.DESDECRYPT(input_string

=

UTL_RAW.CAST_TO_varchar2(p_text),key_string

=p_key,

decrypted_string=

v_text);

v_text

:=

rtrim(v_text,chr(0));

dbms_output.put_line(v_text);

return

v_text;

end;

(3)MD5加密函数

CREATE

OR

REPLACE

FUNCTION

MD5(passwd

IN

VARCHAR2)

RETURN

VARCHAR2

IS

retval

varchar2(32);

BEGIN

retval

:=

utl_raw.cast_to_raw(DBMS_OBFUSCATION_TOOLKIT.MD5(INPUT_STRING

=

passwd))

;

RETURN

retval;

END;

(4)函数使用示例

DES加密:

update

tb_salarysign_staff

s

set

s.staffpwd

=encrypt_des(s.staffpwd,

'test#5124*!de');

DES解密:select

decrypt_des(s.staffpwd,

'test#5124*!de')

from

tb_salarysign_staff

s

MD5加密:

update

tb_salarysign_staff

s

set

s.staffpwd

=

md5(s.staffpwd);


推荐阅读
  • 本文由编程笔记#小编为大家整理,主要介绍了logistic回归(线性和非线性)相关的知识,包括线性logistic回归的代码和数据集的分布情况。希望对你有一定的参考价值。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 本文由编程笔记小编整理,介绍了PHP中的MySQL函数库及其常用函数,包括mysql_connect、mysql_error、mysql_select_db、mysql_query、mysql_affected_row、mysql_close等。希望对读者有一定的参考价值。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 众筹商城与传统商城的区别及php众筹网站的程序源码
    本文介绍了众筹商城与传统商城的区别,包括所售产品和玩法不同以及运营方式不同。同时还提到了php众筹网站的程序源码和方维众筹的安装和环境问题。 ... [详细]
  • 本文介绍了Paxos的世界中关于复制日志与状态机的概念和重要性。通过存储日志来实现数据的持久化,并通过日志流来记录数据的变化,而不是直接持久化数据本身。这样做的好处是简化了持久化存储的操作,并且方便多机之间的数据同步。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • 本文详细介绍了MysqlDump和mysqldump进行全库备份的相关知识,包括备份命令的使用方法、my.cnf配置文件的设置、binlog日志的位置指定、增量恢复的方式以及适用于innodb引擎和myisam引擎的备份方法。对于需要进行数据库备份的用户来说,本文提供了一些有价值的参考内容。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 如何在php中将mysql查询结果赋值给变量
    本文介绍了在php中将mysql查询结果赋值给变量的方法,包括从mysql表中查询count(学号)并赋值给一个变量,以及如何将sql中查询单条结果赋值给php页面的一个变量。同时还讨论了php调用mysql查询结果到变量的方法,并提供了示例代码。 ... [详细]
  • 本文讨论了在手机移动端如何使用HTML5和JavaScript实现视频上传并压缩视频质量,或者降低手机摄像头拍摄质量的问题。作者指出HTML5和JavaScript无法直接压缩视频,只能通过将视频传送到服务器端由后端进行压缩。对于控制相机拍摄质量,只有使用JAVA编写Android客户端才能实现压缩。此外,作者还解释了在交作业时使用zip格式压缩包导致CSS文件和图片音乐丢失的原因,并提供了解决方法。最后,作者还介绍了一个用于处理图片的类,可以实现图片剪裁处理和生成缩略图的功能。 ... [详细]
author-avatar
干将stambach_611
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有