An Overview of the Linux Kernel Crypto Subsystem - Boris Brezillon, Free Electrons
Channel: The Linux Foundation
Date: 2017-10-24

An Overview of the Linux Kernel Crypto Subsystem - Boris Brezillon, Free Electrons

The Linux kernel has long provided cryptographic support for in-kernel users (like the network or storage stacks) and has been pushed to open these cryptographic capabities to user-space along the way.

But what is exactly inside this subsystem, and how can it be used by kernel users? What is the official userspace interface exposing these features and what are non-upstream alternatives? When should we use a HW engine compared to a purely software based implementation? What's inside a crypto engine driver and what precautions should be taken when developing one?

These are some of the questions we'll answer throughout this talk, after having given a short introduction to cryptographic algorithms.

About Boris Brezillon
Since 2014, Boris works at Free Electrons, a company offering development, consulting and training services to embedded Linux system developers worldwide. He has been working on embedded systems since 2008, mostly Linux on ARM. Boris has written and upstreamed a Linux kernel driver for the Marvell CESA cryptographic engine, he is the maintainer of the MTD NAND subsystem, and has contributed to support for Atmel and Allwinner ARM SoCs in the Linux kernel.