Cryptage une image par l'operation xor

Messages postés
58
Date d'inscription
lundi 1 novembre 2010
Statut
Membre
Dernière intervention
4 décembre 2018
- - Dernière réponse :  Utilisateur anonyme - 19 avril 2013 à 19:53
slt a tous le monde .
je veut crypter une image après la conversion les pixel a binaire par l’opération xor
j'ai cette clé et je veut crypter l'image ligne par ligne par ce clé je fait ce code mes je trouve des problème malgré les valeur en binaire mais le résultat en décimale
le cle : int []cle= {18,18,19,11,27,20,2,27,29,6,17,38,14,6,33,29,0,18,29,14,16,30,17,14,28,18,1,29,32,5,15,39,
18,18,19,11,27,20,2,27,29,6,17,38,14,6,33,29,0,18,29,14,16,30,17,14,28,18,1,29,32,5,15,39,
18,18,19,11,27,20,2,27,29,6,17,38,14,6,33,29,0,18,29,14,16,30,17,14,28};
voici mon programe
int []img_ch=new int[img_c.length];
for(int i=0;i<130;i++)
{
for(int j=0;j<87;j++)

img_ch[j] =img_c[j]^cl[j];

};


aide moi svp
Afficher la suite 

11 réponses

Messages postés
6413
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
248
0
Merci
Salut,

Je ne suis pas certain que l'opérateur ^ existe en java. Utilises Math.pow.

J'ai une autre question : avec ta méthode, pour chiffrer un message de n bit, tu utilises une clé de n bit. Ce qui signifie que pour envoyer un message de n bit, tu dois d'abord récupérer de manière sûre une clé de n bit, dans ce cas, pourquoi ne pas directement échanger le message ?
Commenter la réponse de cs_Julien39
Messages postés
58
Date d'inscription
lundi 1 novembre 2010
Statut
Membre
Dernière intervention
4 décembre 2018
0
Merci
j'essayer avec ce code est ce que juste et tu peut indiquer comment ytilise Mat.pow
String XOR(String A, String B){

String R="";
String [] img_bin=new String[tabpix.length] ;
String[]cleb=new String[cle.length];
int i=0;
img_bin[i]=A;
cleb[i]=B;
int[] img_c =new int[tabpix.length];
int[] cl =new int[cle.length];
int[] img_ch =new int[tabpix.length];
for( i=0;i<130;i++)
{
for( int j=0;j<87;j++)
{
for ( int k = 0; k < A.length(); k++) {

img_c[k]= Integer.parseInt(A.substring(k,k+1));
cl[k]= Integer.parseInt(B.substring(k,k+1));
//int v=a^b;

//img_c[i]=a;
//cl[i]=b;
// img_ch[i]=v;
img_ch[i*87+j] =img_c[i*87+j]^cl[i*87+j];
R=R+img_ch[i];
// System.out.println("ssssssssssss "+a);
}

}

}
return(R);
}
corriger mon fonction svp
Commenter la réponse de mkhadi
0
Merci
img_ch[i*87+j] =img_c[i*87+j]^cl[i*87+j]; 

donne
img_ch[i*87+j] = Math.pow(img_c[i*87+j],cl[i*87+j]); 


Si tu veux, Math.pow(A, B) équivaut à A^B.

Un petit saut sur double) l'APIne fait pas de mal sinon.


--
Pylouq
(Lire le Réglement n'a jamais tué personne, au pire ça a instruit des gens.)
Commenter la réponse de Utilisateur anonyme
Messages postés
58
Date d'inscription
lundi 1 novembre 2010
Statut
Membre
Dernière intervention
4 décembre 2018
0
Merci
merci bcp j'essayer pour ça .
j'appliquer cette fonction :

String XOR(String A, String B){

   String R="";

       for (int i = 0; i < A.length(); i++) {

        int a= Integer.parseInt(A.substring(i,i+1));
         int b= Integer.parseInt(B.substring(i,i+1));
         int v=a^b;
         R=R+v;
       // System.out.println("ssssssssssss "+a);
       }

   return(R);



   }
//*******************************Xor entre deux tableau ********
String[]XORT(String[]A,String []B){
    String[]C= new String[A.length];
        for (int i = 0; i < C.length; i++) {
           C[i]=XOR(A[i], B[i]);
            
        }
    
    return(C);
    }


Commenter la réponse de mkhadi
0
Merci
Alors, où en es-tu ? Ton problème est-il résolu ? A voir ton code, j'en doute.

--
Pylouq
(Lire le Réglement n'a jamais tué personne, au pire ça a instruit des gens.)
Commenter la réponse de Utilisateur anonyme
Messages postés
58
Date d'inscription
lundi 1 novembre 2010
Statut
Membre
Dernière intervention
4 décembre 2018
0
Merci
salut
avant je trouve la solution de mon problème je proposé mon problème et après je trouve les soulution je propos mon solution pour importer par autre gent merci a votre attention .
Commenter la réponse de mkhadi
0
Merci
Si ton problème est résolu, clique sur "Réponse terminée" pour le post qui résout ce problème.


--
Pylouq
(Lire le Réglement n'a jamais tué personne, au pire ça a instruit des gens.)
Commenter la réponse de Utilisateur anonyme
Messages postés
58
Date d'inscription
lundi 1 novembre 2010
Statut
Membre
Dernière intervention
4 décembre 2018
0
Merci
salut comment clique sur "Réponse terminée"
Commenter la réponse de mkhadi
0
Merci
"Réponse acceptée" je voulais dire, je ne me suis pas relu ^^'


--
Pylouq
(Lire le Réglement n'a jamais tué personne, au pire ça a instruit des gens.)
Commenter la réponse de Utilisateur anonyme
0
Merci
Lors du décodage du message
La longueur du bloc n'est pas approprié
Qu'est-ce qui ne va pas ?
S'il vous plaît noter que je veux pour crypter et décrypter l'image (converti en une tableau octets)
J'espère que votre aide s'il vous plaît.
Commenter la réponse de walid50825000
0
Merci
Bonjour,


Va plutôt faire un autre sujet au lieu de squatter ceux des autres. Et pense à lire le Règlement aussi stp.

A bientôt

--
Pylouq
Heureux sont ceux qui lisent le Réglement, ils ne finiront peut-être pas au bûcher.
Commenter la réponse de Utilisateur anonyme