欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

mysql 整數加密

錢良釵1年前10瀏覽0評論

MySQL是一個常用的關系型數據庫管理系統,它支持對數據進行加密以保證數據的安全性。其中一種加密方法是整數加密,即將整數類型的數據加密后存儲到數據庫中。

CREATE FUNCTION `my_encrypt`(`str` VARCHAR(50))
RETURNS INTEGER
BEGIN
DECLARE `out` INTEGER;
SET `out` = conv(substr(md5(`str`), 1, 16), 16, 10);
RETURN `out`;
END

上述代碼是一個自定義函數,輸入一個字符串,輸出一個整數。函數中,首先對輸入的字符串進行MD5散列,然后取16位,再將其轉換為十進制整數類型,即可得到加密后的數字。通過使用這個函數,可以將數據表中的整數數據進行加密。

例如,下面是一個users表:

CREATE TABLE `users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(50) NOT NULL,
`password` varchar(50) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;

要對密碼進行加密,可以在INSERT語句中使用上述自定義函數:

INSERT INTO `users` (`username`, `password`) VALUES ('tom', my_encrypt('123456'));

通過這種方式,即使黑客獲取了數據庫中的用戶密碼數據,也無法直接使用,可以有效提高數據安全性。

下一篇mysql 整合