Загрузка KeyStore из памяти (буфера) | KalkanCrypt на языке C

Здравствуйте!

LoadKeystore загружает сертификат из файла

unsigned long (*KC_LoadKeyStore)(int storage, char *password, int passLen, char *container, int containerLen, char *alias);

Есть ли возможность загружать KeyStore например из передаваемой строки вместо файла?

Здравствуйте! KC_LoadKeyStore загружает из хранилище ключи и сертификаты к нему. Если хотите загружать только сертификаты, передовая их на вход как строки, то можете воспользоваться функцией X509LoadCertificateFromBuffer

1 Симпатия

X509LoadCertificateFromBuffer не принимает же пароль в функцию. Как быть?

Хранилище с закрытом ключом и сертификатом бывает только в виде файла или токена. Если хотите загрузить их как строки, то не существует такой функции в библиотеке.

1 Симпатия

Спасибо, можно подробнее про токен? Что это такое и как с ним работать?

Это аппаратное хранилище ключей.
В int storage передается значение с типом используемого хранилище. Их значения можете посмотреть в документе в SDK\C\Linux\PHP\docs

1 Симпатия

Хорошо, понятно.
X509LoadCertificateFromBuffer получается загружает приватный сертификат, чтобы через него можно было вызывать Sign без предварительного вызова LoadKeyStore?

Сертификат содержит открытый ключ. По сертификатам мы можем удостоверить принадлежность открытого ключа некоторому субъекту. Также по ним мы можем проверять подписи.

То есть его можно использовать как альтернативу для LoadKeyStore?

LoadKeyStore - единственная функция для загрузки закрытого ключа. По этой части нет альтернативы для LoadKeyStore.

1 Симпатия