XML.orgXML.org
FOCUS AREAS |XML-DEV |XML.org DAILY NEWSLINK |REGISTRY |RESOURCES |ABOUT
OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
RE: [xml-dev] RE: XML parsers use what computational power?

Hi Folks,

Resolving these entities:

<!ENTITY ha1 "ha">
<!ENTITY ha2 "&ha1;&ha1;"> 
...
<!ENTITY ha128 "&ha127;&ha127;">

requires an amount of memory that is exponential to the number of entities.

Therefore an XML parser requires more computational power than a linear bounded automata [1]. Furthermore:
   
    Linear bounded automata are acceptors for 
    the class of context-sensitive languages. [1]

Therefore XML is more powerful than a context-sensitive language.

Experts recommend [2] that an input language not require more computational power than a deterministic pushdown automata. The XML language requires much more computational power than this.

Therefore, XML as an input language is too complex. It requires too much computational power. It's attack surface is too large (as evidenced by the dozens (hundreds) of vulnerabilities exposed in the last decade).

/Roger

[1] Linear automata: http://en.wikipedia.org/wiki/Linear_bounded_automaton

[2] Input languages should not require a computational power greater than D-PDA: http://www.cs.dartmouth.edu/~sergey/langsec/papers/Sassaman.pdf 



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS