Khám phá sơ bộ về mã hóa đồng cấu hoàn toàn: định nghĩa và đánh giá lịch sử của FHE

Tác giả: Steven Yue

Tôi đã tham gia khóa học CS355 (Mật mã nâng cao) tại Stanford cách đây không lâu. Chúng tôi được giảng dạy bởi ba nghiên cứu sinh tiến sĩ của Dan, Dima Kogan, Florian Tramer và Saba Eskandarian. Ba giảng viên tiến sĩ, mỗi người đều có những đặc điểm riêng và hướng nghiên cứu của họ cũng rất khác nhau. Dima tập trung vào công nghệ bảo vệ quyền riêng tư PIR (Private Information Retri), Florian tập trung vào nghiên cứu ML và blockchain, còn Saba tập trung vào bằng chứng không có kiến thức.

Khóa học CS355 bao gồm hầu hết tất cả nội dung trong lĩnh vực mật mã từ xưa đến nay. Từ hàm một chiều sớm nhất (Hàm một chiều), đến phương trình elip (ECC) và Ghép nối, và cuối cùng là một số MPC phổ biến, không có kiến thức, truy xuất thông tin cá nhân (PIR), thuật toán đồng hình hoàn toàn, v.v. trong những năm gần đây . Vì lớp học vừa kết thúc cách đây hai ngày nên tôi đã sắp xếp một loạt ghi chú trong khi nội dung kiến thức vẫn còn trong trí nhớ nông cạn của mình. Nội dung của khóa học rất thú vị, những nội dung còn lại tôi sẽ chia sẻ với các bạn sau khi có thời gian ~

Trong số này, chúng ta sẽ nói về Mã hóa hoàn toàn đồng hình (FHE) phổ biến gần đây và công nghệ Mã hóa dựa trên mạng đi kèm.

Mã hóa đồng cấu hoàn toàn là gì?

Tôi tin rằng nhiều bạn bè đã nghe đến cái tên Mã hóa hoàn toàn đồng hình (FHE). Trong những năm gần đây, ngày càng có nhiều chủ đề về bảo vệ quyền riêng tư cá nhân và hàng loạt công nghệ ứng dụng mật mã trong đó có mã hóa đồng cấu cũng được phổ biến rộng rãi.

Để hiểu rõ hơn về chủ đề này, tôi xin giới thiệu ngắn gọn định nghĩa về mã hóa đồng cấu hoàn toàn.

Đánh giá hệ thống mã hóa

Trước khi bắt đầu, hãy xem lại hệ thống mã hóa truyền thống nhất.

Chúng ta đều biết rằng nếu muốn xây dựng một hệ thống mã hóa, bạn thường cần có chìa khóa. Thông qua khóa này, chúng ta có thể mã hóa thông tin bản rõ thành bản mã ở một đầu, sau đó sử dụng khóa này để thay đổi bản mã trở lại hình dạng ban đầu ở đầu kia. Nếu không có Chìa khóa này, người khác sẽ khó biết chúng tôi đã chuyển thông tin gì.

Hình minh họa trên về cơ bản cho thấy bức tranh tổng thể của tất cả các hệ thống mã hóa phổ biến. Tất cả các hệ thống mã hóa, nếu chúng ta sử dụng một phương pháp mô tả chính thức hơn, chắc chắn sẽ thực hiện ba việc:

wFPu2NAgxAMjFDBuCMJAv8E1OA4mMINnrkCjZnq7.png Những người bạn biết điều gì đó về các thuật toán mã hóa chắc chắn sẽ biết những thuật toán phổ biến Một số các thuật toán mã hóa, chẳng hạn như AES, RSA, v.v. Mọi người cũng phải biết rằng nói chung, hệ thống mã hóa được chia thành hai loại: hệ thống mã hóa đối xứng và hệ thống mã hóa bất đối xứng. Ba bước chúng tôi mô tả ở đây thực sự có thể áp dụng cho bất kỳ hệ thống mã hóa nào. Nếu nó đối xứng thì khóa dùng để mã hóa và giải mã là như nhau. Nếu đó là một hệ thống bất đối xứng thì khóa chung được sử dụng để mã hóa và khóa riêng khác được sử dụng để giải mã.

Trong nghiên cứu mật mã, mỗi khi nhìn thấy định nghĩa của một hệ thống mới, chúng ta thường phải nêu những đặc tính mà hệ thống đó cần có.

fO7JxUOZ3Zht6WdFjAq707ujysOoGIFgg5q9MpLT.png

Ý nghĩa chính của bảo mật ngữ nghĩa là người xem không thể phân biệt giữa hai tin nhắn được mã hóa. Vì vậy, nếu kẻ xâm nhập nghe lén trên mạng và nhìn thấy thông tin được mã hóa mà tôi gửi, miễn là hệ thống mã hóa tôi sử dụng an toàn về mặt ngữ nghĩa thì tôi có thể chắc chắn rằng kẻ xâm nhập không thể lấy bất kỳ thông tin nào về nội dung được mã hóa từ văn bản mã hóa.

Sau khi thỏa mãn hai thuộc tính trên, một hệ thống mã hóa sẽ hoạt động tốt.

### Mã hóa đồng cấu: Thuộc tính đặc biệt ngẫu nhiên

Sau khi hiểu hệ thống mã hóa là gì, chúng ta có thể chú ý đến bản mã này trông giống như mã bị cắt xén được tạo ngẫu nhiên. Tất cả chúng ta đều biết rằng chúng ta sẽ không nhận được bất kỳ thông tin nào chỉ bằng cách nhìn vào bản mã. Nhưng phải chăng điều này có nghĩa là nếu không có chìa khóa và chỉ có bản mã thì chúng ta không thể làm được gì?

Tất cả chúng ta đều biết câu trả lời: không hẳn.

Fj2EndoBiFhIsValMYML9ECLXNVNvICrViCZKuXf.png

Đối với tính chất này, chúng tôi gọi nó là đồng cấu cộng tính. Điều này có nghĩa là bản mã được mã hóa duy trì mối quan hệ đại số tinh tế với văn bản gốc trước đó. Nếu cộng văn bản mã hóa, chúng ta có thể nhận được văn bản mã hóa mới được mã hóa bằng cách cộng văn bản gốc. Theo cách tương tự, có thể kết luận rằng các thuật toán mã hóa đồng cấu bổ sung cũng tồn tại. Chúng ta có thể nhân bản mã được tạo bằng thuật toán đồng cấu nhân và sau đó thu được bản mã tương ứng với kết quả của việc nhân các văn bản gốc. Trong toàn bộ quá trình, chúng ta không cần biết bất kỳ thông tin nào liên quan đến key mà chỉ cần kết hợp bản mã trông giống như đoạn mã bị cắt xén ngẫu nhiên.

Ví dụ: Hệ thống bỏ phiếu ẩn danh

Tiếp theo, hãy đưa ra một ví dụ để mô tả một cách sinh động tính thực tiễn của mã hóa đồng cấu.

Tất cả chúng ta đều biết bỏ phiếu trực tuyến là như thế nào - nếu ông chủ của một công ty muốn bắt đầu một làn sóng bỏ phiếu, hãy chọn xem công ty có nên áp dụng hệ thống 996 hay không. Sau đó, sếp có thể yêu cầu CNTT thiết lập máy chủ và để nhân viên đưa ra lựa chọn của mình: bỏ phiếu 0 nghĩa là họ không muốn và bỏ phiếu 1 nghĩa là họ muốn. Sau thời gian bình chọn cuối cùng, ông chủ có thể cộng tất cả các phiếu bầu. Nếu tổng số phiếu bầu cuối cùng vượt quá một nửa số nhân viên, công ty sẽ bắt đầu 996.

Cơ chế bỏ phiếu này tưởng chừng rất đơn giản nhưng lại có một vấn đề lớn về quyền riêng tư: nếu sếp muốn tất cả nhân viên đều là 996 nhưng chỉ cố tình khởi xướng việc bỏ phiếu này để câu cá xem nhân viên nào không muốn làm thêm giờ thì sếp Anh ta có thể lặng lẽ giao cho em trai mình nghe lén Internet, ghi lại những lựa chọn mà mỗi nhân viên đưa ra, và cuối cùng xem ai đã bỏ phiếu 0. Kết quả là nhân viên rất sợ hãi và không dám bày tỏ cảm xúc của mình.

