nl::Weave::WeaveSecurityManager

Özet

Oluşturucular ve Yıkıcılar

WeaveSecurityManager(void)

Herkese açık türler

KeyErrorMsgRcvdFunct)(uint16_t keyId, uint8_t encType, uint32_t messageId, uint64_t peerNodeId, WEAVE_ERROR keyErr) typedef
void(*
Tuş hata mesajı işleme işlevinin türü.
KeyExportCompleteFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint32_t exportedKeyId, const uint8_t *exportedKey, uint16_t exportedKeyLen) typedef
void(*
Anahtar dışa aktarma protokolünün tam işleme işlevinin türü.
KeyExportErrorFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, StatusReport *statusReport) typedef
void(*
Anahtar dışa aktarma protokolü hata işleme işlevinin türü.
SessionErrorFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, uint64_t peerNodeId, StatusReport *statusReport) typedef
void(*
SessionEstablishedFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint16_t sessionKeyId, uint64_t peerNodeId, uint8_t encType) typedef
void(*
State enum

Herkese açık özellikler

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
Anahtar hatası geri çağırma işlevi.
OnSessionError
SessionErrorFunct
OnSessionEstablished
SessionEstablishedFunct
ResponderAllowedCASEConfigs
uint8_t
ResponderAllowedCASECurves
uint8_t
ResponderAllowedKeyExportConfigs
uint8_t
SessionEstablishTimeout
uint32_t
State
uint8_t
mCASEEngine
mKeyExport
mPASEEngine
mStartKeyExport_OnComplete
Anahtar dışa aktarma protokolü eksiksiz geri çağırma işlevi.
mStartKeyExport_OnError
Anahtar dışa aktarma protokolü hatası geri çağırma işlevi.
mStartKeyExport_ReqState
void *
mStartSecureSession_OnComplete
SessionEstablishedFunct
mStartSecureSession_OnError
SessionErrorFunct
mStartSecureSession_ReqState
void *
mTAKEEngine

Herkese açık işlevler

CancelSessionEstablishment(void *reqState)
Devam eden bir oturum kurulumunu iptal edin.
Init(WeaveExchangeManager & aExchangeMgr, System::Layer & aSystemLayer)
IsKeyError(WEAVE_ERROR err)
bool
Belirtilen Weave hata kodunun temel hata kodlarından biri olup olmadığını kontrol eder.
OnEncryptedMsgRcvd(uint16_t sessionKeyId, uint64_t peerNodeId, uint8_t encType)
void
ReleaseKey(uint64_t peerNodeId, uint16_t keyId)
void
Mesaj şifreleme anahtarı rezervasyonunu yayınlayın.
ReserveKey(uint64_t peerNodeId, uint16_t keyId)
void
Mesaj şifreleme anahtarına rezervasyon yerleştirme.
SendKeyErrorMsg(WeaveMessageInfo *rcvdMsgInfo, const IPPacketInfo *rcvdMsgPacketInfo, WeaveConnection *con, WEAVE_ERROR keyErr)
Anahtar hata mesajı gönderin.
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)
Bu yöntem, yeni CASE oturumu oluşturmak veya mevcut CASE oturumunu bulmak için çağrılır.
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)
Bu yöntem, güvenli PASE oturumu oluşturmak için çağrılır.
StartTAKESession(WeaveConnection *con, WeaveAuthMode requestedAuthMode, void *reqState, SessionEstablishedFunct onComplete, SessionErrorFunct onError, bool encryptAuthPhase, bool encryptCommPhase, bool timeLimitedIK, bool sendChallengerId, WeaveTAKEChallengerAuthDelegate *authDelegate)
Bu yöntem, güvenli TAKE oturumu oluşturmak için çağrılır.

Herkese açık türler

KeyErrorMsgRcvdFunct

void(* KeyErrorMsgRcvdFunct)(uint16_t keyId, uint8_t encType, uint32_t messageId, uint64_t peerNodeId, WEAVE_ERROR keyErr)

Tuş hata mesajı işleme işlevinin türü.

Ayrıntılar
Parametreler
[in] keyId
Şifreleme anahtarı, eşten anahtar hata mesajı yanıtı verilmesine neden oldu.
[in] encType
keyId ile ilişkili şifreleme türü.
[in] messageId
Weave mesajının tanımlayıcısı, eşten gelen anahtar hata yanıtıyla sonuçlandı.
[in] peerNodeId
Anahtar hata mesajı gönderen Weave düğümünün tanımlayıcısı.
[in] keyErr
Eşten alınan hata kodu.

