Discussion:
Anelok: firmware improvements
Werner Almesberger
2015-12-02 22:24:35 UTC
Permalink
In the last days, I implemented a few long-planned features in the
firmware, with the overall goal of making Anelok suitable for
daily real-life use.

These features include:

- Anelok can now use multiple account databases, selected by the PIN
the user enters. This way, I can have the demo accounts with the
default PIN (the "V"), plus my real accounts with a different PIN.

The overall account database structure is still something that's
only sufficient for the present state of development. E.g.,

- the account database is stored in the Flash of the
microcontroller, not on the memory card,

- Anelok can only read the database, but it cannot modify it or
add new accounts.

- there is no support for multiple readers yet
https://gitlab.com/anelok/doc/wikis/Task_multicrypt

- the PIN is currently stored with the keys, and keys are selected
by comparing the PIN with what the user entered. We could do
much better:
https://gitlab.com/anelok/doc/wikis/Task_nopin

- The account database now supports directories. To put an account
in a directory, one simply prefixes its name with the path. Anelok
then figures out what to with it. This is the current demo
database:

https://gitlab.com/anelok/anelok/blob/master/crypter/default.txt

And this is what the "Code" subdirectory looks like (the "folder"
icon is new):

Loading Image...
Loading Image...

The implementation of all this is rather crude (e.g., weird things
will happen if entries in the account database don't follow a
strict depth-first order) and fairly inefficient, but it'll do for
now.

- Long account records now scroll horizontally. This is what it
looks like:

Loading Image...

using the example from

http://xkcd.com/936/

As usual, all this can also be experienced with the simulator.

- Werner

Loading...