Bug 50922

Summary: Задана неверная маска или ключ при подписании группы файлов с помощью alt-csp-cryptopro
Product: Sisyphus Reporter: Tatyana Gagina <tatyana>
Component: alt-csp-cryptoproAssignee: Олег Соловьев <mcpain>
Status: REOPENED --- QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: lepata, mcpain
Version: unstable   
Hardware: x86_64   
OS: Linux   
See Also: https://bugzilla.altlinux.org/show_bug.cgi?id=51057

Description Tatyana Gagina 2024-07-16 14:06:24 MSK
Стенды, обновлённые до Sisyphus:
ALT Workstation K x86-64
ALT Workstation x86-64
ALT Education KDE/XFCE x86-64

Версия: alt-csp-cryptopro-0.3.0-alt1

Шаги:
1) Создать тестовые файлы:
$ for i in `seq 1 15`; do echo "file $i content" >file${i}.txt; done

2) Нажать Выбрать и выбрать несколько документов для подписи
ввести в поле имя, например, 'test'
-> Выбрать сертификат из списка
-> Выбрать кодировку подписи base64 и расширение файла p7b (не имеет значения)
-> Нажать Создать имя
-> Нажать Подписать и сжать

3) Проверить:
-> Открыть вкладку Проверка
-> Выбрать подписанный документ и файл подписи
-> Нажать Проверка подписи

Результат:
На всех системах (Education KDE/XFCE, Workstation), кроме Workstation, в окне с результатом:

CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2020.
Утилита командной строки для подписи и шифрования файлов.
Input file and output file must differ.
Ошибка: Указан неверный ключ: '/home/test/.cache/alt-csp-cryptopro/.SPyLZV'.
../../../../CSPbuild/CSP/samples/CPCrypt/Params.cpp:455: 0x200000CE
[ErrorCode: 0x200000ce]

На Workstation K x86-64 в окне с результатом:
аналогично (при первом выполнении)

При повторном прохождении тех же шагов:

CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2020.
Утилита командной строки для подписи и шифрования файлов.
Папка '/home/test/.cache/alt-csp-cryptopro/':
Ошибка: Задана неверная маска.
../../../../CSPbuild/CSP/samples/CPCrypt/Files.cpp:548: 0x20000193
[ErrorCode: 0x20000193]

При других заданных расширениях, кодировках и выбранных форматах файлов - аналогичный результат.

Основное условие - выбор группы файлов.

Ожидаемый результат: ошибок нет
Comment 1 Repository Robot 2024-08-02 11:28:49 MSK
alt-csp-cryptopro-0.3.0-alt4 -> sisyphus:

 Fri Aug 02 2024 Oleg Solovyov <mcpain@altlinux> 0.3.0-alt4
 - fix controls (Closes: #50922)
Comment 2 Tatyana Gagina 2024-08-05 12:56:51 MSK
Проверка ошибки с версией alt-csp-cryptopro-0.3.0-alt4 блокируется другой ошибкой https://bugzilla.altlinux.org/51057 
(на шаге 2 ввод имени недоступен).
Comment 3 Elena Mishina 2024-08-22 14:08:20 MSK
*** Bug 51241 has been marked as a duplicate of this bug. ***
Comment 4 Elena Mishina 2024-08-22 14:12:56 MSK
Не оч.понятно, как ошибка https://bugzilla.altlinux.org/51057 блокирует проверку этой ошибки: если подписывается несколько файлов, для каждого создаются соответствующие файлы подписей (например, название_исходного_файла.sig). Т.е. для проверки подписи можно выбрать как сам файл, так и его подпись.

Ошибка не воспроизводится если проверять сразу все файлы, которые подписывались одновременно.
Comment 5 Олег Соловьев 2024-09-18 11:36:00 MSK
(In reply to Elena Mishina from comment #4)
> Ошибка не воспроизводится если проверять сразу все файлы, которые
> подписывались одновременно.

не похоже, чтобы сам КриптоПРО такое умел:
файлы, созданные ключом -signf, не проверяются ключом -verify
только -verifyf

тут только убирать поле для ввода имени файла подписи и делать всё через signf/vsignf
Comment 6 Олег Соловьев 2024-09-18 11:39:57 MSK
(In reply to Олег Соловьев from comment #5)
> только -verifyf

-vsignf
Comment 7 Олег Соловьев 2024-09-18 12:08:09 MSK
Наоборот всё работает: подпись -sign, проверка -vsignf