最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

前言

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

方式一

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

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

將username,id_card進行AES加密,密鑰為key,存入表中

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

加密效果

查詢的時候解密

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

解密效果

方式二

將密文十六進制化,再存入varchar/char列。

此處需要用到HEX()來存入,用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進行加密存入,密匙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是一致的。

不過加密必然導(dǎo)致犧牲查詢的性能,用了加密函數(shù)后,查詢該字段,必定不走索引。

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

相關(guān)文章

  • MySQL 生成隨機數(shù)字、字符串、日期、驗證碼及 UUID的方法

    MySQL 生成隨機數(shù)字、字符串、日期、驗證碼及 UUID的方法

    這篇文章主要介紹了MySQL 生成隨機數(shù)字、字符串、日期、驗證碼及 UUID的方法,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02
  • MySQL5.6.31 winx64.zip 安裝配置教程詳解

    MySQL5.6.31 winx64.zip 安裝配置教程詳解

    這篇文章主要介紹了MySQL5.6.31 winx64.zip 安裝配置教程詳解,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-02-02
  • mysql升級到5.7時,wordpress導(dǎo)數(shù)據(jù)報錯1067的問題

    mysql升級到5.7時,wordpress導(dǎo)數(shù)據(jù)報錯1067的問題

    小編最近把mysql升級到5.7了,wordpress導(dǎo)數(shù)據(jù)報錯,導(dǎo)入數(shù)據(jù)庫時報1067 – Invalid default value for ‘字段名’的問題,怎么解決這個問題,下面小編把我的解決方案分享到腳本之家平臺供大家參考,希望對大家有所幫助
    2021-05-05
  • mysql不是內(nèi)部命令的錯誤解決方案

    mysql不是內(nèi)部命令的錯誤解決方案

    在本篇內(nèi)容里小編給各位分享的是一篇關(guān)于mysql不是內(nèi)部命令的錯誤解決方案,需要的朋友們可以學(xué)習(xí)下。
    2020-08-08
  • 以Centos為例講解MySQL在Linux中的部署

    以Centos為例講解MySQL在Linux中的部署

    這篇文章主要介紹了以Centos為例講解MySQL在Linux中的部署,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-12-12
  • Mysql中MyISAM和InnoDB的區(qū)別及說明

    Mysql中MyISAM和InnoDB的區(qū)別及說明

    這篇文章主要介紹了Mysql中MyISAM和InnoDB的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • MySQL常見優(yōu)化方案匯總

    MySQL常見優(yōu)化方案匯總

    mysql數(shù)據(jù)庫是中小微企業(yè)常用的一種數(shù)據(jù)化管理工具,它具有輕便,簡潔,免費等特點。今天通過本文給大家介紹MySQL常見優(yōu)化方案匯總,感興趣的朋友一起看看吧
    2022-01-01
  • MySQL系列教程小白數(shù)據(jù)庫基礎(chǔ)

    MySQL系列教程小白數(shù)據(jù)庫基礎(chǔ)

    這篇文章主要為大家介紹了MySQL系列中的數(shù)據(jù)庫基礎(chǔ),非常適合數(shù)據(jù)庫小白的入門基礎(chǔ)篇,詳細的講解了數(shù)據(jù)庫的基本概念以及基礎(chǔ)命令及操作示例,有需要的朋友可以借鑒參考下
    2021-10-10
  • MySQL死鎖原因、檢測與解決方案(含詳細圖文)

    MySQL死鎖原因、檢測與解決方案(含詳細圖文)

    死鎖是指兩個或多個事務(wù)在執(zhí)行過程中,因爭奪鎖資源而造成的一種相互等待的現(xiàn)象,若無外力干預(yù),這些事務(wù)將永遠無法繼續(xù)執(zhí)行,這篇文章主要介紹了MySQL死鎖原因、檢測與解決方案的相關(guān)資料,需要的朋友可以參考下
    2026-04-04
  • Mysql實現(xiàn)定時清空一張表的舊數(shù)據(jù)并保留幾條數(shù)據(jù)(推薦)

    Mysql實現(xiàn)定時清空一張表的舊數(shù)據(jù)并保留幾條數(shù)據(jù)(推薦)

    這篇文章主要介紹了Mysql實現(xiàn)定時清空一張表的舊數(shù)據(jù)并保留幾條數(shù)據(jù),本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12

最新評論

莎车县| 潜山县| 苏尼特左旗| 银川市| 开阳县| 右玉县| 商水县| 祁阳县| 都江堰市| 清徐县| 盖州市| 乐平市| 贵州省| 隆德县| 唐山市| 盘山县| 尚义县| 宁晋县| 甘肃省| 和田市| 昭觉县| 鹤壁市| 赤壁市| 东辽县| 嘉义县| 井研县| 米脂县| 山阳县| 临朐县| 江城| 普格县| 象州县| 永吉县| 定西市| 西安市| 宜昌市| 上虞市| 开远市| 胶州市| 武强县| 武汉市|