2005年12月5日 星期一

加密式檔案系統

自從前兩天可愛小硬碟入手後,我將它放入 USB Mobie Disk,不久,就發現一件悲慘的事情。

我的 USB Mobie Disk 不愛穿衣服!

一但我將 USB Mobie Disk 的上蓋蓋起來,USB 連接線一接上 X31,X31 馬上發瘋似地重開機,履試不爽。現在,只好讓它脫了上蓋,給它一個清涼,但外觀看起來就是沒這麼漂亮有質感啊!

好吧,不愛穿衣服就算了。我又想到萬一某天,這顆備份資料用的小硬碟,不小心遺失了的話,我可不希望裡頭一些私密資料讓人看光光。於是乎,我就想試試 Linux 的加密式檔案系統。

只不過,試了半天才發現,我現在用的 Linux 系統(MDK LE 2005)並不支援 AES Multi Key (V2=64 keys / V3=65 keys)。所以,底下的步驟是建立一個 10G 的加密式檔案系統,並利用 AES 128 加密。

1. 建立一個約 10G 的大型檔案,檔案內容塞滿亂數資料

# dd if=/dev/urandom of=mystuff bs=1M count=10000

2. 產生單一 AES Single Key 並用 GPG 加密起來
# head -c 2925 /dev/urandom | uuencode -m - | head -n 66 | tail -n 1 | gpg --symmetric -a > /etc/fskey.gpg

3. 將 mystuff 檔案利用 aes-128 加密並掛上 /dev/loop0
# losetup -e aes-128 -K /etc/fskey.gpg /dev/loop0 mystuff

4. 格式化
# mkfs.ext3 /dev/loop0
# tune2fs -m0 /dev/loop0

5. 將 aes-128 加密的檔案系統掛載上 /mnt/crypto
# mkdir /mnt/crypto
# mount -t ext3 /dev/loop0 /mnt/crypto
# df-h
Filesystem 容量 已用 可用 已用% 掛載點
/dev/loop0 9.7G 33M 9.6G 1% /mnt/crypto

如果你有些敏感資料或很隱私的內容,需要以加密的方式儲存時,Linux 的加密式檔案系統將是一個不錯的選擇。

參考資料:
1. Cryptoloop-HOWTO
2. loop-AES.README

1 則留言:

baoz 提到...

bestcrypt也是一????人的???? :)
http://www.xfocus.net/tools/200603/1140.html