gpt4 book ai didi

android - Ruby 和 Android 应用程序之间如何加密和解密数据?

转载 作者:行者123 更新时间:2023-11-29 21:48:11 25 4
gpt4 key购买 nike

我一直在开发一个使用 Ruby on Rails 的网络服务器应用程序和一个使用 Android 的客户端应用程序。 Web 服务器有一些客户端访问路由,无需身份验证。我想创建一个 token 来验证请求是否来自客户端。我想象这样的解决方案:

  1. 创建一个 key ,例如“stackoverflow;
  2. 在客户端和服务器应用程序中共享此 key ;
  3. 使用 AES 密码术和生成随机字符串函数 + key 生成 token ;
  4. 当客户端应用向服务器发送请求时,同时发送生成的 token ;
  5. 服务器使用共享 key 和 AES 密码术验证 token 是否有效。

这是我的疑惑:

  1. 这是在他们之间建立沟通的最佳方式吗?
  2. 是否有可以在两个系统中使用的 gem/api crypt 和 decrypt?

请不要犹豫,描述一个建议或例子来指导我 =)

提前致谢

最佳答案

更安全和标准的方法是使用 SSL 客户端证书。

为您的应用程序的每个新版本颁发客户端证书,确保使用只有您或您的签名 CA 拥有私钥的证书(即 CA 证书)对其进行签名。

将您的网络服务器设置为在允许连接之前需要客户端证书。设置 Web 服务器以根据您持有的 CA 证书再次验证证书。

这样就没有可以从您的应用程序中提取的“共享 secret ”。如果有人提取并窃取了客户端证书,请使用新证书发布应用的更新版本,然后将旧证书添加到 CA 的吊销列表中,或者只是告诉网络服务器阻止该特定证书。

无需编写 ruby​​、java 或 javascript 代码。

关于android - Ruby 和 Android 应用程序之间如何加密和解密数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15178895/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com