Document Security Language (DSL) and 

DSL Securing tool

http://www.xml-dsl.com/

Internet Computing Lab.
Dept. Computer Science and Information Engineering
National Taiwan Normal University
Taipei, Taiwan

  
 


Introduction:

  We designed and implemented an operational model for XML document security in which (1) the security of an XML document is ensured not by the system on which it resides but by document itself and (2) this security is automatic and efficient. Our operational model provides element-wise encryption that is more general than previous forms of XML security, by including element encryption, content encryption, and two types of attribute encryption. Moreover, the model of temporal-based element-wise digital signature is novel. 

   Based on the generalized operational model, we define a new language - called document security language (DSL) - to support it. We use the DSL to construct an automatic and efficient security environment for XML. The security information defined in DSL includes definitions for keys and algorithms, and a securing tool executes the algorithms with the corresponding keys. We also have developed a DSL editor with a friendly graphic user interface to make it easier for users to generate DSL documents.


 How does it work?

1. The operational model for securing XML documents

Click for the details.

2. The organization of the DSL securing tool

3. The Document Security Language (Word, PDF)


Installation:

(Currently, the software package can only be installed in Windows serial and our present version of DSL securing tool can  be executed in J2SE v 1.3.x or v 1.4.x.)

1. Prerequisite Software: Download and install them. 

2. Download DSL Securing tool (including DSL API package) and editor. 

3. Set up the  Java classpath

4. See C:\DSLT\doc\readme.html.   

* We also employ the extension mechanism of XSLT and DSL to implement the encryption and decryption transform. Click for the details. 


Usage:

1.  To encrypt and embed digital signature

 java iclab.ntnu.dsl.DSLEncryptv MyXmlDoc.xml  MyDSL.dsl  [MyXmlDoc-encrpted.xml] 

                                               [MyDSL-decrypt.dsl]  

   The first argument, MyXmlDoc.xml, is the name of the file ready to be encrypted. [MyXmlDoc-encrpted.xml] and [MyDSL-decrypt.dsl] are optional arguments.

Example:

java iclab.ntnu.dsl.DSLEncryptv  example.xml  example.dsl  example-encrypted.xml  example-decrypt.dsl

2.  To decrypt and verify the embedded digital signatures

 java iclab.ntnu.dsl.DSLDecryptv MyXmlDoc.xml   [MyDSL-decrypt.dsl] 

                                                 [MyXmlDoc-decrypted.xml]

   The first argument, MyXmlDoc.xml, is the name of the file ready to be decrypted. [MyXmlDoc-decrypted.xml] is optional argument.

Example:

java iclab.ntnu.dsl.DSLDecryptv  example-encrypted.xml  example-decrypt.dsl  example-decrypted.xml 

 


DSL Editor

   Coding a DSL document is quite tedious. DSL editor is designed to help the user with the writing of DSL documents. For details of the DSL editor, please click here .

 


DSL API

   For details of the DSL API, please click here .

     


History:

     
      May 09 2005
      October 22 2003
      June 05 2003
      October 04 2002
      July 31 2002
      August 15 2001
      February 23 2001

GH Hwang & TK Chang (Last updated on 2008/08/24 )

Problems with this website? Send mail to ghhwang@csie.ntnu.edu.tw or tkchang@mail.ndhu.edu.tw