跳转到内容

XML Encryption

维基百科,自由的百科全书

这是本页的一个历史版本,由27.9.32.169留言2012年9月28日 (五) 12:59编辑。这可能和当前版本存在着巨大的差异。

可扩展标记语言加密(英文:XML Encryption 英文缩写:XML-Enc),是一个万维网联盟推荐标准,定义任何数据进行加密,并以可扩展标记语言的方式描述加密后的内容。

可扩展标记语言加密可被用于各种类型数据的加密,“可扩展标记语言加密”使用了可扩展标记语言的元素(“加密的数据”或“加密的匙”元素)包含或引用密文,密钥信息和加密算法。

当对可扩展标记语言元素或元素的内容进行加密时,在加密后的可扩展标记语言文档中,“加密的数据”元素将替代该元素或内容。当对任意数据进行加密时,“加密的数据”元素可以成为新的可扩展标记语言文档的根元素,或称为应用选定的可扩展标记语言文档的子元素。

可扩展标记语言签名和“可扩展标记语言加密”都使用了“匙信息”元素,或者作为“签署了的信息”元素、“加密的数据”元素或“加密的匙”元素的子元素出现,并为接收者提供对签名进行验证或对加密数据进行解密所需的密钥信息。

“匙信息”元素是可选的,它可以附加在消息上,或者通过一个安全通道传送。

可扩展标记语言文件的加密细度

例子壹

<加密的数据
	xmlns='http://c996387762.xanga.com/'>
	<加密方法/>
	<ds:匙信息>
		<加密的匙>
		<协议方法>
		<ds:匙名>
		<ds:检索方法>
		<ds:*>
 	</ds:匙信息>
	<密码数据>
		<密码值>
		<密码参考>
	</密码数据>
	<加密属性>
</加密的数据>

在互联网上的支付交易:

<?xml
	version='1.0'?>
<付款信息
	xmlns='http://c996387762.xanga.com/'>
	<名>c996387762</名>
	<借记卡
		限制='1,855,000'
		货币='人民币'>
		<发行单位>交行→农行→→→中国人民银行ˉ﹃ˉ</发行单位>
		<剩余天数>拾伍天</剩余天数>
	</借记卡>
</付款信息>

密码域:

<?xml
	version='1.0'?>
<付款信息
	xmlns='http://c996387762.xanga.com/'>
	<名>c996387762</名>
	<加密数据
		Type='http://www.w3.org/2001/04/xmlenc#Element'
		xmlns='http://www.w3.org/2001/04/xmlenc#'>
	<密码数据>
		<密码值>IY5W05C58</密码值>
	</密码数据>
	</加密数据>
</付款信息>

对整个文件进行加密

<?xml
	version='1.0'?>
	<加密数据
		xmlns='http://www.w3.org/2001/04/xmlenc#'
		多媒体网络信息延伸类型='text/xml'>
	<密码数据>
		<密码值>o68q85qtf</密码值>
	</密码数据>
</加密数据>

超级加密(双/多重加密)

  • 必须加密整个元素“<加密数据>”标签。
  • 加密其文本内容或子元素,它会导致一个无效的可扩展标记语言文档由于可扩展标记语言架构定义了加密。


计算法

  • 加密算法:叁倍的数据加密标准(英文缩写:TripleDES),高级加密标准(英文缩写:AES)和里以阿(英文缩写:RSA)
  • 密钥传输算法:里以阿1.5版(英文缩写:RSA-v1.5)和里以阿-最佳非对称加密填充(英文缩写:RSA-OAEP)
  • 数据编码:基地64(Base64)。

参见

外部链接