отправка сообщений dgram между big и little endien с помощью blowfish - PullRequest
0 голосов
/ 23 февраля 2011

У меня есть рабочий код для отправки сообщений dgram между компьютерами, но я пытаюсь зашифровать их с помощью Blowfish.Он отлично работает, когда я пытаюсь отправить сообщение между двумя маленькими машинами endien, но когда я пытаюсь отправить little endien на большой (или наоборот), он не расшифровывается правильно.

Вопрос 1: Конвертирует ли sendto () мое сообщение в сетевой порядок байтов перед отправкой?

Вопрос 2. Это проблема с расшифровкой моего сообщения или в другом месте?

Спасибо

Ответы [ 2 ]

2 голосов
/ 23 февраля 2011
  1. Нет, это не так.

  2. Ваш код Blowfish, вероятно, неправильно обрабатывает порядок байтов, это может быть шифрование, дешифрование или и то, и другое. Без кода мы не можем сказать.

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

Если вы кодируете целочисленные данные в сообщения, отправленные через сокет, вы должны преобразовать это в сеть порядок байтов тоже. Если ты этого не сделаешь, ваша программа может не работать при запуске или разговаривать с другими видами машин.

из документа GNU. http://www.gnu.org/s/libc/manual/html_node/Byte-Order.html

...