繁体   English   中英

带HSM的“ pgp_sym_encrypt”和“ pgp_sym_decrypt”机制(硬件安全模块)

[英]‘pgp_sym_encrypt’ and ‘pgp_sym_decrypt’ mechanism with HSM (hardware security module)

我想用HSM(硬件安全模块)替换PostgreSQL加密功能'pgp_sym_encrypt'和'pgp_sym_decrypt'机制。 我可以实现它以用HSM替换现有算法吗?

如果您的客户要求您付款,请您进行一些研究和研究,而不仅仅是问Stack Overflow。

pgp_sym_函数位于contrib/pgcrypto/pgp-pgsql.c 他们对包装decrypt_internal ,并在其周围露出的职能转pgp.h并在实施pgp*.c文件。

您会看到pgcrypto具有自己的OpenPGP实现。 这意味着它没有将GnuPG用作库,因此不能简单地直接使用GnuPG对硬件安全模块的支持。

如果要支持HSM,则需要在pgcrypto扩展中自己实现它。 您可能可以使用libgcryptGPGME功能来帮助您,和/或使用OpenSSL中的功能。 这取决于您使用的HSM。 它可能只是一个可以满足您大部分需求的客户端库。

如果HSM的客户端库具有所需的功能,则可以使用PostgreSQL用户定义的函数包装该库并将其作为新的contrib模块公开给SQL,这可能会更简单。

无论哪种方式,您都必须进行大量阅读和大量研究。 您将需要了解C编程语言并熟悉使用它。 您将需要了解PostgreSQL中用户定义函数的工作方式。 如果您无法管理这些工作,则需要将工作分包给从事此工作的人员,让他们访问有问题的HSM样本,并为他们支付时间。 (不,我不是去上班,我已经受够了)。

可以对许多HSM进行编程,其中某些无疑是图灵完成的,并且具有足够的内存来执行加密功能(无论可能是什么)。 因此答案是“是”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM