Closed Bug 1592828 Opened 5 years ago Closed 5 years ago

Add apk (v1) FxR signer to config b/c Oculus Go store rejects APKs signed by Autograph with v2 signing support.

Categories

(Cloud Services :: Operations: Autograph, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: rbarker, Unassigned)

References

Details

Attachments

(1 file)

The recent upgrade to autograph to allow v2 signing seems to be causing issues with the Oculus Go store. When the APK is uploaded we get the error dialog attached to the bug. If I run apksigner verify on the APK signed by autograph I get the following:

~/Downloads>> apksigner verify --v --min-sdk-version 23 FirefoxReality-6-33030052-oculusvr3dofStore-arm64-release-signed.apk 
Verifies
Verified using v1 scheme (JAR signing): true
Verified using v2 scheme (APK Signature Scheme v2): true

So it would appear that the Oculus store is rejecting APK with v2 signing regardless if the APK is v1 signed.

I'm not sure how to proceed here. The Oculus store should prefer V2 signatures when present, and we can't strip the V1 signature without opening the APK, which breaks the V2 signature.

Would it be possible to get more information from Oculus on what type of signature they expect?

(In reply to Julien Vehent [:ulfr] from comment #1)

I'm not sure how to proceed here. The Oculus store should prefer V2 signatures when present, and we can't strip the V1 signature without opening the APK, which breaks the V2 signature.

Would it be possible to get more information from Oculus on what type of signature they expect?

To be clear, Oculus has two stores. One for the Quest (which requires v2), and one for the Go and GearVR (which requires only v1). The APK for the Go/GearVR store is getting rejected because it is v2 signed in addition to being v1 signed. This is the exact opposite problem we had when autograph only supported v1 signing.

The APK for the Go/GearVR store is getting rejected because it is v2 signed in addition to being v1 signed.

Ugh, we could default to v1 and v2 signatures and use a signing request option to disable the v2 signature e.g.

"options": {
  "v2": false
}

alternatively we could add an extra signer config and authorization for Go and GearVR and make the signature versions configurable in the signer config (against defaulting to both) e.g.

- id: some-android-app-gear-go
  type: apk2
  # defaults to versions 1 and 2, but can sign with just one version (or say v1 and v3 if we add v3 support) 
  signature_versions:
    - 1
  certificate: |
      -----BEGIN CERTIFICATE-----
      MIIH0zCCBbugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBvDELMAkGA1UEBhMCVVMx
              ...
      -----END CERTIFICATE-----
  privatekey: |
              ...

I would go with the lowest impact solution. It does not look like there will be a Go 2 and GearVR is dead so while Go users are a significant number of our current users, I expect that number to shrink over time until we just drop support.

Assuming the apk (v1) signer + zipalign worked for Go/GearVR we can leave that one in the config and add another apk2 signer to support both use cases, which limits this to just a config change.

The version of Autograph that did only v1 signing worked with the Go store. It didn't break until we started v2 signing it also. So that should be fine if I understand what you are saying.

Summary: Oculus Go store rejects APKs signed by Autograph with v2 signing support. → Add apk (v1) FxR signer to config b/c Oculus Go store rejects APKs signed by Autograph with v2 signing support.
Blocks: 1589166

In config commit 13af68632aa32d4c3f798a8571a810fda4ab1e7d

  • Added a signer with name fx_reality_apk_v1 with the old apk signer config
  • Added a new autograph edge authorization (creds to send to :rbarker)

Closing with changes to go out next week with train-6

Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Blocks: 1593330

hwine r+ on 13af68632aa32d4c3f798a8571a810fda4ab1e7d

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: