這可能是因爲我對此有太多的想法,並且已經過了複雜的事情,並且把自己束縛在了一個結中。我對加密也不太瞭解,所以沒有任何幫助。加密在多個設備上使用的登錄密碼
我有一個應用程序,它具有使用AES類加密的字段(我在另一個問題中發現此處發現),然後將加密的字符串保存在XML文件中。現在,用於加密每個字符串的密碼由用戶提供,並在第一次使用該程序時進行設置。這部分工作正常,我可以根據需要完美地加密和解密數據。
我遇到的問題是用於加密這些字符串的密碼存儲在應用程序中的配置文件中。最初我想我會使用DPAPI來加密這個密碼,然後保存在配置文件中,並且一切似乎都按照我想要的那樣工作。用戶啓動了該程序,設置了密碼,添加了一些字符串,並且加密的所有內容都很好,並且加密過程很好,並且所有工作都很完美。
的問題是能正常工作的口令創建上,但是當我嘗試使用它在另一臺計算機上DPAPI拋出一個錯誤(我假設,因爲DPAPI是該機的具體?)
所以基本上在計算機上我需要一種方法來加密用戶在首次啓動時設置的密碼,並將其存儲在配置文件中,但無法使用我正在使用的AES類來加密其他數據,因爲它需要密碼才能加密它!
正如我所說我的AES類可以完美地加密其他數據,但我需要一種方法來保護存儲在app.config文件中的密碼,而不是使用DPAPI對其進行加密,以便我可以在其他設備上使用它錯誤。
我希望這是有道理的,我的頭疼!
任何幫助非常讚賞
附加信息:
應用程序是一個非常簡單的winform應用程序,它允許訪問數據時,輸入正確的密碼和程序存儲在USB記憶棒使其能夠連接到任何計算機並解密和查看數據。沒有用戶結構,您只需要正確的密碼即可訪問應用程序並查看數據。用於訪問應用程序的密碼是用於加密數據的密碼。
重複問題:這個問題是不同的,因爲在他們的情況下,DPAPI在我的情況下做他們需要的東西,而不是我已經在我的原始問題中表達過!
你爲什麼將它存儲在配置文件中?你不能將這些敏感信息存儲在數據庫中嗎?此外,如果密碼存儲在原始用戶的配置文件中,您將如何讓用戶能夠從另一臺設備登錄? –
謝謝Matias。該應用程序是一個非常簡單的WinForm應用程序,當輸入正確的密碼並允許程序存儲在USB存儲器中時,它可以訪問數據,使其可以連接到任何計算機並解密和查看數據。沒有用戶結構,您只需要正確的密碼即可訪問應用程序並查看數據。用於訪問應用程序的密碼是用於加密數據的密碼。 – Craig
您可以將密碼存儲在加密文件中而不是配置文件中。配置文件是純文本。 –