Hình ảnh

Chỗ "cày cuốc" của mấy bạn (2020_05_04)


------
Một ngọn núi sừng sững trước mặt, vừa xa vừa cao. Nhìn lại mình, mềm yếu, bé nhỏ. Nhưng cái ý chí trong đầu lại đang mách bảo, cứ đi đi, . Trên đó chắc có gì đó hay hay, có mây, có gió, lên một bước, tầm nhìn xa hơn, rộng hơn một chút, được in dấu chân nhỏ của mình trên ngọn núi cao.
Một bước, hai bước,...nhiều bước, chân bắt đầu thấy mỏi, thấy mệt, ý chí giảm dần. Hay là dừng lại nhỉ. Đầu hàng khó khăn à? Nhìn đứa bên cạnh, không thấy nó nói gì, im lặng, từng bước, nó đi. Chắc nó đang nghĩ "Hành trình nhiều dặm bắt đầu bằng mỗi bước chân". "Ở đâu có ý chí ở đó có con đường".
Một "nhóm" người vừa đi, vừa cười, vừa giỡn, vừa nghĩ.
Nghĩ gì? hổng biếc he he 
(Ảnh: Langbiang 2020/03/01 - LG1,2,3 + )


------
Blended learning (học trực tuyến và trực diện) - Flipped classroom (Lớp học đảo ngược)


---------

Thuat ngu CNTT - 0 - Tai lieu tham khao

[11] Thế mới cần phải có từ điển thuật ngữ

- Một đại biểu quốc hội phát biểu "...nhiều từ ngữ trong luật không có trong Từ điển tiếng Việt...".

- Phản hồi của Phạm Duy Nghĩa

"Luật học có ngôn ngữ chuyên ngành riêng, thường hàm súc, khái quát hóa đến cùng cực, các thẩm phán khi áp dụng sẽ diễn giải những thuật ngữ này. Bởi thế, ngoài Từ điển Tiếng Việt, muốn đọc và hiểu luật, phải có từ điển thuật ngữ luật học chuyên ngành. Tựa như Dược học, Y học... cũng có ngôn ngữ chuyên ngành riêng. Thành ra, ngôn ngữ trong một đạo luật, hiển nhiên cũng là tiếng Việt, song là một thứ tiếng Việt đã được mài giũa, khái quát hóa, muốn đọc và hiểu, cần tới những phương pháp phân tích luật của nhà chuyên môn./."

Nhiều từ ngữ trong luật không có trong Từ điển tiếng Việt/Lao Động
--------------------------

[10] Tiếng Việt - Từ điển - Xuất bản
"Từ, ngữ tiếng Việt hiện tại cũng chưa có một quy chuẩn thật rõ ràng và thống nhất, nhất quán từ dưới lên trên. Không nói đâu xa, trong làng báo, giữa báo Bắc và báo Nam đã có những phân biệt, định giới ngầm không văn bản như miền Nam thì dùng chữ hy sinh (y dài) còn báo Bắc là hi sinh (I ngắn). Những ví dụ như vậy có thể kể ra “thập loại”. Nên chăng, những sách khảo cứu vừa thông dụng - ứng dụng vừa bình dân - hàn lâm như Từ điển cần đó những Hội đồng giám định trước khi xuất bản ví như Viện Khoa học Xã hội, Viện Ngôn ngữ."
------------------------------------
[9] Sự hình thành và phát triển của thuật ngữ tiếng Việt - GS Hoàng Văn Hành


-         Thuật ngữ hóa từ ngữ thông thường
-         Mô phỏng thuật ngữ nước ngoài
-         Tiếp nhận thuật ngữ nước ngoài
Kết quả của ba quá trình thuật ngữ là ba lớp thuật ngữ:
-         Lớp thuật ngữ thuần Việt
-         Lớp thuật ngữ mô phỏng 
-    Lớp thuật ngữ quốc tế

Sự hình thành và phát triển của thuật ngữ tiếng Việt
-------------------------------------
[8] Lời dẫn của Danh từ khoa học - GS Hoàng Xuân Hãn
"...bàn về đặc điểm của danh từ khoa học và nêu lên tám yêu cầu khi đặt một danh từ khoa học mới, chưa có trong tiếng Việt

