❶ 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数据库用户的密码,怎么办
可以参考如下方法在忘记oracle密码的情况下,修改密码。
忘记sys,system用户的密码:
使用ORAPWD.EXE工具修改密码:在开始菜单点击‘运行’,输入‘cmd’,打开命令提示窗口,输入如下命令:
orapwd file=d:\oracle\proct\10.1.0\Db_2\database\pwdctcsys.ora password=123456
这个命令重新生成了数据库密码文件。密码文件的位置在ORACLE_HOME目录下的\database目录下。这个密码是修改sys用户的密 码。 除了sys和system其它用户的密码不会改变。
忘记system用户的密码:
可以用sys用户登录。然后用alter user命令修改密码。如:
conn sys/pass_word as sysdba;
alter user system identified by newpass;
忘记sys用户密码:
可以用system用户登录。然后用alert user 命令修改密码,如:
CONN SYSTEM/PASS_WORD;
ALTER USER SYSTEM IDENTIFIED BY NEWPASS;
忘记除sys/system用户之外的用户的登录密码。
用sys(或者system)登录。CONN SYS/PASS_WORD AS SYSDBA;
使用如下语句修改用户的密码。ALTER USER USER_NAME IDENTIFIED BY NEWPASS;主要密码不能是全数字且不能以数字开头。
(1)CONN SYS/PASS AS SYSDBA;//以DBA的身份登录