[發明專利]基于SQL重寫的數據庫外部加解密系統及其使用方法有效
| 申請號: | 201210345952.8 | 申請日: | 2012-09-18 |
| 公開(公告)號: | CN102902932A | 公開(公告)日: | 2013-01-30 |
| 發明(設計)人: | 景奕昕;韓敏;余鵬飛;唐威;廖巍 | 申請(專利權)人: | 武漢華工安鼎信息技術有限責任公司 |
| 主分類號: | G06F21/62 | 分類號: | G06F21/62;G06F17/30 |
| 代理公司: | 湖北武漢永嘉專利代理有限公司 42102 | 代理人: | 王超 |
| 地址: | 430223 湖北省武漢市*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 sql 重寫 數據庫 外部 解密 系統 及其 使用方法 | ||
技術領域
本發明涉及數據庫加密領域,尤其涉及一種基于SQL重寫技術的數據庫加解密方法。
背景技術
隱私數據的泄露是當前數據庫系統面臨的一個嚴重威脅。惡意的數據庫管理員可通過訪問數據庫管理系統服務器去獲取隱私數據(包括健康記錄、金融股票、個人信息等)并出售給第三者。一種解決此威脅的方式是將數據庫中的敏感數據進行加密,但多數數據庫系統不適合使用這種方式。這種方式會產生很多無法克服的負面影響。首先,數據庫系統要處理大量用戶和程序的查詢請求并生成數據返回,大量的保密數據和有效查詢執行性能之間存在嚴重沖突。當前針對密文數據的計算方式或是效率低下或是不能提供充分的保密性,如使用強加密算法所得到密文數據會阻止數據庫服務器執行SQL查詢命令。其次,當前數據庫加密系統在查詢中必須先對加密數據表解密,然后用明文數據與查詢SQL進行匹配,導致明文數據暴露在數據庫系統中,數據庫管理人員有機會盜取明文敏感數據。此外,數據庫端對查詢結果進行解密操作,查詢結果以明文的方式返回給應用層,在傳輸過程中易遭竊取,導致敏感數據泄露。
基于以上情況,必須采取高效、安全的加密手段,提升數據庫加密的安全性和執行效率。
發明內容
本發明目的在于提供一種基于SQL重寫的數據庫加解密方法,使用本發明能夠集SQL重寫、數據加密、數據解密、安全傳輸、高效查詢于一體,實現對數據庫加密數據創建和使用的安全防護。
本發明所采用的技術方案是:基于SQL重寫的數據庫外部加解密系統,包括SQL重寫主模塊、語句解析模塊、語法規則管理模塊、加解密表列管理模塊、重寫執行模塊以及數據加解密模塊;
SQL重寫主模塊在數據庫查詢過程中,根據加解密需求對語句解析模塊、重寫執行模塊、數據加解密模塊和加解密表列管理模塊進行調度;
語句解析模塊負責對SQL語句進行語法和語義檢查,生成SQL語句重寫記錄存儲在加解密表列管理模塊中;
語法規則管理模塊定義了和加解密相關的SQL語句關鍵字,供語句解析模塊參考;
加解密表列管理模塊對數據庫中已加密的表列和加解密算法進行記錄;
重寫執行模塊受SQL重寫主模塊調用,執行SQL語句的重寫,并與數據加解密模塊進行數據通信;
數據加解密模塊負責對輸入值按照給定的加解密算法進行加密或者解密。
基于SQL重寫的數據庫外部加解密系統的使用方法,包括執行重寫后的數據表的創建過程、重寫后的數據的插入過程和數據的查詢過程。
所述的使用方法,數據表的創建過程包括:
A1)創建含有加密列數據表的SQL語句通過SQL重寫主模塊進入語句解析模塊;
A2)語句解析模塊調用語法規則管理模塊獲知需要加密的數據表列及其加密算法;
A3)語句解析模塊判斷SQL語句是否合法,若否,過程終止,若合法,進入下一步;
A4)語句解析模塊生成SQL重寫記錄,該記錄記載了加密的表列和相應的加密算法名稱,以及加密后的數據類型;
A5)重寫記錄由加解密表列管理模塊進行存儲;
A6)語句解析模塊將SQL重寫記錄返回給SQL重寫主模塊,SQL重寫主模塊再將重寫記錄和待重寫的SQL語句交由重寫執行模塊執行;
A7)重寫執行模塊根據重寫記錄將含有加密列數據表的SQL語句重寫成標準SQL語句,修改列數據類型為加密后的數據類型,然后將重寫后的SQL請求語句送交SQL重寫主模塊;
A8)重寫后的SQL請求語句被送往數據庫系統創建數據表。
所述的使用方法,數據的插入過程包括:
B1)SQL重寫主模塊將執行數據插入的SQL語句輸入語句解析模塊;
B2)語句解析模塊根據加解密表列管理模塊的記錄,逐個檢查每個數據列是否已記載在SQL重寫記錄中,若否,不做任何重寫,執行B6;若為是,則該數據列需要進行加密處理,進入下一步;
B3)語句解析模塊將需要加密的表列和相應的加密算法名發送給SQL重寫主模塊;
B4)SQL重寫主模塊將包含需加密表列數據的SQL語句發送給重寫執行模塊,重寫執行模塊調用數據加解密模塊進行加密,得到加密后的表列數據;
B5)重寫執行模塊將SQL語句中的需加密的表列數據替換為加密后的表列數據,并返回給SQL重寫主模塊;
B6)SQL重寫主模塊將數據插入語句送往數據庫系統。
所述的使用方法,數據的查詢過程包括:
C1)SQL重寫主模塊接收從數據庫系統查詢數據的SQL請求語句,并發送給語句解析模塊;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于武漢華工安鼎信息技術有限責任公司,未經武漢華工安鼎信息技術有限責任公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210345952.8/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:卡板貨物綁帶
- 下一篇:用于臨時存放化工產品的存放架





