2009-02-27 67 views
0

我們最近在MS SQL 2005中實現了一些對稱密鑰,用於加密和解密信用卡,查詢路由/帳號。CLR加密/解密組裝

理想地,我們想用戶定義的函數,以便能夠執行加密和解密,然而,它不可能的,因爲EncryptByKey的和DecryptByKey這個函數不能用戶定義函數內使用。

起初我以爲我們可以用函數來做到這一點創建一個CLR大會(在C#),但是,因爲我學到的規則同樣適用。

我想知道其他人一直在做什麼來輕鬆地執行此功能。創造了許多存儲過程,如:

OPEN SYMMETRIC KEY ...
SELECT用戶名,DecryptByKey這個(...)AS密碼 CLOSE SYMMETRIC KEY ...

...在很多領域,我們將加密/解密將是非常繁瑣的。

+0

你正在解密密碼?真?你知道那根本不是好設計。密碼應該是單向散列。可解密的密鑰會使數據庫中的每個密碼都易受攻擊。 – Will 2009-02-27 18:05:46

+0

那麼主要我會用它的信用卡號碼,並檢查路由/帳號。 – 2009-02-27 18:09:30

回答

1

無論是一個好主意與否,關於與輸出參數的存儲過程是什麼來達到同樣的UDF?