Skip to content

feat(arweave): ECDSA-only HD derivation (coin 472) - #51

Merged
gitctrlx merged 1 commit into
mainfrom
feat/kobe-arweave-ecdsa
Aug 12, 2026
Merged

feat(arweave): ECDSA-only HD derivation (coin 472)#51
gitctrlx merged 1 commit into
mainfrom
feat/kobe-arweave-ecdsa

Conversation

@gitctrlx

Copy link
Copy Markdown
Member

Summary

  • Add kobe-arweave: ECDSA-only offline HD (SLIP-44 472), path m/44'/472'/0'/0/{i}
  • Address = Base64URL_nopad(SHA-256(compressed 33-byte secp256k1 pubkey)) — matches node ar_wallet (ECDSA_PUB_KEY_SIZE = 33) and arweave-js master-ec identifier hash
  • Helpers: address_from_compressed_pubkey, owner_from_compressed_pubkey (recovered owner when tx owner is empty)
  • CLI: kobe arweave / kobe ar (new / import)
  • Umbrella feature arweave in all-chains (not mainstream)
  • Wire CI thumb no_std + publish.yml crates.io order
  • Workspace 3.4.0; rewrite CONTRIBUTING.md chain registration matrix (CI/publish rows explicit)
  • Explicit non-goals: RSA wallets, transaction signing

Protocol

Item Value
Curve secp256k1
Pubkey compressed 33 B
Address Base64URL(SHA-256(pk)), 43 chars
Path m/44'/472'/0'/0/{i}
KAT abandon@0 G3y00z9F3EvSzJprpIH6vPqHVZPH0rLqLrg0JOsd88Y
KAT abandon@1 s67JULQPjY6wpxYV4imfx_Ui6twtC_jfxnluJT4GOSo

Sources: ECDSA Keys, ar_wallet.erl, arweave-js origin/master-ec.

Test plan

  • cargo test -p kobe-arweave (KATs + uncompressed negative)
  • cargo test -p kobe --all-features --test cross_chain_smoke
  • cargo test --workspace --all-features
  • cargo deny check (advisories/bans/licenses/sources)
  • host check-no-std includes kobe-arweave
  • CLI: kobe arweave import -m "abandon…about" --json → KAT address
  • CI green (lint / test / deny / no_std thumb)

Add kobe-arweave for offline BIP-44 secp256k1 derivation at
m/44'/472'/0'/0/{i}. Address is Base64URL(SHA-256(compressed 33-byte
pubkey)), matching ar_wallet and arweave-js master-ec. Wire umbrella
feature, CLI (arweave/ar), CI no_std, crates.io publish order, docs,
and CONTRIBUTING chain registration matrix. Workspace 3.4.0.
Copilot AI lite review requested due to automatic review settings August 12, 2026 05:49

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@gitctrlx
gitctrlx merged commit 0183d7b into main Aug 12, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants