在Windows中,可以保護單個程序中的數據嗎?我一直在尋找CryptProtectData,但是whis是以用戶爲基礎的,我想要一些類似的東西,但是在程序的基礎上。我的程序將有多個用戶需要訪問相同的數據,但數據是敏感的,我不希望任何用戶閱讀它。保護單個程序中的數據
1
A
回答
0
首先,如果您的用戶具有管理員權限,那麼沒有明確的方法來阻止他們。
其次,即使他們不這樣做,您也必須在ring 0處實施部分軟件,因此它具有比用戶更高的權限,這將使他們難以訪問該流程'內存或可執行文件。然後,您可以加密您的數據並在將其提供給用戶時進行解密。
如果上述所有內容都不可行,您可以使用軟件開發人員使用的與破解相同的混淆技術。
這通常歸結爲防止調試或防止修補。一些建議在這裏:http://www.woodmann.com/crackz/Tutorials/Protect.htm
0
CryptProtectData(間接)使用用戶的憑據來加密數據。
在Windows(以及大多數其它通用計算機平臺),不可能對每個應用程序中的數據進行加密使得所述計算機屬於用戶,並且用戶是主機,而不是應用程序。
如果您不希望用戶(以及以用戶帳戶運行的其他應用程序)訪問數據,則需要將這些數據移出計算機,將其存儲在遠程系統上並控制用戶對這個數據。
0
如果你的用戶沒有管理員權限,那麼我會做的是讓你的程序爲自己的目的創建一個帳戶。當您的程序創建其數據文件時,它會在這些文件上設置ACL,以便它創建的帳戶是唯一有權訪問這些文件的帳戶。無論何時您的程序需要讀取/寫入這些文件,都需要使用其特殊帳戶臨時登錄。然後問題是保持該帳戶密碼的登錄憑據。這完全是另一個問題。
相關問題
- 1. 保護和應用程序取消保護數據DB
- 2. 如何保護流星應用程序的MongoDB中的數據
- 3. 如何保護AIR應用程序中的數據?
- 4. 將受保護的數據存儲在Java應用程序中
- 5. 保護WP7應用程序中的驗證數據
- 6. 保護UWP應用程序中的SQLite數據庫
- 7. 如何使用oAuth來保護RavenDB中的單個數據庫?
- 8. 如何保護RethinkDB中的單個數據庫?
- 9. 在ASP.NET應用程序中保護單個頁面
- 10. 我如何保護我的應用程序,並保護我的Sqlite數據庫在應用程序
- 11. 保護數據保護密碼
- 12. 在web應用程序中保護POST數據
- 13. Xcode數據保護
- 14. 保護數據庫
- 15. Sinatra應用程序中的XSS保護
- 16. 關於保護Web應用程序數據源的想法
- 17. 保護用戶PC上的應用程序數據庫訪問
- 18. Android上的數據保護
- 19. 是否可以爲不同的數據保護單個REST API?
- 20. 保護JSF應用程序
- 21. 保護ASP.NET應用程序
- 22. 保護卸載[程序]
- 23. 保護Android應用程序
- 24. 保護Symfony2應用程序
- 25. 保護Web應用程序
- 26. 密碼保護小程序
- 27. 使用asp.net會員提供程序保護單個頁面
- 28. 單點登錄ASP身份保護多個應用程序
- 29. PHPExcel保護單個列
- 30. iPhone中的Sqlite數據庫保護
你可能需要更具體的你想要完成什麼。 「 – sarnold 2011-03-08 11:53:53
」需要訪問相同數據的用戶,但數據是有感染力的,我不希望任何用戶閱讀它。「 ????什麼..那不讓sence?附:製作一個服務器 - 客戶端。把它們分開放在不同的機器上。 – Sigtran 2011-03-08 11:54:47
客戶端 - >服務器不是替代方案。我想知道是否有可能將文件訪問限制爲單個程序而不是單個用戶。 – thenail 2011-03-08 12:04:20