summaryrefslogtreecommitdiffstats
path: root/doc/fr/FAQ
blob: 48c28ae76ee28a8b21c6e09586553c4bbd5a9b42 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
GNUPG : FOIRE AUX QUESTIONS

Version : 1.2
Dernière modification : 10 septembre 2001
Maintenu par : Nils Ellmenreich <nils 'at' gnupg.org>
Traduction : Gilbert Fernandes <gilbertf 'at' posse-press.com>

Ce document est la FAQ de GnuPG. La dernière version HTML est
disponble ici : <http://www.gnupg.org/faq.html>

L'index est produit automatiquement. Des erreurs peuvent donc
s'y trouver. Toutes les questions ne seront pas situées dans leurs
sections afférentes. Les suggestions quand à l'amélioration de cette
FAQ seront les bienvenues.

Veuilez envoyer vos additions et corrections au mainteneur de la FAQ.
Il serait plus pratique si vous pouviez fournir une réponse à inclure
directement dans la FAQ. Toute aide sera fortement appréciée.

Veuillez ne pas nous envoyer de message du type : "Ceci devrait
être une FAQ, quelle est la réponse ?". Si la réponse ne se trouve
pas dans la FAQ c'est que la question n'a pas été considérée.
Dans ce cas, recherchez dans les archives de la liste de
distribution par email.




 1. GENERAL
   1.1) Qu'est-ce que GnuPG ?
   1.2) GnuPG est-il compatible avec PGP ?

 2. SOURCES D'INFORMATION
   2.1) Où puis-je trouver plus d'informations ?
   2.2) Où puis-je obtenir GnuPG ?

 3. INSTALLATION 
   3.1) Sur quels systèmes fonctionne GnuPG ?
   3.2) Quel collecteur d'entropie dois-je utiliser ?
   3.3) Comment puis-je inclure le support du RSA et de l'IDEA ?

 4. UTILISATION
   4.1) Quelle est la taille de clef recommandée ?
   4.2) Pourquoi la création de clefs est-elle aussi longue ?
   4.3) Pourquoi tout est si lent quand je travaille sur un système distant ?
   4.4) Quelle est la différence entre options et commandes ?
   4.5) Je ne peux pas effacer un userid car il a déjà été effacé dans mon
	trousseau de clefs publiques ?
   4.6) Que sont la confiance, la validité et l'ownertrust ?
   4.7) Comment puis-je signer un fichier de patch ?
   4.8) Où se trouve l'option "encrypt-to-self" ?
   4.9) Comment puis-je me débarasser de la version et du champ de commentaire
	dans la version "armor" des messages ?
   4.10) Que signifie le message "You are using the xxxx character set" ?
   4.11) Comment puis-je obtenir la liste des keyid ayant servi à
	chiffrer un message ?
   4.12) Je ne peux plus déchiffrer mon message chiffré symétriquement (-c) avec la nouvelle
version de GnuPG ?
   4.13) Comment puis-je utiliser GnuPG en environnement automatisé ?
   4.14) Quel client email puis-je utiliser avec GnuPG ?
   4.15) On ne peut pas avoir une librairie gpg ?
   4.16) J'ai produit avec succès un certificat de révocation, mais comment dois-je
	le transmettre aux serveurs de clefs ?

 5. QUESTIONS SUR LA COMPATIBILITE
   5.1) Comment puis-je chiffrer un message avec GnuPG pour que PGP soit capable de le déchiffrer ?
   5.2) Comment migrer de PGP 2.x vers GnuPG ?
   5.3) (supprimé)
   5.4) Pourquoi PGP 5.x n'est pas capable de déchiffrer les messages pour certaines clefs ?
   5.5) Pourquoi PGP 5.x ne peut vérifier mes messages ?
   5.6) Comment puis-je transférer mes valeurs de confiance de PGP vers GnuPG ?
   5.7) PGP n'aime pas ma clef privée.

 6. PROBLEMES ET MESSAGES D'ERREUR
   6.1) Pourquoi GnupG me dit sans cesse "Warning  : using insecure memory!" ?
   6.2) Le support des fichiers de grande taille ne fonctionne pas ..
   6.3) Dans le menu d'édition les valeurs de confiance ne sont pas affichées
	correctement après la signature des uid : pourquoi ?
   6.4) Que signifie "skipping pubkey 1: already loaded" ?
   6.5) GnuPG 1.0.4 ne tient pas compte de ~/.gnupg ...
   6.6) Une signature ElGamal ne vérifie plus rien depuis la 1.0.2 ..
   6.7) Les anciennes versions de GnuPG ne vérifient pas les anciennes
	signatures ElGamal
   6.8) Lorsque j'utilise --clearsign le texte en clair comporte parfois des
	tirets supplémentaires : pourquoi ?
   6.9) Que signifie "can't handle multiple signatures" ?
   6.10) Si je soumet une clef au serveur de clefs, rien ne survient !
   6.11) J'obtiens un "gpg: waiting for lock ..."
   6.12) Les anciennes versions de GnuPG (e.g. 1.0) ont des problèmes
	avec les clefs de GnuPG récents ..
   6.13) Avec GnuPG 1.0.4 j'obtiens un "this cipher algorithm is deprecated ..."
   6.14) Les dates sont affichées par ????-??-??, pourquoi ?
   6.15) J'ai encore un problème, dois-je produire un message de bogue ?
   6.16) Pourquoi GnuPG ne supporte pas les certificats X.509 ?

 7. SUJETS AVANCES
   7.1) Comment tout cela fonctionne-t-il ?
   7.2) Pourquoi certaines signatures avec une clef ELG-E sont valides ?
   7.3) Comment tout le système de confiance fonctionne au juste ?
   7.4) Quel est ce genre de sortie : "key C26EE891.298, uid 09FB: ...."?
   7.5) Comment interpréter certaines sorties informatives ?
   7.6) Les lignes d'en-tête des messages font-elles parties des éléments signés ?
   7.7) Quelle est la liste des algorithmes préférés ?
   7.8) Comment puis-je changer la liste des algorithmes préférés ?

 8. REMERCIEMENTS



1. GENERAL

1.1) Qu'est-ce que GnuPG ?

GnuPG signifie GNU Privacy Guard et <http://www.gnupg.org> est
l'outil GNU destiné aux communications protégées par chiffrement,
ainsi que le stockage protégé d'informations. Ce programme peut
être utilisé pour chiffrer des données et produire des signatures
numériques. Il comprend une gestion avancée des clefs et respecte
le standard Internet proposé OpenPGP comme décrit dans le
RFC 2440 : <http://www.gnupg.org/rfc2440.html> et il se destine
à une parfaite compatibilité avec le PGP produit par NAI Inc.

