

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Utilisation d’une commande Linux et OpenSSL pour le chiffrement et l’encodage en base64
<a name="private-content-linux-openssl"></a>

Vous pouvez utiliser la commande de ligne de commande Linux suivante et OpenSSL pour hacher et signer la déclaration de politique, encoder la signature en base64 et remplacer les caractères non valides des paramètres de la chaîne de requête de l’URL par des caractères valides.

Pour plus d’informations sur OpenSSL, rendez-vous sur [https://www.openssl.org](https://www.openssl.org).

SHA-1 (par défaut) :

```
cat policy | tr -d "\n" | tr -d " \t\n\r" | openssl sha1 -sign private_key.pem | openssl base64 -A | tr -- '+=/' '-_~'
```

SHA-256 :

```
cat policy | tr -d "\n" | tr -d " \t\n\r" | openssl sha256 -sign private_key.pem | openssl base64 -A | tr -- '+=/' '-_~'
```

Dans la commande précédente :
+ `cat` lit le fichier `policy`.
+ `tr -d "\n" | tr -d " \t\n\r"` supprime les espaces vides et le caractère de saut de ligne qui ont été ajoutés par `cat`.
+ OpenSSL hache le fichier à l'aide de SHA-1 (ou SHA-256) et le signe à l'aide du fichier de clé privée. `private_key.pem` La signature de clé privée peut être RSA 2048 ou ECDSA 256. Si vous utilisez SHA-256, incluez le paramètre de `Hash-Algorithm=SHA256` requête dans l'URL signée ou le `CloudFront-Hash-Algorithm=SHA256` cookie pour les cookies signés.
+ OpenSSL encode en base64 la déclaration de politique hachée et signée.
+ `tr`remplace les caractères non valides dans les paramètres de chaîne de requête d'URL par des caractères valides.

Pour d’autres exemples de code illustrant la création d’une signature, consultez [Exemples de code pour la création de la signature d’une URL signée](PrivateCFSignatureCodeAndExamples.md).