Lorsque vous recevez des informations de Currencycloud, il est essentiel que vous ayez confiance en leur caractère confidentiel et leur intégrité.
Vous avez donc la garantie que nous mettons tout en œuvre pour éviter que des informations sensibles ne parviennent aux mauvaises personnes, tout en veillant à ce qu’elles parviennent aux personnes appropriées. Tout cela en étant assuré que les informations que vous recevez de Currencycloud n’ont pas été falsifiées.
L’ajout de la vérification des messages sur nos notifications push est la dernière étape pour améliorer leur intégrité.
Qu’est-ce qu’une notification push ?
La fonctionnalité des notifications automatisées de Currencycloud offre aux utilisateurs une visibilité en temps réel et des mises à jour instantanées sur l’avancement du traitement des transactions.
Nos notifications push (Webhooks) permettent à l’utilisateur de rester informé à chaque étape du processus. Lorsque l’état d’une transaction change, une notification peut être déclenchée vers un point de terminaison ou une adresse e-mail choisie par le client. Que vous utilisiez nos API ou Currencycloud Direct, c’est un moyen très efficace pour que vous et vos utilisateurs restiez au fait de la situation.
Qu’est-ce que la vérification des messages ?
La vérification des messages vous permettra de vérifier qu’un message provient de Currencycloud et n’a pas été falsifié. Nous ajoutons un code d’authentification des messages basé sur le hachage (HMAC – Hash-based Message Authentication Code) aux notifications, que vous pourrez utiliser pour confirmer l’intégrité du message.
Je suis un développeur. Comment cela fonctionne-t-il et que dois-je savoir ?
Étape 1 : création d’une clé secrète
Une clé secrète générée par vous seul est partagée entre le destinataire du message (vous) et l’expéditeur du message (Currencycloud). Vous pouvez créer ou actualiser cette clé générée de manière aléatoire via Currencycloud Direct ou notre point de terminaison API.
La possibilité de générer une clé secrète fait l’objet d’une nouvelle autorisation, de sorte que vous pouvez décider quels contacts de votre compte peuvent effectuer cette opération.
Étape 2 : préparation de la notification push
En utilisant la clé secrète que personne d’autre que vous ne connaît et le contenu du message original, Currencycloud utilise un puissant algorithme de hachage (SHA-512) pour générer le HMAC. Ce code sera ajouté à toute notification que vous recevrez et, à l’aide de la même clé secrète et du même algorithme de hachage, vous serez en mesure de calculer le HMAC. Vous pouvez voir un exemple ci-dessous :
Étape 3 : vérification des messages
Lorsque vous recevez le message, vous devez utiliser la clé secrète, le contenu du message et le même algorithme de hachage (SHA-512) pour calculer le HMAC.
Si le HMAC calculé correspond à celui de l’en-tête du message, cela signifie que vous avez pu prouver cryptographiquement l’authenticité du message.
Remarque : vous devez absolument envoyer le contenu du message au validateur de somme de contrôle exactement comme il a été reçu ; par exemple, assurez-vous qu’aucun caractère supplémentaire (par exemple, des espaces blancs ou de nouvelles lignes) n’a été ajouté.
Comment puis-je générer une clé sécurisée ?
Vous pouvez générer une clé via votre « Profile page » (Page de profil) sur notre plateforme Direct. Sinon, vous pouvez appeler l’API Generate HMAC Key (/v2/contacts/generate_hmac_key). Vous ne pouvez générer une clé secrète que si le contact sous lequel vous êtes connecté dispose de l’autorisation nécessaire. Pour cela, contactez votre Customer Success Manager afin d’activer cette autorisation. Générez une nouvelle clé secrète aussi souvent que nécessaire.
Où puis-je voir le HMAC dans la notification push ?
Le HMAC sera ajouté à l’en-tête du message avant sa distribution. Vous n’aurez pas besoin de calculer le HMAC pour lire le contenu du message, mais seulement si vous souhaitez en vérifier l’intégrité.
Comment vérifier le HMAC ?
Pour vérifier l’intégrité d’une notification push, vous devrez calculer le hachage du message en utilisant le contenu complet de la notification et votre clé secrète, par exemple :
$ echo -n ‘<notification_content>’| openssl dgst -sha512 -hmac "Ma clé secrète" (stdin)= 8b472cf04424acd33c3e6e3e74a821929fda2511d034dcd992d3ef3009f9834bfd042d2215de1583c4d57b90a7299e3e9f765e1ec5de003b73d7666d8a284027
Le résultat doit être identique au HMAC que vous avez reçu dans l’en-tête du message.