Skip to Content
HardwareKonzepteGemeinsame Parameter
Auf dieser Seite

Gemeinsame Parameter

Die meisten Chain- und Gerätemethoden akzeptieren ein params-Objekt; Initialisierungs-, Ereignis- und Lebenszyklus-APIs haben eigene Signaturen. Die Schlüssel auf dieser Seite bilden den gemeinsamen Satz für Adress-, Signier- und Gerätemethoden. Sie sind nicht universell: openWalletSession lehnt useEmptyPassphrase, initSession, deviceId, und passphraseState auch dann ab, wenn diese Werte false sind oder aus einem gemeinsamen Standardwerteobjekt per Spread übernommen werden. Chain- und gerätespezifische Felder (path, coin, tx, message, …) bleiben auf der jeweiligen Methodenseite.

Diese Seite ist die Parameter- Referenz. Zum Aufruflebenszyklus siehe die Core-API-Anleitung. Für Antwort-IDs (connectId, deviceId, uuid, session_id, …), siehe Kennungen.

ParameterTypZweckHinweise
passphraseStatestringDen Aufruf an eine bestimmte versteckte Wallet bindenEinmalig abrufen über openWalletSession (oder das veraltete getPassphraseState); bei jedem späteren Aufruf übergeben, der diese Wallet verwenden muss. Nicht kombinierbar mit useEmptyPassphrase. Dies ist ein Wallet-Fingerabdruck, keine Firmware-session_id.
useEmptyPassphrasebooleanStandard-Wallet erzwingenVerhindert, dass eine verbliebene Sitzung einer versteckten Wallet die Adresse unbemerkt ändert. Nicht kombinierbar mit passphraseState.
initSessionbooleanSitzungsinitialisierung vor dem Aufruf erzwingenKombinieren mit passphraseState im Kompatibilitätspfad. Neuer Code sollte bevorzugt openWalletSession({ mode }) verwenden, statt mode mit diesem Flag zu mischen.
deriveCardanobooleanCardano-Teilbaum vorab ableitenBeim ersten Cardano-Aufruf einer Sitzung setzen.
retryCountnumberWiederholungslimit für den VerbindungsaufbauWird von Core beim Herstellen/Initialisieren der Verbindung verwendet. Ein abgeschlossener oder fehlgeschlagener Signiervorgang wird nicht wiederholt.
pollIntervalTimenumberAbfrageintervall (ms) zwischen WiederholungenKombiniert mit retryCount beim Verbindungsaufbau.
timeoutnumberZeitlimit eines Verbindungsversuchs (ms)Legt nicht das Zeitlimit für Signieren/Firmware-Übertragung fest.
detectBootloaderDevicebooleanSofort fehlschlagen, wenn sich das Gerät im Bootloader befindetIn Signierabläufen verwenden, bei denen der Bootloader niemals gültig ist.
skipWebDevicePromptbooleanWebUSB-Auswahl beim erneuten Einstieg überspringenNur WebUSB. Verwendet die frühere WebUSB-Autorisierung erneut.
keepSessionbooleanTransport nach dem Aufruf offen haltenSteuert, ob Device.run() die Verbindung freigibt. Keine Wallet-Bindung und nicht ersetzt durch passphraseState oder openWalletSession. Behalten Sie es bei aufeinanderfolgenden USB-Signierungen / Prüfen-dann-Aktualisieren und während Electron-BLE-Firmware-Vorgängen bei.

Transportspezifische Hinweise

ParameterWebUSBBridgenode-usbAndroid BLEiOS BLEDesktop BLE
skipWebDevicePrompt✅—————
retryCount / pollIntervalTime / timeoutVerbindungsaufbauVerbindungsaufbauVerbindungsaufbauVerbindungsaufbauVerbindungsaufbauVerbindungsaufbau
passphraseState / useEmptyPassphrase / initSession✅✅✅✅✅✅
deriveCardano / detectBootloaderDevice✅✅✅✅✅✅

Häufige Kombinationen

Standard-Wallet — unbeabsichtigte Aufforderungen für versteckte Wallets vermeiden

await HardwareSDK.evmGetAddress(connectId, deviceId, { path: "m/44'/60'/0'/0/0", useEmptyPassphrase: true, });

Versteckte Wallet — eine Bindung über mehrere Aufrufe wiederverwenden

const opened = await HardwareSDK.openWalletSession(connectId, { mode: 'select-hidden', }); if (!opened.success) throw new Error(opened.payload.error); if (opened.payload.walletType !== 'hidden') { throw new Error('A hidden wallet was not opened'); } const hiddenWallet = { passphraseState: opened.payload.passphraseState, }; await HardwareSDK.evmGetAddress(connectId, opened.payload.deviceId, { path: "m/44'/60'/0'/0/0", ...hiddenWallet, });

Veralteter Kompatibilitätspfad: getPassphraseState(connectId, { initSession: true }), dann { initSession: true, passphraseState } bei späteren Aufrufen übergeben. Siehe Wallet-Sitzungen.

Vorsichtige BLE-Wiederholungen (nur Erkennung / Adressabfrage / Signieren)

const bleDefaults = { retryCount: 3, pollIntervalTime: 1000, timeout: 30_000, };

Übernehmen Sie nicht per Spread bleDefaults in firmwareUpdateV2 / V3 / V4. Siehe Verbindungsabbrüche und Wiederverbindung.

HD-Pfad

Die Mindestpfadlänge einer Methode ist eine SDK-Eingabeprüfung, keine Garantie, dass jeder Pfad dieser Länge unterstützt wird. Die Firmware erzwingt außerdem chainspezifische Ableitungs- und Härtungsregeln.

path: string | number[] folgt BIP44. ed25519-Chains (Solana, NEAR, …) müssen vollständig gehärtet sein.

ChainBeispielpfadHinweise
EVMm/44'/60'/0'/0/0Standard-EVM-Konto
BTC (Nested SegWit)m/49'/0'/0'/0/0Verwenden Sie 84' für Native SegWit
Solanam/44'/501'/0'/0'Vollständig gehärtet
NEARm/44'/397'/0'/0'/1'Vollständig gehärtet
Cardanom/1852'/1815'/0'/0/0Stake unter .../2/0
TRONm/44'/195'/0'/0/0Pfad im EVM-Stil

Beispiel als Zahlenarray: [(44 | 0x80000000) >>> 0, (0 | 0x80000000) >>> 0, 0x80000000, 0, 0]

Fehler wegen unzulässigem Pfad: Prüfen Sie Länge und Härtung auf der Seite der Chain-Methode.

Auf Protocol V1 kann select-hidden eine Standard-Wallet zurückgeben, wenn der Passphrase-Schutz deaktiviert ist. Prüfen Sie walletType vor dem Speichern oder Verwenden von passphraseState.

Zuletzt aktualisiert am