Sicurezza COAP
Questo modulo include funzioni che controllano la comunicazione CoAP Secure (CoAP over DTLS).
Riepilogo
Le funzioni in questo modulo sono disponibili quando la funzionalità API CoAP Secure (OPENTHREAD_CONFIG_COAP_SECURE_API_ENABLE
) è abilitata.
Definizione di tipo |
|
---|---|
otHandleCoapSecureClientConnect)(bool aConnected, void *aContext)
|
typedefvoid(*
Il puntatore viene chiamato quando lo stato della connessione DTLS cambia. |
Funzioni |
|
---|---|
otCoapSecureAddBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource)
|
void
Aggiunge una risorsa a livello di blocco al server CoAP Secure.
|
otCoapSecureAddResource(otInstance *aInstance, otCoapResource *aResource)
|
void
Aggiunge una risorsa al server CoAP Secure.
|
otCoapSecureConnect(otInstance *aInstance, const otSockAddr *aSockAddr, otHandleCoapSecureClientConnect aHandler, void *aContext)
|
Inizializza la sessione DTLS con un peer.
|
otCoapSecureDisconnect(otInstance *aInstance)
|
void
Interrompe la connessione DTLS.
|
otCoapSecureGetPeerCertificateBase64(otInstance *aInstance, unsigned char *aPeerCert, size_t *aCertLength, size_t aCertBufferSize)
|
Restituisce il certificato x509 peer66 codificato.
|
otCoapSecureIsConnected(otInstance *aInstance)
|
bool
Indica se la sessione DTLS è connessa o meno.
|
otCoapSecureIsConnectionActive(otInstance *aInstance)
|
bool
Indica se la sessione DTLS è attiva o meno.
|
otCoapSecureRemoveBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource)
|
void
Rimuove una risorsa a livello di blocco dal server CoAP Secure.
|
otCoapSecureRemoveResource(otInstance *aInstance, otCoapResource *aResource)
|
void
Rimuove una risorsa dal server CoAP Secure.
|
otCoapSecureSendRequest(otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext)
|
Invia una richiesta CoAP tramite una connessione DTLS sicura.
|
otCoapSecureSendRequestBlockWise(otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
|
Invia una richiesta CoAP a livello di blocco tramite una connessione DTLS sicura.
|
otCoapSecureSendResponse(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo)
|
Invia una risposta CoAP dal server CoAP Secure.
|
otCoapSecureSendResponseBlockWise(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
|
Invia una risposta CoAP a livello di blocco dal server CoAP Secure.
|
otCoapSecureSetCaCertificateChain(otInstance *aInstance, const uint8_t *aX509CaCertificateChain, uint32_t aX509CaCertChainLength)
|
void
Imposta le autorità di certificazione di primo livello attendibili.
|
otCoapSecureSetCertificate(otInstance *aInstance, const uint8_t *aX509Cert, uint32_t aX509Length, const uint8_t *aPrivateKey, uint32_t aPrivateKeyLength)
|
void
Imposta il certificato X509 del dispositivo locale con la chiave privata corrispondente per la sessione DTLS con DTLS_ECDHE_ECDSA_WITH_AES_128_CCM_8.
|
otCoapSecureSetClientConnectedCallback(otInstance *aInstance, otHandleCoapSecureClientConnect aHandler, void *aContext)
|
void
Imposta il callback connesso per indicare quando un client si connette al server CoAP Secure.
|
otCoapSecureSetDefaultHandler(otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext)
|
void
Imposta il gestore predefinito per le richieste CoAP Secure non gestite.
|
otCoapSecureSetPsk(otInstance *aInstance, const uint8_t *aPsk, uint16_t aPskLength, const uint8_t *aPskIdentity, uint16_t aPskIdLength)
|
void
Imposta la chiave precondivisa (PSK) e la suite di crittografia DTLS_PSK_WITH_AES_128_CCM_8.
|
otCoapSecureSetSslAuthMode(otInstance *aInstance, bool aVerifyPeerCertificate)
|
void
Imposta la modalità di autenticazione per la connessione sicura.
|
otCoapSecureStart(otInstance *aInstance, uint16_t aPort)
|
Avvia il servizio CoAP Secure.
|
otCoapSecureStop(otInstance *aInstance)
|
void
Interrompe il server CoAP Secure.
|
Definizione di tipo
otHandleCoapSecureClientConnect
void(* otHandleCoapSecureClientConnect)(bool aConnected, void *aContext)
Il puntatore viene chiamato quando lo stato della connessione DTLS cambia.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
Funzioni
Risorsa otCoapSecureAddBlockWiseResource
void otCoapSecureAddBlockWiseResource( otInstance *aInstance, otCoapBlockwiseResource *aResource )
Aggiunge una risorsa a livello di blocco al server CoAP Secure.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
otCoapSecureAddResource
void otCoapSecureAddResource( otInstance *aInstance, otCoapResource *aResource )
Aggiunge una risorsa al server CoAP Secure.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
OtCoapSecureConnect
otError otCoapSecureConnect( otInstance *aInstance, const otSockAddr *aSockAddr, otHandleCoapSecureClientConnect aHandler, void *aContext )
Inizializza la sessione DTLS con un peer.
Dettagli | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||
Valori restituiti |
|
OtCoapSecureDisconnetti
void otCoapSecureDisconnect( otInstance *aInstance )
Interrompe la connessione DTLS.
Dettagli | |||
---|---|---|---|
Parametri |
|
otCoapSecureGetPeerCertificateBase64
otError otCoapSecureGetPeerCertificateBase64( otInstance *aInstance, unsigned char *aPeerCert, size_t *aCertLength, size_t aCertBufferSize )
Restituisce il certificato x509 peer66 codificato.
Dettagli | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||
Valori restituiti |
|
OtCoapSecureIsConnected
bool otCoapSecureIsConnected( otInstance *aInstance )
Indica se la sessione DTLS è connessa o meno.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Valori restituiti |
|
OtCoapSecureIsConnectionActive
bool otCoapSecureIsConnectionActive( otInstance *aInstance )
Indica se la sessione DTLS è attiva o meno.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Valori restituiti |
|
otCoapSecureRemoveBlockWiseResource
void otCoapSecureRemoveBlockWiseResource( otInstance *aInstance, otCoapBlockwiseResource *aResource )
Rimuove una risorsa a livello di blocco dal server CoAP Secure.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
OtCoapSecureRemoveResource
void otCoapSecureRemoveResource( otInstance *aInstance, otCoapResource *aResource )
Rimuove una risorsa dal server CoAP Secure.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
otCoapSecureSendRequest
otError otCoapSecureSendRequest( otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext )
Invia una richiesta CoAP tramite una connessione DTLS sicura.
Se è prevista una risposta a una richiesta, devono essere fornite le informazioni sulla funzione e sul contesto. Se non è prevista una risposta, questi argomenti devono essere puntatori NULL. Se l'ID messaggio non è stato impostato nell'intestazione (uguale a 0), questa funzione assegnerà un ID messaggio univoco al messaggio.
Dettagli | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||
Valori restituiti |
|
otCoapSecureSendRequestBlockWise
otError otCoapSecureSendRequestBlockWise( otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook )
Invia una richiesta CoAP a livello di blocco tramite una connessione DTLS sicura.
È disponibile quando la configurazione OPENThread_CONFIG_COAP_BLOCCOWISE_TRASFERISCI è abilitata.
Se è prevista una risposta a una richiesta, devono essere fornite le informazioni sulla funzione e sul contesto. Se non è prevista una risposta, questi argomenti devono essere puntatori NULL. Se l'ID messaggio non è stato impostato nell'intestazione (uguale a 0), questa funzione assegnerà un ID messaggio univoco al messaggio.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Valori restituiti |
|
otCoapSecureSendResponse
otError otCoapSecureSendResponse( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo )
Invia una risposta CoAP dal server CoAP Secure.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
||||||
Valori restituiti |
|
otCoapSecureSendResponseBlockWise
otError otCoapSecureSendResponseBlockWise( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook )
Invia una risposta CoAP a livello di blocco dal server CoAP Secure.
È disponibile quando la configurazione OPENThread_CONFIG_COAP_BLOCCOWISE_TRASFERISCI è abilitata.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Valori restituiti |
|
otCoapSecureSetCaCertificatoChain
void otCoapSecureSetCaCertificateChain( otInstance *aInstance, const uint8_t *aX509CaCertificateChain, uint32_t aX509CaCertChainLength )
Imposta le autorità di certificazione di primo livello attendibili.
È necessaria per convalidare il certificato del peer.
Modalità DTLS "ECDHE ECDSA con AES 128 CCM 8" per Application CoAPS.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
otCoapSecureSetCertificate
void otCoapSecureSetCertificate( otInstance *aInstance, const uint8_t *aX509Cert, uint32_t aX509Length, const uint8_t *aPrivateKey, uint32_t aPrivateKeyLength )
Imposta il certificato X509 del dispositivo locale con la chiave privata corrispondente per la sessione DTLS con DTLS_ECDHE_ECDSA_WITH_AES_128_CCM_8.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
otCoapSecureSetClientConnectedCallback
void otCoapSecureSetClientConnectedCallback( otInstance *aInstance, otHandleCoapSecureClientConnect aHandler, void *aContext )
Imposta il callback connesso per indicare quando un client si connette al server CoAP Secure.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
otCoapSecureSetDefaultHandler
void otCoapSecureSetDefaultHandler( otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext )
Imposta il gestore predefinito per le richieste CoAP Secure non gestite.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
otCoapSecureSetPsk
void otCoapSecureSetPsk( otInstance *aInstance, const uint8_t *aPsk, uint16_t aPskLength, const uint8_t *aPskIdentity, uint16_t aPskIdLength )
Imposta la chiave precondivisa (PSK) e la suite di crittografia DTLS_PSK_WITH_AES_128_CCM_8.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
otCoapSecureSetSslAuthMode
void otCoapSecureSetSslAuthMode( otInstance *aInstance, bool aVerifyPeerCertificate )
Imposta la modalità di autenticazione per la connessione sicura.
Disattivare o attivare la verifica del certificato peer. Deve essere chiamato prima dell'inizio.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
OtCoapSecureStart
otError otCoapSecureStart( otInstance *aInstance, uint16_t aPort )
Avvia il servizio CoAP Secure.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Valori restituiti |
|
OtCoapSecureStop
void otCoapSecureStop( otInstance *aInstance )
Interrompe il server CoAP Secure.
Dettagli | |||
---|---|---|---|
Parametri |
|
Macro
OT_DEFAULT_COAP_SECURE_PORT
OT_DEFAULT_COAP_SECURE_PORT 5684
Porta sicura CoAP predefinita, come specificato in RFC 7252.
Risorse
Gli argomenti di riferimento per l'API OpenThread provengono dal codice sorgente, disponibile su GitHub. Per maggiori informazioni o per contribuire alla nostra documentazione, consulta Risorse.