Générer une clé prépartagée sécurisée

Vous pouvez utiliser une clé pré-partagée (également appelée secret partagé ou PSK) pour authentifier le tunnel Cloud VPN auprès de votre passerelle de VPN de pairs. Pour respecter nos bonnes pratiques de sécurité, nous vous recommandons de générer une clé prépartagée sécurisée de 32 caractères.

Pour en savoir plus sur Cloud VPN, consultez la Présentation de Cloud VPN.

Pour connaître la définition des termes utilisés sur cette page, consultez la section Termes clés.

Une clé générée adaptée à vos besoins

Votre navigateur génère la chaîne aléatoire suivante en utilisant l'extrait de code JavaScript qui figure au bas de cette page. Cette chaîne est composée de 24 octets provenant de Crypto.getRandomValues et est encodée en base64 pour créer une clé prépartagée de 32 caractères.

En utilisant cet extrait, la clé privée est conservée en toute sécurité dans votre navigateur. Si vous souhaitez la générer sur votre propre système, utilisez l'une des méthodes de génération répertoriées dans la section suivante.

Pour générer une nouvelle clé prépartagée aléatoire, cliquez sur le bouton Regénérer la clé.

Méthodes de génération

Utilisez les méthodes suivantes pour générer une clé prépartagée sécurisée de 32 caractères.

OpenSSL

Sur un système Linux ou macOS, exécutez la commande OpenSSL suivante :

openssl rand -base64 24

/dev/urandom

Sur un système Linux ou macOS, vous pouvez également utiliser /dev/urandom comme source pseudo-aléatoire pour générer une clé prépartagée :

  • Sous Linux ou macOS, envoyez l'entrée aléatoire à l'adresse base64 :

    head -c 24 /dev/urandom | base64
    
  • Transmettez l'entrée aléatoire via une fonction de hachage, telle que sha256 :

    • Sous Linux :

      head -c 4096 /dev/urandom | sha256sum | cut -b1-32
      
    • Sous macOS :

      head -c 4096 /dev/urandom | openssl sha256 | cut -b1-32
      

JavaScript

Vous pouvez également générer la clé prépartagée directement dans un document à l'aide de JavaScript avec l'API W3C Web Cryptography. Cette API utilise la méthode Crypto.getRandomValues(), qui permet de générer une clé pré-partagée de manière cryptographique.

Le code suivant crée un tableau de 24 octets aléatoires, puis les encode en base64 pour produire une chaîne aléatoire de 32 caractères :

  var a = new Uint8Array(24);
  window.crypto.getRandomValues(a);

  console.log(btoa(String.fromCharCode.apply(null, a)));

Étape suivante

  • Pour utiliser des scénarios à haute disponibilité et à haut débit, ou des scénarios à plusieurs sous-réseaux, consultez la section Configurations avancées.
  • Pour vous aider à résoudre les problèmes courants que vous pouvez rencontrer lors de l'utilisation de Cloud VPN, consultez la page Dépannage.