混合移动应用程序中的混合密码学

Posted

技术标签:

【中文标题】混合移动应用程序中的混合密码学【英文标题】:Hybrid Cryptography in hybrid mobile application 【发布时间】:2017-10-17 06:50:20 【问题描述】:

我想使用 javascript 在客户端实现混合加密。我找到了this 用于服务器端编码的教程。现在我完成了服务器端的部分,但停留在客户端开发中。是否有任何预构建的cordova / javascript lib可用于此?我正在使用 sencha touch 框架进行前端开发。

【问题讨论】:

我目前正在为 JavaScript (github.com/juhoen/hybrid-crypto-js) 开发混合 RSA+AES 加密库。它可能对你有帮助,请随时 fork :) 【参考方案1】:

您可以使用https://github.com/brix/crypto-js

用于客户端数据解密。

但是,当将响应发送回客户端时,您必须 将加密数据+加密密钥与单个响应结合起来 一种分隔符并在客户端检索相同然后解密 他们。我可以建议的一种简单做法是发送响应 以下 JSON 格式:


  data: encrypted_data_with_dynamically_generated_key,
  key: dynamically_generated_key_encrypted_with_client_private_key

有了这个,你不需要放置数据分隔符来从数据中获取键和数据。

此外,如果您想要另一层安全性来安全地存储客户端密钥,您可以使用以下 cordova 插件:https://github.com/Crypho/cordova-plugin-secure-storage

【讨论】:

以上是关于混合移动应用程序中的混合密码学的主要内容,如果未能解决你的问题,请参考以下文章

如何用ionicframework进行混合移动应用开发

如何在 iPhone 上以调试/开发模式运行我的混合移动应用程序?

H5混合开发

文档重新:在 iOS 上混合 Web 和移动应用 Google Analytics ID?

混合移动应用程序是不是支持推送通知?

使用 Cordova 进行混合移动应用程序开发