從工作到現在已經丟了兩個筆記本電腦了,我的電腦基本上都是工作、學習、生活一體,雖然平時有備份的習慣,大部分比較核心的資料都能找的回來,但有一個重要的問題卻無可避免——Windows的登錄密碼就是擺設,這個大家都懂的……我的電腦文件肯定已經泄露,生活學習上的內容倒沒什么,我也樂于分享,盡管拿去,但是工作上的文件性質就不同了,很多項目相關的資料都是涉密文件,被行業相關而又有心的人獲取到,這種風險就不得而知了;再者,保留的一些瀏覽器密碼,基本也是悲劇了,能改的就趕緊改掉吧!鑒于這種不愉快的經歷,痛定思痛,覺得還是有必要尋求一種安全性相對較高的數據加密方案,下面這種方式雖然也有漏洞,但畢竟安全級別已經很高,不妨一試。
基本思路是先用VeraCrypt做硬盤數據加密,然后再用AES Encrypt做文件加密,當然所有加密文件均放在VeraEncrypt生成的加密盤區,文件加密用的密鑰用KeePass來生成,密鑰隨機生成,而且這種算法如果沒有密鑰串,想用爆破的方式基本上不可能破解。KeePass密碼數據文件雖然放在本地,但本身也是采用AES加密,如果沒有主密碼,也不可能通過數據文件來獲取到你的密碼。
總結一下,這種方案也就是用VeraCrypt+AES Encrypt+KeePass環環相扣的方式來加密,已經可以達到很優的加密級別了,唯一薄弱環節就是VeraCrypt和KeePass的主密碼,雖然這兩個工具也提供通過密鑰文件進行解密的方式,但這種方式一是便利性不夠,二是密鑰文件又要想辦法加密和隱藏,且又不能放在VeraCrypt加密區。當然如果希望足夠安全,可以以犧牲便利性為代價,考慮將密鑰文件放在其它存儲介質中,比如U盤中,將U盤作為USB Key來使用。對于我們這種需要對加密文件進行頻繁操作的用戶,用密鑰文件的方式就不太合適,只能通過提高密碼強度來提高安全系數,建議主密碼采用大小寫字母+特殊字符+數字+密碼長度大于20字符的密碼組合,這種密碼組合即使進行爆破,難度也非常大。
第一步,先來看一下VeraCrypt,提供一下傳送門,下載地址:https://veracrypt.codeplex.com/,下載之后的使用過程也非常簡單,這個軟件實際上是在你的磁盤上開辟一塊加密區,只有通過VeraCrypt軟件(需要主密碼)加載后,才能夠對放在加密區的文件進行訪問:
1.選擇路徑后(選擇路徑后,鍵入一個加密區名稱,創建成功后將以文件的方式顯示在該路徑下),然后點擊創建加密卷。
2.選擇創建文件型加密卷(默認選項,建議入門用戶使用)。
3.選擇標準加密卷(默認選項)。
4.選擇路徑后,鍵入一個加密區名稱,點擊保存,創建成功后將以文件的方式顯示在該路徑下。
5.選擇默認的AES算法即可。
6.下一步后,輸入加密區的空間大小,可根據自己的加密文件需求和磁盤空間自由選擇。
7.在這里要鍵入上文中提到的主密碼,非常之關鍵,如果你忘記了主密碼,而你設置的主密碼又特別復雜,有可能這塊加密區你再也打不開了,文件……想想非常可怕!
8.這里會生成磁盤加密的密鑰,這個密鑰是采集你當前的鼠標移動軌跡,來隨機生成的,這種方式的基本上不可還原,也很難再現出現第二個相同的磁盤加密密鑰。
9.然后點擊初始化(Format),等待初始化完成就好。
10.創建完成后,就可以通過加載磁盤的方式來將這塊加密區打開,選擇盤符(注意不能選擇已經占用的盤符,加載完成后,會看到這塊加密區單獨占一個盤符),然后點擊加載(Mount)按鈕。
11.點擊加載后,會讓你輸入剛才設置的主密碼,輸入完畢后,在我的電腦中,就可以看到相應的盤符,此時這塊磁盤就可以像正常盤符一樣讀寫文件了。
12.當加密區使用完畢后,記得將這塊加密磁盤卸載(Dismount)
第二步,再來看一下AES Encrypt,同樣提供傳送門,下載地址:https://www.aescrypt.com/download/,這個工具是通過AES算法來加密你的文件,在加密時會要求輸入AES加密的密鑰,在輸入密鑰后,會自動生成原文件名+擴展名+.aes的加密文件,這時需要我們手動將原文件刪除,即加密完成。想打開原文件時,只需要通過AESEncrypt打開.aes的加密文件,然后輸入文件的加密密鑰,即可再次將文件還原,用起來非常方便。
但存在一個問題,我們的加密文件很多,如果都用同樣的密鑰,安全系數就低,如果設置很多密鑰,到最后未免連自己都記不得了,到時候相當于丟文件,違背了加密的基本原則——數據安全性首先要保證數據不丟失!這里有兩種方案,第一種是使用自己的規則性密鑰,如文件名+后綴+自己定義的標識碼(或自己的某個常用密碼),這種方式既保證了密鑰的多樣性,又不至于把密鑰弄丟;第二種的安全級別實際上更高,用起來也很方便,就是用KeePass來管理所有文件的AES加密密鑰,所有密鑰都是KeePass隨機生成的字符串,如果不用KeePass連我們自己野不清楚密鑰。
第三步,使用KeePass管理文件的AES加密密鑰,再次提供傳送門,下載地址:https://keepass.info/,這是一個完全開源的密碼管理工具,理論上KeePass的主密碼不丟,你的密碼基本上沒有被破解的可能性。
1.看一下KeePass的管理界面,需要輸入第二步中的加密密鑰時,可以復制文件名+后綴,然后在KeePass中點擊新增密鑰(addEncry)按鈕:
2.Title和Username均填文件名+后綴,便于我們解密文件時的密鑰查找,這里之所以沒有考慮到文件重名的問題(在不同的路徑下可能存在重名的文件),一是加密文件重名的概率比較小,二是即使重名也沒關系,多個密鑰可以依次驗證。
截止到此處,采用VeraCrypt+AES Encrypt+KeePass的高級別文件加密,實際上已經完成,但KeePass的核心用法其實完全沒得到使用,所以下面再額外說一下KeePass配合firefox實現各大網站密碼隨機生成和自動填充的方式,這種方式的好處一是可以保證各個網站密碼的多樣性,即使哪天某個網站又被撞庫了,我們也不至于全軍覆沒;二是可以保證密碼強度,休想爆破我們的密碼;三是可以實現各網站用戶名密碼的自動填充,用戶名忘了、密碼忘了,統統沒關系,有KeePass幫我們記得那,而且省掉了還需要我們手動輸入的煩惱,下面來看一下具體實現步驟:
1.安全完KeePass后,需要在Firefox中安全KeeFox擴展,傳送門地址:https://addons.mozilla.org/zh-CN/firefox/addon/keefox/,直接點擊添加到Firefox即可。
2.在KeePass中安裝KeePassRPC.plgx插件,傳送門地址:https://github.com/kee-org/keepassrpc/releases/tag/v1.7.3.1,下載完后,將文件KeePassRPC.plgx放在安裝路徑下Plugins文件夾下,如C:\Program Files (x86)\KeePass Password Safe 2\Plugins,然后重啟KeePass,這兩步做好后,就具備完成Firefox和KeePass數據同步的條件了。
3.重啟KeePass后,此時會有彈窗,而Firefox會打開一個新的標簽頁,請將KeePass彈窗里面的紅色文字通信密碼粘貼到Firefox新標簽頁的文本框中,這個是互相通時的校驗密碼,密碼填錯的話Firefox就無法從KeePass中讀取賬號和密碼。
完成上述步驟后,就可以實現上面所說的自動在瀏覽器中填充用戶名和密碼。另外再推薦一下KeePass的備份插件,我現在在用的是DataBaseBackup,可以將密鑰數據文件自動備份到其他的磁盤區,當然你也可以選擇具有云備份功能的其他備份插件,保證密鑰文件的安全性和使用便利性。