Author

Topic: DIY Bowser Hardware Wallet (Read 554 times)

legendary
Activity: 2212
Merit: 7064
Cashback 15%
January 03, 2023, 09:49:04 AM
#27
I think the Bowser wallet is a neat project, but should only store small amounts of bitcoin, if any. Have you tried flashing the AWS one? I don't think it works
No I didn't and sadly I don't have AWS M5Stack device to test it out.
Bowser is just a fun little project and there are much better DIY devices that exist today, like SeedSigner, Krux and other stuff made with RapsberryPi Zero devices and Trezor code.
I am following all open source hardware wallets and signing devices that exist in one of my topic, so anything new and interesting that comes out will be posted there:
https://bitcointalksearch.org/topic/list-open-source-hardware-wallets-5288971
newbie
Activity: 11
Merit: 2
January 02, 2023, 11:17:55 PM
#26
I just ordered one and I'll keep yall updated on how the build process goes.  Cool

I hope you opted for M5Stack Core2 ESP32 AWS Development Kit with built in Secure Element.
It costs couple of dollars more than regular M5Stack but it is superior in many ways, with built in encrypted chip ATECC608 that makes it safer, touch screen, almost five stronger and better battery, longer type-C USB cable, and size is almost the same as basic M5STack.
Only problem is they run out of stock very quickly so you need to be fast when ordering Smiley

I think the Bowser wallet is a neat project, but should only store small amounts of bitcoin, if any. Have you tried flashing the AWS one? I don't think it works



That's cool! I wanted to get an M5Stack anyway to play around with. A question about the secure chip: does the firmware actually recognize it is running on a M5 with secure chip & use it or is it not used? I mean, if it's not implemented, then having it on the PCB won't help.. Grin
M5Stacks are a great little devices and sometimes you can find them on discount deals for very cheap.
Secure element is used for sure and it should be recognized, if you watch the video on their product page you will see that it is used for encryption.
Interesting; I had no time yet, just read the README and it says:
Quote from:
the mnemonic is stored in an accessible location on the device
...
the wallet details are only pseudo-secure on the device

Maybe it's old info from before they supported this secure element, or maybe there's another reason that somehow makes the seed accessible, even though it's secured on a secure chip. A clarification would be helpful. Grin

IIRC the code for the Bowser wallet doesn't support the AWS M5stack device - it only supports the M5stack Basic Core+Fire devices

[moderator's note: consecutive posts merged]
hero member
Activity: 882
Merit: 5814
not your keys, not your coins!
February 21, 2022, 01:10:20 PM
#25
That's cool! I wanted to get an M5Stack anyway to play around with. A question about the secure chip: does the firmware actually recognize it is running on a M5 with secure chip & use it or is it not used? I mean, if it's not implemented, then having it on the PCB won't help.. Grin
M5Stacks are a great little devices and sometimes you can find them on discount deals for very cheap.
Secure element is used for sure and it should be recognized, if you watch the video on their product page you will see that it is used for encryption.
Interesting; I had no time yet, just read the README and it says:
Quote from:
the mnemonic is stored in an accessible location on the device
...
the wallet details are only pseudo-secure on the device

Maybe it's old info from before they supported this secure element, or maybe there's another reason that somehow makes the seed accessible, even though it's secured on a secure chip. A clarification would be helpful. Grin
legendary
Activity: 2212
Merit: 7064
Cashback 15%
February 19, 2022, 09:28:11 AM
#24
That's cool! I wanted to get an M5Stack anyway to play around with. A question about the secure chip: does the firmware actually recognize it is running on a M5 with secure chip & use it or is it not used? I mean, if it's not implemented, then having it on the PCB won't help.. Grin
M5Stacks are a great little devices and sometimes you can find them on discount deals for very cheap.
Secure element is used for sure and it should be recognized, if you watch the video on their product page you will see that it is used for encryption.
I never ordered this exact model so I didn't test it myself how it works in real life or as a hardware wallet, but you can contact their support team for more information.
I know that creator of Bowser wallet and LNURLPoS (arcbtc), is very active so you can also ask him if he can help you with this.




hero member
Activity: 882
Merit: 5814
not your keys, not your coins!
February 19, 2022, 07:59:05 AM
#23

https://m5stack.com/collections/m5-core/products/m5stack-core2-esp32-iot-development-kit-for-aws-iot-edukit?variant=37687799251116

Getting back on this topic with one small update as I recently found a similar M5Stack Core2 ESP32 AWS Development Kit that has built in Secure Element Microchip ATECC608A Trust&GO, and that is same secure chip used in other hardware wallets like ColdCard mk3, Bitbox02 and Passport.
This device also has a touch screen, card slot, built-in 500mAh Lithium and it can be found for nice price around $40
That's cool! I wanted to get an M5Stack anyway to play around with. A question about the secure chip: does the firmware actually recognize it is running on a M5 with secure chip & use it or is it not used? I mean, if it's not implemented, then having it on the PCB won't help.. Grin
newbie
Activity: 21
Merit: 34
February 17, 2022, 05:12:56 PM
#22
That's a nice game wallet !  Grin
jr. member
Activity: 36
Merit: 35
February 04, 2021, 01:31:01 PM
#21
I hope you opted for M5Stack Core2 ESP32 AWS Development Kit with built in Secure Element.
It costs couple of dollars more than regular M5Stack but it is superior in many ways, with built in encrypted chip ATECC608 that makes it safer, touch screen, almost five stronger and better battery, longer type-C USB cable, and size is almost the same as basic M5STack.
Only problem is they run out of stock very quickly so you need to be fast when ordering Smiley
Welp. Time to cancel that order  Embarrassed . Thanks for the heads up though, Ill just wait till they become on the website that you linked instead of settling for any m5Stack. Thanks again.  Smiley
legendary
Activity: 2212
Merit: 7064
Cashback 15%
February 03, 2021, 05:21:15 AM
#20
I just ordered one and I'll keep yall updated on how the build process goes.  Cool

I hope you opted for M5Stack Core2 ESP32 AWS Development Kit with built in Secure Element.
It costs couple of dollars more than regular M5Stack but it is superior in many ways, with built in encrypted chip ATECC608 that makes it safer, touch screen, almost five stronger and better battery, longer type-C USB cable, and size is almost the same as basic M5STack.
Only problem is they run out of stock very quickly so you need to be fast when ordering Smiley
jr. member
Activity: 36
Merit: 35
February 02, 2021, 02:58:55 PM
#19
I just ordered one and I'll keep yall updated on how the build process goes.  Cool
legendary
Activity: 2212
Merit: 7064
Cashback 15%
December 29, 2020, 01:08:55 PM
#18

https://m5stack.com/collections/m5-core/products/m5stack-core2-esp32-iot-development-kit-for-aws-iot-edukit?variant=37687799251116

Getting back on this topic with one small update as I recently found a similar M5Stack Core2 ESP32 AWS Development Kit that has built in Secure Element Microchip ATECC608A Trust&GO, and that is same secure chip used in other hardware wallets like ColdCard mk3, Bitbox02 and Passport.
This device also has a touch screen, card slot, built-in 500mAh Lithium and it can be found for nice price around $40
legendary
Activity: 2954
Merit: 4158
November 22, 2020, 01:32:44 PM
#17
I am not aware of any case/vulnerability where the device leaks customer information. What kind of information are you referring to?
The website definitely is horrible, just as most of the websites on the internet. Browsing without ad blocker and a javascript blocker is almost a no-go nowadays.
I think he's referring to the case where someone leaked Ledger's database with the customer's information.

Let's stop with the name-calling and the arguments on the terminology shall we? Hardware wallets are synonymous with the devices specifically used to store Bitcoin priv keys securely so I guess it's reasonable to be more careful with the naming. I don't think the disputes on this would be solved through this anyways.  Appreciate that OP did put a disclaimer at the bottom of the topic.

IMO, it can be considered a HW wallet in a sense since it does provide some level of security against specific attacks and it is specially built for the purpose of storing Bitcoins but other than the risk of side channel attacks and the obvious limitations of DIY, I think it's still fairly safe for newbies to use. They should have some level of competency with Bitcoin if they're planning to embark on such a project. It's a pretty neat project, love to have a closer look at that though, will have to do so when I have some free time next week or so.
legendary
Activity: 1624
Merit: 2481
November 22, 2020, 12:57:38 PM
#16
Again I say - paper is not a hardware, even kids know this, and those definitions are freely available on internet, and I didn't write any of them.

Then, why do you use them if they don't make any sense?
Either way.. i guess that's not that relevant.


I also don't think ledger is secure hardware wallet also, it is closed source and it is proven unsafe device leaking customer information, with website full of ads and trackers, and I have proof for that.

I am not aware of any case/vulnerability where the device leaks customer information. What kind of information are you referring to?
The website definitely is horrible, just as most of the websites on the internet. Browsing without ad blocker and a javascript blocker is almost a no-go nowadays.
legendary
Activity: 2212
Merit: 7064
Cashback 15%
November 22, 2020, 10:30:43 AM
#15
And one of your "definitions" would mean a paper wallet also is a hardware wallet.

Again I say - paper is not a hardware, even kids know this, and those definitions are freely available on internet, and I didn't write any of them.

I also don't think ledger is secure hardware wallet also, it is closed source and it is proven unsafe device leaking customer information, with website full of ads and trackers, and I have proof for that.

Thank you for your feedback.
legendary
Activity: 1624
Merit: 2481
November 22, 2020, 08:31:58 AM
#14
Don't get me wrong, a hardware wallet is a really nice combo of security and ease of use, but is it the safest way to store your coins? I think not.

Definitely not, i agree with you.

An air-gapped cold wallet always is more secure than a hardware wallet. Given that no blunders are made.
The attack surface of a hardware wallet used with an online PC is always higher.

A hardware wallet also isn't mean for most secure storage. It should be seen as a convenient way to store coins securely. Like a trade-off between security and usability.
These are a good alternative for people either 1) not techy enough to properly generate and maintain a cold storage or 2) don't have time / want more easy of use when using BTC.
legendary
Activity: 1484
Merit: 1355
November 21, 2020, 03:39:44 PM
#13
...
Either way, this project simply is an air-gapped wallet on a small device. No hardware security. Take it or leave it.

