1.老兄13M算个啥,我从数据库检索图片一个form就80多M,主要是公共语言运行库占内存。2.密钥需要通过Socket发送,CA需要安装。

解决方案 »

  1.   

    1. 参见我的blog: http://blog.joycode.com/qqchen/posts/16434.aspx2. >> 为了使此系统运行,小红必须对除小明外的所有人保密原始的哈希值。
       这个说法是不完整的。真正的保密部分是通过非对称加密RSA实现的:发送方会用自己的Private Key加密这个Hash值,加密的结果用Public Key解密就可以看到。这个加密的结果会和整个消息一起发送。如果需要修改这个Hash值,你必须得到发送者的Private Key。
       这里使用一个Hash值而不是加密整个消息的原因是性能,加密/解密一个定长的Hash值要快得多。
      

  2.   

    知秋一叶:要是另外一个人也截获public key 和加密结果和整个消息,那该如何?能不能结合网上银行的数字签名过程,讲解一下整个过程(我现在有点糊涂),非常感谢!
      

  3.   

    数字签名的目的不是保证传输消息的保密性,只是保证消息的数据完整。
    截获public key不足以修改消息内容。就算截获了public key, 加密结果和整个消息,如果要修改消息的内容,那么就必须:1) 修改消息,并且计算出新的Hash。2) 用*** private  key ***给这个Hash加密。2) 把新生成的消息发送给接受方。因为Private key从来就没有在wire上出现,hacker得不到private key就不能完成上面的第二步。