Skip to content

Releases: BitBoxSwiss/mcu

Release 6.0.2

04 Mar 13:55
7f43252
Compare
Choose a tag to compare

The latest desktop app contains the latest firmware and provides step-by-step instructions for upgrading. To get the latest desktop app, click here.

Release notes:

  • Whitelist vintage.myetherwallet.com
  • Fix bug introduced by latest Chrome, for re-enabling MyEtherWallet access

To reproduce and verify the deterministic build:

# Clone the repository
git clone https://github.com/digitalbitbox/mcu.git
cd mcu

# Build deterministically (requires Vagrant and Virtualbox and OSX or Linux)
vagrant up
cp build-vagrant/bin/firmware.pad.bin firmware.deterministic.6.0.2.bin
vagrant halt

# Verify the deterministic binary
shasum -a 256 firmware.deterministic.6.0.2.bin  #  438442ac50915b9726649f1e1679eed638865bb5212357d865f5b59211b248a5

# Append signatures of the firmware
py/prepend_signatures_firmware_binary.py firmware.deterministic.6.0.2.bin firmware.deterministic.6.0.2.signed.bin 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f32c81811d9fcee78b011a74d29d96068afd6366ef79f6599054e0ba46f3d5517b8ad38c34d0117bfb137cc29b3b390555b8c0eaa13c8ff18ec8d82dd07c3e1db53c45cc28c03f6e678e5ee68c533cdea1dcd66193578f03310c86f85a6a1d87541a9d430df36351d253a1c8eae6017ccff535ee678a5806b2c55534ca59eec5dd3a96de0e274da0431e98c0a40968c61be64eb5af7c8a73cefdc5b321e771f54a7d1cd7b20c68e16c087a31aaf703c398e761b92f619bceab7e8a49c4368edd41a0e5d3a09d79f83cb17c00faf06425f1f230a30379951f3bd96aac0740b93e188819a388f46c629a60d52f1721be35a7f7bff55a4a1b476f6d5a11029ab10f

# Verify the signed deterministic binary
shasum -a 256 firmware.deterministic.6.0.2.signed.bin  #  da707da4ec5b733edeadd79e67adbbd995ded3a775c06320e073972842c5a08a

# Signed deterministic binaries can be loaded into the Digital Bitbox 
# using the Upgrade Firmware button in the desktop app.

# In case of problems, check if using a different major version:
vagrant --version  #  Vagrant 1.8.5
vagrant box list   #  ubuntu/trusty64 (virtualbox, 20181103.0.0)
virtualbox --help  #  Oracle VM VirtualBox Manager 5.1.38

ECC secp256k1 public keys and signatures of the double SHA256 hash of firmware.deterministic.6.0.2.bin:

0263b742d9873405c609814da884324ab0f4c1597a5fd152b388899857f4d041df : f32c81811d9fcee78b011a74d29d96068afd6366ef79f6599054e0ba46f3d5517b8ad38c34d0117bfb137cc29b3b390555b8c0eaa13c8ff18ec8d82dd07c3e1d
02b95dc22d293376222ef896f74a8436a8b6672e7e416299f3c4e23b49c38ad366 : b53c45cc28c03f6e678e5ee68c533cdea1dcd66193578f03310c86f85a6a1d87541a9d430df36351d253a1c8eae6017ccff535ee678a5806b2c55534ca59eec5
03ef4c48dc308ace971c025db3edd4bc5d5110e28e14bdd925fffafd4d21002800 : dd3a96de0e274da0431e98c0a40968c61be64eb5af7c8a73cefdc5b321e771f54a7d1cd7b20c68e16c087a31aaf703c398e761b92f619bceab7e8a49c4368edd
030d8b0b86fca70bfd3a8d842cdb3ff8362c02f455fd092b080f1bb137dfc1d25f : 41a0e5d3a09d79f83cb17c00faf06425f1f230a30379951f3bd96aac0740b93e188819a388f46c629a60d52f1721be35a7f7bff55a4a1b476f6d5a11029ab10f

Signature blob appended to firmware.deterministic.6.0.2.bin

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f32c81811d9fcee78b011a74d29d96068afd6366ef79f6599054e0ba46f3d5517b8ad38c34d0117bfb137cc29b3b390555b8c0eaa13c8ff18ec8d82dd07c3e1db53c45cc28c03f6e678e5ee68c533cdea1dcd66193578f03310c86f85a6a1d87541a9d430df36351d253a1c8eae6017ccff535ee678a5806b2c55534ca59eec5dd3a96de0e274da0431e98c0a40968c61be64eb5af7c8a73cefdc5b321e771f54a7d1cd7b20c68e16c087a31aaf703c398e761b92f619bceab7e8a49c4368edd41a0e5d3a09d79f83cb17c00faf06425f1f230a30379951f3bd96aac0740b93e188819a388f46c629a60d52f1721be35a7f7bff55a4a1b476f6d5a11029ab10f

Release 6.0.1

25 Feb 07:21
8299527
Compare
Choose a tag to compare

outdated

Release 6.0.0

19 Jan 08:00
529ad43
Compare
Choose a tag to compare

The latest desktop app contains the latest firmware and provides step-by-step instructions for upgrading. To get the latest desktop app, click here.

Release notes:

  • Fix 3-byte memory leak in U2F code
  • Require nonce also in non-full-2FA mobile pairing mode
  • Simulator added for testing/development, using UDP sockets
  • Remove API call to delete all backups at once

To reproduce and verify the deterministic build:

