Как предотвратить gcrypt чистый простой текст и зашифрованный текст при вызове gcry_cipher_close?

При использовании gcrypt для целей шифрования, согласно официальной документации, при вызове gcry_cipher_close наконец, он обнуляет все данные (включая простой текст и зашифрованный текст).

Я прочитал некоторые примеры исходного кода Jin-Yang / examples, он просто использует printf вывести результат на стандартный вывод.

Однако, когда мне нужно абстрагировать эту работу в функции, которая нравится encrypt_data(unsigned char *encrypt_txt, int *crylen, const unsigned char* plain_txt, const int plnlen, const char *key, int keylen) {...}необходимо сохранить эти данные после вызова gcry_cipher_close функция.

Я однажды попытался не звонить gcry_cipher_close в конце этой функции. Однако я не думал, что это безопасный и красивый код памяти.

Я также попытался записать как обычный, криптованный и ключевой текст во временную переменную. Тем не менее, он был медленнее и казался слишком многословным.

Существует ли стандартный (безопасный, красивый и понятный) способ его реализации? (Этот вопрос о симметричном шифровании, но ответы на асимметричный пример также приветствуются).

0 ответов

Другие вопросы по тегам