Вызов макропрограмм из ZIP-архива

Материал из K3-Macro
Макро | Вызов макропрограмм из ZIP-архива

В данном разделе даётся информация о ZIP-архиве, о том, как хранить в нём макропрограммы, в том числе и зашифрованные, и как пользоваться парольным доступом для запуска шифрованных макросов из ZIP-архива.

Zip-архивы

MTest.zip в WinZip
MTest.zip в WinRar
MTest.zip в 7z

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

Существует достаточно большое количество разнообразных форматов архивов (файлы с расширением ZIP, RAR, CAB, 7z и т.д.). Ниже будем рассматривать только ZIP-архивы.

Будет показано, как использовать ZIP-архив для хранения группы макропрограмм семейства приложений K3, в том числе хранения в шифрованном виде, а также вызывать шифрованные макросы с использованием пароля.

Для иллюстрации работы с ZIP-архивом был создан тестовый архив MTest.zip.

Архив MTest.zip содержит папку Test, содержащую четыре макропрограммы. Таблица ниже содержит их список:

файл
шифрован?
пароль
алгоритм
WithoutPass.mac
Нет
Pass1.mac
Да
qwerty
Zip 2.0 compatible
Pass2.mac
Да
asdfgh
Zip 2.0 compatible
PassAES128.mac
Да
zxcvbn
128-Bit AES

Существует много программ, которые работают с ZIP-архивами. Ниже приведены примеры отображения тестового архива в некоторых наиболее популярных программах, умеющих работать с ZIP-архивами: WinZIP32.exe, WinRAR.exe, 7z.exe.

Информация о содержимом MTest.zip

Программы сообщают о том, что файл в архиве хранится в шифрованном виде либо добавляя символ звёздочка (*) к имени файла в списке файлов, либо явно указывая наличие и метод шифрования (в данном случае – ZipCrypto).

Некоторые программы показывают и метод сжатия файлов (в данном случае – стандартный метод сжатия, известный как Deflate)

Семейство приложений K3 позволяет вам использовать только стандартное шифрование файлов (WinZIP.exe называет его «Zip 2.0 compatible», 7z.exe называет его ZipCrypto).

Рассмотрим пример добавления файла с шифрованием в программе WinZIP.exe, хотя вы можете воспользоваться любой программой-архиватором, которая поддерживает ZIP-формат или даже в файловом менеджере типа TotalCommander или FAR.

Добавление файлов в архив

Ниже показан пример добавления файла в архиваторе WinZip и в файловом менеджере TotalCommander.

Используем WinZip

Выберите пункт меню Action|Add….

Clip2004.png

Выберите необходимый файл или группу файлов, установите метод сжатия (Compression) в «Normal», установите флажок “Encrypt added files” и нажмите кнопку Add.

Появится диалоговое окно запроса пароля и метода шифрования. Введите необходимый пароль, метод шифрования нужно установить как «Zip 2.0 compatible».

Clip2005.png

Используем TotalCommander

Откройте на одной панели нужную папку внутри ZIP-архива, а на другой – папку с архивируемой макропрограммой.

Clip2006.png

Нажмите кнопку F5 Копия. Появится диалоговое окно с параметрами архивации.

Clip2007.png

Установите флажок Шифровать (ZIP, ARJ, RAR, ACE) и нажмите кнопку OK.

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

Вызов шифрованных макропрограмм из ZIP-архива

Для использования шифрованных макропрограмм должны быть выполнены следующие условия:

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

В системе имеется команда, устанавливающая пароль для работы с ZIP-архивами.


passzip <N> <password>

где <N> – номер паролирования файлов в ZIP-архиве, полученный у разработчиков программы. <password> - пароль шифрования макропрограмм. Это команду нужно выполнить однократно для задания пароля. Например, passzip 1703,"Bm746pc". Можно вставить это команду, например, в макропрограмму автозагрузки AutoStart.mac и пароль будет устанавливаться при старте приложения автоматически.

Для вызова из ZIP-архива, например, макропрограммы pass1.mac из архива d:\MTest.zip нужно выполнить следующую команду:

macro "D:\\MTest.zip|Test|Pass1.mac" ;

В качестве разделителя имён внутри архива используется символ вертикальной черты “|”.

В случае ошибки доступа к макропрограмме в архиве выводится сообщение "Неверный пароль, неподдерживаемый метод сжатия/шифрования или иная ошибка файла: <имя файла>".


Макро | Вызов макропрограмм из ZIP-архива