Re: storing an explicit nonce

From: Ants Aasma <ants(at)cybertec(dot)at>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: Stephen Frost <sfrost(at)snowman(dot)net>, Antonin Houska <ah(at)cybertec(dot)at>, Robert Haas <robertmhaas(at)gmail(dot)com>, Sasasu <i(at)sasa(dot)su>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: storing an explicit nonce
Date: 2021-10-13 08:16:42
Message-ID: CANwKhkM4jQH=P+G7-LtmUw2wbtAPqOJx9VLv2cqc++9Qd7KZiw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, 13 Oct 2021 at 02:20, Bruce Momjian <bruce(at)momjian(dot)us> wrote:

> On Wed, Oct 13, 2021 at 12:48:51AM +0300, Ants Aasma wrote:
> > On Wed, 13 Oct 2021 at 00:25, Bruce Momjian <bruce(at)momjian(dot)us> wrote:
> >
> > On Tue, Oct 12, 2021 at 11:21:28PM +0300, Ants Aasma wrote:
> > > Page encrypting to all zeros is for all practical purposes
> impossible to
> > hit.
> > > Basically an attacker would have to be able to arbitrarily set the
> whole
> > > contents of the page and they would then achieve that this page
> gets
> > ignored.
> >
> > Uh, how do we know that valid data can't produce an encrypted
> all-zero
> > page?
> >
> >
> > Because the chances of that happening by accident are equivalent to
> making a
> > series of commits to postgres and ending up with the same git commit
> hash 400
> > times in a row.
>
> Yes, 256^8192 is 1e+19728, but why not just assume a page LSN=0 is an
> empty page, and if not, an error? Seems easier than checking if each
> page contains all zeros every time.
>

We already check it anyway, see PageIsVerifiedExtended().

--

Ants Aasma
Senior Database Engineerwww.cybertec-postgresql.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Boris Korzun 2021-10-13 08:22:49 Re: Inconsistent behavior of pg_dump/pg_restore on DEFAULT PRIVILEGES
Previous Message Bharath Rupireddy 2021-10-13 08:14:38 Re: should we allow users with a predefined role to access pg_backend_memory_contexts view and pg_log_backend_memory_contexts function?gr