1.2) GnuPG est-il compatible avec PGP ?

En règle générale, oui. GnuPG et les distributions récentes de PGP
devraient respecter le standard OpenPGP et fonctionner de concert.
Il existe toutefois quelques problèmes d'interopérabilité. Consultez
les questions 5.1ff pour plus de détails.

2. SOURCES D'INFORMATION

2.1) Où puis-je trouver plus d'informations ?

Voici une liste de ressources en ligne :

<http://www.gnupg.org/docs.html>

Cette page regroupe la page de documentation GnuPG. Vous pouvez consulter
les HOWTO ainsi que le manuel de GnuPG :  le GNU Privacy Handbook
actuellement disponible en anglais, espagnol et russe. Ce dernier offre par
ailleurs une présentation étendue de GnuPG. Vous trouverez aussi des
documentations expliquant la conversion de PGP 2.x vers GnuPG.

<http://lists.gnupg.org> 

Vous trouverez ici une archive en ligne des listes de distribution par
courrier électronique de GnuPG. La liste la plus intéressante sera
probablement gnupg-users où toutes les questions en rapport avec
l'utilisation de GnuPG se trouvent rassemblées. Si le développement
vous intéresse vous consulterez avec joie la liste gnupg-devel et
vous pourrez également prendre contact avec les développeurs.

S'IL-VOUS-PLAIT !

Avant de poster sur une liste, veuillez lire avec attention la FAQ et
toutes les documentations disponibles. D'autre part, vous devez ensuite
consulter les archives afin de découvrir si votre question n'a pas été
déjà posée et résolue. Vous épargnerez des pertes de temps et la
liste pourra se concentrer sur les problèmes qui n'ont pas encore
été résolus.

La distribution des sources de GnuPG comprend également un
sous-répertoire /doc qui contient des documentations supplémentaires
et ces informations seront précieuses aux hackers (pas beaucoup aux
utilisateurs habituels, sauf les plus curieux).

2.2) Où puis-je obtenir GnuPG ?

Vous pouvez télécharger GNU Privacy Guard depuis son FTP primaire :

<ftp.gnupg.org>

Ou depuis l'un des mirroirs :

<http://www.gnupg.org/mirror.html>

La version actuelle est la version 1.0.6 et nous vous encourageons à migrer
vers cette version rapidement : elle corrige des bogues et améliore le
fonctionnement du programme, ainsi que votre sécurité de fait.


3. INSTALLATION 

3.1) Sur quels systèmes fonctionne GnuPG ?

GnuPG devrait fonctionner sur tous les Unices ainsi que Windows (95, 98..) et les variantes
NT. Une liste de systèmes d'exploitation fonctionnels se trouve à :

<http://www.gnupg.org/gnupg.html#supsys>

3.2) Quel collecteur d'entropie dois-je utiliser ?

Les "bons" générateurs de nombres aléatoires sont cruciaux pour la sécurité de vos
chiffrements. Les différents systèmes d'exploitation proposent des valeurs
aléatoires de qualité variable. Linux et les systèmes *BSD produisent généralement
de bonnes valeurs grâce au /dev/random et cette méthode devrait rester la
méthode de choix pour ces systèmes. Les utilisateurs de Solaris devraient opter
pour pe paquetage SUNWski afin de disposer d'un /dev/random. Dans ces cas,
vous devriez utiliser l'option --enable-static-rnd=linux. D'autre part, il existe également
un dispositif au niveau kernel pour la production de valeurs aléatoires développé
par Andi Maier :

< http://www.cosy.sbg.ac.at/~andi>

Ce logiciel est au stade de beta : vous ne l'utilisez que sous votre seule
responsabilité !

Sur les autres systèmes, l'utilisation de l'EGC ou "Entropy Gathering Daemon"
se montre un bon choix. C'est un daemon écrit en Perl qui surveille l'activité du
système et produit des hachages permettant d'obtenir des valeurs aléatoires.
Vous devriez en consulter la page de téléchargement depuis :

<http://www.gnupg.org/download.html>

Pour l'utiliser vous devrez utiliser l'option --enable-static-rnd=egd

Si les options ci-dessus ne fonctionne pas, vous pourrez utiliser le producteur
d'entropie "unix". Il est *TRES* lent et il devrait être évité lorsque possible.
Sa qualité d'entropie laisse vraiment à désirer et vous ne devrez jamais
l'utiliser dans la protection de données sensibles.

3.3) Comment puis-je inclure le support du RSA et de l'IDEA ?

RSA se trouve inclus dans GnuPG depuis la version 1.0.3 et supérieures.

La distribution officielle de GnuPG ne comprend pas l'IDEA à cause
d'une restriction par brevêt. Le brevêt devrait expirer en 2007 et nous
attendons cette date pour l'inclure dans GnuPG.

Toutefois, il existe des modules officieux qui permettent de l'inclure
même dans les versions de GnuPG avant cette date. Ces modules
sont disponibles depuis :

<ftp://ftp.gnupg.org/pub/gcrypt/contrib/>

Recherchez 'idea.c'

Les directives de compilation se trouvent dans les fichiers "headers" de
ces fichiers. Vous pourrez ensuite ajouter la ligne suivante à votre
fichier ~/.gnupg/options :

    load-extension idea 

4. USAGE

4.1) Quelle est la taille de clef recommandée ?

Nous vous recommandons un minimum de 1024 bits pour les clefs de type
DSA et également pour les signatures simples de type ElGamal. La taille
du hachage est probablement le lien le plus faible si la taille de la clef
augmente à plus de 1024 bits. Les clefs de chiffrement peuvent avoir
des tailles supérieures, mais vous devriez alors vérifier le fingerprint
de la clef de cette manière :

gpg --fingerprint --fingerprint <user ID>

Comme pour les algorithmes de clef, vous devriez vous en tenir aux
valeurs par défaut (i.e. les chiffrements ElGamal avec signature
DSA). Une clef de signature ElGamal comporte les désavantages
suivants : si la signature est grosse, il est difficile de créer une
clef correspondante utile pour les signatures et capable de résister
aux attaques réelles, et vous n'obtiendrez pas de sécurité
supplémentaire face au DSA. Il pourrait y avoir des problèmes
de compatibilité avec certaines versions de PGP. Il n'aura été
introduit que parce à l'époque, il n'était pas clair de savoir si
un brevêt s'appliquait ou non au DSA.

4.2) Pourquoi la création de clefs est-elle aussi longue ?

