Các Security Controls phần trong phần tổng quan In-app Billing chỉ thị để thực hiện một "xác minh chữ ký" tại một máy chủ từ xa hơn là trong ứng dụng (chạy cục bộ trên thiết bị Android):Tại sao xác minh chữ ký trên máy chủ từ xa an toàn hơn trên thiết bị?
Bằng cách thực hiện xác minh chữ ký bạn có thể giúp phát hiện phản hồi đã bị giả mạo hoặc đã bị giả mạo. Bạn có thể thực hiện bước xác minh chữ ký này trong đơn đăng ký của mình; tuy nhiên, nếu ứng dụng của bạn kết nối với máy chủ từ xa an toàn thì chúng tôi khuyên bạn thực hiện xác minh chữ ký trên máy chủ đó.
Nhưng nếu tôi thực hiện việc xác minh chữ ký trên máy chủ từ xa, mong chỉ một yes/no
hoặc true/false
câu trả lời, không phải là điều này thực sự dễ dàng hơn để đánh chặn và sửa đổi bởi một kẻ tấn công?
Và nếu câu trả lời từ máy chủ từ xa là chữ ký khác thì cách xác minh chữ ký thứ hai cục bộ trên thiết bị an toàn hơn làm chữ ký đầu tiên (Market)?
Tôi đang thiếu gì?
Cập nhật: @alf lưu ý chính xác rằng nếu máy chủ cũng chịu trách nhiệm cung cấp nội dung đã mua và xác minh chữ ký được thực hiện trên máy chủ, ngay cả khi kẻ tấn công xâm phạm ứng dụng, máy chủ sẽ không phân phối nội dung đã mua thông qua thanh toán trong ứng dụng. Điều này là tầm thường và được hiểu rõ.
Những gì tôi không đề cập ban đầu là tôi đang thực sự đề cập đến một kịch bản trong đó máy chủ không mang lại bất kỳ nội dung mà chỉ xác nhận chữ ký, do đó ứng dụng có thể quyết định có nên mở khóa một số tính năng . Trong trường hợp như vậy, lợi thế của xác minh chữ ký máy chủ từ xa qua ứng dụng trong một là gì?
Tôi cũng tự hỏi liệu kiểm tra chữ ký máy chủ có thực sự cần thiết khi triển khai thanh toán trong ứng dụng chỉ để mở khóa các tính năng hay không. Phát hiện của bạn là gì? –