CoAP Secure
Este módulo incluye funciones que controlan la comunicación de CoAP Secure (CoAP sobre DTLS).
Resumen
Las funciones de este módulo están disponibles cuando se habilita la función de la API segura de CoAP (OPENTHREAD_CONFIG_COAP_SECURE_API_ENABLE). 
| Typedefs | |
|---|---|
| otHandleCoapSecureClientConnect)(bool aConnected, void *aContext) | typedef void(*Se llama al puntero cuando cambia el estado de conexión de DTLS.  | 
| Funciones | |
|---|---|
| otCoapSecureAddBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource) | voidAgrega un recurso de bloques al servidor seguro de CoAP.  | 
| otCoapSecureAddResource(otInstance *aInstance, otCoapResource *aResource) | voidAgrega un recurso al servidor de CoAP Secure.  | 
| otCoapSecureConnect(otInstance *aInstance, const otSockAddr *aSockAddr, otHandleCoapSecureClientConnect aHandler, void *aContext) | Inicializa la sesión de DTLS con un par.  | 
| otCoapSecureDisconnect(otInstance *aInstance) | voidDetiene la conexión DTLS.  | 
| otCoapSecureGetPeerCertificateBase64(otInstance *aInstance, unsigned char *aPeerCert, size_t *aCertLength, size_t aCertBufferSize) | Muestra el certificado de par x509 codificado en base64.  | 
| otCoapSecureIsConnected(otInstance *aInstance) | boolIndica si la sesión de DTLS está conectada o no.  | 
| otCoapSecureIsConnectionActive(otInstance *aInstance) | boolIndica si la sesión de DTLS está activa o no.  | 
| otCoapSecureRemoveBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource) | voidQuita un recurso a nivel de bloque del servidor seguro de CoAP.  | 
| otCoapSecureRemoveResource(otInstance *aInstance, otCoapResource *aResource) | voidQuita un recurso del servidor seguro de CoAP.  | 
| otCoapSecureSendRequest(otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext) | Envía una solicitud de CoAP a través de una conexión DTLS segura.  | 
| otCoapSecureSendRequestBlockWise(otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook) | Envía una solicitud de CoAP a nivel de bloque a través de una conexión DTLS segura.  | 
| otCoapSecureSendResponse(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo) | Envía una respuesta de CoAP desde el servidor de CoAP Secure.  | 
| otCoapSecureSendResponseBlockWise(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook) | Envía una respuesta de CoAP a nivel de bloque desde el servidor seguro de CoAP.  | 
| otCoapSecureSetCaCertificateChain(otInstance *aInstance, const uint8_t *aX509CaCertificateChain, uint32_t aX509CaCertChainLength) | voidEstablece las CA de nivel superior de confianza.  | 
| otCoapSecureSetCertificate(otInstance *aInstance, const uint8_t *aX509Cert, uint32_t aX509Length, const uint8_t *aPrivateKey, uint32_t aPrivateKeyLength) | voidEstablece el certificado X509 del dispositivo local con la clave privada correspondiente para la sesión de DTLS con DTLS_ECDHE_ECDSA_WITH_AES_128_CCM_8.  | 
| otCoapSecureSetClientConnectedCallback(otInstance *aInstance, otHandleCoapSecureClientConnect aHandler, void *aContext) | voidEstablece la devolución de llamada conectada para indicar cuando un cliente se conecta al servidor seguro de CoAP.  | 
| otCoapSecureSetDefaultHandler(otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext) | voidEstablece el controlador predeterminado para las solicitudes de CoAP Secure no controladas.  | 
| otCoapSecureSetPsk(otInstance *aInstance, const uint8_t *aPsk, uint16_t aPskLength, const uint8_t *aPskIdentity, uint16_t aPskIdLength) | voidEstablece la clave precompartida (PSK) y el paquete de algoritmos de cifrado DTLS_PSK_WITH_AES_128_CCM_8.  | 
| otCoapSecureSetSslAuthMode(otInstance *aInstance, bool aVerifyPeerCertificate) | voidEstablece el modo de autenticación para la conexión coap Secure.  | 
| otCoapSecureStart(otInstance *aInstance, uint16_t aPort) | Inicia el servicio de CoAP Secure.  | 
| otCoapSecureStop(otInstance *aInstance) | voidDetiene el servidor seguro de CoAP.  | 
Typedefs
otHandleCoapSecureClientConnect
void(* otHandleCoapSecureClientConnect)(bool aConnected, void *aContext)
Se llama al puntero cuando cambia el estado de conexión de DTLS.
| Detalles | |||||
|---|---|---|---|---|---|
| Parámetros | 
 | ||||
