У меня хранится следующая строка. 16 байтов для 1-F и 4 nullBytes в конце.
e.g. 1234567890ABCDEF0000
unsigned char input[] = {0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x30, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x00, 0x00, 0x00, 0x00};
Как получить 10-байтовый двоичный код этого?
РЕДАКТИРОВАТЬ:
Я пытаюсь правильно используйте функцию SHA1 криптографической библиотеки openssl. У меня есть задача прочитать «соль» и «пароль» из командной строки.
Затем сложить их вместе, чтобы у меня было «соль» + «|» + "пароль".
Если соль не передана, соль - это просто "\ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0", что на 10 байтов верно? но если соль передается, это может быть "1234567890ABCDEF"
. Затем мне нужно заполнить ее вправо нулевыми байтами, чтобы у меня было всего 10 байтов. Но "1234567890ABCDEF" уже составляет 16 байтов, поэтому Я должен преобразовать это. Я не знаю, я действительно борюсь с частью памяти в c