高安網頁設計:數據庫是什么怎么保證安全?數據庫該如何選擇外包的方式?
數據庫顧名思義,就是所有數據的儲存庫,企業的數據庫涉及到企業的很多運作揭秘,在眾多年來,對于企業數據庫設計外包也一直都有爭議,很多***認為應該掌握在自己的手中,當然,如果公司實力允許,那還是有著自己的團隊來進行數據庫分析會比較好,但是還有著很多的公司本身并不具備這樣的條件,那么到底要如何處理呢?這就會涉及到外包給第三方公司進行管理分析,這就是今天小編所要討論的話題,數據庫設計外包,那么接下我們就一同來看下吧。
數據庫設計外包是怎樣進行保密的
加密技術是保護設計外包數據庫中數據安全的一種有效方法,但如何對加密數據進行高效查詢是一個熱點,引起了研究界的重視。針對這個問題,提出了一種基于DBMS 內核的加密模式,通過安全字典和SQL語句的擴展,實現數據的加密存儲和高效查詢。實驗證明了該方法的有效性和可行性。
1 、引言
隨著電子商務和電子政務的迅速發展,網絡中的數據呈爆炸式增長,數據規模越來越大,涉及的技術越來越復雜。在這種運行模式中,數據存儲在非可信的第三方服務器中,**的問題就是如何保證數據的安全性,特別是如何防止內部人員(如:數據庫管理員)泄露、丟失、甚至破壞數據。而利用加密技術來保護數據的安全性是一種非常理想的選擇,即使入侵者可以利用操作系統漏洞或者繞過訪問控制機制非法竊取數據文件,但是沒有密鑰進行解密,所獲取的信息是不可讀的。
2 、相關工作
一些工作人員對數據庫加密進行了研究。同態加密的思想是加密后的數據仍然保持原明文數據的有序性,從而可以實現不用解密數據而對加密數據直接進行訪問和算術運算。然而,從安全性角度來看,這種加密方法本身具有其固有的缺陷,因為它要求密文數據仍然保持有序性,這與安全的加密算法是相悖的。在數據庫作為一種服務(Database As a Service)的背景下,提出了對加密數據查詢的方法。存儲時,除了對關系表中的元組加密外,還增加一個索引字段,用來存儲加密字段的分桶號(Bucket ID),桶號表示明文數據值落在某段區間內。
3 、數據加密的體系結構
數據庫加密,大致可以分為兩種方式:DBMS 外部加密和DBMS 內部加密。DBMS 外部加密,一般選擇在應用程序和操作系統,通過調用加/解密函數來完成加密數據的存儲和訪問。例如,在操作系統層次實現加密時,可以利用它管理文件系統的功能,直接對存儲數據的文件進行加密。在操作系統中加密時,加密的粒度是基于文件,對應到數據庫中的表或者整個數據庫,這種加密粒度是非常粗糙,最直接的影響是,加/解密的工作相當大,極大地降低系統性能。DBMS 內部加密,一般選擇在數據物理存取之前進行加/解密操作。
在設計數據加密的體系結構時,采用基于DBMS 內核層加密方法,加密的粒度為表級,如圖1 所示。其中系統表和加解密組件是新增的。設計思想是:用戶在創建表的時候,可以指定是否對其加密存儲,如果需要加密,則在系統表的安全字典中插入一條相應的記錄。在DBMS 將數據寫到磁盤上時,查詢系統表的安全字典,如果需要加密,則首先對數據加密,再將其寫出到外存。當DBMS 從磁盤中讀入數據塊時,如果數據塊是加密過的,則加/解密模塊查詢安全字典,取出相應的密鑰解密數據塊。