Szymon Lesisz
3dd5d01ce5
chore(transport): remove obsolete THP code
2026-02-03 16:00:58 +01:00
Szymon Lesisz
729f7ae250
refactor(transport): THP call/send/receive flow
...
> Co-authored-by: Marek Polak <marek.polak@satoshilabs.com >
2026-02-03 16:00:58 +01:00
Szymon Lesisz
8aae408c06
chore(protocol): add host_static_key to ThpCredentials
2025-12-30 15:15:20 +01:00
Szymon Lesisz
fae6a1a62f
chore(protocol): use v2 messageType in protocol-thp decode
2025-12-10 12:10:47 +01:00
Szymon Lesisz
4c3f7116d0
chore(protocol): return protocol-v2 messageType as number
2025-12-10 12:10:47 +01:00
Szymon Lesisz
27668ed095
refactor(protocol): use protocol-v2 constants in protocol-thp
2025-12-09 16:17:05 +01:00
Szymon Lesisz
c149719480
chore(protocol): validate control byte (magic) in protocol v2 decode
2025-12-09 16:17:05 +01:00
Szymon Lesisz
8246ad65a6
refactor(protocol): return unmasked magic from readThpHeader
2025-12-09 10:27:58 +01:00
Marek Polak
d382cbfbe0
fix(protocol): don't throw on malformed push notification
2025-12-04 10:25:44 +01:00
Szymon Lesisz
e61610e32b
chore(protocol): export ThpPairingMethod as enum
2025-12-01 12:28:56 +01:00
Szymon Lesisz
780e5327f4
chore(protocol): distinguish DeviceThpState and ThpChannelState
2025-12-01 10:05:45 +01:00
Szymon Lesisz
a43bdb2945
refactor(protocol): encode ThpAck **only** from ThpState
2025-11-24 18:12:18 +01:00
Szymon Lesisz
10c54bd35d
refactor(protocol): THP getControlBit returns both ack and sequence bits
2025-11-24 18:12:18 +01:00
Szymon Lesisz
3d948f28ff
feat(protocol): add ThpState sendAckBit and receiveAckBit
2025-11-24 18:12:18 +01:00
Szymon Lesisz
161406226b
fix(protobuf): add patch for ThpDeviceProperties.pairing_methods
2025-11-20 16:40:54 +01:00
karliatto
6855b5e74f
feat(protocol): power status change notification
2025-11-20 10:48:51 +01:00
Szymon Lesisz
37cd1c6ba1
Revert "fix(transport): allow skipping ThpAck from device"
...
This reverts commit 118327a6ba .
2025-11-13 17:08:02 +01:00
Marek Polak
118327a6ba
fix(transport): allow skipping ThpAck from device
2025-11-11 15:04:47 +01:00
Szymon Lesisz
612f40e74d
feat(connect): handle channel replacement in THP pairing
2025-10-08 16:24:20 +02:00
Marek Polak
ca048710ce
fix(connect): use randomly generated staticKey in first pairing
2025-10-08 15:47:36 +02:00
Marek Polak
26ebf67f63
fix(connect): throw away credentials unaccepted by device
2025-10-08 11:40:08 +02:00
M1nd3r
64eeb31575
chore: add try_to_unlock to handshake hash
2025-10-06 11:20:32 +02:00
Marek Polak
a8aff3e3f8
feat(connect): add tryToUnlock to ThpHandshakeInitRequest
2025-10-06 11:20:32 +02:00
Marek Polak
bdd7b7bb61
refactor(connect): random thp code polish
2025-10-06 11:20:32 +02:00
M1nd3r
b3233240b4
chore(protocol): remove unused ThpInvalidData error type
2025-09-30 10:51:58 +02:00
Jiri Zbytovsky
295afab848
chore(protobuf): update protobuf
2025-09-29 18:01:43 +02:00
karliatto
c2dca4f0bd
feat(protocol): exports for trezor push notification
2025-09-27 12:17:39 +02:00
karliatto
70f0b76f2e
feat(protocol): trezor-push-notification decode
2025-09-26 12:38:54 +02:00
Tomas Martykan
37a4375b33
fix(protocol-thp): add error to getExpectedHeaders
2025-09-25 10:30:54 +02:00
Szymon Lesisz
d84fe7ae25
fix(protocol): do not reset ThpState.properties
2025-08-28 11:20:29 +02:00
Szymon Lesisz
30e20f7096
fix(protocol): ignore unexpected chunks in ThpAck after send
2025-08-21 17:29:12 +02:00
Szymon Lesisz
dd0312cf0b
feat(connect): implement THP passphrase flow
2025-08-18 16:01:21 +02:00
Szymon Lesisz
de01a0302e
feat(connect): cancel THP workflow
2025-08-18 16:01:21 +02:00
Szymon Lesisz
1a7e054e21
feat(connect): implement THP pairing
2025-08-18 16:01:21 +02:00
Szymon Lesisz
2d26b5c928
feat(protocol): add THP pairing messages and state
2025-08-18 16:01:21 +02:00
Szymon Lesisz
f16730bebb
feat(protocol): add THP pairing cryptography
...
Functions used by THP pairing workflow
2025-08-18 16:01:21 +02:00
Szymon Lesisz
0c16c5f1fc
chore(protobuf): update ThpPairingRequest message
2025-08-13 21:16:10 +02:00
Szymon Lesisz
94267f36aa
chore(protobuf): update THP protobuf messages
...
- rename *_static_pubkey > *_static_public_key
- added `ButtonAck` to thp.proto
2025-07-22 09:58:21 +02:00
Szymon Lesisz
3270d50505
chore(protobuf): update THP MessageType enum
2025-07-17 06:47:16 +02:00
Szymon Lesisz
990ba54344
feat(protocol): add ThpState.sync and getExpectedHeaders functions
2025-06-24 14:06:19 +02:00
Szymon Lesisz
dddcb76000
fix(protocol): throw decode error if bytes.length < header size
...
PROTOCOL_MALFORMED instead of "Attempt to access memory outside buffer bounds"
2025-06-24 14:05:09 +02:00
Szymon Lesisz
b5cb747767
feat(protocol): add THP protobuf definitions and types
2025-06-04 20:04:46 +02:00
Szymon Lesisz
b893516894
chore(protocol): rename getChunkHeader to getHeaders and return [header, chunkHeader]
2025-06-04 13:42:30 +02:00
Szymon Lesisz
b3056f54d2
feat(protocol): add THP cryptography
...
Co-authored-by: Ondřej Vejpustek <ondrej.vejpustek@satoshilabs.com >
following: https://github.com/trezor/trezor-firmware/pull/3435
2025-05-26 09:49:51 +02:00
Szymon Lesisz
b33b491b40
feat(protocol): add THP encoding/decoding logic
...
- only one message exchange is supported ThpCreateChannelRequest > ThpCreateChannelResponse
- without cryptography module. will be added in the next commit
2025-05-23 14:52:42 +02:00
Szymon Lesisz
c883e604c1
feat(protocol): add credentials to ThpState
2025-05-23 14:52:42 +02:00
Szymon Lesisz
5838888e83
feat(protocol): add THP protobuf types and state
2025-04-24 11:17:27 +02:00
Szymon Lesisz
7ff4f19571
feat(protocol): add protocol-v2
2025-03-10 12:12:57 +01:00
Szymon Lesisz
5bf4c0138e
feat(protocol): add name to TransportProtocol
2024-09-06 10:20:19 +02:00
Szymon Lesisz
858837bb2a
chore(protocol): accept Buffer in decode function
2024-07-30 12:30:29 +02:00