Le problème est ici que nous avons besoin d'une grande quantité d'octets aléatoires et que
nous devons pour ce faire collecter une certaine quantité d'entropie depuis, sous Linux,
le /dev/random. Il n'est pas vraiment facile de remplir l'entropie de Linux ; nous en avons
discuté avec Ted Ts'o et il a expliqué que la meilleure méthode pour remplir le buffer
n'est autre que de jouer avec votre clavier. Une bonne sécurité implique un coût.
Vous pouvez utiliser les touches Shift, Control, Alt en appuyant dessus de manière aléatoire,
d'autant que ces touches ne produisent aucune sortie à l'écran et vous pourrez accélérer
la production des clefs.

Un autre programme pourrait également consommer une partie de l'entropie du système
dont vous avez besoin (jettez un oeil à vos daemons actifs).

4.3) Pourquoi tout est si lent quand je travaille sur un système distant ?

Vous ne devez SURTOUT pas faire cela ! Vous ne devez jamais créer de
clef GnuPG sur un système distant car vous n'aurez alors aucun contrôle
physique sur votre clef privée, ni même votre trousseau de clefs privées.
Ces clefs seront alors suspectibles de subir une attaque par dictionnaire.
Nous vous encourageons vivement à ne produire vos clefs que sur une
machine personnelle (un portable déconnecté de toute alimentation
et connexion réseau est le meilleur choix) et si vous devez conserver
votre clef privée sur une machine fixe, assurez-vous qu'une phrase
passe solide en protège le contenu et que vous pouvez faire confiance
à votre administrateur système.

Lorsque nous devons utiliser GnuPG à distance c'est au-travers de SSH
et nous rencontrons le même problème. Il faut *beaucoup* de temps
pour produire des clefs de toute manière. Il ne faut pas créer de clefs
à distance. Si vous avez juste besoin de clefs à fins de tests, vous
pouvez utiliser l'optoin --quick-random pour produire rapidement des
clefs *faibles* qui permettent de vérifier quelques tests.

4.4) Quelle est la différence entre options et commandes ?

Si vous tapez 'gpg --help' vous obtiendrez deux listes séparées. La première
liste vous répertorie les commandes. La seconde liste regroupe elle les
options. A chaque fois que vous utiliserez GnuPG vous devrez utiliser
*UNE* commande (avec une exception, voir ci-dessous) et vous pourrez
utiliser une ou *plusieurs* options en combinaison avec la commande.

Par convention, la commande doit se trouver à la fin de la liste d'arguments
après toutes les options. Si la commande requiert un nom de fichier,
ce dernier sera donné à GnuPG en *dernier* sur la ligne de commande.

L'usage basique de GnuPG est donc :

    gpg [--option something] [--option2] [--option3 something] --command file 

Certaines options demandent des arguments. Par exemple, l'option
--output (que l'on peut raccourcir par -o) requiert un nom de fichier
en argument. L'argument de l'option doit suivre celle-ci immédiatement !
GnuPG ne sera sinon pas capable de différencier le nom de fichier comme
option. Comme option, --output et son nom de fichier doivent se trouver
avant la commande donnée à GnuPG. L'option --recipient (ou -r) demande
un nom ou un keyID pour chiffrer le message et ces informations devront
imméditamenet suivre l'option --recipient/-r. La commande --encrypt ou
-e sera fournie après ces options, avec en final le nom du fichier à
chiffrer. En voici un exemple :

    gpg -r alice -o secret.txt -e test.txt 

Mais l'utilisation des options sous leur forme longue permet de simplifier
la compréhension des lignes de commande :

    gpg --recipient alice --output secret.txt --encrypt test.txt 

Si vous sauvez dans un fichier nommé ".txt" alors vous devriez probablement
utiliser l'option ARMOR en ajoutant l'option --armor ou -a qui ne prend aucun
argument :

    gpg --armor --recipient alice --output secret.txt --encrypt test.txt

Si nous plaçons des crochets autour des parties optionnelles, les choses
deviennent plus claires :

    gpg [--armor] [--recipient alice] [--output secret.txt] --encrypt test.txt 

Les parties entre crochets peuvent être placées dans l'ordre de votre
choix :

    gpg --output secret.txt --recipient alice --armor --encrypt test.txt

Si votre nom de fichier commence par un tiret, GnuPG risque de penser
qu'il s'agit d'un paramètre et pour éviter cette situation vous pouvez
soit utiliser un "./-a.txt" soit utiliser un double-tiret comme ceci :

-- -a.txt

* L'exception concerne le chiffrement ET la signature au même moment.
On utilise alors gpg [--options] --sign --encrypt foo.txt

4.5) Je ne peux pas effacer un userid car il a déjà été effacé dans mon
	trousseau de clefs publiques ?

Comme vous ne pouvez sélectionner que depuis le trousseau de clefs
publiques, vous ne pouvez pas directement effacer le userid. Toutefois,
ce n'est pas très compliqué à faire. Vous devez créer un nouvel
utilisateur, disposant du même userid ce qui vous permet d'obtenir deux
utilisateurs identiques avec un seul disposant d'une correspondance
dans la clef privée. Vous pouvez désormais sélectionner cet utilisateur
et l'effacer. Les deux identifiants seront affacés du trousseau de clefs
privées.

4.6) Que sont la confiance, la validité et l'ownertrust ?

Le terme "ownertrust" est utilisé en remplacement de "trust" lorsqu'il
s'agit de la valeur que vous avez attribuée à une clef en fonction
du degré de confiance que vous accordez à son propriétaire, et si
vous l'autorisez à introduire de nouvelles clefs avec votre signature
jointe. La "validité" est un terme de confiance calculée, une valeur
numérique calculée par GnuPG en fonction des paramètres de
confiance des clefs et vous donne une idée de la confiance que
GnuPG attribue ou n'attribue pas à une clef et s'il estime que la clef
est valide pour un usage de chiffrement. Pour plus de détails consultez
le chapître "The web of trust"

4.7) Comment puis-je signer un fichier de patch ?

Vous pouvez utiliser :

gpg --clearsign --not-dash-espaced ...

Le problème avec --clearsign c'est que toutes les lignes qui
commençent par un tiret sont "quotées" avec "- " et comme diff
produit beaucoup de lignes de ce type, le patch risque d'être
détruit par la signature. Pour utiliser un fichier patch en le signant
et sans perdre la signature claire, l'option spéciale :

--not-dash-escaped

Permet de supprimer la production de ces séquences d'échappement.
Vous ne devriez pas transmettre par courrier électronique un patch
de ce type car les espaces et les fins de ligne font également
partie de la signature et un logiciel de messagerie risque de modifier
l'espacement et/ou les tailles de lignes, invalidant la signature. Si vous
souhaitez transmettre le fichier, le plus simple reste de le signer à l'aide
de votre MUA.

4.8) Où se trouve l'option "encrypt-to-self" ?

Utilisez l'option :

--encrypt-to <votre_keyID>

Vous pouvez utiliser une combinaison de cette option pour spécifier
plus d'un keyID. Pour désactiver temporairement l'utilisation de clefs
additionnelles, vous pouvez utiliser l'option : --no-encrypt-to.

4.9) Comment puis-je me débarasser de la version et du champ de commentaire
	dans la version "armor" des messages ?

Utilisez l'option --no-version --comment ""

Veuillez noter que la ligne vide laissée en place est *requise* par le format
et le protocole.

4.10) Que signifie le message "You are using the xxxx character set" ?

Cette note est affichée lorsque une conversion UTF-8 a été réalisée.
Veuillez vous assurer que le jeu de caractères utilisé pour l'affichage
correspond bien à celui du système. Le plus utilisé reste "iso-8859-1" et
c'est le jeu de caractères par défaut. Vous pouvez modifier ce jeu
de caractères à l'aide de l'option "--charset". Il faut que le jeu de
caractères utilisé corresponde à celui de votre affichage ou des
caractères pourraient ne plus correspondre dans le message une
fois transmis. Sinon, n'utilisez que de l'ASCII 7 bits pour qu'aucune
conversion ne puisse survenir.

4.11) Comment puis-je obtenir la liste des keyid ayant servi à
	chiffrer un message ?

     gpg --batch --decrypt --list-only --status-fd 1 2>/dev/null | \
    awk '/^\[GNUPG:\] ENC_TO / { print $3 }' 

4.12) Je ne peux plus déchiffrer mon message chiffré symétriquement
	(-c) avec la nouvelle version de GnuPG ?

Il existait un bogue dans les versions 1.0.1 et antérieures de GnuPG
qui surveniait lorsque 3DES ou Twofish avaient été utilisé pour des
chiffrements symétriques (ce qui n'a jamais été le cas par défaut).
Ce bogue a été corrigé afin de permettre le déchiffrement des anciens
messages, en utilisant l'option :

---emulate-3des-s2k-bug

Vous devriez déchiffrer puis rechiffrer (correctement) le ou les
messages concernés. Cette option sera retirée dans la version 1.1
de GnuPG : n'attendez pas pour convertir vos messages !

4.13) Comment puis-je utiliser GnuPG en environnement automatisé ?

Vous devriez utiliser l'option --batch et ne pas utiliser de phrase
passe car il n'existe alors aucun moyen de conserver cette
information de manière plus secrète que le trousseau de clefs
lui-même. Nous vous suggérons de créer vos clefs, en environnement
automatisé, de la manière suivante :

Sur une machine protégée :

Créez une sous-clef de signature pour votre clef, en utilisant le menu
edit et en utilisant l'option "addkeu" puis DSA. Vous devez ensuite
vous assurer que vous utilisez une phrase passe (requise par
l'implémentation actuelle) puis utiliser :

gpg --export-secret-subkeys --no-comment foo
    >secring.auto

Copiez secring.auto et le trousseau de clefs publiques dans un
répertoire test. Entrez dans le répertoire, puis :

gpg --homedir . --edit foo

Et utilisez "passwd" pour retirer la phrase passe des sous-clefs.
Vous devriez également retirer toutes les sous-clefs qui ne sont
pas utilisées et copier secring.auto sur une disquette et la
porter jusqu'à la machine cible.

Sur celle-ci, installez secring.auto comme trousseau de clefs
secrètes. Vous pouvez maintenant faire démarrer votre
nouveau service. C'est aussi une bonne idée que d'installer
un système de détection d'intrusions afin de pouvoir repérer
les intrusions ce qui vous permettra alors de révoquer toutes
les sous-clefs installées sur cette machine et de procéder à une
nouvelle installation de sous-clefs.

4.14) Quel client email puis-je utiliser avec GnuPG ?

Utiliser GnuPG pour le chiffrement de courrier électronique est
probablement l'usage le plus répandu. De nombreux logiciels de
messagerie (les "MUA") supportent GnuPG à divers degrés. Pour simplifier,
il existe deux moyens de chiffrer les emails avec GnuPG : l'ancien style
qui repose sur l'utilisation de l'ASCII Armor (un chiffrement classique
suivi par une conversion selon le RFC2015) ce qu'on appellait le
PGP/MIME et qui s'appelle désormais l'OpenPGP. Ce dernier supporte
d'autre part le MIME. Certains MUA ne supportent qu'un seul de ces
formats et vous devrez utiliser ce qui correspond aux capacités
de votre client de messagerie.

La liste suivante n'est probablement pas exhaustive :

    OpenPGP: Mutt (Unix), Emacs/Mew, Becky2 (Windows avec plugin),
	TkRat (Unix). Il y a un effort pour disposer d'un plug-in
	Mozilla et Emacs/GNUS dispose d'un support en CVS.

    ASCII:   Emacs/{VM,GNUS}/MailCrypt, Mutt(Unix), Pine(Unix), et
	probablement beaucoup d'autres.

Un bon aperçu du support de PGP se trouve à l'adresse :

http://cryptorights.org/pgp-users/pgp-mail-clients.html

Le support direct de GnuPG n'est pas indiqué, toutefois dans certains
cas il doit être possible d'utiliser un "wrapper".

4.15) On ne peut pas avoir une librairie gpg ?

Cette question aura souvent été posée. Toutefois, le point de vue
actuel est que GnuPG en tant que librairie risque de conduire à des
problèmes de sécurité. Dans un futur proche, GnuPG ne sera pas
implémenté sous forme de librairie. Toutefois, pour quelques domaines
d'application le programme gpgme doit pouvoir assurer ces questions.
Vous pouvez obtenir ce programme depuis :

ftp://ftp.guug.de/pub/gcrypt/alpha/gpgme


4.16) J'ai produit avec succès un certificat de révocation, mais comment
	dois-je le transmettre aux serveurs de clefs ?

La plupart des serveurs de clefs n'accepteront pas une simple et "dure"
révocation. Vous devez d'abord importer le certificat dans GnuPG :

    gpg --import my-revocation.asc

Puis transmettre la révocation au serveurs de clefs :

    gpg --keyserver certserver.pgp.com --send-keys mykeyid

5. COMPATIBILITY ISSUES 

5.1) Comment puis-je chiffrer un message avec GnuPG pour que PGP
	soit capable de le déchiffrer ?

Tout ceci dépend de la version de PGP.

     PGP 2.x 

Vous ne pourrez pas dans ce cas, car PGP 2.x utilise l'IDEA qui n'est
pas un algorithme supporté par GnuPG à cause de son brevêt (voir
la section 3.3) mais si vous disposez d'une version modifiée de PGP
vous pouvez essayer ceci :

     gpg --rfc1991 --cipher-algo 3des ...  

Attention ! N'utlisez pas de pipe des données à chiffrer vers gpg,
mais donnez à gpg un nom de fichier sinon PGP 2 ne sera pas
capable de le prendre en charge.

Quand à ce qui concerne le chiffrement conventionnel, vous ne
pouvez l'obtenir avec PGP 2.


     PGP 5.x et ultérieurs

Vous devrez utiliser deux options additionnelles :

    --compress-algo 1 --cipher-algo cast5  

Vous devrez parfois utiliser "3des" au lieu de "cast5". PGP 5 ne
supporte pas l'algorithme "blowfish". Vous devrez aussi insérer
un "compress-algo 1" au sein de votre fichier ~/.gnupg/options
et ceci n'affectera pas le fonctionnement général de GnuPG.

Ceci s'applique également au chiffrement conventionnel.

5.2) Comment migrer de PGP 2.x vers GnuPG ?

PGP 2 utilise les algorithmes RSA et IDEA pour le chiffrement. Depuis que le
brevêt sur le RSA a expiré GnuPG incorpore ce dernier, depuis la version
1.0.3 et ultérieures. L'algorithme IDEA reste sous brevêt jusqu'en 2007.
Sous certaines conditions vous pouvez utiliser l'IDEA, même aujourd'hui.
Dans ce cas, vous devriez consulter la réponse à la question 3.3 qui
explique l'ajout du support de l'IDEA à GnuPG et également lire ce
document :

http://www.gnupg.org/gph/en/pgp2x.html

Pour procéder à la migration.

5.3) (supprimé)

    (vide)

5.4) Pourquoi PGP 5.x n'est pas capable de déchiffrer les messages
	pour certaines clefs ?

PGP Inc refuse d'accepter les clefs ElGamal de type 20 même pour
le chiffrement. Ils ne supportent que le type 16 (qui est identifique en tout
cas en ce qui concerne le déchiffrement). Pour être plus inter-opérable,
GnuPG (depuis la version 0.3.3) utilise également le type 16 pour la sous-
clef ElGamal qui est créée par l'algorithme par défaut. Vous pouvez
aussi ajouter une clef de type 16 à votre trousseau de clefs publiques
tout en assurant que vos signatures sont valides.

5.5) Pourquoi PGP 5.x ne peut vérifier mes messages ?

PGP 5.x n'accepte pas les signatures en version 4 pour les données
mais OpenPGP demande la production de clefs V4 pour tous les types
de données et c'est pourquoi GnuPG les utilise... Vous devrez utiliser
l'option --force-v3-sigs pour produir'e des signatures V3 sur les
données.

5.6) Comment puis-je transférer mes valeurs de confiance de
	PGP vers GnuPG ?

Il existe un script au sein du répertoire tools qui pourra vous aider. Après
avoir importé le trousseau de clefs publiques PGP vous pouvez utiliser
cette commande :

    $ lspgpot pgpkeyring | gpg --import-ownertrust 

où "pgpkeyring" est le trousseau de clefs originels et NON celui de GnuPG
que vous avez produit à la première étape.

5.7) PGP n'aime pas ma clef privée.

Les anciens PGP échouent parfois au traitement des commentaires privés
sur les paquets utilisés par GnuPG. Ces paquets sont en *totale* conformité
avec OpenPGP mais vous l'aurez compris, PGP n'est pas vraiment soucieux
d'OpenPGP. Pour contourner ce problème il faut exporter les clefs privées
à l'aide de cette commande :

     $ gpg --export-secret-keys --no-comment -a your-key-id 

Une autre possibilité : par défaut, GnuPG chiffre votre clef privée à l'aide
de l'algorithme symétrique Blowfish. Les anciennes versions de PGP
ne peuvent comprendre que le 3DES, CAST5 ou l'IDEA sous leurs formes
symétriques. L'utilisation de la méthode suivante permet de rechiffrer
vos clefs privées à l'aide d'un algorithme différent :

     $ gpg --s2k-cipher-algo=CAST5 --s2k-digest-algo=SHA1 \
          --compress-algo=1  --edit-key <username>

Vous utiliserez alors l'option passwd pour modifier le mot de passe ; il suffit
de choisir la même phrase passe mais cette fois la clef sera chiffrée
symétriquement par du CAST5.

Vous pouvez maintenant exporter la clef et PGP devrait pouvoir la gérer.

Pour PGP 6.x les options suivantes permettent d'exporter une clef :

     $ gpg --s2k-cipher-algo 3des --compress-algo 1 --rfc1991 \
           --export-secret-keys <Key-ID>

6. PROBLEMS and ERROR MESSAGES

6.1) Pourquoi GnupG me dit sans cesse "Warning  : using insecure memory!" ?

Sur beaucoup de systèmes, ce programme doit être installé en tant que
setuid(root). Ceci est requis afin de pouvoir produire un blocage en mémoire
des pages utilisées (et d'éviter tout transfert en swap ou sur disque). Ce "lock"
permet de verrouiller dans la pratique les informations sensibles en RAM
afin de conserver ces données comme secrètes. Si vous n'obtenez aucun
message d'erreur c'est que votre système supporte le verrouillage de pages
mémoire depuis l'accès root (le programme s'exécute en tant que root grâce
à son setuid). Le programme quitte le mode d'exécution "root" dès que les
pages sont verrouillées en mémoire qui plus est.

Sur Unixware 2.x et 7.x vous devriez installer GnuPG avec le privilège
"plock" pour obtenir le même effet :

	filepriv -f plock /path/to/gpg

Si vous ne pouvez pas installer GnuPG en tant que setuid(root) ou si vous
ne voulez pas, vous pouvez utiliser l'option :

--no-secmem-warning

Ou bien le placer en tant qu'option (sans les deux tirets) dans votre
fichier ~/.gnupg/options ce qui permet de désactiver le warning.

Sur quelques systèmes (e.g; Windows) GnuPG ne verrouille pas les
pages en mémoire (ce n'est pas toujours possible selon les systèmes)
et les anciennes versions de GnuPG (1.0.4 et antérieures) produisent
sur ces systèmes le message d'erreur suivant :

    gpg: Please note that you don't have secure memory

Cet avertissement ne peut être désactivé en utilisant l'option décrite
ci-dessus car nous considérons que cet avertissement forme une
faille de sécurité importante. Toutefois, comme il provoquait une trop
forte confusion auprès des utilisateurs de ces systèmes, le message
d'avertissement a été retiré.

6.2) Le support des fichiers de grande taille ne fonctionne pas ..

