Skip to content

Releases: betrusted-io/xous-core

Bao1x loader refactor

01 Oct 06:42
d80d6cb

Choose a tag to compare

Bao1x loader refactor Pre-release
Pre-release

This is a non-release tag to note a "flag day" which is the last stable commit before the bao1x loader is heavily refactored.

Prior to this tag, the loader was intended to be a stand-alone program without any prior stages.

After this tag, a trust chain is assumed consisting of boot0 -> boot1 -> loader, where boot1 does most of the low level hardware setup.

Furthermore, most of the testing features built into loader have been culled. They have either been stabilized into Xous code, moved into baremetal, or simply deleted. The purpose of this tag is to make it easier to refer to code that was straight-up deleted because it's assumed we won't have to revisit those bring-up elements.

Future bring-up work should not abuse the loader code base for bring-up work. Instead, the baremetal environment is the preferred area for sandbox testing of isolated hardware peripherals prior for integration into the Xous environment.

This is all leading up to a new major rev of the Xous repo where bao1x support is fully stabilized.

`vault` app release

10 Aug 18:57

Choose a tag to compare

This release of Xous includes the vault app, as well as major ergonomic changes to the device update flow. It also introduces the ability to make backups of the device.

v0.9.6 - backer shipment MVP

05 Feb 20:30

Choose a tag to compare

This version of Xous is the MVP milestone for backer shipment. It is strongly recommended that all backers who receive their devices update to this version before personalizing their units, as there are several API-breaking fixes in this release compared to what was flashed in the factory several months ago.

While we are striving to stabilize all the APIs, we're still not at 1.0.0, which means we expect that we'll find bugs that could require breaking backward compatibility with provisioned/root-keyed devices. Breaking backward compatibility means requiring a JTAG-cable level "unbrick" process to bring things up to date, that would also wipe any data from the device. An example of an API-breaking change that is on the books is hardware support for Bcrypt. Right now we are limited to a work factor of 7, but OWASP recommends 10. 10 is suitable for GHz-class servers, but on Precursor it would take tens of seconds to compute a login password hash. Thus, there is an open item to investigate the possibility of hardware acceleration for the Bcrypt primitive to increase the work factor. If this work factor is increased, then it would change the password security scheme and invalidate existing passwords.

This version is tagged out to a "release" because it has also been pushed to the factory, so future units that roll off the production line will be shipped with software built using this particular code base. This corresponds to the bootstrap-mainboard repo version v0.7.4 state.

Simplest end-to-end functionality

10 Mar 20:46
2b8b703

Choose a tag to compare

Pre-release

Interactive shell + sensors and power on/off.

Might as well tag it.