主页 > imtoken钱包注册教程 > 比特币钱包修改器 Dodo 钱包 1.0(第 2 部分)——这仅仅是个开始

比特币钱包修改器 Dodo 钱包 1.0(第 2 部分)——这仅仅是个开始

imtoken钱包注册教程 2024-01-26 05:15:03

编者按:本文为渡渡鸟钱包下集。 请看上一集:Dodo Wallet 1.0(上):基于树莓派的Dotcoin PoS挖矿节点钱包。 引起很大争议的一件事是 Biter 丢了硬币。 丢币的原因也很离奇,就是他们没有使用成熟的硬件钱包来存储比特币,而是老式的电脑方案。 结果,比特币在联网过程中被黑客窃取。 这件事情引起了很多比特币硬件钱包厂商以此来谈论此事,进而宣传他们的硬件钱包有多安全,所以我们暂时不一一评论。 笔者上网搜索,《比特币钱包概述:硬件钱包》一文对硬件钱包做了一个总结。 由于目前的虚拟货币硬件钱包主要是比特币钱包,以下都是针对比特币的: 1、这一代的典型代表是Pi-Wallet。 其实说白了就是在树莓派上安装一个比特币轻量级钱包,然后Pi-Wallet通过PC端的Armory来控制钱包和私钥。 功能简单,方法单一。 目前,大部分产品是第二代。 基本功能是将秘钥存储在硬件钱包中,然后使用usb连接电脑进行操作。 国内这方面的技术非常成熟,价格也越来越便宜。 最便宜的才100多元。 (ps:图片来自1bit)目前正在开发的第三代功能更加强大,关键是可以脱离电脑的存在,直接进行线下交易。 那么我们的问题是,为什么交易所这么蠢,不使用成熟、便宜、好用的硬件钱包,而是用老式的电脑来存储,这样丢币呢? 不走弯路,一句话解决战斗,就是为什么你相信你的硬件钱包是安全的? 你怎么证明你的硬件钱包里不会有木马,或者说不会被第三方加载? 事实也证明,丢币的Biter依然“固执”地没有选择特定厂商的硬件钱包,而是将冷钱包100%委托给合作伙伴进行专业安全的存储。

我这里再举一个例子,就是OKCoin公布的公司比特币冷钱包方案,里面也写明是用离线电脑,不是厂商公卖版的硬件钱包。 原因是没有哪个大型交易所敢把几千万甚至上亿的虚拟币放到一个没有经过专业安全机构检测的硬件钱包里。 闭源硬件钱包的优缺点 目前我们在市场上看到的大部分硬件钱包都是闭源硬件钱包。 它们的优点是外观好看,质量稳定,优化用户体验。 但我们不是在买漂亮的衣服或好的食物,我们是在买一个金保险箱,问题是,我们不知道我们买的保险箱是否有后门。 一些闭源的硬件钱包厂商可能意识到了这一点比特币钱包修改器,所以称之为源码开发,有兴趣的可以自行开发第三方程序。 不过有意无意地回避了一点,那就是bootloader的源码没有公开,无法通过模拟器烧录(因为没有jtag接口)。 不搞嵌入式系统的人需要稍微了解一下。 Bootloader类似于我们电脑的bios。 也是一个启动程序,一开始就启动了。 也就是说,每次启动时,都是先执行bootloader的代码,然后再执行其他程序。 如果bootloader中嵌入了恶意代码,那么整个硬件钱包在恶意的人面前就像裸奔一样。 很多低端硬件钱包使用的是stm32芯片,所以这里是stm32的flash图标。

