2017-05-24 15 views
1

我建立一個小的應用程序的房地產公司,需要對敏感信息的存儲,如銀行對賬單,納稅申報等,現在我有上傳表單只是一個標準的HTML上傳使用php $ _FILES將文件移動到所需文件夾。這工作正常,但沒有安全級別來保護這些敏感信息。我有兩個問題?PHP文件加密銀行對帳單等

首先,什麼是最好的做法(2017年),用於存儲喜歡的銀行對賬單,納稅申報等敏感文件?我試圖在網上搜索最佳實踐,但是我發現的一切都是5 - 10年以前的信息或不推薦使用的PHP函數。是否有具體的PHP功能,我應該使用/研究?

其次,是否有任何教程或書籍可用,這將有助於我理解安全的文件存儲,文件加密等,在PHP?

我的最終目標是隻是爲了確保這些文件是安全的,不會落入壞人之手。我的問題是特定於文件上傳。我確實知道我網站的其他部分也必須安全。我的問題只是關於保護文件。

感謝您的任何幫助或指導。

+0

我不知道這將是一個好主意,用BLOB.Since可以將其添加到數據庫中,你可以做一些crypting魔術。 – DaAmidza

+0

它會變慢...但可以做這個工作肯定 – DaAmidza

+1

用公鑰加密你的內容(也許只是存儲在數據庫中,「如何」部分不是很重要,除非我們在談論PDF或其他大型文件)並將私鑰保存在空隙系統中。 –

回答

2

首先,存儲銀行對賬單,納稅申報表等敏感文件的最佳做法是什麼(截至2017年)?

的文字答案,這很簡單,就是讓他們完全仿射性質(遠程硬盤上,如果需要,讓他們在數字全部),並將其儲存在一個良好的質量安全只有一個 - 或最大兩個可驗證的密鑰持有者。


  • https://security.stackexchange.com
  • https://crypto.stackexchange.com
  • 閱讀,下載和使用Defuse PHP Encryption Library。去年我在同一個主題上看到這個圖書館(和所有Defuses的東西)非常高,如果不是這個領域的市場領先的話。這個加密庫可以解密/解密文件。

  • 而且研究Halite。這是一個由libsodium驅動的高級加密接口,可以加密和解密文件。

  • 還請read my answer here針對MySQL的最佳實踐爲確保數據存儲(字符串或斑點等)。

  • 如果使用的數據庫是最重要的數據庫和文件服務器是不同服務器(並根據您的數據的價值,他們應該是非常不同的物理位置),並且該數據庫包含加密的密鑰需要進行文件服務器解密,這樣 if 當一臺服務器被攻陷時,數據是仍然是的安全。

  • 使用您自己的服務器。 不要使用「雲」。(有適當的網絡數據的安全性是不是真的便宜

+0

我真的不同意保留這些非數字記錄。你只是爲了物理安全而改變電子安全,通常情況並不是那麼好。這只是簡單地減少可以找到身體虛弱的人數。但是這樣的舉動嚴重限制了2017年開展業務的可能性,這已經不再現實了。 –

+0

@ArtjomB。這是字面問題的字面答案,沒有範圍可以知道誰需要訪問文檔,如果是敏感信息,那麼保持它離線**將更安全,正如評論回答所引用的那樣這個問題表明,使用氣隙介質,幾乎沒有比安全的「空隙」更好的東西。 – Martin

+0

@ArtjomB。我也從根本上不同意物理安全通常不如數字安全更好。你做大量的假設..... – Martin