Généralement, lorsque vous utilisez les clés fournies dans d'autres langues, vous devez faire un peu de gymnastique pour l'utiliser en Base64.
Essayez ceci pour l'argument clé:
ToBase64(BinaryDecode('FD52250E230D1CDFD5C2DF0D57E3E0FEFD52250E230D1CDF','hex'))
Mais, pour faire ce travail pour moi, la chaîne d'entrée nécessaire pour être un multiple de 8 octets (parce que vous spécifiez NoPadding), et IV nécessaire pour être également un multiple de 8 octets. Donc, cela a fini par marcher pour moi - je ne sais pas si vous serez capable de le déchiffrer à l'autre bout, si la IV qu'ils spécifient est vraiment ce que vous avez énuméré ici.
encrypteded = encrypt('theStrin', ToBase64(BinaryDecode('FD52250E230D1CDFD5C2DF0D57E3E0FEFD52250E230D1CDF','hex')), 'DESEDE/CBC/NoPadding', 'BASE64', ToBase64('0000'));
n ° IV a également travaillé aussi bien (avec une sortie différente, évidemment):
encrypteded = encrypt('theStrin', ToBase64(BinaryDecode('FD52250E230D1CDFD5C2DF0D57E3E0FEFD52250E230D1CDF','hex')), 'DESEDE/CBC/NoPadding', 'BASE64');
Si vous avez reçu un maléfice IV, alors vous pouvez l'utiliser comme tel:
encrypteded = encrypt('theStrin', ToBase64(BinaryDecode('FD52250E230D1CDFD5C2DF0D57E3E0FEFD52250E230D1CDF','hex')), 'DESEDE/CBC/NoPadding', 'BASE64', BinaryDecode("7fe8585328e9ac7b","hex"));
Espérons que ce soit assez d'infos pour vous mettre en route!
Dans votre exemple de code, il semble que vous transmettiez un nom de variable au lieu de la chaîne littérale de la clé. Je suppose que c'est un problème avec votre exemple, pas votre code réel, mais juste pensé que je vérifierais. –
Je m'excuse. Après avoir relu le code de contrôle de parité, j'ai réalisé qu'il cherchait une parité impaire. Désolé pour la chasse aux oies sauvages. – erickson
Ben, c'était juste un problème avec l'exemple, pas de code réel, mais j'ai mis à jour pour éviter toute confusion. –