这里我们主要关注两部分,一部分是Main Memory:该区域的地址范围:0x08000000 - 0x0801FFFF,总大小为128K字节。 该区主要用途:存放STM32代码段(用户程序)。 硬件钱包的bootloader和应用程序代码段一般都放在这里。 一部分是Information Block: System memory即系统内存,该区域存放STM32自带的bootloader。 Bootloader是芯片出厂时设置的,主要用于通过UARTx下载程序到Main Memory。 这通常是不可修改的。 大致流程是先启动stm32本身的bootloader,然后进入代码区,启动硬件钱包的bootloader,最后启动硬件钱包本身的程序。 如果前面两个bootloader中的任何一个被植入了恶意程序,整个硬件钱包就会像裸奔一样。 这样一来,一个两难的局面就出现在了大多数小型硬件钱包厂商的面前。 源代码不公开,不能完全开发,客户不敢使用; 如果源代码开放,就会有大量的抄板,就没有利润可言。 因此,没有安全认证的闭源硬件钱包可以当玩具,但如果真的严重了,就不能用于大规模的商业应用。 免费开源的虚拟货币硬件钱包那么接下来的问题是,我们需要什么样的虚拟货币硬件钱包呢? 首先,应该专门为虚拟货币开发的软硬件应该是开源免费的。

这样可以保证没有后门和木马。 整个系统将由志愿者长期维护。 其次,可以在没有电脑的情况下完成虚拟货币的操作,包括展示、转账交易等,这样就可以避免操作电脑被入侵带来的安全问题(比如偷偷修改发送地址,伪装成真实的交易网站等)最后,方便生产经营。 如果设计过程像造喷气式飞机一样繁琐,操作过程像骑猛马一样难受,那也就很少有人会用了。 那么我们就在《比特币钱包评测-Part 1-硬件钱包》中的三代钱包一一解析。 第一代钱包Pi-Wallet满足第一个要求,即虚拟货币开发的软硬件都是开源的(当然没有专门的硬件,只有软件),但不满足第二个和第三个要求。 没有屏幕,就不能脱离电脑独立操作比特币钱包修改器,也不能独立进行支付交易。 二代钱包明显不符合第一、二项,但操作起来非常方便,符合第三项。 由于第三代钱包功能复杂,加上厂商的利润考量,很难完全开源。 退一步说,即使软硬件完全开源,普通个人用户也无法轻易做出来,所以即使满足第一条,也不会满足第三条。 开花钱包就是在这样的背景下诞生的。 Dodo Wallet 1.0 的组成和功能最初是由点币中文社区的一些朋友提出的。 目前Dotcoin已经有了基于Raspberry Pi的PoS挖矿节点钱包,但是由于是基于网络命令行的,不安全也不方便,所以希望做一个比较简单的Peercoin PoS挖矿钱包。

点击开始,点击挖矿,点击关机,有些信息可以这样显示。 所以我花了几周时间制作了 Dodo 钱包(实际上大部分时间都花在了测试上)。 从硬件构成来看,Dodo Wallet比早期的Pi-Wallet多了一个屏幕按键模块和一张无线网卡。 这意味着Dodo钱包不局限于有线网络,可以在任何有wifi的地方工作(没有wifi的地方,只要手机有信号,可以建热点),也可以独立于电脑。 操作(自带屏幕按键,也可以外接键盘和U盘辅助操作。) 这就解决了第二个问题,没有电脑如何独立操作。 并且由于使用了防火墙来阻断不用的端口,所以也具有很高的安全性。 另外,Dodo Wallet对虚拟货币采用非特定硬件,无需担心硬件安全问题。 同样在软件部分,系统采用了开源的linux系统,Dodo Wallet运行的软件也是免费开源的。 这也解决了第二个问题。 最后,在制作方面,有专门的制作教程,是作者自己写的,发布出来,供大家免费使用。 而且使用也很简单,基本上就是在说明书和视频前面点几个按钮,就搞定了。 下一步的前景本来是打算多写点东西的,但是想了想,觉得还是要把问题搞清楚。 废话不多说,这里只讲三个部分,一是Dodo钱包,二是Dodo ATM,三是Dodo系统智能设备的自主性研究。 [...]