41 votes

Comment signer un package d'application (APK) en utilisant OpenPGP (Yubikey)?

Je veux signer APK fichiers avec une clé OpenPGP stockées dans le OpenPGP applet de mon Yubikey.

Je suis conscient qu'il y a une solution pour APK de la signature à l'aide de Yubikey du PIV de l'applet. La PIV applet, cependant, ne peut gérer que des clés RSA 2048 bits dans la longueur de la clé.

Le BSI TR-02102-1 Mécanismes Cryptographiques Directives Techniques (version traduite en anglais) stipule qu'à partir de l'année 2023 (ou pour l'utilisation en 2023 et plus tard), uniquement des clés RSA avec une clé de longueur supérieure ou égale à 3000 bits sont autorisés. La première norme de la longueur de la clé serait 3072 bits. Je dois être conformes à la BSI TR-02102.

Cela résume dans l'exigence, que je dois utiliser 3072 bits pour la longueur de clé RSA et à mesure que l'algorithme, et je ne peux pas utiliser la PIV APK chant approche.

Est-il possible d'utiliser OpenPGP applet de Yubikey 4 pour signer des fichiers APK en utilisant la procédure standard, ou à l'aide d'une procédure personnalisée?

Remarque: La clé privée est générée sur la Yubikey et n'est pas exportable. Cela est dû à la conception de la Yubikey et par mes exigences de sécurité minimales. Donc, l'exportation et la conversation n'est pas une solution possible.

1voto

syslogic Points 749

Utiliser une clé USB ou une carte à puce qui prend en charge RSA 3072 4096 pour les personnels de vérification d'identité? Même pas la Yubikey 5 prend en charge que pour les PIV / FIPS 201-2 (qui est une carte à puce de l'émulation). J'ai cherché pendant un certain temps, mais il semble qu'il n'y à peine est un matériel qui supporte encore (dans le cas où c'est encore applicable); les alternatives que j'ai pu trouver étaient RSA SecurID, Nitrokey Pro 2 et Gemalto IDBridge K50.

Avec APK de signature v2 ou v3, la force de le télécharger clé pourrait même ne pas beaucoup d'importance ... cela dit RSA 1024, RSA 2048, RSA 4096, RSA 8192, RSA 16384 sont pris en charge, mais il ne dit nulle part qui force le réel relâchement de la touche aurait, qui serait plutôt intéressant de la partie. Le V3SchemeSigner conseils pour PKCS1 V1.5 le format d'encodage, mais la seule façon de le savoir serait de vérifier la clé publique d'un package à partir du Magasin de Jeu en cours d'exécution ssh-keygen -lf ./rsa_key.pub (ce qui montre l'empreinte de la clé publique de fichier, qui affiche aussi la force de la clé).

security.stackexchange.com pourrait fournir des indices supplémentaires.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X