• Tom Caputi's avatar
    Illumos Crypto Port module added to enable native encryption in zfs · 0b04990a
    Tom Caputi authored
    
    
    A port of the Illumos Crypto Framework to a Linux kernel module (found
    in module/icp). This is needed to do the actual encryption work. We cannot
    use the Linux kernel's built in crypto api because it is only exported to
    GPL-licensed modules. Having the ICP also means the crypto code can run on
    any of the other kernels under OpenZFS. I ended up porting over most of the
    internals of the framework, which means that porting over other API calls (if
    we need them) should be fairly easy. Specifically, I have ported over the API
    functions related to encryption, digests, macs, and crypto templates. The ICP
    is able to use assembly-accelerated encryption on amd64 machines and AES-NI
    instructions on Intel chips that support it. There are place-holder
    directories for similar assembly optimizations for other architectures
    (although they have not been written).
    Signed-off-by: default avatarTom Caputi <tcaputi@datto.com>
    Signed-off-by: default avatarTony Hutter <hutter2@llnl.gov>
    Signed-off-by: default avatarBrian Behlendorf <behlendorf1@llnl.gov>
    Issue #4329
    0b04990a
.gitignore 802 Bytes