KeyExportCompleteFunct

void(* KeyExportCompleteFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, uint32_t exportedKeyId, const uint8_t *exportedKey, uint16_t exportedKeyLen)

Anahtar dışa aktarma protokolünün tam işleme işlevinin türü.

Ayrıntılar
Parametreler
[in] sm
WeaveSecurityManager nesnesinin işaretçisi.
[in] con
WeaveConnection nesnesinin işaretçisi.
[in] reqState
Anahtar dışa aktarma isteğinde bulunan kişi durumunun işaretçisi.
[in] keyId
Dışa aktarılan anahtar kimliği.
[in] exportedKey
Dışa aktarılan gizli anahtarın işaretçisi.
[in] exportedKeyLen
Dışa aktarılan gizli anahtar uzunluğuna referans.

KeyExportErrorFunct

void(* KeyExportErrorFunct)(WeaveSecurityManager *sm, WeaveConnection *con, void *reqState, WEAVE_ERROR localErr, StatusReport *statusReport)

Anahtar dışa aktarma protokolü hata işleme işlevinin türü.

Ayrıntılar
Parametreler
[in] sm
WeaveSecurityManager nesnesinin işaretçisi.
[in] con
WeaveConnection nesnesinin işaretçisi.
[in] reqState
Anahtar dışa aktarma isteğinde bulunan kişi durumunun işaretçisi.
[in] localErr
Anahtar dışa aktarma protokolü sırasında WEAVE_ERROR ile karşılaşıldı.
[in] statusReport
Eşten hata durumu alındıysa Statusreport nesnesine işaret eden bir işaret.

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)

Eyalet

 State

Herkese açık özellikler

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

Anahtar hatası geri çağırma işlevi.

Bu işlev, bir tuş hata mesajı alındığında çağrılır.

OnSessionError

SessionErrorFunct OnSessionError

OnSessionEstablished

SessionEstablishedFunct OnSessionEstablished

ResponderAllowedCASEConfigs

uint8_t ResponderAllowedCASEConfigs

ResponderAllowedCASECurves

uint8_t ResponderAllowedCASECurves

ResponderAllowedKeyExportConfigs

uint8_t ResponderAllowedKeyExportConfigs

SessionEstablishTimeout

uint32_t SessionEstablishTimeout

Eyalet

uint8_t State

mCASEEngine

WeaveCASEEngine * mCASEEngine

mKeyExport

WeaveKeyExport * mKeyExport

mPASEEngine

WeavePASEEngine * mPASEEngine

mStartKeyExport_OnComplete

KeyExportCompleteFunct mStartKeyExport_OnComplete

Anahtar dışa aktarma protokolü eksiksiz geri çağırma işlevi.

Bu işlev, gizli anahtarı dışa aktarma işlemi tamamlandığında çağrılır.

mStartKeyExport_OnError

KeyExportErrorFunct mStartKeyExport_OnError

Anahtar dışa aktarma protokolü hatası geri çağırma işlevi.

Bu işlev, anahtar dışa aktarma işlemi sırasında bir hatayla karşılaştığında çağrılır.

mStartKeyExport_ReqState

void * mStartKeyExport_ReqState

mStartSecureSession_OnComplete

SessionEstablishedFunct mStartSecureSession_OnComplete

mStartSecureSession_OnError

SessionErrorFunct mStartSecureSession_OnError

mStartSecureSession_ReqState

void * mStartSecureSession_ReqState

mTAKEEngine

WeaveTAKEEngine * mTAKEEngine

Herkese açık işlevler

CancelSessionEstablishment

WEAVE_ERROR CancelSessionEstablishment(
  void *reqState
)

Devam eden bir oturum kurulumunu iptal edin.

Ayrıntılar
Parametreler
[in] reqState
Oturum başlatıldığında uygulama tarafından sağlanan değerle eşleşen bir işaretçi değeri.
Değerleri Döndür
WEAVE_NO_ERROR
Eşleşen bir devam eden oturum kurulumu bulundu ve iptal edildiyse.
WEAVE_ERROR_INCORRECT_STATE
Devam eden bir oturum kurulumu yoksa veya devam eden oturum, sağlanan istek durumu işaretçisiyle eşleşmediyse.

Başlatma

WEAVE_ERROR Init(
  WeaveExchangeManager & aExchangeMgr,
  System::Layer & aSystemLayer
)

IsKeyError

bool IsKeyError(
  WEAVE_ERROR err
)

Belirtilen Weave hata kodunun temel hata kodlarından biri olup olmadığını kontrol eder.

Bu işlev, anahtar hata mesajının kod çözme sırasında doğru anahtarı bulamayan mesajı başlatan kişiye gönderilip gönderilmeyeceğini belirlemek için çağrılır.

Ayrıntılar
Parametreler
[in] err
Weave hata kodu.
Değerleri Döndür
true
Örgü hata kodu belirtilirse önemli bir hatadır.
false
Aksi halde.

OnEncryptedMsgRcvd

void OnEncryptedMsgRcvd(
  uint16_t sessionKeyId,
  uint64_t peerNodeId,
  uint8_t encType
)

ReleaseKey

void ReleaseKey(
  uint64_t peerNodeId,
  uint16_t keyId
)

Mesaj şifreleme anahtarı rezervasyonunu yayınlayın.

Daha önce bir ileti şifreleme anahtarına yerleştirilmiş rezervasyonları iptal etme.

Belirli bir anahtara yerleştirilen her rezervasyon için ReleaseKey() yöntemi birden fazla kez çağrılamaz.

Bu yöntem, Yok dahil herhangi bir anahtar kimliği biçimini kabul eder. Gerçek anahtarları adlandırmayan anahtar kimlikleri yoksayılır.

Ayrıntılar
Parametreler
[in] peerNodeId
Anahtarın paylaştığı emsalin Weave düğüm kimliği.
[in] keyId
Rezervasyonu iptal edilecek anahtarın kimliği.

ReserveKey

void ReserveKey(
  uint64_t peerNodeId,
  uint16_t keyId
)

Mesaj şifreleme anahtarına rezervasyon yerleştirme.

Önemli rezervasyonlar, belirli bir anahtarın aktif olarak kullanıldığını ve saklanması gerektiğini belirtmek için kullanılır. Bir anahtara rezervasyon yerleştirmenin, KeyError mesajının alınması gibi açık bir işlemle anahtarın kaldırılmayacağını garanti etmediğini unutmayın.

Belirli bir anahtara yerleştirilen her rezervasyon için karşılık gelen bir ReleaseKey() çağrısı yapılmalıdır.

Bu yöntem, Yok dahil herhangi bir anahtar kimliği biçimini kabul eder. Gerçek anahtarları adlandırmayan anahtar kimlikleri yoksayılır.

Ayrıntılar
Parametreler
[in] peerNodeId
Anahtarın paylaştığı eşin Weave düğüm kimliği.
[in] keyId
Ayrılacak anahtarın kimliği.

SendKeyErrorMsg

WEAVE_ERROR SendKeyErrorMsg(
  WeaveMessageInfo *rcvdMsgInfo,
  const IPPacketInfo *rcvdMsgPacketInfo,
  WeaveConnection *con,
  WEAVE_ERROR keyErr
)

Anahtar hata mesajı gönderin.

Bu işlev, alınan Weave ileti kodu çözme işlemi anahtar hatası nedeniyle başarısız olduğunda çağrılır.

Ayrıntılar
Parametreler
[in] rcvdMsgInfo
Alınan Weave iletisinin ileti bilgilerine işaret eden bir işaret.
[in] rcvdMsgPacketInfo
Alınan Weave mesajının IPPacketInfo nesnesinin işaretçisi.
[in] con
WeaveConnection nesnesinin işaretçisi.
[in] keyErr
Örgü anahtarı hata kodu.
Değerleri Döndür
WEAVE_ERROR_NO_MEMORY
Yeni exchange bağlamı veya yeni mesaj arabelleği için bellek ayrılamadı.
WEAVE_ERROR_BUFFER_TOO_SMALL
Arabellek çok küçükse
WEAVE_NO_ERROR
Yöntem başarılı olursa.

SetCASEAuthDelegate

void SetCASEAuthDelegate(
  WeaveCASEAuthDelegate *delegate
)

SetKeyExportDelegate

void SetKeyExportDelegate(
  WeaveKeyExportDelegate *delegate
)

SetTAKEAuthDelegate

void SetTAKEAuthDelegate(
  WeaveTAKEChallengerAuthDelegate *delegate
)

SetTAKETokenAuthDelegate

void SetTAKETokenAuthDelegate(
  WeaveTAKETokenAuthDelegate *delegate
)

Kapat

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
)

