"Повезло" не то слово. Попробовал вашим скриптом. header теперь весит 3.41 КБ. В крипте контейнер не видит. И резать надо уметь... Любой хидер весит от 2 до 3 КБ(проверено). Но вручную пока не выходит это сделатьДрайзер писал(а): ↑12 фев 2024, 12:393,67Кб - очень странный размер, похоже на ошибку скрипта. Скрипты с контролем длины должны были делать файл меньше.
У вас почему-то длина файла в заголовке заявлена на 240 байт меньше, чем сумма "длинных" файлов по исходной методике.
Это аномалия. В любом случае у вас должна заработать либо исходная методика с ручной сборкой ваших 15 файлов, либо должен заработать скрипт с контролем длины header.
importos.py контролирует минимальную длину, но не обрезает header, если файл получается слишком длинный. Может быть это важно и обрезать нужно обязательно.
Попробуйте вариант из вложения, это то же самое, но слишком длинный header будет обрезан.
Если и так не получится, то вам "повезло", какой-то особый случай.
Скопировать "importos-.py" в папку с текстовым файлом сниффера и там запустить. Перед запуском проследите, чтобы в этой же папке не было никаких *.key файлов, иначе скрипт не отработает.
Копирование неэкспортируемого ключа с JaCarta LT
-
- Сообщения: 12
- Зарегистрирован: 05 фев 2024, 15:35
Re: Копирование неэкспортируемого ключа с JaCarta LT
-
- Сообщения: 17
- Зарегистрирован: 30 янв 2024, 02:05
- Поблагодарили: 11 раз
Re: Копирование неэкспортируемого ключа с JaCarta LT
Ну почему любой. У меня например 6174 байт.
Последний раз редактировалось Драйзер 17 фев 2024, 23:55, всего редактировалось 1 раз.
-
- Архитектор
- Сообщения: 7935
- Зарегистрирован: 06 май 2015, 14:10
- Откуда: Чехов, МО
- Благодарил (а): 746 раз
- Поблагодарили: 498 раз
Re: Копирование неэкспортируемого ключа с JaCarta LT
Я ещё раз проанализировал ваш случай. Длина 3502 это точно. Но почему-то в эту длину не укладываются ваши файлы ровно.
Вероятно, у вас там в хедере дублируются куски как в случаях с Е-токен.
Разбиралось вот здесь:
viewtopic.php?p=21354#p21354
Надо склеить все 256 возможно с концевым файлом 158, а затем удалить из середины дубль так, чтобы длина стала ровно 3502.
-
- Сообщения: 12
- Зарегистрирован: 05 фев 2024, 15:35
Re: Копирование неэкспортируемого ключа с JaCarta LT
Собрал хидер вручную. Затем через winhex вырезал лишнее и готово)Андрей писал(а): ↑13 фев 2024, 19:31Я ещё раз проанализировал ваш случай. Длина 3502 это точно. Но почему-то в эту длину не укладываются ваши файлы ровно.
Вероятно, у вас там в хедере дублируются куски как в случаях с Е-токен.
Разбиралось вот здесь:
viewtopic.php?p=21354#p21354
Надо склеить все 256 возможно с концевым файлом 158, а затем удалить из середины дубль так, чтобы длина стала ровно 3502.
-
- Архитектор
- Сообщения: 7935
- Зарегистрирован: 06 май 2015, 14:10
- Откуда: Чехов, МО
- Благодарил (а): 746 раз
- Поблагодарили: 498 раз
Re: Копирование неэкспортируемого ключа с JaCarta LT
Brutos, получилось успешно собрать? А скриншот и длину бы кусочка, который вы вырезали сюда. Просто для статистики.
-
- Сообщения: 17
- Зарегистрирован: 30 янв 2024, 02:05
- Поблагодарили: 11 раз
Re: Копирование неэкспортируемого ключа с JaCarta LT
По всей видимости ключ был не Lite, а Pro. Все скрипты в теме работают исключительно с JaCarta Lite.
Если первый файл (который начинается с 30:82) имеет размер 16 или меньше байт - можно смело пользоваться скриптами, скорее всего всё будет ок.
А если первый файл 256 байт - то в header будет повтор, нужно искать и вырезать.
Судя по тем данным, что есть в теме, вырезать всегда нужно ровно 240 байт. Повтор должен быть подряд друг за другом, иначе это не то.
Если первый файл (который начинается с 30:82) имеет размер 16 или меньше байт - можно смело пользоваться скриптами, скорее всего всё будет ок.
А если первый файл 256 байт - то в header будет повтор, нужно искать и вырезать.
Судя по тем данным, что есть в теме, вырезать всегда нужно ровно 240 байт. Повтор должен быть подряд друг за другом, иначе это не то.
Последний раз редактировалось Драйзер 17 фев 2024, 23:53, всего редактировалось 1 раз.
-
- Архитектор
- Сообщения: 7935
- Зарегистрирован: 06 май 2015, 14:10
- Откуда: Чехов, МО
- Благодарил (а): 746 раз
- Поблагодарили: 498 раз
Re: Копирование неэкспортируемого ключа с JaCarta LT
Тоже посчитал сейчас -> 15 строк по 16 байт = 240.
Попробуем проверить данные Брутоса. 14 файлов по 256 и 158 в конце. 14 x 256 + 158 = 3742. Вычтем 240.
3742 - 240 = 3502! Бинго!
-
- Архитектор
- Сообщения: 7935
- Зарегистрирован: 06 май 2015, 14:10
- Откуда: Чехов, МО
- Благодарил (а): 746 раз
- Поблагодарили: 498 раз
Re: Копирование неэкспортируемого ключа с JaCarta LT
Драйзер, а может быть выложите всё-таки скрипт, работающий без Perl? Окончательный. Удобней же он, чем другие скрипты.
Я вообще-то сам пишу на Delphi/Lazarus и мог бы запилить что-нибудь в этом роде. Но сейчас с большим количеством подписей не работаю, так что не стал подобного делать.
Я вообще-то сам пишу на Delphi/Lazarus и мог бы запилить что-нибудь в этом роде. Но сейчас с большим количеством подписей не работаю, так что не стал подобного делать.
-
- Сообщения: 17
- Зарегистрирован: 30 янв 2024, 02:05
- Поблагодарили: 11 раз
Re: Копирование неэкспортируемого ключа с JaCarta LT
Программа на питоне, которая сама достаёт нужные данные и создаёт все четыре key файла сразу из текстового файла сниффера.
Работает с тремя типами ключей - джакарта лайт, про и есмарт (етокен). Тип определяется сам.
Скопировать в папку с текстовым файлом. Убедиться, что в папке нет файлов *.key.
Убедиться, что в папке только один файл *.txt.
Запустить. Создаст key файлы в этой же папке.
Дистрибутивы питона:
(Windows 7 32b) (Windows 7 64b) (Windows 8-11 32b) (Windows 8-11 64b)
При установке обязательно отметить галочку "Add Python __ to PATH".
Если ваш текстовый файл лежит в папке "С:\1\", то запустить программу можно так:
C:\
CD C:\1
python imp2.py
Если name.key не создался, то текстовый файл не был найден или найденный файл это не файл сниффера.
Если name.key создался, то именем ключа будет тип ключа, который определился:
"ExJacartaPro", "ExJacartaLite", "ExEsmart" - соответственно, или "Empty" - когда header не был найден в файле сниффера.
Если какой-то key файл не был создан, значит эти данные не были найдены в файле сниффера.
08.03.24 - скорректировал программу, предыдущая версия не работала под Windows 7.
С новыми ключами esmart может неправильно создавать файл header.key.
Починить это можно утилитой CertFix.
Работает с тремя типами ключей - джакарта лайт, про и есмарт (етокен). Тип определяется сам.
Скопировать в папку с текстовым файлом. Убедиться, что в папке нет файлов *.key.
Убедиться, что в папке только один файл *.txt.
Запустить. Создаст key файлы в этой же папке.
Дистрибутивы питона:
(Windows 7 32b) (Windows 7 64b) (Windows 8-11 32b) (Windows 8-11 64b)
При установке обязательно отметить галочку "Add Python __ to PATH".
Если ваш текстовый файл лежит в папке "С:\1\", то запустить программу можно так:
C:\
CD C:\1
python imp2.py
Если name.key не создался, то текстовый файл не был найден или найденный файл это не файл сниффера.
Если name.key создался, то именем ключа будет тип ключа, который определился:
"ExJacartaPro", "ExJacartaLite", "ExEsmart" - соответственно, или "Empty" - когда header не был найден в файле сниффера.
Если какой-то key файл не был создан, значит эти данные не были найдены в файле сниффера.
08.03.24 - скорректировал программу, предыдущая версия не работала под Windows 7.
С новыми ключами esmart может неправильно создавать файл header.key.
Починить это можно утилитой CertFix.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Драйзер 16 ноя 2024, 09:45, всего редактировалось 16 раз.
-
- Сообщения: 1
- Зарегистрирован: 20 фев 2024, 20:17
- Поблагодарили: 1 раз
Re: Копирование неэкспортируемого ключа с JaCarta LT
Esmart 64k. 2 ключа ФНС - старый (С) и новый (Н).
При Тестировании ключа Н в Криптопро создавался дамп ключа С. При Просмотре ключа Н - создавался как раз дамп без 30_22 и 30_36.
В конечном итоге решил удалить ключ С с токена (благо копия была), и вуаля - считался нормальный дамп с нужным файлом, и ключ Н собрался по общей схеме.
Надеюсь, кому-то пригодится