{"id":14980126,"url":"https://github.com/demining/wallet-android-google-colab","last_synced_at":"2025-04-12T12:50:47.637Z","repository":{"id":144620993,"uuid":"460980063","full_name":"demining/wallet-android-Google-Colab","owner":"demining","description":"Mycelium Bitcoin Wallet for Android Google Colab","archived":false,"fork":false,"pushed_at":"2022-07-02T00:56:47.000Z","size":41568,"stargazers_count":1,"open_issues_count":0,"forks_count":11,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-26T07:36:05.739Z","etag":null,"topics":["bitcoin","bitcoin-api","bitcoin-cash","bitcoin-payment","bitcoin-price","bitcoin-wallet","bitcoincash","bitcoind","google-colab","google-colab-","google-colab-gpu","google-colab-noteb","google-colab-notebook","google-colab-tutorial","google-colaboratory","google-colabs"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/demining.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-02-18T19:28:16.000Z","updated_at":"2024-08-12T20:20:46.000Z","dependencies_parsed_at":null,"dependency_job_id":"ad8fa421-c96c-4360-a382-475209e3881b","html_url":"https://github.com/demining/wallet-android-Google-Colab","commit_stats":{"total_commits":6541,"total_committers":61,"mean_commits":"107.22950819672131","dds":0.743922947561535,"last_synced_commit":"e59df3e064b6f2a675440854eafef55f4ad91758"},"previous_names":[],"tags_count":223,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/demining%2Fwallet-android-Google-Colab","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/demining%2Fwallet-android-Google-Colab/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/demining%2Fwallet-android-Google-Colab/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/demining%2Fwallet-android-Google-Colab/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/demining","download_url":"https://codeload.github.com/demining/wallet-android-Google-Colab/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248571329,"owners_count":21126516,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bitcoin","bitcoin-api","bitcoin-cash","bitcoin-payment","bitcoin-price","bitcoin-wallet","bitcoincash","bitcoind","google-colab","google-colab-","google-colab-gpu","google-colab-noteb","google-colab-notebook","google-colab-tutorial","google-colaboratory","google-colabs"],"created_at":"2024-09-24T14:01:20.418Z","updated_at":"2025-04-12T12:50:47.613Z","avatar_url":"https://github.com/demining.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"-------------------------\n### Run wallet-android-Google-Colab\n\nhttps://colab.research.google.com/drive/1OShIMVcFZ_khsUIBOIV1lzrqAGo1gfm_?usp=sharing\n\n-------------------------\n\nIn order to receive updates quicker than others, you need to enable beta versions of the software in\n[Google Play](https://play.google.com/apps/testing/com.mycelium.wallet)\n\nAs beta testers, please make sure you have a recent **backup of the masterseed** and all **private keys** inside Mycelium. Beta testers will experience many bugs.\nSo far, restoring the wallet from masterseed has never been necessary, but we offer no guarantees.\n\nBuilding\n========\n\nTo build everything from source, simply checkout the source and build using gradle on the build system you need:\n\n * JDK 1.8\n\nThe project layout is designed to be used with a recent version of Android Studio (currently 4.1.2)\n\n#### Build commands\n\nTo get the source code, type:\n\n    git clone https://github.com/mycelium-com/wallet-android.git\n    cd wallet-android\n    git submodule update --init --recursive\n\nLinux/Mac type:\n\n    ./gradlew clean test mbw::assembleProdnetRelease mbw::assembleBtctestnetRelease\n\nWindows type:\n\n    gradlew.bat clean test mbw::assembleProdnetRelease mbw::assembleBtctestnetRelease\n\n - Voila, look into `mbw/build/outputs/apk/` to see the generated apk.\n   There are versions for both prodnet and testnet.\n\nAlternatively you can install the latest version from the [Play Store](https://play.google.com/store/apps/details?id=com.mycelium.wallet).\n\nIf you cannot access the Play store, you can obtain the apk directly from the Mycelium Bitcoin\nWallet [download page](https://wallet.mycelium.com/contact.html).\n\nApp Download Verification\n-------------------------\n\nAll versions released by Mycelium are signed with the same release keys. If you do not trust the apk\nyou can check that signature with\n[apksigner](https://developer.android.com/studio/command-line/apksigner.html#options-verify):\n\n```\napksigner verify --print-certs --verbose mycelium.apk\n```\n\nThe output should look like:\n\n```\nVerifies\nVerified using v1 scheme (JAR signing): true\nVerified using v2 scheme (APK Signature Scheme v2): true\nVerified using v3 scheme (APK Signature Scheme v3): false\nNumber of signers: 1\nSigner #1 certificate DN: CN=Mycelium Developers, O=Mycelium, L=Vienna, C=AT\nSigner #1 certificate SHA-256 digest: b8e59d4a60b65290efb2716319e50b94e298d7a72c76c2119eb7d8d3afac302e\nSigner #1 certificate SHA-1 digest: be575ec3b3b52e0b2392146cbdb245c91ef5a04f\nSigner #1 certificate MD5 digest: 7aec063675b0206aba3b6175b89abc7d\nSigner #1 key algorithm: RSA\nSigner #1 key size (bits): 2048\nSigner #1 public key SHA-256 digest: 6d9c0cda9dcd3ec5efcdca41243829b1dcf1e9a91c6309bca167807282590a20\nSigner #1 public key SHA-1 digest: b34336038c7ca678285c14aebe78b7d5add90e4c\nSigner #1 public key MD5 digest: a78bdb2b6d074db4b1ff12eb9cddcfa3\nWARNING: ...\n```\n\nDeterministic builds\n====================\n\nTo validate the Mycelium image you obtain from Google Play Store, you can rebuild the Mycelium\nwallet yourself using Docker and compare both images following these steps:\n\n* Get the source as above\n* Create your own Docker image from our simple Dockerfile\n\n        $ docker build . --tag mycelium-wallet\n\n  Check that this step succeeds by listing the available docker images:\n\n        $ docker images | grep mycelium-wallet\n\n* Use disorderfs to eliminate non-determinism caused by file ordering\n\n        $ mkdir /tmp/s\n        $ sudo disorderfs --sort-dirents=yes --reverse-dirents=no --multi-user=yes $PWD /tmp/s\n        $ cd /tmp/s\n\n* Build Mycelium using Docker\n\n        $ docker run --rm --volume $(pwd):/project --workdir /project -it mycelium-wallet bash\n        # yes | /opt/android-sdk/tools/bin/sdkmanager \"build-tools;28.0.3\"\n        # ./gradlew clean :mbw:assProdRel\n            \n  If you see errors about local paths not being found, remove/move away `local.properties`. Run the\n  mycelium-wallet docker with gradle compilation of mbw.\n  As docker\n  might run as a different user, its generated files will also be \"not yours\". Make them yours using\n  `chown` as super user.\n  \n  The app can now be found in `mbw/build/outputs/apk/prodnet/release/mbw-prodnet-release.apk`.\n  \n  As maintainer with release keys you want to run a slightly different command:\n  Add these docker parameters: `--volume 'path/to/keys.properties':/project/keys.properties --volume 'path/to/keystore_mbwProd':/project/keystore_mbwProd --volume 'path/to/keystore_mbwTest':/project/keystore_mbwTest`\n  Build all these targets `:mbw:assBtctRel :mbw:assProdRel :mbw:assBtctDeb :mbw:assProdDeb`\n  and to get an error on missing release keys, add this gradle option `-PenforceReleaseSigning`\n  \n  Note: for those who use Docker Toolbox $(pwd) should be under your home user folder since this is the [only folder that is shared with VM](https://github.com/docker/kitematic/issues/2738).\n\n* Retrieve Google Play Mycelium APK from your phone\n  Gets package path:\n\n        $ adb shell pm path com.mycelium.wallet\n        package:/data/app/com.mycelium.wallet-1/base.apk\n\n  Retrieve file:\n\n        $ adb pull /data/app/com.mycelium.wallet-1/base.apk mycelium-signed.apk\n        \n* Extract content from both apks you want to compare, using [ApkTool](https://ibotpeaches.github.io/Apktool/):\n\n        java -jar ~/path/to/apktool.jar d mbw-prodnet-release.apk\n        java -jar ~/path/to/apktool.jar d mycelium-signed.apk\n\n* Compare signed apk with unsigned locally built apk using a diff tool\n\n        diff --brief --recursive  mbw-prodnet-release/ mycelium-signed/ | grep -v \"META-INF/CERT.RSA\\|META-INF/CERT.SF\\|META-INF/MANIFEST.MF\"\n\n* The expected difference between these files are elements that depend on the signature, that only\n  the project's maintainer can reproduce:\n  \n  * `original/META-INF/CERT.RSA` \n  * `original/META-INF/CERT.SF` \n  * `original/META-INF/MANIFEST.MF`\n\nFeatures\n========\n\nWith the Mycelium Bitcoin Wallet you can send and receive Bitcoins using your mobile phone.\n\n - HD enabled - manage multiple accounts and never reuse addresses ([Bip32](https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki)/[Bip44](https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki) compatible)\n - Masterseed based - make one backup and be safe for ever. ([Bip39](https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki))\n - 100% control over your private keys, they never leave your device unless you export them\n - No block chain download - install and run in seconds\n - Ultra fast connection to the Bitcoin network through our super nodes\n - For enhanced privacy and availability you can connect to our super nodes via a tor-hidden service ( *.onion* address)\n - Watch-only addresses (single or xPub) \u0026 private key (single or xPriv) import for secure cold-storage integration\n - Directly spend from paper wallets (single key, xPriv or master seed)\n - Trezor enabled - directly spend from trezor-secured accounts.\n - [Mycelium Entropy](https://mycelium.com/entropy) compatible Shamir-Secret-Shared 2-out-of-3 keys spending\n - Secure your wallet with a PIN\n - Compatible with other bitcoin services through the `bitcoin:` URI scheme\n\n\nPlease note that bitcoin is still experimental and this app comes with no warranty - while we make sure to adhere to the highest standards of software craftsmanship we can not exclude that the software contains bugs. Please make sure you have backups of your private keys and do not use this for more than you are willing to lose.\n\nThis application's source is published at https://github.com/mycelium-com/wallet\nWe need your feedback. If you have a suggestion or a bug to report [create an issue](https://github.com/mycelium-com/wallet/issues).\n\nMore features:\n - Sources [available for review](https://github.com/mycelium-com/wallet-android)\n - Multiple HD accounts, private keys, external xPub or xPriv accounts\n - Multiple Bitcoin denominations: BTC, mBTC, bits and uBTC\n - View your balance in multiple fiat currencies: USD, AUD, CAD, CHF, CNY, DKK, EUR, GBP, HKD, JPY, NZD, PLN, RUB, SEK, SGD, THB, and many more\n - Send and receive by specifying an amount in fiat and switch between fiat and BTC while entering the amount\n - Address book for commonly used addresses\n - Transaction history with detailed information and local stored comments\n - Import private keys using SIPA (the ones beginning with a 5) and mini private key format (Casascius private keys) from QR-codes or clipboard\n - Export private-, xPub- or xPriv-keys as QR-codes, on clipboard or share with other applications\n - Share your bitcoin address using Twitter, Facebook, email and more.\n - Integrated QR-code scanner\n - Client side load balancing between three 100% redundant server nodes located in different data centers.\n - Sign Messages using your private keys (compatible with bitcoin-qt)\n\nAuthors\n=======\n - Jan Møller\n - [Andreas Petersson](https://github.com/apetersson)\n - [Daniel Weigl](https://github.com/DanielWeigl)\n - [Jan Dreske](https://github.com/jandreske)\n - Dmitry Murashchik\n - Constantin Vennekel\n - [Leo Wandersleb](https://github.com/Giszmo)\n - [Daniel Krawisz](https://github.com/DanielKrawisz)\n - [Jerome Rousselot](https://github.com/jeromerousselot)\n - [Nelson Melina](https://github.com/DaLN)\n - [Elvis Kurtnebiev](https://github.com/xElvis89x)\n - [Sergey Dolgopolov](https://github.com/itserg)\n - [Sergey Lappo](https://github.com/sergeylappo)\n - Alexander Makarov\n - [Nadia Poletova](https://github.com/poletova-n)\n - [Kristina Tezieva](https://github.com/agneslovelace)\n - [Nuru Nabiyev](https://github.com/NuruNabiyev)\n \n\nCredits\n=======\nThanks to all collaborators who provided us with code or helped us with integrations!\nJust to name a few:\n\n - [Nicolas Bacca from Ledger](https://github.com/btchip)\n - Sipa, Marek and others from Trezor\n - Jani and Aleš from Cashila\n - [Kalle Rosenbaum, Bip120/121](https://github.com/kallerosenbaum)\n - David and Alex from Glidera\n - [Wiz](https://twitter.com/wiz) for helping us with KeepKey\n - Tom Bitton and Asa Zaidman from Simplex\n - (if you think you should be mentioned here, just notify us)\n\nThanks to Jethro for tirelessly testing the app during beta development.\n\nThanks to our numerous volunteer translators who provide high-quality translations in many languages. Your name should be listed here, please contact me so I know you want to be included.\n\nThanks to Johannes Zweng for his testing and providing pull requests for fixes.\n\nThanks to all beta testers to provide early feedback.\n\n----\n\n|  | Donation Address |\n| --- | --- |\n| ♥ __BTC__ | 1Lw2kh9WzCActXSGHxyypGLkqQZfxDpw8v |\n| ♥ __ETH__ | 0xaBd66CF90898517573f19184b3297d651f7b90bf |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdemining%2Fwallet-android-google-colab","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdemining%2Fwallet-android-google-colab","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdemining%2Fwallet-android-google-colab/lists"}