-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix tests w/ sending outputs as subset of receiving #7
base: silent-payments-bip
Are you sure you want to change the base?
Fix tests w/ sending outputs as subset of receiving #7
Commits on Jul 10, 2023
-
Co-authored-by: RubenSomsen <rsomsen@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 09b3eca - Browse repository at this point
Copy the full SHA 09b3ecaView commit details -
Add footnote for outpoints sorting
Co-authored-by: Vojtěch Strnad <43024885+vostrnad@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 51030f7 - Browse repository at this point
Copy the full SHA 51030f7View commit details -
Mention bech32m character limit
BIP173 defines a 90 char limit, but we need 115. Most implementations already remove this limit as lightning encodings are longer than 90 char and use bech32, but still should be mentioned for wallet implementors.
Configuration menu - View commit details
-
Copy full SHA for ccffd15 - Browse repository at this point
Copy the full SHA ccffd15View commit details -
Add serialization functions from BIP32
This better matches conventions used in other BIPS. It's also likely wallet software already has code for doing these operations if they support BIP32.
Configuration menu - View commit details
-
Copy full SHA for 2a0df2c - Browse repository at this point
Copy the full SHA 2a0df2cView commit details -
Remove version from derivation path
Remove version since upgrades to silent payments not require regenerating silent payment keys. If there is a future upgrade that would require regenerating keys, then it should have a new BIP number.
Configuration menu - View commit details
-
Copy full SHA for f945e8a - Browse repository at this point
Copy the full SHA f945e8aView commit details -
Change address format to use 33-byte keys
Instead of 32-byte x-only keys, use compressed public keys for the silent payments address. This is to avoid parity mismatches, especially in the case of adding labels to the spend public key, which will cause the sign of the y point to flip between even and odd. Without the extra byte, we would need the sender and receiver to constantly negate the public and private keys at each step, which adds complexity and computational expense.
Configuration menu - View commit details
-
Copy full SHA for 28d9b27 - Browse repository at this point
Copy the full SHA 28d9b27View commit details -
Add a change section to the specification
If Alice's wallet supports receiving silent payments, they can use the silent payment protocol to create change outputs for themselves. Mention this explicitly in the specification for sending.
Configuration menu - View commit details
-
Copy full SHA for 67c27d0 - Browse repository at this point
Copy the full SHA 67c27d0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 668fdfc - Browse repository at this point
Copy the full SHA 668fdfcView commit details -
Add test vectors and reference implementation
Include a modified copy of bech32m (removes the 90 char limit) and a copy of the python secp256k1 implementation from the Bitcoin Core test framework
Configuration menu - View commit details
-
Copy full SHA for 174ba63 - Browse repository at this point
Copy the full SHA 174ba63View commit details -
Add step for negating taproot private keys
In order to maintain parity, negate the private keys for taproot outputs before performing ECDH. This ensures the receiver will arrive at the same result without needing to check both the even and odd y points for taproot x-only public keys
Configuration menu - View commit details
-
Copy full SHA for 29d7b59 - Browse repository at this point
Copy the full SHA 29d7b59View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3530d98 - Browse repository at this point
Copy the full SHA 3530d98View commit details -
Detail backwards compatible upgrades vs backwards incompatible upgrades
Configuration menu - View commit details
-
Copy full SHA for f3a1610 - Browse repository at this point
Copy the full SHA f3a1610View commit details -
Configuration menu - View commit details
-
Copy full SHA for cfe0771 - Browse repository at this point
Copy the full SHA cfe0771View commit details
Commits on Jul 23, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 0d42acd - Browse repository at this point
Copy the full SHA 0d42acdView commit details