Укажите набор шифров libcoap - PullRequest
0 голосов
/ 14 мая 2019

Я пишу небольшую клиент-серверную программу CoAP через DTLS на C, используя библиотеку libcoap. Анализ трафика с помощью Wireshark показывает, что сервер выбирает TLS_DHE_PSK_WITH_CHACHA20_POLY1305_SHA256.

Я хочу изменить набор шифров для оценки. Как мне это сделать? Кажется, нигде нет возможности указать набор. Также я скомпилировал libcoap с OpenSSL в качестве бэкэнда.

Если libcoap не поддерживает это, есть ли способ настроить DTLS самостоятельно и использовать libcoap для обработки пакетов CoAP?

1 Ответ

1 голос
/ 21 мая 2019

Попробуйте настроить комплекты шифров в контексте dtls.

file: "coap_openssl.c", (примерно строка 395, зависит от вашей версии), функция: "void * coap_dtls_new_context (struct coap_context_t * coap_context)",

SSL_CTX_set_min_proto_version(context->dtls.ctx, DTLS1_2_VERSION);
SSL_CTX_set_app_data(context->dtls.ctx, &context->dtls);
SSL_CTX_set_read_ahead(context->dtls.ctx, 1);

SSL_CTX_set_cipher_list(context->dtls.ctx, "ECDHE-PSK-AES128-CBC-SHA256:PSK-AES128-CCM8:ECDHE-ECDSA-AES128-CCM8");

Добавьте "set_cipher_list" с необходимыми наборами шифров.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...