https://github.com/casey/warpwallet-rs
https://github.com/casey/warpwallet-rs
Last synced: 6 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/casey/warpwallet-rs
- Owner: casey
- License: other
- Created: 2017-02-14T07:11:00.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2017-02-14T07:11:50.000Z (over 9 years ago)
- Last Synced: 2025-02-14T01:18:26.981Z (over 1 year ago)
- Language: Rust
- Size: 26.4 KB
- Stars: 2
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
Awesome Lists containing this project
README
warpwallet
==========
[](https://crates.io/crates/warpwallet)
[](https://travis-ci.org/casey/warpwallet)
A rust implementation of [WarpWallet](https://keybase.io/warp).
Written by someone who barely understands how cryptography works, so you probably shouldn't use it.
The algorithm is:
```
s1 = scrypt(key=(passphrase||0x1), salt=(salt||0x1), N=2^18, r=8, p=1, dkLen=32)
s2 = pbkdf2(key=(passphrase||0x2), salt=(salt||0x2), c=2^16, dkLen=32, prf=HMAC_SHA256)
keypair = generate_bitcoin_keypair(s1 ⊕ s2)
```
todo
----
- actually derive keys
- print good messages for user facing errors
- test against provided test vectors
- derive a hd wallet mnemonic
- should i make it slower? --incompatible mode?
- derive with the same codepath as test
- end to end test against spec