Đồng thời, tác giả còn nêu lên các phương pháp để đặt danh từ khoa học, có tham khảo đến cách làm của các nước lân cận như Trung Quốc, Nhật... và cách mà tác giả đã sử dụng để tạo ra các danh từ khoa học trong chính cuốn sách này..."
Lời dẫn
------------------------------------
[7] Ngôn ngữ vùng đất mới - Hồ Anh Thái
Ngôn ngữ vùng đất mới
------------------------------------
[6] 130 năm thăng trầm chữ Việt
Kì 1. Hai thế kỉ và một quyết định
Kì 2. Ai học chữ Việt đầu tiên
Kì 3. Cưỡng bách và phản kháng
Kì 4. Bước ra khỏi giáo hội
Kì 5. Báo chí tiên phong
Kì 6. Ngọn lửa Đông Kinh nghĩa thục
Kì cuối. Quốc ngữ của một nước độc lập
--------------------------------------
[5] Tại sao lại nói là "vào Nam ra Bắc" mà không nói là "vào Bắc ra Nam"?
Triết lý tiếng Việt trong "vào Nam ra Bắc" - Nguyễn Đức Dân
---------------------------------------
[4] [Từ "đến từ" bị dùng sai]
Một con sâu lớn đang tàn phá "Vườn tiếng Việt"
---------------------------------------
[3] [Trang chuyên về Việt hóa thuật ngữ
Nơi đề nghị, góp ý, thảo luận, học hỏi lẫn nhau và phổ biến các thuật ngữ mới trong Tiếng Việt]
Việt Hóa Thuật Ngữ
----------------------------------------
[2] [Nói đúng, viết đúng tiếng Việt]
Thế Nào Là Tiếng Việt Trong Sáng? - Đào Văn Bình
Thế Nào Là Tiếng Việt Trong Sáng? (II)
----------------------------------------
[1][Cấu trúc vĩ mô của từ điển thuật ngữ CNTT - Viện Từ điển học & Bách khoa thư Việt Nam
Tác giả nhầm IT = Informations Technology]
Một số vấn đề về cấu trúc vĩ mô của Từ điển thuật ngữ Công nghệ thông tin ở Việt Nam

Dia cung - 16 - NTFS - Indexes

(tiếp theo của Dia cung 15)



Chỉ mục (Indexes)

NTFS sử dụng rất nhiều cấu trúc dữ liệu chỉ mục. Trong NTFS, chỉ mục là một tập hợp các attribute được xếp thứ tự. Ví dụ: lập chỉ mục các attribute $FILE_NAME trong mỗi thư mục.
Phần này sẽ trình bày kiến thức cơ bản liên quan đến chỉ mục và ứng dụng của chỉ mục trong NTFS.

B-Tree

NTFS sử dụng B-tree để sắp xếp các attribute.
Cây (tree): là một cấu trúc dữ liệu được sử dụng rộng rãi gồm một tập hợp các nút (tiếng Anh: node) được liên kết với nhau theo quan hệ cha-con. (theo wikipedia). Ví dụ hình (A) dưới đây, cây gồm nút A liên kết với hai nút B và C, nút B liên kết với nút D và E. Nút cha là nút nối tới nút khác, nút được nối tới gọi là nút con (nút A là nút cha của hai nút con B và C). Nút lá là nút không được nối tới nút con nào khác (C, D, E là những nút lá). Cây nhị phân là cây mà mỗi nút có nhiều nhất hai nút con.

Biểu diễn dữ liệu theo cấu trúc cây giúp việc sắp xếp và tìm kiếm dữ liệu dễ dàng và hiệu quả. Ví dụ ở hình trên, cây (B) đã được gán giá trị cho mỗi nút, giả sử muốn tìm kiếm một giá trị, thực hiện so sánh giá trị cần tìm với nút gốc, nếu nhỏ hơn nút gốc, việc tìm kiếm sẽ được thực hiện ở nhánh bên trái của cây; ngược lại nếu lớn hơn nút gốc, việc tìm kiếm sẽ được thực hiện ở nhánh bên phải của cây. Ví dụ, cần tìm nút có giá trị 6, do 6 nhỏ hơn 7 nên tìm kiếm nhánh bên trái, do 6 lớn hơn 5 nên tìm kiếm nhánh bên phải, tìm được nút có giá trị 6 sau ba lần so sánh.
Hệ thống NTFS sử dụng B-tree. B-tree cũng tương tự như cây nhị phân, chỉ khác là số nút con của mỗi nút trong (không phải nút lá) có thể lớn hơn hai. Thực tế, số nút con của mỗi nút trong phụ thuộc vào số giá trị tại mỗi nút; cụ thể, luôn nhỏ hơn hoặc bằng số giá trị tại mỗi nút + 1. Ví dụ: trong cây nhị phân, mỗi nút chỉ lưu một giá trị nên có hai nút con. Nếu một nút lưu được năm giá trị, sẽ có sáu nút con.
Hình sau thể hiện một B-tree.

