因为Web Service是靠SOAP协议进行传输信息的,所以对Web Service的加密就是对SOAP消息进行加密,通过SOAP协议扩展,可以实现这一点。数据在网络上传输,重要的一点是保证它的正确 性和完整性,并且要防止被无意或恶意的修改,窃取。Web Service中提供的加密模式有多少呢?怎样实现的呢?
加密将防止数据被查看或修改,并在原本不安全的信道上提供安全的通讯信道。例如,可以使用加密算法对数据进行加密,在加密状态下传输数据,然后由预定的接收方对数据进行解密。如果第三方截获了加密的数据,将难以解密该数据。
在一个使用加密的典型场合中,双方(小红和小明)在不安全的信道上通讯。小红和小明想要确保任何可能正在侦听的人无法理解他们之间的通讯。而且,由于小红和小明相距遥远,因此小红必须确保她从小明处收到的信息没有在传输期间被任何人修改。此外,她必须确定信息确实是发自小明而不是有人模仿小明发出的。
加密用于达到以下目的:
1保密性:防止用户的标识或数据被读取。 2数据完整性:防止数据被更改。
3身份验证:确保数据发自特定的一方。
为了达到这些目的,小红和小明使用算法和惯例的组合(称作加密基元)来创建加密方案。下表列出了加密基元及它们的用法。
加密基元 使用
私钥加密(对称加密) 对数据执行转换,使第三方无法读取该数据。此类型的加密使用单个共享的机密密钥来加密和解密数据。
公钥加密(不对称加密) 对数据执行转换,使第三方无法读取该数据。此类加密使用公钥/私钥对来加密和解密数据。
加密签名 通过创建对特定的一方唯一的数字签名来确保数据发自该特定方。此过程还使用哈希函数。
加密哈希 将数据从任意长度映射为定长字节序列。哈希在统计上是唯一的;不同的双字节序列不会哈希为同一个值。
私钥加密
私钥加密算法使用单个私钥来加密和解密数据。由于具有密钥的任意一方都可以使用该密钥解密数据,因此必须保护密钥不被未经授权的代理得到。私钥加密也称为对称加密,原因是同一密钥既用于加密又用于解密。私钥加密算法非常快(与公钥算法相比)并特别适合于对大型数据流执行加密转换。
通常,私钥算法(称为块密码)用于一次加密一个数据块。块密码(如 RC2、DES、TrippleDES 和 Rijndael)通过加密将 n 字节的输入块转换为加密字节的输出块。如果要加密或解密字节序列,必须逐块进行。由于 n 的大小很小(对于 RC2、DES 和 TripleDES,n = 8 字节;n = 16 [默认值];n = 24;对于 Rijndael,n = 32),因此必须对大于 n 字节的值一次加密一个块
加密将防止数据被查看或修改,并在原本不安全的信道上提供安全的通讯信道。例如,可以使用加密算法对数据进行加密,在加密状态下传输数据,然后由预定的接收方对数据进行解密。如果第三方截获了加密的数据,将难以解密该数据。
在一个使用加密的典型场合中,双方(小红和小明)在不安全的信道上通讯。小红和小明想要确保任何可能正在侦听的人无法理解他们之间的通讯。而且,由于小红和小明相距遥远,因此小红必须确保她从小明处收到的信息没有在传输期间被任何人修改。此外,她必须确定信息确实是发自小明而不是有人模仿小明发出的。
加密用于达到以下目的:
1保密性:防止用户的标识或数据被读取。 2数据完整性:防止数据被更改。
3身份验证:确保数据发自特定的一方。
为了达到这些目的,小红和小明使用算法和惯例的组合(称作加密基元)来创建加密方案。下表列出了加密基元及它们的用法。
加密基元 使用
私钥加密(对称加密) 对数据执行转换,使第三方无法读取该数据。此类型的加密使用单个共享的机密密钥来加密和解密数据。
公钥加密(不对称加密) 对数据执行转换,使第三方无法读取该数据。此类加密使用公钥/私钥对来加密和解密数据。
加密签名 通过创建对特定的一方唯一的数字签名来确保数据发自该特定方。此过程还使用哈希函数。
加密哈希 将数据从任意长度映射为定长字节序列。哈希在统计上是唯一的;不同的双字节序列不会哈希为同一个值。
私钥加密
私钥加密算法使用单个私钥来加密和解密数据。由于具有密钥的任意一方都可以使用该密钥解密数据,因此必须保护密钥不被未经授权的代理得到。私钥加密也称为对称加密,原因是同一密钥既用于加密又用于解密。私钥加密算法非常快(与公钥算法相比)并特别适合于对大型数据流执行加密转换。
通常,私钥算法(称为块密码)用于一次加密一个数据块。块密码(如 RC2、DES、TrippleDES 和 Rijndael)通过加密将 n 字节的输入块转换为加密字节的输出块。如果要加密或解密字节序列,必须逐块进行。由于 n 的大小很小(对于 RC2、DES 和 TripleDES,n = 8 字节;n = 16 [默认值];n = 24;对于 Rijndael,n = 32),因此必须对大于 n 字节的值一次加密一个块