Cryptage AES dans Golang et décryptage en Java
Dans cet article, nous explorerons la mise en œuvre du cryptage AES dans Golang et démontrerons comment déchiffrer le texte crypté en Java.
Fonction de cryptage Golang
La fonction de cryptage Golang convertit une chaîne de texte brut en texte chiffré à l'aide de la norme AES (Advanced Encryption Standard) avec Cipher Mode alimentation par bloc (CFB). Il génère un vecteur d'initialisation aléatoire (IV), crypte le texte brut et renvoie le texte crypté sous forme de chaîne codée en base64.
Fonction de décryptage Java
Le décryptage Java La fonction prend le texte crypté et la clé de cryptage en entrée. Il décode les données codées en base64, extrait le IV et initialise le chiffrement AES/CFB/NoPadding. Par la suite, il déchiffre le texte chiffré pour récupérer le texte brut d'origine, qui est ensuite renvoyé sous forme de chaîne.
Fonction de décryptage Scala
La fonction de décryptage Scala fournie est similaire à la Fonction Java. Il utilise le décodeur URL Base64 pour décoder le texte saisi, initialise le chiffrement AES/CFB/NoPadding, extrait le IV et déchiffre le texte chiffré. Cependant, il utilisait à l'origine Hex.decodeHex, qui devrait être remplacé par le décodeur d'URL Base64 pour un décryptage précis.
Exemple d'utilisation
Vous pouvez utiliser la fonction de cryptage Golang fournie. pour chiffrer du texte en Golang. Le texte chiffré résultant peut être transmis aux fonctions de décryptage Java ou Scala pour récupérer le texte brut d'origine. Par exemple, considérons le texte d'entrée « texte de test 123 ». La fonction de cryptage de Golang produira "c1bpFhxn74yzHQs-vgLcW6E5yL8zJfgceEQgYl0=" comme texte chiffré. Les fonctions de décryptage Java ou Scala peuvent ensuite être utilisées pour récupérer le texte brut original "texte de test 123".
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!