Ở hình trên, giá trị tại mỗi nút là tên của các tập tin. Nút A có ba giá trị nên có bốn nút con. Giả sử cần tìm kiếm tập tin ggg.txt, duyệt trong nút gốc (A), theo thứ tự bảng chữ cái, sẽ xác định được ggg.txt nằm giữa eee.txt và lll.txt. Do vậy, sẽ thực hiện tìm kiếm tập tin ggg.txt trong nút C.
Thêm và xóa một giá trị trên B-tree
Phần này sẽ giải thích tại sao lại rất khó tìm được tên của một tập tin đã bị đánh dấu xóa trong hệ thống NTFS.
Giả sử mỗi nút chỉ cho phép chứa ba tên tập tin, thực hiện thêm tập tin jjj.txt vào B-tree ở ví dụ trên. Công việc tưởng như đơn giản, nhưng thực tế để thêm tập tin jjj.txt, hệ thống đã phải thực hiện xóa hai nút và tạo mới năm nút trên B-tree.
Theo thứ tự bảng chữ cái, vị trí thích hợp của jjj.txt là cuối nút C, theo sau tập tin iii.txt. Như hình dưới đây.

Tuy nhiên, nút C lại có tới bốn tập tin (quy định chỉ cho phép ba tập tin). Do đó, phải tách nút C làm hai, chuyển ggg.txt lên mức trên, tạo ra hai nút F và G thay thế cho nút C. Hình minh họa dưới đây.

Bây giờ, đến lượt nút A lại có tới bốn giá trị (bốn tập tin). Bởi vậy, lại phải chia nút A làm hai, tạo thêm một nút ở mức trên cùng để lưu ggg.txt. Hình minh họa sau.

Như vậy, để thêm jjj.txt, hệ thống đã phải xóa đi hai nút A và C, thêm vào các nút F, G, H, I và J. Các tập tin đã bị đánh dấu xóa nằm trong nút A hoặc C sẽ bị mất, vì rất khó để tìm lại.
Bây giờ thực hiện xóa tập tin zzz.txt. Hệ thống chỉ cần gỡ bỏ tên của tập tin khỏi nút E và không cần thực hiện thêm bất kì thay đổi nào khác. Tùy thuộc từng hệ thống, phần thông tin chi tiết của tập tin zzz.txt có thể vẫn tồn tại trong nút E và có thể thực hiện khôi phục lại được.
Xem xét tình huống phức tạp hơn, thực hiện xóa tập tin fff.txt. Xóa fff.txt làm nút F bị trống. Theo tính chất của B-tree: số nút con của mỗi nút trong luôn bằng số giá trị của mỗi nút + 1. Vì vậy, cần chèn giá trị vào nút F. Chuyển eee.txt từ nút I vào nút F, chuyển bbb.txt từ nút B tới nút I. Kết quả được thể hiện ở hình bên dưới.

Lưu ý: một số công cụ phân tích/khôi phục dữ liệu sẽ tìm thấy giá trị bbb.txt vẫn còn tồn tại trong nút B, và kết luận bbb.txt đã bị xóa, thực tế bbb.txt chỉ bị chuyển từ nút B sang nút I. Do vậy, trong phân tích và khôi phục dữ liệu cho hệ thống NTFS, rất khó đoán trước kết quả.
---------------------------

Tham khảo
[1] Brian Carrie, File System Forensic Analysis, Addison Wesley Professional, 2005
----------------------
Cập nhật: 2013/10/11


Cau hinh Router - 1 - Can ban



Lab 1.5.1: Nối cáp mạng và cấu hình router căn bản

Cho sơ đồ mạng


Địa chỉ IP của các thiết bị

Thiết bị
Cổng
Địa chỉ IP
Subnet mask
Default gateway
R1
Fa0/0
192.168.1.1
255.255.255.0

