Trong
thời buổi mà phần mềm gián điệp (spyware) tung hoành khắp nơi, chả có gì
đảm bảo là những file dữ liệu quý báu của bạn không bị nó sao ra một
bản gửi về đâu chẳng biết.
Vì vậy
cũng giống như sắm một cái két sắt để trong nhà, trên máy tính của bạn
cũng nên có một cái két như thế. Khác với két sắt, két dữ liệu có hai
lớp bảo vệ: phải mở két bằng mật khẩu mới truy cập được các file ở bên
trong, nội dung các file đó lại được mã hoá bằng mật khẩu, phải qua quá
trình giải mã mới đọc được.
I. Giới thiệu chung TrueCryptMột trong những phần mềm tốt nhất để tạo một két dữ liệu như thế là TrueCrypt với các tính năng chính:1- Tạo một vùng ổ cứng mã hoá tự động. Có mấy cách tạo:
Tạo một ổ cứng ảo bên trong một file rồi mount nó như một ổ cứng thật.
Tạo ổ mã hoá trên toàn bộ một partition hoặc trên toàn bộ một ổ cứng trong, ổ cứng ngoài, ổ USB,….
Tạo ổ
mã hoá trên partition hoặc ổ cứng có cài một hệ điều hành (hiện tại mới
hỗ trợ Windows). Trước khi khởi động vào hệ điều hành phải nhập mật khẩu
hoặc khoá mã. Tức là mã hóa toàn bộ một hệ điều hành.
2- Dữ
liệu được mã/giải mã tự động: được mã hoá rồi mới ghi vào ổ, được giải
mã khi đọc từ ổ ra ngoài, hoàn toàn tự động không cần user làm gì. Các
quá trình mã/giải mã được thực hiện trong RAM, không một dữ liệu chưa mã
hoá nào được ghi vào ổ.
Tốc độ mã/giải mã rất nhanh không ảnh hưởng đến hoạt động trên máy. Cách mã/giải mã là cần đến đâu
làm đến đấy trong RAM (on-the-fly) nên nhanh và không cần nhiều RAM.
3- Vùng ổ này xuất hiện trong Windows như một ổ D, E, F, …., còn trong Linux được mount vào thư mục
/media/truecrypt như các partition khác. Để bảo vệ một file chỉ cần move/copy nó vào ổ
hoặc thư mục nói trên, file sẽ tự động được mã hóa trước khi ghi. Khi mở
file, nó sẽ được tự động giải mã để đọc được. Trong ổ hoặc thư mục mã
hóa đó, có thể làm các thao tác bình thường như với các thư mục thông
thường: xóa, tạo thư mục/file mới, đổi tên,…
4- Dữ
liệu đã lưu chỉ có thể giải mã nếu có password và/hoặc file khoá mã
đúng. Nếu không sẽ không đọc được nội dung file dù có dùng quyền root
(toàn các ký tự loằng ngoằng không có nghĩa). Toàn bộ hệ thống file đã
lưu vào ổ mã hoá đều được mã hoá (tên file, tên thư mục, nội dung file,
các metadata của file và cả các vùng trống, chưa có dữ liệu cũng được mã
hoá).
5- Đặc
biệt, trong trường hợp bị lộ hoặc bị ép phải khai một mật khẩu, vẫn có
thể dấu được dữ liệu bằng nhiều cách: ổ mã hoá bí mật, hệ điều hành bí
mật, …(xem chi tiết ở dưới).
6- Chạy được trên Windows 7, Mac OS 10.6 và Linux. Dùng các thuật toán mã hoá mạnh nhất hiện nay AES-256,
Serpent, và
Twofish. Kiểu hoạt động:
XTS.
II. Cài đặt:Trong
các kho phần mềm của PCLinuxOS có sẵn TrueCrypt, Ubuntu và Mandriva thì
không có vì cho rằng TrueCrypt không phải PMNM. Bản mới nhất tải về
từ đây.(có bản cài cho Windows XP/Vista/7, Mac OS, OpenSUSE, Ubuntu).
Với Ubuntu và Linux Mint,
sau khi tải về file truecrypt-6.3a-ubuntu-x86.tar.gz, giải nén thành
file truecrypt-6.3a-ubuntu-x86. Mở terminal tại thư mục chứa file đã
giải nén rồi chạy lệnh sau để cài:
sudo ./truecrypt-6.3a-ubuntu-x86Với Mandriva và PCLinuxOS: phức tạp hơn.
Tìm cài từ kho phần mềm các gói
sudo, alien, rpm-build .
Cũng
tải về file cài đặt dành cho Ubuntu truecrypt-6.3a-ubuntu-x86.tar.gz,
giải nén thành file script truecrypt-6.3a-ubuntu-x86. Mở terminal tại
thư mục có file giải nén, chạy lần lượt các lệnh:
su./truecrypt-6.3a-ubuntu-x86Khi chạy lệnh thứ hai, màn hình cho chọn 2 Installation options, nhập số 2 rồi Enter để giải nén tiếp file script thành file
/root/tmp/truecrypt-6.3a-0_i386.deb.Chạy tiếp lệnh
alien -r /root/tmp/truecrypt-6.3a-0_i386.debđể convert thành file
/root/tmp/truecrypt-6.3a-0_i386.rpmNhấn vào file đó để cài TrueCrypt.
Nhấn Alt+F2 rồi chạy lệnh
kdesu kwrite /etc/sudoersKhi màn hình kwrite mở file sudoers, tìm đến dòng
root ALL=(ALL) ALL thêm vào bên dưới một dòng
username ALL=(ALL) ALL, trong đó username là username đang dùng để đăng nhập vào Mandriva.
Save file rồi đóng kwrite lại.
III. Các bước thiết lập ổ mã hoá:1-
Chạy TrueCrypt (với các bản GNOME từ System → Preferences → TrueCrypt,
với Ubuntu chạy từ Applications → Accessories → TrueCrypt, với Mandriva
chạy từ Tools → TrueCrypt).
Màn hình chính xuất hiện:
2- Nhấn vào nút
Create Volume. Màn hình sau xuất hiện:
3- Trong màn hình trên có hai phương án tạo ổ cứng mã hoá tuỳ chọn:
Tạo ổ cứng ảo bên trong
một file. File đó sẽ có kích thước tuỳ chọn. Phương án này đơn giản dễ
làm dành cho các user bình thường.
Tạo ổ cứng mã hoá trên toàn bộ một partition, một ổ cứng thứ hai không cài hệ điều hành, một ổ USB, ….
Giả sử ta chọn phương án 1 rồi nhấn nút Next . Màn hình sau xuất hiện.4- Màn hình trên cho hai phương án tạo ổ mã hoá trong một file: Ổ mã hoá tiêu chuẩn (Standard) và ổ mã hoá bí mật (Hidden). Ổ
bí mật là ổ mã hoá nằm bên trong một ổ mã hoá tiêu chuẩn và có password
khác. Nếu buộc phải tiết lộ mật khẩu của ổ mã hoá tiêu chuẩn thì khi mở
ổ đó ra cũng không thể phát hiện được ổ bí mật . Dưới đây ta gọi ổ tiêu chuẩn là ổ mã hóa ngoài.Giả sử ta chọn phương án tạo ổ bí mật rồi nhấn nút Next .
5- Màn hình trên yêu cầu chọn thư mục và file chứa ổ mã hoá. File này có thể nằm trên ổ cứng trong máy, trên ổ cứng ngoài, trên USB,…tùy ý.Nhấn vào nút Select File .6- Trong màn hình trên, mặc định file nằm ở thư mục Home của user (vdu:
/home/zxc). Nếu muốn chuyển sang thư mục khác, nhấn vào hình tam giác
nhỏ bên trái chữ Browse for other folders để chọn. Ví dụ nếu trên máy
cài nhiều hệ điều hành thì nên để file này vào thư mục trên partition
dùng chung.
Nhập tên file (tuỳ ý, muốn bí mật thì đặt một tên file vô nghĩa) chứa ổ mã hoá vào ô Name rồi nhấn nút Save .(Chú ý: có thể chọn một file có sẵn làm file chứa ổ mã hoá. Nhưng khi đó nội dung file đã có sẽ bị xoá hết.)
Màn hình sẽ quay trở lại
màn hình trên với đường dẫn và tên file đã chọn như sau (tên file do ta
đặt là TrueCrypt File, thư mục /home/zxc/DATA):
Nhấn tiếp nút Next ta đi tới màn hình sau:7- Màn hình trên cho chọn thuật toán mã hoá (Encryption Algorithm) và thuật toán băm (Hash Algorithm).Trong phần mã hóa, nếu muốn có thể chọn các thuật toán mã hóa khác hoặc mã hóa hai, ba lần, mỗi lần bằng một thuật toán (tốc độ mã/giải mã sẽ chậm nhưng độ bảo mật tăng).Nếu chưa am hiểu nhiều về mã hoá, cứ để nguyên hai thuật toán đã chọn sẵn rồi nhấn nút Next để đi tới màn hình sau:
8- Màn hình trên yêu cầu nhập vào dung lượng ổ mã hoá ngoài (Outer Volume size). Ví dụ nhập 500 MB như trong hình rồi nhấn nút Next .9- Màn hình trên yêu cầu nhập hai lần password cho ổ mã hoá bên ngoài (Outer Volume Password). Chú ý:
Password này là password có thể tiết lộ nếu bị bắt buộc.
Password cho ổ bên ngoài nên khác hẳn password cho ổ bí mật bên trong.
Chiều
dài tối đa của password là 64 ký tự. Tối thiểu nên là 20 ký tự, nếu
ngắn hơn sẽ có màn hình cảnh báo, nhấn Yes để chấp nhận.
Khi
nhập, nếu muốn kiểm tra password đã nhập, đánh dấu mục Display password
để password hiển thị dưới dạng đọc được không phải dưới dạng dấu *
Nếu muốn chắc chắn nữa thì dùng password phối hợp với keyfile. Xem thêm tại đây.
CHÚ
Ý: các password của ổ ngoài và ổ trong nên càng dài, càng phức tạp,
càng ngẫu nhiên càng tốt để tránh các chương trình dò tìm password.
Sau khi nhập xong, nhấn nút Next đi tới màn hình sau:Màn hình này cho chọn định dạng ổ.
Nếu chỉ dùng trong Windows thì chọn FAT hoặc NTFS. Nếu chỉ dùng trong
Linux thì chọn ext3, ext4, … Nếu trên máy có cả Windows và Linux và định
dùng chung ổ mã hóa thì nên chọn NTFS. Chọn xong nhấn Next để tới màn hình:10- Di chuột lung tung trong màn hình một lúc (càng lâu càng tốt để tăng độ mạnh cho khoá mã). Sau đó nhấn nút Format , quá trình tạo ổ mã hoá bắt đầu. Khi format xong màn hình sau xuất hiện:Nhập password của Linux user vào đây rồi nhấn OK để đi tới màn hình tiếp như dưới đây.11- Màn hình trên thông báo cho biết ổ mã hóa bên ngoài đã được tạo xong và sẽ được mount vào thư mục
/media/truecrypt1. Trong thư mục này nên lưu các file không thực sự muốn dấu đề phòng trường hợp phải giao mật khẩu.
Nhấn
Open Outer Volume để mở thư mục /media/truecrypt1 hiện còn trống. Nhấn phím phải chuột trong thư mục đó chọn
Create Document → Empty File tạo một file bất kỳ rồi quay lại màn hình trên nhấn nút
Next. Màn hình sau xuất hiện:
12- Thông báo trên cho biết chương trình đã tính ra dung lượng lớn nhất
có thể của ổ mã hóa bí mật (= dung lượng ổ mã hóa ngoài trừ đi dung
lượng các file đã có trong ổ mã hóa ngoài).
Nhấn nút
Next để tới màn hình chọn thuật toán mã hóa cho ổ bí mật (tương tự như ở bước 6). Để nguyên các lựa chọn mặc định, nhấn
Next tiếp để tới màn hình chọn dung lượng ổ bí mật:
13- Màn hình trên cho biết dung lượng tối đa của ổ bí mật do chương
trình tính ra là 496MB (trên 500MB dung lượng ổ mã hóa tiêu chuẩn). Ta
có thể gõ vào ô trắng ở trên dung lượng lựa chọn rồi nhấn nút
Next.
(
Mặc
dù trong ổ ngoài ta mới chỉ tạo một file có dung lượng =0, nhưng ở đây
dung lượng ổ bí mật chỉ cho phép tối đa là 496MB trong khi đáng lẽ phải
là 500MB. Đây là do giới hạn của hệ điều hành, không phải lỗi của
TrueCrypt)
14- Màn hình trên cho nhập password của ổ bí mật. Password này phải khác password của ổ mã hóa ngoài. Nhập xong thì nhấn
Next. đi tới màn hình chọn định dạng cho ổ bí mật
rồi format ổ đó tương tự bước 9 ở trên. Khi format xong, màn hình sau xuất hiện:
15- Màn hình trên thông báo cho biết đã tạo xong ổ bí mật. Ổ này cần
phải được bảo vệ (sẽ nói ở phần sau). Khi nhấn OK sẽ xuất hiện màn hình kết thúc. Nếu muốn tạo một ổ mã hóa nữa thì nhấn
Next (có thể tạo tối đa 64 ổ mã hóa), nếu không nhấn
Exit.
IV. Sử dụng ổ mã hóaNếu dùng trình duyệt file (Nautilus, Dolphin,…) mở
thư mục đã chọn ở bước 6, ta sẽ thấy file đã tạo với dung lượng đã chọn ở
bước 7. File đó chứa ổ mã hóa ngoài và bên trong ổ mã hóa ngoài là ổ mã
hóa bí mật.
Để dùng được ổ ngoài hoặc ổ bí mật, trước tiên ta phải mở ổ ngoài bằng password và gắn nó (
mount) vào thư mục
/media/truecrypt1. Cách làm như sau:
Chạy lại chương trình TrueCrypt như đã nói ở bước 1. Màn hình sau xuất hiện:
Nhấn nút
Select File. Trong màn hình mới, tìm đến thư mục có file mã hóa đã tạo ở trên, chọn file đó rồi nhấn nút
Open. Màn hình trên sẽ như sau:
Trong phần trên màn hình, chọn một slot còn trống (các cột còn trắng) rồi nhấn nút
Mount. Màn hình nhập password xuất hiện:
Đến đây có ba tình huống:
A- Nếu định dùng ổ ngoài, bên trong không có ổ bí mật: nhập mật khẩu của ổ ngoài rồi OK.
B- Nếu định dùng ổ bí mật: nhập mật khẩu của ổ bí mật rồi OK.
C- Nếu định dùng ổ ngoài, bên trong có ổ bí mật: nhấn nút
Options để có màn hình sau:
Đánh dấu chọn mục
Protect hidden volume … (Bảo vệ ổ bí mật khi mount ổ ngoài) như trong hình trên. Mục đích để khi dùng ổ ngoài, ổ trong không bị phá hỏng.
Nhập
password của ổ mã hóa ngoài vào ô trên cùng,
password của ổ bí mật vào ô
Password to hidden volume rồi nhấn OK.
Trong cả ba tình huồng trên, khi mount xong, slot đã chọn sẽ có thông tin như sau:
Trong hình trên, file mã hóa nằm ở thư mục /home/zxc/DATA, thư mục được mount vào ổ mã hóa ngoài là /media/truecrypt1.
Nhấn nút
Exit để thoát màn hình chương trình TrueCrypt. Chương trình vẫn chạy ngầm và có một biểu tượng
trên panel.
Mở chương trình duyệt file Nautilus, tìm đến thư mục
/media sẽ thấy thư mục
truecrypt1 như hình dưới đây:
Thư mục
truecrypt1:
Sử dụng bình thường như mọi thư mục khác
Khi ghi các file vào thư mục đó, file sẽ được mã hóa, khi mở các file trong thư mục đó, file sẽ được giải mã trước khi hiển thị.
Dung lượng, nội dung của truecrypt1 chính là dung lượng, nội dung ổ mã hóa ngoài hoặc trong.
Nếu
trước đó, không làm động tác mount như đã nói ở trên, thư mục
truecrypt1 không xuất hiện trong /media. Nếu không mount, sẽ không truy
cập được các file đã mã hóa, khi đọc nội dung file mã hóa đã tạo ở bước
6, ví dụ bằng mc sẽ thấy như thế này:
Đó là nội dung ổ đã mã hóa. Không có mật khẩu để giải mã thì nội dung đó là vô nghĩa.
Phần
trên là động tác mở két để lấy/cất dữ liệu. Khi dùng xong, muốn đóng
két lại thì nhấn đúp vào biểu tượng TrueCrypt trên panel để mở màn hình
chính ra rồi nhấn nút
Dismount hoặc
Dismount AllV. Tại sao lại gọi là ổ mã hóa bí mậtChỉ có người tạo ra nó, biết nó nằm ở đâu và biết mật khẩu để mở, còn thì
không có dấu vết nào trên ổ cứng, không có cách nào để chứng minh là có ổ bí mật và đọc được nội dung của nó kể cả khi biết mật khẩu ổ mã hóa ngoài. Vì vậy
nếu quên mật khẩu và/hoặc keyfile là mất dữ liệu.
VI. Kết luậnCác bản Linux lớn hiện nay đều có công cụ để mã hóa
thư mục hoặc hệ thống file, thậm chí ngay từ khi cài đặt. Tuy nhiên so
với TrueCrypt có một số nhược điểm (dùng giao diện dòng lệnh, tốc độ
chậm hơn, không có ổ bí mật, không chọn được thuật toán mã hóa, không
tạo ổ dùng chung nhiều hệ điều hành được v.v…).
Bài viết này cũng chỉ giới thiệu cách tạo ổ mã hóa
đơn giản nhất dùng file. TrueCrypt còn có thể mã hóa cả một partition
hoặc ổ cứng ngoài, sau đó mount tự động hoặc có thể mã hóa cả một hệ
điều hành.