# Clone the repository
git clone https://github.com/digitalbitbox/mcu.git
cd mcu

# Build deterministically (requires Vagrant and Virtualbox and OSX or Linux)
vagrant up
cp build-vagrant/bin/firmware.pad.bin firmware.deterministic.6.0.0.bin
vagrant halt

# Verify the deterministic binary
shasum -a 256 firmware.deterministic.6.0.0.bin  #  13dbbd675a928d3f677d0ca10ffabeddce36453c13a0ffac5caa82dd05526bc2

# Append signatures of the firmware
py/prepend_signatures_firmware_binary.py firmware.deterministic.6.0.0.bin firmware.deterministic.6.0.0.signed.bin 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000076edbb3aec7bb595d93114cefb9062808790e631ccf7727a434c5865c71199fc0b6680a1cb6de8eb747d122a6232de475a2c6034cb11121e28a4de4987c9789f5608619e65c633ab6dac32c5fd4365591afbbd3890be66940b428f183e4fa4d56a81a18599ddc305c2285bf054283e57aa96bb2bf927c74dea41a39d0af20dff9678367ce39d3acec4d2d1de6518ab85bf06870d027e0501e292f6bc759dd2bc60b564f3d8ad5e3768fb23f3cef2ca839781f50781e42aa47fcd969eb79201d595d75b7b6820317b33e007b46ded2984638d7321bcfe230b581cb638bc38592e6391b1ceeb2cddaa4ed5cfe19cd50c87031ad0f7cb93e9c375501730f15986ad

# Verify the signed deterministic binary
shasum -a 256 firmware.deterministic.6.0.0.signed.bin  #  b12012238e724c037f7547d17de16e26f7b2151d0f8c280d470ab153e76ce6e3

# Signed deterministic binaries can be loaded into the Digital Bitbox 
# using the Upgrade Firmware button in the desktop app.

# In case of problems, check if using a different major version:
vagrant --version  #  Vagrant 1.8.5
vagrant box list   #  ubuntu/trusty64 (virtualbox, 20181103.0.0)
virtualbox --help  #  Oracle VM VirtualBox Manager 5.1.38

ECC secp256k1 public keys and signatures of the double SHA256 hash of firmware.deterministic.6.0.0.bin:

0263b742d9873405c609814da884324ab0f4c1597a5fd152b388899857f4d041df : 76edbb3aec7bb595d93114cefb9062808790e631ccf7727a434c5865c71199fc0b6680a1cb6de8eb747d122a6232de475a2c6034cb11121e28a4de4987c9789f
02b95dc22d293376222ef896f74a8436a8b6672e7e416299f3c4e23b49c38ad366 : 5608619e65c633ab6dac32c5fd4365591afbbd3890be66940b428f183e4fa4d56a81a18599ddc305c2285bf054283e57aa96bb2bf927c74dea41a39d0af20dff
03ef4c48dc308ace971c025db3edd4bc5d5110e28e14bdd925fffafd4d21002800 : 9678367ce39d3acec4d2d1de6518ab85bf06870d027e0501e292f6bc759dd2bc60b564f3d8ad5e3768fb23f3cef2ca839781f50781e42aa47fcd969eb79201d5
030d8b0b86fca70bfd3a8d842cdb3ff8362c02f455fd092b080f1bb137dfc1d25f : 95d75b7b6820317b33e007b46ded2984638d7321bcfe230b581cb638bc38592e6391b1ceeb2cddaa4ed5cfe19cd50c87031ad0f7cb93e9c375501730f15986ad

Signature blob appended to firmware.deterministic.6.0.0.bin

00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000076edbb3aec7bb595d93114cefb9062808790e631ccf7727a434c5865c71199fc0b6680a1cb6de8eb747d122a6232de475a2c6034cb11121e28a4de4987c9789f5608619e65c633ab6dac32c5fd4365591afbbd3890be66940b428f183e4fa4d56a81a18599ddc305c2285bf054283e57aa96bb2bf927c74dea41a39d0af20dff9678367ce39d3acec4d2d1de6518ab85bf06870d027e0501e292f6bc759dd2bc60b564f3d8ad5e3768fb23f3cef2ca839781f50781e42aa47fcd969eb79201d595d75b7b6820317b33e007b46ded2984638d7321bcfe230b581cb638bc38592e6391b1ceeb2cddaa4ed5cfe19cd50c87031ad0f7cb93e9c375501730f15986ad

Release 5.0.0

30 Nov 13:20
a19dbfd
Compare
Choose a tag to compare

Compatible with desktop app versions v4.3.0 or newer.

Release notes:

  • Provide option for users to access legacy hidden wallets in case they have funds still there
  • Allow the ability to verify a hidden wallet password, if in non-full-2FA mode
  • Use message authentication code for USB communication
  • Provide firmware version with the 'ping' command, such that U2F-iface applications (e.g. MEW) can know the correct API format to use

To reproduce and verify the deterministic build:

# Clone the repository
git clone https://github.com/digitalbitbox/mcu.git
cd mcu

# Build deterministically (requires Vagrant and Virtualbox and OSX or Linux)
vagrant up
cp build-vagrant/bin/firmware.pad.bin firmware.deterministic.5.0.0.bin
vagrant halt

# Verify the deterministic binary
shasum -a 256 firmware.deterministic.5.0.0.bin  #  7f55a9740d107e7fac5ce07c06e0bd3f7ab76d65021209a8c16933c811259ab8

