on 01-14-2014 8:08 PM
Dear Expert,
I need to apply the digital signature on XML during java mapping on payload level. I have a sample of required format by third part(bank), however I need to get clarification to what other information I need to get from them to start my development. Please see the below sample source and required target, and my questions.
Required target target Structure :- The below sample was given by bank with applied digital signature and encoded in base64, I just decoded using online base64 decoder. The highlighted XML is my source XML, on which they had applied digital signature and encoded in base64.
0 | *H | |
0 1 0 | + 0 + | *H |
<?xml version="1.0"?>
<PaymentMessage>
<PaymentTransaction>
<CompanyCode>ARAMCO0001</CompanyCode>
<SequenceNum>16080</SequenceNum>
<TransactionData>:20:21107113
:32A:040523SAR10,00
:50:SAUDI ARABIAN OIL COMPANY
BOX 5000
DHAHRAN
SAUDI ARAMCO OIL COMPANY
:52A:RIBLSARI
:53B:/3010602079901
:57A:RIBLSARI
:59:/4040154769901
SAUDI ARAMCO OIL COMPANY
BOX 5000
DHAHRAN
SAUDI ARAMCO OIL COMPANY
:70:/INV/2000011508</TransactionData>
<TransactionComment>Bulk TEST</TransactionComment>
</PaymentTransaction>
</PaymentMessage> T0 P0 @ | G0 | |
*H | ||
0o1 0 | U SA1 0 U Unknown1 0 U | AL Riyadh1 0 |
U
B2B1 0
U B2B1 0 U B2B e-Payment Gateway0
040117095831Z
151230095831Z0o1 0 | U SA1 0 U Unknown1 0 U | AL Riyadh1 0 |
U
B2B1 0
U B2B1 0 U B2B e-Payment Gateway00
*H | |
0 + | o+s,5N Կڻ#poddS ݧ&мj&40,\#P 9|^$E=F -*-[msXu"b "v{aM S 0 |
*H |
' 箰z]و @nL_T0gTPpv }e @Q?C K T %/ua퓺uN>[̉ ?:U8ɛ&b
x G|.ǵ gc rZ k;{zGK &v1 0 0w0o1 0 | U SA1 0 U Unknown1 0 U | AL Riyadh1 0 |
U
B2B1 0
U B2B1 0 U B2B e-Payment Gateway @ | G0 | + 0 |
*H |
RV CR\_EB鰔@ 앗eD6 %ZT 2c?W36#=x|Mny iuh7; NE}I
l; | 氊[D_gjl 1 8Op4.}X Additional information from bank to sign the XML is as follows. |
PKCS#7 | |
Content type | Signed Data |
Version | 01 |
Digest algorithm | SHA-1 Hash algorithm |
Digest Encryption Algorithm | RSA |
Signer info | Information about a single signer of the signed data object |
Questions-
1- Do I need to gather any other information from bank to start my java mapping development, as we know we apply digital signature on XML by using enveloping, enveloping or detached, for me it looks like enveloping. Please correct me if I am wrong.
2- We are using SSL for transport level security as well, they said to use the same public and private key provided by CA to sign the message which is using for SSL, can we use the same keys? in that case I will not generate public key and private keys by my code, and will access form key-store from PI(PI7.4 Dual stack) server. Please confirm.
3- By considering Please suggest me which method (Apis) shall I use to do digital signature, as we have JSR 105, Appache WSS4j,Appache santurio etc. I have chosen java mapping because I need to send the whole input payload on two different string field(after applying digital signature and encoded in base 64).
Thanks,
Farhan
Hi Farhan,
Asnwers:
1) Depends the tecnical bank team you provide you the format of digital signature. Most of all use enveloping method.
Your example do not look like enveloping method.
2)Yes you can do it, you can use the same key to signature and also for communication. Handshake - Private and public key.
3)Depends also, check this blog:http://scn.sap.com/docs/DOC-49354
I hope that I helps you.
Kind regards,
Ricardo Viana.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Ricardo,
I just answered to Venkat I cannot use PGP module because of my complexity, I believe that is possible only through java mapping . please see below details from bank.
Instead of posting one parameter (in case of account statement request) you will post two parameters (strXmldata , strSignature ), the strXmldata must contain the XML after base64 encoding, the strSignature should contains the digital signature after base64 encoding.
Pseudocode:
digitalSiganature = get_Digital_Signature( paymentReqXMLfile )
base64DigitalSignature = base64_Encoding (digitalSiganature)
base64XmlData = base64_Encoding(paymentReqXMLfile)
replyXML = HTTPS_Post_B2B(“strSignature=”+ base64DigitalSignature+”&strXmldata=”+ base64XmlData)
processReplyXMLinCORE-SYSTEM(replyXML)
The following is html file content shows how to post those parameters with the base64 XML payment request and signature:
Note:
Note:
In the following html examples, html used below only as a demonstration of how data can be posted to B2B Gateway (using HTML form tag), when using your built application you post only the parameters named strXmlData (and strSignature if required), please see the Pseudocode of each service.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML> <HEAD> </HEAD> <BODY> <FORM action=" https://<environment-domain/b2b/epay " method="post"> <INPUT type="text" name="strSignature" value="MIIFywYJKoZIhvcNAQcCoIIFvDCCBbgCAQExCzAJBgUrDgMCGgUAMIICKwYJKoZIhvcNAQcBoIICHASCAhg8P3htbCB2ZXJzaW9uPSIxLjAiPz4KPFBheW1lbnRNZXNzYWdlPgo8UGF5bWVudFRyYW5zYWN0aW9uPgogICAgPENvbXBhbnlDb2RlPkFSQU1DTzAwMDE8L0NvbXBhbnlDb2RlPgogICAgPFNlcXVlbmNlTnVtPjE2MDgwPC9TZXF1ZW5jZU51bT4KICAgIDxUcmFuc2FjdGlvbkRhdGE+OjIwOjIxMTA3MTEzCjozMkE6MDQwNTIzU0FSMTAsMDAKOjUwOlNBVURJIEFSQUJJQU4gT0lMIENPTVBBTlkKQk9YIDUwMDAKREhBSFJBTiAKU0FVREkgQVJBTUNPIE9JTCBDT01QQU5ZCjo1MkE6UklCTFNBUkkKOjUzQjovMzAxMDYwMjA3OTkwMQo6NTdBOlJJQkxTQVJJCjo1OTovNDA0MDE1NDc2OTkwMQpTQVVESSBBUkFNQ08gT0lMIENPTVBBTlkKQk9YIDUwMDAKREhBSFJBTiAKU0FVREkgQVJBTUNPIE9JTCBDT01QQU5ZCjo3MDovSU5WLzIwMDAwMTE1MDg8L1RyYW5zYWN0aW9uRGF0YT4KICAgIDxUcmFuc2FjdGlvbkNvbW1lbnQ+QnVsayBURVNUPC9UcmFuc2FjdGlvbkNvbW1lbnQ+CiAgPC9QYXltZW50VHJhbnNhY3Rpb24+CjwvUGF5bWVudE1lc3NhZ2U+IKCCAlQwggJQMIIBuQIEQAkHRzANBgkqhkiG9w0BAQQFADBvMQswCQYDVQQGEwJTQTEQMA4GA1UECBMHVW5rbm93bjESMBAGA1UEBxMJQUwgUml5YWRoMQwwCgYDVQQKEwNCMkIxDDAKBgNVBAsTA0IyQjEeMBwGA1UEAxMVQjJCIGUtUGF5bWVudCBHYXRld2F5MB4XDTA0MDExNzA5NTgzMVoXDTE1MTIzMDA5NTgzMVowbzELMAkGA1UEBhMCU0ExEDAOBgNVBAgTB1Vua25vd24xEjAQBgNVBAcTCUFMIFJpeWFkaDEMMAoGA1UEChMDQjJCMQwwCgYDVQQLEwNCMkIxHjAcBgNVBAMTFUIyQiBlLVBheW1lbnQgR2F0ZXdheTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAqisJqG/6K3PMLDXt/U6wGu7Uv/Tau7acpyNwb+dkrIdkUxS38qKW3afBJrDt75LXf4ju9oPd0LykaiY0MKQs1ly2I7m7nFAAGISb2weg1BwROXyovLNekyRFPUb2G5Tg974tKq2oLYy3p/uzW21zWHUi8mLgFiJ2e2GXTdIRU5sCAwEAATANBgkqhkiG9w0BAQQFAAOBgQCXpycU566w+5d6AF3luNmIDEBuTF/TVKAwhWe4VJxQcHaz18UdfWUaQK/NUT+O1kMMS5Xf6QFU9dISiSUvlHVh7ZO6dU4+W8yJAp8ZPzpVp42QlzjJmyZiDXi15h9Hwnwuxce1FGdjAnKNWs/qqhuv9dtrrjt7erdHSxu1Jnb6ljGCAR0wggEZAgEBMHcwbzELMAkGA1UEBhMCU0ExEDAOBgNVBAgTB1Vua25vd24xEjAQBgNVBAcTCUFMIFJpeWFkaDEMMAoGA1UEChMDQjJCMQwwCgYDVQQLEwNCMkIxHjAcBgNVBAMTFUIyQiBlLVBheW1lbnQgR2F0ZXdheQIEQAkHRzAJBgUrDgMCGgUAMA0GCSqGSIb3DQEBAQUABIGAUvJWlbgcDJNDUurCXLNfo8pFQumwlIRAj6epsBvA7JWX4mWSRLM2FSV/Wt1UBzJj/KaRzD+bVzOrqjaPIz14fE1uecEcwbOGab63dWg3OwPmTou5RcN9SQqrj2w71RDfCby+reawilvCRLpfZ/pqbPIQATEYFThPk3A0wy59WOo="> <INPUT type="text" name="strXmldata" value='PD94bWwgdmVyc2lvbj0iMS4wIj8+CjxQYXltZW50TWVzc2FnZT4KPFBheW1lbnRUcmFuc2FjdGlvbj4KICAgIDxDb21wYW55Q29kZT5BUkFNQ08wMDAxPC9Db21wYW55Q29kZT4KICAgIDxTZXF1ZW5jZU51bT4xNjA4MDwvU2VxdWVuY2VOdW0+CiAgICA8VHJhbnNhY3Rpb25EYXRhPjoyMDoyMTEwNzExMwo6MzJBOjA0MDUyM1NBUjEwLDAwCjo1MDpTQVVESSBBUkFCSUFOIE9JTCBDT01QQU5ZCkJPWCA1MDAwCkRIQUhSQU4gClNBVURJIEFSQU1DTyBPSUwgQ09NUEFOWQo6NTJBOlJJQkxTQVJJCjo1M0I6LzMwMTA2MDIwNzk5MDEKOjU3QTpSSUJMU0FSSQo6NTk6LzQwNDAxNTQ3Njk5MDEKU0FVREkgQVJBTUNPIE9JTCBDT01QQU5ZCkJPWCA1MDAwCkRIQUhSQU4gClNBVURJIEFSQU1DTyBPSUwgQ09NUEFOWQo6NzA6L0lOVi8yMDAwMDExNTA4PC9UcmFuc2FjdGlvbkRhdGE+CiAgICA8VHJhbnNhY3Rpb25Db21tZW50PkJ1bGsgVEVTVDwvVHJhbnNhY3Rpb25Db21tZW50PgogIDwvUGF5bWVudFRyYW5zYWN0aW9uPgo8L1BheW1lbnRNZXNzYWdlPiA='> <input type="submit" value="Proceed"> </FORM > </BODY > </HTML > |
Figure 9 – Example of a Payment Message Post Request
When you post the above request to the B2B Gateway, the gateway will receive the request analyze it, and answer back in the same session with the execution status message
Thanks a ton for prompt response Ricardo. below is the request message for bank before digital signature, base64 signature and mapping to two string fields(strSignature and strXmldata) as per above Pseudocode: to post on Bank URL.
<?xml version="1.0"?>
<PaymentMessage>
<PaymentTransaction>
<CompanyCode>PARTNER01</CompanyCode>
<SequenceNum>0000000000132180</SequenceNum>
<TransactionData>:20:2000000058
:32A:020112SAR888,00
:50:SAUDI ARABIAN OIL COMPANY
BOX 5000
DHAHRAN
PARTNER ONE COMPANY
:52A:RIBLSARI
:53B:/111111111
:57A:NCBKSAJE
:59:/222222222
PARTNER ONE COMPANY
BOX 5300
DHAHRAN
PARTNER ONE COMPANY
:70:INV/0000002100
</TransactionData>
<TransactionComment> Payment Message </TransactionComment>
</PaymentTransaction>
</PaymentMessage>
Regards,
Farhan
Hi Farhan,
I dont think that you must use PGP mdoule for that.
I think that you must use javamapping, but I'm trying to understand the requeriment and how to develope that.
As I understand there is a two digital cryptograf values, one it's for a whole XML Data file and others maybe it's to indentify you.
strSignature - I think it's for identify.
strXmldata- Whole document data signed.
I will learn than post something ok ? For now I dont have the best asnwer what's the best way to code that.
Kind regards,
Ricardo Viana.
Ricardo, I am just thinking how shall I say thanks to you:-)
Your are on track, bank require same whole request payload on two field one is strSignature(will contain the signed xml request, encoded in base64) and another is strXmldata(wil contain the base64 encoded xml request ) .
Please let me know if you find any way to do this, once you get anything, I will be waiting for your reply.
I believe, you can help me in this:-) , I am not sure how can I contact Shabarish Vijayakumar for help.
Thanks,
Farhan
No problem Farhan . I'm just trying to help you, SCN helps me so much, now time to payback.
So he is a legend, he knows about digital signatures.
Also do you any idea about what kind of digital signature format you must use for that ?
Do you have a document of requirement from Bank ?
Welcome Farhan !!
Regards,
Ricardo Viana.
HI Farhan - Can you have a look at the below blog if it helps
Sabarish,
I got confusion about PGP concept, I was thinking that you can use that only into module adapter not in java mapping.
But after see the blog, you can use PGP concept and also encrypt a part of xml, that really interesting.
I got confusion, we can use PGP encryption via java mapping as you can see at blog posted above.
Thanks a lot Sabrish for your reply, I am lucky to get answer from you here:-) . Yes its a file in XML format. I have gone through the standard PGP modules blogs and docs, even your blog. as per my understanding standard PGP module will sign the complete xml file,however in my case I need to sign the request message and encode to base64 and send needs to send the whole signed and encoded data in a single contained string field called
strSignature ,again I need to send the same request XML on another contained string called strXmldata , which will contain only base64 encoded xml, not signed.
Please see above foe detail description. Do you think its possible just by using standard PGP module?
Thanks,
Fahan
Ricardo, a big thanks to you my friend for engaging all top guys including you. So you guys are suggesting me to write java mapping according to the below link?
Thanks,
Farhan
Yes. You are right. The PGP module will sign and encrypt the entire payload.
So in this specific case, you might have to do a java mapping for the specific data that you are looking for.
There are already blogs on SDN that talk about PGP using java mappings. One of the most widely used open api is bouncycastle for developing PGP based requirements.
Hi Ricardo Viana and Shabarish Vijayakumar,
I had a communication with bank technical consultant today, regarding posting the message after mapping to their webserver, I was in assumption that I need to post the fields strSignature(will contain the signed xml request, encoded in base64) and strXmldata(wil contain the base64 encoded xml request ) as an XML tag, as shown below, which was wrong.
<?xml version="1.0"?>
<strSignature>
Signed and Base64 encoded(paymentReqXMLfile)
</strSignature>
<strXmldata>
Base64 encoded(paymentReqXMLfile)
</strXmldata
They told me, this not correct, strSignature and strXmldata are HTML parameter in the httpRequest being sent.
Do you guys think I need to use dynamicConfiguration in HTTP_AAE adapeter? Or please suggest me how can post these two field as HTML parameter? By keeping in mind that this is synchronous scenario(ABAP proxy to HTTP_AAE)
Please see the below document from bank, which I have already posted.
Instead of posting one parameter (in case of account statement request) you will post two parameters (strXmldata , strSignature ), the strXmldata must contain the XML after base64 encoding, the strSignature should contains the digital signature after base64 encoding.
Pseudocode:
digitalSiganature = get_Digital_Signature( paymentReqXMLfile )
base64DigitalSignature = base64_Encoding (digitalSiganature)
base64XmlData = base64_Encoding(paymentReqXMLfile)
replyXML = HTTPS_Post_B2B(“strSignature=”+ base64DigitalSignature+”&strXmldata=”+ base64XmlData)
processReplyXMLinCORE-SYSTEM(replyXML)
The following is html file content shows how to post those parameters with the base64 XML payment request and signature:
Note:
In the following html examples, html used below only as a demonstration of how data can be posted to B2B Gateway (using HTML form tag), when using your built application you post only the parameters named strXmlData (and strSignature if required), please see the Pseudocode of each service.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML> <HEAD> </HEAD> <BODY> <FORM action=" https://<environment-domain/b2b/epay " method="post"> <INPUT type="text" name="strSignature" value="MIIFywYJKoZIhvcNAQcCoIIFvDCCBbgCAQExCzAJBgUrDgMCGgUAMIICKwYJKoZIhvcNAQcBoIICHASCAhg8P3htbCB2ZXJzaW9uPSIxLjAiPz4KPFBheW1lbnRNZXNzYWdlPgo8UGF5bWVudFRyYW5zYWN0aW9uPgogICAgPENvbXBhbnlDb2RlPkFSQU1DTzAwMDE8L0NvbXBhbnlDb2RlPgogICAgPFNlcXVlbmNlTnVtPjE2MDgwPC9TZXF1ZW5jZU51bT4KICAgIDxUcmFuc2FjdGlvbkRhdGE+OjIwOjIxMTA3MTEzCjozMkE6MDQwNTIzU0FSMTAsMDAKOjUwOlNBVURJIEFSQUJJQU4gT0lMIENPTVBBTlkKQk9YIDUwMDAKREhBSFJBTiAKU0FVREkgQVJBTUNPIE9JTCBDT01QQU5ZCjo1MkE6UklCTFNBUkkKOjUzQjovMzAxMDYwMjA3OTkwMQo6NTdBOlJJQkxTQVJJCjo1OTovNDA0MDE1NDc2OTkwMQpTQVVESSBBUkFNQ08gT0lMIENPTVBBTlkKQk9YIDUwMDAKREhBSFJBTiAKU0FVREkgQVJBTUNPIE9JTCBDT01QQU5ZCjo3MDovSU5WLzIwMDAwMTE1MDg8L1RyYW5zYWN0aW9uRGF0YT4KICAgIDxUcmFuc2FjdGlvbkNvbW1lbnQ+QnVsayBURVNUPC9UcmFuc2FjdGlvbkNvbW1lbnQ+CiAgPC9QYXltZW50VHJhbnNhY3Rpb24+CjwvUGF5bWVudE1lc3NhZ2U+IKCCAlQwggJQMIIBuQIEQAkHRzANBgkqhkiG9w0BAQQFADBvMQswCQYDVQQGEwJTQTEQMA4GA1UECBMHVW5rbm93bjESMBAGA1UEBxMJQUwgUml5YWRoMQwwCgYDVQQKEwNCMkIxDDAKBgNVBAsTA0IyQjEeMBwGA1UEAxMVQjJCIGUtUGF5bWVudCBHYXRld2F5MB4XDTA0MDExNzA5NTgzMVoXDTE1MTIzMDA5NTgzMVowbzELMAkGA1UEBhMCU0ExEDAOBgNVBAgTB1Vua25vd24xEjAQBgNVBAcTCUFMIFJpeWFkaDEMMAoGA1UEChMDQjJCMQwwCgYDVQQLEwNCMkIxHjAcBgNVBAMTFUIyQiBlLVBheW1lbnQgR2F0ZXdheTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAqisJqG/6K3PMLDXt/U6wGu7Uv/Tau7acpyNwb+dkrIdkUxS38qKW3afBJrDt75LXf4ju9oPd0LykaiY0MKQs1ly2I7m7nFAAGISb2weg1BwROXyovLNekyRFPUb2G5Tg974tKq2oLYy3p/uzW21zWHUi8mLgFiJ2e2GXTdIRU5sCAwEAATANBgkqhkiG9w0BAQQFAAOBgQCXpycU566w+5d6AF3luNmIDEBuTF/TVKAwhWe4VJxQcHaz18UdfWUaQK/NUT+O1kMMS5Xf6QFU9dISiSUvlHVh7ZO6dU4+W8yJAp8ZPzpVp42QlzjJmyZiDXi15h9Hwnwuxce1FGdjAnKNWs/qqhuv9dtrrjt7erdHSxu1Jnb6ljGCAR0wggEZAgEBMHcwbzELMAkGA1UEBhMCU0ExEDAOBgNVBAgTB1Vua25vd24xEjAQBgNVBAcTCUFMIFJpeWFkaDEMMAoGA1UEChMDQjJCMQwwCgYDVQQLEwNCMkIxHjAcBgNVBAMTFUIyQiBlLVBheW1lbnQgR2F0ZXdheQIEQAkHRzAJBgUrDgMCGgUAMA0GCSqGSIb3DQEBAQUABIGAUvJWlbgcDJNDUurCXLNfo8pFQumwlIRAj6epsBvA7JWX4mWSRLM2FSV/Wt1UBzJj/KaRzD+bVzOrqjaPIz14fE1uecEcwbOGab63dWg3OwPmTou5RcN9SQqrj2w71RDfCby+reawilvCRLpfZ/pqbPIQATEYFThPk3A0wy59WOo="> <INPUT type="text" name="strXmldata" value='PD94bWwgdmVyc2lvbj0iMS4wIj8+CjxQYXltZW50TWVzc2FnZT4KPFBheW1lbnRUcmFuc2FjdGlvbj4KICAgIDxDb21wYW55Q29kZT5BUkFNQ08wMDAxPC9Db21wYW55Q29kZT4KICAgIDxTZXF1ZW5jZU51bT4xNjA4MDwvU2VxdWVuY2VOdW0+CiAgICA8VHJhbnNhY3Rpb25EYXRhPjoyMDoyMTEwNzExMwo6MzJBOjA0MDUyM1NBUjEwLDAwCjo1MDpTQVVESSBBUkFCSUFOIE9JTCBDT01QQU5ZCkJPWCA1MDAwCkRIQUhSQU4gClNBVURJIEFSQU1DTyBPSUwgQ09NUEFOWQo6NTJBOlJJQkxTQVJJCjo1M0I6LzMwMTA2MDIwNzk5MDEKOjU3QTpSSUJMU0FSSQo6NTk6LzQwNDAxNTQ3Njk5MDEKU0FVREkgQVJBTUNPIE9JTCBDT01QQU5ZCkJPWCA1MDAwCkRIQUhSQU4gClNBVURJIEFSQU1DTyBPSUwgQ09NUEFOWQo6NzA6L0lOVi8yMDAwMDExNTA4PC9UcmFuc2FjdGlvbkRhdGE+CiAgICA8VHJhbnNhY3Rpb25Db21tZW50PkJ1bGsgVEVTVDwvVHJhbnNhY3Rpb25Db21tZW50PgogIDwvUGF5bWVudFRyYW5zYWN0aW9uPgo8L1BheW1lbnRNZXNzYWdlPiA='> <input type="submit" value="Proceed"> </FORM > </BODY > </HTML > |
Figure 9 – Example of a Payment Message Post Request
When you post the above request to the B2B Gateway, the gateway will receive the request analyze it, and answer back in the same session with the execution status message,
Thanks, I am waiting for reply from you guys.
Farhan
Hi Farhan,
For signing using PGP module you need private key.where as to verify the digital signature in the message you need public key .
Please go through the below links to know more about how to use the module.
http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/02/07/using-pgp-in-process-integration
Regards
Venkat
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Venkat,
Thanks for your response. I cant use PGP module in my case because, I need to send the whole xml payload on two different string field after signing the message and encoding into base64,and then need to post on HTTPS, see below. I have gone through theses link.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
</HEAD>
<BODY>
<FORM action=" https://<environment-domain/b2b/epay " method="post">
<INPUT type="text" name="strSignature" value="MIIFywYJKoZIhvcNAQcCoIIFvDCCBbgCAQExCzAJBgUrDgMCGgUAMIICKwYJKoZIhvcNAQcBoIICHASCAhg8P3htbCB2ZXJzaW9uPSIxLjAiPz4KPFBheW1lbnRNZXNzYWdlPgo8UGF5bWVudFRyYW5zYWN0aW9uPgogICAgPENvbXBhbnlDb2RlPkFSQU1DTzAwMDE8L0NvbXBhbnlDb2RlPgogICAgPFNlcXVlbmNlTnVtPjE2MDgwPC9TZXF1ZW5jZU51bT4KICAgIDxUcmFuc2FjdGlvbkRhdGE+OjIwOjIxMTA3MTEzCjozMkE6MDQwNTIzU0FSMTAsMDAKOjUwOlNBVURJIEFSQUJJQU4gT0lMIENPTVBBTlkKQk9YIDUwMDAKREhBSFJBTiAKU0FVREkgQVJBTUNPIE9JTCBDT01QQU5ZCjo1MkE6UklCTFNBUkkKOjUzQjovMzAxMDYwMjA3OTkwMQo6NTdBOlJJQkxTQVJJCjo1OTovNDA0MDE1NDc2OTkwMQpTQVVESSBBUkFNQ08gT0lMIENPTVBBTlkKQk9YIDUwMDAKREhBSFJBTiAKU0FVREkgQVJBTUNPIE9JTCBDT01QQU5ZCjo3MDovSU5WLzIwMDAwMTE1MDg8L1RyYW5zYWN0aW9uRGF0YT4KICAgIDxUcmFuc2FjdGlvbkNvbW1lbnQ+QnVsayBURVNUPC9UcmFuc2FjdGlvbkNvbW1lbnQ+CiAgPC9QYXltZW50VHJhbnNhY3Rpb24+CjwvUGF5bWVudE1lc3NhZ2U+IKCCAlQwggJQMIIBuQIEQAkHRzANBgkqhkiG9w0BAQQFADBvMQswCQYDVQQGEwJTQTEQMA4GA1UECBMHVW5rbm93bjESMBAGA1UEBxMJQUwgUml5YWRoMQwwCgYDVQQKEwNCMkIxDDAKBgNVBAsTA0IyQjEeMBwGA1UEAxMVQjJCIGUtUGF5bWVudCBHYXRld2F5MB4XDTA0MDExNzA5NTgzMVoXDTE1MTIzMDA5NTgzMVowbzELMAkGA1UEBhMCU0ExEDAOBgNVBAgTB1Vua25vd24xEjAQBgNVBAcTCUFMIFJpeWFkaDEMMAoGA1UEChMDQjJCMQwwCgYDVQQLEwNCMkIxHjAcBgNVBAMTFUIyQiBlLVBheW1lbnQgR2F0ZXdheTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAqisJqG/6K3PMLDXt/U6wGu7Uv/Tau7acpyNwb+dkrIdkUxS38qKW3afBJrDt75LXf4ju9oPd0LykaiY0MKQs1ly2I7m7nFAAGISb2weg1BwROXyovLNekyRFPUb2G5Tg974tKq2oLYy3p/uzW21zWHUi8mLgFiJ2e2GXTdIRU5sCAwEAATANBgkqhkiG9w0BAQQFAAOBgQCXpycU566w+5d6AF3luNmIDEBuTF/TVKAwhWe4VJxQcHaz18UdfWUaQK/NUT+O1kMMS5Xf6QFU9dISiSUvlHVh7ZO6dU4+W8yJAp8ZPzpVp42QlzjJmyZiDXi15h9Hwnwuxce1FGdjAnKNWs/qqhuv9dtrrjt7erdHSxu1Jnb6ljGCAR0wggEZAgEBMHcwbzELMAkGA1UEBhMCU0ExEDAOBgNVBAgTB1Vua25vd24xEjAQBgNVBAcTCUFMIFJpeWFkaDEMMAoGA1UEChMDQjJCMQwwCgYDVQQLEwNCMkIxHjAcBgNVBAMTFUIyQiBlLVBheW1lbnQgR2F0ZXdheQIEQAkHRzAJBgUrDgMCGgUAMA0GCSqGSIb3DQEBAQUABIGAUvJWlbgcDJNDUurCXLNfo8pFQumwlIRAj6epsBvA7JWX4mWSRLM2FSV/Wt1UBzJj/KaRzD+bVzOrqjaPIz14fE1uecEcwbOGab63dWg3OwPmTou5RcN9SQqrj2w71RDfCby+reawilvCRLpfZ/pqbPIQATEYFThPk3A0wy59WOo=">
<INPUT type="text" name="strXmldata" value='PD94bWwgdmVyc2lvbj0iMS4wIj8+CjxQYXltZW50TWVzc2FnZT4KPFBheW1lbnRUcmFuc2FjdGlvbj4KICAgIDxDb21wYW55Q29kZT5BUkFNQ08wMDAxPC9Db21wYW55Q29kZT4KICAgIDxTZXF1ZW5jZU51bT4xNjA4MDwvU2VxdWVuY2VOdW0+CiAgICA8VHJhbnNhY3Rpb25EYXRhPjoyMDoyMTEwNzExMwo6MzJBOjA0MDUyM1NBUjEwLDAwCjo1MDpTQVVESSBBUkFCSUFOIE9JTCBDT01QQU5ZCkJPWCA1MDAwCkRIQUhSQU4gClNBVURJIEFSQU1DTyBPSUwgQ09NUEFOWQo6NTJBOlJJQkxTQVJJCjo1M0I6LzMwMTA2MDIwNzk5MDEKOjU3QTpSSUJMU0FSSQo6NTk6LzQwNDAxNTQ3Njk5MDEKU0FVREkgQVJBTUNPIE9JTCBDT01QQU5ZCkJPWCA1MDAwCkRIQUhSQU4gClNBVURJIEFSQU1DTyBPSUwgQ09NUEFOWQo6NzA6L0lOVi8yMDAwMDExNTA4PC9UcmFuc2FjdGlvbkRhdGE+CiAgICA8VHJhbnNhY3Rpb25Db21tZW50PkJ1bGsgVEVTVDwvVHJhbnNhY3Rpb25Db21tZW50PgogIDwvUGF5bWVudFRyYW5zYWN0aW9uPgo8L1BheW1lbnRNZXNzYWdlPiA='>
<input type="submit" value="Proceed">
</FORM >
</BODY >
</HTML >
User | Count |
---|---|
84 | |
24 | |
12 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.