Re: libpq compression - Mailing list pgsql-hackers

From Konstantin Knizhnik
Subject Re: libpq compression
Date
Msg-id 088ce09d-87b3-75a5-70d9-5f66b96494ca@postgrespro.ru
Whole thread Raw
In response to Re: libpq compression  (Andres Freund <andres@anarazel.de>)
List pgsql-hackers

On 08.02.2019 10:14, Andres Freund wrote:
> Hi,
>
> On 2018-03-30 15:53:39 +0300, Konstantin Knizhnik wrote:
>> Taken in account that vulnerability was found in SSL compression and so
>> SSLComppression is considered to be deprecated and insecure
>> (http://www.postgresql-archive.org/disable-SSL-compression-td6010072.html),
>> it will be nice to have some alternative mechanism of reducing libpq
>> traffic.
>>
>> I have implemented some prototype implementation of it (patch is attached).
>> To use zstd compression, Postgres should be configured with --with-zstd.
>> Otherwise compression will use zlib unless it is disabled by --without-zlib
>> option.
>> I have added compression=on/off parameter to connection string and -Z option
>> to psql and pgbench utilities.
>> Below are some results:
> I think compression is pretty useful, and I'm not convinced that the
> threat model underlying the attacks on SSL really apply to postgres. But
> having said that, have you done any analysis of whether your
> implementation has the same issues?

Sorry, I am not an expert in security area, so I cannot perform analysis 
whether using compression in SSL protocol
is vulnerable and is it really applicable to libpq communication between 
Postgres client and server.
The main idea of compression implementation at libpq level was not to 
solve this possible vulnerability
(I am also not convinced that such kind of attack is applicable to 
postgres client-server communication)
but reduce traffic without requirement to use SSL (which may not be 
possible or convenient because of many other reasons
not only related with potential vulnerability). Also I believe (although 
I have not performed this test yet)
that zstd compression is much more efficient than one used in SSL both 
in speed and compression ratio.


-- 
Konstantin Knizhnik
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company



pgsql-hackers by date:

Previous
From: John Naylor
Date:
Subject: Re: use Getopt::Long for catalog scripts
Next
From: "Tsunakawa, Takayuki"
Date:
Subject: RE: speeding up planning with partitions