加密压缩文件(加密压缩函数有哪些)

lxf2023-08-09 23:30:02

bitsCN.com 这些问题可能会导致数据值发生变化。一般来说,使用非二进制字符串数据类型(如char、varchar、text等数据类型)时,可能会出现上述问题。

  • AES_ENCRYPT()和AES_DECRYPT()
  • AES_ENCRYPT()和AES_DECRYPT()可以使用官方的AES算法加密/解密数据。该算法使用128位密钥进行编码,但用户可以将其扩展到256位。MySQL选择128位的密钥,因为这种算法速度更快,对于大多数用户来说也足够安全。

    AES_ENCRYPT(str,key_str)函数加密一个字符串并返回一个二进制字符串。AES_DECRYPT(crypt_str,key_str)函数可以对官方AES(高级加密标准)算法加密的数据进行解密,返回原始字符串,输入变量可以是任意长度。如果输入变量为NULL,则该函数返回的结果也为NULL。

    因为AES是块级算法,所以需要使用填充来编码非偶数长度的字符串。

  • 编码()和解码()
  • ENCODE(str,pass_str):这个函数使用pass_str作为密码对字符串str进行加密,加密的结果可以通过DECODE()函数进行解密。这个函数返回的结果是一个长度相同的字符串。DECODE(crypt_str,pass_str):这个函数使用pass_str作为密码来解密用ENCODE()加密的字符串crypt_str。

  • DES_ENCRYPT()和DES_ENCRYPT()
  • DES _ ENCRYPT (STR [,{key _ num | key _ STR}]):这个函数使用三重DES算法和给定的密钥对加密的字符串进行加密。Des _ decrypt (crypt _ str [,key _ str]):这个函数解密一个由DES_ENCRYPT()加密的字符串,如果有错误则返回NULL。

  • 压缩()和解压缩()
  • COMPRESS(string_to_compress):这个函数压缩一个字符串并返回一个二进制字符串。这个函数要求MySQL已经和一个压缩库编译在一起,比如zlib,否则这个函数的返回值总是NULL。压缩后的字符串可以通过UNCOMPRESS()函数解压缩。UnCOMPRESS(string _ to _ UnCOMPRESS):这个函数解压缩由COMPRESS()函数压缩的字符串。如果变量不是压缩值,结果将返回NULL。

  • 密码()
  • PASSWORD(str):这个函数用于加密存储在用户表的PASSWORD列中的MySQL密码。MySQL服务器中的认证系统使用PASSWORD()函数,用户不应该在自己的应用程序中使用它。如果需要使用加密功能,可以考虑使用MD5()或SHA1()来代替。

    加密结果的示例如下:

    在mysql的系统数据库MySQL的用户表中,有一个名为password的列,存储着通过Password函数加密的用户的密码数据。如下所示:

  • 加密()
  • ENCRYPT(str[,salt]):这个函数通过使用Unix crypt()系统调用来加密str,并返回一个二进制字符串。其中,salt变量应该是包含两个以上字符的字符串。如果没有给出salt,则使用一个随机值。如果crypt()系统调用在用户的操作系统上不可用(Windows操作系统就是这种情况),则该函数返回NULL。

  • MD5()
  • MD5(str):这个函数计算一个字符串的128位MD5校验和,返回的结果是一个由32个十六进制数字组成的二进制字符串。如果变量为NULL,则返回NULL。

    加密结果的示例如下:

  • SHA1()/沙():
  • SHA1(str)/SHA(str)函数计算字符串str的160位SHA-1校验和。返回值是由40个十六进制数字组成的二进制字符串。如果变量为NULL,则返回NULL。

    加密结果的示例如下:

    bitsCN.com adminjs.cn是一个以CSS、JavaScript、Vue、HTML为核心的前端开发技术网站。我们致力于为广大前端开发者提供专业、全面、实用的前端开发知识和技术支持。 在本网站中,您可以学习到最新的前端开发技术,了解前端开发的最新趋势和最佳实践。我们提供丰富的教程和案例,让您可以快速掌握前端开发的核心技术和流程。 Adminjs.cn还提供一系列实用的工具和插件,帮助您更加高效地进行前端开发工作。我们提供的工具和插件都经过精心设计和优化,可以帮助您节省时间和精力,提升开发效率。 在Adminjs.cn中,您可以找到您需要的一切前端开发资源,让您成为一名更加优秀的前端开发者。欢迎您加入我们的大家庭,一起探索前端开发的无限可能!