pgp_sym_encrypt函数使用的加密机制

时间:2018-02-28 18:57:34

标签: postgresql

我正在使用pgp_sym_encrypt函数来加密postgresql列中的数据。此功能使用的加密类型是什么?有没有办法改变加密类型?

1 个答案:

答案 0 :(得分:2)

直接来自documentation

  

<强> F.26.3.8。 PGP功能的选项

     

选项被命名为与GnuPG类似。选项的值应该是   在等号后给出;彼此分开选项   逗号。例如:

  pgp_sym_encrypt(data, psw, 'compress-algo=1, cipher-algo=aes256')
     

除convert-crlf之外的所有选项仅适用于加密   功能。解密函数从PGP数据中获取参数。

     

最有趣的选择可能是压缩算法和   Unicode的模式。其余的应该有合理的默认值。

     

F.26.3.8.1。密算法中

     

使用哪种密码算法。

     

值:bf,aes128,aes192,aes256(OpenSSL-only:3des,cast5)

     

默认值:aes128

     

适用于:pgp_sym_encrypt,pgp_pub_encrypt

     

F.26.3.8.2。压缩-ALGO

     

使用哪种压缩算法。仅在PostgreSQL出现时才可用   用zlib构建。

     

值:0 - 无压缩

     

1 - ZIP压缩

     

2 - ZLIB压缩(= ZIP加元数据和块CRC)

     

默认值:0

     

适用于:pgp_sym_encrypt,pgp_pub_encrypt

我认为它默认使用aes-128,但这可能取决于版本。至少从版本8.3开始就是aes-128。