S0/0/0
192.168.2.1
255.255.255.0

R2
Fa0/0
192.168.3.1
255.255.255.0

S0/0/0
192.168.2.2
255.255.255.0

PC1

192.168.1.10
255.255.255.0
192.168.1.1
PC2

192.168.3.10
255.255.255.0
192.168.3.1

Mục đích của bài thực hành

  • Nối cáp giữa các thiết bị; truy cập, cấu hình thiết bị.
  • Xóa và nạp cấu hình cho router.
  • Làm việc với IOS bằng dòng lệnh (command line interface).
  • Cấu hình router cơ bản.
  • Sử dụng lệnh show, ping và traceroute để kiểm tra cấu hình, kết nối.
  • Nạp startup configuration cho router.
  • Cài đặt terminal giả lập.

Công việc 1: Nối cáp giữa các thiết bị trong mạng Ethernet

Thực hiện kết nối các thiết bị như trong sơ đồ mạng, có thể sử dụng loại router bất kì, miễn là có đủ các cổng kết nối theo yêu cầu. Trong bài này, sử dụng router Cisco 1841. Để kiểm tra xem router có bao nhiểu cổng (interface), sử dụng lệnh show ip interface brief.
Những thiết bị nào trong mạng cần sử dụng cáp Ethernet để kết nối với nhau?
PC1 - switch, switch – R1, R2 – PC2.

Bước 1: Kết nối router R1 với switch S1

Sử dụng cáp thẳng (straight-through) để kết nối cổng FastEthernet 0/0 của router R1 với cổng FastEthernet 0/1 của switch S1.
(Thông thường, để kết nối hai thiết bị khác loại sử dụng cáp thẳng, kết nối hai thiết bị cùng loại sử dụng cáp chéo. Xét theo một số khía cạnh, máy tính được xem như một router và ngược lại)
Đèn báo hiệu trạng thái kết nối tại cổng FastEthernet 0/0 của R1 có màu gì? Đỏ (chưa sẵn sàng làm việc)
Đèn báo hiệu trạng thái kết nối tại cổng FastEthernet 0/1 của S1 có màu gì? Đỏ (chưa sẵn sàng làm việc)

Bước 2: Kết nối PC1 với switch S1

Sử dụng cáp thẳng để kết nối cổng FastEthernet (NIC) của PC1 với cổng FastEthernet 0/2 của switch S1.
Đèn báo hiệu trạng thái kết nối tại cổng FastEthernet của PC1 có màu gì? Xanh (đã sẵn sàng làm việc)
Đèn báo hiệu trạng thái kết nối tại cổng FastEthernet 0/2 của S1 có màu gì? Xanh (đã sẵn sàng làm việc)
Nếu đèn báo hiệu trạng thái chưa chuyển sang màu xanh, báo hiệu kết nối giữa switch và máy tính chưa được thiết lập, hãy chờ một khoảng thời gian ngắn để hai thiết bị thiết lập kết nối. Nếu kết nối không được thiết lập, hãy kiểm tra lại để đảm bảo chắc chắn cáp kết nối là cáp thẳng và đã bật nguồn điện hai thiết bị.

Bước 3: Kết nối PC2 với router R2

Sử dụng cáp chéo (cross-over) để kết nối cổng FastEthernet 0/0 của router R2 với cổng FastEthernet của PC2.
Đèn báo hiệu trạng thái kết nối tại cổng FastEthernet của PC1 có màu gì? Đỏ (chưa sẵn sàng làm việc)
Đèn báo hiệu trạng thái kết nối tại cổng FastEthernet 0/0 của R2 có màu gì? Đỏ (chưa sẵn sàng làm việc)

Công việc 2: Kết nối kiểu nối tiếp (serial link) giữa router R1 và R2

Trong một hệ thống mạng WAN, thiết bị phía người dùng (CPE - Customer Premises Equipment) thường là một router (DTE – Data Terminal Equipment). Router sẽ được kết nối với một modem hoặc CSU/DSU (DCE – Data Circuit-termination Equipment). Modem hoặc CSU/DSU có nhiệm vụ chuyển đổi tín hiệu của DTE thành dạng tín hiệu thích hợp để truyền trên hạ tầng của nhà cung cấp dịch vụ kết nối WAN.
Thực tế, mạng WAN không thể kết nối trực tiếp điểm tới điểm (back to back) giữa các thiết bị như trong bài thực hành này. Vì các thiết bị thường ở rất xa nhau, nên việc kết nối phải được thực hiện qua hạ tầng mạng WAN.
Trong bài thực hành, hạ tầng mạng WAN (WAN cloud) được giả lập bằng một kết nối  trực tiếp DTE-DCE.

