# Schémas de signature

## Description

La signature d'application permet aux développeurs d'identifier l'auteur de l'application et de mettre à jour leur application sans créer d'interfaces ni d'autorisations compliquées. Chaque application exécutée sur la plateforme Android doit être signée par le développeur. Les applications qui tentent de s'installer sans être signées seront rejetées par Google Play ou par le programme d'installation du package sur l'appareil Android.

Sur Google Play, la signature d'application établit un lien entre la confiance que Google accorde au développeur et la confiance que le développeur a envers son application. Les développeurs savent alors que leur application n'a pas été falsifiée.

## Reconnaissance

Assurez-vous que la version de la release a été signée via les schémas v1 et v2 pour Android 7.0 (niveau API 24) et supérieur et via les trois schémas pour Android 9 (niveau API 28) et supérieur, et que le certificat de signature de code dans l’APK appartient au développeur.

Les signatures APK peuvent être vérifiées avec l'outil **apksigner.**

```
$ apksigner verify --verbose Desktop/example.apk
Verifies
Verified using v1 scheme (JAR signing): true
Verified using v2 scheme (APK Signature Scheme v2): true
Verified using v3 scheme (APK Signature Scheme v3): true
Number of signers: 1
```

Le contenu du certificat de signature peut être examiné avec jarsigner. Notez que l'attribut Common Name (CN) est défini sur « Android Debug » dans le certificat de débogage.

Le résultat d'un APK signé avec un certificat de débogage est présenté ci-dessous :&#x20;

```
$ jarsigner -verify -verbose -certs example.apk

sm     11116 Fri Nov 11 12:07:48 ICT 2016 AndroidManifest.xml

      X.509, CN=Android Debug, O=Android, C=US
      [certificate is valid from 3/24/16 9:18 AM to 8/10/43 9:18 AM]
      [CertPath not validated: Path doesn\'t chain with any of the trust anchors]
(...)
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://blog.s1rn3tz.ovh/pentest-mobile/android/resilience/schemas-de-signature.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