Nếu chúng ta có thể sử dụng thuật toán mã hóa đồng cấu bổ sung thì vấn đề này có thể được giải quyết dễ dàng.

YKZWhKQkSoD8PE9zPwyFyhseiVBmcCydmrgxR3KV.png

Tất nhiên, hệ thống này vẫn còn rất chưa hoàn thiện, ví dụ như bộ phận CNTT có thể trực tiếp giúp sếp giải mã phiếu bầu của mọi người và ghi thành văn bản. Có những công cụ mật mã khác có thể giúp chúng ta giải quyết vấn đề này. Vì lý do không gian, sẽ không có lời giải thích nào thêm ở đây.

Nhưng tại thời điểm này, chúng ta có thể cảm nhận được sức mạnh của thuật toán mã hóa đồng hình. Chúng ta có thể hiểu theo cách này: thông qua thuật toán mã hóa đồng cấu, người dùng có thể thực hiện một số loại tính toán proxy an toàn (Tính toán được ủy quyền an toàn) với một máy chủ từ xa không đáng tin cậy (đám mây). Người dùng có thể sử dụng công nghệ mã hóa đồng cấu để mã hóa đầu vào riêng tư nhạy cảm của họ và giao nó cho đám mây. Sau đó, đám mây có thể thực hiện một mức độ tính toán nhất định đối với dữ liệu được mã hóa và cuối cùng nhận được kết quả được mã hóa mà người dùng muốn và trả lại cho người dùng. cloud.người dùng. Cuối cùng, người dùng có thể sử dụng khóa giải mã để mở kết quả. Trong toàn bộ thỏa thuận, bên được ủy quyền (đám mây) không bao giờ có thể xem bất kỳ thông tin hữu ích nào liên quan đến đầu vào riêng tư.

### Phân loại hệ thống mã hóa đồng cấu

Sau khi hiểu đại khái về hai tính chất đồng cấu cơ bản nhất, các khái niệm khác trở nên rất dễ hiểu. Từ góc độ hệ thống, các hệ thống mã hóa đồng cấu được chia thành bốn loại: đồng cấu một phần, đồng cấu gần đúng, đồng cấu toàn bộ chuỗi hữu hạn và đồng cấu hoàn toàn.

Tiếp theo, chúng ta hãy lần lượt xem xét các định nghĩa cụ thể của từng loại.

Mã hóa đồng cấu một phần

Giai đoạn cơ bản nhất của mã hóa đồng cấu được gọi là mã hóa đồng cấu một phần, được định nghĩa là bản mã chỉ có một đặc điểm đồng cấu. Giai đoạn này bao gồm hai chế độ đồng cấu cộng và đồng cấu nhân mà chúng tôi đã mô tả ở trên.

p7lpcrDyd7aW65Y7Ml4fsEonTmdU1YXBOeMxArVm.png

UgXzAmhq1SIpMnSeB547iLTlcb9DPX1Hg6tyyVoS.png

ShHPzmYUSKbxX6nQLOfEE2WuPQ0OrMQkmqBtn7ka.png

T6UlPMEcjBgcQOFKJNrDvhj6qHqNKmu5ol7aljpd.png

Chúng ta nhận được bản mã tương ứng với phép nhân của hai tin nhắn này! Đây là đặc tính đồng cấu nhân. Chúng ta có thể tiếp tục chồng các bản mã mới lên trên bản mã này để có thể thu được bất kỳ phép nhân nào giữa các bản mã.

Mã hóa đồng cấu gần đúng (Mã hóa tương đồng)

Như chúng tôi đã nói trong đoạn trước, nếu chúng tôi muốn nhân các đầu vào riêng tư và có được sự kết hợp tuyến tính giữa chúng, thì không thể hoàn thành thuật toán mã hóa đồng hình một phần đơn giản (RSA, ElGamal). Vì vậy chúng ta cần phải đến giai đoạn tiếp theo.

Giai đoạn tiếp theo của mã hóa đồng cấu một phần là mã hóa gần đúng đồng cấu, là một bước gần hơn tới mã hóa đồng cấu hoàn toàn mà chúng ta muốn đạt được. Nếu chúng ta có một thuật toán mã hóa gần đồng cấu thì chúng ta có thể tính toán phép cộng và phép nhân trên văn bản mã hóa cùng một lúc. Tuy nhiên, cần lưu ý rằng vì giai đoạn này gần như đồng cấu (Somewhat Homomorphic) nên số phép cộng và phép nhân có thể thực hiện được là rất hạn chế và hàm F có thể tính được cũng nằm trong một phạm vi giới hạn.

Không có nhiều ví dụ phổ biến về mã hóa gần đúng đồng cấu ở giai đoạn này. Nếu chúng ta nói ví dụ được hiểu rõ nhất thì đó phải là thuật toán mã hóa nhóm tuần hoàn dựa trên ghép nối.

Ở trên chúng tôi đã thảo luận ngắn gọn về thuật toán mã hóa ElGamal dựa trên các nhóm tuần hoàn thông thường. Tất cả chúng ta đều biết rằng thuật toán này có tính chất đồng cấu bổ sung, có nghĩa là nó có thể thu được các tổ hợp tuyến tính giữa các bản mã tùy ý. Trên thực tế, trong một số nhóm tuần hoàn đặc biệt, chúng ta cũng có thể tìm thấy một số tính chất đồng cấu nhân yếu.

gqJcO2PUzQo6WkoQd9BOEIVNPY8Tza9nEQK80OaQ.png

Giới hạn này chứng tỏ rằng hệ thống gần như đồng cấu, vì chúng ta không thể tính hàm F theo logic và độ sâu tùy ý.

Mã hóa đồng cấu được cấp độ đầy đủ

Sau khi đạt đến giai đoạn tiếp theo, chúng ta tiến một bước gần hơn đến mục tiêu đồng hình hóa hoàn toàn.

Giai đoạn này được gọi là mã hóa đồng cấu toàn bộ chuỗi hữu hạn. Ở giai đoạn này, chúng ta đã có thể thực hiện bất kỳ sự kết hợp nào của phép cộng và phép nhân trên bản mã mà không có bất kỳ giới hạn nào về số lần.

mNPmvciurNb8FEvqoCrj7eNFoEhuqDVPKjX0tz1i.png

Mã hóa hoàn toàn đồng cấu (FHE)

Sau nhiều cuộc gọi, cuối cùng nó cũng đến với mã hóa đồng hình hoàn toàn (FHE) mà chúng tôi đang chờ xem.

Đúng như tên gọi, một hệ thống mã hóa đồng cấu hoàn toàn không có hạn chế về phương pháp tính toán, chúng ta có thể tùy ý kết hợp các bản mã để tạo thành các bản mã mới mà không cần khóa và Văn bản bản mã mới, bất kể độ phức tạp tính toán, có thể được khôi phục hoàn hảo về văn bản gốc.

Khi chúng ta đạt đến giai đoạn này, việc tính toán tác nhân an toàn đã đề cập trước đó sẽ trở nên khả thi. Nếu chúng ta có thể tìm thấy một hệ thống mã hóa đồng cấu hoàn toàn hiệu quả hơn, chúng ta có thể ủy quyền tất cả các phép tính cục bộ lên đám mây một cách an toàn mà không bị rò rỉ bất kỳ dữ liệu nào!

Định nghĩa hệ thống mã hóa đồng cấu hoàn toàn

Trước khi bắt đầu thảo luận về lịch sử của các hệ thống đồng cấu hoàn toàn dưới đây, chúng ta có thể định nghĩa một cách có hệ thống định nghĩa chính thức về các hệ thống đồng cấu hoàn toàn. Một hệ thống mã hóa đồng cấu hoàn toàn có tổng cộng bốn thuật toán:

DvDXf81yZmyRQmyezLQWir7IQDX0unUyIbliRqH8.png

TsJed4GXWhn1UB5RvP6LRiWzZdkAGy0cCOB0N53f.png

0YcdqVZhD3w1iTajX3SQFxuPsCgZDebkkm08ViRK.png

R00RmzMDQTIXnncS5LGyiekR1K78zRfx9QtiY9q1.png

## Đánh giá lịch sử về mã hóa đồng cấu hoàn toàn

Trước khi bắt đầu tìm hiểu cách triển khai thuật toán mã hóa đồng cấu hoàn toàn, chúng ta cũng có thể xem xét khái niệm mã hóa đồng cấu hoàn toàn ra đời như thế nào.

Khái niệm FHE (đồng hình hoàn toàn) thực sự đã được đề xuất vào cuối những năm 1970. Năm 1978, Rivest, Adleman và Dertouzos, một số tên tuổi lớn trong lĩnh vực mật mã, lần đầu tiên đề cập đến trong bài báo On Data Banks and Privacy Homomorphisms của họ về ý tưởng về một hệ thống có thể thực hiện một số tính toán nhất định trên văn bản mã hóa và hoạt động gián tiếp trên văn bản gốc. Sau đó, ý tưởng này được tóm tắt lại và đặt tên là mã hóa đồng cấu hoàn toàn.

Có thể thấy, khái niệm mã hóa đồng cấu hoàn toàn đã được đề xuất từ rất lâu. Điều đáng ngạc nhiên là vào năm 1976, hai năm trước khi bài báo được xuất bản, giao thức trao đổi khóa Diffle-Hellman vừa được đề xuất! Điều này cho thấy trí tưởng tượng của các chuyên gia mật mã vẫn còn rất phong phú.

Khi khái niệm FHE được đề xuất, toàn bộ cộng đồng học thuật đã cảm động vì nó và bắt đầu cuộc tìm kiếm kéo dài hàng thập kỷ, cố gắng tìm ra một thuật toán hoàn hảo với các đặc tính đồng cấu hoàn toàn. Nhưng trong vài thập kỷ qua, người ta đã thử tất cả các phương án có thể tưởng tượng được, nhưng họ không thể tìm ra phương án nào thỏa mãn tất cả các điều kiện là đồng cấu hoàn toàn và tính bảo mật của nó có thể được chứng minh dễ dàng.

Cho đến năm 2009, Tiến sĩ Craig Gentry, người đang theo học tại Stanford, chợt nảy ra ý tưởng và đột phá những khó khăn của thuật toán FHE. Trong luận án tiến sĩ của mình, lần đầu tiên ông đã đưa ra một hệ thống mã hóa đồng cấu hoàn toàn hợp lý và an toàn! Hệ thống này dựa trên giả định về mạng lý tưởng. Hệ thống đồng cấu hoàn toàn do Gentry09 đề xuất thường được gọi là hệ thống mã hóa đồng cấu hoàn toàn thế hệ đầu tiên.

Trong bài viết của Gentry, ông cũng đề cập đến một khái niệm quan trọng được gọi là Bootstrapping. Bootstrapping là một kỹ thuật xử lý đặc biệt đối với bản mã, sau khi xử lý, nó có thể "làm mới" một bản mã có độ nhiễu gần với giá trị tới hạn thành một bản mã mới có độ nhiễu rất thấp. Thông qua Bootstrapping, nhiễu của hệ thống chuỗi hữu hạn không bao giờ có thể vượt quá giá trị tới hạn, do đó trở thành một hệ thống đồng cấu hoàn toàn. Bằng cách này, chúng ta có thể tính F đồng cấu với bất kỳ kích thước nào.

Sau bước đột phá lớn của Gentry, toàn bộ giới mật mã lại rơi vào tình trạng điên loạn và mọi người bắt đầu tranh giành để tìm ra một hệ thống đồng cấu hoàn toàn hiệu quả và linh hoạt hơn dựa trên những ý tưởng do Gentry đề xuất.

Vào năm 2011, hai ông lớn là Brakerski và Vaikuntanathan đã đề xuất một hệ thống mã hóa đồng cấu hoàn toàn mới, dựa trên Learning With Errors (LWE), một giả định khác về mã hóa mạng. Cùng năm đó, Brakerski, Gentry và Vaikuntanathan đã hoàn thiện hệ thống và chính thức xuất bản nó. Hệ thống đồng hình hoàn toàn mà họ phát minh ra được gọi tắt là hệ thống BGV. Hệ thống BGV là một hệ thống mã hóa đồng cấu ở mức độ giới hạn, nhưng nó có thể được chuyển thành một hệ thống đồng cấu hoàn toàn thông qua Bootstrapping. So với hệ thống do Gentry09 đề xuất, hệ thống BGV sử dụng giả định LWE thực tế hơn. Nói chung, chúng tôi gọi hệ thống BGV là hệ thống mã hóa đồng cấu hoàn toàn thế hệ thứ hai.

Năm 2013, Gentry trở lại. Gentry, Sahai và Waters đã đưa ra một hệ thống mã hóa đồng hình hoàn toàn GSW mới. Hệ thống GSW tương tự như BGV ở chỗ nó có các đặc tính đồng cấu hoàn toàn của chuỗi hữu hạn. Nó dựa trên giả định LWE đơn giản hơn và có thể đồng cấu hoàn toàn thông qua Bootstrapping. Chúng tôi thường gọi hệ thống GSW là hệ thống mã hóa đồng cấu hoàn toàn thế hệ thứ ba.

Sau năm 2013, thế giới tiền điện tử về cơ bản phát triển mạnh mẽ. Dựa trên hệ thống đồng hình hoàn toàn ba thế hệ ban đầu, nhiều thiết kế mới đã xuất hiện, dành riêng cho việc tối ưu hóa và tăng tốc hiệu quả vận hành của hệ thống BGV và GSW. IBM đã phát triển một thư viện điện toán đồng cấu hoàn toàn mã nguồn mở HElib dựa trên hệ thống BGV và đã cấy ghép thành công nó vào các nền tảng di động lớn. Đồng thời, còn có một dự án mã nguồn mở khác là TFHE cũng rất đáng chú ý. TFHE dựa trên hệ thống GSW, với nhiều tối ưu hóa và tăng tốc khác nhau được bổ sung, và hiện nay nó rất nổi tiếng.

Ngoài việc phát triển các thư viện đồng hình hoàn toàn truyền thống, nhiều nhóm cũng đang nghiên cứu cách tăng tốc tốt hơn việc tính toán các thuật toán mã hóa hoàn toàn đồng cấu thông qua phần cứng không đồng nhất như GPU, FPGA và ASIC. Ví dụ: cuFHE là một hệ thống mã hóa đồng hình hoàn toàn được tăng tốc GPU dựa trên CUDA nổi tiếng.

Theo quan điểm ngày nay, đã 11 năm kể từ khi Gentry gõ cửa hệ thống đồng cấu hoàn toàn. Ngày nay, nghiên cứu về FHE đang bùng nổ trong ngành và nhiều người đang nghiên cứu các hệ thống đồng cấu hoàn toàn từ các quan điểm và yêu cầu ứng dụng khác nhau. Cho đến ngày nay, chúng ta đã có nhiều phương pháp triển khai FHE khả thi nhưng điều mà mọi người vẫn theo đuổi là hiệu quả vận hành hệ thống FHE. Lấy thư viện FHE tiên tiến hiện tại làm ví dụ, việc tính toán đồng hình của một số logic tương đối đơn giản trên nền tảng di động có thể mất ít nhất hàng chục mili giây và nhiều nhất là hàng chục giây. Những đơn vị thời gian này cực kỳ chậm đối với hệ thống máy tính.

Làm thế nào để hệ thống FHE chạy hiệu quả hơn trên các nền tảng không đồng nhất vẫn là một bí ẩn chưa có lời giải. Nếu vấn đề này sau khi được giải quyết thì việc chuyển đổi tất cả các phép tính của máy tính sang dạng đồng hình hoàn toàn và yêu cầu các tác nhân thực hiện các phép tính trên đám mây của bên thứ ba sẽ là một tương lai dễ dàng.

##Mối quan hệ giữa FHE và MPC

Trước khi kết thúc bài viết, tôi xin có đôi lời về mối quan hệ giữa FHE và MPC. MPC là viết tắt của Secure Multi-Party Computation, là tính toán đáng tin cậy của nhiều bên. Điều này thường có nghĩa là nhiều bên có đầu vào riêng của mình và không muốn tiết lộ chúng cho người khác mà muốn sử dụng đầu vào của riêng mình để cùng nhau tính toán hàm F và chia sẻ kết quả tính toán.

