nl :: 짜다:: WeaveSecurityManager
요약
생성자와 소멸자 | |
---|---|
WeaveSecurityManager (void) |
공개 유형 | |
---|---|
KeyErrorMsgRcvdFunct )(uint16_t keyId, uint8_t encType, uint32_t messageId, uint64_t peerNodeId, WEAVE_ERROR keyErr) | typedefvoid(* 키 오류 메시지 처리 기능의 유형입니다. |
KeyExportCompleteFunct )(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint32_t exportedKeyId, const uint8_t *exportedKey, uint16_t exportedKeyLen) | typedefvoid(* 키 내보내기 프로토콜 전체 처리 기능의 유형입니다. |
KeyExportErrorFunct )(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, StatusReport *statusReport) | typedefvoid(* 키 내보내기 프로토콜 오류 처리 기능의 유형입니다. |
SessionErrorFunct )(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, uint64_t peerNodeId, StatusReport *statusReport) | typedefvoid(* |
SessionEstablishedFunct )(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint16_t sessionKeyId, uint64_t peerNodeId, uint8_t encType) | typedefvoid(* |
State | 열거 형 |
공용 속성 | |
---|---|
CASEUseKnownECDHKey | bool |
ExchangeManager | |
FabricState | |
IdleSessionTimeout | uint32_t |
InitiatorAllowedCASEConfigs | uint8_t |
InitiatorAllowedCASECurves | uint8_t |
InitiatorAllowedKeyExportConfigs | uint8_t |
InitiatorCASEConfig | uint32_t |
InitiatorCASECurveId | uint32_t |
InitiatorKeyExportConfig | uint8_t |
OnKeyErrorMsgRcvd | 주요 오류 콜백 함수입니다. |
OnSessionError | SessionErrorFunct |
OnSessionEstablished | SessionEstablishedFunct |
ResponderAllowedCASEConfigs | uint8_t |
ResponderAllowedCASECurves | uint8_t |
ResponderAllowedKeyExportConfigs | uint8_t |
SessionEstablishTimeout | uint32_t |
State | uint8_t |
mCASEEngine | |
mKeyExport | |
mPASEEngine | |
mStartKeyExport_OnComplete | 키 내보내기 프로토콜 전체 콜백 함수입니다. |
mStartKeyExport_OnError | 키 내보내기 프로토콜 오류 콜백 함수입니다. |
mStartKeyExport_ReqState | void * |
mStartSecureSession_OnComplete | SessionEstablishedFunct |
mStartSecureSession_OnError | SessionErrorFunct |
mStartSecureSession_ReqState | void * |
mTAKEEngine |
공공 기능 | |
---|---|
CancelSessionEstablishment (void *reqState) | 진행중인 세션 설정을 취소합니다. |
Init ( WeaveExchangeManager & aExchangeMgr, System::Layer & aSystemLayer) | |
IsKeyError ( WEAVE_ERROR err) | bool 지정된 Weave 오류 코드가 주요 오류 코드 중 하나인지 확인합니다. |
OnEncryptedMsgRcvd (uint16_t sessionKeyId, uint64_t peerNodeId, uint8_t encType) | void |
ReleaseKey (uint64_t peerNodeId, uint16_t keyId) | void 메시지 암호화 키 예약을 해제합니다. |
ReserveKey (uint64_t peerNodeId, uint16_t keyId) | void 메시지 암호화 키를 예약하십시오. |
SendKeyErrorMsg ( WeaveMessageInfo *rcvdMsgInfo, const IPPacketInfo *rcvdMsgPacketInfo, WeaveConnection *con, WEAVE_ERROR keyErr) | 키 오류 메시지를 보냅니다. |
SetCASEAuthDelegate ( WeaveCASEAuthDelegate *delegate) | void |
SetKeyExportDelegate ( WeaveKeyExportDelegate *delegate) | void |
SetTAKEAuthDelegate ( WeaveTAKEChallengerAuthDelegate *delegate) | void |
SetTAKETokenAuthDelegate ( WeaveTAKETokenAuthDelegate *delegate) | void |
Shutdown (void) | |
StartCASESession ( WeaveConnection *con, uint64_t peerNodeId, const IPAddress & peerAddr, uint16_t peerPort, WeaveAuthMode requestedAuthMode, void *reqState, SessionEstablishedFunct onComplete, SessionErrorFunct onError, WeaveCASEAuthDelegate *authDelegate, uint64_t terminatingNodeId) | 이 메서드는 새 CASE 세션을 설정하거나 기존 CASE 세션을 찾기 위해 호출됩니다. |
StartKeyExport ( WeaveConnection *con, uint64_t peerNodeId, const IPAddress & peerAddr, uint16_t peerPort, uint32_t keyId, bool signMessage, void *reqState, KeyExportCompleteFunct onComplete, KeyExportErrorFunct onError, WeaveKeyExportDelegate *keyExportDelegate) | |
StartPASESession ( WeaveConnection *con, WeaveAuthMode requestedAuthMode, void *reqState, SessionEstablishedFunct onComplete, SessionErrorFunct onError, const uint8_t *pw, uint16_t pwLen) | 이 메서드는 보안 PASE 세션을 설정하기 위해 호출됩니다. |
StartTAKESession ( WeaveConnection *con, WeaveAuthMode requestedAuthMode, void *reqState, SessionEstablishedFunct onComplete, SessionErrorFunct onError, bool encryptAuthPhase, bool encryptCommPhase, bool timeLimitedIK, bool sendChallengerId, WeaveTAKEChallengerAuthDelegate *authDelegate) | 이 메서드는 보안 TAKE 세션을 설정하기 위해 호출됩니다. |
공개 유형
KeyErrorMsgRcvdFunct
void(* KeyErrorMsgRcvdFunct)(uint16_t keyId, uint8_t encType, uint32_t messageId, uint64_t peerNodeId, WEAVE_ERROR keyErr)
키 오류 메시지 처리 기능의 유형입니다.
세부 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
매개 변수 |
|
KeyExportCompleteFunct
void(* KeyExportCompleteFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint32_t exportedKeyId, const uint8_t *exportedKey, uint16_t exportedKeyLen)
키 내보내기 프로토콜 전체 처리 기능의 유형입니다.
세부 | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
매개 변수 |
|
KeyExportErrorFunct
void(* KeyExportErrorFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, StatusReport *statusReport)
키 내보내기 프로토콜 오류 처리 기능의 유형입니다.
세부 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
매개 변수 |
|
SessionErrorFunct
void(* SessionErrorFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, uint64_t peerNodeId, StatusReport *statusReport)
SessionEstablishedFunct
void(* SessionEstablishedFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint16_t sessionKeyId, uint64_t peerNodeId, uint8_t encType)
상태
State
공용 속성
CASEUseKnownECDHKey
bool CASEUseKnownECDHKey
ExchangeManager
WeaveExchangeManager * ExchangeManager
FabricState
WeaveFabricState * FabricState
IdleSessionTimeout
uint32_t IdleSessionTimeout
InitiatorAllowedCASEConfigs
uint8_t InitiatorAllowedCASEConfigs
InitiatorAllowedCASECurves
uint8_t InitiatorAllowedCASECurves
InitiatorAllowedKeyExportConfigs
uint8_t InitiatorAllowedKeyExportConfigs
InitiatorCASEConfig
uint32_t InitiatorCASEConfig
InitiatorCASECurveId
uint32_t InitiatorCASECurveId
InitiatorKeyExportConfig
uint8_t InitiatorKeyExportConfig
OnKeyErrorMsgRcvd
KeyErrorMsgRcvdFunct OnKeyErrorMsgRcvd
주요 오류 콜백 함수입니다.
이 함수는 키 오류 메시지가 수신 될 때 호출됩니다.
OnSessionError
SessionErrorFunct OnSessionError
OnSessionEstablished
SessionEstablishedFunct OnSessionEstablished
ResponderAllowedCASEConfigs
uint8_t ResponderAllowedCASEConfigs
ResponderAllowedCASECurves
uint8_t ResponderAllowedCASECurves
ResponderAllowedKeyExportConfigs
uint8_t ResponderAllowedKeyExportConfigs
SessionEstablishTimeout
uint32_t SessionEstablishTimeout
상태
uint8_t State
mCASEEngine
WeaveCASEEngine * mCASEEngine
mKeyExport
WeaveKeyExport * mKeyExport
mPASEEngine
WeavePASEEngine * mPASEEngine
mStartKeyExport_OnComplete
KeyExportCompleteFunct mStartKeyExport_OnComplete
키 내보내기 프로토콜 전체 콜백 함수입니다.
이 함수는 비밀 키 내보내기 프로세스가 완료되면 호출됩니다.
mStartKeyExport_OnError
KeyExportErrorFunct mStartKeyExport_OnError
키 내보내기 프로토콜 오류 콜백 함수입니다.
이 함수는 키 내보내기 프로세스 중에 오류가 발생하면 호출됩니다.
mStartKeyExport_ReqState
void * mStartKeyExport_ReqState
mStartSecureSession_OnComplete
SessionEstablishedFunct mStartSecureSession_OnComplete
mStartSecureSession_OnError
SessionErrorFunct mStartSecureSession_OnError
mStartSecureSession_ReqState
void * mStartSecureSession_ReqState
mTAKEEngine
WeaveTAKEEngine * mTAKEEngine
공공 기능
CancelSessionEstablishment
WEAVE_ERROR CancelSessionEstablishment( void *reqState )
진행중인 세션 설정을 취소합니다.
세부 | |||||
---|---|---|---|---|---|
매개 변수 |
| ||||
반환 값 |
|
초기화
WEAVE_ERROR Init( WeaveExchangeManager & aExchangeMgr, System::Layer & aSystemLayer )
IsKeyError
bool IsKeyError( WEAVE_ERROR err )
지정된 Weave 오류 코드가 주요 오류 코드 중 하나인지 확인합니다.
이 함수는 디코딩 중에 올바른 키를 찾지 못한 메시지의 개시 자에게 키 오류 메시지를 보낼지 여부를 결정하기 위해 호출됩니다.
세부 | |||||
---|---|---|---|---|---|
매개 변수 |
| ||||
반환 값 |
|
OnEncryptedMsgRcvd
void OnEncryptedMsgRcvd( uint16_t sessionKeyId, uint64_t peerNodeId, uint8_t encType )
ReleaseKey
void ReleaseKey( uint64_t peerNodeId, uint16_t keyId )
메시지 암호화 키 예약을 해제합니다.
이전에 메시지 암호화 키에 배치 된 예약을 해제합니다.
특정 키에 배치 모든 예약의 경우, ReleaseKey () 메서드는 두 번 이상 호출 할 수 있어야합니다.
이 메소드는 None을 포함한 모든 형태의 키 ID를 허용합니다. 실제 키의 이름을 지정하지 않는 키 ID는 무시됩니다.
세부 | |||||
---|---|---|---|---|---|
매개 변수 |
|
ReserveKey
void ReserveKey( uint64_t peerNodeId, uint16_t keyId )
메시지 암호화 키를 예약합니다.
키 예약은 특정 키가 사용 중이며 유지되어야 함을 알리는 데 사용됩니다. 키를 예약한다고해서 KeyError 메시지 수신과 같은 명시적인 작업에 의해 키가 제거되지 않는다는 보장은 없습니다.
특정 키에 배치 된 모든 예약에 대응하는 통화 ReleaseKey ()가 이루어져야한다.
이 메소드는 None을 포함한 모든 형태의 키 ID를 허용합니다. 실제 키의 이름을 지정하지 않는 키 ID는 무시됩니다.
세부 | |||||
---|---|---|---|---|---|
매개 변수 |
|
SendKeyErrorMsg
WEAVE_ERROR SendKeyErrorMsg( WeaveMessageInfo *rcvdMsgInfo, const IPPacketInfo *rcvdMsgPacketInfo, WeaveConnection *con, WEAVE_ERROR keyErr )
키 오류 메시지를 보냅니다.
이 함수는 수신 된 Weave 메시지 디코딩이 키 오류로 인해 실패 할 때 호출됩니다.
세부 | |||||||||
---|---|---|---|---|---|---|---|---|---|
매개 변수 |
| ||||||||
반환 값 |
|
SetCASEAuthDelegate
void SetCASEAuthDelegate( WeaveCASEAuthDelegate *delegate )
SetKeyExportDelegate
void SetKeyExportDelegate( WeaveKeyExportDelegate *delegate )
SetTAKEAuthDelegate
void SetTAKEAuthDelegate( WeaveTAKEChallengerAuthDelegate *delegate )
SetTAKETokenAuthDelegate
void SetTAKETokenAuthDelegate( WeaveTAKETokenAuthDelegate *delegate )
일시 휴업
WEAVE_ERROR Shutdown( void )
StartCASESession
WEAVE_ERROR StartCASESession( WeaveConnection *con, uint64_t peerNodeId, const IPAddress & peerAddr, uint16_t peerPort, WeaveAuthMode requestedAuthMode, void *reqState, SessionEstablishedFunct onComplete, SessionErrorFunct onError, WeaveCASEAuthDelegate *authDelegate, uint64_t terminatingNodeId )
이 메서드는 새 CASE 세션을 설정하거나 기존 CASE 세션을 찾기 위해 호출됩니다.
세부 | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
매개 변수 |
| ||||||||||||||||||||
반환 값 |
|
StartKeyExport
WEAVE_ERROR StartKeyExport( WeaveConnection *con, uint64_t peerNodeId, const IPAddress & peerAddr, uint16_t peerPort, uint32_t keyId, bool signMessage, void *reqState, KeyExportCompleteFunct onComplete, KeyExportErrorFunct onError, WeaveKeyExportDelegate *keyExportDelegate )
StartPASESession
WEAVE_ERROR StartPASESession( WeaveConnection *con, WeaveAuthMode requestedAuthMode, void *reqState, SessionEstablishedFunct onComplete, SessionErrorFunct onError, const uint8_t *pw, uint16_t pwLen )
이 메서드는 보안 PASE 세션을 설정하기 위해 호출됩니다.
세부 | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
매개 변수 |
| ||||||||||||||
반환 값 |
|
StartTAKESession
WEAVE_ERROR StartTAKESession( WeaveConnection *con, WeaveAuthMode requestedAuthMode, void *reqState, SessionEstablishedFunct onComplete, SessionErrorFunct onError, bool encryptAuthPhase, bool encryptCommPhase, bool timeLimitedIK, bool sendChallengerId, WeaveTAKEChallengerAuthDelegate *authDelegate )
이 메서드는 보안 TAKE 세션을 설정하기 위해 호출됩니다.
세부 | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
매개 변수 |
| ||||||||||||||||||||
반환 값 |
|
WeaveSecurityManager
WeaveSecurityManager( void )