# Append signatures of the firmware
py/prepend_signatures_firmware_binary.py firmware.deterministic.5.0.0.bin firmware.deterministic.5.0.0.signed.bin 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fb8f3f271869872b9fd7ee7985cb65434f8c2b24e0cc95b23d2e35ac94b10f44394889d44398498586f18a09ecb6ec1a0bd2c760a1e14288151cc0f96cbb99b244acefdafb734091f9ea4bda8165cc9aac2c9ceb0e5cd33b8b1d0761c980dedd4e02a88510ab1eb6ace128dc32f64c926118289e4b1a54f62b55ef1b754a201c6ca3f4264c85db8b2f8f24ecf38efee60ad4117e5a293fc01adf7f1c445d896323fb9ecd386074b0bcbd9d120c88f09f3c801adcba9171a5553e68e5deb8e1cb8774a39d8d9ba34c1f47209f869bd9ea7806f3b584e5fcbc5531fc6a31b2b79c519d9c1b14b07db72d390a633dc4e55494b13e66be49c09cf2032aff7a6a5f7f


# Verify the signed deterministic binary
shasum -a 256 firmware.deterministic.5.0.0.signed.bin  #  01eb019214fc6503d109f5826cb282ebc6b1c45339dedb8e36fab5b65b16caeb

# Signed deterministic binaries can be loaded into the Digital Bitbox 
# using the Upgrade Firmware button in the desktop app.

# In case of problems, check if using a different major version:
vagrant --version  #  Vagrant 1.8.5
vagrant box list   #  ubuntu/trusty64 (virtualbox, 20181103.0.0)
virtualbox --help  #  Oracle VM VirtualBox Manager 5.1.38

ECC secp256k1 public keys and signatures of the double SHA256 hash of firmware.deterministic.5.0.0.bin:

0263b742d9873405c609814da884324ab0f4c1597a5fd152b388899857f4d041df : fb8f3f271869872b9fd7ee7985cb65434f8c2b24e0cc95b23d2e35ac94b10f44394889d44398498586f18a09ecb6ec1a0bd2c760a1e14288151cc0f96cbb99b2
02b95dc22d293376222ef896f74a8436a8b6672e7e416299f3c4e23b49c38ad366 : 44acefdafb734091f9ea4bda8165cc9aac2c9ceb0e5cd33b8b1d0761c980dedd4e02a88510ab1eb6ace128dc32f64c926118289e4b1a54f62b55ef1b754a201c
03ef4c48dc308ace971c025db3edd4bc5d5110e28e14bdd925fffafd4d21002800 : 6ca3f4264c85db8b2f8f24ecf38efee60ad4117e5a293fc01adf7f1c445d896323fb9ecd386074b0bcbd9d120c88f09f3c801adcba9171a5553e68e5deb8e1cb
030d8b0b86fca70bfd3a8d842cdb3ff8362c02f455fd092b080f1bb137dfc1d25f : 8774a39d8d9ba34c1f47209f869bd9ea7806f3b584e5fcbc5531fc6a31b2b79c519d9c1b14b07db72d390a633dc4e55494b13e66be49c09cf2032aff7a6a5f7f

Signature blob appended to firmware.deterministic.5.0.0.bin

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fb8f3f271869872b9fd7ee7985cb65434f8c2b24e0cc95b23d2e35ac94b10f44394889d44398498586f18a09ecb6ec1a0bd2c760a1e14288151cc0f96cbb99b244acefdafb734091f9ea4bda8165cc9aac2c9ceb0e5cd33b8b1d0761c980dedd4e02a88510ab1eb6ace128dc32f64c926118289e4b1a54f62b55ef1b754a201c6ca3f4264c85db8b2f8f24ecf38efee60ad4117e5a293fc01adf7f1c445d896323fb9ecd386074b0bcbd9d120c88f09f3c801adcba9171a5553e68e5deb8e1cb8774a39d8d9ba34c1f47209f869bd9ea7806f3b584e5fcbc5531fc6a31b2b79c519d9c1b14b07db72d390a633dc4e55494b13e66be49c09cf2032aff7a6a5f7f

Release 4.0.1

24 Nov 13:00
7446e2c
Compare
Choose a tag to compare

Compatible with desktop app versions v4.0.1 or newer.

Release notes:

  • Remove previously deprecated USB API backup recovery
  • More efficient and robust EEPROM storage
  • On system faults, clear memory and disable SPI and I2C peripherals

To reproduce and verify the deterministic build:

# Clone the repository
git clone https://github.com/digitalbitbox/mcu.git
cd mcu

# Build deterministically (requires Vagrant and Virtualbox and OSX or Linux)
vagrant up
cp build-vagrant/bin/firmware.pad.bin firmware.deterministic.4.0.1.bin
vagrant halt

# Verify the deterministic binary
shasum -a 256 firmware.deterministic.4.0.1.bin  #  b9b8ef141d71c537a03371aa888147669ff0405954b282ed24cc413eb164db08

# Append signatures of the firmware
py/prepend_signatures_firmware_binary.py firmware.deterministic.4.0.1.bin firmware.deterministic.4.0.1.signed.bin 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f89c9481d32e49e3dd3770d881d711e048964657e1532efba759fbfd067ef60f39568e8411766d47932d87da2c9ce33e53eabcc4b1ddd230506658084ba5544a0416cf3aad238a30d94ce4884ac9e3e350f807402f6b6dd204e8ba5a8cad5d0179e6c7f1503d665c3be41dcc437eb68dd0d956f11f5c6d5ff4d45892b0f7179afb22728ed783fef1cac48e5ebd1160a503baec0076adf963088717d48ba0d31a7f01445382196f66b71ee08e2c504a4e7d7a7972464aa3c27eb61668303ff6432d4983c0628424a63f9aa37acaf1faedb1b3ca69dd176161115ba6caf18b96c417322c4509325ff2d0945bcb95233db8da35804eb4f80fbfa20588d85b205794

# Verify the signed deterministic binary
shasum -a 256 firmware.deterministic.4.0.1.signed.bin  #  ae2ff91e917dd70b02bbdb025fc6eaa056bb55aa2f2802cf6fa02f3261d37234

# Signed deterministic binaries can be loaded into the Digital Bitbox 
# using the Upgrade Firmware button in the desktop app.

# In case of problems, check if using a different major version:
vagrant --version  #  Vagrant 1.8.5
vagrant box list   #  ubuntu/trusty64 (virtualbox, 20181103.0.0)
virtualbox --help  #  Oracle VM VirtualBox Manager 5.1.38

ECC secp256k1 public keys and signatures of the double SHA256 hash of firmware.deterministic.4.0.1.bin:

0263b742d9873405c609814da884324ab0f4c1597a5fd152b388899857f4d041df : f89c9481d32e49e3dd3770d881d711e048964657e1532efba759fbfd067ef60f39568e8411766d47932d87da2c9ce33e53eabcc4b1ddd230506658084ba5544a
02b95dc22d293376222ef896f74a8436a8b6672e7e416299f3c4e23b49c38ad366 : 0416cf3aad238a30d94ce4884ac9e3e350f807402f6b6dd204e8ba5a8cad5d0179e6c7f1503d665c3be41dcc437eb68dd0d956f11f5c6d5ff4d45892b0f7179a
03ef4c48dc308ace971c025db3edd4bc5d5110e28e14bdd925fffafd4d21002800 : fb22728ed783fef1cac48e5ebd1160a503baec0076adf963088717d48ba0d31a7f01445382196f66b71ee08e2c504a4e7d7a7972464aa3c27eb61668303ff643
030d8b0b86fca70bfd3a8d842cdb3ff8362c02f455fd092b080f1bb137dfc1d25f : 2d4983c0628424a63f9aa37acaf1faedb1b3ca69dd176161115ba6caf18b96c417322c4509325ff2d0945bcb95233db8da35804eb4f80fbfa20588d85b205794

Signature blob appended to firmware.deterministic.4.0.1.bin

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f89c9481d32e49e3dd3770d881d711e048964657e1532efba759fbfd067ef60f39568e8411766d47932d87da2c9ce33e53eabcc4b1ddd230506658084ba5544a0416cf3aad238a30d94ce4884ac9e3e350f807402f6b6dd204e8ba5a8cad5d0179e6c7f1503d665c3be41dcc437eb68dd0d956f11f5c6d5ff4d45892b0f7179afb22728ed783fef1cac48e5ebd1160a503baec0076adf963088717d48ba0d31a7f01445382196f66b71ee08e2c504a4e7d7a7972464aa3c27eb61668303ff6432d4983c0628424a63f9aa37acaf1faedb1b3ca69dd176161115ba6caf18b96c417322c4509325ff2d0945bcb95233db8da35804eb4f80fbfa20588d85b205794

Release 4.0.0

31 Jul 14:19
Compare
Choose a tag to compare

Compatible with desktop app versions v4.0.0 or newer.

Release notes:

  • More secure smart verification pairing process
  • Various bug fixes and security fixes, and improvements in unit testing

To reproduce and verify the deterministic build:

# Clone the repository
git clone https://github.com/digitalbitbox/mcu.git
cd mcu

# Build deterministically (requires Vagrant and Virtualbox and OSX or Linux)
vagrant up
cp build-vagrant/bin/firmware.pad.bin firmware.deterministic.4.0.0.bin

# Verify the deterministic binary
shasum -a 256 firmware.deterministic.4.0.0.bin  #  26770f38bba0c62ca1fc81a5038fe1f5865e00c72d8aa34ffc6042ad97a9ff34

# Append signatures of the firmware
py/prepend_signatures_firmware_binary.py firmware.deterministic.4.0.0.bin firmware.deterministic.4.0.0.signed.bin 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000104628d9c67537a8ef79bff375afacf78c35fad647a090f05d45811e23c4a96539a9f9b3ca465f5af9e6691e518d816fa8e73c67896625be68de2621d22b5e8091d6e389ed384bcaf5d7ba16a8af1a34bd48084b911a5685f41ff3340cb11616cc1d06f8c558fac31c38afb95f1c30e42bd9da204002ba757b9d972633016760f06409c24dc497d60524bb1275394de5df57981b485622d341e209d99b3e13854b21d7459abd0e3872011765b53e211069bc6b0438e18a4bed774ca2ac820489dc82dae4bb7e6093e888e4dcdfebee068af79f255c5d78b9eb1118a752491740023aea8924944f213fb5733a62a82d8d5a2706ea163cecf83df8aac0711cdf1

# Verify the signed deterministic binary
shasum -a 256 firmware.deterministic.4.0.0.signed.bin  #  c44130a9e5d01a393a34e60e003a93e0078f1acdcdfa488f19f61c13d3a5a82b

# Signed deterministic binaries can be loaded into the Digital Bitbox 
# using the Upgrade Firmware button in the desktop app.

