Re: XTS cipher mode for cluster file encryption - Mailing list pgsql-hackers

From Sasasu
Subject Re: XTS cipher mode for cluster file encryption
Date
Msg-id 4b73c57e-0941-9e66-ea7e-087793c4c927@sasa.su
Whole thread Raw
In response to Re: XTS cipher mode for cluster file encryption  (Robert Haas <robertmhaas@gmail.com>)
Responses Re: XTS cipher mode for cluster file encryption  (Robert Haas <robertmhaas@gmail.com>)
Re: XTS cipher mode for cluster file encryption  (Stephen Frost <sfrost@snowman.net>)
List pgsql-hackers
On 2021/10/19 00:37, Robert Haas wrote:
> I think what we ought to be doing at
> this point is combining our efforts to try to get some things
> committed which make future work in this area committed - like that
> patch to preserve relfilenode and database OID, or maybe some patches
> to drive all of our I/O through a smaller number of code paths instead
> of having every different type of temporary file we write reinvent the
> wheel.

A unified block-based I/O API sounds great. Has anyone tried to do this 
before? It would be nice if the front-end tools could also use these API.

As there are so many threat models, I propose to do the TDE feature by a 
set of hooks. those hooks are on the critical path of IO operation, add 
the ability to let extension replace the IO API. and also load extension 
when initdb, single-mode, and in front-end tools.
This sounds Like using $LD_PRELOAD to replace pread(2) and pwrite(2), 
which widely used in folder based encryption. but the hook will pass 
more context (filenode, tableoid, blocksize, and many) to the under 
layer, this hook API will look like object_access_hook.
then implement the simplest AES-XTS. and put it to contrib. provide a 
tool to deactivate AES-XTS to make PostgreSQL upgradeable.

I think this is the most peaceful method. GCM people will not reject 
this just because XTS. and XTS people will satisfied(maybe?) with the 
complexity. for performance, just one more long-jump compare with 
current AES-XTS code.

Attachment

pgsql-hackers by date:

Previous
From: vignesh C
Date:
Subject: Re: Added schema level support for publication.
Next
From: "Bossart, Nathan"
Date:
Subject: Re: parallelizing the archiver