当前位置: 永利皇宫463手机版 > 数据库 > 正文

压缩函数,用法简介

时间:2019-09-21 21:41来源: 数据库
转自:http://www.maomao365.com/?p=4732 这么些主题素材也许引致数据值的变动。一般来说,上述难题或然在您利用非二进制串数据类型(如char,varchar,text等数据类型)的情形下爆发。 一、m

转自:http://www.maomao365.com/?p=4732

这么些主题素材也许引致数据值的变动。一般来说,上述难题或然在您利用非二进制串数据类型(如char,varchar,text等数据类型)的情形下爆发。

一、mssql sql hashbytes 函数简单介绍

  • AES_ENCRYPT()和AES_DECRYPT()

hashbytes函数作用为:再次回到一个字符,
通过 MD2、MD4、MD5、SHA、SHA1、SHA2_256、SHA2_512艺术加密后的重回值

AES_ENCRYPT()和AES_DEC昂CoraYPT()能够加密/解密使用官方AES算法的数据。该算法使用1二十几个人密钥来编码,但客商能够将其扩大到255个人。MySQL选取1二十多少人密钥,因为如此算法达成越来越快,何况对大好多客商来说它也丰硕安全了。

hashbytes(‘参数1’,’参数2’)

AES_ENCRYPT(str,key_str)函数加密一个字符串并赶回叁个二进制串。AES_DECRYPT(crypt_str, key_str) 函数能够解密使用官方AES(Advanced Encryption Standard)算法加密的多寡并回到原有字符串,输入变量能够是随便长度。固然输入变量为NULL,那么该函数重回结果也为NULL。

参数1:
输入加密类型 例:MD5
参数2:
输入待加密的字符串(加密字符串最大值为 柒仟字节)
返回值:
重回值最大为8000字节
注意事项:
当输入加密类型,极度时,重临NULL

因为AES是八个块级算法,须求利用补白来编码非偶数长度的字符串。

二、mssql sql hashbytes 比方应用

  • ENCODE()和DECODE()

例1:

ENCODE(str, pass_str):该函数使用pass_str作为密码来加密字符串str,其加密的结果能够透过DECODE()函数来解密。该函数再次回到的结果是二个同str等长。 DECODE(crypt_str, pass_str):该函数使用pass_str作为密码来解密使用ENCODE()加密后的字符串crypt_str。

   DECLARE @info nvarchar(4000);  
SET @info = CONVERT(nvarchar(4000),'www.maomao365.com');  
SELECT HASHBYTES('SHA1', @info);   ---返回采用SHA1加密
SELECT HASHBYTES('MD5', @info);    ---返回采用MD5加密
SELECT HASHBYTES('MD2', @info);    ---返回采用MD2加密
  • DES_ENCRYPT()和DES_ENCRYPT()

例2:

DES_ENCRYPT(str[, {key_num|key_str}]):该函数使用三重DES算法连同给定的密钥来加密加密字符串。
DES_DECRYPT(crypt_永利皇宫463手机版,str[, key_str]):该函数解密四个通过DES_ENC大切诺基YPT()加密的字符串,假诺出现错误,该函数再次回到NULL。

 

  • COMPRESS()和UNCOMPRESS()
     create table A(info1 varchar(30))

insert into A (info1)values('www.maomao365.com')
insert into A (info1)values('猫猫小屋')
insert into A (info1)values('mssql教程专用')
insert into A (info1)values('mssql函数用法简介') 

select HASHBYTES('Md5',info1) as [md5加密], 
HASHBYTES('SHA1',info1) as [SHA1加密],
info1 from A 

truncate table A
drop table A 

COMPRESS(string_to_compress):该函数裁减四个字符串何况重返一个二进制串。该函数需求MySQL已会同四个压缩库一块编写翻译,比如zlib,不然该函数的重回值总为NULL。压缩后的字符串可以通过 UNCOMPRESS()函数来解压缩。UNCOMPRESS(string_to_uncompress):该函数解压缩三个经过COMPRESS() 函数收缩的字符串。固然变量不是一个压缩值,则结果再次回到为NULL。

 

  • PASSWORD()

PASSWOHavalD(str):该函数用来加密存储在user表中 password列的MySQL密码。PASSWO猎豹CS6D()函数由MySQL服务器中的认证连串使用,客户不应当在团结的运用中动用该函数。假使急需运用加密函数,能够虚拟使用MD5()也许SHA1()来代替。

其加密结果示比如下:

永利皇宫463手机版 1

在MySQL的系统数据库mysql的user表中,有多个名称为Password的列,当中保存由password函数加密后的user的密码数据。如下所示:

永利皇宫463手机版 2

  • ENCRYPT()

ENCRYPT(str[, salt]):该函数通过应用Unix crypt()系统调用来加密str,并赶回三个二进制串。在这之中,salt变量应该是一个分包多于七个字符的字符串。如若salt未有给定,则利用八个随机值。若是crypt()系统调用在客户的操作系统上不可用(Windows操作系统便如此),该函数再次来到为NULL。

  • MD5()

MD5(str):该函数计算二个字符串的1二十六位MD5校验和,重返的结果是由33个十六进制数字组成的二进制串。即使变量为NULL,则赶回为NULL。

其加密结果示比如下:

永利皇宫463手机版 3

  • SHA1()/SHA():

SHA1(str)/SHA(str)函数总括字符串str的1陆12位SHA-1校验和。重返值是一个由叁21个十六进制数字组成的二进制串。借使变量为NULL,则赶回NULL。

其加密结果示比如下:

永利皇宫463手机版 4

您只怕感兴趣的篇章:

  • mysql双向加密解密格局用法详解
  • MySQL加密和平解决密实例详解
  • MySQL利用AES_ENCRYPT()与AES_DEC锐界YPT()加解密的不错方法言传身教

编辑: 数据库 本文来源:压缩函数,用法简介

关键词: