none
那公钥如何导出呢?私钥存储在服务器端?可以导出吗? RRS feed

答案

  • Hi,
       1.因为证书基于分对称加密算法的,就是包含公钥的数据文件,当然还有很多证书信息,所以导出公钥,就是直接导出证书。如果是要导出一起导出私钥,需要提供证书的保护密码,这个为了密钥的安全。你在制作的时候会要求你输入的密码,记住。这个文件为pfx后缀的文件,和cer后缀的证书文件不同,它包含私钥。
    2.客户端和服务端的消息是否加密,需要你提供设置,你不启用WCF安全,这里消息是不会给加密的。针对WCF里传输和消息安全模式有所不同。
    消息安全模式,是需要对Soap消息进行加密和签名。来保证消息的完整性和安全性。而传输安全模式,需要建立服务器和客户端建立会话,经过3次握手协议以后,客户端可服务端会商定签名的和加密的算法。然后来进行传输数据。WCF里你设置完毕服务器端证书以后,接下来的事情都是自动完成的。客户端在调用WCF的服务的时候,会先启动SSL会话要求。这个过程你可以搜索SSL相关的介绍文章,了解更具体的内容。
       WCF允许我们控制一些算法,我们可以设置一些安全相关的属性,另外可以自定义实现身份验证。比如指定hash算法,自定义USerName或X509证书验证方式。加密和解密的过程都是使用SSL合作TLS等规范。是一些比较成熟的标准合作微软已有的安全机制。消息在进入通道以前合作出通道以前都会有专门的组建负载消息的加密和解密工作,我们完全可以控制。除了配置文件简单的指定相关算法或者安全方式意外,WCF安全扩展提供了扩展的接口。
      关于安全的基础知识要好好了解,WCF的安全要深入学习的话,需要花费一些经历,涉及的知识点很多。有兴趣可以看看WSE3.0构建Web服务安全(1):WSE3.0安全机制与实例开发 。此论坛也有 关于安全和证书的更多讨论:
    http://social.microsoft.com/Forums/zh-CN/wcfzhchs/thread/34f10b1a-dede-4e4c-aa35-25fb4a655185
    http://social.microsoft.com/Forums/zh-CN/wcfzhchs/thread/9a525136-fae1-4abb-933c-8da89654509e
    http://social.microsoft.com/Forums/zh-CN/wcfzhchs/thread/504c498e-1572-415b-a0b0-6348617f1f3c

      希望以上能对你有些参考~
    Frank Xu Lei--谦卑若愚,好学若饥
    专注于.NET平台下分布式应用系统开发和企业应用系统集成
    Focus on Distributed Applications Development and EAI based on .NET
    欢迎访问老徐的中文技术博客:Welcome to My Chinese Technical Blog
    欢迎访问微软WCF中文技术论坛:Welcome to Microsoft Chinese WCF Forum
    欢迎访问微软WCF英文技术论坛:Welcome to Microsoft English WCF Forum
    2009年8月13日 10:31
    版主