Bước 1: Kết nối router R1 với R2 sử dụng cáp null serial (không cần thực hiện trên môi trường packet tracert)

Trong bài thực hành, kết nối WAN giữa hai router sẽ được thiết lập thông qua hai sợi cáp: một sợi DCE và một sợi DTE. Cáp nối hai router theo kiểu này được gọi là cáp null serial. Loại cáp được sử dụng là V.35; đầu nối: V.35 DCE và V.35 DTE.

Bước 2: Kết nối đầu DCE của sợi cáp ở bước 1 với cổng serial 0/0/0 của router R1, và đầu DTE với cổng serial 0/0/0 của router R2.

Trên môi trường packet tracert, bạn cần gắn thêm cổng serial cho mỗi router.
Chọn router, bấm chuột trái vào biểu tượng công tắc để tắt nguồn router. Trong tab Physical, kéo cạc có cổng WAN nối tiếp (WIC-1T) thả vào khe còn trống ở mặt sau router, bấm chuột trái vào biểu tượng công tắc để bật nguồn router (xem hình minh họa bên dưới).

Thực hiện cho router còn lại.
Sử dụng cáp DCE để kết nối giữa router R1 và R2. Chú ý: R1 đóng vai trò DCE.
 

Công việc 3: Thiết lập giao diện để truy cập, cấu hình  router R1 (không cần thực hiện trên môi trường packet tracert).

Cổng console được sử dụng để truy cập, thực hiện cấu hình và theo dõi hoạt động của router. Để kết nối máy tính với cổng console của router, sử dụng cáp đảo (rollover), với một đầu nối là RJ-45 và đầu còn lại là DB-9. Để kết nối tới router, sử dụng phần mềm TeraTerm hoặc HyperTerminal.

Bước 1: Cắm đầu nối RJ-45 vào cổng console của router R1.

Bước 2: Cắm đầu nối DB-9 vào cổng COM1 hoặc COM2 của máy tính PC1.

Bước 3: Mở phần mềm TeraTerm hoặc HyperTerminal để truy cập, thực hiện cấu hình và theo dõi hoạt động của router.

Công việc 4: Xóa và nạp cấu hình router

Trước khi đi vào cấu hình router, phần này sẽ trình bày một số kiến thức cơ bản liên quan đến router.
Router có chức năng chuyển tiếp gói tin từ mạng này sang mạng khác, nên router sẽ có nhiều hơn một cổng, mỗi cổng sẽ thuộc về một mạng khác nhau. Khi nhận được một gói tin router sẽ phải tìm được cổng ra phù hợp (có thể đến được đích) để chuyển gói tin đi. Các cổng của router thường được sử dụng để giao tiếp được cả với LAN (máy tính, máy in, server) và với WAN (modem).
Router có hai chức năng chính:
  • Xác định đường đi tốt nhất để gửi gói tin: sử dụng bảng định tuyến (routing table).
  • Chuyển tiếp gói tin đến đích: tạo frame mới cho gói tin, thực hiện gửi.(ví dụ: router nhận frame dạng Ethernet, sau đó, tạo frame mới dạng PPP để gửi đi).
Bảng định tuyến được xây dựng dựa trên các giao thức định tuyến (routing protocol) hoặc được người quản trị cấu hình bằng tay (static route).
Các thành phần bên trong của router thường khác nhau cho mỗi dòng, mỗi phiên bản. Tuy nhiên, về cơ bản một router gồm các thành phần sau: CPU, RAM, ROM, Flash, NVRAM, IOS, các cổng giao tiếp.
Hình sau minh họa các thành phần bên trong của một router.

- CPU là đơn vị xử lý trung tâm, thực thi các lệnh của hệ điều hành, ví dụ: khởi tạo hệ thống, định tuyến, thực hiện các giao tiếp mạng.
- RAM (SDRAM) chứa lệnh và dữ liệu cần thiết cho quá trình đang được xử lý tại CPU, dữ liệu trên RAM sẽ bị xóa hết khi tắt nguồn, hoặc khi khởi động lại. Cụ thể RAM chứa các nội dung sau:
  • Hệ điều hành (IOS – Internetwork Operating System): được nạp vào RAM trong quá trình khởi động.
  • Thông tin cấu hình đang được thực thi trên router (running-config).
  • Bảng định tuyến.
  • ARP cache.
  • Bộ nhớ đệm cho các gói dữ liệu.
