Microsoft SQL Server是如何加密口令的?未公开的加密函数
其实只要仔细看看master.dbo.sp_addlogin就知道了,MSSQL的sp都可以看到代码,真是不错。
让我们来看看它是怎么做的,注意这一行select @passwd = pwdencrypt(@passwd),这个时后@passwd就被加密了,让我们也来试一下
DECLARE @ClearPWD varchar(255)
DECLARE @EncryptedPWD varbinary(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 @ClearPWD varchar(255)
DECLARE @EncryptedPWD varbinary(255)
SELECT @ClearPWD = 'test'
SELECT @EncryptedPWD = CONVERT(varbinary(255), pwdencrypt(@ClearPWD))
SELECT pwdcompare(@ClearPWD, @EncryptedPWD, 0)
SELECT pwdcompare('ErrorPassword', @EncryptedPWD, 0)
这样我们就可以使用这两个函数来加密自己的密码了,怎么样,还不错吧?
转载于:https://www.cnblogs.com/Forrest_Lu/archive/2004/04/21/6969.html
Microsoft SQL Server是如何加密口令的?未公开的加密函数相关推荐
- 把Oracle数据库移植到Microsoft SQL Server 7 0
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 把Ora ...
- Microsoft SQL Server 2000整合规划
Microsoft SQL Server 2000整合规划 更新日期: 2004年06月24日 SQL Server技术文章 作者:Allan Hirt 投稿人:Tom Davidson和Shaun ...
- 访问 Microsoft SQL Server 元数据的三种
上海微创软件有限公司 肖桂东 适用读者:Microsoft SQL Server 中.高级用户 元数据简介 元数据 (metadata) 最常见的定义为"有关数据的结构数据",或者 ...
- Microsoft SQL Server 存储过程
Microsoft SQL Server 存储过程 TRIGGER DDL触发器:主要用于防止对数据库架构.视图.表.存储过程等进行的某些修改:DDL事件是指对数据库CREATE,ALTER,DROP ...
- Microsoft SQL Server 自定义函数整理大全--转【叶子】的文章
SQL SERVER中是允许有自定义函数,Microsoft SQL Server并不将用户限制在定义为 Transact-SQL语言一部分的内置函数上,而是允许用户创建自己的用户定义函数. 函数是由 ...
- [转]Microsoft SQL Server 自定义函数整理大全
SQL SERVER中是允许有自定义函数,Microsoft SQL Server 并不将用户限制在定义为 Transact-SQL 语言一部分的内置函数上,而是允许用户创建自己的用户定义函数. 函数 ...
- 用于打开和创建SQLite,Microsoft SQL Server,PostgreSQL和MySQL SQL数据库的WPF对话框
目录 介绍 创建数据库对话框 打开数据库对话框 背景 使用代码 显示数据库对话框 加密 序列化 构建演示应用程序 遗漏 从Github下载源代码 介绍 本文介绍了一些用于创建和打开SQL数据库的便捷对 ...
- Microsoft SQL Server数据库部署过程
介绍 (Introduction) Database deployments are critical tasks that can affect negative in on performance ...
- Microsoft SQL Server认证方式的修改
通常在安装Microsoft SQL Server的时候会采用Windows认证方式,但是在应用开发中经常需要使用混合认证方式,安装之后可以按照如下方式修改: 1.修改认证方式 打开Microsoft ...
- 《Microsoft Sql server 2008 Internal》读书笔记--第七章Special Storage(3)
<Microsoft Sql server 2008 Interna>读书笔记订阅地址: http://www.cnblogs.com/downmoon/category/230397.h ...
最新文章
- 检查单 2014-06-20-01
- [No000039]操作系统Operating Systems用户级线程User Threads
- 给帝国cms7.5后台文章编辑器ckeditor增加一个行距的功能插件
- 如何在MFC客户端调用COM DLL
- iOS-Delegate模式
- 十分钟让你对C++ Traits大彻大悟
- logisim软件使用学习
- 为了对电脑进行保护,已经阻止此应用
- C盘清理——借助软件TreeSizeFree【网盘分享】(亲测有效)
- c语言OBD编程,汽车OBD2诊断程序开发
- 人工智能,机器学习, 深度学习框架图
- 计算机开机只显示,电脑开机黑屏只显示光标怎么办?来看看几种原因分析及解决方法!...
- 【微信小程序|Demo】订单结算页面
- 阿里小蜜技术学习笔记--知识点整理
- 机器学习-新闻分类案例
- 微机原理——8086系统的概述与引脚介绍
- Inverse/Reverse/Converse的辨异
- postman+newman+jenkins持续集成
- Python——文档
- 01 “响应式Web设计”——概述
热门文章
- 深度学习(二):传统神经网络
- 深度学习(二十一)基于FCN的图像语义分割-CVPR 2015
- Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX AVX2”
- softmax与sigmoid函数的理解
- 机器学习中的正则化(Regularization)
- set 排序_堆排序C++实现
- Linux ubuntu centos Shell命令大全
- mybatis--关于接口参数注解的几个小问题
- 红外倒车雷达原理图_黑科技 | 5分钟看懂无人驾驶汽车和激光雷达
- 基于springboot+LayUI的校园信息发布平台