Mã Hóa End-To-End (E2EE) Là Gì?
Trang chủ
Bài viết
Mã Hóa End-To-End (E2EE) Là Gì?

Mã Hóa End-To-End (E2EE) Là Gì?

Trung cấp
Đã đăng Jul 3, 2020Đã cập nhật Dec 7, 2023
9m

Giới thiệu

Ngày nay, chúng ta hiếm khi giao tiếp trực tiếp bên ngoài với đồng nghiệp của mình và điều đó tạo nên truyền thông kỹ thuật số. Thoạt nhìn, có vẻ như bạn và bạn bè của bạn đang trao đổi tin nhắn một cách riêng tư nhưng trên thực tế, tất cả tin nhắn được ghi lại và lưu trữ trong một máy chủ trung tâm.

Bạn có thể không muốn tin nhắn của mình bị đọc bởi máy chủ chịu trách nhiệm chuyển chúng giữa bạn và người nhận. Trong trường hợp đó, mã hóa end-to-end (hay mã hóa đầu cuối, viết tắt là E2EE) là giải pháp cần thiết cho bạn.

Mã hóa đầu cuối là một phương pháp mã hóa thông tin liên lạc giữa người nhận và người gửi sao cho họ là bên duy nhất có thể giải mã dữ liệu. Nguồn gốc của nó có thể bắt nguồn từ những năm 1990, khi Phil Zimmerman phát hành chương trình mã hóa Pretty Good Privacy (hay còn gọi là PGP). 

Trước khi chúng ta tìm hiểu lý do tại sao bạn lại muốn sử dụng E2EE và cách nó hoạt động, hãy xem cách hoạt động của các tin nhắn không được mã hóa.


Các tin nhắn không được mã hóa hoạt động như thế nào?

Hãy nói về cách một nền tảng nhắn tin thông thường trên điện thoại thông minh. Bạn cài đặt ứng dụng và tạo một tài khoản. Ứng dụng cho phép bạn giao tiếp với những người cũng làm tương tự như vậy. Bạn viết tin nhắn, nhập tên người dùng của bạn, sau đó đăng nó lên máy chủ trung tâm. Máy chủ biết rằng bạn đã gửi thư cho bạn bè của mình, vì vậy máy chủ sẽ chuyển thư đến đích. 


Người dùng A và B đang giao tiếp. Họ phải truyền dữ liệu qua máy chủ (S) để tin nhắn đến được với nhau.

Người dùng A và B đang giao tiếp. Họ phải truyền dữ liệu qua máy chủ (S) để tin nhắn đến được với nhau.


Đây là mô hình máy khách-máy chủ. Máy khách (điện thoại của bạn) không làm gì nhiều – thay vào đó, máy chủ đảm nhận tất cả các công việc nặng nhọc. Nhưng điều đó cũng có nghĩa là nhà cung cấp dịch vụ đóng vai trò là người trung gian giữa bạn và người nhận.

Trong hầu hết thời gian, dữ liệu giữa A <> SS <> B trong sơ đồ được mã hóa. Một ví dụ về điều này là Bảo mật lớp truyền tải (TLS), được sử dụng phổ biến để bảo mật các kết nối giữa máy khách và máy chủ.

TLS và các giải pháp bảo mật tương tự ngăn không cho bất kỳ ai chặn thư khi nó đang di chuyển từ máy khách sang máy chủ. Mặc dù các biện pháp này có thể ngăn người ngoài truy cập vào dữ liệu, nhưng máy chủ vẫn có thể đọc được. Đây là nơi kỹ thuật mã hóa cần xuất hiện. Nếu dữ liệu từ A đã được mã hóa bằng khóa mật mã thuộc về B , máy chủ không thể đọc hoặc truy cập nó. 

Nếu không có các phương thức E2EE, máy chủ có thể lưu trữ thông tin trong cơ sở dữ liệu cùng với thông tin của hàng triệu người khác. Vì vi phạm dữ liệu quy mô lớn đã xảy ra hết lần này đến lần khác, nên điều này có thể gây ra những hậu quả tai hại cho người dùng cuối.


Mã hóa end-to-end hoạt động như thế nào?

Mã hóa đầu cuối hay mã hóa end-to-end đảm bảo rằng không ai – ngay cả máy chủ kết nối bạn với người khác – có thể truy cập thông tin liên lạc của bạn. Thông tin liên lạc được đề cập có thể là bất kỳ thứ gì từ văn bản thuần túy, email đến tệp và cuộc gọi điện video. 

Dữ liệu được mã hóa trong các ứng dụng như Whatsapp, Signal hoặc Google Duo (được cho là) chỉ người gửi và người nhận mới có thể giải mã chúng. Trong cơ chế mã hóa end-to-end, bạn có thể thực hiện điều này với một quy trình gọi là trao đổi khóa (key exchange).


Trao đổi khóa Diffie-Hellman là gì?

Ý tưởng về khóa Diffie-Hellman được hình thành bởi các nhà mật mã học Whitfield Diffie, Martin Hellman và Ralph Merkle. Đó là một kỹ thuật mạnh mẽ cho phép các bên tạo ra một bí mật có thể được chia sẻ trong một môi trường thù địch tiềm tàng. 

Nói cách khác, việc tạo khóa có thể xảy ra ngay cả trên các diễn đàn không an toàn (với người xem đang theo dõi) mà không ảnh hưởng đến các thông điệp tiếp theo. Trong Thời đại Thông tin, điều này rất có giá trị vì các bên không cần phải trực tiếp hoán đổi các khóa để giao tiếp an toàn.

Bản chất của quy trình trao đổi này liên quan đến những con số và kỹ thuật mật mã. Chúng ta sẽ không đi chuyên sâu vào những điều này. Thay vào đó, chúng ta sẽ sử dụng một ví dụ về màu sơn để giải thích nó. Giả sử rằng Alice và Bob đang ở trong các phòng khách sạn riêng biệt ở hai đầu đối diện của một hành lang và họ muốn dùng chung một màu sơn cụ thể. Họ không muốn bất kỳ ai khác tìm ra nó.

Thật không may, xung quanh hành lang tràn ngập gián điệp. Giả sử rằng Alice và Bob không thể vào phòng của nhau trong ví dụ này, vì vậy họ chỉ có thể tương tác trong hành lang. Những gì họ có thể làm là đồng ý về một màu sơn chung trong hành lang – ví dụ như màu vàng. Họ lấy một hộp sơn màu vàng, phân chia và trở về phòng của họ.

Trong phòng của họ, họ sẽ trộn trong một loại sơn bí mật – một thứ mà không ai biết về nó. Alice sử dụng màu xanh lam và Bob sử dụng màu đỏ. Điều quan trọng, các điệp viên không thể nhìn thấy những màu sắc bí mật mà họ đang sử dụng. Tuy nhiên, họ sẽ thấy các hỗn hợp kết quả, vì Alice và Bob bây giờ ra khỏi phòng của họ với các hỗn hợp trộn lẫn,gồm: màu xanh-vàng và đỏ-vàng.

Họ hoán đổi các hỗn hợp này một cách công khai. Bây giờ các điệp viên có nhìn thấy chúng hay không cũng không thành vấn đề, bởi vì họ sẽ không thể xác định chính xác độ đậm nhạt của các màu được thêm vào. Hãy nhớ rằng đây chỉ là một phép loại suy – toán học thực sự làm cho hệ thống đoán “màu sắc” bí mật này trở nên khó hơn rất nhiều.

Alice lấy hỗn hợp của Bob, Bob lấy của Alice, và họ trở lại phòng của mình một lần nữa. Bây giờ, họ pha trộn màu sắc bí mật của họ trở lại.

  • Alice kết hợp màu xanh lam bí mật của mình với hỗn hợp màu đỏ-vàng của Bob, tạo ra hỗn hợp màu đỏ-vàng-xanh lam

  • Bob kết hợp các sắc thái bí mật của màu đỏ với hỗn hợp xanh lam-vàng của Alice, tạo ra hỗn hợp xanh lam-vàng-đỏ