Funciones
otCoapSecureAddBlockWiseResource
void otCoapSecureAddBlockWiseResource( otInstance *aInstance, otCoapBlockwiseResource *aResource )
Agrega un recurso de bloques al servidor seguro de CoAP.
| Detalles | |||||
|---|---|---|---|---|---|
| Parámetros | 
 | ||||
otCoapSecureAddResource
void otCoapSecureAddResource( otInstance *aInstance, otCoapResource *aResource )
Agrega un recurso al servidor de CoAP Secure.
| Detalles | |||||
|---|---|---|---|---|---|
| Parámetros | 
 | ||||
otCoapSecureConnect
otError otCoapSecureConnect( otInstance *aInstance, const otSockAddr *aSockAddr, otHandleCoapSecureClientConnect aHandler, void *aContext )
Inicializa la sesión de DTLS con un par.
| Detalles | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| Parámetros | 
 | ||||||||
| Valores que se muestran | 
 | ||||||||
otCoapSecureDisconnect
void otCoapSecureDisconnect( otInstance *aInstance )
Detiene la conexión DTLS.
| Detalles | |||
|---|---|---|---|
| Parámetros | 
 | ||
otCoapSecureGetPeerCertificateBase64
otError otCoapSecureGetPeerCertificateBase64( otInstance *aInstance, unsigned char *aPeerCert, size_t *aCertLength, size_t aCertBufferSize )
Muestra el certificado de par x509 codificado en base64.
| Detalles | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| Parámetros | 
 | ||||||||
| Valores que se muestran | 
 | ||||||||
otCoapSecureIsConnected
bool otCoapSecureIsConnected( otInstance *aInstance )
Indica si la sesión de DTLS está conectada o no.
| Detalles | |||||
|---|---|---|---|---|---|
| Parámetros | 
 | ||||
| Valores que se muestran | 
 | ||||
otCoapSecureIsConnectionActive
bool otCoapSecureIsConnectionActive( otInstance *aInstance )
Indica si la sesión de DTLS está activa o no.
| Detalles | |||||
|---|---|---|---|---|---|
| Parámetros | 
 | ||||
| Valores que se muestran | 
 | ||||
otCoapSecureRemoveBlockWiseResource
void otCoapSecureRemoveBlockWiseResource( otInstance *aInstance, otCoapBlockwiseResource *aResource )
Quita un recurso a nivel de bloque del servidor seguro de CoAP.
| Detalles | |||||
|---|---|---|---|---|---|
| Parámetros | 
 | ||||
otCoapSecureRemoveResource
void otCoapSecureRemoveResource( otInstance *aInstance, otCoapResource *aResource )
Quita un recurso del servidor seguro de CoAP.
| Detalles | |||||
|---|---|---|---|---|---|
| Parámetros | 
 | ||||
otCoapSecureSendRequest
otError otCoapSecureSendRequest( otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext )
Envía una solicitud de CoAP a través de una conexión DTLS segura.
Si se espera una respuesta para una solicitud, se debe proporcionar la información respectiva de función y contexto. Si no se espera una respuesta, estos argumentos deben ser punteros NULL. Si el ID de mensaje no se estableció en el encabezado (igual a 0), esta función le asignará el ID de mensaje único.
| Detalles | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| Parámetros | 
 | ||||||||
| Valores que se muestran | 
 | ||||||||
otCoapSecureSendRequestBlockWise
otError otCoapSecureSendRequestBlockWise( otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook )
Envía una solicitud de CoAP a nivel de bloque a través de una conexión DTLS segura.
Está disponible cuando se habilita la configuración OPENtas_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE.
Si se espera una respuesta para una solicitud, se debe proporcionar la información respectiva de función y contexto. Si no se espera una respuesta, estos argumentos deben ser punteros NULL. Si el ID de mensaje no se estableció en el encabezado (igual a 0), esta función le asignará el ID de mensaje único.
| Detalles | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Parámetros | 
 | ||||||||||||