# In case of problems, check that:
vagrant --version  #  Vagrant 1.9.5
vagrant box list   #  ubuntu/trusty64 (virtualbox, 20170313.0.7)
virtualbox --help  #  Oracle VM VirtualBox Manager 5.1.18

ECC secp256k1 public keys and signatures of the double SHA256 hash of firmware.deterministic.4.0.0.bin:

0263b742d9873405c609814da884324ab0f4c1597a5fd152b388899857f4d041df : 0104628d9c67537a8ef79bff375afacf78c35fad647a090f05d45811e23c4a96539a9f9b3ca465f5af9e6691e518d816fa8e73c67896625be68de2621d22b5e8
02b95dc22d293376222ef896f74a8436a8b6672e7e416299f3c4e23b49c38ad366 : 091d6e389ed384bcaf5d7ba16a8af1a34bd48084b911a5685f41ff3340cb11616cc1d06f8c558fac31c38afb95f1c30e42bd9da204002ba757b9d97263301676
03ef4c48dc308ace971c025db3edd4bc5d5110e28e14bdd925fffafd4d21002800 : 0f06409c24dc497d60524bb1275394de5df57981b485622d341e209d99b3e13854b21d7459abd0e3872011765b53e211069bc6b0438e18a4bed774ca2ac82048
030d8b0b86fca70bfd3a8d842cdb3ff8362c02f455fd092b080f1bb137dfc1d25f : 9dc82dae4bb7e6093e888e4dcdfebee068af79f255c5d78b9eb1118a752491740023aea8924944f213fb5733a62a82d8d5a2706ea163cecf83df8aac0711cdf1

Signature blob appended to firmware.deterministic.4.0.0.bin

0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000104628d9c67537a8ef79bff375afacf78c35fad647a090f05d45811e23c4a96539a9f9b3ca465f5af9e6691e518d816fa8e73c67896625be68de2621d22b5e8091d6e389ed384bcaf5d7ba16a8af1a34bd48084b911a5685f41ff3340cb11616cc1d06f8c558fac31c38afb95f1c30e42bd9da204002ba757b9d972633016760f06409c24dc497d60524bb1275394de5df57981b485622d341e209d99b3e13854b21d7459abd0e3872011765b53e211069bc6b0438e18a4bed774ca2ac820489dc82dae4bb7e6093e888e4dcdfebee068af79f255c5d78b9eb1118a752491740023aea8924944f213fb5733a62a82d8d5a2706ea163cecf83df8aac0711cdf1

Release 3.0.0

12 Mar 14:37
Compare
Choose a tag to compare

Compatible with desktop app versions v3.0.0 or newer. Refer to the list of pull requests for all changes.

Release notes:

  • Updated hidden wallet process: newly created hidden wallets can be recovered from the backup
  • API provided for U2F back up and recovery (recovery not yet implemented in the desktop app, but new backups will contain a backup of the U2F master key)
  • Allow https://mycrypto.com access to web USB interface
  • Miscellaneous security and bug fixes

To reproduce and verify the deterministic build:

# Clone the repository
git clone https://github.com/digitalbitbox/mcu.git
cd mcu

# Build deterministically (requires Vagrant and Virtualbox and OSX or Linux)
vagrant up
cp build-vagrant/bin/firmware.pad.bin firmware.deterministic.3.0.0.bin

# Verify the deterministic binary
shasum -a 256 firmware.deterministic.3.0.0.bin  #  7bb6b986951d88c92b2db9159377ad07a2d22f3ac0e91a45e4d545345e0f6a71

# Append signatures of the firmware
py/prepend_signatures_firmware_binary.py firmware.deterministic.3.0.0.bin firmware.deterministic.3.0.0.signed.bin 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000082bab51c67dbb4ac5ee46686cc10b485aa0868cf577c6a58e9706a156f9e0a5e0fb0032af50ae8b60a5a9e90c0814c0ab05a643ac28eb068524e1ad18683a395b12cd81632caf0e1a5dd51bd33172f11ef8fe14fa17c49c4a60146225fea629922509e23fafe53b3dcf4b8865a7b87187b557bbdb2aea3eef77ca8ec3e9b46582fb4e401896eb81e53a7d8e659c118f721e8e4fd127b3243b135054e1111ad067d088c028517cc8515d8c43c44dd8865288eb04f1756021233e42ac99462daa28f4a6af6123f33b222212eed67c21904e947c8967b72cf2a6ec77a69bebae93e5d145065fac7bd1d53929ffeb0275a5e7df1b856c02b0f58e8d2f594d2be5b3e

# Verify the signed deterministic binary
shasum -a 256 firmware.deterministic.3.0.0.signed.bin  #  0f947e41c82843f3db32f13a04265a4f9673a95735d76383b7d3ff15fe9372c2

# Signed deterministic binaries can be loaded into the Digital Bitbox 
# using the Upgrade Firmware button in the desktop app.

# In case of problems, check that:
vagrant --version  #  Vagrant 1.9.5
vagrant box list   #  ubuntu/trusty64 (virtualbox, 20170313.0.7)
virtualbox --help  #  Oracle VM VirtualBox Manager 5.1.18

ECC secp256k1 public keys and signatures of the double SHA256 hash of firmware.deterministic.3.0.0.bin:

