SQL Server – 請問資料庫欄位加密問題

來源:互聯網
上載者:User

 

原發問問題:

 

老師您好:

 

我有一個表格的某一個欄位要加密,如員工檔的薪資金額及員工姓名,

這兩個欄位要加密,讓其它人員從 ENTERPRISE MANAGER 之中開起的表格看到的內容是一堆亂碼,但我在程式之中下 SELECT EMP_ID,NAME,WAGE FROM EMPLOYEES 時顯示是正確的資料,我應該如何做呢?有什麼特殊的技巧或設定就可以完成嗎?

 

Best Regards

 

解答:

 

親愛的讀者您好,很感謝您對於章立民研究室的支援,有關於您提到的問題,回複如下:

 

Microsoft SQL Server 2000 本身沒有內建的功能可以滿足您的需要。或許您可以考慮自行撰寫加解密機制,當資料寫入資料庫時,同時將其加密,如此一來,不論是從 ENTERPRISE MANAGER 或是使用程式方式,所查詢到的資料皆是加密過的。當您欲將被加密過的資料還原成原始的資料,只需進行解密機制即可。

 

由上述的討論,我們可以知道,這樣的加解密機制所使用之演算法必須是可逆的。接下來,我們討論什麼是可逆的、什麼是無法復原的加解密機制。前幾年,媒體大肆報導山東大學王教授所破解的 MD5 來說,它就是一個無法復原的(One-Way)加解密機制,也就是說加密之後的密文,無法再據以還原成原本未加密的明文。

 

至於常見的可逆演算法,有 ROT13 ,正因為其演算法簡單又是可逆,因此您可以在網路上找到為數不少的參考資料。如下所示即是一個可以在 SQL Server 2000 中,免費用於加解密的預存程式:

 

http://www.sqlservercentral.com/columnists/mcoles/freeencryption.asp

 

期望此資訊對您有所協助。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.