-
-
Notifications
You must be signed in to change notification settings - Fork 275
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Beta Program (for firmware v1.1.1 update) #113
Comments
Fixes thanks to feedback so far:
If you encounter these issues, please update to v0.0.5 via |
is there a way to convert a Hacker to a Secure Solo, By updating the bootloader etc? |
Nearly. The full Solo Secure (bootloader+firmware) has three differences to Solo Hacker:
The first two you can simulate, but the last you can't. We can't distribute the analogous Can you open a separate issue if you'd like to continue discussing this aspect? |
It only worked after I installed the Visual Studio 2015 C++ Build Tools from here: http://download.microsoft.com/download/5/F/7/5F7ACAEB-8363-451F-9425-68A90F98B238/visualcppbuildtools_full.exe |
Yeah I noticed my keys went to 1.1.1 when I tested the upgrade. |
Closing this beta program. Both versions 1.1.0 and 1.1.1 had bugs which we believe have been fixed in version 2.0.0. Updates possible via CLI or https://update.solokeys.com. Thank you to all who took part and reported their issues! Please note: if you took part, are on 1.1.0 and 1.1.1, and have actively used your keys, you may have to re-register on certain sites after updating to v2.0.0. So, make sure you have two keys registered, update one by one, re-registering immediately after. Or use backup codes or other fallback methods to make sure you don't lock yourself out anywhere. |
Announcement
We have prereleased our
firstsecond official update of the Solo firmware:https://github.com/solokeys/solo/releases/tag/1.1.0🍾https://github.com/solokeys/solo/releases/tag/1.1.1 🍾 🍾
TLDR:
pip install -U solo-python; solo key update [--secure|--hacker]
Invitation
Prior to announcing this update more widely, we invite anyone interested to test the firmware and its update procedure: you can take part in our beta testing program!
Please proceed at your own risk! We will of course provide help in case of any issues.
Changes
The changes are listed in our https://github.com/solokeys/solo/blob/master/CHANGELOG.md
We will strongly recommend everyone to update, as this fixes a bug in the U2F functionality (FIDO2 functionality was not affected) causing the signature counter to cycle after 255 uses of a given credential.
The firmware release goes hand in hand with the release of
solo-python
, our Python3.6+ library and tool to interact with your Solo. It lives in the repository https://github.com/solokeys/solo-python and can easily be installed viapip install -U solo-python
. The existingsolotool.py
will be deprecated.While the official roll-out may use a web-based update procedure for simplicity, by using the Python CLI tool you will be working with a more mature interface.
Additionally, with this release we move to verifiable Docker builds of the firmware, details below.
How To Update?
pip install -U solo-python
solo key update --secure
solo key update --hacker
Please do not flash the secure firmware onto a hacker key -- while it will work, this will activate ROP (flash readout protection) level 2, and you will irreversibly lose access to the ST DFU interface.
In both cases, the key will automatically be updated. You can verify everything worked by checking the output of the following commands:
Verifiability
The firmware you will flash by updating is pulled from the v1.1.1 release assets:
The firmware for the secure build is embedded in a JSON containing a signature that the Solo Secure bootloader verifies before enabling. The private key to generate this signature is our "proprietary secret": this secrecy is what keeps a Solo Secure key safe from "evil maid" attacks, as only firmware approved by us can be flashed onto it. Together with the Solo Secure attestation key, these are the only secrets our company has 👐.
Everything else is 100% verifiable by you, if you wish to do so! Here's how:
make docker-build SOLO_VERSIONISH=1.1.1
(should work on Linux and Windows)build/
subdirectory:solo key update
procedure verifies the sha256sums of what will be flashed (including the websafe-encoded version of the secure build.hex
contained in the signed.json
asset): https://github.com/solokeys/solo-python/blob/9b5c65db839e28ce5a7a5e526375dc9bc54c259a/solo/cli/update.py#L129Bundle Update for Solo Hacker
If you have a hacker key, you can update the bundle of both bootloader + firmware:
In time, the mode changes (between firmware, bootloader and dfu) may be automated, but they can be a little finicky. In particular, when entering or leaving ST DFU mode, a hard reboot (powercycle) can be necessary. Here is a diagram explaining the
solo program
subcommands: https://whimsical.co/YHmbripdnGn9DtBA8YrrdLBug Reports
In case of any issues, please report by commenting in this GitHub issue, so we can fix them
Thank you!
The text was updated successfully, but these errors were encountered: