Vérifier les codes-sources
des traductions de PGP 5.5.3, PGP 6.5.1 et ScramDisk 2.02H
 

PGP 5.5.3fr, PGP 6.5.1fr et ScramDisk 2.02H-fr ont été traduits bénévolement par Fabien Petitcolas, Raphaël Quoilin et Michel Bouissou. Ceux-ci ont travaillé avec l'accord des auteurs des versions anglaises mais en dehors de leur contrôle (les auteurs anglais n'ont tout simplement pas le temps d'examiner le code-source français puis le compiler). 

Ces traducteurs français sont dévoués depuis longtemps à la promotion de la cryptographie libre et ceux qui les connaissent ne sauraient les soupçonner une seconde d'avoir placé une porte arrière dans ces versions françaises.

Mais peut-être que vous êtes paranoïaque et que vous ne faîtes confiance qu'à Philip Zimmermann (responsable du développement américain de PGP) et Ståle Schumacher Ytteborg (qui a scanné le code américain de PGP et en a fourni la version électronique internationale), ou à Aman et Sam Simpson (les auteurs de ScramDisk) ?
Peut-être que vous voulez être certain que PGP 5.5.3fr, PGP 6.5.1fr et ScramDisk 2.02H-fr sont aussi sûrs que les originaux PGP 5.5.3i, PGP 6.5.1 et ScramDisk 2.02H ?

Alors, il vous faut examiner les codes-sources des versions anglaise et française en les comparant et en identifiant les changements opérés par les traducteurs.
 
 

Le code-source et le binaire

Le logiciel que vous utilisez sur votre ordinateur se présente sous la forme de plusieurs programmes exécutables (extension "EXE") complétés par des bibliothèques de fonctions (extension "DLL") ; ce sont les fichiers binaires qui sont compris et exécutés par le microprocesseur de votre ordinateur. L’ordinateur ne comprend que ce binaire car il ne comprend que le langage "machine".

Ce fichier en langage machine est incompréhensible pour un programmeur. Aussi, pour mettre au point leur logiciel, les programmeurs travaillent sur un langage dit "de haut niveau", tels C ou C++. Le "code-source" est la liste de commandes écrites en langage de haut niveau que doit exécuter l’ordinateur. 

Voici par exemple un passage du code-source de PGP 2.63i :
 

#define SUBTITLES_FILE "language.txt"
#define LANG_INDEXFILE "language.idx"

#define STRBUFSIZE  2048

char language[16] = "en"; /* The language code, defaults to English */
static char *strbuf;
static char lang[16];  /* readstr sets this to the language id of
       the msg it last read */
static int subtitles_available = 0;
static int line = 0;
/*      subtitles_available is used to determine if we know whether the special
   subtitles_file exists.  subtitles_available has the following values:
   0  = first time thru, we don't yet know if subtitles_file exists.
   1  = we have already determined that subtitles_file exists.
   -1 = we have already determined that subtitles_file does not exist.
 */

#define NEWLINE  0

Une fois vérifié, le code-source est converti par le "compilateur" en fichiers binaires compréhensibles par l’ordinateur. 

Voici par exemple un passage du fichier binaire de PGP 2.63i (fichier "pgp.exe") :




Comment comparer le code-source français et le code-source original ?

Il vous faut utiliser un logiciel de comparaison de fichiers qui va produire des fichiers DIFF et vous indiquer toutes les modifications apportées au code-source original. ComponentSoftware Diff (CSDiff) freeware pour Windows permet cela.

Récupérez le code-source anglais puis le code-source français :
Sources de PGP 5.5.3i
Sources de PGP 5.5.3fr
Sources de PGP 6.5.1i
Sources de PGP 6.5.1fr
Sources de ScramDisk 2.02H
Sources de ScramDisk 2.02H-fr

Dézippez-les dans des répertoires différents.
Lancez CSDiff, sélectionnez les fichiers, et à l'aide des flèches, allez de modification en modification comme ceci :


Vous verrez ainsi tout ce qui a été "retouché" dans la version française.
 
 

Comment compiler le code-source ?

Une fois que vous avez examiné le code, si vous êtes *vraiment* paranoïaque ;-) vous pouvez le compiler vous-même grâce aux outils GNU de Cygnus :
Compilateur gratuit GNU pour Windows : http://sourceware.cygnus.com/cygwin/
(Le code-source de Cygwin est lui aussi disponible).

Pour compiler PGP 6.5.1fr, il est conseillé d'utiliser les outils Microsoft.

Quelques connaissances de l'informatique seront aussi ici indispensables.
 
 
 


Mise à jour : janvier 2000
© 1997, 1998, 1999, 2000, pplf 14A0 4A67 0431 2402 684D 6EBA 537F 664D 3F80 0D58
pgpenfrancais@bigfoot.com


accueil  |  présentation  |  sommaire  |  histoire  |  manuels français  |  mode  d'emploi  |  news  |  autre crypto