Le LFS fonctionne correctement depuis les versions 1.0.4 et ultérieures.
Si le configure ne le détecte pas correctement, essayez un autre
compilateur : egcs 1.1.2 fonctionne parfaitement mais d'autres
versions semblent poser problème. D'autre part, certains problèmes
de compilation rencontrés dans GnuPG 1.0.3 et 1.0.4 sur HP-UX et
Solaris étaient provoqués par un support "cassé" du LFS dans les
sources ...

6.3) Dans le menu d'édition les valeurs de confiance ne sont pas affichées
	correctement après la signature des uid : pourquoi ?

Ceci survient car certaines informations sont stockées immédiatement
dans la TrustDB, mais le calcul ne se réalisé qu'au moment de la
sauvegarde effective. Ce n'est pas un bogue vraiment facile à corriger
mais nous pensons régler ce problème dans une future version.

6.4) Que signifie "skipping pubkey 1: already loaded" ?

Depuis la version 1.0.3 de GnuPG l'algorithme RSA est inclus. Si vous
avez toujours l'option :

load-extension rsa

Dans votre fichier .options le message en question apparaîtra.
Il vous suffira de retirer la commande qui n'est plus requise
du fichier .options pour que le message cesse.

6.5) GnuPG 1.0.4 ne tient pas compte de ~/.gnupg ...

Ce bogue est connu et il a été corrigé dans les versions ultérieures.

6.6) Une signature ElGamal ne vérifie plus rien depuis la 1.0.2 ..

Utilisez l'option :

--emulate-md-encode-bug

    Use the option --emulate-md-encode-bug.

6.7) Les anciennes versions de GnuPG ne vérifient pas les anciennes
	signatures ElGamal

Veuillez migrer vers la version 1.0.2 au minimum, et de préférence
une version ultérieure (1.0.6 par exemple).

6.8) Lorsque j'utilise --clearsign le texte en clair comporte parfois des
	tirets supplémentaires : pourquoi ?

Ceci s'appelle le "dash-escaped" et il est requis par le format
OpenPGP. A chaque fois qu'une ligne commence par un tiret, ceci
risque de survenir. Cela permet aux programmes de retrouver
sans difficulté les lignes de marquage du format, comme :

-----BEGIN PGP SIGNATURE-----

Seules ces lignes doivent pouvoir commencer par deux tirets. Si vous
utilisez GnuPG pour traiter ces messages, les tirets supplémentaires
seront retirés et les clients de messagerie "corrects" devraient
également retirer ces tirets lorsqu'ils affichent le message.
 
6.9) Que signifie "can't handle multiple signatures" ?

A cause des différents formats de messages, GnuPG n'est pas toujours
capable de découper un fichier contenant des signatures multiples.
Ce message d'erreur vous informe que les données en entrée
comportent un problème. Le seul moyen pour disposer correctement
de signatures multiples revient à utiliser le standard : le format
OpenPGP avec les paquets "one-pass-signature" qui sont utilisés
par défaut par GnuPG ou bien de recourir au format de texte en clair.

6.10) Si je soumet une clef au serveur de clefs, rien ne survient !

Vous utilisez probablement GnuPG sur Windows en version 1.0.2 ou
antérieure. Cette fonctionnalité n'était alors pas encore disponible,
et il ne s'agit pas d'un bogue. Vous devriez adopter une version
plus récente, qui dispose de toutes les fonctionnalités :-)

6.11) J'obtiens un "gpg: waiting for lock ..."

Les anciennes versions de GnuPG ne quittaient pas correctement
et laissaient un fichier "lock". Allez dans le répertoire ~/.gnupg et
effacez les fichiers *.lock qui s'y trouvent pour continuer.

6.12) Les anciennes versions de GnuPG (e.g. 1.0) ont des problèmes
	avec les clefs de GnuPG récents ..

Depuis la version 1.0.3 les clefs produites par GnuPG sont créées avec
une préférence pour Twofish (et l'AES depuis la version 1.0.4 à savoir,
l'algorithme Rijndael) et ceci signifie également qu'elles disposent de la
capacité d'utilisation de la nouvelle méthode de chiffrement MDC. Ceci
sera disponible dans OpenPGP très rapidement et sera supporté en
tout logique par PGP 7. Cette nouvelle méthode de chiffrement permet
de se protéger votre des attaques (des anciennes attaques en fait)
contre les systèmes de chiffrement du courrier électronique.

Ceci signifie également que les versions 1.0.3 et antérieures de GnuPG
auront des problèmes avec les clefs plus récentes. A cause des
correctifs de sécurité, vous devriez conserver votre installation
de GnuPG à jour de toute manière. Comme manière de régler le
problème vous devriez demander à GnuPG de n'utiliser que l'ancien
algorithme de chiffrement en utilisant la ligne :

cipher-algo cast5

dans votre fichiers d'options.

6.13) Avec GnuPG 1.0.4 j'obtiens un "this cipher algorithm is deprecated ..."

Si vous venez de produire une nouvelle clef et que vous obtenez ce message
pendant un chiffrement, il s'agit d'un bogue de la version 1.0.4 ; le nouvel
algorithme AES Rijndael est utilisé mais il n'est pas enregistré sous le bon
numéro d'algorithme ce qui produit ce message d'erreur "deprecated".
Vous pouvez ignorer cet avertissement et les versions plus récentes
de GnuPG sont corrigées sur ce point.

6.14) Les dates sont affichées par ????-??-??, pourquoi ?

A cause de contraintes dans la plupart des implémentations de la libc,
les dates au-delà de 2038-01-19 ne seront pas affichées correctement.
Les systèmes 64-bit ne sont pas affectés par ce problème. Pour éviter
d'afficher les dates de manière incorrecte, GnuPG utilise des signes
"?" au lieu des chiffres. Pour obtenir la valeur correcte vous devrez
utiliser l'option :

--with-colons --fixed-list-mode

6.15) J'ai encore un problème, dois-je produire un message de bogue ?