In part I agree with you. But also because I have some background in corporate information security, I think a properly airgapped and encrypted cold storage device is safer than any hardware wallet. I'm not talking explicitly about this device here (I haven't had a chance to explore all of its technical data in detail yet) but in general. Don't get me wrong, a hardware wallet is a really nice combo of security and ease of use, but is it the safest way to store your coins? I think not.
legendary
Activity: 1624
Merit: 2481
November 21, 2020, 11:26:16 AM
#12
I think we're stuck with semantics here. How do you define what the 'hardware wallet' is? Does every hardware wallet have a secure element? I don't think so.

Each hardware wallet does have hardware security to protect private keys.
Some have a secure element, others a crypto co-processor. But some hardware security is required.



In my humble opinion, this DIY project can be described as a hardware which can be used as a wallet.

That's absolutely true.
But this also applies to my online mobile wallet. It is a hardware used as a wallet.

Obviously, it is all the time online. But even if it would stay completely air-gapped, it would be an air-gapped (cold) wallet, but still not a hardware wallet even tho it "is hardware" (every software runs on hardware).



I showed you multiple definitions of Hardware Wallets [...]

Yes.
And one of your "definitions" would mean a paper wallet also is a hardware wallet.
And another of your "definitions" would automatically deem that project to not be a hardware wallet. Both of them are wrong, to say at least.

Either way, this project simply is an air-gapped wallet on a small device. No hardware security. Take it or leave it.

I appreciate that you try to find new forms of storage, but you obviously do not possess the technical competence to estimate how secure a given storage method is.
legendary
Activity: 2212
Merit: 7064
Cashback 15%
November 21, 2020, 07:41:33 AM
#11
But this, by definition, is not a hardware wallet.

