Xiphera contributes to Linux kernel

Xiphera's Linux driver for the XIP8001B TRNG (True Random Number Generator) Intellectual Property (IP) core has been added to the Linux kernel source tree.
Xiphera's Linux driver for the True Random Number Generator IP core can be found in the Linux kernel source tree.

The ability to create true random numbers is an essential requirement for modern cryptographic algorithms. One of the many applications of cryptography is Operating System (OS) security, which naturally creates a need for random numbers within the OS software. Linux has implemented its random number generation by using pseudorandom number generators, which need to be regularly seeded with entropy (randomness) to work properly and securely. Especially in embedded systems, the task of collecting sufficient amounts of entropy can be complicated. This is why Linux developers have created a mechanism for hardware random number generators to fill the kernel’s entropy pool. Xiphera’s Linux driver has been designed for this purpose.

Having a working Linux driver for the TRNG was considered to be of high importance ever since Xiphera started testing the product in the company’s own embedded systems. Especially for commercial purposes, the presence of a driver makes the TRNG much more appealing to customers, as it makes the integration and testing of the IP core easier. After the driver was programmed for internal purposes, it was time to start pushing the driver into the official source tree for the Linux kernel and making Xiphera one of the hundreds of Linux contributors. Having the driver in the source code makes it more accessible and easier to maintain while ensuring customers of the product’s high quality.

The process for introducing a new driver to the Linux kernel can be quite daunting, as the kernel development process is a meticulous one, with strict standards on what the code should look like, and what to include with it. This means that code that has been submitted, reviewed, and accepted into the kernel can be considered of high quality. Part of the operation included getting Xiphera into the kernel documentation’s vendor list, and becoming one of the approximately 400 organisations who contribute to the kernel each year.

With the new positive experience of a succesful Linux kernel submission, Xiphera has the tools and know-how to continue making developments to the Linux kernel in the future. The driver development capabilities that Xiphera has acquired can also be put to use in specific customer projects.

The project on behalf of Xiphera started in the beginning of this year. “The whole process of programming a Linux driver and getting it approved was an exciting new endavour for me”, describes Atte Tommiska, Xiphera’s developer assigned for the process. “Submitting your own work and code for the whole world to see did certainly make me quite nervous, but thankfully there weren’t really any major obstacles or problems after all. I’m pleased to have learned a lot during the process and having my name and code in the Linux kernel source tree is a nice accomplishment.”

Read more about Xiphera’s TRNG Crypto Cores here.

Read more
Cryptographic modules offer an all-inclusive cryptography package for customised security needs. This blog deep-dives into the benefits, implementations, and possible use cases of a hardware-based cryptographic module.
The new nQrux™ portfolio offers highly optimised and customisable security solutions with cryptographic operations implemented purely in hardware.
The IPsec IP core complements Xiphera’s Security Protocols offering, bringing proven security for the critical layers 2-4 of the OSI model.