2012-02-09 52 views
0

我有一個文件夾。用文件夾。帶有文件(主要是.png)。「加密」文件/文件夾稍後閱讀

爲了學習的目的,我試圖創建一個應用程序,將該文件夾和「編譯」在一個單一的數據文件。像.bin一樣。重點是,用戶無法輕鬆查看或編輯圖像。

未來,我的應用程序可以打開這樣的數據文件並讀取文件夾的內容,並顯示文件夾中的圖像(使用Image.fromFile(「pathForTheFile」)或類似的東西)。

這可能嗎?是否有可能將文件夾/圖像或甚至音頻「加密」或「編譯」成一個文件並在將來使用VB.NET重新讀取它?

回答

0

您可以實現一些MSDN文章中的例子,你在找什麼:http://msdn.microsoft.com/en-us/library/aa719106%28v=vs.71%29.aspx

+0

但是用戶仍然能夠瀏覽.zip文件的內容,我認爲 – Voldemort 2012-02-09 22:19:55

+0

但是如果這些文件被加密了,它們對用戶來說就沒用了。 – 2012-02-13 17:43:20

+0

只要我的應用程序能夠在以後讀取內容,我不需要(甚至不希望)用戶甚至可以觸摸這些文件。 – Voldemort 2012-02-13 17:59:54

0

這取決於你要多少固定的機制來。如果你不寫這個.zip擴展名,只需將它壓縮(就像Justin建議的那樣)就足夠了。但是,這是而不是安全,任何人仍然試圖用Zip客戶端打開「編譯」文件將有完全訪問權限。

您可以使用簡單算法重寫光盤之前對二進制文件進行編碼,例如顛倒某些字節的順序。在閱讀文件時,你會做相反的動作。它會放慢速度,或者阻止人們試圖操縱文件。

如果你想要真正的安全性,你需要一些公鑰/私鑰算法。有一些API可以在您的應用程序中使用。一個快速的谷歌搜索給了我一些,如http://www.bouncycastle.org/csharp/

另一種解決方法是將圖像存儲在數據庫中,並保護數據庫,就像其他任何項目一樣。

+0

如何反轉某些字節的順序? – Voldemort 2012-02-19 19:54:00

+0

如果是個人使用,他可以使用一些基本的對稱密鑰加密算法,讓VB應用程序在加密/解密時提示輸入密碼。 – Roman 2012-02-20 04:44:46

+0

好吧,一旦你將流加載到一個字節數組中,你可以說,就像每10個字節一樣,我將這個字節與下一個字節進行交換,或者插入一個假字節。這是一個簡單的數組循環。 – 2012-02-21 19:14:16