我正在编写一个应用程序,它将使用用户的第三方站点凭据,以便我可以通过屏幕抓取他们的帐户来增加价值。
为此,我需要能够以可逆的加密方式安全地存储凭据,以便再次将其清除。
对我的MVP,这样做的安全(简便)方法是什么?我可以仅使用AES加密并使用复合密钥(主密钥+与用户帐户相关的盐)。
也许Hashicorp的保险柜就足够了吗?
要求另一种方式。对于抓取您银行帐户的产品,它们如何存储凭据?
谢谢大家
答案 0 :(得分:1)
要求另一种方式。对于抓取您银行帐户的产品,它们如何存储凭据?
他们不会抓取帐户。他们使用银行后端供应商提供的API或下载导出文件。
无论如何,您绝对不希望持有银行业用户名/密码。这是一个惊人的责任。如果帐户被黑客入侵,每个人都会看着您偿还损失。
答案 1 :(得分:0)
看看CryptProtectData / CryptUnprotectData对函数。也许可以解决您的问题。
答案 2 :(得分:0)
没有安全的方式来存储其凭据。所有方法都包括拥有“主密钥”以便能够将凭据反转为纯文本,而所有存储身份验证信息的安全方法都使用单向哈希(加盐!)。 Never encrypt credentials, hash them。
我想做的所有接近您想要的事情的唯一安全方法就是在刮擦时向用户询问其凭据,然后将该信息传递给刮擦器而不一路存储该信息。 。确保通过https
或类似方法执行此操作,并确保服务器不受服务器上运行的其他软件的内存检查的影响,这意味着您希望完全控制整个数据流。
这意味着您只能在用户登录到您的服务时访问用户数据。
简而言之,我会非常注意整个事情。