| Valores que se muestran | 
 | ||||||||||||
otCoapSecureSendResponse
otError otCoapSecureSendResponse( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo )
Envía una respuesta de CoAP desde el servidor de CoAP Secure.
| Detalles | |||||||
|---|---|---|---|---|---|---|---|
| Parámetros | 
 | ||||||
| Valores que se muestran | 
 | ||||||
otCoapSecureSendResponseBlockWise
otError otCoapSecureSendResponseBlockWise( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook )
Envía una respuesta de CoAP a nivel de bloque desde el servidor seguro de CoAP.
Está disponible cuando se habilita la configuración OPENtas_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE.
| Detalles | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Parámetros | 
 | ||||||||||
| Valores que se muestran | 
 | ||||||||||
otCoapSecureSetCaCertificateChain
void otCoapSecureSetCaCertificateChain( otInstance *aInstance, const uint8_t *aX509CaCertificateChain, uint32_t aX509CaCertChainLength )
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 CoAPS de aplicaciones
| Detalles | |||||||
|---|---|---|---|---|---|---|---|
| Parámetros | 
 | ||||||
otCoapSecureSetCertificate
void otCoapSecureSetCertificate( otInstance *aInstance, const uint8_t *aX509Cert, uint32_t aX509Length, const uint8_t *aPrivateKey, uint32_t aPrivateKeyLength )
Establece el certificado X509 del dispositivo local con la clave privada correspondiente para la sesión de DTLS con DTLS_ECDHE_ECDSA_WITH_AES_128_CCM_8.
| Detalles | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Parámetros | 
 | ||||||||||
otCoapSecureSetClientConnectedCallback
void otCoapSecureSetClientConnectedCallback( otInstance *aInstance, otHandleCoapSecureClientConnect aHandler, void *aContext )
Establece la devolución de llamada conectada para indicar cuando un cliente se conecta al servidor seguro de CoAP.
| Detalles | |||||||
|---|---|---|---|---|---|---|---|
| Parámetros | 
 | ||||||
otCoapSecureSetDefaultHandler
void otCoapSecureSetDefaultHandler( otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext )
Establece el controlador predeterminado para las solicitudes de CoAP Secure no controladas.
| Detalles | |||||||
|---|---|---|---|---|---|---|---|
| Parámetros | 
 | ||||||
otCoapSecureSetPsk
void otCoapSecureSetPsk( otInstance *aInstance, const uint8_t *aPsk, uint16_t aPskLength, const uint8_t *aPskIdentity, uint16_t aPskIdLength )
Establece la clave precompartida (PSK) y el paquete de algoritmos de cifrado DTLS_PSK_WITH_AES_128_CCM_8.
| Detalles | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Parámetros | 
 | ||||||||||
otCoapSecureSetSslAuthMode
void otCoapSecureSetSslAuthMode( otInstance *aInstance, bool aVerifyPeerCertificate )
Establece el modo de autenticación para la conexión coap Secure.
Habilita o inhabilita la verificación del certificado de intercambio de tráfico. Se debe llamar antes de comenzar.
| Detalles | |||||
|---|---|---|---|---|---|
| Parámetros | 
 | ||||
otCoapSecureStart
otError otCoapSecureStart( otInstance *aInstance, uint16_t aPort )
Inicia el servicio de CoAP Secure.
| Detalles | |||||
|---|---|---|---|---|---|
| Parámetros | 
 | ||||
| Valores que se muestran | 
 | ||||
otCoapSecureStop
void otCoapSecureStop( otInstance *aInstance )
Detiene el servidor seguro de CoAP.
| Detalles | |||
|---|---|---|---|
| Parámetros | 
 | ||
Macros
PO_DEFAULT_COAP_SECURE_PORT
OT_DEFAULT_COAP_SECURE_PORT 5684
Puerto seguro CoAP predeterminado, tal como se especifica en RFC 7252
Recursos
Los temas de referencia de la API de OpenThread se originan a partir del código fuente, disponible en GitHub. Para obtener más información o colaborar con nuestra documentación, consulta la sección Recursos.