0263b742d9873405c609814da884324ab0f4c1597a5fd152b388899857f4d041df : 82bab51c67dbb4ac5ee46686cc10b485aa0868cf577c6a58e9706a156f9e0a5e0fb0032af50ae8b60a5a9e90c0814c0ab05a643ac28eb068524e1ad18683a395
02b95dc22d293376222ef896f74a8436a8b6672e7e416299f3c4e23b49c38ad366 : b12cd81632caf0e1a5dd51bd33172f11ef8fe14fa17c49c4a60146225fea629922509e23fafe53b3dcf4b8865a7b87187b557bbdb2aea3eef77ca8ec3e9b4658
03ef4c48dc308ace971c025db3edd4bc5d5110e28e14bdd925fffafd4d21002800 : 2fb4e401896eb81e53a7d8e659c118f721e8e4fd127b3243b135054e1111ad067d088c028517cc8515d8c43c44dd8865288eb04f1756021233e42ac99462daa2
030d8b0b86fca70bfd3a8d842cdb3ff8362c02f455fd092b080f1bb137dfc1d25f : 8f4a6af6123f33b222212eed67c21904e947c8967b72cf2a6ec77a69bebae93e5d145065fac7bd1d53929ffeb0275a5e7df1b856c02b0f58e8d2f594d2be5b3e

Signature blob appended to firmware.deterministic.3.0.0.bin

00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000082bab51c67dbb4ac5ee46686cc10b485aa0868cf577c6a58e9706a156f9e0a5e0fb0032af50ae8b60a5a9e90c0814c0ab05a643ac28eb068524e1ad18683a395b12cd81632caf0e1a5dd51bd33172f11ef8fe14fa17c49c4a60146225fea629922509e23fafe53b3dcf4b8865a7b87187b557bbdb2aea3eef77ca8ec3e9b46582fb4e401896eb81e53a7d8e659c118f721e8e4fd127b3243b135054e1111ad067d088c028517cc8515d8c43c44dd8865288eb04f1756021233e42ac99462daa28f4a6af6123f33b222212eed67c21904e947c8967b72cf2a6ec77a69bebae93e5d145065fac7bd1d53929ffeb0275a5e7df1b856c02b0f58e8d2f594d2be5b3e

Release 2.2.3

25 Aug 09:19
Compare
Choose a tag to compare

Compatible with desktop app versions v2.1.2 or newer. Refer to the list of pull requests for all changes.

Release notes:

  • Provide secure browser interface access for the www.myetherwallet integration.
  • More efficient factory quality control functional tests.

To reproduce and verify the deterministic build:

# Clone the repository
git clone https://github.com/digitalbitbox/mcu.git
cd mcu

# Build deterministically (requires Vagrant and Virtualbox and OSX or Linux)
vagrant up
cp build-vagrant/bin/firmware.bin firmware.deterministic.2.2.3.bin

# Verify the deterministic binary
shasum -a 256 firmware.deterministic.2.2.3.bin  #  57a2e6dfcc41159f927bb543c97031bc64a4bb42b322e214bda128f2d05bef0d

# Append signatures of the firmware
py/append_signatures_firmware_binary.py firmware.deterministic.2.2.3.bin firmware.deterministic.2.2.3.signed.bin 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a62edd2d91e565c4c3aeaace17943c097938ae7b30f8338b8937239dae55d6ba33b8dbc29a17d444bbccc6ca7a00cb717387a7bcb7688aaa0ad69d8ede143555ece868577966cad79be858908db5a5f2e780ae0d5b0f6d197a677fc9a66e70a075c948ba11562533407c4f66401bb03454df99349569f13ba534fb2877b1a67145c3964e3e720c9e78388ba8555275377448b564c55a3689cc0f0312be362e25273dc7f96f491a910707185718ceb3372ada9924eba8ced8fb42ab6f7ba416c15aacc1ab96f4bf67bd423c855686fd8385ac874bcc2195c8d3df36a43b3dc7ab7d5ae5d938d4b275e308642c9e1d083e9d0ceeec9915c823073a766e0fde996b

# Verify the signed deterministic binary
shasum -a 256 firmware.deterministic.2.2.3.signed.bin  #  d423c9a34a5cb8f4cb5efceeecab4413f22093b5fd3c0129a1de834cd14d6ea9 

# Signed deterministic binaries can be loaded into the Digital Bitbox 
# using the Upgrade Firmware button in the desktop app.

# In case of problems, check that:
vagrant --version  #  Vagrant 1.9.5
vagrant box list   #  ubuntu/trusty64 (virtualbox, 20170313.0.7)
virtualbox --help  #  Oracle VM VirtualBox Manager 5.1.18

ECC secp256k1 public keys and signatures of the double SHA256 hash of firmware.deterministic.2.2.3.bin:

0263b742d9873405c609814da884324ab0f4c1597a5fd152b388899857f4d041df : a62edd2d91e565c4c3aeaace17943c097938ae7b30f8338b8937239dae55d6ba33b8dbc29a17d444bbccc6ca7a00cb717387a7bcb7688aaa0ad69d8ede143555
02b95dc22d293376222ef896f74a8436a8b6672e7e416299f3c4e23b49c38ad366 : ece868577966cad79be858908db5a5f2e780ae0d5b0f6d197a677fc9a66e70a075c948ba11562533407c4f66401bb03454df99349569f13ba534fb2877b1a671
03ef4c48dc308ace971c025db3edd4bc5d5110e28e14bdd925fffafd4d21002800 : 45c3964e3e720c9e78388ba8555275377448b564c55a3689cc0f0312be362e25273dc7f96f491a910707185718ceb3372ada9924eba8ced8fb42ab6f7ba416c1
030d8b0b86fca70bfd3a8d842cdb3ff8362c02f455fd092b080f1bb137dfc1d25f : 5aacc1ab96f4bf67bd423c855686fd8385ac874bcc2195c8d3df36a43b3dc7ab7d5ae5d938d4b275e308642c9e1d083e9d0ceeec9915c823073a766e0fde996b

