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

How can I help? #7

Open
DiegoMagdaleno opened this issue Feb 20, 2021 · 3 comments
Open

How can I help? #7

DiegoMagdaleno opened this issue Feb 20, 2021 · 3 comments

Comments

@DiegoMagdaleno
Copy link

I would love to contribute, but I dont see a TODO file with what needs to be currently implemented in the CoreCrypto Library

@ahyattdev
Copy link
Member

Hi diego! I am not sure of any urgent CoreCrypto functions we need at the moment.

@facekapow is more familiar with it than me, he may know better!

@facekapow
Copy link
Member

facekapow commented Feb 22, 2021

Well, we're not desperately in need of any functions right now, but implementing more of them is always nice!

I'd say some good low-hanging fruits are the various symmetric encryption modes that need to be implemented, such as CFB, CTR, XTS, and a few more. Those should be pretty simple to implement.

The RNG system is also lacking its own PRNG implementation; we're always using libc's getentropy (which is effectively the same as reading /dev/urandom). The PRNG would be in src/ccrng_pbkdf2.c; the function that's stubbed in there right now is the initializer; you'd have to implement that and also add an implementation for the RNG generate callback.

Other than those, there are quite a few more things to implement (e.g. Blowfish, RC2/4, key wrapping, various KDFs), but these are either less important or more difficult (or both).

@Lazerbeak12345
Copy link

Lazerbeak12345 commented Apr 16, 2024

Concerning these more complicated algorithms, could we link to something like OpenSSL or libgcrypt and translate the API calls? (Bouncy Castle seems like a pretty good option as well, as does NSS)

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

No branches or pull requests

4 participants