Sicurezza COAP
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
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.