@onekeyfe/hd-core 1.1.32-alpha.1 → 1.1.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6082,7 +6082,6 @@
6082
6082
  }
6083
6083
  },
6084
6084
  "raw_message": {
6085
- "rule": "required",
6086
6085
  "type": "bytes",
6087
6086
  "id": 2
6088
6087
  },
@@ -6113,6 +6112,42 @@
6113
6112
  "options": {
6114
6113
  "default": true
6115
6114
  }
6115
+ },
6116
+ "output_count": {
6117
+ "type": "uint32",
6118
+ "id": 7
6119
+ },
6120
+ "version": {
6121
+ "type": "uint32",
6122
+ "id": 8,
6123
+ "options": {
6124
+ "default": 0
6125
+ }
6126
+ },
6127
+ "lock_time": {
6128
+ "type": "uint64",
6129
+ "id": 9,
6130
+ "options": {
6131
+ "default": 0
6132
+ }
6133
+ },
6134
+ "subnetwork_id": {
6135
+ "type": "bytes",
6136
+ "id": 10
6137
+ },
6138
+ "gas": {
6139
+ "type": "uint64",
6140
+ "id": 11,
6141
+ "options": {
6142
+ "default": 0
6143
+ }
6144
+ },
6145
+ "payload_length": {
6146
+ "type": "uint32",
6147
+ "id": 12,
6148
+ "options": {
6149
+ "default": 0
6150
+ }
6116
6151
  }
6117
6152
  }
6118
6153
  },
@@ -6146,6 +6181,249 @@
6146
6181
  }
6147
6182
  }
6148
6183
  },
