我有一個3層軟件:數據庫(MSSQL),框架(.NET)和一些客戶端。加密和解密數據庫級別的數據庫中的列而不更改框架
在數據庫中我有一個表格:People
裏面的表格有一列secret
這是字符串,不幸的是這個secret
保存爲純字符串。這個想法是加密這個祕密(不是哈希),但是我不能也不想在框架中由於嚴重的原因去做,但是我必須在數據庫級別上做。
所以這個想法是,而不是存儲:I really like pink
我可以存儲例如:TnfA608JRlWikdLeYkeOXADQi4a3bZZe7Ljchxk1ksU=
和框架查詢數據庫時它已經解密文本I really like pink
。
我已經閱讀了數據庫中的主密鑰和使用3DES加密列的可能性,但信息非常模糊。
問:是否有可能與少數沒有在框架迫使數據庫寫它時,加密列和解密閱讀改變?
退房SQL Server的[始終加密(https://msdn.microsoft.com/en-us/library/mt163865.aspx),它可從2016年版開始,您可以指定加密到列級並查詢表,就好像它沒有加密一樣(*假設連接提供了正確的加密密鑰*),並且您仍然可以使用適當的數據索引。 – Igor
@Igor不,我沒有,它看起來很有希望,但是我們可能(90%肯定)使用舊版本,我對此無能爲力。我明天再查。 – Yoda
如果他們使用的是舊版本,請檢查其升級策略是什麼。有時候公司會很好,並且會盡量保持服務器版本的最新性能,如果3個月後已經有升級計劃的話,沒有任何意義。無論哪種方式,祝你好運! – Igor