User:Anotheridiot/Iridium
|
|
|
Iridium | |
Yet to take a photo | |
| Developed by: | apixeldev |
| Kernel: | Monolithic |
| Task Model: | Preemptive multitasking |
| Platform(s): | x86_64-v1 |
| Language(s): | C99, assembly |
| Website: | stackunderflow.org |
| Github: | iridiumkern/kernel |
| License: | GPLv3 |
Iridium is my custom hobbyist OS written from scratch (outside of using limine). It has a CSPRNG, VMM, and PMM. The CSPRNG is by far one of the more impressive parts of my system, it is only 80 lines of code, however it does rely on an outside hash (SHA512) defined in another file and header to function. All inputs and outputs are wiped from the stack the moment they are no longer needed. The SHA512 implementation was taken from a public domain source and stays under public domain, however the rest is under GPLv3 (except for limine.h which stays under the same license).
The kernel is quite limited in userspace capabilities, while it does technically have a userspace, it is not very effective at its job, as its a single process that can only really print a string and dump a random CSPRNG output to the screen, and the program is a raw binary. Though the limited userspace, it is still under heavy development.
It also features me messing around with cryptography outside of a CSPRNG, mostly what I call SSS (Stateless Signing System), which is as the name implies, a stateless signing system, based around SHA512 and WOTS, but it is still stateless as the place in the merkle hypertree is determined based on the SHA512 of the input.
