standardsats / valet

Bitcoin + Lightning wallet for Android
https://standardsats.github.io
Apache License 2.0
17 stars 2 forks source link

Valet is a fork of Simple Bitcoin Wallet (aka SBW).

As formerly the original, it uses an IMMORTAN library that allows extensive Lightning Network support in addition to non-custodial Bitcoin wallet features in Android.

As much as SBW, it is fully autonomous and does not rely on any kind of centralized service (such as Google services, routing servers, special LSP nodes etc). The destinctive feature of Valet as opposed to the original SBW is Fiat Channels support that replaces original Hosted Channels solution and allows users to have "Hosted" Channels capacities tied to value of some other assets for example US Dollar or Euro. This is technically achieved by assigning a special "ticker" to each channel and adding satoshis-denominated "rate" into fiat channel state (more...).

Get it on Google Play

Valet project Roadmap.

Building from source

git clone https://github.com/standardsats/valet.git
cd valet
git checkout 4.4.4
podman build -t valet .
podman run -v $PWD:/app/valet:z valet

Signing with your self-signed certificate

Install Android SDK, create a keystore.jks using keytool.

$ <Android SDK dir>/build-tools/<version>/zipalign -v 4 app/build/outputs/apk/release/Valet-4.4.4.apk app/build/outputs/apk/release/Valet-4.4.4-aligned.apk

$ <Android SDK dir>/build-tools/<version>/apksigner sign --ks <path to keystore.jks> --ks-key-alias <signing key alias> --v1-signing-enabled true --v2-signing-enabled true app/build/outputs/apk/release/Valet-4.4.4-aligned.apk

Verification with apksigner

$ '<Android SDK dir>/build-tools/<version>/apksigner' verify --print-certs --verbose Valet-4.4.4.apk

Output should contain the following info:

Verifies
Verified using v1 scheme (JAR signing): true
Verified using v2 scheme (APK Signature Scheme v2): true
Number of signers: 1
Signer #1 certificate DN: CN=Bitcoins wallet developer
Signer #1 certificate SHA-256 digest: dca2c3527ec7f7c0e38c0353278e7a5674cfa6e4b7556510ff05f60073ca338a
Signer #1 certificate SHA-1 digest: 14659e7de5a71f2608bf4a889c0f8d043147e203
Signer #1 certificate MD5 digest: e3102232a4754705c8917710765b9635
Signer #1 key algorithm: RSA
Signer #1 key size (bits): 2048
Signer #1 public key SHA-256 digest: dc97f0f2e34167015914600d8fa748f908d578bcedb79664d010de3c9bdebf13
Signer #1 public key SHA-1 digest: c4400469d5ad807dd9394785f1fa95003588a091
Signer #1 public key MD5 digest: e4e1f847e0cb0a9703dc4f9323fd6d87

Acknowledgements

Original SBW Project couldn't be done without LNBig support and A. Kumaigorodski development efforts.

Donate

There is permanent campaign going on Geyser and Tourniquet for supporting maintenance and development of this project.