QTP-数据的加密和解密

来源:互联网 发布:ios js rsa 编辑:程序博客网 时间:2024/06/05 09:49

 

                最近发现了一个有趣的现象。QTP自带的加密工具貌似一点都不够秘密。

                对需要加密的数据,我们一般采用两种方法。

1、 利用DataTable加密,选择一个单元格,然后点击Data->Encrypt。自动在该单元格生成加密后的字符串。

 

 

 

2、 在开始菜单,找到QTPprogram,然后选择Tools下的Password Encoder

我们在Password栏内输入需要加密的数据,然后点击generate,自动会生出加密后的字符串。

 

 

 

然而针对加密后的字符串如何解密,QTP并没有提供解密的工具。那么我们不如自己探索下。呵呵

大家都知道,在对密码框输入时,我们经常会采用SetSecure方法,后跟加密后的字符串。这样在QTP运行时,会自动在被测系统中输入密码,但是别人却看不到。

然而,如果在非密码框输入时,我们也用SetSecure方法,后跟加密后的字符串,这样在QTP运行时,会出现什么情况呢。。。。

举个例子,将密码:111111加密后的字符串为”4c512a2bb08d9d5ecf04eefbbe18e0448e20”(每次加密,此码都不相同)。然后我们在一个普通的输入框比如baidu输入框中利用QTP输入该字符串,大家则会发现,加密后的字符串解密后显示在了输入框中。

QTP执行下面语句。

Browser("百度一下,你就知道").Page("百度一下,你就知道").WebEdit("wd").SetSecure "4c512a2bb08d9d5ecf04eefbbe18e0448e20"

还有一种比较简单的办法,就是当QTP输完密码后,在密码框内用Object Spy查看该密码框的Value属性。原来自动将密码明文显示出来了。

Browser("51.com 我的朋友,我的家").Page("51.com 我的朋友,我的家").WebEdit("passport_51_password").SetSecure "4c512a2bb08d9d5ecf04eefbbe18e0448e20"

运行后,查看密码框的Value属性。

 

这个更简单吧,呵呵!

或者还有其他的办法,大家各自发挥吧~

原创粉丝点击