Re: XTS cipher mode for cluster file encryption

From: Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com>
To: Robert Haas <robertmhaas(at)gmail(dot)com>, Stephen Frost <sfrost(at)snowman(dot)net>
Cc: Bruce Momjian <bruce(at)momjian(dot)us>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: XTS cipher mode for cluster file encryption
Date: 2021-10-15 21:26:01
Message-ID: ff6b46d8-cf57-9fb2-d377-954de235e293@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 10/15/21 23:02, Robert Haas wrote:
> On Fri, Oct 15, 2021 at 3:22 PM Stephen Frost <sfrost(at)snowman(dot)net> wrote:
>> Specifically: The default cipher for LUKS is nowadays aes-xts-plain64
>>
>> and then this:
>>
>> https://gitlab.com/cryptsetup/cryptsetup/-/wikis/DMCrypt
>>
>> where plain64 is defined as:
>>
>> plain64: the initial vector is the 64-bit little-endian version of the
>> sector number, padded with zeros if necessary
>>
>> That is, the default for LUKS is AES, XTS, with a simple IV. That
>> strikes me as a pretty ringing endorsement.
>
> Yes, that sounds promising. It might not hurt to check for other
> precedents as well, but that seems like a pretty good one.
>

TrueCrypt/VeraCrypt uses XTS too, I think. There's an overview of other
FDE products at [1], and some of them use XTS, but I would take that
with a grain of salt - some of the products are somewhat obscure, very
old, or both.

What is probably more interesting is that there's an IEEE standard [2]
dealing with encrypted shared storage, and that uses XTS too. I'd bet
there's a bunch of smart cryptographers involved.

[1] https://en.wikipedia.org/wiki/Comparison_of_disk_encryption_software

[2] https://en.wikipedia.org/wiki/IEEE_P1619

> I'm not very convinced that using the LSN for any of this is a good
> idea. Something that changes most of the time but not all the time
> seems more like it could hurt by masking fuzzy thinking more than it
> helps anything.
>

I haven't been following the discussion about using LSN, but I agree
that while using it seems convenient, the consequences of some changes
not incrementing LSN seem potentially disastrous, depending on the
encryption mode.

regards

--
Tomas Vondra
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Gilles Darold 2021-10-15 21:42:40 Re: [PATCH] Proposal for HIDDEN/INVISIBLE column
Previous Message Andres Freund 2021-10-15 21:21:09 Re: XTS cipher mode for cluster file encryption