Si vous êtes sûr(e) que le problème n'est mentionné nulle part, ni dans
cette FAQ ni dans aucune liste de distribution GnuPG, commencez
par consulter la liste de bogues qui sont en cours de traitement (la page
de documentation dispose d'un lien vers la page de bogues). Si vous
ne savez pas trop s'il s'agit d'un bogue, envoyez un courrier
électronique à la liste : gnupg-devel. Sinon, vous pouvez utiliser
le système de suivi de bogues GUUG à l'adresse :

http://bugs.guug.de/Reporting.html.   

6.16) Pourquoi GnuPG ne supporte pas les certificats X.509 ?

GnuPG est avant tout une implémentation du standard OpenPGP,
défini dans le RFC 2440. Ce standard propose une infrastructure
complète et différente du X.509

Ces deux systèmes sont des cryptosystèmes à clef publique, mais
la manière dont les clefs sont traitées diffèrent.

7. SUJETS AVANCES

7.1) Comment tout cela fonctionne-t-il ?

Pour produire une paire de clefs publique/privée, utilisez la commande

gpg --gen-key

Puis répondez aux questions en adoptant de préférence les valeurs
par défaut.

Les données qui sont chiffrées par une clef publique ne peuvent être
déchiffrées que par la clef privée correspondante. La clef secrète
est d'autre part protégée par une phrase-passe ce qui n'est pas le cas
de la clef publique, librement distribuable.

Pour transmettre à vos amis un message, il vous suffit de le chiffrer
à l'aide de leurs clefs publiques. Seules leurs clefs privées seront
capables de déchiffrer le message.

GnuPG est pratique pour signer de manière numérique les choses.
Les éléments qui sont chiffrés à l'aide de la clef publique ne peuvent
être déchiffrés que par la clef publique, ce qui permet de signer
des documents. On commence par produire un hachage, une sorte
d'empreinte à taille fixe d'un document (de taille variable). Ensuite,
votre clef privée est utilisée pour chiffrer ce hachage. Par la suite,
toute personne disposant de votre clef publique et du document
peut vérifier si le hachage du document correspond bien au
déchiffrement du hachage, obtenu par votre clef publique dont
disposent vos destinataires.

Un trousseau de clefs n'est qu'un gros fichier (selon le nombre de
clefs qu'il contient). Vous avez un trousseau de clefs publiques
qui contient vos clefs publiques et celles de vos amis. Vous avez
également un trousseau de clefs privées qui ne contient que vos
clefs privées (chiffrées et protégées par votre phrase-passe). Vous
devez faire très *attention* à ce fichier. Personne ne devra jamais
y avoir accès et la phrase-passe qui le protège devra être
complexe, et longue afin de bien protéger le secret.

Vous pouvez aussi chiffrer des données de manière conventionnelle,
en utilisant l'option "-c" de GnuPG. Dans ce cas, la phrase-passe
utilisée servira de clef pour protéger le message. Aucun usage
de clef publique ou de clef privée ici : il s'agit d'un chiffrement
classique où il n'existe qu'une seule clef, utilisée pour chiffrer et
déchiffrer les données. Généralement, on utilise cette méthode
pour chiffrer ses propres documents à l'aide d'une phrase-passe
secrète qui vous est propre. Cette méthode de chiffrement ne
doit être utilisée pour des communications que si vous avez
physiquement rencontré vos destinataires et que vous partagez
dans le plus grand secret la phrase-passe (votre propre époux ou
épouse, ou un ami de confiance). L'avantage est que vous pouvez
changer de temps en temps la phrase-passe et en réduire le
risque afin qu'en cas de découverte de la phrase-passe toutes
vos données ne soient pas lisibles ;-)

Vous pouvez ajouter et copier des clefs depuis votre trousseau
de clefs publiques à l'aide des commandes "gpg --import" et
"gpg --export". Vous pouvez également (ATTENTION !!) exporter
vos clefs privées à l'aide de la commande : "gpg --export-secret-keys"
mais ce n'est généralement pas utile sauf si vous devez déplacer
vos clefs privées d'une machine à l'autre.

Les clefs peuvent être signées à l'aide de l'option "gpg --edit-key". Lorsque
vous signez une clef, vous certifiez que la clef appartient selon vous
à la personne dont l'identité se trouve mentionnée dans la clef. Vous
devez absolument être sûr(e) que la clef appartient bien à cette
personne, sans le moindre doute. Vous devez vérifier son fingerprint
à l'aide de la commande :

gpg --fingerprint userid

Et recevoir le même finger par téléphone ou de visu par la personne
concernée. Généralement, on procède à des "fêtes" où chaque personne
amène sa pièce d'identité, une carte de visite comprenant le fingerprint
et l'on procède à un échange des fingerprint, ou directement des clefs.

Vous pouvez également utiliser l'option "-o filename" pour forcer
la sortie vers le fichier "filename". Pour forcer une sortie en console
par défaut on utilise un tiret. La commande "-r" permet de spécifier
le destinataire (avec quelle clef publique vous allez chiffrer) en ligne
de commande au lieu d'avoir à taper le nom du destinataire dans
le mode interactif.

Autre chose d'importance. Par défaut, TOUTES les données sont chiffrées
dans un format binaire particulier; Si vous souhaitez transmettre les données
par courrier électronique (par exemple) vous devez les protéger dans
un format d'amure qu'on appelle ASCII ARMOR. Ce format sera obtenu
en utilisant l'option "-a" mais la méthode préférée reste d'utiliser
un client de messagerie respectueux du format MIME comme Mutt, Pine
et bien d'autres.

Enfin, il existe une petite faille de sécurité dans OpenPGP (et donc dans PGP)
et vous devriez TOUJOURS chiffrer PUIS signer un message. Il ne faut
pas seulement chiffrer afin d'être totalement protégé. N'oubliez jamais.

7.2) Pourquoi certaines signatures avec une clef ELG-E sont valides ?

Ces clefs ElGamal furent produites par GnuPG en version 3 de paquets
(selon le RFC 1991). Le brouillon OpenPGP a été modifié par la suite
afin de modifier l'identifiant d'algorithme pour les clefs ElGamal qui est
utilisable pour les signatures et le chiffrement des modes 16 à 20.
GnuPG utilise le mode 20 quand il produit ses nouvelles clefs ElGamal
mais il accepte toujours les clefs de type 16 qui selon le standard
OpenPGP ne peuvent servir qu'au chiffrement, si la clef se trouve
dans un paquet en version 3 du format. GnuPG est le seul programme
ayant jamais utilisé les clefs au sein de paquets v3 - vous ne risquez
donc pas grand chose.

7.3) Comment tout le système de confiance fonctionne au juste ?

Il fonctionne d'une manière proche de PGP. La différence c'est que
la confiance est calculée uniquement lorsqu'elle est requise. C'est
pourquoi la TrustDB contient une liste des signatures de clefs
valides. Si vous ne fonctionnez pas en mode batch, vous devrez
assigner un paramètre de confiance aux clefs (un ownertrust).