- Bộ nhớ Flash lưu hệ điều hành (IOS). Bộ nhớ Flash có nhiều khe cắm mở rộng cho phép cắm thêm thẻ nhớ để tăng khả năng lưu trữ. Nội dung của Flash không bị mất khi tắt nguồn hoặc khởi động lại.
- ROM chứa mã kiểm tra phần cứng (POST – power on self test), đoạn mã để nạp hệ điều hành từ Flash vào RAM. Nội dung của ROM không bị mất khi tắt nguồn hoặc khởi động lại.
- NVRAM (Non-Volatile RAM) lưu tập tin cấu hình start-up config, đây là tập tin cấu hình dự phòng của router. Nội dung của Flash không bị mất khi tắt nguồn hoặc khởi động lại. Tập tin này được chép vào RAM trở thành running-config.
- IOS (Internetwork Operating System): hệ điều hành của router. IOS quản lý phần cứng, phần mềm. Cụ thể: cấp phát bộ nhớ, quản lý tiến trình, bảo mật, quản lý hệ thống tập tin, định tuyến, chuyển mạch, liên kết mạng, hoạt động như một thiết bị viễn thông.
- Các cổng giao tiếp: LAN, WAN và console/AUX.
-----------------
Tham khảo:
[1] Student Lab Manual of Routing protocol and concepts, Cisco
-----------------
Cập nhật: 2013/10/8

Dia cung - 15 - NTFS - Ma hoa attribute (encrypted attribute)



(tiếp theo của Dia cung - 14)

Mã hóa attribute (encrypted attribute)

NTFS có cơ chế để mã hóa phần nội dung của attribute. Về mặt lý thuyết, tất cả các attribute đều có thể mã hóa được, tuy nhiên, Windows chỉ thực hiện mã hóa cho các attribute kiểu $DATA. Khi thực hiện mã hóa một attribute $DATA, Windows chỉ thực hiện mã hóa phần nội dung (content), phần header không được mã hóa. Khóa để giải mã được lưu trong thuộc tính $LOGGED_UTILITY_STREAM.
Trong Windows người dùng có thể thực hiện mã hóa cho một thư mục hoặc tập tin bất kì. Khi mã hóa thư mục, bản thân thư mục không được mã hóa, chỉ có các tập tin trong thư mục được mã hóa. Các thư mục con và tập tin được tạo trong các thư mục đã được mã hóa cũng sẽ được mã hóa. “Cờ báo” mã hóa của một tập tin hay thư mục được lưu trong attribute $STANDARD_INFORMATION, ngoài ra còn được lưu trong chính header của attribute được mã hóa.

Cơ bản về mã hóa (cryptography)

Mã hóa là quá trình sử dụng thuật toán cùng với khóa để chuyển dữ liệu ở dạng rõ (đọc được - plaintext) sang dạng mờ (không đọc được - ciphertext). Có thể hiểu đơn giản là quá trình biến đổi dữ liệu từ dạng này sang dạng khác, để những người không có phận sự không thể biết được dữ liệu ở dạng gốc là gì. Nếu muốn biết dữ liệu ở dạng gốc là gì họ phải có khóa để giải mã.
Giải mã là quá trình ngược lại của mã hóa, sử dụng thuật toán và khóa để chuyển dữ liệu ở dạng mờ sang dạng rõ.
Có hai loại mã hóa: mã hóa đối xứng (symmetric encryption) và mã hóa bất đối xứng (asymmetric encryption).
  • Mã hóa đối xứng: là sử dụng cùng một khóa (key) cho cả quá trình mã hóa và quá trình giải mã.
  • Mã hóa bất đối xứng: cần sử dụng hai khóa khác nhau, một khóa cho quá trình mã hóa và khóa còn lại cho quá trình giải mã.
