Qu’est-ce que la cryptographie ? 2/2

LA CRYPTOLOGIE EN INFORMATIQUE

Suite à la partie 1, qui définissait entre autres la cryptanalyse et la cryptographie, je vous propose de continuer sur notre portée…

NSFS. CET ARTICLE CONTIENT UN ABUS DE SMILEYS DE CE TYPE :

:mrgreen:

Nous y voilà, la deuxième partie de notre article. Enfin! (diriez vous avec hâte de lire la suite!) :mrgreen: Donc après vous être contenté de ce petit bonus croustillant, je vous propose de voir deux logiciels pour chiffrer vos documents. Ensuite, comme d’habitude, un super bonus ! :D

Previously on…

Dans notre première partie, nous avons défini de façon TRÈS générale la cryptologie et nous avions vu, très brièvement je le reconnais , deux méthodes de stéganographie. Je ne pense pas qu’il soit nécessaire de s’étendre sur le sujet pour la suite de l’article. Car nous nous pencherons surtout sur l’aspect informatique (hé quand même c’est un blog tourné vers l’informatique :P ). C’est pourquoi je ne proposerai pas ici d’historique des différentes méthodes de chiffrage. Cela étant dit, je n’oublie pas les petits curieux donc je proposerai à la fin de l’article des liens pour se documenter mais aussi un article sur mon blog personnel soapclub.wordpress.com. ;)

Ayant tout dit, passons à la suite.

Les messages épistolaires numériques…

Vous utilisez aussi le mail ? Ben ça tombe bien car moi je vais vous parler de PGP : Pretty Woman Good Privacy. Cette méthode permet de chiffrer vos mails. N’utilisant pas du tout cette méthode, un peu obsolète à mon goût, je ne peux donc vous en parler d’avantage et je vous suggère de vous renseigner sur ce site (site officiel bien sûr).

J’ai trouvé ça bien de vous dire que ça existait. :mrgreen: Comme dirait Serial : O ka zou ! :mrgreen:

AxCrypt

Vous voulez chiffrer un document, un dossier…AxCrypt est là pour vous ! Mais vous connaissiez déjà ce logiciel bande de petits veinards ! Et grâce au petit bonus de l’article précédent hein ?! Je ne vous en veux pas car vous n’avez encore rien vu avec ce logiciel ! :D L’installation est très classique :) Il reste très simple d’utilisation (c’est sa force vis à vis d’autres softs d’ailleurs). Vous sélectionnez votre article, clic droit, et là si vous avez bien installé votre AxCrypt adoré ( :mrgreen: ) vous voyez AxCrypt, vous cliquez (bien sûr) dessus et vous choisissez l’option que vous voulez. Dans mon cas, je clique sur Crypter, j’entre le mot de passe de mon choix, et ça y est !

Conseil d’ami : Quand vous l’utilisez pour la première fois de votre vie, et que vous ne comprenez pas trop comment ça marche, essayez, non pas de chiffrer votre dossier TOP CONFIDENTIEL CODES NUCLEAIRES, mais un simple fichier, du genre toto.doc (où comme par hasard il y a la tête à toto). ;)

Petite astuce de Papy Nerdyprog : Quand vous voulez accéder à votre document deux possibilités s’offrent à vous :

  • Vous déchiffrez, c’est à dire mot de passe et hop vous avez votre document non protégé.Et après modifications, hop on re-chiffre…
  • Vous ouvrez le dossier, c’est à dire double-clic, entrer mot de passe. Et après modifications, hop…vous fermez ! (Et hop hop sofinco ! :mrgreen: ) Eh oui ! Vous n’aurez pas besoin de refaire la procédure (décrite tout à l’heure) pour chiffrer votre document.

Il y a d’autres astuces mais ce serait moins marrant (et ce ne serait plus un article !) si je vous fais une liste des astuces possibles (non je n’ai pas la flemme :P )

Je tiens à préciser que vous n’êtes pas obligé de choisir AxCrypt, y a en a plein. Celui que j’ai choisi marche notamment sous Linux (bien que je dois vous avouer que je ne l’ai pas encore testé sous Linux :mrgreen: )

TrueCrypt

Celui-ci est une bombe, je vous assure ! Pour preuve : lisez cet article (les non-anglophones sortez vos traducteurs/dicos :mr green: )

