id: Гость   вход   регистрация
текущее время 07:22 27/05/2017
Владелец: FatalAid (создано 31/10/2007 00:25), редакция от 01/11/2007 16:35 (автор: FatalAid) Печать
Категории: софт, gnupg
создать
просмотр
редакции
ссылки

The BAT! Voyager + GnuPG + GPGShell


На днях сталкнулся с проблеммой использования OpenPGP при переписке.
Проблемма заключалась в следующем: Почтовую программу я предпочитаю всегда носить с собой, как и все письма, а из существующих на сегодня программ работать мне комвортно пока только с The BAT.


Встроенная криптосистема в BAT повергла меня в ужас, так как использует такие алгоритмы, что возникает вопрос :"Зачем их вообще использовать?".


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

Рассмотрим попорядку


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%

  • Здесть осуществляется команда DOS переход по адрессу текущий диск\каталог с GnuPG

%pdrive%

  • Выполняется переход на диск, так как пердыдущая команда в среде DOS задаёт только путь.

Echo load-extension %pdrive%%GnuPG%\idea.dll > gpg.conf
Вывод строки, содержащей путь к файлу "load-extension Диск\Путь\idea.dll"


Не забудьте скачать архив и распокавать его в папку Voyager\PGP\GnuPG
Ссылка на архив — http://www.gnupg.org/(en)/faq/why-not-idea.html


Далее указываем домашнюю директорию, для 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


Последний ключь /f отвечает за выдачу запросов на перезапись, если раздел реестра уже существует.


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


  • Здесь стоит отметить, что если вы не хотите оставлять ни каких следов в системе, то необходимо по окончании работы полностью стереть раздел HKEY_CURRENT_USER\Software\GNU.

Это можно сделать простейшим рег файлом:


Regedit 4
[-HKEY_CURRENT_USER\Software\GNU]


Или же опять использовать *.bat файл, но эти файлы необходимо будет запускать после выхода из Voyager и уже в ручную.


Так же не забудьте запустить утилиту 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 только наследуется!


Использовать этот материал в не комерческих целях, со ссылками на сайл "www.pgpru.com", и автора FatalAid


С уважением FatalAid.


 
Несколько комментариев (3) [показать комментарии/форму]
Ваша оценка документа [показать результаты]
-3-2-1 0+1+2+3