| ||||
| ||||
Реализован ли алгоритм RC2 в Крипто-Про CSP? Дело в том, что следующий фрагмент выполняется успешно: if (!CPGenKey(hProv, CALG_RC2, CRYPT_USER_PROTECTED | CRYPT_EXPORTABLE, &hKey)) { printf("CPGenKey FAILED %x\n", GetLastError()); goto err; } else printf("SUCCEED\n"); | ||||
Ответы: | ||||
| ||||
Тут дело в том, что в нашем CSP при генерации симметричного ключа функцией CryptGenKey идентификатор алгоритма игнорируется, по умолчанию ставится CALG_G28147, ошибка не возвращается. Т.е. симметричный ключ в любом случае будет по ГОСТ 28147-89. | ||||
| ||||
А как же Крипто-Про CSP в этом случае различает, что хотело сгенерировать приложение: симметричный ключ или ключевую пару? | ||||
| ||||
При генерации ключа проверяется класс алгоритма - функция GET_ALG_CLASS(AlgId) | ||||