【问题标题】:Private and Public Key私钥和公钥
【发布时间】:2013-07-09 09:48:40
【问题描述】:

当我创建一个用户时,我将创建一个私钥和公钥。公钥是用户的令牌 ID。私钥将用于数据的加密和解密。

当用户登录时,我的 Android 应用将调用 REST Web 服务,验证后将返回私钥和公钥。然后使用私钥应用程序可以创建一个签名。

这是正确的方法吗?我只是使用 HTTP 而不是 https。

【问题讨论】:

    标签: java android security


    【解决方案1】:

    简短的回答:不

    首先,您通过不受保护的 HTTP 传输私钥。

    其次,完全不清楚您想要使用公钥/私钥实现什么。从您的描述中,我了解到您想将其用于身份验证和签名。但是为什么私钥会保存在服务器上呢?

    通常情况正好相反:客户端拥有公钥和私钥。它将公钥发送给任何想要但私钥永远不会离开设备的人!

    【讨论】:

    【解决方案2】:

    这是正确的方法吗?

    没有。

    我只是使用 HTTP 而不是 https。

    为什么?我不明白为什么你不像其他人一样只使用 HTTPS。这是一个已解决的问题。

    纠正你的错误陈述:

    1. 私钥仅用于解密数据和创建数字签名。
    2. 公钥用于加密数据和验证数字签名。
    3. 公钥不能用作用户令牌,因为它是公开的,错误的。

    您需要了解更多关于 PKI 的知识。

    【讨论】:

    • 嗨,谢谢,这就是我问这个问题的原因,因为我对这个话题知之甚少,我只想指出正确的方向。
    猜你喜欢
    • 2011-07-19
    • 1970-01-01
    • 2016-03-27
    • 2016-02-03
    • 1970-01-01
    • 2017-09-20
    • 2017-01-27
    • 2011-06-21
    • 1970-01-01
    相关资源
    最近更新 更多