feat(hive): REST POST /hive/sign-message — Keychain signBuffer (fw 7.15.0+)#357
Open
BitHighlander wants to merge 3 commits into
Open
feat(hive): REST POST /hive/sign-message — Keychain signBuffer (fw 7.15.0+)#357BitHighlander wants to merge 3 commits into
BitHighlander wants to merge 3 commits into
Conversation
…works) Pin modules/hdwallet to keepkey/hdwallet master 089e4ba0 (PR #54), which makes nodehid reads non-blocking so an on-device Cancel can dispatch during signing — fixes the swap flow Cancel button not aborting the device.
…15.0+)
- hdwallet pointer → hiveSignMessage shim (msg 1614/1615)
- keepkey-firmware pointer → feat/hive-sign-message (HiveSignMessage
handler: SHA256(message) digest, chain-id-collision guard, SLIP-48
path/role enforcement, owner' excluded)
- endpoint gated like /addresses/hive (hive_enabled 403, fw<7.15.0 501),
registered in SIGNING_ROUTES (approval overlay + probe rejection),
default posting role, returns { signature: hex, public_key: STM }
Verified live on the rebuilt emulator: recovered signer == posting key,
low-S, negative tests (chain-id prefix, owner path) rejected by firmware,
make test-sign-gating 75/75.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Completes the P3 (message-signing) chain: firmware
feat/hive-sign-message(HiveSignMessage 1614/1615) → hdwallethiveSignMessageshim → this REST endpoint. Unblocks Hive dApp login (SkateHive/AioharequestSignBuffer) in the browser extension./addresses/hive(hive_enabled→ 403, fw < 7.15.0 → 501); inSIGNING_ROUTESso the approval overlay + empty-probe rejection apply{ signature: hex(65), public_key: STM }Verified live on the emulator rebuilt from the firmware branch:
SHA256(message)== independently-derived posting key (STM6toC1…), low-S, header 31make test-sign-gating75 pass / 0 fail (new route auto-covered)Depends on: firmware
feat/hive-sign-messagemerging (submodule pointer in this PR references it); hdwalletfeat/hive-sign-message(pointer included).Consumer: keepkey-client
feat/hive-sign-buffer(PR to follow).🤖 Generated with Claude Code