灵活运用SQL Server口令加密
作者:佚名 来源:本站 时间:2018-07-21 点击:142次
不知道你有没有发现SQL Server用的master.dbo.sysxlogins里面存放着用户的口令,但password字段如果不是null就是一堆看不懂的binary,这个口令是怎么加密的呢?其实只要仔细看看master.dbo.sp_addlogin就知道了,SQL Server的sp都可以看到代码,真是不错。
让我们来看看它是怎么做的,注意这一行select @passwd = pwdencrypt(@passwd),这个时后@passwd就被加密了,让我们也来试一下:
DECLARE@ClearPWDvarchar(255)
DECLARE@EncryptedPWDvarbinary(255)
SELECT@ClearPWD=’test’
SELECT@EncryptedPWD=CONVERT(varbinary(255),pwdencrypt(@ClearPWD))
SELECT@EncryptedPWD
看上去不错,确实被加密了,可是我怎么还原呢?这就没戏了,口令加密都是单向的,用加密后的密文来比较就可以了。
继续看看其它用户相关的sp,可以发现master.dbo.sp_password里面有口令比较的内容。
pwdcompare(@old, password, (CASE WHEN xstatus&2048 = 2048 THEN 1 ELSE 0 END))
不用去理会xstatus,这是一个状态掩码,一般我们用的时候就直接用0就可以了
DECLARE@ClearPWDvarchar(255)
DECLARE@EncryptedPWDvarbinary(255)
SELECT@ClearPWD=’test’
SELECT@EncryptedPWD=CONVERT(varbinary(255),pwdencrypt(@ClearPWD))
SELECTpwdcompare(@ClearPWD,@EncryptedPWD,0)
SELECTpwdcompare(’ErrorPassword’,@EncryptedPWD,0)
这样我们就可以使用这两个函数来加密自己的密码了
- 上一篇: 系统倒计时关机命令妙用
- 下一篇: windows系统下ftp命令大全
相关阅读
热门文章
推荐游戏
换一换- 血染沙域安卓最新版-血染沙域游戏免费下载v1.0手机版
- 我的世界生存战争最新破解版-我的世界生存战争无限资源版下载v2.1.0无限金币生命版
- 迷你世界元祥儿版本-迷你世界元祥儿更新版提供下载v1.12.3
- 腾讯黎明觉醒手游-腾讯黎明觉醒公测版下载v22.0.50安卓版
- Auto Royal Chess手游下载-Auto Royal Chess游戏下载v0.3.87
- 英灵契约手游-英灵契约下载安卓版v1.0.0中文版
- 王牌机战2022年最新版-王牌机战2022新版提供下载安装v2.4.1
- 胡莱三国3满vip版-胡莱三国3满v版下载v10.8.1满v无限元宝版
- 荣耀大天使官方版-荣耀大天使官服折扣平台下载v1.10.51官服
- 人气排行