winlogon
967358f5c9
All checks were successful
Build Rukon Library / build (push) Successful in 1m15s
|
||
---|---|---|
.gitea/workflows | ||
archlinux | ||
examples | ||
src | ||
.gitignore | ||
LICENSE | ||
meson.build | ||
README.md |
rukon: easy CSPRNG library
A lightweight library for accessing your OS's native CSPRNG.
The Rukon library lets you generate random numbers using your operating system. It's a better random number generator than std::random_device
and rand()
, producing secure random numbers.s
Installing / Getting Started
To set up the rukon library and get it running, follow these steps:
git clone https://winlogon.ddns.net/winlogon/rukon.git
cd rukon/
meson setup builddir
meson compile -C builddir
This will clone the repository, navigate into the project directory, set up the build environment, and compile the library.
Initial Configuration
No special configuration is required to use rukon. Ensure you have a C compiler and the necessary build tools installed.
Developing
To start contributing or modifying the project, clone the repository and set it up as follows:
git clone https://winlogon.ddns.net/winlogon/rukon.git
cd rukon/
meson setup builddir
meson compile -C builddir
Building
After making any changes to the code, rebuild the project with the following commands:
meson compile -C builddir
This command compiles the source code and updates the output library.
Deploying / Publishing
To deploy or publish the project, you can use the package manager or share the compiled binaries directly. For example:
meson install -C builddir
This command will install the library to the system-wide location.
Features
- Utilizes the native CSPRNG of the operating system.
- Offers an easy-to-use API for generating secure random numbers.
- Modular architecture separating C and C++ code.
- Supports both static and shared library builds.
Examples
I moved usage examples to its own examples folder. As of now, only the following languages I made examples for are:
- C
- Zig
- Rust
I'm planning on showing support for:
- Go
- (maybe) Java
- and more...
Contributing
Contributions are welcome! If you would like to help improve rukon, please fork the repository and use a feature branch. Pull requests are warmly accepted.
I follow the Linux kernel coding style, and I advise you to do the same to ensure consistent code, function naming, and other code basics.
Links
- Project homepage: https://winlogon.ddns.net/winlogon/rukon
- Repository: https://winlogon.ddns.net/winlogon/rukon
- Issue tracker: https://winlogon.ddns.net/winlogon/rukon/issues
- For sensitive bugs like security vulnerabilities, please contact me at
winlogon.exe@matrix.org
directly instead of using the issue tracker.
- For sensitive bugs like security vulnerabilities, please contact me at
- Related projects:
Licensing
The code in this project is licensed under the BSL-1.0.
Disclaimer: rukon is a fork of CSPRNG.