Vous pouvez consulter la validité (la valeur de confiance
calculée) en utilisant cette commande :

     gpg --list-keys --with-colons  

Si le premier champ est "pub" ou "uid" le second champ vous
indiquera le niveau de confiance :

o = Inconnu (cette clef est nouvelle au système)
i = La clef est invalide (eg. il manque sa propre signature)
d = La clef a été désactivée
r = La clef a été révoquée
e = La clef a expiré
q = Non-défini (pas de valeur attribuée)
n = Ne jamais faire confiance à cette clef
m = Cette clef dispose d'une confiance marginale
f = Cette clef dispose d'une confiance totale
u = Cette clef dispose d'une confiance ultime. Cette valeur
	n'est utilisée que pour les clefs où la clef secrète est
	également disponibles.

La valeur dans l'enregistrement "pub" est la meilleure valeur
obtenue depuis les enregistrements "uid".

Vous pouvez obtenir la liste des valeurs de confiance attribuées ;
i.e. la confiance que vous accordez aux autres lorsqu'il s'agit
de signer la clef d'un autre individu) :

     gpg --list-ownertrust

Le premier champ est le fingerprint de la clef primaire, le second
champ est la valeur assignée :

_ = Aucune valeur d'ownertrust assignée
n = Ne jamais faire confiance au propriétaire de cette clef
	lorsqu'il s'agit de vérifier d'autres signatures.
m = Une confiance marginale est accordée au détenteur de cette clef
	lorsqu'il s'agit de signer d'autres clefs.
f = Assumer que le détenteur de cette clef est une personne de confiance
	lorsqu'il s'agit de signer des clefs.
u = Nous n'avons pas besoin de nous faire confiance à nous-même puisque
	nous détenons notre propre clef privée.

Vous devez conserver ces valeurs confidentielles, car elles représentent
la confiance que vous accordez ou non à d'autres individus. PGP stocke
cette information au sein de trousseau de clefs et le publier n'est PAS
une bonne idée. Vous devez utiliser la commande d'exportation pour
transmettre des clefs. Quoi qu'il en soit, GnuPG
évite ces problèmes en ne conservant ces valeurs qu'aun sein de sa
TrustDB donc vous pouvez copier un trousseau de clefs publiques
si vous utilisez GnuPG (et nous disposons aussi de la commande
d'exportation).

7.4) Quel est ce genre de sortie : "key C26EE891.298, uid 09FB: ...."?

Cette sortie est la représentation interne d'un userid au sein
de la TrustDB. Le keyid est "C26EE891" et le "298" est le keyid local,
un simple numéro d'enregistrement dans la TrustDB. Enfin, le "09FB"
sont les deux derniers octets d'un ripe-md-160 de l'identifiant de
l'utilisateur pour cette clef.

7.5) Comment interpréter certaines sorties informatives ?

Lorsque vous vérifiez la validité d'une clef, GnuPG affiche
parfois une information préfixée par l'information en rapport
avec le sujet vérifié. Par exemple : "key 12345678.3456" indique
que la clef disposant de l'ID 12345678, et du numéro interne 3456
est considérée au sein de la TrustDB au sein de ce qu'on
appelle un enregistrement "directory". Un "uid 12345678.3456/ACDE"
indique quel est l'identifiant d'utilisateur qui correspond
à cette clef. Il s'agit d'une information sur la signature de la
clef 9A8B7C6D disposant de cet ID et s'il s'agit d'une signature
directe sur la clef, la partie User ID sera vide :

(..//..)

7.6) Les lignes d'en-tête des messages font-elles parties des
	éléments signés ?

Non. Par exemple, vous pouvez retirer les lignes "Comment:"
Elles n'ont pas vraiment d'objet comme les lignes "header" des
courriers électroniques. Toutefois, une ligne qui débute par
"Hash: ..." est requise par les signatures OpenPGP afin de permettre
au parser de déterminer quel algorithme de hachage utiliser.

7.7) Quelle est la liste des algorithmes préférés ?

La liste des algorithmes préférés est une liste d'algorithmes
de chiffrement, de hachage et de compression stockés dans
la signature propre de la clef durant sa production. Lorsque
vous chiffrez un document, GnuPG utilise cette liste (elle fait
partie de la clef publique) pour déterminer quels algorithmes
doivent être utilisés. De manière basique, ces indications
expliquent aux autres utilisateurs quels algorithmes vous
acceptez en entrée avec un ordre de préférence.

7.8) Comment puis-je changer la liste des algorithmes préférés ?

Actuellement la liste et les préférences sont directement intégrées
dans les codes sources de GnuPG. Vous devrez modifier le fichier
g10/keygen afin de modifier cette liste et procéder à une
nouvelle compilation. La fonction que vous devrez modifier est
keygen_add_std_prefs. Le code est d'ailleurs assez simple à
comprendre. Les constantes utilisées pour différencier les
algorithmes sont définies au sein du fichier include/cipher.h

Après avoir modifié ces fichiers, générez une nouvelle paire
de clefs (ou une nouvelle sous-clef de chiffrement) avec
la version modifiée de l'exécutable. La nouvelle clef disposera
des nouvelles préférences et pourra être utilisée depuis des
exécutables non modifiés.

Pour modifier les préférénces d'une clef existante, vous devrez
utiliser un exécutable modifié (voir ci-dessus) afin de modifier
la date d'expiration puis sauvegardez les changements. Les
préférences seront automatiquement modifiées lors de la
sauvegarde et vous pouvez désormais utiliser la clef modifiée
avec tout exécutable, modifié ou non.

La modification de la liste de préférences à l'aide d'une
version non-modifiée de GnuPG (probablement depuis le menu
d'édition) fait partie de la liste TODO (A FAIRE) prévue
pour les prochaines versions de GnuPG.


8. REMERCIEMENTS

Nous souhaitons remercier Werker Kosh pour la rédaction de la
première FAQ originelle et pour tous les participants aux listes
de discussion gnupg-users et gnupg-devel. La quasi-totalité
des réponses de ce document proviennent de leurs efforts.

Nous souhaitons également remercier Casper Dik pour nous
avoir fourni le script permettant de générer cette FAQ,
qu'il utilise d'autre part pour son excellente FAQ Solaris2 ;-)

Copyright (C) 2000 Free Software Foundation, Inc. , 
59 Temple Place - Suite 330, Boston, MA 02111, USA 

Verbatim copying and distribution of this entire article is permitted in
any medium, provided this notice is preserved.