aboutsummaryrefslogtreecommitdiffstats
path: root/doc/ru/faq163_ru2.raw
blob: df5e54a7fa89cbfada31e89fdeb018772ed73cee (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
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
[$htmltitle=GnuPG FAQ]
[$htmlcharset=<meta http-equiv="content-type" content="text/html; charset=utf-8">]
[$sfaqheader=The GnuPG FAQ says:]
[$sfaqfooter=
The most recent version of the FAQ is available from
<http://www.gnupg.org/>
]
[$usenetheader=
]
[$maintainer=David D. Scribner, <faq 'at' gnupg.org>]
[$hGPGHTTP=http://www.gnupg.org]
[$hGPGFTP=ftp://ftp.gnupg.org]
[$hVERSION=1.2.2]

[H body bgcolor=#ffffff text=#000000 link=#1f00ff alink=#ff0000 vlink=#9900dd]
[H h1]GnuPG Frequently Asked Questions[H /h1]


[H p]
Версия: 1.6.3[H br]
Редакция от: 30 Июля 2003[H br]
Руководитель проекта: [$maintainer]
[H br]Перевод на русский: Maxim Britov <[email protected]>, GnuPG KeyID 0x6F3DB1FB
[H br]CODEPAGE: UTF-8
[H /p]


В данном документе (далее - "FAQ") Вы найдете ответы на наиболее часто
задаваемые вопросы по GnuPG. Последняя версия FAQ (английская) в формате HTML
доступна [H a href=[$hGPGHTTP]/documentation/faqs.html]здесь[H /a].

Содержание создано автоматически, поэтому может содержать ошибки и может
случиться, что некоторые из отвеченных ниже вопросов могут в него не попасть.
Принимаются любые предложения по усовершенствованию структуры настоящего документа.

Все дополнения и исправления отправляйте на англ. языке руководителю проекта.
Будет правильнее, если Вы предложите и ответ на Ваш новый вопрос или укажете
и вопрос, и ответ по которым Вы имеете свои предложения. Ваша помощь будет
оценена по достоинству.

Не следует присылать сообщения типа "Это следует поместить в FAQ - Каков ответ?".
Если вопрос не задавался ранее, видимо он не относится к часто задаваемым.
В этом случае Вам следует поискать ответ в архиве соответствующей почтовой
рассылки.

[H hr]
<C>
[H hr]


<S> ОБЩЕЕ

<Q> Что такое GnuPG?

    [H a href=[$hGPGHTTP]]GnuPG[H /a] расшифровывается как GNU Privacy Guard и
    является GNU инструментом для секретных коммуникаций и хранения данных.
    GnuPG может использоваться для шифрования данных и создания цифровых подписей.
    GnuPG представляет собой легкое, но мощное средство управления ключами
    и совместимо с предложенным OpenPGP Internet стандартом, как описано
    в [H a href=http://www.rfc-editor.org/]RFC 2440[H/a].
    Также, по возможности,  обеспечивается совместимость с PGP от NAI, Inc.

<Q> GnuPG совместимо с PGP?

    В основном, да. GnuPG и новейшие версии PGP следуют стандарту OpenPGP.
    Но существуют некоторые проблемы при взаимодействии.
    Подробности см. в вопросе <Rcompat>.

<Q> Свободен ли GnuPG для персонального или коммерческого использования?

    Да! GnuPG является частью инструментов и приложений GNU созданных
    и распространяемых в соответствии с Free Software Foundation (FSF)
    General Public License (GPL). Поэтому GnuPG свободно для копирования,
    использования, изменения и распространения в соответствии с данной
    лицензией. Прочитайте, пожалуйста, файл озаглавленный COPYING, который
    прилагается к данной программе для получения более полной информации.

<Q> Какие соглашения используются в данном FAQ?

    Поскольку GnuPG разрабатывается для нескольких оперционных систем
    (часто параллельно), то соглашения используемые в данном FAQ отражают
    окружение оболочки UNIX. Для пользователей Win32, ссылки на подсказку
    командной строки ("$") следует рассматривать, как приглашение (">"),
    имена каталогов разделенные прямым слешем ("/") следует разделять
    обратным слешем ("\"), и тильду ("~") рассматривать, как путь к
    домашнему каталогу пользователя (см. ответ на <Rhomedir> для примера).

    Некоторые командные строки в настоящем FAQ слишком длинны для правильного
    отображения некоторыми браузерами в Web версии данного документа
    и поэтому некоторые строки могут быть разбиты на две и более. Такие
    команды следует ввести целиком - одной строкой, иначе команда будет
    ошибочна и как минимум, не даст требуемого результата.

    Помните, что данный FAQ содержит информацию, которая может оказаться
    не актуальной для Вашей текущей версии программы, т.к. постоянно
    производятся усовершенствование программы и исправления найденных ошибок
    (см. файл NEWS поставляемый вместе с исходными текстами). Один из
    пунктов которого сообщает, что в GnuPG начиная с версии 1.1.92 файл
    персональных параметров программы переименован из "options" в "gpg.conf".
    Информация в FAQ, ссылающаяся на файл параметров "options" полностью
    применима к новому файлу "gpg.conf" в большинстве случаев.
    Подробнее см. в вопросе <Roptions>.


<S> ИСТОЧНИКИ ИНФОРМАЦИИ

<Q> Где я могу получить больше информации о GnuPG?

    Онлайновые источники:

    [H ul] 
    [H li]Страница документации на [H a href=[$hGPGHTTP]/documentation/]<[$hGPGHTTP]/documentation/>[H/a].
    Также смотрите HOWTO и GNU Privacy Handbook (GPH, доступную на Английском, Испанском и Русском (Спасибо Павлу Шайдо за русский перевод)). Последнее является
    подробным руководством пользователя GnuPG. Вы также найдете документ о том,
    как перейти с PGP 2.x на GnuPG.

    [H li]На [H a href=[$hGPGHTTP]/documentation/mailing-lists.html]<[$hGPGHTTP]/documentation/mailing-lists.html>[H/a]
    Вы найдете онлайновый архив дискуссионных списков рассылки (в т.ч. gnupg-ru).
    Более интереным должен быть gnupg-users - где обсуждаются проблемы
    пользовательского уровня, для русскоязычных пользователей существует
    также рассылка gnupg-ru; gnupg-devel - для контактов с разработчиками.

    Дополнительно можно поискать на MARC, например: [H br]
    gnupg-users: [H a href=http://marc.theaimsgroup.com/?l=gnupg-users&r=1&w=2]<http://marc.theaimsgroup.com/?l=gnupg-users&r=1&w=2>[H/a][H br]
    gnupg-devel: [H a href=http://marc.theaimsgroup.com/?l=gnupg-devel&r=1&w=2]<http://marc.theaimsgroup.com/?l=gnupg-devel&r=1&w=2>[H/a][H br]

    [H b]ПОЖАЛУЙСТА:[H /b]
    Перед отправкой вопроса с список рассылки, прочтите данный FAQ и доступную
    докуменцию. Следует просмотреть также архив рассылки, т.к. вплне возможно,
    что Ваш вопрос уже обсуждался ранее. Это поможет людям сконцентрировать
    внимание на решении новых, еще не решенных вопросов.

    [H li]Пакет с исходным кодом GnuPG содержит подкаталог:

    [H samp]
       ./doc
    [H /samp]

    в котором Вы можете найти некоторую дополнительную информацию (интересную в
    основном Хакерам, а не обычным пользователям).
    [H /ul]

<Q> Где я могу взять GnuPG?

    Вы можете скачать GNU Privacy Guard с главного FTP сервера проекта
    [H a href=[$hGPGFTP]/gcrypt/]<[$hGPGFTP]/gcrypt/>[H /a] или с одного из зеркал:

    [H a href=[$hGPGHTTP]/download/mirrors.html]
       <[$hGPGHTTP]/download/mirrors.html>
    [H /a]

    Текущая стабильная версия GnuPG [$hVERSION]. Обновите Вашу программу до
    указанной версии, т.к. она включает дополнительные функции и исправления
    найденных ошибок, которые могли быть найдены в предыдущих версиях.


<S> УСТАНОВКА

<Q> На каких операционных системах может работает GnuPG?

    GnuPg должен работать на большинстве Unix, а также Windows (включая
    Windows NT/2000/XP) и Macintosh OS/X. Текущий список поддерживаемых
    систем можно посмотреть здесь:

    [H a href=[$hGPGHTTP]/download/supported_systems.html]
       <[$hGPGHTTP]/download/supported_systems.html>
    [H /a]

<Q> Какие поставщики случайных чисел мне следует использовать?

    "Хорошие" случайные числа имеют решающее значение для секретного шифрования.
    Различные операционные системы предоставляют различные механизмы поставки
    более или менее качественных случайных числа. Linux и *BSD поставляют
    случайные числа созданные ядром посредством /dev/random - этот вариант
    предпочтителен для данных систем.
    Solaris с установленным SUNWski пакетом также предоставляет /dev/random.
    В данном случае следует использовать параметр конфигурирования:

    [H samp]
       --enable-static-rnd=linux
    [H /samp]

    Также существует устройство ядра для поставки случайных чисел разработанное
    Andi Maier [H a href= http://www.cosy.sbg.ac.at/~andi/SUNrand/]<http://www.cosy.sbg.ac.at/~andi/SUNrand/>[H /a], но это всё еще бета версия.
   Используйте ее на свой страх и риск!

    На других системах, хорошим выбором будет Entropy Gathering Daemon (EGD).
    Это perl-демон, который наблюдает за системной активностью и хеширует ее в
    случайные числа. См. страницу загрузки [H a href=[$hGPGHTTP]/download/]<[$hGPGHTTP]/download/>[H /a]
    для получения EGD. Используйте параметр конфигурирования:

    [H samp]
       --enable-static-rnd=egd
    [H /samp]

    Если указанные выше параметры не работают, можете использовать генератор
    случайных чисел "unix". Но он [H B]очень[H /B] медленен и его следует
    избегать. Качество поставляемых случайных чисел не очень хорошее, поэтому
    им не следует пользоваться для важных данных.

<Didea>
<Q> Как добавить поддержку RSA и IDEA?

    RSA включен в поставку GnuPG начиная с версии 1.0.3.

    Официальная поставка GnuPG не включает поддержку IDEA по причине
    патентных ограничений. Патент на IDEA истечет в 2007, поэтому не ждите
    официальной поддержки до этого момента.

    Однако существует неофициальный модуль поддержки IDEA для GnuPG.
    Он доступен на
    [H a href=ftp://ftp.gnupg.dk/pub/contrib-dk/]<ftp://ftp.gnupg.dk/pub/contrib-dk/>[H /a]. Ищите:

    [H pre]
       idea.c.gz        (модуль на C )
       idea.c.gz.sig    (файл подписи)
    [H /pre]

    [H pre]
       ideadll.zip      (модуль на C и win32 dll)
       ideadll.zip.sig  (файл подписи)
    [H /pre]

    Директивы компиляции в заголовках файлов. Вам будет необходимо добавить
    следующую строку в Ваш файл персональных настроек ~/.gnupg/gpg.conf:

    [H samp]
       load-extension idea
    [H /samp]


<S> ПРИМЕНЕНИЕ

<Q> Каков рекомендуемый размер ключа?

    1024 бита для DSA подписей; даже и для простых ElGamal подписей.
    Этого достаточно, т.к. при большем рамере ключа слабейшим звеном
    оказывается уже размер хеша.
    Вы можете добавить ключи шифрования большего размера, но Вам следует
    просмотреть отпечаток этого ключа командой:

    [H samp]
       $ gpg --fingerprint <User ID>
    [H /samp]

    Вам следует придерживаться стандартных алгоритмов (т.е. DSA для подписей
    и ElGamal для шифрования). Ключ ElGamal для подписи невыгоден по следующим
    причинам: большой размер подписей; сложно создать пригодный для подписи ключ,
    который сможет противостоять настоящим атакам, Вы не получите чего-то особенно
    секретного или надежного в сравнении с DSA, плюс существуют также проблемы
    совместимости с некоторыми версиями PGP.
    Он был предложен потому, что в то в свое время имелись проблемы
    с патентами на DSA.

<Q> Почему процесс создания ключей занимает иногда так много времени?

    Основная проблема в том, что необходимо собрать много случайных чисел
    и для этого мы (в Linux - с устройства /dev/random) должны собирать
    случайные числа. На самом деле трудно заполнить внутренний буфер Linux
    энтропией; я говорил с Ted Ts'o и он сказал, что лучший способ заполнить
    буфер это понажимать клавиши на Вашей клавиатуре. Хорошая секретность
    имеет свою цену. Я нажимаю на клавиши Shift, Ctrl, Alt and CapsLock
    потому, что эти клавиши не выводят что-либо на экран. И таким путем
    Вы получаете ключи быстрее (это то, что делает PGP2).

    Также проблема может быть в том, что другая программа забирает данные
    из Вашего генератора случайных чисел (например из /dev/random).

<Q> И это действительно долго, когда я работаю на удаленной системе. Почему?

    Никогда не делайте этого! Вы никогда не должны создавать ключи и
    даже пользоваться GnuPG на удаленной системе потому, что Вы обычно
    не имеете физического контроля за Вашей таблицей секретных ключей
    (которая зачастую может быть неустойчива к атакам на подбор стандартных
    паролей по словарю). Я настойчиво рекомендую всем создавать ключи только
    на локальном компьютере (неподключенный лаптоп возможно наилучший выбор).
    А если Вы вынуждены делать это на Вашем подключенном к сети компьютере
    (я знаю, все мы так делаем) будьте уверены, что используете сильный пароль
    для всех Ваших аккаунтов и для секретного ключа, и что Вы можете доверять
    Вашему системному администратору.

    Когда я проверял GnuPG на удаленной машине через ssh (это была не альфа);-)
    я имел некоторые проблемы. Создание ключа занимамо *очень* долгое время,
    так что я использовал специальный параметр --quick-random для создания
    несекретных ключей, которые пригодны разве что для некоторых экспериментов.

<Q> Каковы различия между командами и параметрами?

    Если Вы выполните 'gpg --help', то Вы получите два разных списка.
    Первый - список команд, а второй - параметров. Всякий раз когда Вы
    запускаете GPG, Вы [H b]должны[H /b] использовать хотя бы одну команду
    (с одним исключением, см. ниже). Вы [H b]можете[H /b] использовать один
    или более параметров. Команде следует, в точности по описанию, находиться
    в конце списка аргуметов, после всех параметров. Если команда задает имя
    файла (в основном все они это делают), имя файла должно быть в самом конце.
    Базовый формат вызова gpg:

    [H samp]
       $ gpg [--option что-либо] [--option2] [--option3 что-либо] --command файл
    [H /samp]

    Некоторым параметрам требуются аргументы. Например параметр --output
    (который можно сократить до -o) это параметр которому требуется имя файла.
    Аргументы параметра должны следовать непосредственно после требующего их
    параметра, иначе gpg не сможет узнать какой аргумент, какому параметру
    принадлежит. Как параметр --output так и имя файла должны предшествовать
    команде. Параметр --recipient (-r) задает имя или KeyID того, кому
    шифруется сообщение и которые должны находиться справа от параметра -r.
    Команда --encrypt (-e) должна находится после всех параметров и следовать
    за файлом, который Вы хотите шифровать. Поэтому в данном примере командная
    строка должна иметь следующий вид:

    [H samp]
       $ gpg -r Алиса -o секрет.txt -e тест.txt
    [H /samp]

    Если Вы используете полные названия параметров, читать станет легче:

    [H samp]
       $ gpg --recipient Алиса --output секрет.txt --encrypt тест.txt
    [H /samp]

    Если Вы шифруете файл с расширением ".txt" и Вы можете захотите
    получить результат в текстовом виде ASCII-формата (не двоичном),
    Вам следует воспользоваться параметром --armor (-a), который
    не имеет аргументов:

    [H samp]
       $ gpg --armor --recipient Алиса --output секрет.txt --encrypt тест.txt
    [H /samp]

    Если предположить квадратные скобки вокруг параметров, это будет
    выглядеть так:

    [H samp]
       $ gpg [--armor] [--recipient Алиса] [--output секрет.txt] --encrypt тест.txt
    [H /samp]

    Параметры могут следовать в произвольном порядке:

    [H samp]
       $ gpg --output секрет.txt --recipient Алиса --armor --encrypt тест.txt
    [H /samp]

    Если имя Вашего файла начинается с дефиса (например файл "-a.txt"),
    GnuPG примет это за параметр и может сообщить об ошибке. В таких случаях
    следует использовать "./-a.txt" или остановть обработку команд и параметров
    двойным дефисом: "-- -a.txt".

    [H B]Исключение составляет только одна команда:[H /B] одновременное
    подписывание и шифрование. Для этого Вы следует скомбинировать обе команды,
    как показано ниже:

    [H samp]
       $ gpg [--параметры] --sign --encrypt тест.txt
    [H /samp]

<Q> Не могу удалить User ID из связки секретных ключей потому,
    что он отсутствует в связке открытых ключей. Что делать?

    Поскольку Вы можете выбрать User ID только из списка открытых ключей,
    то прямого способа сделать это нет. Однако сделать это на самом деле
    совсем не трудно. Создайте новый User ID с полностью идентичным именем
    и увидите, что получилось два идентичных User ID в связке секретных
    ключей. Теперь выберите данный User ID и удалите его. Оба User ID будут
    удалены из связки секретных ключей.

<Q> Не могу удалить секретный ключ потому, что пропал открытый ключ.
    Что делать?

    Поиск ключа, для выполнения операций с ним, всегда производится по связке
    открытых ключей, поэтому невозможно удалить секретный ключ не имея
    открытого ключа. Обычно не должно возникать ситуаций, когда открытый ключ
    потерян, а секретный ключ всё еще присутствует. Но такое случается,
    поэтому в GnuPG имеется способ сделать это: просто используйте длинный
    KeyID для указания удаляемого ключа, который можно получить применением
    параметра --with-colons (см. 5 поле в строке начинающейся с "sec").

    Если потерян открытый ключ и нужно взамен его создать новый для
    продолжения использования секретного ключа, можно воспользоваться
    утилитой gpgsplit так, как описано в вопросе <Rgpgsplit>.

<Q> Что означают понятия доверие, достоверность и доверие владельцу?

    Ответ приведу с английским текстом, т.к. вопрос очень важен.

    В GnuPG термин "доверие владельцу" используется вместо "доверие",
    чтобы показать, что это есть величина, которая относится к ключу
    и выражает степень Вашего доверия к владелецу данного ключа и к тому,
    как он относится к подписыванию других ключей. "Достоверность"
    (вычисленое доверие) есть величина, показывающая насколько высоким
    GnuPG считает доверие к ключу (т.е. насколько можно быть уверенным в том,
    что ключ действительно принадлежит тому, кто указан, как владелец данного
    ключа). Для большей информации о степенях доверия см. главу "Сеть доверия"
    в The GNU Privacy Handbook (существует в русском переводе).
    
    With GnuPG, the term "ownertrust" is used instead of "trust" to
    help clarify that this is the value you have assigned to a key
    to express how much you trust the owner of this key to correctly
    sign (and thereby introduce) other keys. The "validity", or
    calculated trust, is a value which indicates how much GnuPG
    considers a key as being valid (that it really belongs to the
    one who claims to be the owner of the key). For more information
    on trust values see the chapter "The Web of Trust" in The GNU
    Privacy Handbook.

<Q> Как подписать файл патча?

    Воспользуйтесь "gpg --clearsign --not-dash-escaped ...". Есть проблема с
    --clearsign в том, что все строки начинающиеся с дефиса выделяются
    как "- "; но поскольку diff создает множество строк начинающихся с дефиса,
    то если они будут выделены таким образом, будет не очень хорошо для Вашего
    патча ;-).
    Для применения патча без удаления прозрачной подписи, можно использовать
    специальный параметр --not-dash-escaped для отключения выделния таких
    последовательностей. Не следует отсылать такие патчи по email потому,
    что пробелы и завершители строк также являются частью подписи, а почтовик
    может не сохранить их. Если Вы хотите послать файл почтой, то можно
    подписать его используя Ваш MUA (Mail User Agent, т.е Почтовый агент).

<Q> Где параметр "encrypt-to-self"?

    Используйте "--encrypt-to Ваш_KeyID". Можно использовать больше, чем одну
    копию данного параметра. Временно отменить действие данного параметра
    можно использованием параметра "--no-encrypt-to".

<Q> Как избавиться от строки Version и добавить комментарий в заголовках
    сообщений кодированных в ASC-формате?

    Используйте " --no-version --comment '' ". Учтите, что стандарт требует
    обязательного наличия пустой строки.

<Q> Что означает "Используется таблица символов xxxx."?

    Вы увидите данное сообщение, когда необходимо преобразование введенных
    данных в UTF-8. Набор символов Вашей системы отличен от UTF-8 и GnuPG
    вынуждено преобразовать введенную информацию из используемого Вами набора
    символов в соответствующий набор символов UTF-8.
    По умолчанию используется стандартный набор символов "iso-8859-1".
    Вы можете указать используемый системой набор символов используя параметр
    " --charset ". Важно, чтобы заданная таблица символов соответствовала
    используемой в Вашей системе. В противном случае Вы должны пользоваться
    только символами имеющими 7-битное представление, т.к. все 8-битные
    символы будут преобразованы в UTF-8 и Вы можете столкнуться с серьезными
    проблемами, если неверно указали используемую таблицу символов.

    Для русскоязычной аудитории:  не рекомендуется использовать русский язык
    в User ID и коментариях. На момент перевода GnuPG поддерживает только
    UTF-8 и KOI8-R, которые могут использоваться на Unix системах, но не
    используются в Windows. В Windows категорически запрещается использовать
    русский язык в именах и комментариях User ID! Хотя некоторые
    программы-оболочки могут понимать (а может и нет) большее число кодировок.

<Q> Как просмотреть список KeyID для которых зашифровано сообщение?

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

<Q> Почему я не могу расшифровать файлы зашифрованные симметричным
    шифром (-c) используя GnuPG версий ниже 1.0.1.

    Версии GnuPG ниже 1.0.1 содержали ошибку, которая проявлялась только
    при использовании шифров 3DES и Twofish для симметричного шифрования
    (они никогда не использовались, как шифры по умолчанию).
    Ошибка исправлена, но для расшифровки таких файлов необходимо запустить
    gpg с параметром " --emulate-3des-s2k-bug "; расшифровать файл и 
    зашифровать снова без данного параметра.

    Замечение: Данный параметр удален в GnuPG версии 1.1.0 и более новых,
    поэтому Вам придется воспользоваться версией между 1.0.1 и 1.0.7 для
    расшифровки таких файлов.

<Q> Как можно автоматизировать работу с GnuPG?

    Следует воспользоваться параметром --batch и не использовать паролей,
    т.к. обычно нет возможности хранить их безопаснее, чем в связке секретных
    ключей. Рекомендуем следующий способ создания ключей для автоматизации
    работы:

    На безопасном компьютере:
    [H ol]
    [H li] Если Вам требуется автоматическое подписывание, создайте для
           Вашего ключа - подключ имеющий возможность подписи (используйте
	   интерактивное меню редактирования предоставляемое командой 
	   " gpg --edit-key KeyID ", введите "addkey" и выберите типа ключа DSA).
    [H li] Необходим пароль.
    [H li] gpg --export-secret-subkeys --no-comment ВашПодключ >secring.auto
    [H li] Скопируйте secring.auto и файл таблицы открытых ключей во временный
           каталог.
    [H li] Перейдите в этот каталог.
    [H li] " gpg --homedir . --edit ВашПодключ " и используйте "passwd" для
           удаления пароля из подключа. Можете заодно удалить и все неиспользуемые
	   подключи.
    [H li] Скопируйте secring.auto на дискету и вставьте ее в нужный компьютер.
    [H /ol]

    На нужном компьютере:
    [H ol]
    [H li] Установите secring.auto, как связку секретных ключей.
    [H li] Теперь можно запустить Ваш новый сервис. Хорошо бы также установить
           систему обнаружения вторжений, для предупреждения об удачном
	   вторжении, после чего Вы сможете отозвать все подключи
	   установленные на данном компьютере и создать новые.
    [H /ol]

<Q> Какие почтовые клиенты можно использовать совместно с GnuPG?

    Использование GnuPG для шифрования почтовой корреспонденции это
    одно из наиболее популярных его применений. Некоторые почтовые программы
    или почтовые агенты (MUA) умеют работать с GnuPG. На данный момент
    существует два способа шифрования с применением GnuPG: "старый метод"
    с применением ASCII-кодирования (т.е. прозрачные подписи и шифрование)
    и в соответствиии с RFC 2015 (ранее именуемое PGP/MIME, сейчас OpenPGP).
    Последнее полностью поддерживает MIME. Некоторые MUA поддерживают только
    один из этих методов. Поддержка может быть как встроена в MUA, так и
    реализоваться в виде подключаемых подулей "плагинов", а также может
    выполняться внешним, дополнительным программным обеспечением.

    Нижепреведённый список неполон:

    [H pre]
       MUA            OpenPGP ASCII   Как? (N,P,T)
       -------------------------------------------------------------
       Calypso           В      Д      П (Unixmail)
       Elm               В      Д      Д (mailpgp,morepgp)
       Elm ME+           В      Д      С
       Emacs/Gnus        Д      Д      Д (Mailcrypt,gpg.el)
       Emacs/Mew         Д      Д      С
       Emacs/VM          В      Д      Д (Mailcrypt)
       Evolution         Д      Д      С
       Exmh              Д      Д      С
       GNUMail.app       Д      Д      П (PGPBundle)
       GPGMail           Д      Д      В
       KMail (<=1.4.x)   В      Д      В
       KMail (1.5.x)     Д(П)   Д(В)   П/В
       Mozilla           Д      Д      П (Enigmail)
       Mulberry          Д      Д      П
       Mutt              Д      Д      С
       Sylpheed          Д      Д      С
       Sylpheed-claws    Д      Д      С
       TkRat             Д      Д      С
       XEmacs/Gnus       Д      Д      Д (Mailcrypt)
       XEmacs/Mew        Д      Д      С
       XEmacs/VM         В      Д      Д (Mailcrypt)
       XFmail            Д      Д      С

       С-Сам, встроена поддержка , П-плагин , Д-Дополнительной программой
    [H /pre]

    Ниже дан список несвободных MUA. Проект GNU не рекомендует применение
    этих программ, но они представлены для полноты информации.

    [H pre]
       MUA            OpenPGP    ASCII   How? (N,P,T)
       -------------------------------------------------------------
       Apple Mail        Д         Д      П (GPGMail)
       Becky2            Д         Д      П (BkGnuPG)
       Eudora            Д         Д      П (EuroraGPG)
       Eudora Pro        Д         Д      П (EudoraGPG)
       Lotus Notes       Н         Д      П
       Netscape 4.x      Н         Д      П
       Netscape 7.x      Д         Д      П (Enigmail)
       Novell Groupwise  Н         Д      П
       Outlook           Н         Д      П (G-Data)
       Outlook Express   Н         Д      П (GPGOE)
       Pegasus           Н         Д      П (QDPGP,PM-PGP)
       Pine              Н         Д      Д (pgpenvelope,(gpg|pgp)4pine)
       Postme            Н         Д      П (GPGPPL)
       The Bat!          Д(>=1.62) Д      С (Ritlabs)
    [H /pre]

    Хороший обзор поддержки OpenPGP можно найти на:[H br]
    [H a href=http://www.openpgp.fr.st/courrier_en.html]<http://www.openpgp.fr.st/courrier_en.html>[H /a] и[H br]
    [H a href=http://www.bretschneidernet.de/tips/secmua.html]<http://www.bretschneidernet.de/tips/secmua.html>[H /a].

    Пользователи программ MUA для Win32 для использования OpenPGP могут рассмотреть
    применение GPGrelay [H a href=http://gpgrelay.sourceforge.net]<http://gpgrelay.sourceforge.net>[H /a], это небольшой
    email-ориентированный сервер, который использует GnuPG для предоставления
    возможности почтовым клиентам отправлять и принимать сообщения
    соответствующие PGP-MIME (RFC 2015).

<Q> Не могу найти библиотеки gpg?

    Про них часто спрашивают. Однако текущая точка зрения разработчиков GnuPG,
    то что это создаст некоторые проблемы безопасности и следовательно 
    не стоит ожидать подобного в ближайшем будущем. Однако в некоторых
    областях возможно применение gpgme. Вы найдете его на [H a href=[$hGPGFTP]/gcrypt/alpha/gpgme]<[$hGPGFTP]/gcrypt/alpha/gpgme>[H /a].

<Q> Я благополучно создал сертификат отзыва, но я не понимаю, как отослать его
    на сервер ключей.

    Большинство серверов ключей не принимают 'голый' сертификат отзыва.
    Вам придется сначала импортировать сертификат в GnuPG:

    [H samp]
       $ gpg --import МойСертификатОтзыва.asc
    [H /samp]

    затем отошлите отозванный ключ на сервер ключей:

    [H samp]
       $ gpg --keyserver keyserver.kjsl.com --send-keys Мой_KeyID
    [H /samp]

    (или воспользуйтесь для этого Web интерфейсом сервера ключей).

<Dhomedir>
<Q> Как перенести файл таблицы связок ключей в другой каталог?

    GnuPG хранит несколько файлов в специальном домашнем каталоге.
    Это файл персональных настроек, pubring.gpg, secring.gpg, trustdb.gpg,
    и другие. GnuPG всегда будет создавать и использовать эти файлы.
    Для Unix систем домашним обычно будет каталог " ~/.gnupg ";
    для Windows " C:\gnupg\ ".

    Если Вы хотите переместить эти файлы в другое место,
    воспользуйтесь параметром:

    [H samp]
       --homedir /Мой/путь/
    [H /samp]

    и тогда GnuPG создаст эти файлы в указанном каталоге. Файл таблицы открытых
    ключей будет в " /Мой/путь/pubring.gpg ". Таким образом можно хранить
    свои секреты на дискете. Не используйте для этого параметр " --keyring ",
    т.к. он задает дополнительные файлы связок ключей.

<Q> Как проверить подписанный пакет?

    Перед проверкой подписи, сопровождающей пакет, необходимо сперва
    импортировать ключ поставщика подписи, организации или человека
    создавщего подпись в используемую таблицу связок ключей. Для
    продотвращения предупреждений от GnuPG ключу следует иметь степень
    достоверности (или подписать его локально).

    Скачайте файл с отделенной подписью вместе с пакетом. Обычно эти файлы
    имеют тоже имя, что и подписанный пакет со следующими расширениями (.sig)
    для бинарных или (.asc) для ASCII-кодированных подписей.

    После того, как ключ импортирован и пакет с сопровождающей его подписью
    получен, используйте:

    [H samp]
       $ gpg --verify ФайлПодпись ПодписанныйФайл
    [H /samp]

    Если файл подписи имеет то же имя, что и файл пакета, то для проверки
    пакета достаточно указать только файл подписи, тогда GnuPG получит
    имя проверяемого файла путем удаления из имени расширения .sig или .asc.
    Например, для проверки пакета названного Пакет.tar.gz используйте:

    [H samp]
       $ gpg --verify Пакет.tar.gz.sig
    [H /samp]

<Q> Как экспортировать связку ключей только с избранными ключами?

    Если Вы желаете создать таблицу связок ключей имеющую только небольшое
    подмножество ключей из Вашей основной таблицы связок, то просто укажите
    ключи, которые Вы хотите экспортировать:

    [H samp]
       $ gpg --armor --export Ключ1 Ключ2 Ключ3 Ключ4 > Ключи1-4.asc
    [H /samp]

<Dgpgsplit>
<Q> Имеется секретный ключ, но я потерян открытый ключ. Что можно сделать?

    Все OpenPGP секретные ключи имеют внутри себя копию открытого ключа
    и имеется возможность создать новый открытый ключ используя секретный.

    Утилита для преобразования секретного ключа в открытый ключ (сейчас
    это параметр запуска утилиты gpgsplit) включена в дистрибутив GnuPG
    версии 1.2.1 и новейшие (а также может быть найдена в CVS).
    Пример использования:

    [H samp]
       $ gpgsplit --no-split --secret-to-public secret.gpg >publickey.gpg
    [H /samp]

    Сперва следует экспортировать секретный ключ и преобразовывать
    только его. Хотя использование всей таблицы также будет работать.
    После завершения, файл publickey.gpg можно импортировать в GnuPG
    обычным способом.

<Q> Письмо с подписью имеет неверную подпись. Почему?

    Если Вы используете web-mail:
    Убедитесь, что в настройках web-mail адреса отключено использование
    HTML форматирования для отправляемых сообщений имеющих прозрачную подпись.
    Такое форматирование может дополнить сообщение пробелами, символами
    табуляции и в итоге дать неверную подпись. Отправленное чистотекстовым
    сообщение получатель сможет скопировать текстовый файл для проверки или
    возможно web-mail сервис может позволить приложить подписанное сообщение,
    как файл, если нет возможности отправки его чистотекстовым.

    Для русскоязычной аудитории: существует также проблема таблиц символов.
    Сообщение на русском языке может подвергнуться перекодировке по пути
    следования (и не один раз). Например отправленное в cp1251 сообщение
    может прийти к получателю в koi8-r. Так же многие почтовые программы
    по разному совмещают проверку/подписывание сообщений с их
    перекодировыванием в другие кодировки. Например почтовая программа
    в Windows показывает сообщение в windows кодировке cp1251, а
    рекомендуемая кодировка для email koi8-r и если в настройках программы
    выбрана эта кодировка для отправки сообщений, то почтовый агент может
    подписать тескт в cp1251, а затем сконвертировать его в koi8-r, что
    приведет к неверной подписи, если программа у получателя не имеет
    такой же ошибки (или не знает о ней). Аналогично может происходить
    и при проверке сообщения созданного в koi8-r, но отображаемого
    в cp1251.


<S> ПРОБЛЕМЫ СОВМЕСТИМОСТИ

<Dcompat>
<Q> Как зашифровать сообщение в GnuPG так, чтобы его можно было бы
    расшифровать в PGP?

    Это зависит от версии PGP.

    [H ul]
    [H li]PGP 2.x[H br]
    Обычно нельзя этого сделать потому, что PGP 2.x обычно использует шифр IDEA,
    который не поддерживается GnuPG, т.к. данный алгоритм шифрования патентован
    (см. <Ridea>), но если Вы имеете модифицированную версию PGP можете
    попробовать:

    [H samp]
       $ gpg --rfc1991 --cipher-algo 3des ...
    [H /samp]

    Пожалуйста не пользуйтесь каналами для передачи данных в gpg,
    а сделайте это используя файл; иначе PGP 2 не сможет понять это.

    Вы не сможете зашифровать симметричным шифром файл для PGP 2.
    

    [H li]PGP 5.x и новейшие[H br]
    Необходимо использовать два параметра:

    [H samp]
       --compress-algo 1 --cipher-algo cast5
    [H /samp]

    Можно также воспользоваться "3des" вместо "cast5"; "blowfish" работает
    не со всеми версиями PGP 5. Также можно добавить параметр:

    [H samp]
       compress-algo 1
    [H /samp]

    в файл персональных настроек " ~/.gnupg/gpg.conf ", что не помешает
    нормальной работе GnuPG.
    Это относится и к симметричному шифрованию.
    [H /UL]

<Q> Как перейти с PGP 2.x на GnuPG?

    PGP 2 использует RSA и IDEA алгоритмы шифрования. Срок патента на RSA
    истек и RSA поддерживается GnuPG с версии 1.0.3, а IDEA алгоритм остается
    патентованным до 2007. При определенных условиях можно пользоваться
    IDEA даже сейчас. В этом случае следует прочитать вопрос <Ridea>
    о том, как получить поддержку IDEA в GnuPG и прочитать
    [H a href=[$hGPGHTTP]/gph/en/pgp2x.html]<[$hGPGHTTP]/gph/en/pgp2x.html>[H /a] для выполнения перехода.

<Q> (удален)

    (пусто)

<Q> Почему PGP 5.x не сможет шифровать сообщения некоторыми ключами?

    PGP, Inc. отказалость от использования ключей ElGamal типа 20 даже для
    шифрования. Они поддерживают только тип 16 (котрый идентичен, по крайней
    мере для расшифрования). Для больше совместимости, GnuPG (с версии 0.3.3),
    также использует тип 16 для подключей ElGamal, которые создаются, если
    выбран рекомендованный по умолчанию алгоритм ключа. Можно добавить
    ключ ElGamal типа 16 в связку ключей.

<Q> Почему PGP 5.x не сможет проверить мои подписи?

    PGP 5.x не понимает подписи v4, но OpenPGP требует v4 подписей, что
    GnuPG и делает по умолчанию. Используйте параметр "--force-v3-sigs" для
    создания v3 подписей.

<Q> Как перенести степени доверия владельцам ключей из PGP в GnuPG?

    Существует скрипт в каталоге tools, что бы помочь Вам. После импорта
    из PGP таблицы связок ключей можно выполнить следующию команду:

    [H samp]
       $ lspgpot pgpkeyring | gpg --import-ownertrust
    [H /samp]

    где pgpkeyring это оригинальная таблица связок ключей, а не GnuPG таблица,
    которую Вы возможно создали на первом этапе.

<Q> PGP не нравится мой секретный ключ.

    Старые версии PGP могут не работать с некоторыми пакетами создаваемыми
    GnuPG. Эти пакеты создаются в полном соотвествии с OpenPGP; однако PGP
    не настоящее OpenPGP. Обойти это можно экспортировав секретные ключи
    следующей командой:

    [H samp]
       $ gpg --export-secret-keys --no-comment -a Ваш-KeyID
    [H /samp]

    Другая возможная причина: по умолчанию GnuPG шифрует секретный ключ
    симметричным шифром Blowfish. Старые версии PGP поймут только симметричные
    шифры 3DES, CAST5 или IDEA. Используйте следующий способ, чтобы
    перешифровать секретный ключ gpg другим шифром:

    [H samp]
       $ gpg --s2k-cipher-algo=CAST5 --s2k-digest-algo=SHA1
         --compress-algo=1  --edit-key <User ID>
    [H /samp]

    Затем командой passwd можно сменить пароль (можно сменить его на тотже
    самый, но он зашифруется уже шифром CAST5).

    Сейчас можно экспортировать ключ и PGP должно принять его.

    Для PGP 6.x используются следующие параметры экспорта:

    [H samp]
       $ gpg --s2k-cipher-algo 3des --compress-algo 1 --rfc1991
         --export-secret-keys <KeyID>
    [H /samp]

<Doptions>
<Q> GnuPG больше не инсталлирует файл " ~/.gnupg/options " file. Он не нужен?

    Нет. Файл " ~/.gnupg/options" переименован в " ~/.gnupg/gpg.conf" для
    всех версий новее 1.1.92. Если файл " ~/.gnupg/options " существует, то
    он будет найден при установке и всё еще будет использован, но данное
    переинменование потребуется для совместимости по именам файлов с будущими
    инструментами. Существующий файл настроек можно переименовать в gpg.conf
    для обновляющихся пользователей и получающих сообщение, что "файл
    настроек старого формата проигнорирован" (это происходит, когда программа
    обнаруживает оба файла и gpg.conf, и options).

<Q> Как экспортировать ключи GnuPG для использования в PGP?

    Данный вопрос задают настолько часто, что здесь получилось целое HOWTO:

    PGP сможет (для большинства типов ключей) использовать созданные в GnuPG
    секретные ключи. Проблемы возникают от того, что GnuPG поддерживает
    немного больше положений стандарта OpenPGP, чем PGP. Если секретный ключ
    использует одно из них, то PGP отвергнет их или позднее могут возникать
    какие-либо проблемы. Учтите, что PGP совсем не признает ElGamal ключи
    предназначенные для подписи, так что они неприменимы ни в одной версии.

    Данные инструкции применимы для GnuPG 1.0.7 и последующих,
    а также для PGP 7.0.3 и последующих.

    Начнем с редактирования ключа. Большинство параметров не обязательны,
    т.к. значения используемые по умолчанию правильны, но лучше воспризвести всё
    в точности потому, что некоторые иные значения параметров могут быть заданы
    в файле персональный настроек.

    [H samp]
       $ gpg --s2k-cipher-algo cast5 --s2k-digest-algo sha1 --s2k-mode 3
         --simple-sk-checksum --edit KeyID
    [H /samp]

    Отключаем некоторые особенности GnuPG. Устанавливаем предпочтения
    для шифров, хешей и сжатия в понимаемые PGP. (Да, Я понимаю, что
    список шифров получился своеобразный, но это то, что использует PGP
    без IDEA).

    [H samp]
       > setpref S9 S8 S7 S3 S2 S10 H2 H3 Z1 Z0
    [H /samp]

    Теперь сохраняем список в ключе.

    [H samp]
       > updpref
    [H /samp]

    И наконец, мы должны расшифровать секретный ключ и зашифровать заново
    шифром, который понравится PGP. Он указан в строке параметров при
    вызове команды --edit выше, поэтому сейчас необходимо только сменить
    пароль. Можно использовать и старый пароль, а можно воспользоваться
    возможностью сменить его наконец.

    [H samp]
       > passwd
    [H /samp]

    Сохраняем изменения.

    [H samp]
       > save
    [H /samp]

    Сейчас можно использовать обычный экспорт:

    [H samp]
       $ gpg --export KeyID > МойОткрытыйКлюч.pgp[H br]
       $ gpg --export-secret-key KeyID > МойСекретныйКлюч.pgp
    [H /samp]

    За эту информацию спасибо David Shaw!


<S> ПРОБЛЕМЫ и СООБЩЕНИЯ ОБ ОШИБКАХ

<Q> Что означает сообщение "ВНИМАНИЕ: используется незащищенная память!"

    GnuPG требует установки прав setuid(root) на многих системах.
    Это необходимо для блокирования страниц памяти. Блокирование страниц
    не позволяет операционной системе сохранять их на диск, что позволяет
    хранить Ваши данные в секрете. Если Вы не получаете это сообщение,
    то видимо операционая система позволяет блокировать страницы
    непревелигированным пользователям. GnuPG отказывается от
    привелигированного режима сразу после блокирования страниц.

    Для установки прав setuid(root) исполняемому файлу gpg выполните:

    [H samp]
       $ chmod u+s /путь/к/gpg
    [H /samp]

    или

    [H samp]
       $ chmod 4755 /путь/к/gpg
    [H /samp]

    Некоторые люди предпочитают избегают применения setuid(root), если
    нет каких-либо причин для создания особой секретности. Посоветуйтесь
    с системным администратором, если нет возможности выполнить указанные
    действия самостоятельно.

    На UnixWare 2.x и 7.x следует установить GnuPG с привилегиями 'plock'
    для получения аналогичного эффекта:

    [H samp]
       $ filepriv -f plock /путь/к/gpg
    [H /samp]

    Если нет возможности или Вы не хотите устанавливать для GnuPG права
    setuid(root), можно воспользоваться параметром "--no-secmem-warning"
    или добавить:

    [H samp]
       no-secmem-warning
    [H /samp]

    в файл персональных настроек ~/.gnupg/gpg.conf (это избавит
    от предупреждений).

    На некоторых системах (например Windows) GnuPG не блокирует страницы
    памяти и старые версии GnuPG (<=1.0.4) предупреждали:

    [H samp]
       gpg: Please note that you don't have secure memory
       gpg: Учтите, что Вы не имеете безопасной памяти
    [H /samp]

    Данное предупреждение нельзя было отключить вышеуказанным параметром потому,
    что причина его возникновения очень серьезна. Однако это слишком смущало
    пользователей, поэтому сообщение было убрано.

<Q> Поддержка больших файлов (LFS) не работает.

    LFS корректно работает начиная с версии 1.0.4. Если configure не
    видит этого - попробуйте другой компилятор. egcs 1.1.2 работает
    прекрасно, другие gccs иногда нет. Некоторые проблемы компиляции
    GnuPG 1.0.3 и 1.0.4 на HP-UX и Solaris были вызваны плохой 
    поддержкой LFS.

<Q> При редактировании ключа значения доверий отображаются некорректно после
    подписывания User ID. Почему?

    Это вызвано тем, что некоторая информация хранится непосредственно в
    trustdb, но все вычисления степеней доверия могут быть выполнены только
    после команды сохранения " save ". Это трудно поправимая ошибка архитектуры
    программы, которая будет пересмотрена в какой-нибудь из будущих версий.

<Q> В чем смысл сообщения "skipping pubkey 1: already loaded"?

    Шифр RSA входит в пакет GnuPG начиная с версии 1.0.3. Если Вы всё еще
    используете параметр "load-extension rsa" в файле персональных
    параметров Вы увидите данное сообщение.
    Просто удалите данную команду загрузки модуля из файла персональных
    параметров.

<Q> GnuPG 1.0.4 не создает ~/.gnupg.

    Это известная ошибка, уже исправленная в последовавшей версии GnuPG.

<Q> Подписи ElGamal не проверяются всеми версиями начиная с 1.0.2

    Используйте параметр --emulate-md-encode-bug.

<Q> Старые версии GnuPG не могут проверить ElGamal подписи

    Обновите GnuPG до версии 1.0.2 или новее.

<Q> При использовании --clearsign, в тексте появляются дополнительные минусы.
    Почему?

    Это называется отделенный черточками текст, что является требованием
    OpenPGP. Это происходит всегда, когда строка начинается с черточки ("-")
    и необходмо для четкого отделения структур подписи (типа
    "-----BEGIN PGP SIGNATURE-----") от других строк начинающихся с более
    чем двух черточек.

    Если Вы используете GnuPG для обработки подобных сообщений, то все
    дополнительные черточки удалятся. Хорошие почтовые клиенты (MUA)
    удаляют эти черточки при отображении сообщения.      

<Q> Что означает сообщение "не могу обработать эти множественные подписи"
    
     Из-за различий в форматах сообщений GnuPG не всегда может правильно
     разделить файл с множественными подписями на части. Данное сообщение
     указывает на проблемы с входными данными.

     Единственный способ иметь множественные подписи в файле это использование
     формата OpenPGP с пакетами One-Pass Signature (которые используются GnuPG
     по умолчанию) или формат прозрачных подписей.
     
<Q> Отправил ключ на сервер ключей, но ничего не произошло
    Вы счастливый обладатель версии GnuPG 1.0.2 или старше под Windows.
    В этих версиях GnuPg данная функция еще не была реализована, но это
    не было ошибкой, поэтому и предупреждений никаких не было. Новейшие
    версии сообщают об этом.
    Обновите GnuPG до версии 1.0.4 или более новой.

<Q> Что значит сообщение "gpg: waiting for lock ..."

    Старые версии gpg любили ненормально завершаться и оставлять
    блокировочные файлы. Зайдите в ~/.gnupg удалеите все " .*.lock " файлы.

<Q> Старые версии GnuPG (например 1.0) имеют проблемы с ключами созданными
    новейшими версиями GnuPG

    Начиная с версии 1.0.3, ключи в GnuPG создаются с предпочтением
    шифра TWOFISH (и шифра AES начиная с версии 1.0.4), и что тоже важно,
    они совместимы с новым методом шифрования MDC. В будущем это станет частью
    OpenPGP и поддерживается также PGP 7. Новый метод предотвращает атаки
    на системы шифрования почты.

    Это означает, что версии GnuPG до 1.0.3 имеют проблемы с новыми ключами.
    По причине исправления ошибок и прорех в безопасности, Вам настоятельно
    рекомендуется использовать последнюю стабильную версию GnuPG. В качестве
    временной меры, для решения проблемы, Вы можете принудить GnuPG использовать
    старый шифр по умолчанию в качестве основного, добавив:

    [H samp]
       cipher-algo cast5
    [H /samp]

    в Ваш файл персональных параметров.

<Q> Начиная с 1.0.4, я вижу "не рекомендуем данный алгоритм шифрования ..."

    Если предупреждение появляется сразу после создания нового ключа, то
    Вы являетесь свидетелем ошибки версии 1.0.4. Она использует новый шифр AES
    (Rijndael), который некорректно называет "нерекомендуемым".
    Игнорируйте данной предупреждение. Все последовавшие затем версии
    GnuPG не имеют данной проблемы.

<Q> Некоторые даты отображаются как ????-??-??. Почему?

    Во многих реализациях libc, даты превышающие 2038-01-19 не могут быть
    правильно отображены. 64-bit ОС не имеют данной проблемы. Чтобы не
    выводить неверное значение даты GnuPG заменяет ее вопросиками.
    Если хотите получить корректное значение - используйте параметры
    --with-colons и --fixed-list-mode.

<Q> Проблема всё еще очтается. Как сообщить об ошибке?

    А Вы уверены, что Ваша проблема еще не обсуждалась в почтовых рассылках?
    Вы просмотрели список ошибок (ссылку Вы найдете в документации)?
    Если не уверены в том, что это ошибка, отправьте письмо в gnupg-devel
    рассылку. В противном случае воспользуйтесь системой отслеживания ошибок
    GUUG [H a href=http://bugs.guug.de/Reporting.html]<http://bugs.guug.de/Reporting.html>[H /a].

<Q> Почему GnuPG не поддерживает X.509 сертификаты?

    GnuPG во-первых, и это главное, внедряет OpenPGP стандарт (RFC 2440),
    который использует инфраструктуру отличную от X.509.

    Всё это криптосистемы с открытым ключом, но открытые ключи в них
    на самом деле обрабатываются различным образом.

<Q> Почему национальные символы в моем User ID выглядят, мягко говоря, странно?

    В соотвествии с OpenPGP GnuPG сохраняет User ID строки (и другие
    вещи) используя UTF-8. В процессе перекодирования в формат Unicode,
    многие национальные символы кодируются как дву- или трех-байтовые
    последовательности. Например, &aring; (0xE5 в ISO-8859-1)
    станет &Atilde;&yen; (0xC3, 0xA5). Это также может быть причиной того,
    почему серверы ключей не находях Ваш ключ.

<Q> Ошибка 'sed' при запуске ./configure на Mac OS X

    Это будет исправлено после обновления GnuPG до autoconf-2.50.
    До тех пор: найдите строку CDPATH в скрипте configure вставьте после него:

    [H samp]
       unset CDPATH
    [H /samp]

<Q> Почему GnuPG 1.0.6 падает на связках ключей из версии 1.0.7?

    Есть небольшая ошибка в версии 1.0.6, из-за которой которой некорректно
    обрабатываются пакеты доверий. Возможно понадобится данный патч, если нет
    возможности обновить GnuPG:

    [H a href=http://www.gnupg.org/developer/gpg-woody-fix.txt]<http://www.gnupg.org/developer/gpg-woody-fix.txt>[H /a]

<Q> После обновления GmuPG до версии 1.0.7 файлы связок ключей очень медленно
    обрабатываются. Что делать?

    Был изменен способ хранения подписей для сохранения совместимости с v3
    подписями. Можете воспользоваться новым параметром --rebuild-keydb-caches,
    который был добавлен в данной версии и предназначен для миграции на новые
    версии и также увеличивает скорость многих операций со связками ключей.
    
<Q> Разве полное доверие одному User ID-у на ключе не отменяет
    предупреждающего сообщения, при шифровании сообщения для другого User ID?

    Нет. В GnuPG версии 1.2.1 и более ранних имелась ошибка в способе
    определения достоверности ключей. В процессе разработки GnuPG 1.2.2,
    ошибка была обнаружена в коде вычисления достоверности. Ошибка приводила
    к тому, что для ключей и имеющиех больше одного User ID достоверность
    одного User ID распространялась на все присутствующие в ключе.
    Ошибка исправлена в GnuPG версии 1.2.2 и рекомендуется обновить GnuPG.
    Больше информации и патч для некоторых до-1.2.2 версий GnuPG см. здесь:

    [H a href=http://lists.gnupg.org/pipermail/gnupg-announce/2003q2/000268.html]<http://lists.gnupg.org/pipermail/gnupg-announce/2003q2/000268.html>[H /a]

<Q> Только что скомпилированная из исходников GnuPG для GNU/Linux
    основанную на RPM и GnuPG не работает. Почему?

    Многие дистрибутивы GNU/Linux, основанные на RPM, устанавливают
    GnuPG как часть стандартной инсталляции в каталог /usr/bin. Позднее,
    когда Вы компилируете и устанавливаете GnuPG из исходников, а не из
    RPM, файлы обычно (по умолчанию) сохраняются в " /usr/local/bin ", пока
    не указан параметр " --prefix " с другим каталогом при запуске configure.
    А каталог " /usr/bin " скорее всего предшествует каталогу " /usr/local/bin "
    в переменной PATH.

    Для решения данной проблемы удалите RPM версию командой " rpm -e gnupg "
    перед установкой программы из исходных текстов. Если Вы получаете
    ошибку связей при удалении старого пакета RPM (таких, как up2date
    в RedHat, который использует GnuPG), удалите пакет RPM командой
    " rpm -e gnupg --nodeps ". Все связи станут вновь актуальны после
    установки скомпилированной версии. Если по умолчанию используется
    каталог " /usr/local/bin ", некоторые пакеты (например SuSE's Yast Online
    Update) необходимо настроить на новое местоположение GnuPG в каталоге
    " /usr/local/bin " или создать символические ссылки в " /usr/bin ",
    которые будут указывать на соответствующие файлы в " /usr/local/bin ".

<S> ДРУГИЕ ВОПРОСЫ

<Q> Как пользоваться GnuPG?

    Для создания пары ключей секретный/открытый запустите:

    [H samp]
       $ gpg --gen-key
    [H /samp]

    и выберите значения по умолчанию.

    Данные зашифрованные открытым ключом могут быть расшифрованы только
    соответствующим ему секретным ключом. Секретный ключ защищается паролем,
    а открытый ключ - нет.

    Чтобы отправить шифрованное сообщение кому-либо необхоимо зашифровать
    это сообщение открытым ключом получателя и тогда он сможет расшифровать
    сообщение своим и только своим секретным ключом и вводом пароля секретного
    ключа.

    GnuPG также широко используется для создания подписей. Файлы зашифрованные
    секретным ключом могут быть расшифрованы открытым ключом. Чтобы
    подписать что-нибудь, вычисляется хеш подписываемых данных и затем
    хеш шифруется каким-либо образом секретым ключом. Если кто-либо
    имеет Ваш открытый ключ, он может проверить, что подпись создана именно
    Вами и что оно не было изменено.

    Таблица связок ключей это файл на диске, который хранит ключи.
    Есть таблица связок открытых ключей, в которой хранятся Ваши открытые
    ключи и открытые ключи Ваших друзей. Также имеется таблица связок
    секретных ключей, в которой хранятся Ваши секретные ключи и
    Вы должны беречь их от посторонних. Никогда не предоставляйте доступ
    к данным файлам другим людям и используйте *сильные* пароли для
    защиты Ваших данных.

    Вы можете зашифровать что-либо стандартным способом используя параметр
    " gpg -c ". Это позволит зашифровать данные паролем и не использовать
    открытый и секретный ключи. Если получатель шифрованного сообщения знает
    пароль - он сможет расшифровать его. Обычно это используется для
    шифрования себе. Следует пользоваться этим только для переписки с теми,
    кто знает или может легко обменяться с Вами паролями (например с Вашим
    приятелем или женой). Преимущество данного подхода в том, что можно
    время от времени менять пароль, чем снизить риск того, что многие старые
    сообщения будут прочтены теми, кто узнает Ваш пароль.

    Можно добавить/скопировать ключи в/из таблицы связок ключей командами
    " gpg --import " и " gpg --export ". " gpg --export-secret-keys "
    экспортирует секретные ключи. Это обычно не нужно делать, но можно создать
    ключ на одном компьютере, а затем перенести на другой.

    Ключи могут быть сертифицированы используя команду " gpg --edit-key ".
    Когда Вы подписываете ключ, Вы подтверждаете, что ключ принадлежит
    персоне, указанной в идентификаторе ключа. Вам следует полностью убедиться
    в том, что ключ действительно принадлежит данной персоне: Поэтому Вам
    следует проверить отпечатки ключа командой:

    [H samp]
       $ gpg --fingerprint KeyID
    [H /samp]

    по телефону (если Вы хорошо знаете голос другого человека), на
    собрании по подписыванию ключей  (обычно устраивается на компьютерных
    конференциях) или встрече местной группы пользователей GNU/Linux.

    Так, что еще. Можете воспользоваться параметром " -o ИмяФайла " для
    переназначения вывода некоторой информации в файл (используйте
    "-" для принудительного вывода в stdout). " -r " позволяет указать
    получателя (чьим открытым ключом шифровать) в командной строке вместо
    ввода в интерактивном режиме.

    Да, еще одно важное дополнение. По умолчанию зашифрованные данные
    имеют двоичный формат. Если неоходимо получить их как ASCII текст,
    который выглядит читабельным, то добавьте параметр " -a ". Но
    предпочтительно использовать MIME, который  понимаемают почтовые клиенты
    (Mutt, Pine и мн. другие).

    Существует небольшая проблема безопасности в OpenPGP (и соответственно
    в GnuPG); чтобы избежать ее Вам следует всегда подписывать и шифровать
    сообщения вместо простого шифрования.

<Q> Почему некторые подписи ELG-E ключом достоверны?

    Это ключи ElGamal, которые сгенерированы GnuPG в v3 (RFC 1991) пакетах.
    Черновой OpenPGP позднее изменил идентификатор ElGamal ключей, которые
    используются и для подписи и для шифрования, с 16 на 20.
    GnuPG сейчас использует 20 при создании новых ElGamal ключей, но всё еще
    признает 16 (которые согласно OpenPGP теперь "только для шифрования"),
    если такой ключ в v3 пакете. GnuPG единственная программа, которая
    использовала эти v3 ElGamal ключи - поэтому такое допущение вполне
    безопасно.

<Q> Как работает механизм доверий?

    Он работает более или менее похоже на то, как это сделано в PGP. Отличие
    в том, что степень доверия высисляется в тот момент, когда она необходима.
    Это одна из причин необходимости файла trustdb, который содержит
    список подписей достоверных ключей. Если Вы не запустили программу в
    пакетном режиме, то Вам предложат назначить значение параметра доверия
    (доверия владельцу ключа) для ключа.

    Вы можете просмотреть достоверность (вычисленное значение) используя
    команду.

    [H samp]
       $ gpg --list-keys --with-colons
    [H /samp] 

    Если первое поле "pub" или "uid", то второе поле показывает Ваше доверие:

    [H pre]
       o = Неизвестно (ключ нов для программы)
       e = Срок действия ключа истек
       q = Не определено (нет присвоенного значения)
       n = Полностью нет доверия данному ключу
       m = Ограниченное доверие ключу
       f = Полное доверие
       u = Абсолютное доверие ключу; обычно используется,
           только для ключей, для которых Вы имеете также и секретный ключ.
       r = Ключ был отозван
       d = Ключ отключен
    [H /pre]

    Значение в "pub" записи предпочтительнее всех "uid" записей.
    Вы можете получить список присвоенных степеней доверия (степень Вашего
    доверия корректности подписывания ключей другими людьми) командой:

    [H samp]
       $ gpg --list-ownertrust
    [H /samp]

    Первое поле это отпечаток главного ключа, а второе поле - присвоенная
    степень:

    [H pre]
       - = Нет степени доверия вледьцу, не присвоена еще или не вычислена.
       n = Не доверять подписям данного человека на других ключах.
       m = Ограниченное доверие подписям данного человека.
       f = Считать, что человек действительно знает, как правильно 
           подписывать ключи.
       u = Не нужно доверий потому, что у нас имеется секретный ключ.
    [H /pre]

    Храните данные значения в секрете потому, что они означают Ваше
    отношение к другим людям. PGP хранит данную информацию в своей таблице
    связок ключей, поэтому публиковать свою таблицу связок ключей, вместо
    экспорта конкретных связок ключей - плохая идея. GnuPG хранит значения
    доверий файле trustdb.gpg, поэтому можно свободно дать кому-либо
    свой файл таблицы связок колючей (но можете использовать также и параметр
    --export).

<Q> Что означают: "key C26EE891.298, uid 09FB: ...."?

    Это внутреннее представление User ID в trustdb.
    "C26EE891" это KeyID, "298" это локальный ID (LID) (номер записи trustdb)
    и "09FB" это последние два байта хеша ripe-md-160 из User ID для данного
    ключа.

<Q> Как мне понять некоторые информационные сообщения?

    Во время проверки достоверности ключа GnuPG иногда печатает некоторую
    информацию, которая предваряет информацию о проверяемых данных.

    [H samp]
       "key 12345678.3456"
    [H /samp]

    Это о том, что Key ID имеет 12345678 и его внутренний номер 3456,
    который является номером записи в так называемой записи каталога trustdb.

    [H samp]
       "uid 12345678.3456/ACDE"
    [H /samp]

    Это о том, что это User ID для того же ключа. Для идентификации User ID
    в связке - печатаются два последних байта (ACDE) его ripe-md-160 хеша.

    [H samp]
       "sig 12345678.3456/ACDE/9A8B7C6D"
    [H /samp]

    Это о том, что это подпись ключом с Key ID 9A8B7C6D указанных выше
    ключа и User ID, если это подпись, подписывающая сам ключ, то
    User ID часть будет пуста (..//..).

<Q> Строки заголовка прозрачной подписи являются частью подписанного?

    Нет. Можно, например, добавить или удалить "Comment:" строки.
    Они аналогичны строкам заголовка письма. Однако, срока "Hash:" 
    требуется для OpenPGP подписей для указания использованного
    алгоритма цифровой подписи.

<Q> Что такое список предпочитаемых алгоритмов?

    Список предпочитаемых алгоритмов это список шифров, хешей и
    алгоритмов сжатия сохраняемый в самоподписи ключа во время создания
    ключа. Когда Вы шифруете документ, GnuPG использует данный список
    (который является частью открытого ключа) для того, чтобы определить
    какие алогоритмы использовать. В основном это предназначеначено для
    того, чтобы сообщить другим лючям, какие алгоритмы получатель сможет
    принять и порядок предпочтения им данных алгоритмов.

<Q> Как сменить список предпочитаемых алгоритмов?

    В версии 1.0.7 и новейших, Вы можете использовать редактирование
    ключа и установить новый список предпочтений используя команду
    "setpref"; формат данной команды аналогичен выводу команды "pref".
    Предпочтения не изменятся немедленно, но они будут использованы при
    создании нового User ID. Если Вы хотите обновить предпочтения
    существующих User ID, выберите эти User ID (или ни одного для
    обновления всех сразу) и дайте команду "updpref". Учтите, что
    отметка времени на самоподписи увеличивается на одну секунду,
    когда выполняется данная команда.


<S> БЛАГОДАРНОСТИ

    Премного благодарны Nils Ellmenreich за ведение настоящего FAQ столь
    длительный срок, Werner Koch за первоначальный FAQ, всем участникам
    почтовых рассылок gnupg-users и gnupg-devel присылавших вопросы и ответы.
    Они предоставили наибольшее количество ответов.

    Также спасибо Casper Dik за скрипт для создания данного FAQ
    (он использует его для великолепного FAQ по Solaris2).

    От переводчика:
    Огромное спасибо разработчикам GnuPG.
    Премного благодарен Павлу Шайдо за его переводы GNU Privacy Handbook
    и руководства (man), за ценные советы по переводу интерфейса, настоящего
    FAQ и пр. документов по GnuPG.[H br]
    Спасибо также Gyre, Андрею Кавко, всем участникам почтовых рассылок
    gnupg-ru и pgp-n-gpg.

[H hr]

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

Copyright (C) 2003 Translation from English into Russian by Maxim Britov

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