Signature blob appended to firmware.deterministic.2.2.3.bin

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a62edd2d91e565c4c3aeaace17943c097938ae7b30f8338b8937239dae55d6ba33b8dbc29a17d444bbccc6ca7a00cb717387a7bcb7688aaa0ad69d8ede143555ece868577966cad79be858908db5a5f2e780ae0d5b0f6d197a677fc9a66e70a075c948ba11562533407c4f66401bb03454df99349569f13ba534fb2877b1a67145c3964e3e720c9e78388ba8555275377448b564c55a3689cc0f0312be362e25273dc7f96f491a910707185718ceb3372ada9924eba8ced8fb42ab6f7ba416c15aacc1ab96f4bf67bd423c855686fd8385ac874bcc2195c8d3df36a43b3dc7ab7d5ae5d938d4b275e308642c9e1d083e9d0ceeec9915c823073a766e0fde996b

Release 2.2.2

11 Jun 13:43
Compare
Choose a tag to compare

Compatible with desktop app versions v2.1.2 or newer. Refer to the list of pull requests for all changes.

Release notes:

  • Provide secure browser interface for third party clients (allows ETH, ETC, and ERC20 token support via MyEtherWallet integration).
  • Minor: Returns more descriptive product string in USB descriptor listing.
  • Minor: Return recoverable ID recid instead of pubkey with signatures. The pubkey can be derived from the sig and recid. recid is necessary for Ethereum support.

To reproduce and verify the deterministic build:

# Clone the repository
git clone https://github.com/digitalbitbox/mcu.git
cd mcu

# Build deterministically (requires Vagrant and Virtualbox and OSX or Linux)
vagrant up
cp build-vagrant/bin/firmware.bin firmware.deterministic.2.2.2.bin

# Verify the deterministic binary
shasum -a 256 firmware.deterministic.2.2.2.bin  #  4a0f8a4a454331d3dca9a21da205d74d6ee8917ca523a44b82b1fe30b1177d0f

# Append signatures of the firmware
py/append_signatures_firmware_binary.py firmware.deterministic.2.2.2.bin firmware.deterministic.2.2.2.signed.bin 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ab62cdc84efe891dac91f5632fcfe57115cf4fc6769f0a1cddb5268294dac38371207c616d7ac123bb075d042c8e0ee3f2e036ac200348156baf831ad5d2d1aff7d757c994a1c422fd4cb7adf589360231979dd1f1bb5dcd3fa28bc80eeb66882c7977df66d4f97e7761094f3f6f9748cd6f2c77eb22799212d154d2307031db170a6d1e5d511aa07d588d72e18481d3286dc583b12f2d22a7a35ee4a5d955d66f1aa76979305ff8ed002744a851159436e87645e3b021dd69231b9f57a033bfd293e93c78128fd6a4996961c34273c044cb120dd1c9a50d6b1db01577fd2a7a2644ec2ddb9e96f814082b5abc193da0e43c23e61eed6baa631a7f6ff67d3b77

# Verify the signed deterministic binary
shasum -a 256 firmware.deterministic.2.2.2.signed.bin  #  0bfc71bfa062033bc8fbb9ff5d07dd646ec673a455257f111af4e68a807f6001 

# Signed deterministic binaries can be loaded into the Digital Bitbox 
# using the Upgrade Firmware button in the desktop app.

# In case of problems, check that:
vagrant --version  #  Vagrant 1.8.5
vagrant box list   #  ubuntu/trusty64 (virtualbox, 20170313.0.7)
virtualbox --help  #  Oracle VM VirtualBox Manager 5.0.36

ECC secp256k1 public keys and signatures of the double SHA256 hash of firmware.deterministic.2.2.2.bin:

0263b742d9873405c609814da884324ab0f4c1597a5fd152b388899857f4d041df : ab62cdc84efe891dac91f5632fcfe57115cf4fc6769f0a1cddb5268294dac38371207c616d7ac123bb075d042c8e0ee3f2e036ac200348156baf831ad5d2d1af
02b95dc22d293376222ef896f74a8436a8b6672e7e416299f3c4e23b49c38ad366 : f7d757c994a1c422fd4cb7adf589360231979dd1f1bb5dcd3fa28bc80eeb66882c7977df66d4f97e7761094f3f6f9748cd6f2c77eb22799212d154d2307031db
03ef4c48dc308ace971c025db3edd4bc5d5110e28e14bdd925fffafd4d21002800 : 170a6d1e5d511aa07d588d72e18481d3286dc583b12f2d22a7a35ee4a5d955d66f1aa76979305ff8ed002744a851159436e87645e3b021dd69231b9f57a033bf
030d8b0b86fca70bfd3a8d842cdb3ff8362c02f455fd092b080f1bb137dfc1d25f : d293e93c78128fd6a4996961c34273c044cb120dd1c9a50d6b1db01577fd2a7a2644ec2ddb9e96f814082b5abc193da0e43c23e61eed6baa631a7f6ff67d3b77

Signature blob appended to firmware.deterministic.2.2.2.bin

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ab62cdc84efe891dac91f5632fcfe57115cf4fc6769f0a1cddb5268294dac38371207c616d7ac123bb075d042c8e0ee3f2e036ac200348156baf831ad5d2d1aff7d757c994a1c422fd4cb7adf589360231979dd1f1bb5dcd3fa28bc80eeb66882c7977df66d4f97e7761094f3f6f9748cd6f2c77eb22799212d154d2307031db170a6d1e5d511aa07d588d72e18481d3286dc583b12f2d22a7a35ee4a5d955d66f1aa76979305ff8ed002744a851159436e87645e3b021dd69231b9f57a033bfd293e93c78128fd6a4996961c34273c044cb120dd1c9a50d6b1db01577fd2a7a2644ec2ddb9e96f814082b5abc193da0e43c23e61eed6baa631a7f6ff67d3b77

Release 2.2.0 BETA

17 May 09:45
Compare
Choose a tag to compare
Release 2.2.0 BETA Pre-release
Pre-release

Compatible with desktop app versions v2.1.2 or newer. Beta release for Ethereum support (ETH, ETC, and ERC20 tokens) via a MyEtherWallet plugin. Email [email protected] if you would like to test this release.

  • To reproduce and verify the deterministic build:
# Clone the repository
git clone https://github.com/digitalbitbox/mcu.git
cd mcu

# Build deterministically (requires Vagrant and Virtualbox and OSX or Linux)
vagrant up
cp build-vagrant/bin/firmware.bin firmware.deterministic.2.2.0.bin

# Verify the deterministic binary
shasum -a 256 firmware.deterministic.2.2.0.bin  # 65c10a5ba0e83b514c5b09be67f6967b457efa366709c356b6a4b9e27ff9171f

# Append signatures of the firmware
py/append_signatures_firmware_binary.py firmware.deterministic.2.2.0.bin firmware.deterministic.2.2.0.signed.bin 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080ab752015162decfac9b8c1dac264a5ec53a7becf58281c32e0731e873d28d57cc3f748a58a5fe2765649de3531ceafcdfe1d4af597c05aa9ff9a513d3e34acf0d8f29f28c1b4053300cd790073e4b9778dc8c392a4fabcdae2c0576e452e176e7b591af4c11f2859ba6f1aba58bac51f52ba2006cf707e1ace4355fd0a66258666024c2623f750595de233a63596fdf177d3b6434fb00e2e44e06c5a3caad374241a1126b94d7e596a8ae756408a810075d025aa187339e79d310469a0b962efb06632ba7effd5de5c675b2b77ba8539e11b978f2ed7d93e9cc9a167fa3a8114fc74d118e4f0c5fb8538c1b763537371dd71523b54d5e562be23d6a693e930 

# Verify the signed deterministic binary
shasum -a 256 firmware.deterministic.2.2.0.signed.bin  # 013b4423c4168de779389d3398753cc8a84389ce7e0df2d15d3e911775f79496

# Signed deterministic binaries can be loaded into the Digital Bitbox 
# using the Upgrade Firmware button in the desktop app.

# In case of problems, check that:
vagrant box list  #  ubuntu/trusty64 (virtualbox, 20170313.0.7)
virtualbox --help  #  Oracle VM VirtualBox Manager 5.0.36
  • ECC secp256k1 public keys and signatures of the double SHA256 hash of firmware.deterministic.2.2.0.bin:
0263b742d9873405c609814da884324ab0f4c1597a5fd152b388899857f4d041df : 80ab752015162decfac9b8c1dac264a5ec53a7becf58281c32e0731e873d28d57cc3f748a58a5fe2765649de3531ceafcdfe1d4af597c05aa9ff9a513d3e34ac
02b95dc22d293376222ef896f74a8436a8b6672e7e416299f3c4e23b49c38ad366 : f0d8f29f28c1b4053300cd790073e4b9778dc8c392a4fabcdae2c0576e452e176e7b591af4c11f2859ba6f1aba58bac51f52ba2006cf707e1ace4355fd0a6625
03ef4c48dc308ace971c025db3edd4bc5d5110e28e14bdd925fffafd4d21002800 : 8666024c2623f750595de233a63596fdf177d3b6434fb00e2e44e06c5a3caad374241a1126b94d7e596a8ae756408a810075d025aa187339e79d310469a0b962
030d8b0b86fca70bfd3a8d842cdb3ff8362c02f455fd092b080f1bb137dfc1d25f : efb06632ba7effd5de5c675b2b77ba8539e11b978f2ed7d93e9cc9a167fa3a8114fc74d118e4f0c5fb8538c1b763537371dd71523b54d5e562be23d6a693e930
  • Signature blob appended to firmware.deterministic.2.2.0.bin
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080ab752015162decfac9b8c1dac264a5ec53a7becf58281c32e0731e873d28d57cc3f748a58a5fe2765649de3531ceafcdfe1d4af597c05aa9ff9a513d3e34acf0d8f29f28c1b4053300cd790073e4b9778dc8c392a4fabcdae2c0576e452e176e7b591af4c11f2859ba6f1aba58bac51f52ba2006cf707e1ace4355fd0a66258666024c2623f750595de233a63596fdf177d3b6434fb00e2e44e06c5a3caad374241a1126b94d7e596a8ae756408a810075d025aa187339e79d310469a0b962efb06632ba7effd5de5c675b2b77ba8539e11b978f2ed7d93e9cc9a167fa3a8114fc74d118e4f0c5fb8538c1b763537371dd71523b54d5e562be23d6a693e930