Commit graph

2407 commits

Author SHA1 Message Date
bunnie
5fcef86bca update pins 2025-05-11 15:05:40 +08:00
bunnie
c2f866d891 bump version pins 2024-09-23 01:50:44 +08:00
bunnie
7e17771d12 bump pins 2024-06-27 00:25:24 +08:00
bunnie
23c447c7cc update xous pin 2024-06-13 15:47:25 +08:00
bunnie
5a337c5cf7 bump xous rev 2024-05-29 02:08:29 +08:00
bunnie
a3bbd9b680 bump xous pins 2024-05-07 01:01:49 +08:00
bunnie
c8fbc82e2c bump xous version pin 2024-04-01 15:45:13 +08:00
bunnie
468e304624
Merge pull request #4 from betrusted-io/cleanup-hw
Cleanup hw
2024-03-28 04:13:56 -04:00
bunnie
cdd1539ba8 promote illegal opcode to a panic
if the engine25519 hits an illegal opcode, really, that's a
software bug that should be fixed. panic, so that we get
a guru meditation and a bug report.
2024-03-28 10:21:27 +08:00
bunnie
4170979f6a add handlers to check for hardware errors and try to recover 2024-03-28 10:20:53 +08:00
bunnie
c0d9b40d9d add logic to catch suspend/resume and opcode errors
also fix a bug where the engine was not being powered off
on release.

Things to note:

