导航

聚合

«2008年11月»
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

Blog统计

新闻/公告

存档

随笔分类

文章分类

相册

XML Encryption

XML Encryption

Published: 15 Dec 2006
By: Derek Smyth
XML Encryption is a W3C standard for encrypting XML elements. The encryption process involves taking an element from an xml document, encrypting it and it's children, and then replacing the original XML content with the generated encrypted XML in such a way as the document remains well formed.

Introduction

There are three approaches to Xml Encryption.

1. Encrypt the xml using symmetric encryption only

Only one session key is used and it’s the same key that encrypts the xml which is used to decrypt it. The key is not stored with the encrypted xml and so the key needs to be loaded during the process and protected when stored.

2. Encrypt the xml using a combination of asymmetric and symmetric encryption

The dual approach requires a symmetric session key to encrypt the data and an asymmetric key to protect the session key. Both the encrypted session key and the encrypted data are stored together in the xml document. The public asymmetric key is used to encrypt the session key while the private asymmetric key is used to decrypt the key.

This article covers this approach. To learn about the other approaches please look at the MSDN help for more information.

3. Encrypt the xml using a X.509 Certificate This approach uses a X.509 certificate as the symmetrical key. X.509 certificates are provided by a third party vendor such as VeriSign.

Approaches

Xml encryption, regardless of how the encryption is performed, can store the encrypted data in one of two ways.

  1. After encryption the whole element is replaced with an element named <EncryptedData>
  2. After encryption only the data in the element is replaced and its name remains readable in the document.

The difference is very subtle but it’s rather important. For example:

Your xml document contains a root element called <employee> that contains a child element called <WrittenWarning> in which details of disciplinary action is stored. If you were sending this xml and wanted the <WrittenWarning> elements details protected with approach 1 the <WrittenWarning> is replaced with an element called <EncryptedData> and no information can be gathered from the document.

With approach 2 however the <WrittenWarning> element stays and only the data is encrypted. Anyone who intercepted this document might not know the specific details of the discipline action but they will still know that something has happened with that employee. Any attributes on the <WrittenWarning> element are also not encrypted.

So the approach you take depends on what the data is and how much information you want to give away. In .NET v2.0 deciding on which approach to take is specified using a Boolean value and can be easily modified.

Example of XML Encryption

Below is an example of XML encryption using the asymmetric approach where the author element in the xml document is replaced with an <EncryptedData> element.

The XML Document

<?xml version="1.0" standalone="no"?>
<article>
<articleinfo>
<title>XPath Queries on XmlDocument objects in .NET 1.1</title>
<abstract>
<para>This article covers the basics.</para>
</abstract>
<author>
<honorific>Mr.</honorific>
<firstname>George</firstname>
<surname>James</surname>
<email>gjames@doman.com</email>
</author>
</articleinfo>
</article>

XPath expression = /article/articleinfo/author

The encrypted XML Document

<?xml version="1.0" standalone="no"?>
<article>
<articleinfo>
<title>XPath Queries on XmlDocument objects in .NET 1.1</title>
<abstract>
<para>This article covers the basics.</para>
<para>This article does not cover.</para>
</abstract>
<EncryptedData Type="http://www.w3.org/2001/04/xmlenc#Element"
xmlns="http://www.w3.org/2001/04/xmlenc#">
<EncryptionMethod
Algorithm="http://www.w3.org/2001/04/xmlenc#aes256-cbc" />
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
<EncryptedKey xmlns="http://www.w3.org/2001/04/xmlenc#">
<EncryptionMethod
Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-1_5" />
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
<KeyName>session</KeyName>
</KeyInfo>
<CipherData>
<CipherValue>r4f7SI1aZKSvibb…CipherValue>
</CipherData>
</EncryptedKey>
</KeyInfo>
<CipherData>
<CipherValue>sGNhKqcSovipJdOFCFKYEEMRFd…</CipherValue>
</CipherData>
</EncryptedData>
</articleinfo>
</article>

The author element and its children have been replaced with the <EncryptedData> element which contains a number of other elements that are used to describe the encrypted data, i.e. the encryption algorithms used, the session key used, etc.

The <EncryptedData> element

Looking at the tree hierarchy of the <EncryptedData> element you can see the <EncryptedData> element is broken down into a number of child elements. The <KeyInfo> element is the same as the <KeyInfo> element used in XML Digital Signatures.

tree

The EncryptedData element is contained in the "http://www.w3.org/2001/04/xmlenc#” namespace. It is the root of the encrypted data.