I showed you multiple definitions of Hardware Wallets and there is not a single word about secure element to define Hardware Wallet, but you can write your own or propose change on Wikipedia and see how it goes.
None of the first hardware wallet prototypes had any secure elements, and you should think how secure exactly are those closed source secure elements with closed source wallets.
If some random person say shit is safe.... it is still shit.

I think we're stuck with semantics here. How do you define what the 'hardware wallet' is? Does every hardware wallet have a secure element? I don't think so.
In my humble opinion, this DIY project can be described as a hardware which can be used as a wallet. Is it a safer than the real hardware wallet? Of course it's not.
Yeah, I think spongebob just needs to write something, and he is very stubborn bur smart person so he created his own definition of hardware wallet  Cheesy

I even said myself that DIY Bowser Hardware Wallet is less secure than regular hardware wallets, and it is not for everyone.
legendary
Activity: 1484
Merit: 1355
November 21, 2020, 07:36:35 AM
#10
This project simply is an offline storage on a small dedicated device. One could achieve the same on an old mobile, a laptop or any mini computer.
Not saying this is bad. But this, by definition, is not a hardware wallet.

I think we're stuck with semantics here. How do you define what the 'hardware wallet' is? Does every hardware wallet have a secure element? I don't think so.
In my humble opinion, this DIY project can be described as a hardware which can be used as a wallet. Is it a safer than the real hardware wallet? Of course it's not.
legendary
Activity: 1624
Merit: 2481
November 21, 2020, 06:47:07 AM
#9
Creators of Bowser are calling it diy hardware wallet, so it is diy hardware wallet,

Just because some random person is claiming some shit is gold.. it still stays shit.



What about Ledger HW1 is that Hardware Wallet or piece of shit USB and why they called it Hardware wallet?

The HW1 is a relatively bad hardware wallet, but it utilizes hardware security mechanisms by using a secure element.



One more definition for hardware wallet from 2019:

Quote
[...] Your all-important private keys are maintained in a secure offline environment on the hardware wallet, fully protected even should the device be plugged into a malware-infected computer.

And this already does not apply to your so-called "diy hardware wallet".
If you plug in that device into an malware infected computer, it becomes compromised. This is not the case with real hardware wallets.

This project simply is an offline storage on a small dedicated device. One could achieve the same on an old mobile, a laptop or any mini computer.
Not saying this is bad. But this, by definition, is not a hardware wallet.
legendary
Activity: 1484
Merit: 1355
November 20, 2020, 05:11:45 PM
#8
I don't know, I kinda like this idea. Of course, this is a DIY project for enthusiasts and not a competition to stock hardware wallets. I am sure that this wallet won't win the beauty contest nor will it be the safest wallet on the market. But anyone who has spent significant time creating something with their hands will appreciate this.
If we all felt that if a ready-made product could be purchased in a supermarket, it was not worthwhile to create anything, there would be no advancement in technology at all and the whole industry would stagnate. Engineers and programmers have created new technologies through collaboration since the early beginnings of computers. Knowledge needs to be spread, and collaborative creativity benefits the entire society.

legendary
Activity: 2212
Merit: 7064
Cashback 15%
November 20, 2020, 07:32:28 AM
#7
Wrong.
Wiki is NOT outdated, and in fact it is updated on 7 September 2020.

Creators of Bowser are calling it diy hardware wallet, so it is diy hardware wallet, but if you don't like it you can complain on their github or write them an email.


https://github.com/arcbtc/bowser-bitcoin-hardware-wallet/blob/master/README.md

Here is one more HARDWARE WALLET BitSafe from 2013:
https://bitcointalksearch.org/topic/ann-bitsafe-hardware-wallet-now-shipping-152517

What about Ledger HW1 is that Hardware Wallet or piece of shit USB and why they called it Hardware wallet?


https://www.amazon.com/Ledger-HW-1-HW-1/dp/B015N9Z4DU


