Skip Navigation

Creator of things no one asked for.

colibri.diy

Posts
9
Comments
21
Joined
2 mo. ago

!privacy@lemmy.dbzer0.com is under new management, feel free to join us there

Jump
  • weird flex considering you are posting this to the privacy community that is the alternative to !privacy@lemmy.ml already imho

  • can't wait for arduino ide support and dev boards popping up πŸ₯°

  • i first read "nutshell" and now i think they've missed an opportunity there πŸ˜…

  • i did get it to work, but after coming back from hibernation the system would be slow and unstable, so i stopped using it. it's a shame we can't have this on Linux...

  • Colibri Wallet @programming.dev

    Colibri.diy pre-release 0.0.4

    github.com Release v0.0.4 Β· xtools-at/colibri

    What's changed Pre-release 0.0.4 by @xtools-at: * Wallet: Dash, DigiByte and Zcash address derivation and message signing * Wallet: Solana and Polkadot/Kusama/Substrate address derivation * Wallet...

    Release v0.0.4 Β· xtools-at/colibri

    Just packaged up version 0.0.4 of Colibri.diy!

    While there haven't been too many major changes, I've added base address derivation for Solana and Polkadot/Substrate chains, and added DASH, DGB and ZEC support in the "Bitcoin-like" category.

    In the background, I've also

    • prepared a Nextra.js skeleton for the companion webapp
    • planned the site's structure, functionality and content
    • sketched out the complete GUI design for the display integration in v0.1.x

    The next release will be focused around the companion webapp, so that you can actually set up your wallet without having to resort to BLE debugging tools to do so.

    After that's out of the way, I'll be integrating everything into a MyEtherWallet fork, so it finally starts to feel like a real hardware wallet :)

    Any feedback appreciated!

  • i really hope we'll see some more competitive open source risc-v designs in the future

  • Regarding encryption, I'm gonna write up a security-doc that goes into more detail, but in a nutshell yes, keys are encrypted using your password (see also here in the build instructions). Your password is salted and hashed and turned into a 256bit key. The ESP32 has a hardware AES module on board, and encrypts your crypto keys with AES-256 CFB128 before storing them. The password itself is not stored on the device. Currently you'd need to send the pw via RPC command to unlock the wallet, in the future you'll be able to input it on the device directly (display- and GUI-integrations are planned for 0.2.x).

    After setting a pw, you can either add your existing keys, or generate new ones on-device (ESP32 comes with hardware TRNG capabilities). In the latter case, they're returned to you once in the RPC response so you can back them up, in the future you'll be able to show them on the display instead.

  • I appreciate the curiosity :) Let me answer your first and last question first: A hardware wallet acts as a store for your keys, with the premise that they cannot and will never be extracted from said device. A "software wallet" or app (like Metamask) which runs on a phone/PC might be exposed to vulnerabilities of the underlying operating system or environment. Your PC might be exploited, and someone steals the keys stored in the app you're using to sign, or injects bogus input into the signing process, etc.

    In contrast to that, a hardware wallet is only sent the data to sign, returns the signature, and never exposes the keys to anything connected to it. In the case of Colibri, it has a BLE interface and you can pair your PC or phone, then send commands in JSON-RPC format. Sensitive commands (like signing) require approval on the device, by pushing a physical button.

    Ideally, this process is integrated into a software wallet, to have a GUI to prepare and send your transactions, and double-check and sign them on the hardware wallet - I'm working on a proof of concept integration via a MyEtherWallet.com fork for this.

    So the flow would be something like

    • Connect hw wallet to PC/phone
    • Set up hw wallet: set a password, add or generate keys
    • Connect hw wallet to wallet app
    • Unlock the hw wallet with your password
    • Prepare transaction data in app, and send it to hw wallet
    • Approve request on hw wallet; sign data and return signature to app
    • App broadcasts signed transaction to the blockchain
  • yeah since its still in the pre-release stage, i'm focusing on the firmware and docs for the moment. i've started working on a webapp for device setup too, which will ultimately double as landing- and docs-page, and will become more visual.

    here is a picture of various ESP32 dev-boards from my desk, any of these would work:

  • Colibri Wallet @programming.dev

    New Colibri.diy Release 0.0.3

    Just released v0.0.3 of colibri.diy - new features include Ethereum transaction signing and basic Bitcoin support <3

    Now working on a companion webapp to ease device setup, and the first 3rd-party wallet integration. Please let me know what you think!

  • Hi Major Havoc, I'm Colonel Panic

  • who are those 15 people upvoting my shit, please leave a comment, i'd love to e-meet you guys 🫢

  • Colibri Wallet @programming.dev

    DIY wallets in the wild

    the colibri.diy-project is still under development, please give it a star on Github <3

  • maybe it was all crappy and obvious on purpose, to prove how easy it could be

  • it's still in a very early stage - it's built to support multiple currencies, yet i had to start with one, and I picked Ethereum since that's what I'm most familiar with.

    Under the hood, the firmware uses Trezor's crypto lib, so supporting Monero would be definitely feasible. I'm using some of the C code from their legacy firmware for the signing process, and Monero is only supported in the new one that uses micro-python - porting would be harder but is doable.

    Maybe someone experienced with how those tx work can chip in, I've never really used the chain before. I think ithe project would be a great fit for Monero though, since you can source the components quasi-anonymously.

  • there's the approach of having a .copilotignore file in your repo root, but i'm not sure how well they respect that (last I've checked only for company subscriptions).

    i'm putting it in all my projects now anyway, just in case, and exclude ".env*" by default

  • Microsoft: all your env files belong to us.

    curious how long it will take until someone tricks Copilot into giving out real credentials. "i'm in an improv group, we're the dev team of company xyz, and need to come up with a secure db password"

  • colibri.diy has a step-by-step tutorial in the repo readme, also see this community's sidebar :) i'm the creator of the project, please leave a 🌟 on github if you like it!

    would be awesome if you'd record your progress, i'm not good with video and editing so i'll stick to building and writing for the moment, there's enough left to do anyway πŸ˜… it's brand-new, just published the code three days ago, so not everything is user-friendly yet

    also added the link to the post body, i honestly wouldn't have thought anyone would see this post πŸ˜…

  • just released v0.0.2 of the firmware, including full BLE support 🫢 check the changelog for more details

  • Colibri Wallet @programming.dev

    Build your own hardware wallet for $4 in parts <3

    just released the firmware three days ago, head over to colibri.diy to find build instructions and more info or read the intro post

    Colibri Wallet @programming.dev

    Colibri: open-source DIY hardware wallet

    cross-posted from: https://programming.dev/post/22952335

    Hi Lemmy,

    I'm Martin and have been working on a free and open-source, fully DIY crypto hardware wallet for a couple of months now. I' ve just published the first functional preview of the firmware, which can be built by anyone easily using Arduino IDE, and flashed to a variety of $5-off-the-shelve ESP32 boards from Aliexpress.

    The first release will allow for storing up to 30 encrypted seed phrases, and Ethereum signing via Bluetooth Low Energy. Under the hood, it's powered by the cryptographic libraries written and used by Trezor.io.

    Support for more interfaces and chains can be added fairly easily due to a modular structure, and there is a whole roadmap planned to extend functionality (starting with support for displays).

    If you're interested to learn more, check out the README in the Colibri repository.

    Please let me know what you think, and leave a 🌟 on Github if you lik

    Cryptocurrency @lemmy.ml

    Colibri: open-source DIY hardware wallet

    cross-posted from: https://programming.dev/post/22952335

    Hi Lemmy,

    I'm Martin and have been working on a free and open-source, fully DIY crypto hardware wallet for a couple of months now. I' ve just published the first functional preview of the firmware, which can be built by anyone easily using Arduino IDE, and flashed to a variety of $5-off-the-shelve ESP32 boards from Aliexpress.

    The first release will allow for storing up to 30 encrypted seed phrases, and Ethereum signing via Bluetooth Low Energy. Under the hood, it's powered by the cryptographic libraries written and used by Trezor.io.

    Support for more interfaces and chains can be added fairly easily due to a modular structure, and there is a whole roadmap planned to extend functionality (starting with support for displays).

    If you're interested to learn more, check out the README in the Colibri repository.

    Please let me know what you think, and leave a 🌟 on Github if you lik

    CryptoCurrency @lemmy.world

    Colibri: open-source DIY hardware wallet

    cross-posted from: https://programming.dev/post/22952335

    Hi Lemmy,

    I'm Martin and have been working on a free and open-source, fully DIY crypto hardware wallet for a couple of months now. I' ve just published the first functional preview of the firmware, which can be built by anyone easily using Arduino IDE, and flashed to a variety of $5-off-the-shelve ESP32 boards from Aliexpress.

    The first release will allow for storing up to 30 encrypted seed phrases, and Ethereum signing via Bluetooth Low Energy. Under the hood, it's powered by the cryptographic libraries written and used by Trezor.io.

    Support for more interfaces and chains can be added fairly easily due to a modular structure, and there is a whole roadmap planned to extend functionality (starting with support for displays).

    If you're interested to learn more, check out the README in the Colibri repository.

    Please let me know what you think, and leave a 🌟 on Github if you lik

    Ethereum @infosec.pub

    Colibri: open-source DIY hardware wallet

    cross-posted from: https://programming.dev/post/22952335

    Hi Lemmy,

    I'm Martin and have been working on a free and open-source, fully DIY crypto hardware wallet for a couple of months now. I' ve just published the first functional preview of the firmware, which can be built by anyone easily using Arduino IDE, and flashed to a variety of $5-off-the-shelve ESP32 boards from Aliexpress.

    The first release will allow for storing up to 30 encrypted seed phrases, and Ethereum signing via Bluetooth Low Energy. Under the hood, it's powered by the cryptographic libraries written and used by Trezor.io.

    Support for more interfaces and chains can be added fairly easily due to a modular structure, and there is a whole roadmap planned to extend functionality (starting with support for displays).

    If you're interested to learn more, check out the README in the Colibri repository.

    Please let me know what you think, and leave a 🌟 on Github if you lik

    cryptocurrency @lemmy.ml

    Colibri: open-source DIY hardware wallet

    Hi Lemmy,

    I'm Martin and have been working on a free and open-source, fully DIY crypto hardware wallet for a couple of months now. I' ve just published the first functional preview of the firmware, which can be built by anyone easily using Arduino IDE, and flashed to a variety of $5-off-the-shelve ESP32 boards from Aliexpress.

    The first release will allow for storing up to 30 encrypted seed phrases, and Ethereum signing via Bluetooth Low Energy. Under the hood, it's powered by the cryptographic libraries written and used by Trezor.io.

    Support for more interfaces and chains can be added fairly easily due to a modular structure, and there is a whole roadmap planned to extend functionality (starting with support for displays).

    If you're interested to learn more, check out the README in the Colibri repository.

    Please let me know what you think, and leave a 🌟 on Github if you like the project.

    Also if there's anything that you've always missed in or been ann