From this thread I understand that for each application in F-Droid, a new signing key is generated. Does this signing key change, or can we expect it to stay the same?
Can I expect this to stay the same in the futureā¦ barring any major catastrophes? Or are there policies that rotate the signing key, something like that?
Iāll try to explain it, its purpose is for a bit of risk reduction. Basically this APK can be used by other applications. It can provide TLS 1.3 capabilities to older Android devices.
Just for safety, it would be good if the calling application can ensure that this APK has an expected signature, to minimize risk of spoofing.
Since F-Droid does the packaging and deploying, it is also signing the APK. In the case of conscrypt provider, I did a check, the key is 9de14dda20f05a5801be23cc533414114876b75e. So, a calling application could use that when detecting the APK to ensure itās from an āexpectedā source.
So my question became, is that key that F-Droid uses, for an application, meant to be long lasting? Iām actually fine if it breaks in the future and changes to something else.
The APK would need to already be installed on the userās device. Then, the calling application would need to use Reflection to invoke a method inside the APK Iāve made here.
Before this the calling application would need to ensure the package is installed, and ideally that the signature matches an expected one.
This particular APK youāll see is dead simple, itās literally a one-liner that actually calls a Java library. The reason for putting it into an APK is because itās a large library, and not needed by everyone. So this mechanism (ācallā an APK) allows me to optionally provide this to users from my app.