- in case of an opcode error, the system will enter an infinite
loop complaining about the error. Maybe i should promote that to
a panic -- it's a thing that should be fixed and should just never
happen
- in case of a suspend/resume during an operation, this is
detected by the loaded microcode length not matching what we
had written. This is a heuristic, but relies on the assumption
that the microcode length would change when the engine is put
through a clean reboot (i.e., it is unlikely that it matches
what we had previously written).
2024-03-28 10:18:27 +08:00
bunnie
c1b910a779 add features for auto-release of hardware and warning on sw fallback
These features should help the crate work more seamlessly with the
existing API, at perhaps some performance penalty that is still
to be determined.
2024-03-28 09:48:50 +08:00
bunnie
0077595699 add feature flags for auto-release of hw and warnings on sw fallback 2024-03-28 09:48:29 +08:00
bunnie
94a47207d5 add fallback to field operations
this falls back to fiat-crypto primitives if the hw engine
is unavailable.
2024-03-25 13:43:52 +08:00
bunnie
0b052f5f79 make ensure_engine() falliable
this will trigger software fallback
2024-03-25 13:43:38 +08:00
bunnie
275f586b60 add back in bits_le
needed for software fallback
2024-03-25 13:42:58 +08:00
bunnie
63a24a80b6 add sw fallback for montgomery routines 2024-03-25 13:42:31 +08:00
bunnie
077d5a1fba cleanup warning 2024-03-25 13:42:12 +08:00
bunnie
12e406ce05 add fiat-crypto crate for emulation in case hardware is busy 2024-03-25 13:41:40 +08:00
bunnie
f34c6ae4d8 make analysis work better 2024-03-25 13:41:27 +08:00
bunnie
b6ce2f60a9 cleanup warnings, as much as possible. 2024-03-25 08:04:26 +08:00
bunnie
0fc7183a2a
Merge pull request #3 from betrusted-io/v4.1.1
V4.1.1
2024-03-25 07:03:35 +08:00
bunnie
b486cda2a0
Merge branch 'main' into v4.1.1 2024-03-25 06:59:43 +08:00
bunnie
81d5c53ff8
Merge pull request #2 from kotval/update_to_v4
Update to v4 WIP
2024-03-25 06:55:08 +08:00
David Kotval
0a0a972dfa fix: incorrectly prevented to_radix_2w_size_hint on u32e
This function should be able to be enabled by feature
selection.
2024-03-21 16:35:12 -05:00
Boyd Kane
cc3421a22f
Indicate that the rand_core feature is required (#641) 2024-03-16 07:43:25 -06:00
bunnie
4fdd15c3af cleanup warnings 2024-03-11 19:12:17 +08:00
bunnie
80fded7589 add functions to allow low-level access from outside the crate
and also make the internal functions use the same conventions
2024-03-11 18:44:17 +08:00
bunnie
4c58a5166f cleanup to refer to local job primitives 2024-03-11 18:15:19 +08:00
bunnie
ebcc3702d3 cleanup field arithmetic routines to refer to local job primitives 2024-03-11 18:14:57 +08:00
bunnie
e53c5e50a5 cleanup warnings now that engine25519 is trimmed 2024-03-11 18:13:47 +08:00
bunnie
fe0e8a2f7a add common components to run jobs inside the backend 2024-03-11 18:13:19 +08:00
bunnie
96784dbbc4 add zeroize dependency and remove engine25519 dependency
porting this in a manner similar to that used by the sha2 crate,
removing the explicit Xous dependency link.

see PR for discussion of issues
2024-03-11 18:12:15 +08:00
pinkforest(she/her)
858c4ca8ae
Address new nightly clippy unnecessary qualifications (#639) 2024-03-07 16:58:20 -07:00
David Kotval
5a9ef20763 wip: make tests compile 2024-03-02 14:36:19 -06:00
David Kotval
9b5b0c5502 wip: fix dependencies so tests can build 2024-03-02 14:35:38 -06:00
David Kotval
b40ec7135e wip: returning to cfg based dependency specification 2024-03-01 13:54:05 -06:00
pinkforest(she/her)
31ccb67050
Remove platforms in favor using CARGO_CFG_TARGET_POINTER_WIDTH (#636) 2024-03-01 07:35:23 -07:00
pinkforest(she/her)
19c7f4a5d5
Fix new nightly redundant import lint warns (#638) 2024-02-29 18:56:52 -07:00
David Kotval
d98a8b11e7 wip: now builds correctly without precomputed-tables enabled 2024-02-18 17:38:36 -06:00
David Kotval
7bf60e4a2b wip: trying to get unifying version 2024-02-18 16:44:04 -06:00
David Kotval
e8fdef83b4 Merge branch 'cfg_fix' into update_to_v4 2024-02-16 15:48:38 -06:00
David Kotval
22a6f18388 wip: adding features back 2024-02-16 15:45:53 -06:00
David Kotval
e5f5371a9c wip: typo in cfg name 2024-02-16 13:37:44 -06:00
Flori
a62e4a5c57
Fix minor spelling mistakes (#629) 2024-02-14 12:01:05 -07:00
Jack Lloyd
17eab3d6c1
ed: Make it possible to convert between VerifyingKey and EdwardsPoint (#624)
Adds VerifyingKey::to_edwards and a From conversion

See #623
2024-02-12 14:36:43 -05:00
Tony Arcieri
50401ab430
curve: mark ValidityCheck trait as allow(dead_code) (#625)
Recent nightlies have started emitting a dead code lint
2024-02-12 11:56:06 -05:00
David Kotval
486cd1315f fix: build.rs now selects accelerated backend for xous 2024-02-08 14:20:02 -06:00
Michael Rosenberg
4ac84dd066
curve,ed,x: Bump patch version to reflect fix to nightly SIMD build (#621) 2024-02-06 20:09:18 -05:00
Jimmy Chen
ff1c309b23
Fix nightly build (#619)
* Fix nightly build

* Add nightly feature constraint so AVX-512 requires either x86 or x86_64

Co-authored-by: Tony Arcieri <bascule@gmail.com>

* fmt

---------

Co-authored-by: Michael Rosenberg <micro@fastmail.com>
Co-authored-by: Tony Arcieri <bascule@gmail.com>
Co-authored-by: Michael Rosenberg <michael@mrosenberg.pub>
2024-02-06 15:09:29 -05:00