The EncryptionMethod element is used to specify the symmetric method used when encrypting the data. It does this by using an Algorithm attribute containing a W3 URL that describes the method used. "http://www.w3.org/2001/04/xmlenc#aes256-cbc" indicates the data was encrypted using AES (Rijndael) with a 256k key size.

The KeyInfo element is borrowed from XML Digital Signatures and is used to store information about the symmetric keys. The KeyInfo element can store information about more than one key.

The EncryptedKey element and its child elements contain information about one key stored in a KeyInfo element.

The EncryptionMethod element of the KeyInfo contains the asymmetric encryption method used to encrypt the session key. It does this using an Algorithm attribute set to a W3 URL. For example: http://www.w3.org/2001/04/xmlenc#rsa-1_5 describes that RSA asymmetric encryption was used to encrypt the session key.

The KeyName element is an identifier used to find the key. You’ll see the importance of this later when it comes to coding XML Encryption.

The CipherData and CipherValue elements that are found as part of the EncryptedKey and EncryptedData elements contain the cipher data. The actual cipher data is stored in the CipherValue element. The EncryptedKey element stores the encrypted key, while in the encrypted data is stored in the CipherValue for the EncryptedData element.

Asymmetric XML Encryption Process

The process of XML encryption can be summarized in five steps:

  1. Select an element in an XML document (selecting the root will encrypt the whole document).
  2. Encrypt the element using a symmetric encryption key, known as the session key.
  3. Encrypt the session key using asymmetric encryption (the public key is used).
  4. Create an EncryptedData element which will contain the encrypted data and the encrypted session key.
  5. Replace the original element with the EncryptedData element. Most of the steps are performed automatically for you by .NET v2.0 classes.

Asymmetric XML Decryption Process

The process of decrypting the XML can be summarized into four steps,

  1. Select the EncryptedData element in an XML document
  2. Decrypt the session key using an asymmetric key (the private key is used)
  3. Decrypt the cipher data using the unencrypted symmetric encryption.
  4. Replace the EncryptedData element with the unencrypted element.

Most of the steps are performed automatically for you but .NET v2.0 classes.

Namespaces

The classes needed to perform XML Encryption can be found in three namespaces.

  • System.Xml – contains XML classes that are needed to contain XML data.
  • System.Security.Cryptography – contains encryption classes used to generate encryption keys.
  • System.Security.Cryptography.Xml – contains XML Encryption classes that are used to perform the encryption.

Encrypting XML with .NET

A working sample application accompanies this article which is similar to the code we’ll examine in this section. The sample application can serve as a base for you to add additional functionality, such as selecting a single node or leading the asymmetric key.

First load the asymmetric public key used to encrypt the session key.

//create asymmetric key for encrypting the session key
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
//load the public keys, to encrypt the XML is the recipients public key
XmlDocument pubKeys = new XmlDocument();
pubKeys.Load(Application.StartupPath + "\\xml.dev.keys.public");
//use the public key to encrypt the session key
rsa.FromXmlString(pubKeys.OuterXml);

Next load the Xml Document and select the node that’s going to be encrypted. The following example selects the node to encrypt using an XPath expression. If no expression is given then the whole document is encrypted.

//xml document
this.xmlEncDoc = new XmlDocument();
//TODO load some XML into the XmlDocument

XmlElement encElement;
//if there is no xpath value then
if (xpath == string.Empty)
{
//encrypt the document element
encElement = this.xmlEncDoc.DocumentElement;
}
else
{
XmlNamespaceManager xmlns = this.xmlCntrlr.xmlnsManager;
//select only the first matching node (be precise with xpath)
encElement = this.xmlEncDoc.SelectSingleNode(xpath, xmlns) as XmlElement;
}

Use the EncryptedXml class to encrypt the data and session keys.

//a class to perform encryption on Xml Document
EncryptedXml xmlEnc = new EncryptedXml(this.xmlEncDoc);
//add a "session" key encoded with rsa
xmlEnc.AddKeyNameMapping("session", rsa);

//encrypt the data using the session key
//creates a new session key called "session"
//this is automatically stored in KeyInfo element
EncryptedData encData = xmlEnc.Encrypt(encElement, "session");

Replace the original element with its encrypted equivalent.

//replace the original element with the encrypted element
EncryptedXml.ReplaceElement(encElement, encData, false);

Decrypting XML with .NET

First load the private asymmetric key needed to decrypt the session key.

//create asymmetric key for decrypting the session key
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();

//load the private keys, to decrypt the session keys
XmlDocument privKeys = new XmlDocument();
privKeys.Load(Application.StartupPath + "\\xml.dev.keys.private");
//use the private key to decrypt the session key
rsa.FromXmlString(privKeys.OuterXml);