One more definition for hardware wallet from 2019:

Quote
Hardware wallet is a physical electronic device, built for the sole purpose of securing bitcoins. The core innovation is that the hardware wallet must be connected to your computer, phone, or tablet before bitcoins may be spent. Hardware wallets are a good choice if you’re serious about security and convenient, reliable Bitcoin storage.

Bitcoin hardware wallets keep private keys separate from vulnerable, internet-connected devices. Your all-important private keys are maintained in a secure offline environment on the hardware wallet, fully protected even should the device be plugged into a malware-infected computer. As bitcoins are digital, cybercriminals could, potentially, target your computer’s “software wallet” and steal them by accessing your private key.
https://en.bitcoinwiki.org/wiki/Hardware_wallet

Paper is NOT a hardware!
legendary
Activity: 1624
Merit: 2481
November 20, 2020, 06:40:31 AM
#6
This is DIY hardware wallet, and it is NOT for newbies and people like spongebob Ledger shiller.

Let's see what makes a hardware wallet:

Quote
A hardware wallet is a special type of bitcoin wallet which stores the user's private keys in a secure hardware device.

They have major advantages over standard software wallets:

- private keys are often stored in a protected area of a microcontroller, and cannot be transferred out of the device in plaintext
- immune to computer viruses that steal from software wallets
- can be used securely and interactively, private keys never need to touch potentially-vulnerable software
- much of the time, the software is open source, allowing a user to validate the entire operation of the device
https://en.bitcoin.it/wiki/Hardware_wallet


First, the wiki is outdated.
Second, the first point (often stored in a protected area..) does not apply to the mini computer you claim is a hardware wallet.

All the other points also apply to a paper wallet. Do you really want to tell me now that a paper wallet is a hardware wallet?

I hope you see the problem with your "definition".

By the way.. did you notice that your quote is a list of advantages compared to software wallets?
Advantages are not the same as requirements. Advantages are not a definition.
legendary
Activity: 2212
Merit: 7064
Cashback 15%
November 19, 2020, 07:50:44 PM
#5
I will just ignore arrogant spongebob and his stupid comments, including his false accusations about blatant copy/pasting, and I recommend him to go to shrink as soon as possible.


This is DIY hardware wallet, and it is NOT for newbies and people like spongebob Ledger shiller.

Let's see what makes a hardware wallet:

Edit: Please see https://bitcointalksearch.org/topic/m.1327630 for an updated prototype.

Hardware Bitcoin wallet is a project which aims to implement a minimal dedicated Bitcoin wallet. Its main difference with every other Bitcoin client/wallet out there is its low resource requirements: the binary is currently 25 kilobytes large, it uses less than 2 kilobytes of RAM and requires only 160 bytes of non-volatile storage per wallet. With such low requirements, I reckon a production device would be smaller, more robust and cheaper than any other Bitcoin wallet.

The wallet stores private keys (actually, it only stores a seed for the deterministic key generator), parses transactions and signs transactions. It essentially doesn't do anything else. This is by design - simpler means a smaller attack surface. Private keys are generated on the device and never leave the device, except when doing a wallet backup. Even then, the seed is only displayed - it is never sent over the serial port. My intention is that physical access to a device is required in order to obtain private keys or to spend anything. As an additional layer of security, wallets can be encrypted. An encrypted wallet offers pseudo-two-factor authentication: in order to spend BTC, you need to know the wallet passphrase and you need to have the hardware Bitcoin wallet.

Here's a somewhat messy prototype:

