Encryption

在 C# 中加密應用程序名稱並在 SQL Server 中解密

  • February 11, 2021

我已經使用 MD5 在我的 c# 應用程序中加密了應用程序名稱,因此在構造連接字元串時,應用程序名稱將作為加密傳遞給 SQL。我想在 SQL Server 中解密該值以查看是否匹配?如何獲取 SQL 中的原始文本?

像 MD5 這樣的散列定義是單向的:你不能通過設計來解密它們。這就是有多少應用程序儲存密碼等秘密。更好的解決方案是將應用程序列表及其散列值儲存在數據庫表中,然後將您送出的散列與儲存的散列進行比較以找到匹配項。

我不相信這在 SQL Server 中是可能的,因為MD5是一種單向(顯然是完全失去的)雜湊。這是一個很好的StackOverflow 答案,通常超過MD5

SQL Server 有一個內置函式來生成稱為雜湊的雜湊HASHBYTES(),您可以利用該函式(以及其他無損雜湊算法之一)潛在地生成一個可逆的雜湊字元串。但我覺得即使那可能也做不到。

引用自:https://dba.stackexchange.com/questions/285163