User:Anotheridiot/Iridium

From OSDev Wiki
Jump to navigation Jump to search

This article is a stub! This page or section is a stub. You can help the wiki by accurately contributing to it.

Iridium

File:N/A
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.