Mã hóa đối xứng thực hiện nhanh, nhưng không thuận tiện và không an toàn trong quá trình sử dụng. Nếu chúng ta thực hiện mã hóa một tập tin bất kì, sau đó, muốn chia sẻ tập tin đã được mã hóa cho nhiều người sử dụng thì có hai cách sau: một là mã hóa tập tin, sau đó gửi tập tin này cho mọi người, kèm theo khóa để giải mã, điều này giảm sự bảo mật của tài liệu; hai là nhân bản tập tin cần mã hóa, thực hiện mã hóa mỗi bản sao bằng một khóa khác nhau, gửi tập tin cho mỗi người cùng với khóa tương ứng để mở, điều này làm lãng phí thời gian và không gian lưu trữ.
Mã hóa bất đối xứng sử dụng hai loại khóa: public và private. Mọi người có thể sử dụng khóa public để mã hóa dữ liệu, và chỉ ai có khóa private mới có thể giải mã được dữ liệu. Chiều dài của khóa thường là trên 1024 bit.

Mã hóa trong NTFS

Khi thực hiện mã hóa attribute $DATA, phần nội dung của attribute $DATA được mã hóa bằng phương pháp mã hóa đối xứng (gọi tắt là DESX). Hệ thống sẽ sinh ra một khóa ngẫu nhiên cho mỗi MFT entry được mã hóa, khóa này được gọi là FEK (file encryption key). Nếu một MFT entry có nhiều attribute $DATA, thì chúng sẽ được mã hóa bằng cùng một FEK.
FEK cũng được mã hóa và lưu trong attribute $LOGGED-UTILITY_STREAM. Attribute này chứa một danh sách các DDF (data decryption fields) và DRF (data recovery fields).
Mỗi người dùng có quyền truy cập tập tin đều có một DDF riêng, trong đó gồm: SID (security ID) của người dùng, thông tin về mã hóa, FEK đã được mã hóa bằng public key của người dùng (Windows quản lý public này như thế nào?).
Mỗi phương pháp khôi phục dữ liệu (data recovery) được hệ thống tạo cho một DRF tương ứng, mỗi DRF gồm: FEK đã được mã hóa bằng public key của phương pháp phục hồi dữ liệu. DRF được administrator hoặc các người dùng hợp lệ sử dụng khi truy cập dữ liệu.
Quá trình mã khóa phần nội dung của attribute $DATA (nội dung của tập tin) được minh họa trong hình dưới đây.

Quá trình giải mã

Để giải mã attribute $DATA, hệ thống sẽ:
o       Đọc attribute $LOGGED_UTILITY_STREAM để xác định DDF của người dùng.
o       Sử dụng private key của người dùng để giải mã FEK.
o       Sử dụng FEK để giải mã attribute $DATA.
Khi gỡ bỏ quyền truy cập tập tin của người dùng, key của người dùng sẽ bị gỡ bỏ khỏi danh sách trong $LOGGED_UTILITY_STREAM.
Private key của người dùng được lưu trong registry của Windows. Private key được mã hóa bằng thuật toán mã hóa đối xứng với key là mật khẩu đăng nhập của người dùng. Vì vậy quá trình giải mã sẽ cần sử dụng tới mật khẩu đăng nhập của người dùng và registry.
Quá trình giải mã được minh họa trong hình dưới đây.

Mã hóa dữ liệu không an toàn tuyệt đối

Một vài công cụ có thể thực hiện tấn công, dò tìm được mật khẩu của người dùng, khi có mật khẩu, người tấn công có thể thực hiện giải mã các tập tin đã được mã hóa.
Trong quá trình thực hiện mã hóa, NTFS sẽ tạo ra tập tin tạm có tên EFS0.TMP. Tập tin EFSS0.TMP chứa nội dung của tập tin đang mã hóa. Sau khi thực hiện mã hóa xong, NTFS thực hiện xóa tập tin này, tuy nhiên, nội dung của nó vẫn còn tồn tại trên đĩa nếu MTF entry của EFS0.TMP chưa được cấp phát lại.
Trong swap space hoặc page file cũng có chứa nội dung của dữ liệu ở dạng chưa mã hóa.
Tài khoản Administrator, các tài khoản có quyền hợp lệ trên domain controller nếu được cấu hình để khôi phục dữ liệu của hệ thống, đều có thể thực hiển giải mã được các tập tin trên hệ thống.

 ---------------------------

Tham khảo
[1] Brian Carrie, File System Forensic Analysis, Addison Wesley Professional, 2005
----------------------
Cập nhật: 2013/10/2