ExactTarget Encoded URL and Query String

This is an example of code to pass a encrypted URL from an email/micro-site/landing page to a micro-site/landing page inside ExactTarget. I wanted it to be passed as one string and require a unique key to unlock.
To encode data into a URL with query string:
Create a email or page that is UTF-8 to encode your data.

%%[
/* SET DATA VALUES */
Set @EMAIL = "ben12_34.com+test@gmail.com"
Set @FIRSTNAME = "Ben"
Set @LASTNAME = "Stein Mc Hofer"
Set @SUBSCRIBERKEY = "12345678abcdefghi"
Set @RANDOMSTUFF = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ‘?’“!”(%)[#]{@}/&<-+÷×=>®©$€£¥¢:;,.*"

Set @null = ""
Set @PASSWORD = "testpwd"

/* STRING & ENCODE */
Set @QUERYSTRING = CONCAT(@EMAIL,"|",@FIRSTNAME,"|",@LASTNAME,"|",@SUBSCRIBERKEY,"|",@RANDOMSTUFF)
SET @encData = EncryptSymmetric(@QUERYSTRING, "AES", @null, @PASSWORD, @null, "0000000000000000", @null, "00000000000000000000000000000000")
SET @enc64 = Base64Encode(@encData)
SET @enc64 = Replace(@enc64,"=","_")
SET @URL = CONCAT("http://pages.sX.exacttarget.com/Decode/?DATA=",@enc64)

]%%
<div id="container">

&nbsp;
<div id="content">

DATA IN:
EMAIL: %%=v(@EMAIL)=%%FIRSTNAME: %%=v(@FIRSTNAME)=%%LASTNAME: %%=v(@LASTNAME)=%%SUBSCRIBERKEY: %%=v(@SUBSCRIBERKEY)=%% RANDOMSTUFF: %%=v(@RANDOMSTUFF)=%%

<hr />

QUERYSTRING INPUT
%%=v(@QUERYSTRING)=%%

<hr />

ENCODED
%%=v(@encData)=%%

<hr />

ENCODED64
%%=v(@enc64)=%%

<hr />

TEST LINK

<a href="%%=v(@URL)=%%"><button type="button">Take me to another page</button></a>

</div>
&nbsp;

</div>[/code]
[small_title title="To decode data from URL with query string:"]
Create a page that is UTF-8 to decode your data.
[code language="html"]%%[
Set @null = ""
Set @PASSWORD = "testpwd"

/* SOURCE DATA TO VERIFY AGAINST */
Set @EMAIL_MATCH = "ben12_34.com+test@gmail.com"
Set @FIRSTNAME_MATCH = "Ben"
Set @LASTNAME_MATCH = "Stein Mc Hofer"
Set @SUBSCRIBERKEY_MATCH = "12345678abcdefghi"
Set @RANDOMSTUFF_MATCH = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ‘?’“!”(%)[#]{@}/&amp;&lt;-+÷×=&gt;®©$€£¥¢:;,.*"

/* DECRYPT */
SET @PASSED_DATA = QUERYPARAMETER("DATA")
SET @PASSED_DATA = REPLACE(@PASSED_DATA,"_","=")
SET @dec64 = Base64Decode(@PASSED_DATA)
SET @OUTPUT = DecryptSymmetric(@dec64, "AES", @null, @PASSWORD, @null, "0000000000000000", @null, "00000000000000000000000000000000")

/* WRITE TO VALUE */
SET @DATA_ROWS = BuildRowsetFromString(@OUTPUT,"|")
Set @EMAIL = Field(Row(@DATA_ROWS,1),1)
Set @FIRSTNAME = Field(Row(@DATA_ROWS,2),1)
Set @LASTNAME = Field(Row(@DATA_ROWS,3),1)
Set @SUBSCRIBERKEY = Field(Row(@DATA_ROWS,4),1)
Set @RANDOMSTUFF = Field(Row(@DATA_ROWS,5),1)
]%%
<div id="container">

&nbsp;
<div id="content">

PASSED: %%=v(@PASSED_DATA)=%%DECODED: %%=v(@dec64)=%%OUTPUT: %%=v(@OUTPUT)=%%

<hr />

EMAIL: %%=v(@EMAIL)=%%FIRSTNAME: %%=v(@FIRSTNAME)=%%LASTNAME: %%=v(@LASTNAME)=%%SUBSCRIBERKEY: %%=v(@SUBSCRIBERKEY)=%%RANDOMSTUFF: %%=v(@RANDOMSTUFF)=%%

<hr />

MATCH AGAINST SOURCE VARIABLES
EMAIL: %%=v(iif(@EMAIL == @EMAIL_MATCH, "✔","✖"))=%%FIRSTNAME: %%=v(iif(@FIRSTNAME == @FIRSTNAME_MATCH, "✔","✖"))=%%LASTNAME: %%=v(iif(@LASTNAME == @LASTNAME_MATCH, "✔","✖"))=%%SUBSCRIBERKEY: %%=v(iif(@SUBSCRIBERKEY == @SUBSCRIBERKEY_MATCH, "✔","✖"))=%%RANDOMSTUFF: %%=v(iif(@RANDOMSTUFF == @RANDOMSTUFF_MATCH, "✔","✖"))=%%

</div>
&nbsp;
</div>