6184
+ "KaspaOutpoint": {
6185
+ "fields": {
6186
+ "tx_id": {
6187
+ "rule": "required",
6188
+ "type": "bytes",
6189
+ "id": 1
6190
+ },
6191
+ "index": {
6192
+ "rule": "required",
6193
+ "type": "uint32",
6194
+ "id": 2
6195
+ }
6196
+ }
6197
+ },
6198
+ "KaspaInputScriptType": {
6199
+ "values": {
6200
+ "KASPA_SPEND_P2PK_SCHNORR": 0,
6201
+ "KASPA_SPEND_P2PK_ECDSA": 1
6202
+ }
6203
+ },
6204
+ "KaspaOutputScriptType": {
6205
+ "values": {
6206
+ "KASPA_PAYTOADDRESS": 0,
6207
+ "KASPA_PAYTOCHANGE": 1
6208
+ }
6209
+ },
6210
+ "KaspaRequestType": {
6211
+ "values": {
6212
+ "KASPA_TX_INPUT": 0,
6213
+ "KASPA_TX_OUTPUT": 1,
6214
+ "KASPA_TX_PAYLOAD": 2,
6215
+ "KASPA_TX_FINISHED": 3,
6216
+ "KASPA_TX_PREV_META": 4
6217
+ }
6218
+ },
6219
+ "KaspaTxRequestSignature": {
6220
+ "fields": {
6221
+ "signature_index": {
6222
+ "rule": "required",
6223
+ "type": "uint32",
6224
+ "id": 1
6225
+ },
6226
+ "signature": {
6227
+ "rule": "required",
6228
+ "type": "bytes",
6229
+ "id": 2
6230
+ }
6231
+ }
6232
+ },
6233
+ "KaspaTxRequest": {
6234
+ "fields": {
6235
+ "request_type": {
6236
+ "rule": "required",
6237
+ "type": "KaspaRequestType",
6238
+ "id": 1
6239
+ },
6240
+ "request_index": {
6241
+ "type": "uint32",
6242
+ "id": 2
6243
+ },
6244
+ "signature": {
6245
+ "type": "KaspaTxRequestSignature",
6246
+ "id": 3
6247
+ },
6248
+ "request_payload_length": {
6249
+ "type": "uint32",
6250
+ "id": 4
6251
+ },
6252
+ "prev_tx_id": {
6253
+ "type": "bytes",
6254
+ "id": 5
6255
+ }
6256
+ }
6257
+ },
6258
+ "KaspaTxAckInput": {
6259
+ "fields": {
6260
+ "address_n": {
6261
+ "rule": "repeated",
6262
+ "type": "uint32",
6263
+ "id": 1,
6264
+ "options": {
6265
+ "packed": false
6266
+ }
6267
+ },
6268
+ "previous_outpoint": {
6269
+ "rule": "required",
6270
+ "type": "KaspaOutpoint",
6271
+ "id": 2
6272
+ },
6273
+ "amount": {
6274
+ "rule": "required",
6275
+ "type": "uint64",
6276
+ "id": 3
6277
+ },
6278
+ "sequence": {
6279
+ "rule": "required",
6280
+ "type": "uint64",
6281
+ "id": 4
6282
+ },
6283
+ "sig_op_count": {
6284
+ "rule": "required",
6285
+ "type": "uint32",
6286
+ "id": 5
6287
+ },
6288
+ "script_type": {
6289
+ "type": "KaspaInputScriptType",
6290
+ "id": 6,
6291
+ "options": {
6292
+ "default": "KASPA_SPEND_P2PK_SCHNORR"
6293
+ }
6294
+ },
6295
+ "use_tweak": {
6296
+ "type": "bool",
6297
+ "id": 9,
6298
+ "options": {
6299
+ "default": true
6300
+ }
6301
+ }
6302
+ }
6303
+ },
6304
+ "KaspaTxAckOutput": {
6305
+ "fields": {
6306
+ "script_type": {
6307
+ "type": "KaspaOutputScriptType",
6308
+ "id": 1,
6309
+ "options": {
6310
+ "default": "KASPA_PAYTOADDRESS"
6311
+ }
6312
+ },
6313
+ "amount": {
6314
+ "rule": "required",
6315
+ "type": "uint64",
6316
+ "id": 2
6317
+ },
6318
+ "address_n": {
6319
+ "rule": "repeated",
6320
+ "type": "uint32",
6321
+ "id": 3,
6322
+ "options": {
6323
+ "packed": false
6324
+ }
6325
+ },
6326
+ "address": {
6327
+ "type": "string",
6328
+ "id": 4
6329
+ },
6330
+ "scheme": {
6331
+ "type": "string",
6332
+ "id": 7,
6333
+ "options": {
6334
+ "default": "schnorr"
6335
+ }
6336
+ },
6337
+ "use_tweak": {
6338
+ "type": "bool",
6339
+ "id": 8,
6340
+ "options": {
6341
+ "default": true
6342
+ }
6343
+ }
6344
+ }
6345
+ },
6346
+ "KaspaTxAckPayloadChunk": {
6347
+ "fields": {
6348
+ "payload_chunk": {
6349
+ "rule": "required",
6350
+ "type": "bytes",
6351
+ "id": 1
6352
+ }
6353
+ }
6354
+ },
6355
+ "KaspaTxAckPrevMeta": {
6356
+ "fields": {
6357
+ "version": {
6358
+ "rule": "required",
6359
+ "type": "uint32",
6360
+ "id": 1
6361
+ },
6362
+ "input_count": {
6363
+ "rule": "required",
6364
+ "type": "uint32",
6365
+ "id": 2
6366
+ },
6367
+ "output_count": {
6368
+ "rule": "required",
6369
+ "type": "uint32",
6370
+ "id": 3
6371
+ },
6372
+ "lock_time": {
6373
+ "rule": "required",
6374
+ "type": "uint64",
6375
+ "id": 4
6376
+ },
6377
+ "subnetwork_id": {
6378
+ "rule": "required",
6379
+ "type": "bytes",
6380
+ "id": 5
6381
+ },
6382
+ "gas": {
6383
+ "rule": "required",
6384
+ "type": "uint64",
6385
+ "id": 6
6386
+ },
6387
+ "payload_length": {
6388
+ "rule": "required",
6389
+ "type": "uint32",
6390
+ "id": 7
6391
+ }
6392
+ }
6393
+ },
6394
+ "KaspaTxAckPrevInput": {
6395
+ "fields": {
6396
+ "previous_outpoint": {
6397
+ "rule": "required",
6398
+ "type": "KaspaOutpoint",
6399
+ "id": 1
6400
+ },
6401
+ "sequence": {
6402
+ "rule": "required",
6403
+ "type": "uint64",
6404
+ "id": 2
6405
+ }
6406
+ }
6407
+ },
6408
+ "KaspaTxAckPrevOutput": {
6409
+ "fields": {
6410
+ "amount": {
6411
+ "rule": "required",
6412
+ "type": "uint64",
6413
+ "id": 1
6414
+ },
6415
+ "script_version": {
6416
+ "rule": "required",
6417
+ "type": "uint32",
6418
+ "id": 2
6419
+ },
6420
+ "script_public_key": {
6421
+ "rule": "required",
6422
+ "type": "bytes",
6423
+ "id": 3
6424
+ }
6425
+ }
6426
+ },
6149
6427
  "KaspaSignedTx": {
6150
6428
  "fields": {
6151
6429
  "signature": {
@@ -12559,6 +12837,13 @@
12559
12837
  "MessageType_KaspaSignedTx": 11303,
12560
12838
  "MessageType_KaspaTxInputRequest": 11304,
12561
12839
  "MessageType_KaspaTxInputAck": 11305,
12840
+ "MessageType_KaspaTxRequest": 11306,
12841
+ "MessageType_KaspaTxAckInput": 11307,
12842
+ "MessageType_KaspaTxAckOutput": 11308,
12843
+ "MessageType_KaspaTxAckPayloadChunk": 11309,
12844
+ "MessageType_KaspaTxAckPrevMeta": 11310,
12845
+ "MessageType_KaspaTxAckPrevInput": 11311,
12846
+ "MessageType_KaspaTxAckPrevOutput": 11312,
12562
12847
  "MessageType_NexaGetAddress": 11400,
12563
12848
  "MessageType_NexaAddress": 11401,
12564
12849
  "MessageType_NexaSignTx": 11402,
@@ -13,15 +13,47 @@ export type KaspaSignInputParams = {
13
13
  sequenceNumber: number | string;
14
14
  output: {
15
15
  satoshis: number | string;
16
- script: string;
16
+ // Required by the legacy host-prehash flow; unused by the streaming protocol.
17
+ script?: string;
17
18
  };
18
19
  sigOpCount?: number;
19
20
  };
20
21
 
21
22
  export type KaspaSignOutputParams = {
22
23
  satoshis: number | string;
24
+ // Streaming protocol describes outputs by address; the device builds the script itself.
25
+ // `address` for an external output, `addressN` (BIP-32 path) for a change output.
26
+ address?: string;
27
+ addressN?: string | number[];
28
+ // Legacy host-prehash fields, unused by the streaming protocol but kept for compatibility.
29
+ script?: string;
30
+ scriptVersion?: number;
31
+ };
32
+
33
+ // Referenced (previous) transactions for the streaming protocol's input
34
+ // verification: the device may ask for the transactions the inputs spend from
35
+ // (selected by prev_tx_id) to verify input amounts on-device.
36
+ export type KaspaRefTransactionInput = {
37
+ prevTxId: string;
38
+ outputIndex: number;
39
+ sequenceNumber: number | string;
40
+ };
41
+
42
+ export type KaspaRefTransactionOutput = {
43
+ satoshis: number | string;
44
+ scriptVersion?: number;
23
45
  script: string;
24
- scriptVersion: number;
46
+ };
47
+
48
+ export type KaspaRefTransaction = {
49
+ txId: string;
50
+ version: number;
51
+ inputs: KaspaRefTransactionInput[];
52
+ outputs: KaspaRefTransactionOutput[];
53
+ lockTime?: number | string;
54
+ subNetworkID?: string;
55
+ gas?: number | string;
56
+ payload?: string;
25
57
  };
26
58
 
27
59
  export type KaspaSignTransactionParams = {
@@ -32,6 +64,12 @@ export type KaspaSignTransactionParams = {
32
64
  sigHashType?: SignatureType;
33
65
  sigOpCount?: number;
34
66
  subNetworkID?: string;
67
+ // Optional transaction payload (hex), streamed to the device in chunks.
68
+ payload?: string;
69
+ gas?: number | string;
70
+ // Previous transactions referenced by the inputs, required only when the
71
+ // device requests them for on-device input-amount verification.
72
+ refTxs?: KaspaRefTransaction[];
35
73
  scheme?: string;
36
74
  prefix?: string;
37
75
  useTweak?: boolean; // default is true