Sử dụng Tính năng ký ứng dụng của Play

Với Tính năng ký ứng dụng của Play, Google quản lý và bảo vệ khóa ký cho ứng dụng của bạn và dùng khóa đó để ký các tệp APK phân phối đã được tối ưu hóa mà các gói ứng dụng của bạn tạo ra. Tính năng ký ứng dụng của Play lưu trữ khóa ký ứng dụng của bạn trên cơ sở hạ tầng bảo mật của Google và cung cấp các tùy chọn nâng cấp để tăng tính bảo mật.

Để sử dụng Tính năng ký ứng dụng của Play, bạn phải là chủ sở hữu tài khoản hoặc người dùng có quyền Phát hành phiên bản chính thức, loại trừ thiết bị, sử dụng Tính năng ký ứng dụng của Play, đồng thời, bạn phải chấp nhận Điều khoản dịch vụ của Tính năng ký ứng dụng của Play.

Cách hoạt động

Khi bạn sử dụng Tính năng ký ứng dụng của Play, khóa của bạn sẽ được lưu trữ trên chính cơ sở hạ tầng bảo mật mà chúng tôi sử dụng để lưu trữ khóa của Google. Những khóa này sẽ được Dịch vụ quản lý khóa của Google bảo vệ. Nếu bạn muốn tìm hiểu thêm về cơ sở hạ tầng của Google, hãy đọc Sách trắng về bảo mật của Google Cloud.

Mỗi ứng dụng Android được ký bằng một khóa riêng tư. Để đảm bảo rằng bản cập nhật ứng dụng là đáng tin cậy, mỗi khóa riêng tư lại liên kết với một chứng chỉ công khai mà các thiết bị và dịch vụ có thể sử dụng để xác minh rằng bản cập nhật ứng dụng đến từ cùng một nguồn. Các thiết bị chỉ chấp nhận bản cập nhật khi chữ ký của bản cập nhật khớp với chữ ký của ứng dụng đã cài đặt. Việc cho phép Google quản lý khóa ký ứng dụng của bạn sẽ giúp quá trình này diễn ra an toàn hơn.

Lưu ý: Đối với ứng dụng tạo trước tháng 8 năm 2021, bạn vẫn có thể tải tệp APK lên và quản lý khóa của mình thay vì sử dụng Tính năng ký ứng dụng của Play và phát hành bằng định dạng Android App Bundle. Tuy nhiên, nếu kho khóa bị mất hoặc bị lộ, bạn sẽ không thể cập nhật ứng dụng hiện tại mà phải phát hành ứng dụng mới có tên gói khác. Đối với những ứng dụng như vậy, bạn nên sử dụng Tính năng ký ứng dụng của Play và chuyển sang dùng gói ứng dụng.

Thông tin mô tả về khóa, cấu phần phần mềm và công cụ
Thuật ngữ Nội dung mô tả
Khóa ký ứng dụng

Khóa mà Google Play sử dụng để ký những tệp APK được phân phối tới thiết bị của người dùng. Khi sử dụng Tính năng ký ứng dụng của Play, bạn có thể tải một khóa ký ứng dụng hiện có lên hoặc yêu cầu Google tạo một khóa cho bạn.

Hãy giữ bí mật khóa ký ứng dụng, nhưng bạn có thể chia sẻ chứng chỉ công khai của ứng dụng với người khác.

Khóa tải lên

Khóa mà bạn sử dụng để ký gói ứng dụng trước khi tải lên Google Play. Hãy giữ bí mật khóa tải lên, nhưng bạn có thể chia sẻ chứng chỉ công khai của ứng dụng với người khác. Vì lý do bảo mật, khóa ký ứng dụng nên khác với khóa tải lên.

Có hai cách để tạo khóa tải lên:

  • Sử dụng khóa ký ứng dụng của bạn: Nếu Google tạo khóa ký ứng dụng cho bạn, thì khóa mà bạn sử dụng cho bản phát hành đầu tiên cũng chính là khóa tải lên của bạn.
  • Dùng một khóa tải lên riêng: Nếu cung cấp khóa ký ứng dụng riêng của mình, thì bạn có thể chọn cách tạo khóa tải lên mới để tăng khả năng bảo mật. Nếu bạn không tạo khóa mới, hãy sử dụng khóa ký ứng dụng làm khóa tải lên để ký các bản phát hành.
