id: Гость   вход   регистрация
текущее время 22:11 28/03/2024
Владелец: FatalAid редакция от 31/10/2007 19:34 (автор: SATtva) Печать
Категории: софт, gnupg
создать
просмотр
редакции
ссылки

На днях сталкнулся с проблеммой использования OpenPGP при
переписке.
Проблемма заключалась в следующем: Почтовую программу я
предпочитаю всегда носить с собой, как и все письма, а из
существующих на сегодня программ работать мне комвортно пока
только с The BAT.
Встроенная криптосистема в BAT повергла меня в ужас, так как
использует такие алгоритмы, что возникает вопрос :"Зачем их
вообще использовать?".
И я решил подключить к BAT'у внешний модуль шифрования. Из всех
существующих мой выбор пал на GnuPG v1.4.7? как наиболее
компактной, и менее придирчивой к различным параметрам, так как
планировалось создать связку без проблемм работающую на любых
компьютерах, где не всегда есть возможность получить права
администратора.


Все знаки%_% должны писаться как два знака % символ "_"
необходимо пропускать!

Это из-за особенности синтаксиса Wikki


  • FatalAid, используйте тильду (~) для экранирования символов разметки либо берите текст, к которому не должно применяться форматирование, в двойные кавычки: ""вот так"" (изучите синтаксис, это в любом случае не повредит). Также желательно не делать на каждой строке жёстких переносов. — SATtva

Рассмотрим попорядку, Voyager определяет наличие GnuPG по
переменной операционной среды Windows имеющей имя Path.
Отсюда вытекает необходимость установки этой переменной на
каждом компьютере где будет производиться работа.
Далее для удобства работы с ключами и шифрованием в операционной
системе планировалось применять программу GnuPG Shell.
Это уже отдельная истртоия, она использует переменную Path, и
данные из системного реестра, правда в комплекте с ней идёт
утилита, для переноса этих настроек в *.ini файл.
И последнее флешка всегда монтируется разным диском в результате
чего определить все эти параметры казалось невозможным!

Решение

В первую очередь необходимо определиться с буквой диска, для
этого можно либо написать свою программу, как сделал я, либо
воспользоваться готовым средством Pstar от компании Pegtop --
http://www.pegtop.net/.
При добавлении новой программы обратите внимание на возможность
передачи ей параметров, в частности параметра %pdrive% – Имя
текущего диска.
Для всего остального мы будем использовать командную строку
Windows – cmd.exe. {Это не страшно :)}
И так в каталоге с Voyager создаём текстовый файл, и
переименовывает его в Bat.Bat .
Этот файл будет запускаться программой PStart.
Pstart ставить на сьёмный носитель
Выбираем пункт ADD NEW выбираем нашь бат файл, и в графе
Command Line Parametrs указываем %pdrive%.


C Pstart закончили, идём дальше...


Создаём в каталоге с батом папку PGP. В неё ложим GPGshell ну
или любой шелл для GnuPG.
Тестировалось только на GPGshell v3.63
GPGshell v3.63 — http://www.jumaros.de/rsoft/index.html


Далее создаём подкаталог в каталоге GnuPG.
То есть структура примерно такая Voyager\PGP\GnuPG
В него копируем Файлы установленного GnuPG
GPGshell тоже лучше вначале установить в на другой диск и уже
потом копировать его, это поможет избежать неприятностей в
дальнейшем!


С файлами закончили, идём дальше...
Возвращаемся к нашему любимому BAT.bat
Его следует открыть блокнотом, и прописать следующие строки


set pdrive=%1%
set GnuPG=\voyager\PGP\GnuPG
set path=%path%;%pdrive%_%GnuPG%
start voyager.exe


Рассмотрим подробно..
set pdrive=%1% получает параметр из командной строки и
присваивает его переменной pdrive, чтоб можно было работать.


set GnuPG=\voyager\PGP\GnuPG Переменной GnuPG присваевается путь
к каталогу, он может отличаться!
первым символом должен идти \ так как имя диска заканчиваетс
:


set path=%path%;%pdrive%_%GnuPG% В переменную Path прописывается
путь, правда только на текущую сессию, так что проблем с
переменными потом не будет :)


start voyager.exe Запускает сам Voyager Желающие могут написать
start voyager.exe /HIGH


Следующая часть для тех, кто хочет реализовать поддержку IDEA?
описывать не буду, лениво.
Сама IDEA нужна если общаетесь с теми кто пользуется встроенной
криптосистемой BAT, правда не вакт, что она будет поддерживать
ваши ключи созданные в GnuPG!


cd %pdrive%_%GnuPG%
%pdrive%
Echo load-extension %pdrive%_%GnuPG%\idea.dll > gpg.conf


Далее указываем домашнюю директорию, для GnuPG? для поиска
ключей, да и GPGShell её любит! :)
REG ADD HKCU\Software\GNU\GnuPG /v HomeDir /t REG_EXPAND_SZ /d
%pdrive%%GnuPG% /f


Русский язык это приятно, даже в GnuPG? его и включим!
REG ADD HKCU\Software\GNU\GnuPG /v Lang /t REG_EXPAND_SZ /d ru
/f


Запись производиться в Ключь Curret User, так, что прав
Администратора не надо!


Не забудьте запустить утилиту Reg2Ini.exe входящую в состав
GPGShell, она перенесёт все настройки в ini файл, и GPGShell не
будет в дальнейшем лезть в реестр!


Ещё может понадобиться файл richtx32.ocx это для работы
некоторых функций вывода в GPGShell, ну уж скачаете где нибудь,
хотя можно и без него, основная функциональность не страдает!


Запускает Pstar, выбирает BAT.bat {Можете его переименовать и
заменить иконку!} После чего пускается сам Voyager, заходим в
Инструменты->OpenPGP->Выбор версии.


Если всё зделали правильно, GnuPG будет активной, её и выбираем!
Далее туда же только в Инструменты->OpenPGP->Настройки OpenPGP.
Выбираем в качестве управления ключами приложение GPGkeys.exe,
Кстати он не меняет автоматически диск, так что каждый раз его
менять прийдётся ручками, это недостаток самого Voyagera!
Далее Инструменты->OpenPGP->Управление ключами OpenPGP, и дальше
уже работаем!
В общем разберётесь!


Все программы из пакета GPGShell будут работать только если их
запустить через GPGkeys.exe!
Так как переменаая Path только наследуется