Seulement voilà, il est plus “compliqué” que l’autre. Je dis compliqué entre guillemet car vous allez vite vous aperçevoir (surtout si vous utilisez DaemonTools ) qu’il est simple d’utilisation ! En fait, le concept est différent, ici nous montons des disques virtuels qui seront chiffrer une fois démontés. Cela signifie que tout fichier placé dans ces disques seront inaccessibles sans le mot de passe. Je vous ai sélectionné un beau didactiel les gars ! :D Je vais tout de même vous donner des indications : Le setup se télécharge sur le site officiel (cliquez sur Download) et il s’agit d’une installation classique. :)

BONUS TRUE CRYPT SHORTCUT

Afin de donner une plus-value à mon article :mrgreen: je vais vous donner un petit bonus ! Pour cela vous devez créé un fichier .bat (Un éditeur de texte suffit :) )

Dans ce dernier vous copierez ce code :

@echo off
REM
echo Monte Disque Nom du disque sur H:
"C:\Program Files\TrueCrypt\TrueCrypt.exe" /cache /quit /volume G:\nom de mon disque.tc /letter H:

Explications :
G:\nom de mon disque.tc G:\ est là où se trouve le disque virtuel crypté, si vous l’avez mis dans G:\nom de mon disque.tc (Bien entendu si vous avez nommé votre disque : “disque-perso” vous noterez dans le code “disque-perso.tc”

letter H: Ici, on indique le disque est monté sur la lettre H:/ vous pouvez évidemment changer (mais attention au choix des lettres certaines sont réservées pour Windows, comme C:/ par exemple).

NDLR : Le warning en début d’article est de l’humour. A ne pas prendre au sérieux. NSFS signifie Not Safe For Sanity. (NSFW signifie Not Safe For Work et généralement on l’utilise pour les contenus explicites comme c’est expliqué ici).

Publicités

XMLHttpRequest()

Voici le code complet de la requête XMLHttpRequest(); 🙂

             /* ********************************************************************************** */
             /*        Script complet de gestion d'une requête de type XMLHttpRequest              */
             /* ********************************************************************************** */
function getXMLHttpRequest() {
	var xhr = null;
	
	if (window.XMLHttpRequest || window.ActiveXObject) {
		if (window.ActiveXObject) {
			try {
				xhr = new ActiveXObject("Msxml2.XMLHTTP");
			} catch(e) {
				xhr = new ActiveXObject("Microsoft.XMLHTTP");
			}
		} else {
			xhr = new XMLHttpRequest(); 
		}
	} else {
		alert("Votre navigateur ne supporte pas l'objet XMLHTTPRequest...");
		return null;
	}
	
	return xhr;
}

[HTML5] La balise canvas et la balise img

Actuellement, HTML attire beaucoup de gens car il permet de faire des jeux (comme BrowserQuest). Très intéressant n’est-ce pas ? Eh oui, moi aussi je me suis laissé tenté ! :mrgreen: Cela étant dit, je me suis trouvé bien embêté ces derniers jours avec ma balise <canvas> car jusqu’à présent à ma connaissance elle ne me permettait que de tracer des dessins, un truc de fou ! :)Certes un truc de fou…Mais…Moi je voulais importer une image. Et là vous intervenez : « Ben suffit de mettre une balise <img> ! » Oui mais pas n’importe où et n’importe comment ! 😮

Inclure la balise <canvas>

La balise canvas, balise nouvelle génération, permet d’inclure du dessin, des objets… Je vous conseille de faire un petit tour sur le site MDN (Mozille Developer Network) pour vous document sur cette balise.

En résumé quand vous créez votre site internet, voici sa structure :

<!DOCTYPE html>
<html>
<head>
<title>You've been trolled uh oh</title>
<link rel="stylesheet" type="text/css" href="css/style.css" />
</head>
<body>
</body>
</html>

Vous insérez votre balise <canvas> dans <body> comme ceci :

<body>
<canvas></canvas>
</body>

Cela dit je vous conseille sans plus tarder de mettre ceci :

<canvas>Votre navigateur ne supporte pas HTML5, veuillez le mettre à jour.</canvas>

Ainsi, si votre naviguateur ne visualise pas le canevas, vous saurez si c’est parce que votre code ne fonctionne pas ou si votre navigateur est obsolète (dans ce cas là eh bien il ne reste plus qu’à le mettre à jour hihi :P)

Ce qui vous donne au final pour l’instant cela :

<!DOCTYPE html>
<html>
<head>
<title>You've been trolled uh oh</title>
<link rel="stylesheet" type="text/css" href="css/style.css" />
</head>
<body>
<canvas id="canvas">Votre navigateur ne supporte pas HTML5, veuillez
le mettre à jour pour jouer.</canvas>
<script>
window.onload = function() {
	var canvas = document.getElementById('canvas');
	var ctx = canvas.getContext('2d');

	// Nous allons insérer nos tests ici
}
</script>
</body>
</html>

❓ Mais d’où sort ce code :

<script>
window.onload = function() {
	var canvas = document.getElementById('canvas');
	var ctx = canvas.getContext('2d');

	// Nous allons insérer nos tests ici
}
</script>

Eh bien, ce code est du…Javascript !! Il permet de déclarer l’objet canvas sinon vous ne verrez rien sur votre ordinateur ! Bon je vous le dis tout de suite vous n’êtes pas obligé de suivre la structure que j’ai choisie. Puis, il y a une façon plus…comment dire… »simple » (?) :

<script>
	//On récupère l'objet canvas.
	var canvas = document.getElementById('canvas');.
	//On récupère le contexte 2D.
	var context = canvas.getContext('2d');

</script>

Là, tout de suite c’est plus simple ! 😀

Bon, bon admettons… Mais et mon image suffit d’une balise dans body non ?
Et bien l’ennui, et vous le verrez si vous en faîtes l’expérience, c’est que l’image ne sera pas lié au canvas. Tout comme si votre balise p est à coté de la balise a :

<p>balise paragraphe</p>
<a>balise a</a>

La balise a ne fera jamais partie de la balise p.
Bon d’accord j’ai compris vous voulez le code allez voici mes braves :

<html>
<head>
<title>.: Jeu :.</title>
<meta charset="utf-8">
<style>
body
{
background:#EBEBEB;
}
</style>

</head>
<body>
     <!-- Creation of the canvas -->
	 <!-- First, create <canvas> -->

		<canvas id="canvas" width="800" height="600" oncontextmenu="return false;" onselectstart="return false;">
		 <img id="background" src="images/monimage.png"/>
		  </canvas>
	 <!-- Then, create the js file -->
	<script>
	var canvas = document.getElementById('canvas');
	var context = canvas.getContext('2d');
	var htmlImg = document.getElementById("html5Img");
	context.drawImage(background, 0, 0);

</script>
</body>
</html>

N’hésitez pas à nous contacter pour plus d’informations ! 😉

En attendant…

…Godot

 

… mon article sur l’Arduino ( oui je me suis acheté l’Arduino 😀 ), je vous propose deux sites assez bien démontrant les capacités de l’Arduino.

Ceci dit, je vous conseille de, bien sûr, vous acheter tout le matériel proposé mais surtout de bien lire les docs, et de bien regarder ce que vous allez acheter, et de prévoir un coin soudure o ka zou.

+1 to : NOTCH

Le 25 mai c’est la journée international du Geek ou encore appelée  « Geek Pride Day ». Pour marquer cet évènement particulier, je vais vous parler d’un geek un vrai, j’ai nommé :

MARKUS Persson

ALIAS « NOTCH »

Pour commencer petite présentation rapide, il est créateur de jeux indépendants et est très investit dans cette communauté, il dirige le  studio MOJANG. Son plus gros succès ? Évidemment MINECRAFT, le seul jeu vidéo où le soleil et la lune sont carrément carrés vendu à 6 millions de copies en version PC mais qui est aussi disponible sous Android,iOS et récemment décliner en version Xbox 360.

❓ Pourquoi NOTCH ?

Car il comme je vous le disais dans l’introduction de ce post, il n’est pas seulement un geek parce qu’il code et qu’il est passionné par les jeux vidéo mais aussi parce qu’il a la philosophie du geek, et il la déjà démontrée plusieurs fois : Par exemple, quelqu’un lui a demandé s’il pouvait avoir une copie de MINECRAFT gratuitement car il n’avait pas assez d’argent. NOTCH lui a directement répondu : Pour l’instant tu le télécharges illégalement sur internet puis quand tu auras de l’argent tu achèteras une copie (Grand Seigneur :mrgreen: ). Et ensuite plus récemment par le biais de son compte Twitter (vous pouvez le follow ICI) il nous a encore montré ce en quoi il croyait .

Quand je parle de philosophie du geek, cela correspond à un état d’esprit que partagent, ou que devraient partager, tous les geek du monde et qui, en tout cas, me semble hyper importante (et qui est une des idées principales de la philosophie du geek) : c’est la volonté de garder internet LIBRE, ne pas être obligé d’être ficher, etc …(cf. article Pourquoi et comment utiliser internet anonymement ?).

Pour en revenir à NOTCH il a mis en ligne: un des mail qu’il a reçu et sa réponse. Les voici :

Pour les non anglophones, le premier mail vient de la boite AdRoll qui est spécialisé dans le « reciblage publicitaire » en gros, il l’explique dans le mail, il propose à NOTCH de traquer les visiteurs du site MINECRAFT, de les classer en différente catégorie et enfin d’afficher des pubs, approprié à ces utilisateurs, sur d’autres sites web qui les encouragerait à acheter les produits de la société MOJANG.

Ensuite il essaye de convaincre NOTCH en lui disant qu’il y a 30 millions de personnes inscrites sur le site web MINECRAFT dont 6 millions ont acheté le jeu il lui pose donc la question  » Eh ça vous dirait de toucher un pourcentage sur ces 24 millions d’utilisateurs qui n’ont pas acheté le jeu ??? « . Eh ouais ! Bienvenue dans le monde de la pub sur internet.  😦

Et la voici la réponse de NOTCH  « Ecoutez bien, on ne va pas traquer nos visiteurs à travers d’autres sites internet. C’est un mauvais comportement. Allez-vous-en ! »

            Personnellement je n’ai qu’un mot à dire RESPECT. Bien qu’il aurait pu gagner pas mal d’argent avec cette offre il a préféré la refuser pour défendre une idée que l’on devrait tous défendre.(ref. ACTA SOPA PIPA CISPA et toutes les autres lois qui viendront …).

Pour en savoir plus sur toutes ces lois : par ici, ici, ici et là.

Qu’est-ce que la cryptographie ? 1/2

[MàJ 30/05/12, remerciements à nerosson]
Suite à l’article cryptanalyse & cryptographie, qui relatait l’enjeu actuel de la cryptanalyse et la cryptographie,  je vous propose de définir un peu ce que c’est la cryptanalyse, la cryptographie, etc. Nous verrons donc un peu de vocabulaire, puis ensuite quelques pratiques informatiques pour garder ses dossiers cryptés.

LA CRYPTOLOGIE

De nos jours, nous pouvons observer que la cryptologie est quasiment indissociable de l’informatique. Cependant, il faut distinguer cryptologie, cryptographie et cryptanalyse. L’amalgame est vite fait. La cryptologie est la science des écritures secrètes, des documents chiffrés. Cette dernière comporte deux branches : la cryptographie, et la cryptanalyse. Mais n’oublions pas la stéganographie, qui en grossissant un peu le trait, et avec les acceptions modernes, fait partie des techniques pour garder un texte secret..

La cryptographie traditionnelle est l’ensemble des techniques de chiffrement qui assurent l’inviolabilité de textes et, en informatique, de données. Elle permet, par exemple, de transmettre un message de manière confidentielle. Dans la cryptographie moderne, les transformations en question sont des fonctions mathématiques, appelées algorithmes cryptographiques, qui dépendent d’un paramètre appelé clef (ou clé).

Figure 1: Ce que permet la cryptographie.(Image sous licence Creative Commons BY-SA 3.0)

Cryptographie symétrique
La cryptographie symétrique est très ancienne. Elle nécessite uniquement d’une clé privée que l’on garde pour soi. Le seul souci est de pouvoir transmettre la clé à son destinataire sans qu’elle soit diffusée publiquement.
Cryptographie asymétrique
Contrairement à la cryptographie symétrique, elle nécessite une clé publique et une clé privée. La clé publique est diffusée et elle permet de chiffrer. Tandis que la clé privée, gardée secrète et elle permet de déchiffrer.

Contrairement au déchiffrement qui consiste à rétablir le texte clair en utilisant des documents et des conventions préétablies, la cryptanalyse vise à rétablir le texte clair par la seule analyse d’un (ou de plusieurs) cryptogrammes.

La stéganographie est une technique qui est très liée à la cryptographie car le but recherché est le même : communiquer un message sans qu’il soit lu par un tiers. Contrairement à la cryptographie qui est l’art de chiffrer un message, la stéganographie est l’art de de dissimuler un message. L’encre invisible est un bon exemple de la stéganographie. Deux exemples de stéganographies sont très connus : La scytale de Sparte et l’histoire des crânes rasés.

La scytale de Sparte
La plus connue des stéganographies, datant du VIème siècle avant J.C., consistait à enrouler une bande de papier autour d’un cylindre, puis à écrire le message sur la bande. Ce cylindre est appelé scytale de Sparte. Une fois déroulé, le papier était envoyé au destinataire qui, dès lors qu’il possédait le diamètre du cylindre, pouvait déchiffrer le message. Par exemple, avec un diamètre 5, « alexandre et william » devient : « aaellwiedeiaxrtlm ». On parle aussi de méthode assyrienne.


Figure 4: Scytale de Sparte. (source : http://codes.secrets.free.fr/)

Crânes rasés
Dans l’Antiquité, on rasait la tête de l’esclave, on tatouait son message sur sa tête. Ensuite, on l’envoyait chez le destinataire de message et le voyage était assez long pour que les cheveux aient repoussés. Ainsi l’esclave devait se raser la tête à l’arrivée afin que le destinataire puisse lire le message.

Afin de protéger le message, on lui applique une transformation qui le rend incompréhensible. C’est ce que l’on appelle le chiffrement, qui, à partir d’un texte en clair, donne un texte chiffré. Le texte chiffré est appelé cryptogramme (cyphertext en anglais). Inversement, le déchiffrement est l’action qui permet de reconstruire le texte en clair à partir du texte chiffré.

ATTENTION : Les termes chiffrage ou cryptage sont incorrects. Par contre, les termes déchiffrage et décryptage sont corrects (mais on ne vous conseille pas d’utiliser ces termes). En effet, on parle de décryptage quand il s’agit de trouver le message sans avoir la clé. Il est donc évident que ce terme n’accepte pas d’antonyme. Bref, évitez les mots finissant en « age ». :mrgreen:

Un algorithme est une série d’instructions que l’homme suivra pour résoudre un problème ou dans le cas d’algorithmes complexes l’ordinateur exécutera afin de résoudre un problème (figure 2). En fait, nous-mêmes, nous utilisons des algorithmes dans la vie courante, voici deux exemples :

Meuble en kit >> Notice de montage >> Cuisine équipée.

Farine, œufs, chocolat, etc…. >> Recette >> Moelleux au chocolat.

Je vous propose un exemple plus concret : La technique d’Euclide pour trouver le PGCD, appelé « Algorithme d’Euclide » (remarquez je ne pouvais pas trouver mieux comme exemple :P)

Soit a et b des entiers naturels non nuls et a > b.


A SUIVRE.

♫ Tadadadaaam ♫ 😀

ATTENTION : Ce bonus contient un :SPOILER:

En attendant la sortie du prochain article, qui portera sûrement sur les différentes manières de crypter sous Windows ses fichiers, nous vous proposons un aperçu juteux. :mrgreen:
Nous parlerons, entre autres (ben oui je vais tout vous raconter ça servirait à quoi hein ? :P), d’AxCrypt, un bon petit logiciel que vous pouvez déjà télécharger en attendant la suite 🙂 (ce n’est pas parce que c’est gratuit que ce n’est pas efficace)

VOUS AVEZ ADORÉ ? PASSEZ DONC A LA PARTIE 2 !

IPV6 – Les nouvelles adresses IP

IPV6 !!! Mais quelle mouche l’a piquée ? Pourquoi cet article ? Oui pourquoi puisque ce sujet ne date pas d’hier. En plus, ça fait belle lurette qu’il a été activé sur nos ordinateurs (pas si longtemps que ça : Juin 2011). Eh bien parce que l’IPv6 a mis quand même environ dix ans avant de sortir et parce qu’il y a beaucoup de choses à dire et que c’est très intéressant. Nous vous parlerons de manière générale avant de voir comment activer sur vos vieilles machines l’IPV6. Pour finir avec un petit bonus !!

😉
Lire la suite

Linux ce cancer qui vous veut du bien

Alors que très récemment, Microsoft annonçait son soutien pour l’OpenSource (bon d’accord pas si récent que ça), une phrase est ressorti de nulle part comparant Linux à un cancer… Cela nous a donné l’idée d’un article sur Linux ! Linux est un sujet dont on pourrait en parler pendant des heures et des heures ! Voyons donc ce qu’on peut retenir de Linux et étudier un peu les lignes de commandes…

Lire la suite