Cả hai sự kết hợp đều có màu sắc giống nhau, vì vậy chúng phải trông giống hệt nhau. Alice và Bob đã thành công trong việc tạo ra một màu độc đáo mà kẻ thù không hề hay biết.


Cả hai sự kết hợp đều có màu sắc giống nhau, vì vậy chúng phải trông giống hệt nhau. Alice và Bob đã thành công trong việc tạo ra một màu độc đáo mà kẻ thù không hề hay biết.


Vì vậy, đây là nguyên tắc chúng ta có thể sử dụng để tạo ra một bí mật được chia sẻ công khai. Sự khác biệt là chúng ta di chuyển trong hành lang và dùng sơn, mà là qua các kênh không an toàn, sử dụng khóa công khai và khóa cá nhân.


Trao đổi tin nhắn

Khi các bên có một bí mật được chia sẻ, họ có thể sử dụng nó làm cơ sở cho một sơ đồ mã hóa đối xứng . Các thiết lập phổ biến thường kết hợp các kỹ thuật bổ sung để giúp tính bảo mật mạnh mẽ hơn, nhưng tất cả những điều này đều bị đưa ra khỏi con mắt của người dùng. Sau khi bạn kết nối với một người bạn trên ứng dụng E2EE, mã hóa và giải mã chỉ có thể xảy ra trên thiết bị của bạn (loại trừ mọi lỗ hổng từ phần mềm chính).

Không quan trọng bạn là hacker, nhà cung cấp dịch vụ hay thậm chí là cơ quan thực thi pháp luật. Nếu dịch vụ thực sự được mã hóa end-to-end, bất kỳ tin nhắn nào bạn của bạn sẽ trông giống như vô nghĩa hoặc bị cắt xén. 


➟ Bạn muốn bắt đầu cùng tiền mã hoá? Mua Bitcoin trên Binance ngay hôm nay!


Ưu và nhược điểm của mã hóa end-to-end

Nhược điểm của mã hóa mã hóa end-to-end

Chỉ có một nhược điểm đối với mã hóa end-to-end – nhưng việc xem nó là nhược điểm hay không hoàn toàn phụ thuộc vào quan điểm của bạn. Đối với một số người, những giá trị mà E2EE mang lại là có vấn đề, vì không ai có thể truy cập tin nhắn của bạn mà không có khóa tương ứng.

Những người phản đối cho rằng bọn tội phạm có thể sử dụng E2EE như một cách trao đổi an toàn khi biết rằng chính phủ và các công ty công nghệ không thể giải mã thông tin liên lạc của họ. Một số người cho rằng các cá nhân tuân thủ pháp luật không cần thiết phải giữ bí mật các tin nhắn và cuộc điện thoại của họ. Đây là quan điểm được lặp lại bởi nhiều chính trị gia, những người ủng hộ đạo luật tạo ra "cửa sau" cho các hệ thống để cho phép họ truy cập vào thông tin liên lạc của người dân. Tất nhiên, điều này đi ngược lại hoàn toàn với mục đích của mã hóa end-to-end.

Cần lưu ý rằng các ứng dụng sử dụng E2EE không an toàn 100%. Tin nhắn bị xáo trộn khi được chuyển tiếp từ thiết bị này sang thiết bị khác, nhưng chúng vẫn hiển thị đầy đủ ở các điểm cuối – tức là máy tính xách tay hoặc điện thoại thông minh ở mỗi đầu. Đây không phải là một nhược điểm của mã hóa end-to-end, nhưng bạn cũng cần lưu ý.

Thông báo có thể nhìn thấy ở dạng rõ ràng trước và sau khi giải mã.

Thông báo có thể nhìn thấy ở dạng rõ ràng trước và sau khi giải mã.


E2EE đảm bảo rằng không ai có thể đọc dữ liệu của bạn khi dữ liệu đang được truyền đi. Nhưng các mối đe dọa khác vẫn tồn tại:

  • Thiết bị của bạn có thể bị đánh cắp: nếu bạn không có mã PIN hoặc nếu kẻ tấn có nó, chúng có thể truy cập vào tin nhắn của bạn.

  • Thiết bị của bạn có thể bị xâm phạm: máy của bạn bị phần mềm độc hại theo dõi thông tin trước và sau khi bạn gửi thông điệp.

