Я реализую криптографическое решение для беспроводной и сенсорной сетевой безопасности. Таким образом, на одном шаге этой реализации узлы датчиков имеют сертификат CA. Датчики должны генерировать симметричный ключ и шифровать его открытым ключом CA и отправлять его в ЦС.Симметричное шифрование с размером ключа менее 128 бит
Я использую openssl для получения сертификата и генерации ключей. Я использую AES с 128-битным ключом для симметричного ключа. На данный момент проблема заключается в том, что я не могу зашифровать 128-битные данные следующим образом, так как она дает ошибку «Данные слишком велики».
openssl rsautl -encrypt -inkey id_rsa.pub.pem -pubin -in key1.bin -out key1.bin.enc
Так это выглядит как мне нужно для шифрования ключа 128 бит, используя другой способ, или я могу использовать меньший ключ, в сетевой среде датчика не будет проблемой.
Мой вопрос «Есть ли симметричный ключ шифрования с меньшим ключом или у меня есть способ для шифрования ключа 128bit, используя сертификат непосредственно»
P.S
Это, как я генерировать ключи.
openssl genrsa -out mykey.pem 1024
openssl rsa -in mykey.pem -pubout > mykey.pub
openssl rand 128 > key1.bin
Спасибо
Мой открытый ключ - 1024 бит. Это должно быть проблемой. –
Вы должны иметь возможность шифровать до 117 байтов (936 бит) с открытым 1024-битным ключом. Этого более чем достаточно для 128-битного ключа AES. Попробуйте шифровать текстовый файл, содержащий около 16 символов, чтобы доказать, что вы можете зашифровать 128 бит. Затем увеличьте текстовый файл до тех пор, пока длина не будет слишком длинной. Это должно произойти около 936 бит. – gtrig
По моей вине я генерирую 128 байтов с помощью openssl rand. Спасибо за помощь. –