Шифрование файла с использованием openssl с паролем в C - PullRequest
0 голосов
/ 24 февраля 2011

У меня есть текстовый файл. Мне нужно зашифровать этот файл с помощью пароля. В командной строке (-k для пароля и -nosalt -des3) используются. Есть ли пример для достижения того же в C API.

Ответы [ 2 ]

0 голосов
/ 25 февраля 2011

Openssl содержит множество подпрограмм для множества различных криптосистем, включая DES. Вероятно, вам нужна функция DES_ncbc_encrypt или один из других вариантов, все они описаны на справочной странице des (3).

0 голосов
/ 24 февраля 2011

Если вы работаете в системе Linux, вы можете использовать функцию crypt .Его прототип:

#include <unistd.h> 
char * crypt(const char *key, const char *salt);

Вот его описание (man 3 crypt):

Функция crypt () выполняет шифрование пароля на основе стандарта шифрования данных NBS (DES).).Добавлен дополнительный код для предотвращения попыток поиска ключа.Первым аргументом crypt () является строка с нулевым символом в конце, обычно это пользовательский пароль.Второй - в одной из двух форм: если он начинается с подчеркивания (`` _ ''), расширенный формат используется для интерпретации как ключа, так и значения соли, как показано ниже.

...