7
votes

Cryptage entre Android et C #

J'utilise le code source C # suivant pour chiffrer le texte brut à l'aide d'AES (ECB 256): xxx pré>

et j'ai besoin de décrypter / chiffrer des données via le même algorithme, mais je ne sais pas Comment. P>

voici ma classe Java ( ne fonctionne pas strud>): p> xxx pré>

java appel: p>

encrypt("12345678901234567890123456789012".getBytes(), "Example Message", true);


3 commentaires

J'ai découvert le problème. Mon code Java utilise AES-128 (taille du bloc 128) et le code C # utilise AES-256 (taille de bloc réel 256). Alors, quelqu'un sait comment utiliser AES-256 en Java?


Comment générez-vous la clé de Java (c'est-à-dire le paramètre 'Key' dans votre première méthode cryptée ()?


En réponse à votre commentaire, je pense que j'ai lu quelque part que seul AES-128 est en réalité normalisé, les autres ne le sont pas. Vous obtenez le même problème lorsqu'il s'agit de chiffrer entre une application .NET C # et un exécuté avec mono (IIRC). Référence mono associée


3 Réponses :


1
votes

lecture sur Cet article semble que vous auriez besoin de besoin Pour utiliser une version de Java qui permet une cryptographie de force illimitée afin que vous puissiez utiliser de grandes tailles de touches (AES-192 et AES-256). Ils limitent intentionnellement les longueurs de clé pouvant être utilisées par défaut en raison de restrictions de contrôle des importations imposées par certains pays. Voir la section «Strong contre la cryptographie de force illimitée» pour plus d'informations.


0 commentaires

3
votes

Oui, le problème est la limite de 128 bits taille de bloc dans AES (voir ' cryptographie de force forte et illimitée ').

Enfin, j'ai utilisé gnu crypto et ça marche !. J'ai importé tout le code source et j'ai supprimé le code que je n'utilise pas.

Si quelqu'un veut le code source nettoyé il ne doit que me demander.

Merci pour l'aide.


0 commentaires

2
votes

Vous devriez également envisager un château gonflable, il est disponible pour C # et Java

http://www.bouncycastle.org


0 commentaires