Процедура rsa_key_bin читает с диска ключи RSA в текстовом виде (сформированные процедурой keygen) и записывает их в двоичной форме. Вызов этой процедуры производится из скриптов формирования пакета поставки программного обеспечения для шифросвязи Extra Systems Cypher Net. Имя файла для обработки передается этой программе в качестве параметра командной строки. Как видно из приводимого ниже текста, для формирования выходного файла утилита просто добавляет к этому имени расширение ".bin".
#include "cyphernet.h" int main (int argc, char *argv[]) { int file_handle; char str_buf[4096]; RSAKEYITEM key_item; RSAKEYPACKEDITEM packed_key_item; if((file_handle = open(argv[1], O_RDONLY)) == -1) return 1; read(file_handle, str_buf, 4096); close(file_handle); str_to_value(strtok(str_buf, " "), key_item.modulus); str_to_value(strtok(NULL, " "), key_item.exponent); pack_value(key_item.exponent, packed_key_item.exponent); pack_value(key_item.modulus, packed_key_item.modulus); strcpy(str_buf, argv[1]); strcat(str_buf, ".bin"); file_handle = creat(str_buf, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH); write(file_handle, &packed_key_item, sizeof(packed_key_item)); close(file_handle); return 0; }
Контент этой страницы доступен также на английском, французском, немецком и украинском языке.
© Extra Systems, 2024 |