Scott Shawcroft
818c9e6a7d
Generate DAC ourselves from our own (test) PAI
...
Now generate and store keys in the json device state. Our PAI for
vendor ID 0xfff4 is hard coded. Other vendor ids require externally
generated certs.
Fixes #19
2024-10-17 16:29:31 -07:00
Scott Shawcroft
64d8fbd34b
Clean up repo and update README
2024-10-17 12:37:58 -07:00
Scott Shawcroft
6b9090e2f4
Store nonvolatile state in json and restore. Improve decode too
2024-10-16 15:04:18 -07:00
Scott Shawcroft
d7406716c9
Fix NOCStruct decoding. Wrong ids
2024-10-15 11:49:29 -07:00
Scott Shawcroft
2d2ae12f55
Fix chunking
2024-10-11 16:33:28 -07:00
Scott Shawcroft
c12fc55748
chunking broken
2024-10-11 15:59:13 -07:00
Scott Shawcroft
aa514ac3d9
Start subscribe support and report chunking
2024-10-10 16:26:49 -07:00
Scott Shawcroft
3d67377f79
Works with Apple
...
Add ACL cluster
2024-10-08 15:25:28 -07:00
Scott Shawcroft
97d7402554
Fixes for matter.js interop
2024-10-04 16:03:35 -07:00
Scott Shawcroft
4a0c4b64ea
Apple commissioning almost works
2024-10-03 15:52:35 -07:00
Scott Shawcroft
7b05d28a3a
Commissioning works from chip-tool!
2024-10-02 16:42:51 -07:00
Scott Shawcroft
e913c3602c
Work on sigma2 response
2024-10-01 16:07:50 -07:00
Scott Shawcroft
496efa5fe7
Make certificate generation replayable. Update README
2024-10-01 15:14:01 -07:00
Scott Shawcroft
15c6b518cb
Restructure + destinationId
2024-09-27 16:01:11 -07:00
Scott Shawcroft
c406629605
Store NOC and update MDNS entries
2024-09-26 16:07:35 -07:00
Scott Shawcroft
672c8643ea
Get through attestation
2024-09-25 16:39:07 -07:00
Scott Shawcroft
391fc0df27
Move onto attestation
2024-09-24 11:51:42 -07:00
Scott Shawcroft
3dd02a8ba0
Remove more extra container ends
2024-09-23 16:56:11 -07:00
Scott Shawcroft
51ce818a6a
Move adding end container into subclass. Struct requires a tag
2024-09-23 15:56:46 -07:00
Scott Shawcroft
05745b1952
More TLV encoding fixes
2024-09-20 15:24:53 -07:00
Scott Shawcroft
2fe5fac82b
Add command support and split TLV parsing
...
TLV parsing can now happen without a concrete TLV structure to
follow. Structures are parsed into dictionaries and list/arrays are
into Python lists. They can't be reencoded this way! It is assumed
they will be used to create a more concrete object via `.from_value`
This handles the variable argument structures by allowing calling
code to make them concrete once they determine the type.
tlv.List is now a container superclass like tlv.Structure. It
allows for Structure like attribute access but preserves order
and duplicate keys (which may be unused).
Commands are now supported by subclassing the data model cluster
and overriding the class level Command() object. It stores input
and output type info.
2024-09-19 16:14:05 -07:00
Scott Shawcroft
39c27d0b55
Encrypts and sends but isn't decryptable
2024-09-17 16:04:19 -07:00
Scott Shawcroft
ba30cd9524
Refactor a bit to make things easier to find
2024-09-13 15:50:39 -07:00
Scott Shawcroft
49d090df42
WIP interaction model parsing and plumbing
2024-07-30 16:35:56 -07:00
Scott Shawcroft
7e235cd49a
WIP: Decrypt first message
...
Gotta figure out how to decode lists and arrays.
2024-07-29 16:29:26 -07:00
Scott Shawcroft
70d2e652d8
PASE succeeds
2024-07-29 14:31:20 -07:00
Scott Shawcroft
997a65c05d
Debugging crypto mismatch
2024-07-26 16:03:22 -07:00
Scott Shawcroft
5f14782999
Start working on SPAKE2+
2024-07-24 15:43:52 -07:00
Scott Shawcroft
05388f185a
Fix tag encoding, wrap in struct and parse StatusReport
2024-07-23 14:48:38 -07:00
Scott Shawcroft
4778dea5c5
More message encoding and attempted send
2024-07-22 16:24:47 -07:00
Scott Shawcroft
fecabb36b6
Work on sending a message
2024-07-19 15:56:02 -07:00
Scott Shawcroft
6078dbe887
Connect back up to real networking, record packets and enable replay
2024-07-18 14:43:15 -07:00