Add a key name mapping to the encrypted document that specifies which private key should be used to decrypt the named session key.

//decrypt the document <EncryptedData> elements using the named key
EncryptedXml encXml = new EncryptedXml(xmlEncDoc);
encXml.AddKeyNameMapping("session", rsa);

Then decrypt the document, this will decrypt each of the Encrypted Data elements with the specified keys.

//decrypts all the <EncryptedData> items,
//with the "session" key that was encrypted with rsa
encXml.DecryptDocument();

Summary

XML Encryption is a W3 Standard to encrypting XML. It does this in such a way that the encrypted data remains and can be treated as XML. It uses both asymmetric and symmetric encryption algorithms, symmetric to encrypt the data and asymmetric to encrypt the symmetric session key. Both the session key and the cipher data are stored together in an XML element called EncryptedData. The EncryptedData element contains a series of child elements that describe the algorithms used during the encryption process, as well as containing key information and the cipher data.

References

W3C Encryption Standard

Download Source Code

XMLEncryption Sample Project

打印 | 发表于 2007年2月1日 16:03

评论

# Alden

http://cc10dce98a73f00e5aa11cca4e2ae648-t.gf7tiuy9.info cc10dce98a73f00e5aa11cca4e2ae648 [url]http://cc10dce98a73f00e5aa11cca4e2ae648-b1.gf7tiuy9.info[/url] [url=http://cc10dce98a73f00e5aa11cca4e2ae648-b2.gf7tiuy9.info]cc10dce98a73f00e5aa11cca4e2ae648[/url] [u]http://cc10dce98a73f00e5aa11cca4e2ae648-b3.gf7tiuy9.info[/u] b8c211221d19f4c8bbabc2332ed541f5
2007/4/16 22:25 | Sawyer

# loan rate

7DUBOL http://myblog.es/cavin/art/1164280/Online_pharmacy_resources loan [url=http://myblog.es/edvin/gb]mortgage[/url] mortgage loan loan
2007/5/14 12:35 | loan rate

# loan rate

G8WIH3 http://otyanoma.net/~raiden/ragn/mtcgi/mt-comments.cgi loan [url=http://otyanoma.net/~raiden/ragn/mtcgi/mt-comments.cgi]cheap loan[/url] cheap loan loan loan
2007/5/14 12:35 | loan rate

# rcgpan jnvikbyo

rzeoqthc pnir dlvjhrn ytqkzc ejazxs zwrvhtol yfmsvjbaw
2007/6/28 2:22 | colbtg@mail.com

# lahwt recixyz

rdnwzmlg cqftupsn jzidatm cdpr rmwtsg pkeh ycjkupzle http://www.jfpl.rkuinvwl.com
2007/6/28 2:22 | izohj@mail.com

# rcvbwi vrnfeb

etqhyd wfaedst jleskvn onqvh xmraovwn unvsaxwoe aykzv kdenbyj wsykfe
2007/6/28 2:22 | isolanj@mail.com

# http://waser.net

It is very creative and includes a wealth of information.
2007/7/8 8:25 | Ricky

# http://www.exif.org/forum/topic.asp?TOPIC_ID=376

The Best.
Super!
2007/7/8 18:23 | Hovard

# http://phentermineonlinepharmacy.sblog.cz

Glad to see other.
Is cool and to say hello.
2007/7/8 19:14 | Oldman

# http://orderphentermineonline.sblog.cz

Ok! Master!
It's vonderful.
2007/7/8 19:39 | Max

# http://buycheapdietphenterminepill.sblog.cz

It is very creative.
Ok! Master!
2007/7/8 20:07 | Iuuper

# http://cheapphentermineovernightdelivery.sblog.cz

Its the second time.
I visited your web site.
2007/7/8 20:33 | Tory

# http://www.instantbulletin.com/forum/?mforum=whereto

Ok! Beautyful.
And my grandpa is a train finatic.
2007/7/8 21:25 | Saturn

# http://www.instantbulletin.com/forum/?mforum=purchaseviagra

The Best.
Fabulous Website!
2007/7/9 1:52 | Oldman

# http://cheapphentermineovernightdelivery.sblog.cz

Is cool and to say hello.
It's fine.
2007/7/9 2:23 | Dimos

# http://www.instantbulletin.com/forum/?mforum=alternativenew

Moon Freddie.
Its the second time.
2007/7/9 3:43 | Grad

# http://eviagranoprescription.sblog.cz

I visited your web site.
Looks interesting.
2007/7/9 4:28 | Mungo

# http://tramadolhydrochloridecod.sblog.cz

Best site!
Thanks.
2007/7/9 4:54 | Minko

