- Từ tháng 4/2026, thiết bị chưa được xác minh sẽ không thể gửi hoặc nhận tin nhắn mã hóa đầu cuối (E2EE) trên Element
- Thay đổi này đến từ bản cập nhật đặc tả Matrix, nhằm tăng cường bảo mật hội thoại cho mọi người dùng
- Xác minh thiết bị là quy trình chứng minh bằng mật mã rằng mỗi thiết bị thực sự thuộc sở hữu của chính người dùng, qua đó loại bỏ việc hiển thị tin nhắn không đáng tin cậy
- Trong tương lai, chỉ các thiết bị đã được xác minh mới có thể tham gia hội thoại, và biểu tượng cảnh báo hoặc khiên sẽ biến mất
- Đây là một bước then chốt để xây dựng môi trường liên lạc an toàn dựa trên sự tin cậy
Tổng quan bản cập nhật bảo mật
- Từ tháng 4/2026, Element sẽ chặn các thiết bị chưa được xác minh gửi và nhận tin nhắn mã hóa đầu cuối
- Đây là biện pháp theo bản cập nhật đặc tả Matrix được công bố tại hội nghị Matrix tháng 10/2025
- Người dùng cần hoàn tất xác minh thiết bị để tiếp tục gửi và nhận tin nhắn mã hóa trên các thiết bị hiện có
- Mục tiêu của bản cập nhật này là bảo đảm rằng tin nhắn thực sự đến từ đúng người gửi dự kiến
- Thông qua đó, Element hướng tới việc cung cấp công nghệ liên lạc an toàn nhất
Rủi ro của thiết bị chưa được xác minh
- Thiết bị chưa được xác minh có thể trở thành vector tấn công
- Ví dụ, khi biểu tượng cảnh báo xuất hiện trong cuộc trò chuyện, đó có thể chỉ là một thiết bị chưa được xác minh, nhưng cũng có thể là một nỗ lực chiếm đoạt tài khoản
- Nếu bỏ qua những cảnh báo này, rủi ro bảo mật có thể lan rộng trên toàn mạng lưới
- Element cung cấp mã hóa đầu cuối theo mặc định cho mọi người dùng, và thông qua việc bắt buộc xác minh, họ muốn loại bỏ sự bất định và khả năng xảy ra hoạt động độc hại
Vai trò của xác minh thiết bị
- Xác minh thiết bị là một “cái bắt tay (handshake)” bằng mật mã giữa các thiết bị, dùng để chứng minh rằng thiết bị đó thực sự thuộc sở hữu của người dùng
- Tin nhắn được gửi từ thiết bị mới chưa được xác minh sẽ bị hiển thị là tin nhắn không đáng tin cậy
- Khi xác minh trở thành bắt buộc, người dùng có thể yên tâm rằng mọi tin nhắn đều ở trạng thái đáng tin cậy
Niềm tin như một thiết kế mặc định
- Trong tương lai, thiết bị sẽ chỉ được phân thành một trong hai trạng thái: “đã xác minh” hoặc “không thể tham gia hội thoại”
- Biểu tượng cảnh báo hay khiên sẽ აღარ được hiển thị nữa
- Điều này nhằm ngăn người dùng trở nên chai lì với cảnh báo
- Xác minh thiết bị không chỉ bảo vệ cá nhân mà còn góp phần củng cố môi trường tin cậy của toàn bộ mạng lưới
- Element đang thúc đẩy thiết kế hệ thống đặt bảo mật lên hàng đầu, và quy trình xác minh là một thành phần cốt lõi của định hướng đó
Người dùng cần làm gì
- Người dùng đã xác minh thiết bị và thiết lập khóa khôi phục (recovery key) thì không cần thực hiện thêm bước nào
- Nếu chưa, cần thực hiện các bước sau
- Kiểm tra trạng thái xác minh của tất cả thiết bị, bao gồm di động, web và máy tính để bàn
- Thiết lập tính năng khôi phục (không bắt buộc nhưng được khuyến nghị mạnh mẽ)
- Tính năng khôi phục giúp đơn giản hóa việc xác minh thiết bị mới, đồng thời cho phép khôi phục xác minh ngay cả khi mất tất cả thiết bị
- Quy trình cụ thể theo từng nền tảng có thể được xem trong tài liệu người dùng của Element
Hạn chế nếu không xác minh
- Sau tháng 4/2026, các thiết bị chưa được xác minh sẽ bị áp dụng các hạn chế sau
- Không thể gửi tin nhắn
- Không thể hiển thị nội dung của tin nhắn nhận được (chỉ có thể biết rằng tin nhắn đã đến)
- Kết quả là thiết bị chưa được xác minh không thể dùng trong các cuộc trò chuyện E2EE
- Tuy nhiên, vẫn có thể tham gia các cuộc trò chuyện đã tắt mã hóa
Xây dựng niềm tin và hỗ trợ
- Element nhấn mạnh rằng thiết lập niềm tin thông qua xác minh thiết bị là cốt lõi của liên lạc an toàn
- Thay đổi này tuy nhỏ nhưng được đánh giá là biện pháp nâng cao đáng kể mức độ bảo mật
- Mục tiêu là cùng người dùng đưa mọi tin nhắn đạt tới mức độ đáng tin cậy tương đương hội thoại trực tiếp
- Trong quá trình chuyển đổi, đội ngũ hỗ trợ sẽ phản hồi thắc mắc của người dùng và hỗ trợ áp dụng suôn sẻ
1 bình luận
Ý kiến trên Hacker News
3 tháng trước tôi đã đóng máy chủ và chuyển cộng đồng trở lại IRC
Tôi vẫn còn container Podman chạy IRC nên quay lại rất dễ
Hàng tháng đều phải vật lộn với lỗi xác minh thiết bị, không giải mã được tin nhắn, vấn đề UX, v.v.
Thời kỳ đầu phát triển rất nhanh, nhưng vài năm gần đây hầu như không có cải thiện UX nào nên khá đáng tiếc
Giờ thì ngay cả mối quan hệ giữa Matrix và Element cũng trở nên khó hiểu
Có vẻ như đội ngũ phát triển chẳng mấy quan tâm, còn “policy server” được đề xuất thì vẫn ở trạng thái chưa hoàn thiện
phòng thì trống không hoặc việc gửi bị treo, nên chưa một lần nào tôi thực sự gửi nhận tin nhắn thành công
Họ quá ám ảnh với khái niệm “cơ sở dữ liệu JSON phi tập trung”
đến mức dường như bỏ quên tính khả dụng như một hệ thống chat
Tôi vẫn đang dùng nó, nhưng để thu hút người dùng phổ thông thì vẫn còn rất xa
Nếu muốn nâng cấp một cộng đồng dựa trên IRC thì tôi nghĩ Jabber(XMPP) là phương án thay thế thực tế hơn
Tôi đã thử với bạn bè, nhưng vì UX thô ráp nên bất tiện hơn các messenger khác
Và khi hỗ trợ bridge IRC bị ngừng thì cũng không còn lý do gì để dùng nữa
Vài tháng trước, các thiết bị của tôi bị hủy xác minh một cách ngẫu nhiên, và dù tôi đăng nhập bằng khóa khôi phục thì vẫn không được xác minh
Việc xác minh chéo giữa iOS, Linux, Windows và Android hoàn toàn không khớp
Quy trình xác minh bắt buộc như thế này thực chất là ép người dùng rời bỏ
Nếu có một phương thức xác minh đang gặp vấn đề thì đáng ra phải thông báo bằng bài blog
Tôi thích Element, nhưng những chuyện như thế này cần được chuẩn bị trước
Có lúc tưởng như thành công rồi lại bị đăng xuất ngay, và popup xác minh thiết bị cũ cứ tiếp tục hiện lên
Tôi lo rằng cuối cùng mình sẽ mất toàn bộ profile
Có lúc cứ mỗi lần mở ra là lại phải dành 30 phút để xử lý sự cố
Ý tưởng thì hay nhưng tỷ lệ công sức bỏ ra so với giá trị nhận được quá thấp
Điều này còn ảnh hưởng xấu tới việc giao tiếp trong các dự án OSS
Tôi dùng khá nặng nhưng chưa từng gặp mấy vấn đề như vậy
Vài tháng trước tôi đã thử triển khai một bot Matrix, nhưng các SDK mã nguồn mở cho Python
hoàn toàn không hỗ trợ E2EE và xác minh thiết bị, nên trải nghiệm cực kỳ tệ
Thay vào đó tôi phát hiện ra Rust SDK nội bộ (matrix-rust-sdk) và thấy nó khá ổn
Cũng có binding FFI cho Python/Kotlin, nhưng tài liệu còn thiếu
Tôi phải dựa vào LLM và mã nguồn mới miễn cưỡng chạy được, và còn xác minh emoji thành công
Hiện giờ tài liệu đã được cải thiện nhiều, và cũng có cả client tham khảo
Tôi đã đọc một bài viết chỉ trích Matrix trên Reddit,
nói rằng vì dữ liệu được lưu trữ vĩnh viễn và sao chép trùng lặp nên hiệu năng và quyền riêng tư đều kém
Signal thì bảo vệ cả metadata, nhưng Matrix lại làm lộ tên phòng, người tham gia, thời gian, v.v.
Tôi muốn biết điều này có đúng không, và liệu đây có phải là một giao thức còn tương lai hay không
Hiện tại mức độ bảo vệ metadata thấp hơn Signal, nhưng đang được cải thiện
Matrix có mô hình đe dọa khác, và bạn có thể tự chọn phạm vi tin cậy
Nếu vận hành bằng máy chủ nhỏ thì lượng dữ liệu lộ ra còn ít hơn Signal
Nó chưa hoàn hảo, nhưng tôi đánh giá tích cực về tốc độ phát triển và định hướng của nó
Đây là một yêu cầu riêng tư rất cơ bản, vậy mà việc triển khai lại chậm
Vấn đề giải mã tin nhắn vẫn còn tồn tại
Dù vậy, trong các hệ thống mở thì tôi vẫn nghĩ đây là lựa chọn tốt nhất
dễ bị tấn công giả mạo SIM
Thiết kế mô-đun và phi tập trung vừa là ưu điểm vừa là rào cản gia nhập
Nhờ cấu trúc đơn giản mà Signal có độ hoàn thiện cao ở các tính năng cốt lõi
Rốt cuộc đây vẫn là một nền tảng đặt trên giả định có máy chủ đáng tin cậy
Bất chấp những lời phàn nàn trong thread này,
tôi vẫn nghĩ việc ngăn đăng nhập ở trạng thái chưa xác minh rồi gửi nhận tin nhắn mã hóa là hợp lý
Tôi đã dùng Matrix suốt 6 năm, và quy trình xác minh giờ đây đã khá mượt
Khi hoàn thiện cả đăng nhập bằng QR code thì mọi thứ sẽ còn dễ hơn nhiều
Các quyết định chi tiết có thể hợp lý, nhưng xét tổng thể thì thiếu giao tiếp và
thiếu tài liệu khiến mọi thứ trở nên rối rắm
Người dùng thường xuyên thì ổn, nhưng người dùng thỉnh thoảng lại phải chơi trò khôi phục mỗi lần dùng
Nó cho phép giải mã các tin nhắn có từ trước khi đăng nhập
Vấn đề là UX đã cho phép bỏ qua bước xác minh
Đáng ra bài blog phải định nghĩa thật rõ xác minh là gì
Với câu hỏi “xác minh là gì?”
khi đăng nhập trên thiết bị mới, bạn sẽ thực hiện chứng minh danh tính mật mã bằng thiết bị hiện có
Nó được thực hiện bằng một trong các cách: so sánh emoji, quét QR code, hoặc nhập khóa khôi phục
Phần lớn đều nhanh và đơn giản, nhưng một số client có bug
Chỉ đơn giản là quá trình phê duyệt thiết bị mới bằng thiết bị hiện có
Trong số các messenger mã hóa mà tôi từng dùng, đây là cách xác minh dễ nhất
nếu emoji hiển thị trên hai thiết bị giống nhau thì sẽ được chấp thuận
Khi đăng nhập trên thiết bị mới, bạn chỉ cần phê duyệt từ thiết bị hiện có
Tôi dùng Thunderbird làm client Matrix, nhưng
khi mở Element hay Nheko thì chúng lại cảnh báo nhau là chưa được xác minh
Tôi bấm nút xác minh mà chẳng có phản hồi gì, QR code cũng không hiện ra
UX của Matrix thực sự ở mức ác mộng
Cập nhật lại chậm nên tôi đã ngừng dùng
Không thấy có dấu hiệu nào cho thấy nó sẽ được cải thiện
Tôi đã thử một client alpha nhưng popup xác minh không biến mất
Có client thậm chí còn chưa triển khai cả luồng xác minh,
nên có vẻ rào cản để client mới tham gia sẽ còn cao hơn
Client thường xuyên crash, và độ trễ đồng bộ cũng rất nghiêm trọng
Vì những lý do này, tôi nghĩ XMPP là lựa chọn chat phi tập trung tốt hơn Matrix
XMPP xử lý lỗi một cách gọn gàng, và cũng không có vấn đề đồng bộ thời gian thực
Nếu muốn thuyết phục đồng nghiệp ở chỗ làm thì cần UI tốt hơn
Tuy nhiên XMPP không có Cross Signing hay sao lưu khóa,
nên về mặt tiện lợi thì vẫn chưa bằng Matrix
Element thì nặng, còn các client khác thì lệch nhau quá nhiều về tính năng
Thay vào đó tôi đã thử lại XMPP với máy chủ Prosody,
tài liệu có hơi khó tiếp cận nhưng hiệu quả tài nguyên thì đáng kinh ngạc
Việc máy chủ XMPP chạy tốt ngay cả trên cấu hình thấp thật sự rất ấn tượng
Phía client thì hơi thất vọng, nhưng
tôi nghĩ tài liệu vẫn còn nhiều dư địa để cải thiện
Cuối cùng thì tôi vẫn mong hệ sinh thái messenger tự do và mã nguồn mở sẽ phát triển mạnh
Các video Matrix Conference mới nhất đã được đăng lên media.ccc.de
Có rất nhiều nội dung thú vị,
và ngay cả khi không tự vận hành máy chủ, bạn vẫn có thể dùng hosting trả phí như etke.cc
Tôi rất thích Matrix/Element
Tôi đang vận hành nhiều không gian cho devroom của FOSDEM,
và ngay cả gọi video cũng hoạt động hoàn hảo
Chỉ là tôi mong sẽ có thêm nhiều tính năng hơn nữa