加密有多安全?

3
让我先声明一下,我对加密一无所知。我理解公钥/私钥加密的基本概念,但我不知道它有多容易被破解,如果有可能的话。如果有人相信电影中的情节,那么加密数据可以在几小时内被一个拥有不错电脑的青少年破解。
我有一个客户想要通过电子邮件发送信用卡信息-当然是加密的,但我仍然对这个想法感到不太好。我觉得将信息存储在VPS上会更安全,但即使如此,这是一个未经管理的服务器,没有人看守它,也没有人了解安全方面的知识。
那么,有人能告诉我是否有安全的方法来存储和/或发送这些数据吗?
谢谢

3
通常情况下,虚拟专用服务器(VPS) 不太可能 符合有关信用卡数据的相关规定和法规(例如 PCI DSS,http://en.wikipedia.org/wiki/PCI_DSS)。如果您对这些规定没有深入了解,您需要要么获得这样的了解,要么雇用一个理解这些规定的专业人士。 - Nicholas Knight
@Nicholas:达到PCI合规性是一个完全的笑话,你肯定可以在VPS上做到。实际上,如果你每年的交易次数少于20,000次,他们甚至不会测试合规性,尽管你“必须遵守”(当然)。但这不是问题所在——这个客户想要信用卡数据加密并通过电子邮件发送给他,这让我感到害怕。我从来没有遇到过一个客户只是不想使用支付服务。 - Stomped
4个回答

8

破解一种合理的加密方案并不实际。更有可能的是,有人会得到密钥的副本。公钥具有优势,因为解密密钥根本不必在服务器上...如果从未存在于服务器上,则无法在该端妥协。

但是...这是信用卡数据。对于如何处理这些数据,存在着可以强制执行的法律标准,因此您最好查看它们所说的内容。这些标准规定了某些类型的加密以及各种其他安全实践。


2
这个问题及其回答(链接)应该会给你一个好的想法。最重要的是:大多数加密系统的弱点在于人们把钥匙留在柜台上。

0

安全性是相对的。它取决于需要保密多长时间以及你的对手是谁。实际上,如果你必须使用电子邮件,PGP加密应该足够安全。请查看EnigMail指南

您需要小心不要在整个链中的任何地方存储未加密的数据。此外,我不知道这是否符合支付处理规则。


0

正如其他用户所说,通常不是加密被破解了,而是密钥被盗了。如果我处于您的位置,并且“被迫”通过电子邮件发送信用卡信息,但我可以加密它,我会使用AES-128 CBC模式和PKCS5填充加密我的消息(在这种情况下,我认为您真的不需要担心初始化向量,但添加一个只会有帮助),并将需要见面的人的密钥写在纸上亲自交给他。问题在于有人窃取了密钥,而不是加密标准被破解。

假设全球最强大的超级计算机专门用于破解您的AES-128 CBC模式加密,其运行速度为93014 * 1 ^ 12 flops /秒。 (1 flop约为1个操作)假设一次AES解密尝试需要1000个flops(我认为这是一个很大的低估),平均需要2 ^ 127次尝试才能破解密钥和加密。

因此,平均破解所需时间为:(1000*2^127 flops)/(93014* 1^12 flops/s) 秒,即1.829199728×10²⁴秒,相当于~5.8×10¹⁶年的时间才能破解!那是远超过一百万亿年的时间!正如您所看到的,如果使用良好的算法和适当的密钥生成,您的密钥被盗是真正的问题,而不是加密被破解。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接