Chứng chỉ (.der hoặc .pem)

Chứng chỉ chứa khóa công khai và thông tin nhận dạng thêm về người sở hữu khóa. Chứng chỉ khóa công khai cho phép mọi người xác minh ai đã ký gói ứng dụng hoặc tệp APK. Bạn có thể chia sẻ chứng chỉ này với bất kỳ ai vì chứng chỉ không chứa khóa riêng tư của bạn.

Để đăng ký (các) khóa của bạn với nhà cung cấp API, bạn có thể tải chứng chỉ công khai xuống cho khóa ký ứng dụng và khóa tải lên của bạn từ trang Tính năng ký ứng dụng của Play () Phát hành > Thiết lập > Tính toàn vẹn của ứng dụng) trên Play Console. Bạn có thể chia sẻ chứng chỉ khóa công khai với bất kỳ ai. Chứng chỉ này không bao gồm khóa riêng tư của bạn.

Tệp tham chiếu chứng chỉ

Một tệp mô tả ngắn và duy nhất về chứng chỉ mà các nhà cung cấp API thường yêu cầu cùng với tên gói nhằm đăng ký một ứng dụng sử dụng dịch vụ của họ.

Bạn có thể tìm thấy vân tay số MD5, SHA-1 và SHA-256 của chứng chỉ ký ứng dụng và chứng chỉ tải lên tại trang Tính năng ký ứng dụng của Play (Phát hành > Thiết lập >) Tính toàn vẹn của ứng dụng) trong Play Console. Bạn cũng có thể chuyển đổi sang các vân tay số khác bằng cách tải chứng chỉ gốc (.der) xuống qua chính trang đó.

Kho khóa Java (.jks hoặc .keystore) Kho lưu trữ chứng chỉ bảo mật và khóa riêng tư.
Công cụ mã hóa khóa cá nhân cho Play (PEPK)

Một công cụ để xuất các khóa riêng từ kho khóa Java và mã hóa các khóa để chuyển sang Google Play.

Khi bạn cung cấp khóa ký ứng dụng cho Google sử dụng, hãy chọn phương án xuất và tải khóa của bạn lên (và chứng chỉ công khai nếu cần) và làm theo hướng dẫn để tải xuống và sử dụng công cụ. Nếu bạn thích, bạn có thể tải xuống, xem lại và sử dụng mã nguồn mở của công cụ PEPK.

Quá trình ký ứng dụng

Quá trình này sẽ diễn ra như sau:

  1. Ký gói ứng dụng của bạn rồi tải lên Play Console.
  2. Google tạo ra các tệp APK đã tối ưu hóa dựa trên gói ứng dụng của bạn và ký những tệp APK đó bằng khóa ký ứng dụng.
  3. Google sử dụng apksigner để thêm hai dấu vào tệp kê khai của ứng dụng (com.android.stamp.sourcecom.android.stamp.type), sau đó ký tệp APK bằng khóa ký ứng dụng của bạn. Dấu do apksigner thêm vào giúp bạn có thể truy xem ai đã ký những tệp APK đó.
  4. Google cung cấp tệp APK đã ký cho người dùng.

Định cấu hình Tính năng ký ứng dụng của Play

Hướng dẫn dành cho ứng dụng tạo sau tháng 8 năm 2021

Bước 1: Tạo khóa tải lên

  1. Làm theo hướng dẫn để tạo khóa tải lên.
  2. Ký gói ứng dụng bằng khóa tải lên.

Bước 2: Hoàn thiện bản phát hành

  1. Làm theo hướng dẫn để hoàn thiện và ra mắt bản phát hành.
  2. Sau khi chọn một kênh phát hành, bạn sẽ thấy trạng thái của Tính năng ký ứng dụng của Play cho ứng dụng của bạn trong phần “Tính toàn vẹn của ứng dụng”.
  3. Tiếp theo, để sử dụng khóa ký ứng dụng do Google tạo, hãy tải gói ứng dụng của bạn lên. Ngoài ra, bạn cũng có thể chọn Thay đổi khóa ký ứng dụng để dùng được những lựa chọn sau:
    • Sử dụng khóa ký ứng dụng do Google tạo: Hơn 90% ứng dụng mới sử dụng khóa ký ứng dụng do Google tạo. Việc sử dụng khóa do Google tạo sẽ giúp ngăn chặn tình trạng khóa bị mất hoặc bị xâm phạm (không thể tải khóa xuống). Với lựa chọn này, bạn có thể tải tệp APK phân phối đã ký bằng khóa do Google tạo từ Trình khám phá gói ứng dụng xuống để cung cấp cho các kênh phân phối khác hoặc sử dụng một khóa khác cho những kênh phân phối đó.
    • Sử dụng khóa ký ứng dụng khác: Việc chọn khóa ký ứng dụng cho phép bạn sử dụng chính khóa đó cho một ứng dụng khác trong tài khoản nhà phát triển của bạn hoặc lưu một bản sao của khóa ký ứng dụng trên bộ nhớ cục bộ để tăng tính linh hoạt. Ví dụ: có thể khóa cho ứng dụng của bạn đã được quyết định từ trước vì ứng dụng này được cài đặt sẵn trên một số thiết bị. Nếu bạn lưu bản sao khóa của bạn bên ngoài máy chủ của Google, việc này có thể làm tăng rủi ro trong trường hợp bản sao này bị lộ. Nếu muốn sử dụng khóa khác, bạn có nhưng lựa chọn sau:
      • Sử dụng cùng một khóa ký ứng dụng cho ứng dụng khác trong tài khoản nhà phát triển này
      • Xuất và tải khóa từ kho khóa Java lên
      • Xuất và tải khóa lên (không sử dụng kho khóa Java)
  4. Làm theo các bước hướng dẫn còn lại để chuẩn bị và ra mắt bản phát hành.

Lưu ý: Bạn cần chấp nhận Điều khoản dịch vụ và chọn sử dụng tính năng ký ứng dụng để tiếp tục các bước sau.

Bước 3: Đăng ký khóa ký ứng dụng của bạn với nhà cung cấp API

Nếu ứng dụng của bạn sử dụng API, thì để xác thực bằng vân tay số của chứng chỉ, thông thường bạn phải đăng ký khóa ký ứng dụng với nhà cung cấp API. Sau đây là cách tìm chứng chỉ:

  1. Mở Play Console rồi truy cập trang Tính năng ký ứng dụng của Play (Phát hành > Thiết lập > Tính toàn vẹn của ứng dụng).
  2. Di chuyển đến phần "Chứng chỉ khóa ký ứng dụng" rồi sao chép các vân tay số (MD5, SHA-1 và SHA-256) của chứng chỉ ký ứng dụng.
    • Nếu nhà cung cấp API yêu cầu sử dụng một loại vân tay số khác, bạn cũng có thể tải chứng chỉ gốc xuống ở định dạng .der và dùng công cụ chuyển đổi mà nhà cung cấp API yêu cầu để chuyển đổi chứng chỉ gốc.
Các yêu cầu đối với khóa ký ứng dụng

Khi bạn sử dụng khóa do Google tạo, Google sẽ tự động tạo khóa RSA 4096 bit bằng một biện pháp mã hóa mạnh. Nếu bạn chọn tải khóa ký ứng dụng của mình lên thì khóa đó phải là khóa RSA từ 1024 bit trở lên.

Hướng dẫn dành cho ứng dụng tạo trước tháng 8 năm 2021

Bước 1: Định cấu hình Tính năng ký ứng dụng của Play

  1. Mở Play Console rồi truy cập trang Tính năng ký ứng dụng của Play (Phát hành > Thiết lập > Tính toàn vẹn của ứng dụng).
  2. Xem Điều khoản dịch vụ của Tính năng ký ứng dụng của Play rồi chọn Chấp nhận (nếu bạn chưa thực hiện thao tác này).

Bước 2: Gửi bản sao khóa gốc của bạn cho Google và tạo khóa tải lên

  1. Xác định vị trí khóa ký ứng dụng gốc.
  2. Mở Play Console rồi truy cập trang Tính năng ký ứng dụng của Play (Phát hành > Thiết lập > Tính toàn vẹn của ứng dụng).
  3. Chọn phương án xuất và tải lên phù hợp nhất với quy trình phát hành của bạn rồi tải khóa ký ứng dụng hiện có lên.

Bước 3: Tạo khóa tải lên (khuyên dùng nhưng không bắt buộc)

  1. Tạo khóa tải lên và tải chứng chỉ lên Google Play.
    • Bạn cũng có thể tiếp tục sử dụng khóa ký ứng dụng làm khóa tải lên.
  2. Sao chép tệp tham chiếu (MD5, SHA-1 và SHA-256) của chứng chỉ ký ứng dụng của bạn.
    • Đối với mục đích thử nghiệm, bạn có thể cần phải đăng ký chứng chỉ khóa tải lên của mình với nhà cung cấp API bằng tệp tham chiếu của chứng chỉ và khóa ký ứng dụng.

Bước 4: Ký bản cập nhật ứng dụng tiếp theo bằng khóa tải lên

Khi phát hành bản cập nhật cho ứng dụng, bạn cần ký các bản cập nhật đó bằng khóa tải lên.

  • Nếu bạn không tạo khóa tải lên mới: Hãy tiếp tục dùng khóa ký ứng dụng gốc để ký các gói ứng dụng trước khi tải lên Google Play. Nếu bị mất khóa ký ứng dụng gốc, bạn có thể tạo khóa tải lên mới và đăng ký khóa đó với Google để tiếp tục cập nhật ứng dụng.
  • Nếu bạn đã tạo khóa tải lên mới: Hãy sử dụng khóa tải lên mới để ký các gói ứng dụng trước khi tải lên Google Play. Google sẽ sử dụng khóa tải lên để xác minh danh tính của bạn. Nếu bị mất khóa tải lên, bạn có thể liên hệ với bộ phận hỗ trợ để đặt lại.

Tạo khóa tải lên và cập nhật kho khóa

Để tăng tính bảo mật, bạn nên ký ứng dụng bằng một khóa tải lên mới thay vì dùng khóa ký ứng dụng.

Bạn có thể tạo khóa tải lên khi chọn sử dụng Tính năng ký ứng dụng của Play hoặc sau này, bạn có thể tạo khóa tải lên bằng cách truy cập trang Tính năng ký ứng dụng của Play (Phát hành >) Thiết lập > Tính toàn vẹn của ứng dụng).

Sau đây là cách tạo khóa tải lên:

  1. Làm theo hướng dẫn trên trang web dành cho Nhà phát triển Android. Lưu trữ khóa của bạn ở một nơi an toàn.
  2. Xuất chứng chỉ cho khóa tải lên theo định dạng PEM. Thay thế các đối số được gạch chân sau:
    • $ keytool -export -rfc -keystore upload-keystore.jks -alias upload -file upload_certificate.pem
  3. Khi được nhắc trong quá trình phát hành, hãy tải chứng chỉ lên để đăng ký với Google.

Khi bạn sử dụng khóa tải lên:

  • Khóa tải lên chỉ được đăng ký với Google để xác thực danh tính của người tạo ứng dụng.
  • Chữ ký của bạn sẽ bị xóa khỏi mọi tệp APK đã tải lên trước khi chúng được gửi tới người dùng.
Yêu cầu đối với khóa tải lên
  • Phải là khóa RSA từ 2048 bit trở lên.
Cập nhật kho khóa

Sau khi bạn tạo khóa tải lên, dưới đây là một số vị trí bạn có thể muốn kiểm tra và cập nhật:

  • Máy cục bộ
  • Máy chủ tại chỗ đã khóa (ACL khác nhau)
  • Máy đám mây (ACL khác nhau)
  • Dịch vụ quản lý bí mật chuyên dụng
  • Kho lưu trữ (Git)

Nâng cấp khóa ký ứng dụng của bạn cho các lượt cài đặt mới

