Ứng dụng Android

APK có chữ ký đã đủ để tin cậy chưa?

Cập nhậtBiên tập kiểm tra

Chưa. Dòng báo cáo signed=true chỉ cho biết tệp có chữ ký số; nó chưa cho biết chữ ký đó thuộc đúng nhà phát hành mà bạn đang kỳ vọng. APK bắt buộc phải được ký số trước khi cài đặt hoặc cập nhật, còn chứng thư ký dùng để nhận diện khóa ký, không phải lời chứng nhận rằng ứng dụng an toàn hay đáng tin về mặt thương mại. Android Developers giải thích về việc ký ứng dụng.

Vì sao “đã ký” chưa trả lời được câu hỏi quan trọng?

Ví dụ giả định: báo cáo cho APK “Ứng dụng A” ghi signed=true, nhưng không nêu dấu vân tay chứng thư và cũng không đối chiếu với chứng thư tham chiếu lấy độc lập từ nguồn mà bạn tin cậy. Kết quả đó chỉ cho thấy có một khóa đã ký tệp. Nó không chứng minh khóa ấy thuộc nhà phát hành quen thuộc, cũng không chứng minh tệp không bị đổi sang một bản sao do bên khác ký.

Ngược lại, ví dụ giả định “Ứng dụng B” có dấu vân tay chứng thư trùng với chứng thư tham chiếu được thu thập độc lập. So sánh này chỉ hỗ trợ kết luận hẹp: hai bên đang dùng cùng dấu hiệu của khóa ký trong phép đối chiếu cụ thể đó. Nếu chứng thư tham chiếu sai nguồn, cũ, hoặc không đúng kênh phát hành, kết luận cũng không tự động mở rộng hơn.

Chứng thư và mã băm APK không phải một thứ

Dấu vân tay chứng thư là mã nhận diện đối tượng dùng để ký. Mã băm APK là mã nhận diện nội dung của tệp APK. Vì vậy, hai tệp có thể cùng được ký bởi một chứng thư nhưng có mã băm khác nhau; ngược lại, chỉ nhìn mã băm không cho biết ai đã ký tệp.

Thông tinTrả lời đượcKhông tự trả lời được
Chứng thư AKhóa ký nào được nhận diệnỨng dụng hoạt động tốt hay an toàn
Mã băm tệp BNội dung tệp có khớp mẫu B khôngChủ sở hữu khóa ký là ai

Giới hạn của kết luận

Kể cả khi chữ ký khớp chứng thư tham chiếu, điều đó không chứng minh hành vi bên trong ứng dụng, chính sách cấp phép, chất lượng dịch vụ hay độ tin cậy thương mại. Khi đọc một báo cáo, hãy tách riêng ba câu hỏi: tệp có chữ ký không, chữ ký có khớp tham chiếu không, và mã băm có khớp đúng tệp cần đối chiếu không. Nếu báo cáo chỉ trả lời câu đầu, đừng diễn giải nó thành bằng chứng toàn diện.

Lưu ý khi đọc:Bài viết chỉ nhằm cung cấp thông tin, giải thích quy tắc và nhắc nhở rủi ro. Nội dung không cung cấp tài khoản, xử lý thanh toán, dịch vụ cá cược hoặc bảo đảm kết quả. Người trưởng thành cần tuân thủ quy định tại nơi sinh sống.
Telegram