Một rủi ro khác là ai đó có thể xen vào giữa bạn và đồng nghiệp của bạn bằng cách thực hiện một cuộc tấn công trung gian. Điều này sẽ xảy ra khi bắt đầu cuộc giao tiếp – nếu bạn đang thực hiện trao đổi khóa, bạn không biết chắc chắn rằng người trao đổi là bạn của mình. Bạn có thể vô tình thiết lập một bí mật với kẻ tấn công. Sau đó, kẻ tấn công nhận được tin nhắn của bạn và chúng có chìa khóa để giải mã tin nhắn. Họ có thể lừa bạn của bạn theo cách tương tự, nghĩa là họ có thể chuyển tiếp tin nhắn và đọc hoặc sửa đổi chúng khi họ thấy cần thiết.

Để giải quyết vấn đề này, nhiều ứng dụng đã tích hợp thêm một số tính năng mã bảo mật. Ví dụ như sử dungh một chuỗi số hoặc mã QR để bạn có thể chia sẻ với các liên hệ của mình qua một kênh bảo mật (lý tưởng là ngoại tuyến). Nếu các con số khớp nhau, bạn có thể chắc chắn rằng không có bên thứ ba theo đang dõi thông tin liên lạc của bạn.


Ưu điểm của mã hóa mã hóa end-to-end

Trong một thiết lập không có bất kỳ lỗ hổng nào như đã đề cập, không thể phủ nhận E2EE là một phương thức giúp tăng tính bảo mật và an ninh. Giống như định tuyến kiểu củ hành, một công nghệ được truyền bá bởi các nhà hoạt động bảo vệ quyền riêng tư trên toàn thế giới. Nó cũng dễ dàng kết hợp vào các ứng dụng mà chúng ta đã quen thuộc, có nghĩa là bất kỳ ai có khả năng sử dụng điện thoại di động đều có thể sử dụng công nghệ này.

Việc nhìn nhận E2EE là một cơ chế chỉ hữu ích cho tội phạm và người bị tố giác là một sai lầm. Ngay cả những công ty có vẻ an toàn nhất cũng đã được chứng minh là rất dễ bị tấn công mạng, làm lộ thông tin không được mã hóa của người dùng cho các bên độc hại. Quyền truy cập vào dữ liệu người dùng như thông tin liên lạc nhạy cảm hoặc tài liệu nhận dạng có thể gây tác động nghiêm trọng đến cuộc sống của cá nhân người dùng. 

Nếu một công ty ứng dụng mã hóa E2EE bị xâm phạm, tin tặc không thể trích xuất bất kỳ thông tin có ý nghĩa nào về nội dung tin nhắn hay thông điệp (nếu việc triển khai mã hóa được thực hiện nghiêm túc). Trong trường hợp tốt nhất, họ có thể nhận được siêu dữ liệu (metadata). Điều này vẫn còn liên quan đến quan điểm bảo mật, nhưng đó là một cải tiến về quyền truy cập vào tin nhắn được mã hóa.


Tổng kết

Ngoài các ứng dụng đã đề cập trước đó, ngày càng có nhiều công cụ E2EE miễn phí có sẵn. Các ứng dụng như IMessage của Apple và Duo của Google trên các hệ điều hành như iOS và Android, và nhiều phần mềm đề cao quyền riêng tư và bảo mật khác tiếp tục được tung ra.

Thực tế, mã hóa end-to-end không phải là một rào cản kỳ diệu chống lại tất cả các hình thức tấn công mạng. Tuy nhiên, nó là một giải pháp tuyệt vời để bạn có thể giảm thiểu rủi ro trực tuyến. Cùng với Tor, VPN và tiền mã hóa, mã hóa E2EE có thể xem là một bổ sung có vào kho vũ khí bảo mật kỹ thuật số của bạn.