Commit graph

459 commits

Author SHA1 Message Date
bunnie
09b0e93113 bump lock file 2022-10-02 21:50:29 +08:00
bunnie
d699ddf998 also move utralib change into kernel, update cargo.lock 2022-10-02 02:21:27 +08:00
bunnie
50d5a94270 this file wasn't saved for some reason 2022-09-29 22:38:12 +08:00
bunnie
df96605531 update utralib reference 2022-09-29 22:22:33 +08:00
bunnie
7226b57a2f eliminate an instance of clap 2022-09-29 22:12:58 +08:00
bunnie
be0c503e1f bump lockfile 2022-09-27 18:32:36 +08:00
bunnie
4f2506f009 some housekeeping; remove bit-rotted test targets
these targets are so old they would need to be completely
re-written to be relevant, so just cull them.
2022-09-27 17:50:32 +08:00
bunnie
755556611c prep kernel for packaging
- strip out gdb-stub. Per xobs, the feature never worked, and it
depends upon a branch of a git repo which is not allowed by crates.io
Since the feature hasn't been developed, and crates.io will not
allow even an optional feature that points to a git repo, the feature
was stripped out.

- rename "kernel" to "xous-kernel", so that we can live in a crates.io
package namespace that is specific to Xous.

still have to figure out the riscv package issue.
2022-09-27 17:02:20 +08:00
bunnie
be7b77e52a bump lockfile 2022-09-27 16:31:05 +08:00
bunnie
15bcb6328f fixup other refs 2022-09-27 03:09:41 +08:00
bunnie
c3e1e94c71 update lockfile 2022-09-27 01:18:11 +08:00
bunnie
507ab42836 downgrade xous-ipc to 0.9.7 until i have permissions to push a new version 2022-09-26 16:11:26 +08:00
bunnie
3579dfdd17 update xous-ipc and xous versions 2022-09-26 16:07:35 +08:00
bunnie
d10683d29f contemplating splitting log-server itself into a crate, just to see what happens... 2022-09-26 14:58:05 +08:00
bunnie
114d60bc53 migrate logserver API to external package 2022-09-26 14:06:46 +08:00
bunnie
b6afff7f14 bump lock file 2022-09-26 11:13:04 +08:00
bunnie
e5f988c938 bump ring-xous ref
forgot to absorb this patch into xous-core!
2022-09-19 17:49:03 +08:00
bunnie
e1781bfcbe add ct profiling to the workspace 2022-09-16 01:45:49 +08:00
bunnie
b22e3a1b43 fix dependabot security issue in base64 dependency 2022-09-11 21:48:20 +08:00
bunnie
37f8151b1f update gitref for ring-xous 2022-09-11 19:16:15 +08:00
Nickolai Zeldovich
b604b746e9 format conversion for importing Google Authenticator TOTP 2022-08-31 14:38:06 -04:00
bunnie
ea55d23e67 some initial websocket mucking about 2022-08-25 05:04:37 +08:00
bunnie
63347f5fbe update to latest ring-xous 2022-08-24 03:11:38 +08:00
bunnie
c1f1548830 update to the latest ring-xous 2022-08-23 01:39:54 +08:00
bunnie
a6972436bf fixups to fix linux builds 2022-08-21 16:30:37 +08:00
bunnie
9c1f550f55 scope ring patches tighter; exclude xtask from workspace config
try not to have xtask be affected by the ring patches...
2022-08-20 08:12:45 +08:00
bunnie
8e27d0db87 try to fix ring dependencies 2022-08-20 01:50:48 +08:00
bunnie
950b0e909a configure out TLS by default 2022-08-20 00:38:50 +08:00
bunnie
59a3bc0370 cleanup patches 2022-08-20 00:38:21 +08:00
bunnie
a5aee2b0d5 patches for debug 2022-08-16 17:54:36 +08:00
bunnie
9a4933b648 Merge branch 'main' into rustls-exp2 2022-08-16 15:13:56 +08:00
Gianguido Sorà
1defdff915 chore(vault): add serde_repr for vaultbackup-rs 2022-08-13 17:40:02 +02:00
bunnie
a05ab47d10 add some test code to exercise TLS to break the linking 2022-08-13 21:23:35 +08:00
Gianguido Sorà
51b04fe14e Merge branch 'main' into feat/vault-usb-totp-loading 2022-08-12 17:16:30 +02:00
Gianguido Sorà
5528f7af74 chore(vault): add env_logger for totpbackup-rs 2022-08-12 16:53:40 +02:00
bunnie
2e0f1df894 intermediate commit through experiments 2022-08-12 15:56:05 +08:00
nworbnhoj
d96faec4eb add png_decode comments 2022-08-09 06:18:49 +10:00
Gianguido Sorà
199d5ddeb5 Merge branch 'main' into feat/vault-usb-totp-loading 2022-08-02 15:53:11 +02:00
bunnie
826aa43f20 Merge branch 'pddb-flamegraph' into main 2022-08-01 15:46:57 +08:00
bunnie
5be62e372d chore: move AES-GCM-SIV off of branch to 0.11.1 official
this patch moves us off the branch we had to hop on for cipher
API compatibility to the one that's officially published by
RustCrypto. This closes #168.
2022-08-01 15:44:16 +08:00
bunnie
7d62ca85b8 some preliminary schwags at making flamegraphs
turns out, they're pretty useless. I mean, for debugging actual
running code. it tells us basically what we know already which is
99.99% of the time is spent waiting on inter-thread messaging
in hosted mode.
2022-08-01 01:32:19 +08:00
Gianguido Sorà
de4c164c7b Merge branch 'main' into feat/vault-usb-totp-loading 2022-07-25 11:44:01 +02:00
bunnie
ec5cc29ccd hotfix for incorrect AES-KWP implementation
The crate we originally grabbed for AES-KWP seems to be non-compliant
(or I'm an idiot and I can't figure out how to call it in a way
that is compliant).

See https://github.com/jedisct1/rust-aes-keywrap/issues/9

Turns out that `aes_kw` *is* compliant, but unfortunately, it didn't
exist back when the PDDB was being written. The PDDB started in October
2021, and `aes_kw` was pushed in Jan 2022. *just* barely missed it.

Anyways, caught this error while trying to implement some CI for
backups. Hurray for testing!

This patch removes the encryption path using the incorrect version
of the algorithm, but leaves the decryption path in place. The
system will try to decrypt initially with the correct version,
but if that fails, it will fall back and try the incorrect version.
If that succeeds, it returns an error code with the correct key and
an updated wrapped key, which the caller can store so that future
calls do not fail. Thus, we have a seamless migration from the
incorrect version to the correct version.

Have verified that the aes_kw version *does* work with the CI
script, insofar as it has been written (we just got to that point
and got stuck). So, full speed ahead. Users shouldn't notice this
change.

Also, fwiw, I did take a look at the "incorrect" implementation,
and it doesn't look obviously insecure. Printing out the various
rounds of the wrapping function looks like the first couple rounds
match, but it diverges somewhere probably due to an off-by-one
in a counter or something like that. I didn't chase it out -- just
wanted to make sure that nothing looked like a huge data compromise.

Good news is this comes right on the heels of v0.9.9 release, so
this will be pushed as a hotfix right away.
2022-07-25 02:56:20 +08:00
Gianguido Sorà
63fc8539c4 chore(vault): cargo lock updates 2022-07-19 16:48:05 +02:00
Gianguido Sorà
b1c6690826 chore: forgot to update cargo files after totpbackup rename 2022-07-18 17:30:45 +02:00
bunnie
f6423381e9 update lockfile 2022-07-16 00:40:35 +08:00
bunnie
abade9e1af minor fixes in the autoupdate flow
- do not try to create root keys if we just did an SoC update.
that's just too many things going on, we should definitely force
a clean reboot first.

- add a clean reboot step after a no-key soc update

- try to switch USB debug mode on if a backup was created
2022-07-14 19:26:09 +08:00
bunnie
f1d91b5b25 bump lockfile 2022-07-13 04:44:57 +08:00
bunnie
09e1b99315 initial infrastructure for running backups
code to serialize/deserialize and encrypt/decrypt the backup
block.

now filling in the UX flow around this.
2022-07-12 03:32:33 +08:00
Gianguido Sorà
7cd279259a chore(vault): make it depend off libraries/backup 2022-07-11 18:15:41 +02:00