【发布时间】:2009-11-12 20:31:07
【问题描述】:
我想实现以下场景 客户端应用程序将具有以下功能 1)获取图像作为参数 2)将其转换为数组的字节 3)加密它 调用 Web 服务并将这个数组字节传递给该服务
服务将有一个功能,它将 1)接收数组的字节作为参数 2)解密它 3)从数组的那个字节生成图像。
1)我应该使用什么来加密数据以及如何有任何示例应用程序或文章可以帮助我。 2)对称或非对称加密 3)我将面临的任何问题
【问题讨论】:
我想实现以下场景 客户端应用程序将具有以下功能 1)获取图像作为参数 2)将其转换为数组的字节 3)加密它 调用 Web 服务并将这个数组字节传递给该服务
服务将有一个功能,它将 1)接收数组的字节作为参数 2)解密它 3)从数组的那个字节生成图像。
1)我应该使用什么来加密数据以及如何有任何示例应用程序或文章可以帮助我。 2)对称或非对称加密 3)我将面临的任何问题
【问题讨论】:
根据您是否遇到密钥交换问题,您可以使用对称(更快)或非对称(不需要安全通道来交换密钥)加密。无论哪种情况,您都应该使用经过充分测试的加密库,而不是尝试从加密原语中推出自己的加密库。
更重要的是,您需要问自己为什么要自己进行这种加密,而不是让 HTTPS 处理它。如果您只需要一个安全通道,那么您几乎不可能比 HTTPS 做得更好。
【讨论】:
如果加密的唯一目的是通过网络传递对象 - 而不是使用 WCF 提供的标准加密(或您使用的任何通信基础)。 你不需要自己处理。
在 WCF 中,您必须安装证书,因此如果客户端数量不受限制,这不是一个好习惯。
如果你想实现自己的加密 - 有很多 API 可以实现 - 但你真正的问题将是密钥管理(这实际上与以前的问题相同......)
对于选择对称或非对称 - 再次 - 它将来自您的密钥管理选项
【讨论】: