lightninglabs / lightninglabs/taproot-assets

addr: standardized common (?) address size optimization

Open
#64 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

addrs BIP optimization
Dominant language
Go
Stars
525
Forks
150
Avg merge
2d 15h
Merged PRs (30d)
31

Description

When making an address, it's possbile that the internal key and the script key are actually the same. In this case, the addresses can shrink a bit.

Compare this address: `tarot1qqqsqq3qkq8t3c55q37cptr6jpuf3k8kw6dcvdf9xtf0rt9hdldpu369rersgg9q4l43vhcwcd5gpd5wpw4tmxkeccharf564xvtcv8f5drzqts83urzpg90avt97rkrdzqtdrst427e4kwx9lg6dx4fnz7rp6drgcszupu0pqplmmkdmyfuej`

To this one (only encodes script key): `tarot1qqqsqq3qtv7gupgd4lec2gpzpkcywm33823lqlh0a8utxuz80sa2a2a68p5sgg9q4l43vhcwcd5gpd5wpw4tmxkeccharf564xvtcv8f5drzqts83uyq8lwv4qhv5ul6`

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the address-making and address-encoding entry points, tracing how the internal key and script key are represented. Compare the two sample addresses and confirm the shorter form is produced only when the keys are identical; done means the optimized encoding remains valid.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
blockchain, cryptography
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.