CoAP seguro
Este módulo incluye funciones que controlan la comunicación CoAP Secure (CoAP sobre DTLS).
Resumen
Las funciones de este módulo están disponibles cuando la función API segura de CoAP ( OPENTHREAD_CONFIG_COAP_SECURE_API_ENABLE
) está habilitada.
definiciones de tipo | |
---|---|
otHandleCoapSecureClientConnect )(bool aConnected, void *aContext) | definición de tipovoid(* Este puntero de función se llama cuando cambia el estado de la conexión DTLS. |
Funciones | |
---|---|
otCoapSecureAddBlockWiseResource ( otInstance *aInstance, otCoapBlockwiseResource *aResource) | void Esta función agrega un recurso por bloques al servidor CoAP Secure. |
otCoapSecureAddResource ( otInstance *aInstance, otCoapResource *aResource) | void Esta función agrega un recurso al servidor CoAP Secure. |
otCoapSecureConnect ( otInstance *aInstance, const otSockAddr *aSockAddr, otHandleCoapSecureClientConnect aHandler, void *aContext) | Este método inicializa la sesión DTLS con un par. |
otCoapSecureDisconnect ( otInstance *aInstance) | void Este método detiene la conexión DTLS. |
otCoapSecureGetPeerCertificateBase64 ( otInstance *aInstance, unsigned char *aPeerCert, size_t *aCertLength, size_t aCertBufferSize) | Este método devuelve el certificado par x509 codificado en base64. |
otCoapSecureIsConnected ( otInstance *aInstance) | bool Este método indica si la sesión DTLS está conectada o no. |
otCoapSecureIsConnectionActive ( otInstance *aInstance) | bool Este método indica si la sesión DTLS está activa o no. |
otCoapSecureRemoveBlockWiseResource ( otInstance *aInstance, otCoapBlockwiseResource *aResource) | void Esta función elimina un recurso por bloques del servidor CoAP Secure. |
otCoapSecureRemoveResource ( otInstance *aInstance, otCoapResource *aResource) | void Esta función elimina un recurso del servidor CoAP Secure. |
otCoapSecureSendRequest ( otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext) | Este método envía una solicitud CoAP a través de una conexión DTLS segura. |
otCoapSecureSendRequestBlockWise ( otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook) | Este método envía una solicitud de CoAP por bloques a través de una conexión DTLS segura. |
otCoapSecureSendResponse ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo) | Esta función envía una respuesta CoAP desde el servidor CoAP Secure. |
otCoapSecureSendResponseBlockWise ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook) | Esta función envía una respuesta CoAP por bloques desde el servidor CoAP Secure. |
otCoapSecureSetCaCertificateChain ( otInstance *aInstance, const uint8_t *aX509CaCertificateChain, uint32_t aX509CaCertChainLength) | void Este método establece las CA de nivel superior de confianza. |
otCoapSecureSetCertificate ( otInstance *aInstance, const uint8_t *aX509Cert, uint32_t aX509Length, const uint8_t *aPrivateKey, uint32_t aPrivateKeyLength) | void Este método establece el certificado X509 del dispositivo local con la clave privada correspondiente para la sesión DTLS con DTLS_ECDHE_ECDSA_WITH_AES_128_CCM_8. |
otCoapSecureSetClientConnectedCallback ( otInstance *aInstance, otHandleCoapSecureClientConnect aHandler, void *aContext) | void Este método configura la devolución de llamada conectada para indicar cuándo un cliente se conecta al servidor CoAP Secure. |
otCoapSecureSetDefaultHandler ( otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext) | void Esta función establece el controlador predeterminado para las solicitudes seguras de CoAP no gestionadas. |
otCoapSecureSetPsk ( otInstance *aInstance, const uint8_t *aPsk, uint16_t aPskLength, const uint8_t *aPskIdentity, uint16_t aPskIdLength) | void Este método establece la clave precompartida (PSK) y el conjunto de cifrado DTLS_PSK_WITH_AES_128_CCM_8. |
otCoapSecureSetSslAuthMode ( otInstance *aInstance, bool aVerifyPeerCertificate) | void Este método establece el modo de autenticación para la conexión segura cooperativa. |
otCoapSecureStart ( otInstance *aInstance, uint16_t aPort) | Esta función inicia el servicio CoAP Secure. |
otCoapSecureStop ( otInstance *aInstance) | void Esta función detiene el servidor CoAP Secure. |
definiciones de tipo
otHandleCoapSecureClientConnect
void(* otHandleCoapSecureClientConnect)(bool aConnected, void *aContext)
Este puntero de función se llama cuando cambia el estado de la conexión DTLS.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
Funciones
otCoapSecureAddBlockWiseResource
void otCoapSecureAddBlockWiseResource( otInstance *aInstance, otCoapBlockwiseResource *aResource )
Esta función agrega un recurso por bloques al servidor CoAP Secure.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
otCoapSecureAddResource
void otCoapSecureAddResource( otInstance *aInstance, otCoapResource *aResource )
Esta función agrega un recurso al servidor CoAP Secure.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
otCoapSecureConnect
otError otCoapSecureConnect( otInstance *aInstance, const otSockAddr *aSockAddr, otHandleCoapSecureClientConnect aHandler, void *aContext )
Este método inicializa la sesión DTLS con un par.
Detalles | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parámetros |
| ||||||||
Valores devueltos |
|
otCoapSecureDisconnect
void otCoapSecureDisconnect( otInstance *aInstance )
Este método detiene la conexión DTLS.
Detalles | |||
---|---|---|---|
Parámetros |
|
otCoapSecureGetPeerCertificateBase64
otError otCoapSecureGetPeerCertificateBase64( otInstance *aInstance, unsigned char *aPeerCert, size_t *aCertLength, size_t aCertBufferSize )
Este método devuelve el certificado par x509 codificado en base64.
Detalles | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parámetros |
| ||||||||
Valores devueltos |
|
otCoapSecureIsConnected
bool otCoapSecureIsConnected( otInstance *aInstance )
Este método indica si la sesión DTLS está conectada o no.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
| ||||
Valores devueltos |
|
otCoapSecureIsConnectionActive
bool otCoapSecureIsConnectionActive( otInstance *aInstance )
Este método indica si la sesión DTLS está activa o no.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
| ||||
Valores devueltos |
|
otCoapSecureRemoveBlockWiseResource
void otCoapSecureRemoveBlockWiseResource( otInstance *aInstance, otCoapBlockwiseResource *aResource )
Esta función elimina un recurso por bloques del servidor CoAP Secure.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
otCoapSecureRemoveResource
void otCoapSecureRemoveResource( otInstance *aInstance, otCoapResource *aResource )
Esta función elimina un recurso del servidor CoAP Secure.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
otCoapSecureSendRequest
otError otCoapSecureSendRequest( otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext )
Este método envía una solicitud CoAP a través de una conexión DTLS segura.
Si se espera una respuesta a una solicitud, se debe proporcionar la función respectiva y la información de contexto. Si no se espera ninguna respuesta, estos argumentos deben ser punteros NULL. Si el Id. de mensaje no se configuró en el encabezado (igual a 0), esta función asignará un Id. de mensaje único al mensaje.
Detalles | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parámetros |
| ||||||||
Valores devueltos |
|
otCoapSecureSendRequestBlockWise
otError otCoapSecureSendRequestBlockWise( otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook )
Este método envía una solicitud de CoAP por bloques a través de una conexión DTLS segura.
Esta función está disponible cuando la configuración OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE está habilitada.
Si se espera una respuesta a una solicitud, se debe proporcionar la función respectiva y la información de contexto. Si no se espera ninguna respuesta, estos argumentos deben ser punteros NULL. Si el Id. de mensaje no se configuró en el encabezado (igual a 0), esta función asignará un Id. de mensaje único al mensaje.
Detalles | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
| ||||||||||||
Valores devueltos |
|
otCoapSecureSendResponse
otError otCoapSecureSendResponse( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo )
Esta función envía una respuesta CoAP desde el servidor CoAP Secure.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
| ||||||
Valores devueltos |
|
otCoapSecureSendResponseBlockWise
otError otCoapSecureSendResponseBlockWise( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook )
Esta función envía una respuesta CoAP por bloques desde el servidor CoAP Secure.
Esta función está disponible cuando la configuración OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE está habilitada.
Detalles | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
| ||||||||||
Valores devueltos |
|
otCoapSecureSetCaCertificateChain
void otCoapSecureSetCaCertificateChain( otInstance *aInstance, const uint8_t *aX509CaCertificateChain, uint32_t aX509CaCertChainLength )
Este método establece las CA de nivel superior de confianza.
Es necesario para validar el certificado del par.
Modo DTLS "ECDHE ECDSA con AES 128 CCM 8" para Aplicación CoAPS.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
otCoapSecureSetCertificate
void otCoapSecureSetCertificate( otInstance *aInstance, const uint8_t *aX509Cert, uint32_t aX509Length, const uint8_t *aPrivateKey, uint32_t aPrivateKeyLength )
Este método establece el certificado X509 del dispositivo local con la clave privada correspondiente para la sesión DTLS con DTLS_ECDHE_ECDSA_WITH_AES_128_CCM_8.
Detalles | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
otCoapSecureSetClientConnectedCallback
void otCoapSecureSetClientConnectedCallback( otInstance *aInstance, otHandleCoapSecureClientConnect aHandler, void *aContext )
Este método configura la devolución de llamada conectada para indicar cuándo un cliente se conecta al servidor CoAP Secure.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
otCoapSecureSetDefaultHandler
void otCoapSecureSetDefaultHandler( otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext )
Esta función establece el controlador predeterminado para las solicitudes seguras de CoAP no gestionadas.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
otCoapSecureSetPsk
void otCoapSecureSetPsk( otInstance *aInstance, const uint8_t *aPsk, uint16_t aPskLength, const uint8_t *aPskIdentity, uint16_t aPskIdLength )
Este método establece la clave precompartida (PSK) y el conjunto de cifrado DTLS_PSK_WITH_AES_128_CCM_8.
Detalles | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
otCoapSecureSetSslAuthMode
void otCoapSecureSetSslAuthMode( otInstance *aInstance, bool aVerifyPeerCertificate )
Este método establece el modo de autenticación para la conexión segura cooperativa.
Deshabilite o habilite la verificación del certificado de pares. Debe ser llamado antes de comenzar.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
otCoapSecureStart
otError otCoapSecureStart( otInstance *aInstance, uint16_t aPort )
Esta función inicia el servicio CoAP Secure.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
| ||||
Valores devueltos |
|
otCoapSecureStop
void otCoapSecureStop( otInstance *aInstance )
Esta función detiene el servidor CoAP Secure.
Detalles | |||
---|---|---|---|
Parámetros |
|
macros
OT_DEFAULT_COAP_SECURE_PORT
OT_DEFAULT_COAP_SECURE_PORT 5684
Puerto seguro CoAP predeterminado, como se especifica en RFC 7252.
Recursos
Los temas de referencia de la API OpenThread se originan en el código fuente, disponible en GitHub . Para obtener más información o contribuir a nuestra documentación, consulte Recursos .