MPC thực sự là một lĩnh vực rất nổi tiếng và được nghiên cứu từ lâu. Kể từ khi nhà mật mã học Yao Qizhi ra mắt Mạch bị cắt xén vào thế kỷ trước, lĩnh vực MPC đã được công nhận rộng rãi và có nhiều bước đột phá. Hiện tại chúng ta đã có nhiều thư viện MPC có thể sử dụng được và chúng cũng có hiệu quả hoạt động nhất định.

Những người bạn biết về MPC có thể có nhiều câu hỏi sau khi xem lịch sử khó khăn của các hệ thống mã hóa đồng cấu hoàn toàn: Tại sao không thể thay thế trực tiếp mã hóa đồng cấu hoàn toàn bằng giao thức MPC?

Thật vậy, giao thức MPC có thể thay thế hoàn toàn giao thức FHE. Chúng tôi chỉ cần sử dụng đầu vào của người dùng và riêng tư làm một bên trong giao thức, sau đó sử dụng máy chủ điện toán proxy từ xa làm một bên khác, đáp ứng các điều kiện để thực thi giao thức MPC. Chỉ thông qua một số tương tác nhất định, điện toán proxy mới có thể được thực hiện đã nhận ra. Và máy chủ không thể nhìn thấy dữ liệu đầu vào riêng tư.

Nhưng có một điểm rất quan trọng mà chúng ta đã bỏ qua: vì MPC có tính tương tác nên người dùng và máy chủ cần tính toán và giao tiếp với nhau để hoàn thành giao thức. Điều này mâu thuẫn với yêu cầu cơ bản nhất của tính toán tác nhân FHE. Nếu người dùng cần trực tuyến mọi lúc để hoàn thành thỏa thuận và cũng phải trả một phần sức mạnh tính toán, thì trên thực tế, việc tính toán hoàn toàn không được "ủy quyền" và cả hai bên chỉ thực hiện nhiều tính toán hơn vì mục đích bảo mật thông tin . Điều này cũng giải thích tại sao lĩnh vực MPC đã có những bước đột phá lớn nhưng lĩnh vực FHE vẫn chưa được biết đến, bởi hai hệ thống này giải quyết những vấn đề hoàn toàn khác nhau.

## Điểm dừng tiếp theo: Hệ thống mã hóa đồng cấu hoàn toàn GSW

Nhìn thấy điều này, chắc hẳn mọi người đều có sự hiểu biết rất kỹ lưỡng về hệ thống mã hóa đồng cấu hoàn toàn.

Điểm dừng tiếp theo, chúng ta có thể tìm hiểu về hệ thống mã hóa đồng cấu hoàn toàn GSW đã đề cập ở trên. Mặc dù đây là thế hệ thứ ba của các hệ thống đồng cấu hoàn toàn nhưng tôi nghĩ rằng trong số ba hệ thống Gentry09, BGV và GSW, GSW là hệ thống có ít giả định nhất, cấu trúc đơn giản nhất và dễ hiểu nhất. Và hiện nay có rất nhiều thư viện mã nguồn mở (như TFHE) được xây dựng dựa trên hệ thống GSW.

Vì lý do không gian nên chúng tôi sẽ kết thúc bài viết này tại đây. Trong bài viết tiếp theo, trước tiên chúng ta có thể tìm hiểu những kiến thức cơ bản về hệ thống GSW: hệ thống mã hóa dựa trên mạng và bài toán LWE. Một khi đã hiểu được vấn đề LWE thì vấn đề mà GSW giải quyết sẽ trở nên rất rõ ràng.

Xem bản gốc
Trang này có thể chứa nội dung của bên thứ ba, được cung cấp chỉ nhằm mục đích thông tin (không phải là tuyên bố/bảo đảm) và không được coi là sự chứng thực cho quan điểm của Gate hoặc là lời khuyên về tài chính hoặc chuyên môn. Xem Tuyên bố từ chối trách nhiệm để biết chi tiết.
  • Phần thưởng
  • Bình luận
  • Chia sẻ
Bình luận
0/400
Không có bình luận
Giao dịch tiền điện tử mọi lúc mọi nơi
qrCode
Quét để tải xuống ứng dụng Gate
Cộng đồng
Tiếng Việt
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)