Trong một số trường hợp, bạn có thể yêu cầu nâng cấp khóa ký ứng dụng. Khóa mới của bạn được dùng để ký các bản cài đặt mới và bản cập nhật ứng dụng. Khóa ký ứng dụng cũ của bạn vẫn được dùng để ký các bản cập nhật cho người dùng đã cài đặt ứng dụng của bạn trước khi nâng cấp khóa.

Mỗi ứng dụng chỉ có thể được nâng cấp khóa ký ứng dụng một lần duy nhất trong suốt thời gian hoạt động. Trong trường hợp hiếm gặp là bạn có nhiều ứng dụng sử dụng cùng một khóa ký để chạy tring cùng một quy trình, bạn sẽ không thể sử dụng tính năng nâng cấp khóa cho các ứng dụng đó.

Dưới đây là một số lý do để yêu cầu nâng cấp khóa ký ứng dụng:

  • Bạn cần một khóa mã hóa mạnh hơn.
  • Khóa ký ứng dụng của bạn đã bị lộ.

Lưu ý: Yêu cầu nâng cấp khóa ký ứng dụng trên Play Console không liên quan đến tính năng xoay vòng khóa đã đề cập trong sơ đồ chữ ký APK phiên bản 3 cho Android P trở lên. Hiện tại, Google Play không hỗ trợ kiểu thay khóa này.

Những điều cần lưu ý trước khi yêu cầu nâng cấp khóa

Trước khi yêu cầu nâng cấp khóa, điều quan trọng là bạn phải nắm được những thay đổi mà bạn có thể cần thực hiện sau khi quá trình nâng cấp hoàn tất.

  • Nếu sử dụng cùng một khóa ký ứng dụng cho nhiều ứng dụng để chia sẻ dữ liệu/mã giữa những ứng dụng này, bạn cần cập nhật ứng dụng của mình để nhận dạng cả chứng chỉ khóa ký ứng dụng mới và cũ.
  • Nếu ứng dụng của bạn sử dụng API, hãy nhớ đăng ký chứng chỉ cho cả khóa ký ứng dụng mới và cũ của bạn với các nhà cung cấp API trước khi phát hành bản cập nhật để đảm bảo API tiếp tục hoạt động. Các chứng chỉ này nằm trên trang Tính năng ký ứng dụng của Play (Phát hành > Thiết lập > Tính toàn vẹn của ứng dụng) trong Play Console.  
  • Nếu có người dùng cài đặt bản cập nhật thông qua tính năng chia sẻ ngang hàng, họ sẽ chỉ cài đặt được những bản cập nhật ký bằng chính khóa của phiên bản ứng dụng mà họ đã cài đặt. Nếu người dùng không thể cập nhật ứng dụng của họ vì phiên bản ứng dụng của họ được ký bằng một khóa khác, thì họ có thể gỡ cài đặt và cài đặt lại ứng dụng để nhận bản cập nhật.
Yêu cầu nâng cấp khóa cho các lượt cài đặt mới
  1. Mở Play Console rồi truy cập trang Tính năng ký ứng dụng của Play (Phát hành > Thiết lập > Tính toàn vẹn của ứng dụng).
  2. Trong thẻ "Cập nhật khóa tải lên của bạn cho lượt cài đặt mới", hãy chọn Yêu cầu cập nhật khóa.
  3. Chọn một lựa chọn.
    • Tùy thuộc vào lựa chọn của mình, bạn có thể phải liên hệ với bộ phận hỗ trợ để hoàn thành yêu cầu đưa ra.
  4. Yêu cầu Google tạo khóa ký ứng dụng mới (khuyên dùng) hoặc tải khóa lên.
    • Sau khi nâng cấp khóa ký ứng dụng của bạn, nếu đang sử dụng cùng một khóa để làm khóa ký ứng dụng và khóa tải lên thì bạn có thể tiếp tục sử dụng khóa ký ứng dụng cũ làm khóa tải lên hoặc tạo khóa tải lên mới.
  5. Nếu cần, hãy đăng ký khóa ký ứng dụng mới của bạn với nhà cung cấp API.

