0

我需要构建一个 Python 应用程序来接收高度安全的数据,对其进行解密,并在数据库中进行处理和存储。我的服务器可能在世界任何地方,因此直接连接是不可行的。将数据从一台服务器安全传输到另一台服务器的最安全/最智能的方法是什么(想想政府/银行级别的安全性)。我知道这很模糊,但部分原因是不限制收到的答案的范围。

基本上,如果您在两家银行之间构建一个应用程序(这与银行无关,仅供参考),您将如何安全地传输数据?

抱歉,我还应该添加 SFTP 可能不会削减它,因为当它从另一个服务器通过安全数据传输 ping 时,这个 python 应用程序必须触发。

4

3 回答 3

1

传输和加密不必同时发生。如果加密正确,您几乎可以使用任何交付方式!

正确加密意味着使用随机生成的大密钥、使用 HMAC(在里面!加密)并检查重放攻击。还可能有拒绝服务攻击、定时攻击等;尽管这些也可能适用于任何加密连接。不止一次地检查无序、迟到的数据。您的“数据包”也有可能(再次取决于具体情况)泄漏数据(例如交易量等)。

在任何情况下,都不要制定自己的加密方案。

我认为公钥加密是值得的;这样,如果有人收集了加密数据的副本,然后攻击发送服务器,他们将没有解密数据所需的密钥。

您的行业(例如银行业)可能有一些标准,您需要遵守这些标准。

如果您没有正确实施这类事情,就会有非常严重的陷阱。如果您经营一家银行,请聘请安全专家。

于 2014-10-09T03:28:26.300 回答
1

将数据从一台服务器安全传输到另一台服务器的最安全/最智能的方法是什么(想想政府/银行级别的安全性)

这取决于您的威胁模型,但有时会使用站内 VPN 来传输这样的流量。

如果您想在协议堆栈中向上移动,那么与客户端固定服务器公钥的相互身份验证将是一个不错的选择。

相比之下,我曾经为一家美国投资银行执行安全架构工作。他们没有使用任何东西——他们认为数据中心之间的租用线路提供了足够的安全性。

于 2014-10-10T04:07:13.207 回答
0

有几个细节需要考虑,我想这个问题不够详细,无法提供一个直接的答案。但是,是的,我同意,只要您可以设置 VPN,VPN 选项绝对是一种安全的方式。

如果不是,SFTP 协议(​​不是 FTPS)将是下一个最佳选择,因为它符合 PCI-DSS(对于银行业务来说足够安全)和 HIPAA 合规(足够安全以传输医院记录)并且 - 与 FTPS 不同 - SFTP 协议是SSH 的子系统,它只需要在服务器端打开一个 TCP 端口 (22)。

于 2014-10-11T23:56:49.183 回答