Resource discovery, Object Security and other news from CoAP Christian Ams¨ uss <chrysn@fsfe.org> 2018-09-13
CoAP Constrained RESTful environments
RST 3V3 RST RST 3V3 RST GND AREF GND AREF A0 BAT A0 BAT A1 A2 LongRange EN A2 A1 LongRange EN A3 13 5V A3 13 5V A4 12 A4 12 A5 SCK 10 11 A5 SCK 11 10 MOSI MISO 9 MOSI MISO 9 0 5 6 0 5 6 1 3 1 3 DIO1 2 DIO1 2 ANT DIO2 DIO3 ANT DIO2 DIO3 RST 3V3 RST GND AREF A0 LongRange BAT A1 A2 EN 5V A3 13 A5 A4 12 SCK 10 11 MOSI MISO 9 0 5 6 1 3 GND AREF 3 2 1 0 9 8 7 6 5 4 3 2 1 0 DIO1 2 L 1 1 1 1 DIGITAL TX RX TX ANT DIO2 DIO3 RX PWR 1 PWR SEL USB EXT ICSP RST RESET www.adruino.cc RST 3V3 5V Gnd 3V3 POWER Vin 1 0 ANALOG IN 3 2 4 5 AREF GND A0 A1 LongRange EN BAT A2 5V A3 A4 12 13 A5 11 MOSI MISO SCK 10 6 9 0 1 5 3 2 DIO1 ANT DIO2 DIO3 RST 3V3 RST AREF GND A0 A1 LongRange EN BAT A2 5V A4 A3 13 A5 11 12 MOSI MISO SCK 10 6 9 0 5 1 2 3 DIO1 ANT DIO2 DIO3
interfaces discovery LWM2M Resource Directory custom custom PubSub apps CoRE- apps Conf Links Links SenML CBOR CBOR OSCORE WG CoAP CoAP UDP DTLS TCP TLS WS IETF IPv6 / v4 IPv6 IPv6 / v4 2018 6lo 6lo wired LoRa wired WiFi WiFi cell 802.15.4 BLE NFC 2014
interfaces discovery LWM2M Resource Directory custom PubSub apps CoRE- Conf Links SenML CBOR OSCORE WG CoAP UDP DTLS TCP TLS WS IETF IPv6 IPv6 / v4 2018 6lo LoRa wired WiFi cell 802.15.4 BLE NFC 2014
RST 3V3 RST RST 3V3 RST GND AREF GND AREF A0 BAT A0 BAT A1 A2 LongRange EN A2 A1 LongRange EN A3 13 5V A3 13 5V A4 12 A4 12 A5 SCK 10 11 A5 SCK 11 10 MOSI MISO 9 MOSI MISO 9 0 5 6 0 5 6 1 3 1 3 DIO1 2 DIO1 2 ANT DIO2 DIO3 ANT DIO2 DIO3 RST 3V3 RST GND AREF A0 LongRange BAT A1 A2 EN 5V A3 13 A5 A4 12 SCK 10 11 MOSI MISO 9 0 5 6 1 3 GND AREF 3 2 1 0 9 8 7 6 5 4 3 2 1 0 DIO1 2 L 1 1 1 1 DIGITAL TX RX TX ANT DIO2 DIO3 RX PWR 1 PWR SEL USB EXT ICSP RST RESET www.adruino.cc RST 3V3 5V Gnd 3V3 POWER Vin 1 0 ANALOG IN 3 2 4 5 AREF GND A0 A1 LongRange EN BAT A2 5V A3 A4 12 13 A5 11 MOSI MISO SCK 10 6 9 0 1 5 3 2 DIO1 ANT DIO2 DIO3 RST 3V3 RST AREF GND A0 A1 LongRange EN BAT A2 5V A4 A3 13 A5 11 12 MOSI MISO SCK 10 6 9 0 5 1 2 3 DIO1 ANT DIO2 DIO3
CoRE Resource Directory
RST 3V3 RST RST 3V3 RST GND AREF GND AREF A0 BAT A0 BAT A1 A2 LongRange EN A2 A1 LongRange EN A3 13 5V A3 13 5V A4 12 A4 12 A5 SCK 10 11 A5 SCK 11 10 MOSI MISO 9 MOSI MISO 9 0 5 6 0 5 6 1 3 1 3 DIO1 2 DIO1 2 ANT DIO2 DIO3 ANT DIO2 DIO3 RST 3V3 RST GND AREF A0 LongRange BAT A1 A2 EN 5V A3 13 A5 A4 12 SCK 10 11 MOSI MISO 9 0 5 6 1 3 GND AREF 3 2 1 0 9 8 7 6 5 4 3 2 1 0 DIO1 2 L 1 1 1 1 DIGITAL TX RX TX ANT DIO2 DIO3 RX PWR 1 PWR SEL USB EXT ICSP RST RESET www.adruino.cc RST 3V3 5V Gnd 3V3 POWER Vin 1 0 ANALOG IN 3 2 4 5 AREF GND A0 A1 LongRange EN BAT A2 5V A3 A4 12 13 A5 11 MOSI MISO SCK 10 6 9 0 1 5 3 2 DIO1 ANT DIO2 DIO3 RST 3V3 RST AREF GND A0 A1 LongRange EN BAT A2 5V A4 A3 13 A5 11 12 MOSI MISO SCK 10 6 9 0 5 1 2 3 DIO1 ANT DIO2 DIO3
Regular resource discovery GET coap : / / [ fd02 : : fd ] / . well − known/ core ? r t=temperature Response : 2.05 Content from [2001: db8 : f0 : : 1 ] Payload : < /temp > ; r t=temperature ; ct=0
Registration at Resource Directory POST coap : / / [ 2 0 0 1 : db8 : f01 : : f f ]/ rd ?ep=node42&l t =300 from [2001: db8 : f0 : : 1 ] Payload : < /temp > ; r t=temperature ; ct=0 Response : 2.04 Changed
Discovery via Resource Directory GET coap : / / [ 2 0 0 1 : db8 : f01 : : f f ]/ rd − lookup / r e s ? r t=temperature Response : 2.05 Content Payload : < coap : / / [ 2 0 0 1 : db8 : f0 : : 1 ] / temp > ; r t=temperature ; ct =0; anchor=”coap : / / [ 2 0 0 1 : db8 : f0 : : 1 ] ”
RST 3V3 RST RST 3V3 RST GND AREF GND AREF A0 BAT A0 BAT A1 A2 LongRange EN A2 A1 LongRange EN A3 13 5V A3 13 5V A4 12 A4 12 A5 SCK 10 11 A5 SCK 11 10 MOSI MISO 9 MOSI MISO 9 0 5 6 0 5 6 1 3 1 3 DIO1 2 DIO1 2 ANT DIO2 DIO3 ANT DIO2 DIO3 RST 3V3 RST GND AREF A0 LongRange BAT A1 A2 EN 5V A3 13 A5 A4 12 SCK 10 11 MOSI MISO 9 0 5 6 1 3 GND AREF 3 2 1 0 9 8 7 6 5 4 3 2 1 0 DIO1 2 L 1 1 1 1 DIGITAL TX RX TX ANT DIO2 DIO3 RX PWR 1 PWR SEL USB EXT ICSP RST RESET www.adruino.cc RST 3V3 5V Gnd 3V3 POWER Vin 1 0 ANALOG IN 3 2 4 5 AREF GND A0 A1 LongRange EN BAT A2 5V A3 A4 12 13 A5 11 MOSI MISO SCK 10 6 9 0 1 5 3 2 DIO1 ANT DIO2 DIO3 RST 3V3 RST AREF GND A0 A1 LongRange EN BAT A2 5V A4 A3 13 A5 11 12 MOSI MISO SCK 10 6 9 0 5 1 2 3 DIO1 ANT DIO2 DIO3
OSCORE Object Security for CoRE
RST 3V3 RST RST 3V3 RST GND AREF GND AREF A0 BAT A0 BAT A1 A2 LongRange EN A2 A1 LongRange EN A3 13 5V A3 13 5V A4 12 A4 12 A5 SCK 10 11 A5 SCK 11 10 MOSI MISO 9 MOSI MISO 9 0 5 6 0 5 6 1 3 1 3 DIO1 2 DIO1 2 ANT DIO2 DIO3 ANT DIO2 DIO3 RST 3V3 RST GND AREF A0 LongRange BAT A1 A2 EN 5V A3 13 A5 A4 12 SCK 10 11 MOSI MISO 9 0 5 6 1 3 GND AREF 3 2 1 0 9 8 7 6 5 4 3 2 1 0 DIO1 2 L 1 1 1 1 DIGITAL TX RX TX ANT DIO2 DIO3 RX PWR 1 PWR SEL USB EXT ICSP RST RESET www.adruino.cc RST 3V3 5V Gnd 3V3 POWER Vin 1 0 ANALOG IN 3 2 4 5 AREF GND A0 A1 LongRange EN BAT A2 5V A3 A4 12 13 A5 11 MOSI MISO SCK 10 6 9 0 1 5 3 2 DIO1 ANT DIO2 DIO3 RST 3V3 RST AREF GND A0 A1 LongRange EN BAT A2 5V A4 A3 13 A5 11 12 MOSI MISO SCK 10 6 9 0 5 1 2 3 DIO1 ANT DIO2 DIO3
OSCORE request protection GET coap :// node42 . example . com/ ambient / Token : ”0123” Observe : yes POST coap :// node42 . example . com/ Token : ”0123” Observe : yes Object − S e c u r i t y : key ID , nonce Encrypted payload : GET / ambient / the AEAD tag
OSCORE response protection 2.05 Content Token : ”0123” Observation update : 15 Payload : a i r i s s t i l l hot but not as dry any more 2.04 Changed Token : ”0123” Observation update : 15 Object − S e c u r i t y : empty Encrypted payload : 2.05 Content , Payload : a i r i s s t i l l hot but not as dry any more AEAD tag
interfaces discovery LWM2M Resource Directory custom PubSub apps CoRE- Conf Links SenML CBOR OSCORE WG CoAP UDP DTLS TCP TLS WS IETF IPv6 IPv6 / v4 2018 6lo LoRa wired WiFi cell 802.15.4 BLE NFC 2014
Recap ◮ Resource Directory: discovery where multicast won’t do ◮ OSCORE: compact end to end protected exchanges across proxies ◮ SenML, Links-CBOR: compact versatile media types ◮ CoREConf, PubSub, CoRE interfaces: application building blocks
Thanks for having me here Slides and more links on http://christian.amsuess.com/presentations/2018/summit-coap/
Recommend
More recommend