Rendezvous passivo

Il rendezvous passivo si differenzia da quello attivo per il fatto che la fase di creazione della connessione viene avviata prima della fase di identificazione da parte del provisionee.

Riepilogo

Inoltre, il provisioner rifiuta ed elimina le connessioni avviate in cui la risposta di identificazione non contiene una descrizione del dispositivo corrispondente a quanto previsto.

In uno scenario di Rendezvous passivo, il dispositivo installato già su un tessuto PAN e Weave 15.4 (il "dispositivo esistente") attiva il PAN in modalità unibile e ascolta passivamente le connessioni TCP in entrata sulla porta Weave non protetta. Mentre il PAN è unificabile, un nuovo dispositivo (il "joiner") può unirsi in una modalità provvisoria che indirizza tutto il loro traffico a una porta specifica (in questo caso, la porta Weave non protetta) sull'host che ha reso possibile l'unione della rete. Questo traffico non è protetto a livello di link, poiché per definizione un dispositivo unito provvisoriamente non ha una copia delle chiavi di crittografia PAN. Quando la linguetta della batteria è tirata o viene attivata dall'utente in qualche altro modo, il joiner cerca attivamente i PAN unibili. Per ogni PAN, il joiner si unisce provvisoriamente alla rete e tenta di eseguire l’autenticazione PASE con il dispositivo esistente sulla porta Weave non protetta. Quando il dispositivo del join trova il PAN corretto, il tentativo di autenticazione PASE avrà esito positivo. A questo punto, il join e il dispositivo esistente eseguiranno uno scambio sicuro di chiavi a livello Weave, dopodiché potranno eseguire il resto dell'interazione di accoppiamento su un canale protetto.

Funzioni

passiveRendezvousWithCompletion:failure:(WDMCompletionBlock completionBlock, WDMFailureBlock failureBlock)
virtual void
passiveRendezvousWithDeviceAccessToken:completion:failure:(NSString *accessToken, WDMCompletionBlock completionBlock, WDMFailureBlock failureBlock)
virtual void
passiveRendezvousWithDevicePairingCode:completion:failure:(NSString *pairingCode, WDMCompletionBlock completionBlock, WDMFailureBlock failureBlock)
virtual void

Funzioni

passiveRendezvousWithComplete:failure:

virtual void passiveRendezvousWithCompletion:failure:(
  WDMCompletionBlock completionBlock,
  WDMFailureBlock failureBlock
)

passiveRendezvousWithDeviceAccessToken:completion:failure:

virtual void passiveRendezvousWithDeviceAccessToken:completion:failure:(
  NSString *accessToken,
  WDMCompletionBlock completionBlock,
  WDMFailureBlock failureBlock
)

passiveRendezvousWithDevicePairingCode:completion:failure:

virtual void passiveRendezvousWithDevicePairingCode:completion:failure:(
  NSString *pairingCode,
  WDMCompletionBlock completionBlock,
  WDMFailureBlock failureBlock
)