首页 > 数据库 >SQLServer内置函数实现MD5加密与解密

SQLServer内置函数实现MD5加密与解密

时间:2022-11-14 21:13:33浏览次数:51  
标签:HASHBYTES sqlvarbasetostr 加密 SQLServer 解密 fn MD5

SQLServer内置函数实现MD5加密⼀、MD5加密

HASHBYTES ('加密⽅式', '待加密的值')

加密⽅式= MD2 | MD4 | MD5 | SHA | SHA1

返回值类型:varbinary(maximum 8000 bytes)

⼆、MD5加密⽰例

select HASHBYTES('MD5','123456')

HASHBYTES⽣成的结果为:0xE10ADC3949BA59ABBE56E057F20F883E

注意:⼀般⼯具⽣成的都是没有0x和是⼩写的,16进制的数值,去掉“0x”转换为⼩写值就完全与MD5值吻合了。在此需要⽤另⼀个函数(sys.fn_sqlvarbasetostr)把varbinary的值转换为varchar类型的

select sys.fn_sqlvarbasetostr(HASHBYTES('MD5','123456'))

结果:0xe10adc3949ba59abbe56e057f20f883e 截取去掉0x

select substring(sys.fn_sqlvarbasetostr(HASHBYTES('MD5','123456')),3,32)

结果就是完整的MD5值:e10adc3949ba59abbe56e057f20f883e

三、SQL截取字符串substring

substring 返回字符、binary、text 或 image 表达式的⼀部分。

基本语法:SUBSTRING ( expression , start , length )

expression:字符串、⼆进制字符串、text、image、列或包含列的表达式

start:整数,指定⼦串的开始位置

注:SQL中"1"表⽰字符串中的第⼀个字符,⽽.NET中"0"表⽰第⼀个字符 length:整数,指定⼦串的长度(要返回的字符数或字节数)

标签:HASHBYTES,sqlvarbasetostr,加密,SQLServer,解密,fn,MD5
From: https://www.cnblogs.com/yclizq/p/16890399.html

相关文章

  • sqlserver xml 操作:1、使用for xml
    sqlserverxml操作:1、使用forxml一个是侧重介绍forxml模式的,一个是侧重语法及细节参数的forxml(SqlServer)forxml子句的基本语法说实话,老顾觉得其......
  • sqlserver xml 操作:2、对确定结构的xml进行操作
    sqlserverxml操作:2、对确定结构的xml进行操作我们使用的xml有着明确的定义结构,该啥节点,该啥属性,该啥层级,基本在设计之初就已经确定了,很少有确定了结构的xml格式再......
  • sqlserver xml 操作:3、对不确定结构、属性的xml进行处理
    sqlserverxml操作:3、对不确定结构、属性的xml进行处理在平时使用过程中,xml的结构一般都是已经确定了的,所以我们读取并不是很麻烦的事,但如果一旦结构或数据不确定,......
  • sqlserver FOR XML查询参数path的实例
     SQLSERVER中XML查询:FORXML指定PATH前言在SQLSERVER中,XML查询可以指定RAW,AUTO,EXPLICIT,PATH。本文用一些实例介绍SQLSERVER中指定PATH的XML查询。PA......
  • SQLserver 建表语句
    CREATETABLE[dbo].[Dim_Tyc_Supplier_Main_Staff_Info]( [StaffId][nvarchar](255)NOTNULL, [SupplierCode][nvarchar](255)NULL, [Position1][nvarchar](255)NUL......
  • SqlServer入门知识-创建临时表
    https://zhuanlan.zhihu.com/p/562721751平时会直接在正常的库里面直接建表,好像和这个不一样,了解下。平时用时会直接在库里备份数据,然后删掉备份的表。属于数据备份,不是真......
  • 一次金融APP的解密历程
    前言:客户仅提供官网下载地址给我们测试。但是由于官网的版本不是最新的,APP会强制你升级。而升级后的APP,是进行加固后的,无法使用frida进行hook,注入进程。那同样也无法使用S......
  • sqlserver数据库 去除字段中空格,换行符,回车符
    使用REPLACE函数:特殊字符在SqlServerManagementStudio查询中显示为空格,但实际不是空格。在C#中能清晰的看到类似:\r\n的字符.​SQL中可以使用Replace函数来对某个字段里的......
  • .NET应用开发之SQLServer常见问题分析
    日常我们开发.NET应用时会使用SQLServer数据库,对于SQLServer数据库的日常开发有一些技能和工具,准备给大家分享一下。一、场景1:SQLServer死锁分析 执行以下SQL,启用SQLSe......
  • .Net实现SM2解密sm-crypto
    一、Vue代码constcipherMode=0//1-C1C3C2,0-C1C2C3,默认为1constpublicKey= 'xxx'letencryptData=sm2.doEncrypt("加密内容",publicKey,cipherMode);......