CoAP 보안
이 모듈에는 CoAP Secure (DAP over DTLS) 통신을 제어하는 함수가 포함됩니다.
요약
이 모듈의 함수는 CoAP Secure API 기능 (OPENTHREAD_CONFIG_COAP_SECURE_API_ENABLE
)이 사용 설정된 경우 사용할 수 있습니다.
Typedef |
|
---|---|
otHandleCoapSecureClientConnect)(bool aConnected, void *aContext)
|
typedefvoid(*
이 함수 포인터는 DTLS 연결 상태가 변경될 때 호출됩니다. |
함수 |
|
---|---|
otCoapSecureAddBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource)
|
void
이 함수는 CoAP 보안 서버에 블록별 리소스를 추가합니다.
|
otCoapSecureAddResource(otInstance *aInstance, otCoapResource *aResource)
|
void
이 함수는 CoAP 보안 서버에 리소스를 추가합니다.
|
otCoapSecureConnect(otInstance *aInstance, const otSockAddr *aSockAddr, otHandleCoapSecureClientConnect aHandler, void *aContext)
|
이 메서드는 피어로 DTLS 세션을 초기화합니다.
|
otCoapSecureDisconnect(otInstance *aInstance)
|
void
이 메서드는 DTLS 연결을 중지합니다.
|
otCoapSecureGetPeerCertificateBase64(otInstance *aInstance, unsigned char *aPeerCert, size_t *aCertLength, size_t aCertBufferSize)
|
이 메서드는 인코딩된 피어 x509 인증서 base64를 반환합니다.
|
otCoapSecureIsConnected(otInstance *aInstance)
|
bool
이 메서드는 DTLS 세션의 연결 여부를 나타냅니다.
|
otCoapSecureIsConnectionActive(otInstance *aInstance)
|
bool
이 메서드는 DTLS 세션이 활성 상태인지 여부를 나타냅니다.
|
otCoapSecureRemoveBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource)
|
void
이 함수는 CoAP 보안 서버에서 블록별 리소스를 삭제합니다.
|
otCoapSecureRemoveResource(otInstance *aInstance, otCoapResource *aResource)
|
void
이 함수는 CoAP 보안 서버에서 리소스를 삭제합니다.
|
otCoapSecureSendRequest(otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext)
|
이 메서드는 보안 DTLS 연결을 통해 CoAP 요청을 보냅니다.
|
otCoapSecureSendRequestBlockWise(otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
|
이 메서드는 보안 DTLS 연결을 통해 CoAP 요청을 블록별로 전송합니다.
|
otCoapSecureSendResponse(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo)
|
이 함수는 CoAP 보안 서버에서 CoAP 응답을 보냅니다.
|
otCoapSecureSendResponseBlockWise(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
|
이 함수는 CoAP 보안 서버에서 CoAP 응답을 블록별로 전송합니다.
|
otCoapSecureSetCaCertificateChain(otInstance *aInstance, const uint8_t *aX509CaCertificateChain, uint32_t aX509CaCertChainLength)
|
void
이 메서드는 신뢰할 수 있는 최상위 CA를 설정합니다.
|
otCoapSecureSetCertificate(otInstance *aInstance, const uint8_t *aX509Cert, uint32_t aX509Length, const uint8_t *aPrivateKey, uint32_t aPrivateKeyLength)
|
void
이 방법에서는 DTLS_ECDHE_ECDSA_WITH_AES_128_CCM_8를 사용하는 DTLS 세션의 상응하는 비공개 키로 로컬 기기의 X509 인증서를 설정합니다.
|
otCoapSecureSetClientConnectedCallback(otInstance *aInstance, otHandleCoapSecureClientConnect aHandler, void *aContext)
|
void
이 메서드는 클라이언트가 CoAP 보안 서버에 연결할 때를 나타내는 연결된 콜백을 설정합니다.
|
otCoapSecureSetDefaultHandler(otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext)
|
void
이 함수는 처리되지 않은 CoAP 보안 요청의 기본 핸들러를 설정합니다.
|
otCoapSecureSetPsk(otInstance *aInstance, const uint8_t *aPsk, uint16_t aPskLength, const uint8_t *aPskIdentity, uint16_t aPskIdLength)
|
void
이 메서드는 사전 공유 키 (PSK)와 암호화 묶음 DTLS_PSK_WITH_AES_128_CCM_8을 설정합니다.
|
otCoapSecureSetSslAuthMode(otInstance *aInstance, bool aVerifyPeerCertificate)
|
void
이 메서드는 Coap 보안 연결의 인증 모드를 설정합니다.
|
otCoapSecureStart(otInstance *aInstance, uint16_t aPort)
|
이 함수는 CoAP 보안 서비스를 시작합니다.
|
otCoapSecureStop(otInstance *aInstance)
|
void
이 함수는 CoAP 보안 서버를 중지합니다.
|
Typedef
otHandleCoapSecureClientConnect
void(* otHandleCoapSecureClientConnect)(bool aConnected, void *aContext)
이 함수 포인터는 DTLS 연결 상태가 변경될 때 호출됩니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
함수
otCoapSecureAddBlockWiseResource
void otCoapSecureAddBlockWiseResource( otInstance *aInstance, otCoapBlockwiseResource *aResource )
이 함수는 CoAP 보안 서버에 블록별 리소스를 추가합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
otCoapSecureAddResource
void otCoapSecureAddResource( otInstance *aInstance, otCoapResource *aResource )
이 함수는 CoAP 보안 서버에 리소스를 추가합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
otCoapSecureConnect
otError otCoapSecureConnect( otInstance *aInstance, const otSockAddr *aSockAddr, otHandleCoapSecureClientConnect aHandler, void *aContext )
이 메서드는 피어로 DTLS 세션을 초기화합니다.
세부정보 | |||||||||
---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
||||||||
반환 값 |
|
otCoapSecure연결 해제
void otCoapSecureDisconnect( otInstance *aInstance )
이 메서드는 DTLS 연결을 중지합니다.
세부정보 | |||
---|---|---|---|
매개변수 |
|
otCoapSecureGetPeerCertificateBase64입니다.
otError otCoapSecureGetPeerCertificateBase64( otInstance *aInstance, unsigned char *aPeerCert, size_t *aCertLength, size_t aCertBufferSize )
이 메서드는 인코딩된 피어 x509 인증서 base64를 반환합니다.
세부정보 | |||||||||
---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
||||||||
반환 값 |
|
otCoapSecureIsConnected
bool otCoapSecureIsConnected( otInstance *aInstance )
이 메서드는 DTLS 세션의 연결 여부를 나타냅니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 값 |
|
otCoapSecureIsConnectionActive
bool otCoapSecureIsConnectionActive( otInstance *aInstance )
이 메서드는 DTLS 세션이 활성 상태인지 여부를 나타냅니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 값 |
|
otCoapSecureRemoveBlockWiseResource
void otCoapSecureRemoveBlockWiseResource( otInstance *aInstance, otCoapBlockwiseResource *aResource )
이 함수는 CoAP 보안 서버에서 블록별 리소스를 삭제합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
otCoapSecureRemoveResource
void otCoapSecureRemoveResource( otInstance *aInstance, otCoapResource *aResource )
이 함수는 CoAP 보안 서버에서 리소스를 삭제합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
otCoapSecureSendRequest : otCoapSecureSendRequest
otError otCoapSecureSendRequest( otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext )
이 메서드는 보안 DTLS 연결을 통해 CoAP 요청을 보냅니다.
요청에 대한 응답이 예상되는 경우 각 함수와 컨텍스트 정보를 제공해야 합니다. 응답이 예상되지 않는 경우 이 인수는 NULL 포인터여야 합니다. 메시지 ID가 헤더에 설정되지 않은 경우 (0과 동일), 이 함수는 고유한 메시지 ID를 메시지에 할당합니다.
세부정보 | |||||||||
---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
||||||||
반환 값 |
|
otCoapSecureSendRequestBlockWise
otError otCoapSecureSendRequestBlockWise( otInstance *aInstance, otMessage *aMessage, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook )
이 메서드는 보안 DTLS 연결을 통해 CoAP 요청을 블록별로 전송합니다.
이 함수는 OPENWARNING_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE 구성이 사용 설정된 경우 사용할 수 있습니다.
요청에 대한 응답이 예상되는 경우 각 함수와 컨텍스트 정보를 제공해야 합니다. 응답이 예상되지 않는 경우 이 인수는 NULL 포인터여야 합니다. 메시지 ID가 헤더에 설정되지 않은 경우 (0과 동일), 이 함수는 고유한 메시지 ID를 메시지에 할당합니다.
세부정보 | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
||||||||||||
반환 값 |
|
otCoapSecureSendResponse
otError otCoapSecureSendResponse( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo )
이 함수는 CoAP 보안 서버에서 CoAP 응답을 보냅니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
||||||
반환 값 |
|
otCoapSecureSendResponseBlockWise
otError otCoapSecureSendResponseBlockWise( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook )
이 함수는 CoAP 보안 서버에서 CoAP 응답을 블록별로 전송합니다.
이 함수는 OPENWARNING_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE 구성이 사용 설정된 경우 사용할 수 있습니다.
세부정보 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
||||||||||
반환 값 |
|
otCoapSecureSetCaCertificateChain
void otCoapSecureSetCaCertificateChain( otInstance *aInstance, const uint8_t *aX509CaCertificateChain, uint32_t aX509CaCertChainLength )
이 메서드는 신뢰할 수 있는 최상위 CA를 설정합니다.
피어 인증서의 유효성을 검사하는 데 필요합니다.
애플리케이션 CoAPS의 경우 DTLS 모드 'AES 128 CCM 8이 포함된 ECDHE ECDSA'입니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
otCoapSecureSetCertificate 인증서
void otCoapSecureSetCertificate( otInstance *aInstance, const uint8_t *aX509Cert, uint32_t aX509Length, const uint8_t *aPrivateKey, uint32_t aPrivateKeyLength )
이 방법에서는 DTLS_ECDHE_ECDSA_WITH_AES_128_CCM_8를 사용하는 DTLS 세션의 상응하는 비공개 키로 로컬 기기의 X509 인증서를 설정합니다.
세부정보 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
otCoapSecureSetClientConnectedCallback
void otCoapSecureSetClientConnectedCallback( otInstance *aInstance, otHandleCoapSecureClientConnect aHandler, void *aContext )
이 메서드는 클라이언트가 CoAP 보안 서버에 연결할 때를 나타내는 연결된 콜백을 설정합니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
otCoapSecureSetDefaultHandler
void otCoapSecureSetDefaultHandler( otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext )
이 함수는 처리되지 않은 CoAP 보안 요청의 기본 핸들러를 설정합니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
otCoapSecureSetPsk
void otCoapSecureSetPsk( otInstance *aInstance, const uint8_t *aPsk, uint16_t aPskLength, const uint8_t *aPskIdentity, uint16_t aPskIdLength )
이 메서드는 사전 공유 키 (PSK)와 암호화 묶음 DTLS_PSK_WITH_AES_128_CCM_8을 설정합니다.
세부정보 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
otCoapSecureSetSslAuthMode:
void otCoapSecureSetSslAuthMode( otInstance *aInstance, bool aVerifyPeerCertificate )
이 메서드는 Coap 보안 연결의 인증 모드를 설정합니다.
피어 인증서 확인을 사용 중지하거나 사용 설정합니다. 시작하기 전에 호출해야 합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
otCoapSecureStart:
otError otCoapSecureStart( otInstance *aInstance, uint16_t aPort )
이 함수는 CoAP 보안 서비스를 시작합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 값 |
|
otCoapSecureStop
void otCoapSecureStop( otInstance *aInstance )
이 함수는 CoAP 보안 서버를 중지합니다.
세부정보 | |||
---|---|---|---|
매개변수 |
|
매크로
OT_DEFAULT_COAP_SECURE_PORT
OT_DEFAULT_COAP_SECURE_PORT 5684
RFC 7252에 지정된 기본 CoAP 보안 포트입니다.
리소스
OpenThread API 참조 주제는 GitHub에서 제공되는 소스 코드에서 시작됩니다. 자세한 내용을 알아보거나 문서에 기여하려면 리소스를 참조하세요.