如何保护存储的用户数据:电话号码?

发布于 2024-12-28 08:01:09 字数 288 浏览 2 评论 0原文

我想构建一个基本上是短信订阅服务的应用程序。

用户通过我的网站提交电话号码。我向他们发送带有密钥的确认文本,如果他们正确输入密钥,那么他们就会被订阅,此后每天我都会向他们发送带有特定消息的文本,直到他们取消订阅。

问题:我想以我(开发人员或存储层管理员)无法查看这些电话号码的方式存储这些电话号码,以保护隐私。我不能只是将它们散列存储,那么我的应用程序如何读取它们来发送短信?我该怎么做?

编辑:这既是一个安全问题,也是一个隐私问题...我希望侵入我系统的人无法获取任何电话号码,即使他们拥有数据库的完全访问权限。

I want to build an app that is basically a subscription service for text messages.

User submits a phone number via my site. I send them a confirmation text with a key, and if they correctly enter the key, then they are subscribed, and every day thereafter I will send them a text with a particular message until they unsubscribe.

Question: I want to store these phone numbers in a way that I (the developer or storage layer administrator) can't view these phone numbers, to preserve privacy. I can't just stored them hashed, then how does my app read them to send the text message? How do I do this?

Edit: This is both a security and privacy question... I want someone who hacks into my system to not be able to get any of the phone numbers, even if they have full access to the database.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

以酷 2025-01-04 08:01:09

当系统上的软件可以解密它们时,任何有足够权限访问系统的人都可以解密。您能做的最好的事情就是通过为实际消息传递部分使用专用系统来降低风险。通过使消息传递成为该系统唯一可以做的事情,您可以限制侵入系统的选择。然后,通过使用公钥/私钥加密,消息传递系统将成为唯一需要解密密钥的系统。实际注册用户或更改电话号码的系统只需要加密密钥。

现在,如果您想进一步保护解密密钥,您可以通过设置无人知道的密码来使管理员无法访问该系统,并且为了更好的措施,您可以禁用所有登录方法。哦,并确保密钥仅存在于内存中而不是磁盘上!

如果该消息系统出现故障,您将需要启动一个需要密钥的新消息系统。因此,您希望将钥匙的副本保存在多个锁后面的安全位置,不同的人拥有钥匙。然后,这些人可以监督该密钥是否正确输入到新系统中,而无需任何其他人制作其密钥的任何副本,并且之后所有登录都将被正确禁用。

When software on the system can decrypt them so can anyone with sufficient access to the system. The best you can do is to reduce the risk by using a dedicated system for the actual messaging part. By making messaging the only thing this system can do you limit the options of hacking into the system. Then by using a public/private key encryption the messaging system would be the only system that needs the decryption key. Systems for actually registering users or changing the phone numbers would only require the encryption key.

Now if you want to protect the decryption key any further you could make this system inaccessible to admins by setting a password no one knows and for good measure you could disable all login methods. Oh and make sure the key only exists in memory NOT ON DISK!

In case this messaging system ever goes down you will need to bring up a new messaging system for which you need the key. So you want to have a copy of they key in a secure location behind multiple locks to which different people have the key. These people then can oversee that key is properly entered into the new system without anyone else making any copies of they key and that afterwards all logins are properly disabled.

高跟鞋的旋律 2025-01-04 08:01:09

我认为加密是你唯一的选择。您必须加密电话号码,但只允许软件/服务应用程序访问密钥。您可以将密钥存储在异地系统上,并让应用程序通过 SSH 或 SSL 检索仅将其存储在内存中的密钥。这并不是说密钥对管理员来说是 100% 安全的,但它们只是电话号码,无法想象有人为手机号码花费大量精力。

I'm thinking encryption is your only bet. Your going to have to encrypt the phone numbers but only allow the software/service apps to have access to the key. You could store the key on a off site system and have the app via SSH or SSL retrieve the key store it in memory only. That's not to say the key is 100% safe from the administrators but they are just phone numbers can't image someone spending a-lot of effort for cell numbers.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文