Re: Encoding protection for pgcrypto

Поиск
Список
Период
Сортировка
От cary huang
Тема Re: Encoding protection for pgcrypto
Дата
Msg-id 170751799724.1131.10362204887069158737.pgcf@coridan.postgresql.org
обсуждение исходный текст
Ответ на Encoding protection for pgcrypto  (shihao zhong <zhong950419@gmail.com>)
Ответы Re: Encoding protection for pgcrypto  (shihao zhong <zhong950419@gmail.com>)
Список pgsql-hackers
The following review has been posted through the commitfest application:
make installcheck-world:  tested, failed
Implements feature:       not tested
Spec compliant:           not tested
Documentation:            not tested

Hello

I had a look at your patch, which applies fine to PostgreSQL master. I noticed that the new regression tests you have
addedto test utf-8 encoding fails on my setup (make check) with the following diffs:
 

---------------------------------------
@ -13,6 +13,7 @@
 =ivrD
 -----END PGP MESSAGE-----
 '), '0123456789abcdefghij'), 'sha1');
+ERROR:  invalid byte sequence for encoding "UTF8": 0x91
 -- Database encoding protection.  Ciphertext source:
 -- printf '\xe0\xe0\xbff' | gpg --batch --passphrase mykey --textmode --armor --symmetric
 select pgp_sym_decrypt(dearmor('
@@ -23,5 +24,5 @@
 =QKy4
 -----END PGP MESSAGE-----
 '), 'mykey', 'debug=1');
+ERROR:  invalid byte sequence for encoding "UTF8": 0xe0 0xe0 0xbf
 \quit
-\endif
---------------------------------------

I am not sure but it seems that you intentionally provide a text input that would produce a non-utf-8 compliant
decryptedoutput, which triggers the error from within "pg_verifymbstr()" call that you have added in pgp-pgsql.c? Are
theerrors expected in your new test case? If so, then the tests shall pass instead because it has caught a invalid
encodingin decrypted output.
 

Generally, I am ok with the extra encoding check after text decryption but do not think if it is a good idea to just
errorout and abort the transaction when it detects invalid encoding character. text decryption routines may be used
quitefrequently and users generally do not expect them to abort transaction. It may be ok to just give them a warning
aboutinvalid character encoding. 
 

thanks
--------------------
Cary Huang
Highgo Software - Canada
www.highgo.ca

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Dave Cramer
Дата:
Сообщение: Re: [PATCH] Add native windows on arm64 support
Следующее
От: "David G. Johnston"
Дата:
Сообщение: Re: Function and Procedure with same signature?