begin process at 2012 05 28 14:58:19
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Sécurite & cryptage

 > STEGANOGRAPHIE & RSA, SWT

STEGANOGRAPHIE & RSA, SWT




 Description

Cliquez pour voir la capture en taille normale
Cet utilitaire permet d'insérer des données dans une image bit map.

Il propose aussi de chiffrer les données via RSA avant de les insérer.

Le code de l'ihm swt n'est pas commenté en revanche, l'utilitaire utilisé pour la steganographie (org.stegano.utils.StegaManager) et celui pour RSA (org.stegano.utils.RSAManager) sont bien documenté et peuvent être réutilisé.

Pour utiliser l'utilitaire, vous devez ajouter dans une repertoire lib/ le jar xerces et le jar de la swt ( présent dans votre install d'eclipse ).

PS: N'oubliez pas la restriction sur la taille des clefs imposée par la loi française ( 512 bit max pour les algo asynchrone comme RSA ).

Have fun ;-)

Pierrick

Source

  • // Test du RSA Manager.
  • String fileContent = sb.toString();
  • System.out.println("fileContent = " + fileContent);
  • RSAManager rsa = new RSAManager();
  • rsa.generateKeyPair();
  • byte[] publicKey = rsa.getPublicKeyInBytes();
  • System.out.println("publicKey = " + new BigInteger(publicKey));
  • byte[] privateKey = rsa.getPrivateKeyInBytes();
  • System.out.println("privateKey = " + new BigInteger(privateKey));
  • // Encode the content
  • String encodedString = rsa.codeFullStringInString(fileContent);
  • System.out.println("encodedString = " + encodedString);
  • // Decode the content
  • String decodedString = rsa.decodeStringInString(encodedString);
  • System.out.println("decodedString2 = " + decodedString);
  • if (!fileContent.equals(decodedString))
  • System.out.println("TEST 2 Error: fileContent != decodedString");
  • else
  • System.out.println("TEST 2 done successfully");
  • // Test du stegano manager
  • StegaManager stegaManager = new StegaManager();
  • String l = ClassLoader.getSystemClassLoader().getResource("").getPath();
  • stegaManager.setImage(new ImageData(l + "org/stegano/data/couvZola.bmp"));
  • stegaManager.insertBytes("This is a message [&é#'(})$^]".getBytes());
  • System.out.println(new String( stegaManager.extractBytes() ));
// Test du RSA Manager.
String fileContent = sb.toString();
System.out.println("fileContent = " + fileContent);

RSAManager rsa = new RSAManager();

rsa.generateKeyPair();

byte[] publicKey = rsa.getPublicKeyInBytes();
System.out.println("publicKey = " + new BigInteger(publicKey));
byte[] privateKey = rsa.getPrivateKeyInBytes();
System.out.println("privateKey = " + new BigInteger(privateKey));

// Encode the content
String encodedString = rsa.codeFullStringInString(fileContent);
System.out.println("encodedString = " + encodedString);

// Decode the content
String decodedString = rsa.decodeStringInString(encodedString);
System.out.println("decodedString2 = " + decodedString);

if (!fileContent.equals(decodedString))
	System.out.println("TEST 2 Error: fileContent != decodedString");
else
	System.out.println("TEST 2 done successfully");

// Test du stegano manager
StegaManager stegaManager = new StegaManager();
String l = ClassLoader.getSystemClassLoader().getResource("").getPath();
stegaManager.setImage(new ImageData(l + "org/stegano/data/couvZola.bmp"));
stegaManager.insertBytes("This is a message [&é#'(})$^]".getBytes());
System.out.println(new String( stegaManager.extractBytes() ));

 Conclusion

Je mettrai à jour cette source pour gérer des fichier plutôt que de simple message.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  •   org
    •   stegano
      •   data
        •   language
          • lang_EN.propertiesTélécharger ce fichier [Réservé aux membres club]623 octets
          • lang_FR.propertiesTélécharger ce fichier [Réservé aux membres club]724 octets
        • couvZola.bmpTélécharger ce fichier [Réservé aux membres club]Voir ce fichier1 204 278 octets
        • environment.propertiesTélécharger ce fichier [Réservé aux membres club]35 octets
        • rsa.keys.1.0.dtdTélécharger ce fichier [Réservé aux membres club]249 octets
        • rsa.keys.xmlTélécharger ce fichier [Réservé aux membres club]Voir ce fichier56 octets
        • sample.txtTélécharger ce fichier [Réservé aux membres club]Voir ce fichier27 896 octets
      •   language
      •   utils
      •   views
        • FPStegano$1.classTélécharger ce fichier [Réservé aux membres club]1 636 octets
        • FPStegano$2.classTélécharger ce fichier [Réservé aux membres club]1 638 octets
        • FPStegano.classTélécharger ce fichier [Réservé aux membres club]8 860 octets
        • FPStegano.javaTélécharger ce fichier [Réservé aux membres club]Voir ce fichier10 018 octets
      • SWTApplication$1.classTélécharger ce fichier [Réservé aux membres club]4 643 octets
      • SWTApplication$10$1.classTélécharger ce fichier [Réservé aux membres club]1 376 octets
      • SWTApplication$10.classTélécharger ce fichier [Réservé aux membres club]4 258 octets
      • SWTApplication$11.classTélécharger ce fichier [Réservé aux membres club]1 121 octets
      • SWTApplication$2.classTélécharger ce fichier [Réservé aux membres club]4 067 octets
      • SWTApplication$3.classTélécharger ce fichier [Réservé aux membres club]1 973 octets
      • SWTApplication$4.classTélécharger ce fichier [Réservé aux membres club]1 119 octets
      • SWTApplication$5.classTélécharger ce fichier [Réservé aux membres club]1 358 octets
      • SWTApplication$6.classTélécharger ce fichier [Réservé aux membres club]2 389 octets
      • SWTApplication$7.classTélécharger ce fichier [Réservé aux membres club]2 885 octets
      • SWTApplication$8.classTélécharger ce fichier [Réservé aux membres club]1 487 octets
      • SWTApplication$9.classTélécharger ce fichier [Réservé aux membres club]1 487 octets
      • SWTApplication.classTélécharger ce fichier [Réservé aux membres club]7 358 octets
      • SWTApplication.javaTélécharger ce fichier [Réservé aux membres club]Voir ce fichier18 230 octets
  • CouvZola.bmpTélécharger ce fichier [Réservé aux membres club]Voir ce fichier1 204 278 octets
  • README.txtTélécharger ce fichier [Réservé aux membres club]Voir ce fichier814 octets
  • sample.txtTélécharger ce fichier [Réservé aux membres club]Voir ce fichier27 896 octets
  • start.bat.torenameTélécharger ce fichier [Réservé aux membres club]73 octets

Télécharger le zip


 Sources du même auteur

Source avec Zip WEBCAM HTTP SERVEUR LIVE SANS JMF
Source avec Zip WEBCAM LIB, VIDEO FOR JAVA, API JAVA JNA POUR AVICAP.DLL, MS...

 Sources de la même categorie

Source avec Zip Source avec une capture CRYPTEUR-DÉCRYPTEUR AES par dragooon74
Source avec Zip UNE IMPLÉMENTATION DE RSA (RIVEST SHAMIR ADLEMAN) AVEC DES ... par lemout
Source avec Zip EVALUER LA QUALITÉ D'UN MOT DE PASSE par Julien39
Source avec Zip CASSER UN MOT DE PASSE par Julien39
Source avec une capture FONCTION DE CRYPTAGE EN JAVA par supergrandebutant

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture CRYPTEUR-DÉCRYPTEUR AES par dragooon74
Source avec Zip UNE IMPLÉMENTATION DE RSA (RIVEST SHAMIR ADLEMAN) AVEC DES ... par lemout
Source avec Zip Source avec une capture DATA ENCRYPTION STANDARD (DES+UI) par lemout
Source avec Zip @$!__STEGACHAR__451 par CHAR As Human
Source avec Zip CHIFFREMENT RSA (RIVEST SHAMIR ADLEMAN) par ciberrique

Commentaires et avis

Commentaire de the_wwt le 29/10/2007 15:03:11

Le jar de xerces est disponible ici :
http://archive.apache.org/dist/xml/xerces-j/Xerces-J-bin.1.4.4.tar.gz

Le jar de la swt contenant les librairies natives est celui-ci:
%ECLIPSE_HOME%\\plugins\\org.eclipse.swt.win32.win32.x86_3.3.1.v3346i.jar

Vous avez juste à copier ces archives dans un répertoire lib au même endroit que le bat ( que vous avez préalablement renomé ).

A noter que le petit plus apporté par la classe RSA Manager est qu'elle permet de chiffrer des tableau de bytes de longueur quelconque même supérieur à la taille de la clé.
En revanche, je ne suis pas mathématiquement sure qu'en partageant le message en chaines de bites égales, le message reste indécryptible... A prouver.

Cordialement,
Pierrick

Commentaire de klm83 le 04/10/2010 13:37:19

Bonjour,

voila un gros déterrage de post!
j'aimerais utilisé votre logiciel de cryptage, mais je n'arrive pas a le lancer.
j'effectue tous les opération préciser précédemment mas je n'arrive pas a le lancer.
pouvez vous m'aidez???

merci d'avance

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

[cryptage] Fusionner un code RSA et un reso TCP [ par ckiki93 ] [cryptage] Fusionner un code RSA et un reso TCP [ par ckiki93 ] Dsl pour le post Vide precedent....1-Les codes sources sont Correct. mon probleme ? 2-je voudrais réaliser le cryptage sur un reseau TCP Serveur Clien SWT [ par julio13 ] Salut à tous,voila ma question :je suis en train de développer un plugin eclipse. Au départ, le plugin est initialisé avec un fichier .xml pour la con Compiler swt en natif avec gcj [ par wazerkahn ] Bonjour j'essaie de compiler du SWT en natif et mon compliateur gcj m 'insulte parcequ'il ne trouve pas la org.eclipse.swt si vous avez une idée ,v Cryptage simple d'une chaine de caracteres [ par fllacer ] Bonjour,je cherche comment crypter simplement une String en Java et la décrypter.ex : String aCrypter = "password";String crypt = cryptage ("pass Cryptage DES en UNICODE [ par neena ] Je vous explique mon gros probleme : jai un prog qui crypte un mot de passe en DES (ça marche) mais le pb cest que les charactéres qu'il me Rafraichissement partiel SWT [ par Trin66 ] Bonjour, j'ai utilisé draw2D et SWT pour faire des objets en java. Ces objets (objet1) contiennent eux-même d'autres objets (objet2). Ces o SWT + MDI + Perspective [ par tristaf ] Hello, je construit une application en java utilisant SWT. Dans un premier temps je voulais avoir une fenetre principale dans laquelle s'ouvriraient d swt + menu + event [ par tristaf ] Bonjour, dans mon application swt je voudrais pouvoir récupérer la source qui déclenche un évenement de choix de menu ... Pour &#2 Problème d'impression avec SWT et Draw2d [ par lofwyr ]


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,733 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales