Mã hóa đồng hình hoàn toàn (Fully Homomorphic Encryption - FHE) không phải là một thuật toán đơn lẻ mà là tập hợp các cấu trúc mật mã cho phép tính toán trực tiếp trên dữ liệu đã mã hóa. Mỗi hệ mã được xây dựng dựa trên các bài toán toán học phức tạp, chủ yếu dựa trên giả định về cấu trúc lưới như Learning With Errors (LWE) và Ring-LWE, vốn được đánh giá có khả năng chống lại cả máy tính lượng tử. Các hệ mã này khác nhau về tính hiệu quả, loại phép toán tối ưu hóa và cách kiểm soát độ nhiễu phát sinh trong quá trình thực thi. Hiểu rõ các hệ mã chủ đạo là điều kiện quan trọng để xác định FHE có thể tích hợp vào hợp đồng thông minh như thế nào và tại sao một số thiết kế lại phù hợp với từng trường hợp ứng dụng cụ thể.
Bốn hệ mã được nhắc đến nhiều nhất hiện nay là BFV, BGV, CKKS và TFHE/FHEW. Mỗi hệ mã đáp ứng các nhu cầu tính toán riêng biệt và sử dụng nền tảng toán học khác nhau. Lựa chọn hệ mã cho lĩnh vực blockchain thường dựa trên việc ứng dụng đích cần phép tính số nguyên chính xác, số học xấp xỉ cho học máy, hay cần các phép toán nhị phân tốc độ cao phục vụ logic hợp đồng thông minh.
BFV (Brakerski–Fan–Vercauteren) và BGV (Brakerski–Gentry–Vaikuntanathan) là hai hệ mã FHE thực tiễn đầu tiên được ứng dụng rộng rãi. Cả hai cùng dựa vào mật mã học lưới, thiết kế phục vụ các phép toán trên số nguyên hoặc số học mô-đun. Chúng hỗ trợ phép cộng và nhân chính xác, phù hợp cho các ứng dụng tài chính, cơ chế bỏ phiếu hoặc bất kỳ tình huống nào yêu cầu độ chính xác tuyệt đối.
Hệ mã BFV tối ưu cho việc xử lý số nguyên mô-đun nhanh chóng, đặc biệt thích hợp khi ứng dụng cần đảm bảo tính xác định và không có lỗi làm tròn. BGV, mặc dù có cơ sở lý thuyết tương tự, còn bổ sung các tối ưu hóa giúp mã hóa nhiều giá trị trong một bản mã (batching), từ đó cho phép xử lý song song nhiều dữ liệu cùng lúc. Tính năng batching này rất quan trọng đối với môi trường blockchain, nơi hiệu quả xử lý và chi phí giao dịch gắn liền với hiệu quả tính toán.
Cả BFV và BGV đều sử dụng mã hóa đồng hình phân tầng (leveled homomorphic encryption), nghĩa là chỉ cho phép thực hiện số lượng giới hạn các phép toán trước khi độ nhiễu trong bản mã trở nên quá lớn. Bootstrapping, tức quá trình làm mới bản mã thông qua mã hóa lại một cách đồng hình, giúp các hệ này đảm bảo đồng hình hoàn toàn. Nếu như trước đây bootstrapping rất chậm, thì các triển khai hiện đại đã tối ưu đáng kể, cho phép tính toán liên tục trên dữ liệu mã hóa phù hợp cho các ứng dụng thực tiễn.
Hệ mã CKKS (Cheon–Kim–Kim–Song) mang tới định hướng mới cho mã hóa đồng hình khi cho phép tính toán số học xấp xỉ thay vì số nguyên chính xác. Thiết kế này đặc biệt lý tưởng cho các bài toán trí tuệ nhân tạo hoặc học máy, nơi không cần độ chính xác tuyệt đối và phép tính số thực xấp xỉ đã đủ đáp ứng yêu cầu. CKKS mã hóa các số thực hoặc phức thành bản mã và hỗ trợ tính toán vector, giúp tăng tốc việc suy luận mô hình AI bảo mật hoặc phân tích dữ liệu riêng tư.
CKKS đánh đổi bằng việc kết quả có thể xuất hiện sai số nhỏ do quá trình chia tỉ lệ và làm tròn cả ở bước mã hóa lẫn tính toán. Tuy nhiên, hầu hết các mô hình AI và ứng dụng phân tích dữ liệu đều chấp nhận được các sai số này vì bản chất chúng vẫn đảm bảo độ tin cậy. Trong lĩnh vực blockchain, CKKS có thể hỗ trợ các tác tử AI bảo mật hoạt động trực tiếp trên chuỗi, dự báo, đánh giá rủi ro mà không lộ mô hình hay dữ liệu người dùng.
Dù ưu việt cho các tác vụ tính toán vector hoặc AI, CKKS không phù hợp với ứng dụng hợp đồng thông minh tài chính hoặc bầu cử vốn yêu cầu kết quả chính xác tuyệt đối. Với các bài toán này, các hệ số nguyên như BFV hoặc TFHE sẽ là lựa chọn tối ưu. Tuy nhiên, khả năng xử lý vector chiều cao của CKKS giúp nó trở thành nền tảng tiềm năng cho thị trường AI phi tập trung và hệ học máy bảo mật trên blockchain trong tương lai.
TFHE (Fast Fully Homomorphic Encryption over the Torus) cùng FHEW là các hệ mã tối ưu cho toán học ở cấp bit. Không như BFV, BGV hay CKKS vốn vận hành với vector hoặc đa thức, TFHE mã hóa từng bit và thực hiện các phép toán Boolean nhanh vượt trội. Phương pháp này lý tưởng cho những ứng dụng cần logic cổng thay cho số học, như so sánh, điều kiện rẽ nhánh hoặc chuyển trạng thái hợp đồng thông minh bảo mật.
Nét đặc trưng của TFHE là khả năng bootstrapping siêu tốc. Nếu các hệ mã FHE đời đầu mất hàng giây mỗi phép toán thì TFHE rút ngắn chỉ còn hàng mili-giây nhờ cải tiến cơ chế làm mới bản mã, khiến việc tính toán bảo mật liên tục hoàn toàn khả thi cho ứng dụng tương tác thời gian thực. Nhờ đột phá này, TFHE hiện được xem là lựa chọn hàng đầu cho blockchain như nền tảng fhEVM của Zama, nơi hợp đồng thông minh phải xử lý logic mã hóa đa dạng một cách hiệu quả.
Điểm đánh đổi của TFHE là tối ưu cho phép toán nhị phân, dẫn tới hiệu quả thấp khi xử lý khối lượng số học lớn so với CKKS hoặc BFV. Tuy nhiên, các giải pháp kết hợp đang dần thịnh hành, sử dụng TFHE cho logic điều khiển và CKKS cho tính toán xấp xỉ, kết hợp ưu điểm của cả hai cho ứng dụng phi tập trung bảo mật dữ liệu người dùng.
Nhiễu là yếu tố nền tảng trong các hệ mã đồng hình dựa trên lưới. Mỗi phép toán trên dữ liệu mã hóa đều làm tăng mức nhiễu, và khi vượt quá ngưỡng cho phép thì bản mã mất khả năng giải mã chính xác. Bootstrapping chính là quá trình giải mã và mã hóa lại đồng hình, đưa mức nhiễu quay lại trạng thái ban đầu, cho phép số phép toán thực thi gần như không giới hạn.
Các thuật toán bootstrapping giai đoạn đầu vừa chậm, vừa ngốn tài nguyên nên FHE gần như chỉ áp dụng trong nghiên cứu học thuật. Nhưng với những đột phá suốt thập kỷ qua, thời gian bootstrapping đã giảm kịch tính từ hàng phút xuống chỉ vài mili-giây. TFHE và FHEW là tiên phong trong tối ưu hóa độ trễ bootstrapping cho ứng dụng thời gian thực, trong khi CKKS và BFV cũng đạt nhiều bước tiến nhờ cải tiến thuật toán và tận dụng tăng tốc phần cứng.
Việc kiểm soát nhiễu không chỉ dựa vào bootstrapping. Các kỹ thuật như chuyển đổi mô-đun, chuyển đổi khóa và đóng gói bản mã cho phép kiểm soát sự gia tăng nhiễu và nâng cao hiệu quả tính toán. Chuyển đổi mô-đun giúp giảm kích thước bản mã trong quá trình thao tác, chuyển đổi khóa hỗ trợ chuyển dữ liệu mã hóa giữa các khóa khác nhau mà không cần giải mã, còn đóng gói bản mã cho phép xử lý song song nhiều giá trị trong một bản mã duy nhất. Tổng thể, đây là các trụ cột giúp triển khai FHE thực tiễn hiệu quả.
Dù các thuật toán đã liên tục được tối ưu hóa, FHE vẫn còn nặng về tài nguyên tính toán so với các hệ mật mã truyền thống. Vì vậy, tăng tốc phần cứng đang trở thành hướng nghiên cứu và phát triển chủ đạo. GPU là lựa chọn đầu tiên nhờ khả năng xử lý song song, nâng hiệu suất các phép toán đa thức và vận hành vector – trọng tâm của các hệ mã FHE. Gần đây, FPGA và chip chuyên dụng (ASIC) cũng được phát triển nhằm đạt hiệu suất tối đa.
Việc Zama ra mắt nguyên mẫu Homomorphic Processing Unit (HPU) minh chứng cho xu hướng thúc đẩy thiết bị phần cứng chuyên dụng phục vụ tính toán bảo mật. Những thiết bị này tối ưu riêng cho khối lượng công việc FHE, từ đó giảm thiểu độ trễ và tiêu thụ năng lượng. Khi các ứng dụng blockchain yêu cầu chi phí giao dịch thấp và thông lượng cao, tăng tốc phần cứng sẽ quyết định sự thương mại hóa của hợp đồng thông minh FHE.
Hàng loạt thư viện mã nguồn mở đã trở thành công cụ tiêu chuẩn cho các nhà phát triển FHE. Microsoft SEAL – một trong những thư viện phổ biến nhất – hỗ trợ BFV và CKKS, tối ưu hóa cho sự thân thiện và tương thích đa nền tảng. OpenFHE (tiền thân là PALISADE) cung cấp tập tính năng đa dạng, gồm hỗ trợ nhiều hệ mã và tối ưu hóa vượt trội. HElib của IBM tập trung vào BGV, vẫn rất có trọng lượng trong cộng đồng nghiên cứu học thuật.
Với ứng dụng dựa trên TFHE, thư viện TFHE-rs của Zama đã trở thành tiêu chuẩn tham chiếu nhờ cơ chế bootstrapping hiệu quả và khả năng tương thích với nền tảng fhEVM. Concrete – cũng của Zama – trang bị công cụ phát triển thân thiện bằng Rust, đề cao trải nghiệm lập trình viên mà không đánh đổi hiệu suất. Fhenix, tập trung cho hợp đồng bảo mật trên Ethereum, đã giới thiệu Solidity SDK giúp trừu tượng hóa kỹ thuật mật mã, cho phép lập trình viên blockchain xây dựng hợp đồng mã hóa bằng công cụ quen thuộc.
Sự phát triển mạnh mẽ của các thư viện này đã giảm hẳn rào cản tiếp cận FHE cho cộng đồng lập trình viên. Trước đây, người phát triển phải am hiểu sâu về mật mã học, nay chỉ cần thành thạo các ngôn ngữ phổ biến như Solidity hoặc Rust là có thể tiếp cận FHE dễ dàng. Sự dân chủ hóa này đang thúc đẩy nhanh chóng việc thử nghiệm và ứng dụng FHE cho tài chính phi tập trung, y tế và AI-on-chain.