Những phương pháp hay nhất

  • Nếu bạn đang hoặc dự định phân phối ứng dụng bên ngoài Google Play và muốn sử dụng cùng một khóa ký, bạn có hai lựa chọn:
    • Cho phép Google tạo khóa (nên dùng), sau đó, tải tệp APK chung đã được ký xuống từ trình khám phá gói ứng dụng để phân phối bên ngoài Google Play.
    • Hoặc bạn có thể tạo khóa ký ứng dụng mà bạn muốn sử dụng cho mọi cửa hàng ứng dụng, rồi chuyển bản sao của khóa đó sang Google khi bạn định cấu hình Tính năng ký ứng dụng của Play.
  • Để bảo vệ tài khoản của bạn, hãy bật tính năng Xác minh 2 bước cho các tài khoản có quyền truy cập vào Play Console của bạn.
  • Sau khi phát hành gói ứng dụng lên một kênh phát hành, bạn có thể truy cập trình khám phá gói ứng dụng để truy cập các tệp APK có thể cài đặt do Google tạo từ gói ứng dụng của bạn. Bạn có thể:
    • Sao chép và chia sẻ đường liên kết chia sẻ ứng dụng nội bộ. Việc này cho phép bạn chỉ cần nhấn một lần để thử nghiệm nội dung mà Google Play sẽ cài đặt qua gói ứng dụng của bạn trên nhiều thiết bị.
    • Tải tệp APK chung đã được ký Tệp APK này được ký bằng khóa ký ứng dụng mà Google lưu giữ và có thể cài đặt trên mọi thiết bị mà ứng dụng của bạn hỗ trợ.
    • Tải tệp lưu trữ ZIP chứa mọi tệp APK cho một thiết bị cụ thể. Những tệp APK này được ký bằng khóa ký ứng dụng mà Google lưu giữ., Ngoài ra, bạn cũng có thể cài đặt các tệp APK trong tệp lưu trữ ZIP trên thiết bị bằng lệnh adb install-multiple *.apk.
  • Để tăng độ bảo mật, hãy tạo một khóa tải lên khác với khóa ký ứng dụng của bạn.
  • Nếu dùng API của Google thì bạn nên đăng ký khóa tải lên và chứng chỉ khóa ký ứng dụng trong Google Cloud Console cho ứng dụng của mình.

Khóa tải lên bị mất hoặc bị lộ?

Nếu bị mất hoặc bị lộ khóa tải lên riêng tư, bạn có thể tạo một khóa mới rồi yêu cầu chủ sở hữu tài khoản của bạn liên hệ với bộ phận hỗ trợ để đặt lại khóa đó. Khi liên hệ với bộ phận hỗ trợ, hãy đảm bảo chủ sở hữu tài khoản của bạn đính kèm tệp upload_certificate.pem.

Sau khi nhóm hỗ trợ của chúng tôi đăng ký khóa tải lên mới, bạn sẽ nhận được email và sau đó có thể cập nhật kho khóa của mình và đăng ký khóa của mình với các nhà cung cấp API.

Lưu ý quan trọng: Việc tạo lại khóa tải lên không ảnh hưởng đến khóa ký ứng dụng mà Google Play sử dụng để ký lại tệp APK trước khi phân phối tệp APK cho người dùng.

Lược đồ chữ ký APK v4

Các thiết bị chạy Android 11 trở lên hỗ trợ lược đồ chữ ký APK v4 mới ra mắt. Tính năng ký ứng dụng của Play sẽ bắt đầu triển khai v4 trên một số ứng dụng chọn lọc để các ứng dụng có thể tùy chọn truy cập vào các tính năng hiệu suất sắp có mặt trên các thiết bị mới. Nhà phát triển không cần làm gì và người dùng sẽ không bị ảnh hưởng.

 

Thông tin này có hữu ích không?
Chúng tôi có thể cải thiện trang này bằng cách nào?

Bạn cần trợ giúp thêm?

Đăng nhập để xem thêm tùy chọn hỗ trợ giúp nhanh chóng giải quyết sự cố

Tìm kiếm
Xóa tìm kiếm
Đóng tìm kiếm
Các ứng dụng của Google
Menu chính
Tìm kiếm trong Trung tâm trợ giúp
true
92637
false