The thing on the left is an Arduino clone (though I'm not actually using the Arduino IDE or libraries). The bunch of discretes on the lower part of the breadboard comprise a noise source, which is used to generate random numbers. The input user interface consists of two pushbuttons (bottom-left and bottom-right corners), where the user can approve or disapprove of actions. This gives you an idea of the necessary hardware peripherals required. Of course, a production device would be much more compact than this Smiley.


Here's the prototype signing a transaction:

Here's an actual transaction that it signed: http://blockexplorer.com/t/AEhoN6bzjd.

The code is hosted at: https://github.com/someone42/hardware-bitcoin-wallet. Currently, there's only a port for the ATmega328 microcontroller. However, most of the code is platform-independent; porting to another microcontroller "only" involves writing drivers for the microcontroller's peripherals.

I shall commit to being open and transparent, releasing source code and hardware specifications as I produce them. If people are interested, I might even design a production hardware Bitcoin wallet. From simple BOM and assembly cost estimates, such a device would cost 6 to 7 USD per unit to manufacture (for a quantity of 1000). If anyone has questions/suggestions, feel free to ask in this thread.

legendary
Activity: 1624
Merit: 2481
November 19, 2020, 10:26:51 AM
#4
This is not a hardware wallet.

It does not contain any hardware based security mechanisms, no secure element, cryptographic co-processor, nothing.

Please stop copy/pasting posts from github etc. claiming it is a DIY hardware wallet, which it clearly is not. You are confusing newbies who might think this is as secure as a hardware wallet.

This is "just" a mini computer held offline.


Instead of blatantly copy/pasting stuff, at least read and think about it.
legendary
Activity: 3500
Merit: 6205
Looking for campaign manager? Contact icopress!
November 19, 2020, 10:15:28 AM
#3
Since one doesn't save much compared to a "stock" hardware wallet and since you say it's riskier than a stock HW, it's clearly an idea mostly for enthusiasts.
But I like it.
I've just started playing with this kind of tiny machines (just bought my first Pi) and I see it comes with a full package of enjoyment and frustration, but others more advanced may like it.

One interesting/appealing fact is that since you are the only one handling it from scratch you are sure it was not tampered/nobody has installed other software onto it (of course, you have to check the git carefully).
It can be the solution for those who cannot receive a proper HW from the official shop or approved resellers (or just doesn't trust them).
legendary
Activity: 1876
Merit: 1552
Bitcoin Casino Est. 2013
November 19, 2020, 09:33:18 AM
#2
Wow! This is an interesting makeshift Hardware wallet although it's kinda tedious to remove and insert the SD card back and forth to your computer and the M5Stack to sign a transaction, it is still a good learning experience to fully grasp the idea of how seed, private keys and public keys work in raw codes.

However, is the codes used in Arduino IDE is the same in other wallet when broadcasting the transaction to the network? I just doubt the project a little since it was build from scratch but still I got curious on how it was build and might do the actual project whenever I got free time.
legendary
Activity: 2212
Merit: 7064
Cashback 15%
November 19, 2020, 07:56:44 AM
#1


Building your own hardware wallet is not for everyone, but it can be fun, anyone can do it and learn more about bitcoin during this process.

All code used for making Bowser hardware wallet is open source and anyone can check and verify it on github.

You can use any 32-bit microcontroller board (M5Stack, TTGO, stm32, Adafruit) but in this case we are using M5Stack.

Shopping list:

 - M5Stack ESP32 ~ $30 (order it online or buy at your local shop); or alternative M5Stack Core2 ESP32 AWS (has ATECC608A secure element) ~ $42
 - SD card ~ $5 (16gb is fine)

Code libraries used:

 - uBitcoin (Arduino library created by Stepan Snigirev)
 - M5Stack Library
 - lvgl GUI for Arduino

For Installing Arduino IDE and ESP32:
https://www.arduino.cc/en/Guide/HomePage
https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/boards_manager.md

I would recommend buying only M5Stack ESP32 basic version without Wifi, or even better M5Stack Core2 ESP32 AWS with ATECC608A secure element.

What I like in this example is that hardware wallet is hidden under Tetris game and it can be used as a nice mask.



You can see full Video tutorial HERE and on Github all credits go to original creators.


Note:
DIY hardware wallets  are maybe not always secure as regular hardware wallets because some don't have secure element but you can make them unique and add your own custom layer of protection.
Code is not fully production ready so don't use them for keeping large amounts of coins, and always backup your seed words in safe place.
Jump to: