2015-06-12 53 views
1

我使用的是经典的asp升级到SagePay 3.00。SagePay 3.00的经典ASP AES解密

当收到来自SagePay的crypt回应时,我成功解密并在屏幕上显示长字符串。

我需要做的是分开对,以便我可以使用该信息,例如VendorTxCode。

我已成功使用rijndael.asp和includes.asp加密,将信息发送到SagePay并解密。

如何通过列出与字符串分开的值来执行我认为最终的任务?

我已加密,并与这两个函数解密:

public function EncryptAndEncode(strIn) 
     '** AES encryption, CBC blocking with PKCS5 padding then HEX encoding - DEFAULT ** 
     EncryptAndEncode="@" & AESEncrypt(strIn,strEncryptionPassword) 

end function 

** Wrapper function do decode then decrypt based on header of the encrypted field ** 

public function DecodeAndDecrypt(strIn) 
    DecodeAndDecrypt=AESDecrypt(mid(strIn,2),strEncryptionPassword) 
end function 

感谢。

+0

因此,从上述问题开始,我已成功加密发送给SagePay的信息,将其收回并成功将其解密为单个字符串。问题是,我需要获取个人数据。 – Steven

+0

你能展示一个字符串描述的例子吗? –

+0

你有解密字符串格式的例子吗?这听起来像你只需要根据某种类型的分隔符来分割字符串。 –

回答

0

像这样的东西应该工作:

dim decryptedString, values, value 

decryptedString = "value1,value2,value3" 

values = Split("decryptedString", ",") 

for each value in values 
    Response.Write(value & "<br />") 
next 

根据分隔符可能需要一个正则表达式。

+0

分隔符是'&'.... –

0

感谢您的回复和帮助。

这是我现在有:

transinfo =的Request.QueryString( “地穴”)

decryptthis = DecodeAndDecrypt(transinfo)

成功地接收到字符串时,将其解密。我仍然不确定如何将代码中的各个值带出来。

我特别需要将VendorTxCode &相关值从字符串中提取出来。

当我输出解密到屏幕上,我看到它,但我需要把它从字符串中取出,以便我可以使用它。

+0

你应该附加这篇文章到你的问题,而不是张贴为答案 –