数据库字段加解密速度影响

数据库字段加解密速度影响,第1张

数据库字段加解密速度的影响非常大。当数据库中的数据需要加密或解密时,加解密算法的速度很重要,因为它将直接影响数据库的性能。如果加解密速度过慢,将会导致数据库读/写 *** 作的延迟,降低数据库整体的性能。同时,加解密速度还与数据库的安全性直接相关,如果速度太慢,可能会诱使攻击者利用漏洞进行数据泄露等安全攻击。因此,在选择数据库的加解密算法时,需要综合考虑加密性能和安全性之间的平衡。

你在编程语言中实现把

这种情况我都是用MD5加密

虽然你不想听理论。。。我也懒得写代码。。。

1、把用户的密码用MD5改变成32个字符

2、将这字符串写到数据库里

3、判断密码是否正确的时候,把用户输入的密码在用MD5改变成32个字符、判断这字符串和数据库中字符串是否相同

下面是JAVA的MD5用法

import java.security.MessageDigest

public class MD5 {

private final static String[] hexDigits = { "0", "1", "2", "3", "4", "5",

"6", "7", "8", "9", "a", "b", "c", "d", "e", "f" }

//将字节数组转换为十六进制字符串

private static String byteArrayToHexString(byte[] b) {

StringBuffer resultSb = new StringBuffer()

for (int i = 0i <b.lengthi++) {

resultSb.append(byteToHexString(b[i]))

}

return resultSb.toString()

}

//将字节转换为十六进制字符

private static String byteToHexString(byte b) {

int n = b

if (n <0)

n = 256 + n

int d1 = n / 16

int d2 = n % 16

return hexDigits[d1] + hexDigits[d2]

}

public static String MD5Encode(String origin) {

String resultString = null

try {

resultString = new String(origin)

//MessageDigest 类为应用程序提供信息摘要算法的功能,如 MD5 或 SHA 算法

MessageDigest md = MessageDigest.getInstance("MD5")

resultString = byteArrayToHexString(md.digest(resultString

.getBytes("GBK")))

} catch (Exception ex) {

}

return resultString

}

public static void main(String[] args)

{

System.out.println(MD5.MD5Encode("admin"))

System.out.println(MD5.MD5Encode("密码内容"))

}

}

插入加密数据:

1、INSERT

INTO

userdata(username,pasword,encryptedpassword)

2、VALUES

('smith','htims',AES_ENCRYPT('htims','key'))

上面的插入语句有三个字段,“用户名”、“密码”和“加密的密码”。

AES_ENCRYPT()函数需要一个“key”来协助加密,同样,解密也需要它。

从表中查询加密数据

1、SELECT

username,pasword,AES_DECRYPT(encryptedpassword,'key')

2、FROM

userdata.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9922833.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存