Fully Homomorphic Encryption (FHE) là gì? Có ý nghĩa như thế nào với công nghệ blockchain?


1. Overview

Homomorphic encryption là một phương thức mã hóa cho phép thao tác các hàm toán học trên dữ liệu đã được mã hóa thay vì dữ liệu gốc ở dạng rõ (plain text). Kết quả cuối cùng sau khi được giải mã sẽ tương đương với kết quả thu được như khi thao tác trên dữ liệu gốc chưa được mã hóa.
Hình vẽ dưới đây sẽ cho bạn một hình dung tốt hơn về cách mà homomorphic encryption hoạt động.
Quá trình bắt đầu với một mẩu dữ liệu ở dạng rõ, gọi là m. m có thể là tên của ai đó, ví dụ như "Nguyen Van A". Mục tiêu là thực hiện hàm f lên m, ví dụ chuyển m thành chữ hoa (kết quả là "NGUYEN VAN A"). Sẽ không có gì đáng nói nếu chúng ta chỉ việc dùng hàm f lên m. Tuy nhiên vì lý do bảo mật, chúng ta không muốn cho bên thứ ba biết dạng rõ m. Thay vào đó, người ta mã hóa m bằng khóa k (hoặc cặp khóa k,v). Kết quả m được mã hóa từ "Nguyen Van A" thành 1928292 (ví dụ). Tiếp tục sử dụng một phiên bản homomorphic encryption của f, f(x) = x + 127 (ví dụ), thu được 1928292 + 127 = 1928419. Dữ liệu thu được này ở dạng mã hóa. Tiếp tục sử dụng khóa k để giải mã thu được kết quả cuối cùng là "NGUYEN VAN A".
Có ba loại mã hóa đồng cấu chính. Sự khác biệt chính giữa chúng nắm rõ các loại và tần suất của các phép toán có thể được thực hiện trên bản mã của chúng. Ba loại mã hóa đồng cấu bao gồm:
  • Mã hóa một phần (Partially Homomorphic Encryption)
  • Một số mã hóa tương đồng (Somewhat Homomorphic Encryption)
  • Mã hóa hoàn toàn tương đồng (Fully Homomorphic Encryption)
Mã hóa đồng hình (Homomorphic encryption) đã được giới thiệu từ những năm 1970. Mã hóa hoàn toàn đồng hình được giới thiệu lần đầu bởi Craig Gentry vào năm 2009 (cũng là năm Bitcoin ra đời). 

2. FHE và Blockchain

Chúng ta đều biết các giao dịch (transaction) trên Bitcoin là không ẩn danh. Bất cứ ai cũng có thể xem thông tin về số lượng, địa chỉ gửi, địa chỉ nhận của các giao dịch này. Một số blockchain khác ra đời để giải quyết vấn đề này, ví dụ: Monero, ZCash, ZCoin... Blockchain nổi tiếng chỉ sau bitcoin là Ethereum cũng cố gắng giải quyết vấn đề privacy bằng các công nghệ của zcash nhưng do đặc tính trong suốt cố hữu của ethereum mà kết quả vẫn chữa được sử dụng rộng rãi. Mục tiêu cuối cùng là cung cấp cho người sử dụng một nền tảng cho phép thực hiện các hợp đồng thông minh hoàn toàn ẩn danh (private smart contract). JP Morgan Chase mới đây đã giới thiệu một công nghệ hoàn toàn mới dựa trên homomorphic encryption để thực hiện điều này. Các bạn quan tâm có thể tham khảo tại đường dẫn: https://github.com/jpmorganchase/anonymous-zether

Tuy nhiên, đây cũng chỉ là các giải pháp ở layer 2, dẫn đến hạn chế về tốc độ cũng như lo ngại về tính bảo mật. Một dự án blockchain mà tôi rất quan tâm là Dero, đang giải quyết các vấn đề trên ở layer 1. Kết quả nếu đúng như những gì được giới thiệu là rất đáng quan tâm. Tôi sẽ có một bài viết chi tiết về dự án này sau.

nguồn: brilliant.org

Nhận xét

Bài đăng phổ biến từ blog này

Derod memory consumption bug lead to DoS

Giới thiệu về Dero blockchain - Fully Privacy Smart Contract