MyCitadel Wallet app for Linux, Windows & MacOS desktop made with GTK+

Overview

MyCitadel Desktop

Bitcoin, Lightning and RGB wallet

Banner

MyCitadel is a wallet for bitcoin, digital assets and bitcoin finance (#BiFi) smart contracts. It is blazingly fast, secure, cross-platform and technically most advanced wallet on the market, being the first wallet allowing taproot multisig and locktime-based spending conditions.

Do a reliable hodling (with inheritance options), corporate/organization, & current accounts - or instant Lightning payments. Work with single- and multisig setups, based on hardware, air-gaped, cold and server-side hot key storage, involving arbitrary complex time-lock scripts (with miniscript) and wide interoperability (because of use of wallet descriptors).

MyCitadel™ is a suite of software, hardware and Internet services focused on digital individual sovereignty and privacy. It includes mobile & desktop cross-platform wallets, web-of-trust contact & identity management app, end-to-end encrypted chat app, command-line tools, wallet runtime library and server-side node, which can be self-hosted, run on MyCitadel Box at home or in private MyCitadel cloud.

The application is written with rust programming language, GTK+ framework and set of bitcoin & lightning rust libraries developed by LNP/BP Standards Association, including client-side-validation, descriptor wallet, BP, LNP and RGB libraries. MyCitadel node also contains embedded LNP & RGB Nodes provided by the Association.

Key features

Support of Taproot multisigs

Taproot-enabled from day one, including multisig- and script-based taproot.

Airgaped, hardware and watch-only wallets

Arbitrary complex spending conditions

Wallet descriptors

Batched payments

Wallet-independent PSBT signer

Installation

First, you need to install prerequisites. This operation should be done only once and OS-specific.

  • For Debian Linux, please do

    $ sudo apt update
    $ sudo apt install -y cargo libssl-dev pkg-config g++ cmake libgtk-3-dev \
      libusb-1.0-0-dev libudev-dev python3-dev
  • For Mac OS, please do

    $ brew install gtk3 libadwaita adwaita-icon-theme libcanberra-gtk-module \
      libcanberra-gtk3-module libusb
  • For Windows, you need to install Visual Studio C tools and MSYSY2-based GTK. To do so please follow instructions at https://www.gtk.org/docs/installations/windows/#using-gtk-from-msys2-packages.

If you plan to work with hardware wallets it is required to get hwi application installed and working (this is an interface to hardware wallets):

$ pip3 install hwi ecdsa hidapi libusb1 mnemonic pbkdf2 pyaes typing-extensions

Compiling from sources

Compilation from sources requires rust language installed. This can be done as described on https://rust-lang.org.

After that you can compile the latest release with this command:

$ cargo install mycitadel-desktop --locked

Finally, run the wallet by typing in

$ mycitadel

License

This application is free software and distributed without any warranty under AGPL-3.0 License.

(C) 2022 Pandora Prime Sarl, Neuchatel, Switzerland.
Some rights are reserved; for details please read the license agreement.

For business, partnership and other enquiries please write to [email protected].

Comments
  • Best way to run the program from the Linux CLI?

    Best way to run the program from the Linux CLI?

    Bug type

    Put x in the boxes below:

    • [x] Installation issue
    • [ ] App crash
    • [ ] Broken UI
    • [ ] Incorrect app behaviour

    Operating system

    • [x] Linux (specify distribution here)
    • [ ] MacOS
    • [ ] Windows

    Problem description

    Please, what is the best way to run the program from the Linux CLI? The guide says, "Finally, download executable from the list below and run it." I have downloaded the file but I can't see how to run it.

    Attachments

    No attachment.

    OS-linux install 
    opened by AusDavo 9
  • Fail to start due app icon mime is wrong

    Fail to start due app icon mime is wrong

    Bug type

    Put x in the boxes below:

    • [ ] Installation issue
    • [x] App crash
    • [ ] Broken UI
    • [ ] Incorrect app behaviour

    Operating system

    • [x] Linux (NixOS 22.05pre362644.1ec61dd4167)
    • [ ] MacOS
    • [ ] Windows

    Problem description

    I followed README for installing from sources and at the final step i get:

    $ mycitadel 
    
    (mycitadel:68385): Gtk-WARNING **: 21:15:24.267: Could not load image '': Image file “/home/user/dev/mycitadel-desktop” contains no data
    
    (mycitadel:68385): Gtk-WARNING **: 21:15:24.289: Could not load a pixbuf from icon theme.
    This may indicate that pixbuf loaders or the mime database could not be found.
    thread 'main' panicked at 'app icon is missed: Error { domain: gdk-pixbuf-error-quark, code: 3, message: "Unrecognized image file format" }', /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/mycitadel-desktop-1.0.0/src/view/launch/widget.rs:57:48
    note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
    

    Rust version:

    $ rustc --version
    rustc 1.62.0-nightly (52ca603da 2022-04-12)
    

    I also tried on stable:

    $ rustc --version
    rustc 1.60.0 (7737e0b5c 2022-04-04)
    

    Also, there are versions of dependencies:

    gdk-pixbuf-2.40.0
    gtk+3-3.24.21
    libpng-apng-1.6.37
    pango-1.45.3
    harfbuzz-2.7.1
    libjpeg-turbo-2.0.4
    libtiff-4.1.0
    

    Attackments

    No attackments!

    OS-linux install 
    opened by NCrashed 3
  • Add nix flake support

    Add nix flake support

    All Rust NixOS contributors (like me) will want it. This is a basic, working setup, using a new and promissing Nix library for building Rust: https://github.com/ipetkov/crane

    OS-linux install 
    opened by dpc 2
  • Linux build missing in 1.1 release

    Linux build missing in 1.1 release

    Operating system

    • [x] Linux (all distros)
    • [ ] MacOS
    • [ ] Windows

    Problem description

    $ ./mycitadel-linux-amd64 
    bash: ./mycitadel-linux-amd64: cannot execute binary file: Exec format error
    
    $ file mycitadel-linux-amd64
    mycitadel-linux-amd64: Mach-O 64-bit x86_64 executable, flags:<NOUNDEFS|DYLDLINK|TWOLEVEL|PIE|HAS_TLV_DESCRIPTORS>
    

    Looks like there is Mac binary uploaded instead of Linux binary

    install 
    opened by meehow 2
  • Signer info does not persist

    Signer info does not persist

    Bug type

    Put x in the boxes below:

    • [ ] Installation issue
    • [ ] App crash
    • [ ] Broken UI
    • [x] Incorrect app behaviour

    Operating system

    • [x] Linux (Pop!_OS 22.04 LTS)
    • [ ] MacOS
    • [ ] Windows

    Problem description

    Changes to signer information (for example changing m/0h/0h to m/84h/0h/0h) do not persist when a different signer is selected.

    How to reproduce:

    1. Make a new wallet
    2. Add 2 xpub signers
    3. Select first signer from signers tab
    4. Enter a name (xpub1) in the name field
    5. Select the second signer (xpub1 name is correctly shown in signer summary table at top)
    6. Enter name (xpub2) in the name field
    7. Click on the first signer
    8. The name field is blank - This is unexpected
    9. Change the Origin to m/84h/0h/0h and click anywhere on screen
    10. Name of the first signer in list is made blank
    C-bug 
    opened by orangesurf 2
  • Add small comments to help reading the code

    Add small comments to help reading the code

    This isn't much, but since I already wrote it, here it goes, along with some feedback.

    Initially I got the application to work, prepared the #41 to be able to build and read/edit the code. I am able to build and run it just fine. Takes a while to get it to compile&link, maybe it's worth exploring changing linker to lld in .cargo/config or something.

    Initially I had some problems understanding the exact flow of initialization, since I'm not familiar with relm. Hence the comments in the PR. After I figured it out things got somewhat easier. Relm's UI model with views, models and messages seems quite nice.

    I really like the code. It's very readable and well structured. The only thing I miss is doc-comments at least on every important struct. Especially on UI things. Without comments it's not exactly easy to figure out from the name which file is which UI element, especially since I barely played with the application yet.

    The message naming seems inconsistent. Some are verbs, some nouns. I would make these names a bit longer (when it makes sense) and/or add comments s ince they are central to how things works. Also having a doc-comment gives LSP users a documentation on hover, which help disambiguate all these Comonents and Msg which are named the same but in different modules. Example: Recent. I really need go to the app and try it out, because I can't tell from the name and even the handler. Which is not the end of the world, but could be a bit easier.

    That's all I have for now. I will keep lurking at this project, and maybe even try to nab at contributing. Finally some nice desktop wallet in Rust.

    Thank you for your great work!

    C-documentation 
    opened by dpc 1
  • Test and add an instruction to use `lld` for linking

    Test and add an instruction to use `lld` for linking

    On my machine it makes 8s linking take only 3s (in debug mode), and 30s linking take 25s (in release).

    • Install lld when using nix flakes since it's very easy.
    • Add a template and instruction to use
    opened by dpc 0
  • Add basic nix env to compile the project

    Add basic nix env to compile the project

    Fix #32

    Note that the script is designed only to provide rustup and all system deps into the scope. Usually there are some more scripts that allows to deterministically build whole package, but they are more complex for rust than that I provided in the PR.

    OS-linux install 
    opened by NCrashed 0
  • Pending UI improvements

    Pending UI improvements

    • [x] Move "About" button in launch screen to tabbar
    • [x] Add version info into About screen
    • [x] Add tooltip information to Tor switcher in settings
    • [x] Embed PSBT signers into scroll window
    • [x] Set default template to mainnet and segwit
    • [x] Add ellipsis to xpub values in settings
    UI 
    opened by dr-orlovsky 0
  • Release v1

    Release v1

    Screens

    No | Window | Screen | Complete | Debugged --:| -------- | ------- |:-------:|:----------: 1 | About | | ✅ | ✅ 2 | Launcher | New | ✅ | ✅ 3 | Launcher | Open | ✅ | ✅ 4 | Launcher | Import | n/a | n/a 5 | Settings | Signers | ✅ | ✅ 6 | Settings | Signers / Device | ✅ | ✅ 7 | Settings | Signers / Add xpub | ✅ | ✅ 8 | Settings | Spending conditions | ✅ | ✅ 9 | Settings | Descriptor | ✅ | ✅ 10 | Settings | Network | ✅ | ✅ 11 | Wallet | Generic | ✅ | ✅ 12 | Wallet | History | ✅ | ✅ 13 | Wallet | Coins | ✅ | ✅ 14 | Wallet | Addresses | ✅ | ✅ 15 | Wallet | Invoice | ✅ | ✅ 16 | Payment | | ✅ | ✅ 17 | PSBT | Generic | ✅ | ✅ 18 | PSBT | Sign | ✅ | ✅

    Business Logic

    No | Funcionality | Complete | Debugged --:| -------- |:-------:|:----------: 1 | Wallet file save/open | ✅ | ✅ 2 | Wallet templates | ✅ | ✅ 3 | Electrum server connectivity management | ✅ | ✅ 4 | Wallet electrum sync | ✅ | ✅ 6 | Hardware signers discovery | ✅ | ✅ 7 | Hardware signers signatures | ✅ | ✅ 8 | Spending conditions & descriptor construction | ✅ | ✅ 9 | PSBT construction | ✅ | ✅ 10 | PSBT analysis for signing | ✅ | ✅ 11 | Window management | ✅ | ✅

    Debugging user stories

    Constructing new wallet

    • [x] Devices import mainnet keys even on testnet
    • [x] Mainnet selection does not pass to settings dialog
    • [x] Settings dialog keeps last xpub selection details on new wallet init
    • [x] Invalid child number in key origin
    • [x] Single-sig still allows editing spending conditions (macOS)
    • [x] Import key buttons are not disabled when an xpub present in single-sig
    • [x] Origin editor disabled for imported xpubs
    • [x] Edited key origin does not get into the descriptor
    • [x] Origin fingerprint can't be edited for custom xpubs with depth > 1
    • [x] Imported xpubs are not prefixed with 'm' on origin info
    • [x] Use taproot flag in launcher window is not passed to settings dialog
    • [x] Xpub type is not matched against wallet format in xpub_dlg (tested for Zpub in single-sigs)
    • [x] Same xpub can be added multiple times
    • [x] Multisig wallet (org/corp template) containing many xpub still produces single-sig descriptor
    • [x] Unclear error message for n-of-m multisigs where n>m
    • [x] 1-of-m multisig spending condition is not processed
    • [x] ~~Errors related to xpubs are shown only when the xpub is selected~~ feature, not bug
    • [x] Segwit multisig with two and more spending conditions produces duplicate keys error
    • [x] Adding second condition to taproot multisig crashes the app
    • [x] n-of-m segwit wallets using multi instead of sortedmulti descriptor
    • [x] New multisig templates default importing devices to single-sig schema
    • [x] Signer name for newly added devices is not editable
    • [x] Device name for newly added devices is not displayed in the details section

    Wallet operations

    • [x] Opening wrong files crashes the app
    • [x] Balances in history are not read
    • [x] Last change index is not updated
    • [x] List of addresses do not show change addresses
    • [x] Number of transactions for addresses are multiplied by two
    • [x] Addresses do not show derivation indexes
    • [x] Editing wallet settings show different spending conditions and descriptor
    • [x] Add launcher menu item to hamburger menu

    Payment

    • [x] Selecting fee rate from menu does not update the actual rate
    • [x] Subsatoshi amount incorrectly detected (due to float bug?)
    • [x] Min fee limit is not checked

    Signing psbt

    • [x] Number of required signatures is incorrect
    • [x] Signer master fp is zeroed
    • [x] Signer index starts from 0
    • [x] Account key is not detected
    • [x] Add ".psbt" extension when saving psbt
    • [x] Update window title after saving psbt
    • [x] Rename "Save" into "Save As"
    • [x] Disable "Save" button when there is nothing to save
    • [x] Disable "Broadcast" button after tx broadcasting
    • [x] After signing list of signers sometimes gets duplicated
    • [x] For multiple-input txes number of signers is multiplied
    • [x] Signer names are not preserved
    C-epic 
    opened by dr-orlovsky 0
  • App crashes for time spending conditions

    App crashes for time spending conditions

    Bug type

    Put x in the boxes below:

    • [ ] Installation issue
    • [x] App crash
    • [ ] Broken UI
    • [ ] Incorrect app behaviour

    Operating system

    • [x] Linux (Ubuntu 20.04.4)
    • [ ] MacOS
    • [ ] Windows

    Problem description

    For the following wallets: Custom wallet, Company or organization wallet, Multi-sig using your devices and Hodling wallet,

    When you select "starting from" as a spending condition with a date in the past, the app crashes. E.g. 31.12.2021 will crash, but 01.01.2022 will not (even though both are in the past).

    Attachments

    thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: BoolError { message: "property 'after-year' of type 'Condition' can't be set from given value, it is invalid or out of range", filename: "/home/mch2022/.cargo/registry/src/github.com-1ecc6299db9ec823/glib-0.15.12/src/object.rs", function: "glib::object", line: 3393 }', /home/mch2022/.cargo/registry/src/github.com-1ecc6299db9ec823/glib-0.15.12/src/object.rs:2238:53
    note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
    
    
    C-bug 
    opened by darko-321 1
  • Windows GTK issue

    Windows GTK issue

    Bug type

    Put x in the boxes below:

    • [ x] Installation issue
    • [ ] App crash
    • [ ] Broken UI
    • [ ] Incorrect app behaviour

    Operating system

    • [ ] Linux (specify distribution here)
    • [ ] MacOS
    • [x ] Windows

    Problem description

    I tried installing the 1.0 version, didn't work. I tried again with the 1.1, still doesn't work. "The code execution cannot proceed because gdk_pixbuf-2.0.0.dll was not found. Reinstalling the program may fix this problem."

    Narrator: it didn't

    I was hoping it was early version bugs but figured I'd reach out this time. Let me know if you need more information or know how to install the missing package.

    Attackments

    Please attach related files (wallets, PSBTs) and provide details on the involved addresses and txid, when appropriate.

    PS. Please remove this ^^ Some noob is going to read attatch wallet and upload their seed.

    C-bug OS-windows 
    opened by raymonddurk 5
  • Limit the max input for signatures to the actual numbers of available signatures

    Limit the max input for signatures to the actual numbers of available signatures

    When preparing a new wallet, the max input for the number of signatures allowed in the spending conditions should be the number of signers. This number should change dynamically each time a new signer is added or removed.

    Screenshot from 2022-05-29 18-47-35

    C-bug W-settings 
    opened by rachyandco 1
  • Electrum Import

    Electrum Import

    The first screen has some functionality for importing from other wallets. It would be cool, if Electrum wallets could be imported. This should be really easy by using https://github.com/RCasatta/electrum2descriptors With this library, converting an Electrum wallet file to a pair of descriptors is as easy as: ` let wallet = ElectrumWalletFile::from_file(wallet).unwrap();

    let descriptors = wallet.to_descriptors().unwrap(); `

    opened by ulrichard 1
  • Verification of binaries

    Verification of binaries

    Hi, It would be great if you could post your pubkey fingerprint, or upload your Pubkey?

    I found This Pubkey (asociated to your published protonmail address) in Ubuntu Keyserver:

    Link: https://keyserver.ubuntu.com/pks/lookup?search=orlovsky%40protonmail.ch&fingerprint=on&op=index

    pub dsa2048/fbdea8433ddc1e69fa90c35effc0250947e5c6f7 2020-09-28T15:44:31Z Hash=ffd664a623e312ea9e4ddda13b8ca758

    uid Dr Maxim Orlovsky [email protected] sig sig ffc0250947e5c6f7 2022-05-04T15:35:24Z ____________________ ____________________ [selfsig]

    uid Dr Maxim Orlovsky [email protected] sig sig ffc0250947e5c6f7 2022-05-04T15:35:09Z ____________________ ____________________ [selfsig]

    uid Dr Maxim Orlovsky [email protected] sig sig ffc0250947e5c6f7 2020-09-28T15:52:54Z ____________________ ____________________ [selfsig]

    uid Dr Maxim Orlovsky [email protected] sig sig ffc0250947e5c6f7 2020-09-28T15:51:47Z ____________________ ____________________ [selfsig]

    uid Dr Maxim Orlovsky [email protected] sig sig ffc0250947e5c6f7 2020-09-28T15:44:31Z ____________________ ____________________ [selfsig]

    Finally, is it possible if you could also upload a file with the hashes of the binaries, and a signature of the whole message please?

    Thanks.

    install 
    opened by felipebrunet 3
Releases(v1.1.0)
  • v1.1.0(May 6, 2022)

    Not even a week has passed since our first release -- and a new update with new features is shipped. In version 1.1 we have added highly requested ability to sign without hardware wallets, such that it will be possible to play with Taproot script spending before hardware wallets started to support them.

    You requested -- we have delivered:

    Screen Shot 2022-05-06 at 19 46 55

    To use non-hardware signers just create a read-only xpub in a wallet and use "sign with xpriv" feature from the screenshot above when signing PSBT.

    What's Changed

    • Ability to sign PSBTs with xpriv
    • Selecting network to publish PSBT
    • Add basic nix env to compile the project by @NCrashed in https://github.com/mycitadel/mycitadel-desktop/pull/36
    • Fixed bug with calendar month selection
    • Fixed bug with unsaved signer name under certain conditions

    New Contributors

    • @NCrashed made their first contribution in https://github.com/mycitadel/mycitadel-desktop/pull/36

    Full Changelog: https://github.com/mycitadel/mycitadel-desktop/compare/v1.0.0...v1.1.0

    Source code(tar.gz)
    Source code(zip)
    mycitadel-linux-amd64(15.97 MB)
    mycitadel-linux-amd64.asc(7.81 MB)
    mycitadel-macos-amd64(10.54 MB)
    mycitadel-macos-amd64.asc(5.96 MB)
    mycitadel-win64-amd64.exe(8.72 MB)
    mycitadel-win64-amd64.exe.asc(5.24 MB)
  • v1.0.0(May 2, 2022)

    Do a reliable hodling (with inheritance options), corporate/organization, & current accounts - or instant Lightning payments. Work with single- and multisig setups, based on hardware, air-gaped, cold and server-side hot key storage, involving arbitrary complex time-lock scripts (with miniscript) and wide interoperability (because of use of wallet descriptors).

    Release description

    This is the initial release of the wallet. It supports:

    • Hardware signing devices (tested with Ledger Nano X, Ledger Nano S, BitBox2)
    • Multisigs and single-sig wallets
    • Taproot, segwit, nested segwit and legacy addresses
    • Taproot script spendings
    • Complex timelock spending conditions with variable multisigs
    • Signing arbitrary PSBTs with hardware signers

    Stability

    The wallet was tested with:

    • single- and multi-sigs (including 1-of-4, 3-of-6, 2-of-4)
    • taproot and segwit descriptors
    • BitBox2 and Ledger Nano X
    • on Debian Linux, Ubuntu and MacOS on AMD64 architecture

    In these environments 10+ transactions were made with multiple inputs and outputs with total transferred value grossing $100k+ over the mainnet. While no funds were lost the software should be still considered experimental and not used for storing funds you are not ready to loose.

    Key features

    Support of Taproot multisigs

    Taproot-enabled from day one, including multisig- and script-based taproot.

    Airgaped, hardware and watch-only wallets

    Arbitrary complex spending conditions

    Wallet descriptors

    Batched payments

    Wallet-independent PSBT signer

    Installation

    First, you need to install prerequisites. This operation should be done only once and OS-specific.

    • For Debian Linux, please do

      $ sudo apt update
      $ sudo apt install -y cargo libssl-dev pkg-config g++ cmake libgtk-3-dev \
        libusb-1.0-0-dev libudev-dev python3-dev
      
    • For Mac OS, please do

      $ brew install gtk3 libadwaita adwaita-icon-theme libcanberra-gtk-module \
        libcanberra-gtk3-module libusb
      
    • For Windows, you need to install Visual Studio C tools and MSYSY2-based GTK. To do so please follow instructions at https://www.gtk.org/docs/installations/windows/#using-gtk-from-msys2-packages.

    If you plan to work with hardware wallets it is required to get hwi application installed and working (this is an interface to hardware wallets):

    $ pip3 install hwi ecdsa hidapi libusb1 mnemonic pbkdf2 pyaes typing-extensions
    

    Finally, download executable from the list below and run it.

    Source code(tar.gz)
    Source code(zip)
    mycitadel-linux-amd64(15.42 MB)
    mycitadel-linux-amd64.asc(228 bytes)
    mycitadel-macos-amd64(10.36 MB)
    mycitadel-macos-amd64.asc(228 bytes)
    mycitadel.exe(8.64 MB)
Owner
My Citadel
Ultimate digital sovereignty
My Citadel
Nostr Vanity Address Generator (Windows, Linux and macOS)

Nostr Vanity Address Generator CLI tool to generate vanity addresses for Nostr Usage Download the latest release built by GitHub CI from the releases

Chawye Hsu 7 Mar 1, 2023
An open source desktop wallet for nano and banano with end-to-end encrypted, on chain messaging using the dagchat protocol.

An open source wallet with end-to-end encrypted, on chain messaging for nano and banano using the dagchat protocol.

derfarctor 22 Nov 6, 2022
Open-source tool to enforce privacy & security best-practices on Windows and macOS, because privacy is sexy 🍑🍆

privacy-sexy Open-source tool to enforce privacy & security best-practices on Windows and MacOs, because privacy is sexy ?? ?? privacy-sexy is a data-

Subconscious Compute 3 Oct 20, 2022
VVVVVV autosplitter for macOS and Linux

Vitellary Vitellary is a work-in-progress autosplitter for VVVVVV v2.3.6 on macOS and Linux systems. More notes here soon when it’s done. Thanks / See

iliana etaoin 5 Mar 6, 2023
The Mullvad VPN client app for desktop and mobile

Mullvad VPN desktop and mobile app Welcome to the Mullvad VPN client app. This repository contains all the source code for the desktop and mobile vers

Mullvad VPN 3k Jan 2, 2023
HD wallet BIP-32 related key derivation utilities.

HDWallet Docs HD wallet(BIP-32) key derivation utilities. This crate is build upon secp256k1 crate, this crate only provides BIP-32 related features,

jjy 23 Nov 27, 2022
⋰·⋰ Feeless is a Nano cryptocurrency node, wallet, tools, and Rust crate.

⋰·⋰ Feeless What is Feeless? Feeless is a Nano cryptocurrency node, wallet, tools, and Rust crate. This is not the official project for Nano, only an

null 127 Dec 5, 2022
Core Rust-C FFI for Stackmate Wallet.

STACKMATE-CORE A Rust-C FFI library exposing composite functionality from rust-bitcoin & bdk; to create cross-platform descriptor wallets. Currently u

Vishal Menon 5 May 31, 2022
A wallet library for Elements / Liquid written in Rust!

EDK Elements Dev Kit A modern, lightweight, descriptor-based wallet library for Elements / Liquid written in Rust! Inspired by BDK for Elements & Liqu

luca vaccaro 11 Dec 11, 2021
Open source Rust implementation of the Witnet decentralized oracle protocol, including full node and wallet backend 👁️🦀

witnet-rust is an open source implementation of the Witnet Decentralized Oracle Network protocol written in Rust. Components witnet-rust implements ma

The Witnet Project 155 Nov 21, 2022
Vectis - Smart Contract Wallet

A smart contract wallet project to add functionality for users of DApps to manage their keys by allowing for recovery and account freeze, whilst preserving user control, and enabling relayer capability for gas provisioning

Nymlab 27 Dec 29, 2022
Complete Ethereum and Celo wallet implementation and utilities in Rust

ethers.rs Complete Ethereum and Celo wallet implementation and utilities in Rust Documentation Extensive documentation and examples are available here

Georgios Konstantopoulos 1.5k Jan 8, 2023
MevWallet is a smart contract wallet that allows the user to capture MEV from Searchers, or create MEV on purpose.

MevWallet MevWallet is a smart contract wallet that allows the user to capture MEV from Searchers, or create MEV on purpose. This repo contains the so

Blunt Instruments 94 Jan 26, 2023
Minimal Bitcoin wallet intended for teaching rust-bitcoin

Insanely minimal Bitcoin wallet intended for demonstration of Rust Bitcoin ecosystem Absolutely DO NOT use with mainnet funds!!! No privacy - address

Martin Habovštiak 4 May 5, 2023
Modern, lightweight & standard-compliant bitcoin wallet runtime & cli without rust-bitcoin dependencies

Bitcoin protocol command-line wallet & tools Modern, minimalistic & standard-compliant cold wallet from LNP/BP Standards Association. Contributing Con

BP: Bitcoin protocol 3 Jul 31, 2023
Radix Babylon vanity address finder allowing easy import into Radix mobile Wallet.

Rad Vanity address finder for Radix Babylon which you can import directly into your Radix Wallet using QR scanner using Import from a Legacy Wallet fe

Alexander Cyon 6 Nov 13, 2023
Automated Solana tool for quick arbitrage, customizable, with real-time data and wallet integration. Trade responsibly.

Solana Arbitrage Trading Tool The Solana Arbitrage Trading Tool is an automated solution crafted to spot and capitalize on arbitrage opportunities wit

null 43 Mar 12, 2024
🧩Creating a blockchain wallet and integrating a couple of cryptographic algorithms to securely save the secrets.🧩

Rust Library For Cryptocurrency Wallet Folder Structure src : contains the source code of the library examples : contains some examples of the library

rstkey 3 Aug 12, 2024
An API and test-app that exposes zcash functionality for app consumption

Zingolib This repo provides both a library for zingoproxyclient and zingo-mobile, as well as an included cli application to interact with zcashd via l

ZingoLabs 5 Dec 15, 2022