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

Linux kernel driver support #20

Open
jans23 opened this issue Sep 2, 2019 · 6 comments
Open

Linux kernel driver support #20

jans23 opened this issue Sep 2, 2019 · 6 comments

Comments

@jans23
Copy link

jans23 commented Sep 2, 2019

Similarly to ChaosKey, support for Infnoise by the Linux kernel would be appreciated. In that case Infnoise's random data should be feeded into kernel's LRNG which does the PRNG via ChaCha20 and alike.

@AidanGG
Copy link

AidanGG commented Nov 18, 2021

I'm interested in having a look at how this might be done. Right now by default, the FT240XQ's ID 0403:6015 causes it to get picked up by the ftdi_sio driver in order to allow it to be used by the userspace driver libftdi. @manuel-domke would you happen to have a leetronics USB VID and suggested PID that could be used to reprogram existing Infnoises with?

@AidanGG
Copy link

AidanGG commented Nov 18, 2021

Looks like I can use 1209:3701 according to https://pid.codes/1209/3701/. Now it should be a matter of intercepting the URBs eventually fired off by libinfnoise since the FTDI protocol isn't well documented (https://krinkinmu.github.io/2020/09/05/ftdi-protocol.html) and recreating them in the kernel driver.

From what I can tell from a cursory glance over the libinfnoise source, there would be control URBs for setting things such as baud rate, pin mode mask and synchronous bitbang mode, and bulk URBs for writing the bitbang clock for the switches and reading from the comparators

@stuartpb
Copy link

@AidanGG Any progress on this?

@AidanGG
Copy link

AidanGG commented Mar 18, 2023

Sadly not, unfortunately. I have mostly stopped using the infnoise.

@ZAlexanderV
Copy link

ZAlexanderV commented Jul 22, 2023

@AidanGG what did you switch to ?
@manuel-domke @stuartpb any chance to move it forward ?
I think this would greatly increase usability.

@Strykar
Copy link

Strykar commented Nov 17, 2023

In case anyone else wanted to write a kernel driver for the infnoise, here's one approach - https://github.com/tectrolabs/swiftrng/blob/master/linux/swrandom/swrandom.c

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

5 participants