# http://www.instantbulletin.com/forum/?mforum=alternativenew

Fine!
Super!
2007/7/9 5:33 | Jim

# http://web.scc.losrios.edu/practice4/discuss/msgReader$22

It's fine.
Is cool and to say hello.
2007/7/9 6:00 | Dimos

# Yahir

http://95ab8aa8d10cc098c113352cbab60003-t.nbajgi.org 95ab8aa8d10cc098c113352cbab60003 [url]http://95ab8aa8d10cc098c113352cbab60003-b1.nbajgi.org[/url] [url=http://95ab8aa8d10cc098c113352cbab60003-b2.nbajgi.org]95ab8aa8d10cc098c113352cbab60003[/url] [u]http://95ab8aa8d10cc098c113352cbab60003-b3.nbajgi.org[/u] b4cf0500ad83f50d682dcb1aaa1cd77f
2007/7/9 7:31 | Aaron

# http://cheapphentermineyellow.sblog.cz

Its the second time.
Fine!
2007/7/9 21:53 | Utah

# http://www.instantbulletin.com/forum/?mforum=onlinecod

Thanks.
Ok! Beautyful.
2007/7/9 23:19 | Moonk

# http://www.instantbulletin.com/forum/?mforum=whereto

Best site!
I really enjoyed your page.
2007/7/9 23:42 | Dimos

# http://ggenericviagraovernightdelivery.sblog.cz

It's fine.
I visited your web site.
2007/7/10 2:41 | Red

# http://wheretobuyviagraonline.sblog.cz

And my grandpa is a train finatic.
It's fine.
2007/7/10 4:38 | Minko

# http://noprescription.sblog.cz

Sample design...
Ok! Master!
2007/7/10 7:40 | Red

# http://wheretobuyviagraonline.sblog.cz

It's vonderful.
And my grandpa is a train finatic.
2007/7/10 7:59 | Saeko

# http://losangeles.craigslist.org/lac/biz/369146642.html

Ok! Best regards!
And my grandpa is a train finatic.
2007/7/10 10:53 | Diter

# http://cheapestviagraprices.sblog.cz

Super!
Moon Freddie.
2007/7/10 12:24 | Tory

# http://cheapphentermineyellow.sblog.cz

Fabulous Website!
Checking in to see if everybody.
2007/7/10 16:21 | Cruger

# http://cheapviagrapills.sblog.cz

Super!
I really enjoyed your page.
2007/7/10 16:56 | Cruger

# http://noprescriptionphentermine375.sblog.cz

Checking in to see if everybody.
And includes a wealth of information.
2007/7/10 17:53 | Minko

# http://cheapphentermineovernightdelivery.sblog.cz

It's vonderful.
Is cool and to say hello.
2007/7/10 18:27 | Red

# http://noprescriptionphentermine375.sblog.cz

Fabulous Website!
Sample design...
2007/7/10 23:51 | Robert

# http://www.instantbulletin.com/forum/?mforum=purchaseviagra

It is very creative.
This is super.
2007/7/11 7:46 | Mungo

# http://www.instantbulletin.com/forum/?mforum=purchaseviagra

Glad to see other.
Moon Freddie.
2007/7/11 9:55 | Rob

# http://www.instantbulletin.com/forum/?mforum=purchaseviagra

The Best.
Moon Freddie.
2007/7/11 10:12 | Max

# http://www.instantbulletin.com/forum/?mforum=cheapestplace

It's vonderful.
And includes a wealth of information.
2007/7/11 11:31 | Minko

# http://buyphentermineusingpaypal.sblog.cz

Its the second time.
And my grandpa is a train finatic.
2007/7/11 12:04 | Tory

# http://losangeles.craigslist.org/lac/biz/369115617.html

Ok! Beautyful.
Fine!
2007/7/11 13:11 | Utah

# http://lowestpricephentermine.sblog.cz

Ok! Master!
Checking in to see if everybody.
2007/7/11 14:11 | Iuuper

# http://cheapesttram.mastertopforum.net

Its the second time.
I really enjoyed your page.
2007/7/12 5:40 | Mungo

# http://losangeles.craigslist.org/sfv/biz/369120359.html

And includes a wealth of information.
Fabulous Website!
2007/7/12 6:23 | Markos

# http://losangeles.craigslist.org/lac/biz/369115617.html

It is very creative.
Ok! Best regards!
2007/7/12 6:54 | Cruger

# http://losangeles.craigslist.org/lac/biz/369093827.html

Ok! Master!
Super!
2007/7/12 7:41 | Minko

# http://losangeles.craigslist.org/sfv/biz/369120359.html

And includes a wealth of information.
Ok! Beautyful.
2007/7/12 10:30 | Rob

# http://losangeles.craigslist.org/lac/biz/369146642.html

Ok! Beautyful.
Thanks.
2007/7/12 10:51 | Saeko

# http://overnight.mastertopforum.net/?tramadol-overnight-delivery

It's fine.
Moon Freddie.
2007/7/12 20:55 | Eros

# http://delivery.mastertopforum.net/?tramadol-cash-on-delivery

It's fine.
Super!
2007/7/12 23:22 | Iuuper

# http://www.opensolaris.org/jive/thread.jspa?threadID=34971&tstart=0

Best site!
Checking in to see if everybody.
2007/7/13 12:01 | Dopler

# http://web.scc.losrios.edu/practice4/discuss/msgReader$29?mode=topic&y=2007&m=7&d=12

Fine!
Its the second time.
2007/7/13 12:17 | Oldman

# http://web.scc.losrios.edu/practice4/discuss/msgReader$33?mode=topic&y=2007&m=7&d=12

And includes a wealth of information.
Looks interesting.
2007/7/13 12:38 | Saturn

# http://cheapesttram.mastertopforum.net

It's fine.
It's fine.
2007/7/13 14:24 | Minko

# http://web.scc.losrios.edu/practice4/discuss/msgReader$24?mode=topic&y=2007&m=7&d=12

I really enjoyed your page.
It's fine.
2007/7/13 14:42 | Markos

# http://web.scc.losrios.edu/practice4/discuss/msgReader$32?mode=topic&y=2007&m=7&d=12

Looks interesting.
Looks interesting.
2007/7/13 16:22 | Ivan

# http://www.opensolaris.org/jive/thread.jspa?threadID=34971&tstart=0

Looks interesting.
It's vonderful.
2007/7/13 22:46 | Rupert

# http://delivery.mastertopforum.net/?tramadol-cash-on-delivery

Fabulous Website!
Best site!
2007/7/13 23:22 | Iuuper

# http://tramadolhcl50.mastertopforum.net/?tramadol-hcl-50-mg-tab

Sample design...
I really enjoyed your page.
2007/7/13 23:40 | Robert

# http://web.scc.losrios.edu/practice4/discuss/msgReader$31?mode=topic&y=2007&m=7&d=12

Checking in to see if everybody.
Is cool and to say hello.
2007/7/13 23:56 | Moonk

# http://www.opensolaris.org/jive/thread.jspa?threadID=34972&tstart=0

Thanks.
Ok! Master!
2007/7/14 0:43 | Dopler

# http://www.opensolaris.org/jive/thread.jspa?threadID=34960&tstart=0

Looks interesting.
Checking in to see if everybody.
2007/7/14 1:01 | Eros

# http://web.scc.losrios.edu/practice4/discuss/msgReader$32?mode=topic&y=2007&m=7&d=12

Fine!
And includes a wealth of information.
2007/7/14 1:16 | Utah

# http://overnight.mastertopforum.net/?tramadol-overnight-delivery

Ok! Master!
I really enjoyed your page.
2007/7/14 1:32 | Rob

# http://web.scc.losrios.edu/practice4/discuss/msgReader$31?mode=topic&y=2007&m=7&d=12

This is super.
And includes a wealth of information.
2007/7/14 1:48 | Cruger

# http://web.scc.losrios.edu/practice4/discuss/msgReader$29?mode=topic&y=2007&m=7&d=12

Ok! Beautyful.
The Best.
2007/7/14 2:25 | Moonk

# http://onlinepharmacy.mastertopforum.com

Checking in to see if everybody.
The Best.
2007/7/14 17:31 | Hovard

# http://web.scc.losrios.edu/practice4/discuss/msgReader$27?mode=topic&y=2007&m=7&d=12

Glad to see other.
Super!
2007/7/14 21:18 | Hovard

# http://www.opensolaris.org/jive/thread.jspa?threadID=34972&tstart=0

Checking in to see if everybody.
I really enjoyed your page.
2007/7/14 21:35 | Cruger

# http://www.projectmainstream.net/forum/topic.asp?TOPIC_ID=687

I really enjoyed your page.
I really enjoyed your page.
2007/7/15 0:01 | Red

# http://tramadolhcl50.mastertopforum.net/?tramadol-hcl-50-mg-tab

Checking in to see if everybody.
Ok! Master!
2007/7/15 0:16 | Dimos

# http://www.projectmainstream.net/forum/topic.asp?TOPIC_ID=692

It is very creative.
It's vonderful.
2007/7/15 0:30 | Oldman

# http://cheapesttram.mastertopforum.net

Sample design...
Thanks.
2007/7/15 1:00 | Mungo

# http://www.opensolaris.org/jive/thread.jspa?threadID=34971&tstart=0

Super!
It's fine.
2007/7/15 1:19 | Saturn

# http://buylevitranow.mastertopforum.net

Glad to see other.
I really enjoyed your page.
2007/7/15 1:49 | Minko

# http://web.scc.losrios.edu/practice4/discuss/msgReader$28?mode=topic&y=2007&m=7&d=12

Super!
Ok! Best regards!
2007/7/15 2:31 | Minko

# http://web.scc.losrios.edu/practice4/discuss/msgReader$30?mode=topic&y=2007&m=7&d=12

Glad to see other.
The Best.
2007/7/15 8:59 | Dopler

# http://www.opensolaris.org/jive/thread.jspa?threadID=34960&tstart=0

Is cool and to say hello.
It's vonderful.
2007/7/15 9:30 | Eros

# http://www.projectmainstream.net/forum/topic.asp?TOPIC_ID=689

It's vonderful.
Checking in to see if everybody.
2007/7/15 15:36 | Moonk

# http://www.projectmainstream.net/forum/topic.asp?TOPIC_ID=691

I really enjoyed your page.
Ok! Beautyful.
2007/7/15 17:56 | Mungo

# http://www.projectmainstream.net/forum/topic.asp?TOPIC_ID=685

Is cool and to say hello.
Looks interesting.
2007/7/15 18:14 | Saturn

# http://www.opensolaris.org/jive/thread.jspa?threadID=34960&tstart=0

Thanks.
Super!
2007/7/15 20:48 | Rupert

# http://www.projectmainstream.net/forum/topic.asp?TOPIC_ID=692

Ok! Best regards!
Best site!
2007/7/15 23:34 | Minko

# http://www.opensolaris.org/jive/thread.jspa?threadID=34971&tstart=0

Ok! Master!
Sample design...
2007/7/16 1:03 | Diter

# http://web.scc.losrios.edu/practice4/discuss/msgReader$32?mode=topic&y=2007&m=7&d=12

It's fine.
Sample design...
2007/7/16 1:21 | Grad

# http://www.wavelet.org/phpBB2/viewtopic.php?t=108376

And my grandpa is a train finatic.
Glad to see other.
2007/7/16 1:40 | Tory

# http://web.scc.losrios.edu/practice4/discuss/msgReader$26?mode=topic&y=2007&m=7&d=12

Best site!
It's fine.
2007/7/16 2:18 | Saturn

# http://www.wavelet.org/phpBB2/viewtopic.php?t=108265

Moon Freddie.
This is super.
2007/7/16 2:34 | Mungo

# http://www.opensolaris.org/jive/thread.jspa?threadID=34972&tstart=0

It's fine.
The Best.
2007/7/16 3:05 | Tory

# http://www.wavelet.org/phpBB2/viewtopic.php?t=108265

It's fine.
I really enjoyed your page.
2007/7/16 3:22 | Robert

# http://web.scc.losrios.edu/practice4/discuss/msgReader$31?mode=topic&y=2007&m=7&d=12

Ok! Best regards!
Moon Freddie.
2007/7/16 3:37 | Saturn

# http://web.scc.losrios.edu/practice4/discuss/msgReader$25?mode=topic&y=2007&m=7&d=12

Looks interesting.
Ok! Master!
2007/7/16 7:36 | Dopler

# http://tramadolhcl50.mastertopforum.net/?tramadol-hcl-50-mg-tab

Super!
Fine!
2007/7/16 7:52 | Moonk

# http://web.scc.losrios.edu/practice4/discuss/msgReader$32?mode=topic&y=2007&m=7&d=12

Sample design...
The Best.
2007/7/16 8:07 | Saturn

# http://www.opensolaris.org/jive/thread.jspa?threadID=34960&tstart=0

Fine!
Ok! Best regards!
2007/7/16 8:20 | Markos

# http://overnight.mastertopforum.net/?tramadol-overnight-delivery

Its the second time.
Thanks.
2007/7/16 9:06 | Dimos

# http://web.scc.losrios.edu/practice4/discuss/msgReader$33?mode=topic&y=2007&m=7&d=12

Sample design...
Glad to see other.
2007/7/16 10:00 | Oldman

# http://buylevitranow.mastertopforum.net

The Best.
I really enjoyed your page.
2007/7/16 12:55 | Jim

# http://web.scc.losrios.edu/practice4/discuss/msgReader$30?mode=topic&y=2007&m=7&d=12

It's fine.
And my grandpa is a train finatic.
2007/7/16 14:13 | Moonk

# http://buylevitranow.mastertopforum.net

Thanks.
Moon Freddie.
2007/7/16 16:14 | Rob

# http://tramadolhcl50.mastertopforum.net/?tramadol-hcl-50-mg-tab

Moon Freddie.
It's vonderful.
2007/7/16 17:50 | Red

# http://web.scc.losrios.edu/practice4/discuss/msgReader$29?mode=topic&y=2007&m=7&d=12

This is super.
And my grandpa is a train finatic.
2007/7/16 19:51 | Cruger

# http://web.scc.losrios.edu/practice4/discuss/msgReader$31?mode=topic&y=2007&m=7&d=12

Thanks.
Fine!
2007/7/16 21:57 | Dimos

# http://www.projectmainstream.net/forum/topic.asp?TOPIC_ID=684

I visited your web site.
Checking in to see if everybody.
2007/7/16 22:58 | Saeko

# http://ai.vancouver.wsu.edu/jige/forum/viewtopic.php?t=28

Checking in to see if everybody.
Fabulous Website!
2007/7/17 0:26 | Markos

# http://www.wavelet.org/phpBB2/viewtopic.php?t=108371

Is cool and to say hello.
Thanks.
2007/7/17 1:00 | Kole

# http://ai.vancouver.wsu.edu/jige/forum/viewtopic.php?t=35

Ok! Beautyful.
Ok! Master!
2007/7/17 3:04 | Minko

# http://www.wavelet.org/phpBB2/viewtopic.php?t=108371

Ok! Best regards!
Checking in to see if everybody.
2007/7/17 10:04 | Rupert

# Madison

http://b7bebe2acdb72d7f4dc5a4ac48c8d83a-t.xkktxb.org b7bebe2acdb72d7f4dc5a4ac48c8d83a [url]http://b7bebe2acdb72d7f4dc5a4ac48c8d83a-b1.xkktxb.org[/url] [url=http://b7bebe2acdb72d7f4dc5a4ac48c8d83a-b2.xkktxb.org]b7bebe2acdb72d7f4dc5a4ac48c8d83a[/url] [u]http://b7bebe2acdb72d7f4dc5a4ac48c8d83a-b3.xkktxb.org[/u] 8d1f2bfe3cbc5359328d95464cab8b7c
2007/7/17 12:30 | Dereck

# http://ai.vancouver.wsu.edu/jige/forum/viewtopic.php?t=29

Fine!
Checking in to see if everybody.
2007/7/17 22:57 | Red

# http://ai.vancouver.wsu.edu/jige/forum/viewtopic.php?t=33

I visited your web site.
And my grandpa is a train finatic.
2007/7/18 0:18 | Eros

# http://ai.vancouver.wsu.edu/jige/forum/viewtopic.php?t=32

Ok! Master!
Is cool and to say hello.
2007/7/18 7:18 | Red

# 翻译公司

[url=http://www.jiayinte.com]翻译[/url] [url=http://www.jiayinte.com]翻译公司[/url]
[url=http://www.jiayinte.com]北京翻译公司[/url] [url=http://www.jiayinte.com]上海翻译公司[/url]
[url=http://www.czfw.net/education/]培训[/url] [url=http://www.jiayinte.cn]翻译公司[/url]
[url=http://www.jiayinte.cn]翻译[/url] [url=http://www.jiayinte.cn]北京翻译公司[/url]
[url=http://www.jiayinte.net/fygs/]翻译公司[/url] [url=http://www.jiayinte.cn]上海翻译公司[/url]
[url=http://www.jiayinte.net/sn1/]翻译公司[/url] [url=http://www.jiayinte.net/sn1/bbs/]翻译公司[/url]
[url=http://www.jiayinte.net/sn1/bbs/]翻译论坛[/url] [url=http://jiayinte1.blog.hexun.com/]翻译公司[/url]
[url=http://jiayinte.blog.hexun.com/]翻译公司[/url] [url=http://suzhenning2003.blog.hexun.com/]房屋出租[/url]
[url=http://www.czfw.net]同声传译[/url] [url=http://www.jiayinte.net/fygs/]翻译[/url] [url=http://www.czfw.net]同传[/url]
[url=http://www.czfw.net]同传设备[/url] [url=http://www.czfw.net]同声翻译[/url]
[url=http://www.jiayinte.net/sn/]翻译[/url][url=http://www.jiayinte.net/fyjd/]翻译[/url]
[url=http://www.jiayinte.net/fyjd/]翻译公司[/url] [url=http://hexun.com/suzhenning2003/default.html]房屋出租[/url] [url=http://jiayinte.blogbus.com/index.html]翻译公司[/url] [url=http://blog.yesky.com/blog/jiayinte/]翻译公司[/url] [url=http://www.czfw.net/education/show.aspx?id=33&cid=1]加盟[/url][url=http://hexun.com/suzhenning2004/default.html]招聘[/url]
[url= http://www.czfw.net/education/]培训[/url]
[url=http://www.czfw.net/education/show.aspx?id=23&cid=2]少儿英语[/url] [url=http://jiayinte1.blogbus.com/index.html]翻译公司[/url]
[url=http://www.czfw.net/education/show.aspx?id=51&cid=3]新加坡留学[/url]
[url=http://www.czfw.net/education/show.aspx?id=47&cid=4]企业英语培训[/url]
[url=http://www.czfw.net/education/show.aspx?id=9&cid=5]英语夏令营[/url]
[url=http://www.blogcn.com/u/60/43/jiayinte/index.html]翻译公司[/url]
[url=http://www.jiayinte.com/zhuyaobumen/shanghai.html]上海翻译公司[/url]
[url=http://www.jiayinte.com/zhuyaobumen/guangzhou.html]广东翻译公司[/url]
[url=http://www.jiayinte.com/zhuyaobumen/jinan.html]济南翻译公司[/url]
[url=http://www.jiayinte.com/zhuyaobumen/qingdao.html]青岛翻译公司[/url]
[url=http://www.jiayinte.com/zhuyaobumen/wuhan.html]武汉翻译公司[/url]
[url=http://www.jiayinte.com/jigou/hangzhou.html]杭州翻译公司[/url]
[url=http://www.jiayinte.com/jigou/tianjin.html]天津翻译公司[/url]
2007/7/18 9:29 | 翻译公司

# http://www.opensolaris.org/jive/thread.jspa?threadID=34972&tstart=0

Fine!
Sample design...
2007/7/18 10:45 | Moonk

# http://ai.vancouver.wsu.edu/jige/forum/viewtopic.php?t=32

Ok! Beautyful.
Moon Freddie.
2007/7/18 12:51 | Tory

# http://www.projectmainstream.net/forum/topic.asp?TOPIC_ID=687

I really enjoyed your page.
Glad to see other.
2007/7/18 14:52 | Saturn

# http://www.projectmainstream.net/forum/topic.asp?TOPIC_ID=687

Ok! Beautyful.
Fabulous Website!
2007/7/18 17:59 | Max

# http://ai.vancouver.wsu.edu/jige/forum/viewtopic.php?t=29

Glad to see other.
It's vonderful.
2007/7/18 22:13 | Grad

# http://ai.vancouver.wsu.edu/jige/forum/viewtopic.php?t=148

This is super.
I really enjoyed your page.
2007/7/18 23:40 | Grad

# http://www.wavelet.org/phpBB2/viewtopic.php?t=108265

Best site!
And my grandpa is a train finatic.
2007/7/19 3:32 | Diter

# http://cheaptramadolnoprescription.xforum.se

Sample design...
Fine!
2007/7/19 5:03 | Robert

# http://www.wavelet.org/phpBB2/viewtopic.php?t=108372

Moon Freddie.
Fine!
2007/7/19 6:22 | Oldman

# http://cheaptramadolnoprescription.xforum.se

And my grandpa is a train finatic.
Ok! Beautyful.
2007/7/19 7:01 | Kole

# http://ai.vancouver.wsu.edu/jige/forum/viewtopic.php?t=148

Ok! Beautyful.
It's fine.
2007/7/19 9:02 | Mungo

# http://www.opensolaris.org/jive/thread.jspa?threadID=34972&tstart=0

Its the second time.
Looks interesting.
2007/7/19 9:19 | Dimos

# http://ai.vancouver.wsu.edu/jige/forum/viewtopic.php?t=28

It's vonderful.
Super!
2007/7/19 9:37 | Dimos

# http://web.scc.losrios.edu/practice4/discuss/msgReader$41

Sample design...
Ok! Best regards!
2007/7/19 15:33 | Hovard

# http://ai.vancouver.wsu.edu/jige/forum/viewtopic.php?t=116

Looks interesting.
Thanks.
2007/7/20 0:55 | Saturn

# http://buytramadolhclliquid.xforum.se

Ok! Master!
Ok! Beautyful.
2007/7/20 1:19 | Jim

# http://web.scc.losrios.edu/practice4/discuss/msgReader$35

Fine!
Fabulous Website!
2007/7/20 1:58 | Max

# http://ai.vancouver.wsu.edu/jige/forum/viewtopic.php?t=115