Bu yöntem, yeni CASE oturumu oluşturmak veya mevcut CASE oturumunu bulmak için çağrılır.

Ayrıntılar
Parametreler
[in] con
WeaveConnection nesnesinin işaretçisi.
[in] peerNodeId
Eşin düğüm tanımlayıcısı.
[in] peerAddr
Eş düğümün IP adresi.
[in] peerPort
Eş düğümün bağlantı noktası.
[in] requestedAuthMode
Eşin kimliğinin doğrulanması için kullanılan yöntem. Bu, CASE kimlik doğrulama modlarından biri olmalıdır.
[in] reqState
İstek sahibinin durumunu gösteren bir işaretçi.
[in] onComplete
İstenen güvenli oturum oluşturulduğunda çağrılacak olan geri çağırma işlevine işaret eden bir işaret.
[in] onError
İstenen oturum kurulumu başarısız olursa çağrılacak geri çağırma işlevine işaret eden bir işaret.
[in] authDelegate
CASE kimlik doğrulaması yetki nesnesinin işaretçisi.
[in] terminatingNodeId
Oturum sonlandırma düğümünün düğüm tanımlayıcısı. Bu giriş, paylaşılan güvenli oturumun istendiğini gösteren kNodeIdNotSpecified değerinden farklı olduğunda.
Değerleri Döndür
WEAVE_NO_ERROR
Başarıya merhaba.

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
)

Bu yöntem, güvenli PASE oturumu oluşturmak için çağrılır.

Ayrıntılar
Parametreler
[in] con
WeaveConnection nesnesinin işaretçisi.
[in] requestedAuthMode
Eşin kimliğinin doğrulanması için kullanılan yöntem. Bu, PASE kimlik doğrulama modlarından biri olmalıdır.
[in] reqState
İstek sahibinin durumunu gösteren bir işaretçi.
[in] onComplete
İstenen güvenli oturum oluşturulduğunda çağrılacak olan geri çağırma işlevine işaret eden bir işaret.
[in] onError
İstenen oturum kurulumu başarısız olursa çağrılacak geri çağırma işlevine işaret eden bir işaret.
[in] pw
PASE gizli şifresine işaret eden bir işaret.
[in] pwLen
PASE gizli şifresinin uzunluğu.
Değerleri Döndür
WEAVE_NO_ERROR
Başarıya merhaba.

StartTAKESession

WEAVE_ERROR StartTAKESession(
  WeaveConnection *con,
  WeaveAuthMode requestedAuthMode,
  void *reqState,
  SessionEstablishedFunct onComplete,
  SessionErrorFunct onError,
  bool encryptAuthPhase,
  bool encryptCommPhase,
  bool timeLimitedIK,
  bool sendChallengerId,
  WeaveTAKEChallengerAuthDelegate *authDelegate
)

Bu yöntem, güvenli TAKE oturumu oluşturmak için çağrılır.

Ayrıntılar
Parametreler
[in] con
WeaveConnection nesnesinin işaretçisi.
[in] requestedAuthMode
Eşin kimliğinin doğrulanması için kullanılan yöntem. Bu, TAKE kimlik doğrulama modlarından biri olmalıdır.
[in] reqState
İstek sahibinin durumunu gösteren bir işaretçi.
[in] onComplete
İstenen güvenli oturum oluşturulduğunda çağrılacak olan geri çağırma işlevine işaret eden bir işaret.
[in] onError
İstenen oturum kurulumu başarısız olursa çağrılacak geri çağırma işlevine işaret eden bir işaret.
[in] encryptAuthPhase
Protokol kimlik doğrulama aşamasının şifrelenip şifrelenmeyeceğini gösteren boole işareti.
[in] encryptCommPhase
Protokol iletişim aşamasının şifrelenip şifrelenmeyeceğini gösteren boole işareti.
[in] timeLimitedIK
Tanımlama Anahtarı'nın (IK) süre sınırlı olup olmadığını gösteren boole flag'i.
[in] sendChallengerId
Meydan okumanın mesaja dahil edilip edilmeyeceğini gösteren boole flag'i. Dahil edilmezse Weave düğüm kimliği değeri bir meydan okuma kimliği olarak kullanılır.
[in] authDelegate
TAKE zorlukları kimlik doğrulama yetkili nesnesine işaret eden bir işaret.
Değerleri Döndür
WEAVE_NO_ERROR
Başarıya merhaba.

WeaveSecurityManager

 WeaveSecurityManager(
  void
)