欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mysql數(shù)據(jù)庫(kù)的加密與解密方式

 更新時(shí)間:2024年01月24日 08:47:48   作者:今天寫(xiě)bug了嗎?  
這篇文章主要介紹了mysql數(shù)據(jù)庫(kù)的加密與解密方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

前言

考慮到數(shù)據(jù)庫(kù)層面的安全與加密,以及加密后不影響數(shù)據(jù)庫(kù)的分析與使用。本文將介紹mysql下加密方式的實(shí)現(xiàn)

方式一

將字段屬性設(shè)置為varbinary/binary/四個(gè)blob類型,等二進(jìn)制字段屬性。

create table user2
(
    id       int            null,
    username varbinary(200) null,
    id_card  varbinary(200) null
);

將username,id_card進(jìn)行AES加密,密鑰為key,存入表中

INSERT INTO user2 VALUES (1, AES_ENCRYPT('張三', 'key'), AES_ENCRYPT('360153411530193713', 'key'));

加密效果

查詢的時(shí)候解密

select id, aes_decrypt(username,'key') as username,aes_decrypt(id_card,'key')as id_card from user2;

解密效果

方式二

將密文十六進(jìn)制化,再存入varchar/char列。

此處需要用到HEX()來(lái)存入,用UNHEX()取出

create table user
(
    id       int                                    null,
    username varchar(50)                            null,
    id_card  varchar(256) collate latin1_german1_ci null,
    password varchar(60)                            null
);

將username,id_card進(jìn)行加密存入,密匙123zxq

insert into user(id, username, id_card, password)
values (2, hex(aes_encrypt('李四', '123zxq')), hex(aes_encrypt('12057108241111', '123zxq')), 123456);

加密效果

解密

select id,AES_DECRYPT(UNHEX(username),'123zxq'),AES_DECRYPT(UNHEX(id_card),'123zxq') as id_card from user;

解密效果

總結(jié)

采用的AES的加密方式與java是一致的。

不過(guò)加密必然導(dǎo)致?tīng)奚樵兊男阅?,用了加密函?shù)后,查詢?cè)撟侄?,必定不走索引?/p>

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 在MySQL中奏響數(shù)據(jù)庫(kù)操作的樂(lè)章(推薦)

    在MySQL中奏響數(shù)據(jù)庫(kù)操作的樂(lè)章(推薦)

    本文詳細(xì)介紹了如何在MySQL中進(jìn)行數(shù)據(jù)庫(kù)操作,包括創(chuàng)建、刪除、修改數(shù)據(jù)庫(kù)等,以及如何使用字符集和校驗(yàn)規(guī)則,以及備份和恢復(fù)數(shù)據(jù)庫(kù)的方法,同時(shí),還討論了如何查看和修改數(shù)據(jù)庫(kù)的結(jié)構(gòu)和數(shù)據(jù),總的來(lái)說(shuō),本文為讀者提供了一份全面的MySQL數(shù)據(jù)庫(kù)操作指南
    2024-10-10
  • MySQL8.0移除傳統(tǒng)的.frm文件原因及解讀

    MySQL8.0移除傳統(tǒng)的.frm文件原因及解讀

    MySQL 8.0移除傳統(tǒng)的.frm文件,采用基于InnoDB的事務(wù)型數(shù)據(jù)字典,主要解決了元數(shù)據(jù)不一致、性能優(yōu)化、架構(gòu)簡(jiǎn)化、增強(qiáng)功能支持、兼容性與升級(jí)問(wèn)題,這一變革提高了數(shù)據(jù)庫(kù)的可靠性和性能,為未來(lái)的高級(jí)功能奠定了基礎(chǔ)
    2025-03-03
  • Mysql調(diào)優(yōu)Explain工具詳解及實(shí)戰(zhàn)演練(推薦)

    Mysql調(diào)優(yōu)Explain工具詳解及實(shí)戰(zhàn)演練(推薦)

    這篇文章主要介紹了Mysql調(diào)優(yōu)Explain工具詳解及實(shí)戰(zhàn)演練,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • MySQL修改root賬號(hào)密碼的方法

    MySQL修改root賬號(hào)密碼的方法

    這篇文章介紹了兩種情況,知道root密碼的情況下修改root密碼,以及忘記了root密碼,如何對(duì)root的密碼進(jìn)行修改,需要的朋友可以參考下
    2015-07-07
  • SQL查詢至少連續(xù)n天登錄的用戶

    SQL查詢至少連續(xù)n天登錄的用戶

    這篇文章介紹了SQL查詢至少連續(xù)n天登錄用戶的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-01-01
  • mysql制作外鍵出現(xiàn)duplicate?key?name錯(cuò)誤問(wèn)題及解決

    mysql制作外鍵出現(xiàn)duplicate?key?name錯(cuò)誤問(wèn)題及解決

    這篇文章主要介紹了mysql制作外鍵出現(xiàn)duplicate?key?name錯(cuò)誤問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • MySQL 根據(jù)條件多值更新的實(shí)現(xiàn)

    MySQL 根據(jù)條件多值更新的實(shí)現(xiàn)

    本文主要介紹了MySQL 根據(jù)條件多值更新的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2025-03-03
  • MySQL簡(jiǎn)化輸入小技巧

    MySQL簡(jiǎn)化輸入小技巧

    在這里我將介紹兩個(gè)使用MySQL數(shù)據(jù)庫(kù)時(shí)候簡(jiǎn)化輸入的小技巧。
    2011-09-09
  • MySQL 5.7升級(jí)8.0報(bào)異常:ONLY_FULL_GROUP_BY的問(wèn)題解決

    MySQL 5.7升級(jí)8.0報(bào)異常:ONLY_FULL_GROUP_BY的問(wèn)題解決

    本文主要介紹了MySQL 5.7升級(jí)8.0報(bào)異常的問(wèn)題解決,主要是ONLY_FULL_GROUP_BY,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-11-11
  • Mysql數(shù)據(jù)庫(kù)雙機(jī)熱備難點(diǎn)分析

    Mysql數(shù)據(jù)庫(kù)雙機(jī)熱備難點(diǎn)分析

    本文主要給大家介紹了在Mysql數(shù)據(jù)庫(kù)雙機(jī)熱備其中的難點(diǎn)分析以及重要環(huán)節(jié)的經(jīng)驗(yàn)心得,需要的朋友收藏分享下吧。
    2017-12-12

最新評(píng)論