最近一直在研究Web Service服务安全的相关内容,对什么认证、签名啦一直都比较迷惑,还好现在有点明白了,总结一下。
从web service的应用场景来说,在信息交互过程中,主要需要从以下三方面进行考虑:
保密性、完整性、真实性
保密性就需要加密技术,有对称加密(symmetric encryption)和非对称加密(asymmetric encryption)。其中对称加密常用算法是DES,非对称加密算法有RSA、DSA等。
谈到加密,得记住两句话:
公钥加密,私钥解密
私钥签名,公钥认证
完整性的含义就不解释了,用到消息摘要(Message-digest)算法,比如:MD5、SHA-1。
真实性就涉及数字签名和数字证书的概念了,可以参考阮大神的文章:
http://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_signature.html