首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于KeyCzar的安卓非对称加密

基于KeyCzar的安卓非对称加密
EN

Stack Overflow用户
提问于 2013-11-17 10:19:07
回答 2查看 1.1K关注 0票数 2

我想要创建一个应用程序,用服务器的公钥加密服务器的消息。我想使用KeyCzar,但如果你有更好的或其他好的想法,我会很高兴听到。

我的问题:

  1. 应用程序必须保存公钥。我应该把它放在哪里?
  2. 如何使用此公钥加密消息?我没有找到非对称加密功能。(应用程序将加密对称密钥,数据将由对称密钥加密)

顺便说一下,我必须使用公钥,因为来自同一个发件人的消息不应该由收件人链接。

请参考和举例说明这种混合加密,甚至仅仅使用公钥加密方案(使用KeyCzar或其他推荐的工具)。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-18 15:48:34

对于Keyczar,混合加密api在SessionCrypter中。

C#版本文档中有一些关于它的更多信息,大部分应该适用于java。

Keyczar将将所有的键存储在磁盘上的密钥集中,该密钥集默认允许键旋转。但我看到它被修改为从jar资源加载密钥。

票数 1
EN

Stack Overflow用户

发布于 2013-11-17 12:03:15

我会按顺序回答你的问题:

  1. 你把钥匙放在哪里取决于你自己。也许你永远不想更新它。在这种情况下,您可以将其存储为资源,甚至是“硬编码”。在这种情况下,您必须为您的应用程序创建一个更新来更新它。公钥是公共的,所以没有必要保护它们的安全。另一方面,您可能需要添加一些代码来检查您的信任存储是否未被更改。您也可以使用类似于JKS的Java,但是在这种情况下,您需要创建一个证书链。仅仅将它们发送到应用程序并不是一个好主意;您需要一个安全的路径来避免中间人的攻击。
  2. 使用RSA的非对称加密当然是在PKCS#1标准中定义的(在Sun中实现,在Java中使用Cipher实现)。定义了两种方案: PKCS#1 v1.5方案和OAEP方案。后者更安全。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20029552

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档