Skip to content
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

no_std? #15

Open
fmckeogh opened this issue Feb 18, 2019 · 5 comments
Open

no_std? #15

fmckeogh opened this issue Feb 18, 2019 · 5 comments

Comments

@fmckeogh
Copy link

I'd like to start working on optional no_std support, is there anything major preventing this, and if not, is it the sort of thing you would like to see merged?

@newpavlov
Copy link
Member

Both srp and spake2 depend on num-bigint which currently does not support no_std.

With stable alloc we could support no_std out-of-box, or alternatively I think with (stable) const generics we could migrate srp to fixed-sized stack-allocated big-integers (or num-bigint could add support for them), not sure about spake2 though.

cc @warner

@fmckeogh
Copy link
Author

Ah okay, thank you! :)

warner added a commit that referenced this issue Jul 18, 2019
We only use it in unit tests.

This might help with no-std, so refs #15
@warner
Copy link
Member

warner commented Jul 18, 2019

I just noticed that spake2 was only using num-bigint for the unit tests, so I demoted it to a dev-dependency. Maybe that'll help.

@fmckeogh
Copy link
Author

fmckeogh commented Jul 18, 2019

Awesome :)

I'm still working on a heapless_bigint crate; I hope to make some more progress with making SRP no-std in the next few weeks, but I've just been pretty busy lately :/

@warner
Copy link
Member

warner commented Dec 6, 2019

incidentally, PR #33 would increase at least the spake2 MSRV to rust-1.36, in which alloc is stable, which might help.

I know the curve25519-dalek crate that spake2 uses is a big fan of no_std, so I don't expect any problems from that dependency.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants