利用XSL对XML数据进行加密和大小写转换

本文介绍使用XSL对XML数据进行大小写转换的方法,并展示如何通过XSL实现简单的XML数据加密。通过实例演示了如何将XML文档中的文本转换为全大写,并给出了一种基于XSL的加密方案。


利用XSL对XML数据进行加密和大小写转换

XML数据一个最普通的问题就是数据的大小写,在进行数据转换时常常产生令人头疼的麻烦。下面就是一个解决的办法。

假设你有一些数据要发送到另外一个系统,它也识别XML格式的数据,而且要求全部大写,例子数据如下:

例子1:person.xml


 
    net_lover
    Xianhui Meng
    孟宪会
 

假设你要转换成如下的格式:

例子2:newperson.xml


 
    NET_LOVER
    XIANHUI MENG
    孟宪会
 

解决这个转换问题一般是用XPATH函数里的translate(),例如:

 
 
转换后结果如下:
 
  ThIS IS a TeST
 
但是如何把全部的文字转换成大写呢?下面就是进行这样处理的代码:

先定义两个变量:

  ABCDEFGHIJKLMNOPQRSTUVWXYZ
  abcdefghijklmnopqrstuvwxyz

再进行转换:

结果如下:

THIS IS A TEST

对刚才的问题,可以编写XSL文件如下:

例子3: person.xsl


http://www.w3.org/1999/XSL/Transform" version="1.0">
  ABCDEFGHIJKLMNOPQRSTUVWXYZ
  abcdefghijklmnopqrstuvwxyz
 
 
   
     
       
       
     
   
 

启发

从上面的方法呢会想到什么呢?对数据进行加密!对了,用这种方法可以实现XML数据的加密。

例子:
 
  ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
 
  
 
  K1aWXJBb2cRdeAMfQgL8yhij976klEFzmYSnIo4DpTZq5rNsUtC0uOPvVwGxH3
 


加密后结果如下:

  8Snr6nr6k6NzrN

解密也很简单,只要把两个变量颠倒即可。

 




xml加密XML Encryption)是w3c加密xml的标准。这个加密过程包括加密xml文档的元素及其子元素,通过加密xml的初始内容将被替换,但其xml格式仍然被完好的保留。 介绍 我们有3个加密xml的方法 1、仅仅使用对称加密的方法加密xml 这种加密方法只使用一个密钥,也就是说无论是加密xml还是解密xml都使用一个相同的密钥。因为这个密钥不会在被加密xml中保存,所以我们需要在加密解密的过程中加载这个密钥并保护它不被窃取。 2、使用对称加密非对称加密相结合的方法来加密xml 这种方法需要一个用于加密数据的对称密钥一个用于保护这个对称密钥的非对称密钥。被加密的对称密钥加密数据一起保存在xml文档中。当用私有非对称密钥解密密钥的时候要用公开非对称密钥对密钥进行加密。 本文就将使用这种方法。想学到其他更多的方法请参看MSDN等到更多的信息。 (译者注:非对称加密算法需要两个密钥:公开密钥(publickey)私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。) 3、使用X.509加密xml,这种方法是用X.509作为非对称密钥,它由诸如VeriSign之类的第三方提供。 方法 不管xml加密是如何完成的,保存加密数据总是用两种方法之一。 1、加密后所有的元素都被命名为 2、加密后只有数据被替换,而元素名称仍然是可读的,不会发生变化。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值