SlideShare una empresa de Scribd logo
1 de 20
XML Security &
Canonicalization
Security Overview
1
The 3 pillars of secure E-
commerce
Confidentiality:
Ensuring that information
is not made available or
disclosed to
unauthorized individuals,
entities, or processes.
Authentication
The ability to determine
that a message really
comes from the listed
sender
Data integrity
Ensuring that when
information arrives at its
destination it hasn't been
tampered with or altered
in transit from its original
form, either accidentally
or deliberately.
3
 These three dimensions of secure e-commerce rest on a foundation of
cryptography.
 All cryptography operates according to the same basic principle.
 Approaches to cryptography fall into two main categories:
 single-key encryption- which relies on a single secret key to encode and
decode information.
 public-key cryptography- which uses two keys, one private and the other
public, to encode and decode data.
4
Single-key cryptography does not
scale to the Web. Do you agree?
5
Public-key cryptography
 Public-key cryptography is based on complementary public and
private keys.
 It enables secure communication between parties without the need
to exchange a secret key .
 It is the basis for privacy, authentication, data integrity, and
nonrepudiation, the basic elements for any Web-based e-commerce
system.
 The complementary public and private keys can be used to handle
confidentiality and authentication. Each requires key usage in a
slightly different way.
Confidentiality and
Authentication using keys.
◇ Confidentiality in digital
communication can be
accomplished by using
someone's public key to
send a message.
◇ Encrypting with a public
key ensures
confidentiality.
◇ Encrypting with a private
key ensures
authentication.
◇ messages encoded with
the private key can be
decoded only by the
public key, thereby
ensuring authentication.
Public-key (asymmetric) cryptography uses mathematically generated public and private keys.
Data Integrity
◇ Data integrity ensures that the message received is the message
sent.
◇ The technology for validating messages is called digital hashing.
◇ A digest or digital hash is an algorithmically generated short string
of characters that uniquely characterizes a document.
◇ Thus, to test the integrity of a document, one compares the digital
hash of the original document with that of the version received;
◇ if the hashes do not match, the data integrity of the document has
been compromised.
◇ Although it's theoretically possible for two different documents to
generate the same digital hash, it's practically impossible to use
this fact to defeat the comparison procedure.
9
Data Integrity
◇ A document digest is an
algorithmically generated,
abbreviated, unique representation
of a document. If one character of
the document is altered, the
document digest will be different.
10
Canonicalization
2
Need of canonicalization
◇ The purpose of finding the canonical (or simplified) form of
an XML document is to determine logical equivalence
between XML documents. W3C has defined
canonicalization rules such that the canonical form of two
XML documents will be the same if they are logically
equivalent.
◇ Whenever we are required to determine whether two XML
documents are logically equivalent, we will canonicalize
each of them and compare the canonical forms octet-by-
octet. If the two canonical forms contain the same
sequence of octets, we will conclude that the two XML files
are logically equivalent.
steps to canonicalize an
XML document
◇ Encoding Scheme
◇ Line Breaks
◇ Attribute values are
normalized
◇ Double qu'ôtes for
Attribute values
◇ Special Characters in
Attribute Values and
Character Content
◇ Entity References
◇ Default Attributes
◇ XML and DTD
declarations
◇ White Space outside the
Document Element
◇ White Space in Start and
End Elements
◇ Empty Elements
◇ Namespace Declarations
◇ Ordering of Namespace
Declarations and
Attributes
13
14
◇ Encoding Scheme
 The canonical XML specification dictates that the canonical form of XML documents
should be encoded in UTF-8 encoding. Therefore, if the XML file to be canonicalized
has any other encoding, it should be changed to UTF-8.
◇ Line Breaks
 XML files are all simple text files, therefore #xA and #xD are used as line breaks in all
XML files.
 The canonical form of XML requires that all line breaks be replaced with #xA. This
should be done before starting to process the XML file.
◇ Attribute values are normalized
 Ensuring that when information arrives at its destination it hasn't been tampered with or
altered in transit from its original form, either accidentally or deliberately.
Double quotes for Attribute values:Only double quotes should be
used to encapsulate attribute values in canonical form.
Special Characters in Attribute Values and Character Content:
The Canonical XML specification requires that all special characters
(e.g. double quotes) in attribute values and element content be
replaced with character entities (e.g. " for double quotes)
Entity References: Canonical XML requires that all entity
references be replaced with the content represented by the entity .
Default Attributes: Canonical XML requires that default attributes
should be included in the canonical XML form.
XML and DTD declarations: Canonical XML does not require XML
and DTD declarations. Therefore XML and DTD declarations should
be removed in the canonical form.
15
See the difference!
White Space outside the Document Element: A Canonical XML
document starts with the '<' character. This means that there should be
no white space before the first node.
White Space in Start and End Elements:
Start and End elements should have normalized white space in
canonical form. This means there should be:
• No white space between the left angle bracket ('<') and the name of
a start element. Similarly there should be no space between a slash
('/') and the name of an end element.
• A single #x20 character between the element name and the first
attribute name, if present.
• No white space before and after the equality sign in attribute-value
pairs.
• A single #x20 character between attribute-value pairs.
• No white space following the closing double quote of the last
attribute's value.
• If there are no attributes, there should be no white space between
the element name and the right angle bracket '>'.
Empty Elements: Canonical XML requires start-end tag pairs for
all elements, which includes empty elements as well.
Therefore, all empty elements of the form <emptyElement/>
need to be converted to <emptyElement></emptyElement>.
Namespace Declarations: Canonical XML requires preserving
all namespace declarations as such (along with the
namespace prefixes) except superfluous namespace
declarations.
Ordering of Namespace Declarations and Attributes:
Canonical XML requires the inclusion of namespace
declarations and attributes in ascending lexicographic order.
Inside an opening element, all namespace declarations should
appear first, followed by the attribute-value pairs.
18
XML code before
canonicalization
After canonicalization
Thanks!
Any questions?
20

Más contenido relacionado

La actualidad más candente

Normalization 1 nf,2nf,3nf,bcnf
Normalization 1 nf,2nf,3nf,bcnf Normalization 1 nf,2nf,3nf,bcnf
Normalization 1 nf,2nf,3nf,bcnf Shriya agrawal
 
Chapter-2 Database System Concepts and Architecture
Chapter-2 Database System Concepts and ArchitectureChapter-2 Database System Concepts and Architecture
Chapter-2 Database System Concepts and ArchitectureKunal Anand
 
Transforming xml with XSLT
Transforming  xml with XSLTTransforming  xml with XSLT
Transforming xml with XSLTMalintha Adikari
 
Unit 1: Introduction to DBMS Unit 1 Complete
Unit 1: Introduction to DBMS Unit 1 CompleteUnit 1: Introduction to DBMS Unit 1 Complete
Unit 1: Introduction to DBMS Unit 1 CompleteRaj vardhan
 
DDL And DML
DDL And DMLDDL And DML
DDL And DMLpnp @in
 
Mobile dbms
Mobile dbmsMobile dbms
Mobile dbmsTech_MX
 
Architecture of dbms(lecture 3)
Architecture of dbms(lecture 3)Architecture of dbms(lecture 3)
Architecture of dbms(lecture 3)Ravinder Kamboj
 
Object oriented database concepts
Object oriented database conceptsObject oriented database concepts
Object oriented database conceptsTemesgenthanks
 
Asynchronous Transfer Mode
Asynchronous Transfer ModeAsynchronous Transfer Mode
Asynchronous Transfer ModeNishant Munjal
 
Dijkstra & flooding ppt(Routing algorithm)
Dijkstra & flooding ppt(Routing algorithm)Dijkstra & flooding ppt(Routing algorithm)
Dijkstra & flooding ppt(Routing algorithm)Anshul gour
 
Xml Presentation-3
Xml Presentation-3Xml Presentation-3
Xml Presentation-3Sudharsan S
 
XML's validation - DTD
XML's validation - DTDXML's validation - DTD
XML's validation - DTDvidede_group
 

La actualidad más candente (20)

Normalization 1 nf,2nf,3nf,bcnf
Normalization 1 nf,2nf,3nf,bcnf Normalization 1 nf,2nf,3nf,bcnf
Normalization 1 nf,2nf,3nf,bcnf
 
Query processing
Query processingQuery processing
Query processing
 
Chapter-2 Database System Concepts and Architecture
Chapter-2 Database System Concepts and ArchitectureChapter-2 Database System Concepts and Architecture
Chapter-2 Database System Concepts and Architecture
 
Transforming xml with XSLT
Transforming  xml with XSLTTransforming  xml with XSLT
Transforming xml with XSLT
 
Unit 1: Introduction to DBMS Unit 1 Complete
Unit 1: Introduction to DBMS Unit 1 CompleteUnit 1: Introduction to DBMS Unit 1 Complete
Unit 1: Introduction to DBMS Unit 1 Complete
 
DDL And DML
DDL And DMLDDL And DML
DDL And DML
 
Mobile dbms
Mobile dbmsMobile dbms
Mobile dbms
 
Xml
XmlXml
Xml
 
Architecture of dbms(lecture 3)
Architecture of dbms(lecture 3)Architecture of dbms(lecture 3)
Architecture of dbms(lecture 3)
 
Object oriented database concepts
Object oriented database conceptsObject oriented database concepts
Object oriented database concepts
 
Voldemort
VoldemortVoldemort
Voldemort
 
Asynchronous Transfer Mode
Asynchronous Transfer ModeAsynchronous Transfer Mode
Asynchronous Transfer Mode
 
Xml ppt
Xml pptXml ppt
Xml ppt
 
XML
XMLXML
XML
 
Dijkstra & flooding ppt(Routing algorithm)
Dijkstra & flooding ppt(Routing algorithm)Dijkstra & flooding ppt(Routing algorithm)
Dijkstra & flooding ppt(Routing algorithm)
 
Introduction to XML
Introduction to XMLIntroduction to XML
Introduction to XML
 
Wap wml
Wap wmlWap wml
Wap wml
 
Xml Presentation-3
Xml Presentation-3Xml Presentation-3
Xml Presentation-3
 
XML Introduction
XML IntroductionXML Introduction
XML Introduction
 
XML's validation - DTD
XML's validation - DTDXML's validation - DTD
XML's validation - DTD
 

Similar a Xml security overview and canonicalization

Similar a Xml security overview and canonicalization (20)

WT UNIT-2 XML.pdf
WT UNIT-2 XML.pdfWT UNIT-2 XML.pdf
WT UNIT-2 XML.pdf
 
Intro xml
Intro xmlIntro xml
Intro xml
 
XML
XMLXML
XML
 
Web Technology Part 4
Web Technology Part 4Web Technology Part 4
Web Technology Part 4
 
Xml basics
Xml basicsXml basics
Xml basics
 
XML-Unit 1.ppt
XML-Unit 1.pptXML-Unit 1.ppt
XML-Unit 1.ppt
 
Web Technologies Unit 2 Print.pdf
Web Technologies Unit 2 Print.pdfWeb Technologies Unit 2 Print.pdf
Web Technologies Unit 2 Print.pdf
 
XML.pptx
XML.pptxXML.pptx
XML.pptx
 
Xml and DTD's
Xml and DTD'sXml and DTD's
Xml and DTD's
 
M.FLORENCE DAYANA WEB DESIGN -Unit 5 XML
M.FLORENCE DAYANA WEB DESIGN -Unit 5   XMLM.FLORENCE DAYANA WEB DESIGN -Unit 5   XML
M.FLORENCE DAYANA WEB DESIGN -Unit 5 XML
 
Basic xml syntax
Basic xml syntaxBasic xml syntax
Basic xml syntax
 
Xml dtd
Xml dtdXml dtd
Xml dtd
 
Xml 1
Xml 1Xml 1
Xml 1
 
Web Services Part 1
Web Services Part 1Web Services Part 1
Web Services Part 1
 
1 xml fundamentals
1 xml fundamentals1 xml fundamentals
1 xml fundamentals
 
Xml tutorial
Xml tutorialXml tutorial
Xml tutorial
 
Sgml and xml
Sgml and xmlSgml and xml
Sgml and xml
 
PHP XML
PHP XMLPHP XML
PHP XML
 
XML1.pptx
XML1.pptxXML1.pptx
XML1.pptx
 
Xml by Luqman
Xml by LuqmanXml by Luqman
Xml by Luqman
 

Último

Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...ranjana rawat
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝soniya singh
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Christo Ananth
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSISrknatarajan
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations120cr0395
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxJoão Esperancinha
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...Call Girls in Nagpur High Profile
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSKurinjimalarL3
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSRajkumarAkumalla
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 

Último (20)

Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSIS
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 

Xml security overview and canonicalization

  • 3. The 3 pillars of secure E- commerce Confidentiality: Ensuring that information is not made available or disclosed to unauthorized individuals, entities, or processes. Authentication The ability to determine that a message really comes from the listed sender Data integrity Ensuring that when information arrives at its destination it hasn't been tampered with or altered in transit from its original form, either accidentally or deliberately. 3
  • 4.  These three dimensions of secure e-commerce rest on a foundation of cryptography.  All cryptography operates according to the same basic principle.  Approaches to cryptography fall into two main categories:  single-key encryption- which relies on a single secret key to encode and decode information.  public-key cryptography- which uses two keys, one private and the other public, to encode and decode data. 4
  • 5. Single-key cryptography does not scale to the Web. Do you agree? 5
  • 6. Public-key cryptography  Public-key cryptography is based on complementary public and private keys.  It enables secure communication between parties without the need to exchange a secret key .  It is the basis for privacy, authentication, data integrity, and nonrepudiation, the basic elements for any Web-based e-commerce system.  The complementary public and private keys can be used to handle confidentiality and authentication. Each requires key usage in a slightly different way.
  • 7. Confidentiality and Authentication using keys. ◇ Confidentiality in digital communication can be accomplished by using someone's public key to send a message. ◇ Encrypting with a public key ensures confidentiality. ◇ Encrypting with a private key ensures authentication. ◇ messages encoded with the private key can be decoded only by the public key, thereby ensuring authentication.
  • 8. Public-key (asymmetric) cryptography uses mathematically generated public and private keys.
  • 9. Data Integrity ◇ Data integrity ensures that the message received is the message sent. ◇ The technology for validating messages is called digital hashing. ◇ A digest or digital hash is an algorithmically generated short string of characters that uniquely characterizes a document. ◇ Thus, to test the integrity of a document, one compares the digital hash of the original document with that of the version received; ◇ if the hashes do not match, the data integrity of the document has been compromised. ◇ Although it's theoretically possible for two different documents to generate the same digital hash, it's practically impossible to use this fact to defeat the comparison procedure. 9
  • 10. Data Integrity ◇ A document digest is an algorithmically generated, abbreviated, unique representation of a document. If one character of the document is altered, the document digest will be different. 10
  • 12. Need of canonicalization ◇ The purpose of finding the canonical (or simplified) form of an XML document is to determine logical equivalence between XML documents. W3C has defined canonicalization rules such that the canonical form of two XML documents will be the same if they are logically equivalent. ◇ Whenever we are required to determine whether two XML documents are logically equivalent, we will canonicalize each of them and compare the canonical forms octet-by- octet. If the two canonical forms contain the same sequence of octets, we will conclude that the two XML files are logically equivalent.
  • 13. steps to canonicalize an XML document ◇ Encoding Scheme ◇ Line Breaks ◇ Attribute values are normalized ◇ Double qu'ôtes for Attribute values ◇ Special Characters in Attribute Values and Character Content ◇ Entity References ◇ Default Attributes ◇ XML and DTD declarations ◇ White Space outside the Document Element ◇ White Space in Start and End Elements ◇ Empty Elements ◇ Namespace Declarations ◇ Ordering of Namespace Declarations and Attributes 13
  • 14. 14 ◇ Encoding Scheme  The canonical XML specification dictates that the canonical form of XML documents should be encoded in UTF-8 encoding. Therefore, if the XML file to be canonicalized has any other encoding, it should be changed to UTF-8. ◇ Line Breaks  XML files are all simple text files, therefore #xA and #xD are used as line breaks in all XML files.  The canonical form of XML requires that all line breaks be replaced with #xA. This should be done before starting to process the XML file. ◇ Attribute values are normalized  Ensuring that when information arrives at its destination it hasn't been tampered with or altered in transit from its original form, either accidentally or deliberately.
  • 15. Double quotes for Attribute values:Only double quotes should be used to encapsulate attribute values in canonical form. Special Characters in Attribute Values and Character Content: The Canonical XML specification requires that all special characters (e.g. double quotes) in attribute values and element content be replaced with character entities (e.g. &quot; for double quotes) Entity References: Canonical XML requires that all entity references be replaced with the content represented by the entity . Default Attributes: Canonical XML requires that default attributes should be included in the canonical XML form. XML and DTD declarations: Canonical XML does not require XML and DTD declarations. Therefore XML and DTD declarations should be removed in the canonical form. 15
  • 17. White Space outside the Document Element: A Canonical XML document starts with the '<' character. This means that there should be no white space before the first node. White Space in Start and End Elements: Start and End elements should have normalized white space in canonical form. This means there should be: • No white space between the left angle bracket ('<') and the name of a start element. Similarly there should be no space between a slash ('/') and the name of an end element. • A single #x20 character between the element name and the first attribute name, if present. • No white space before and after the equality sign in attribute-value pairs. • A single #x20 character between attribute-value pairs. • No white space following the closing double quote of the last attribute's value. • If there are no attributes, there should be no white space between the element name and the right angle bracket '>'.
  • 18. Empty Elements: Canonical XML requires start-end tag pairs for all elements, which includes empty elements as well. Therefore, all empty elements of the form <emptyElement/> need to be converted to <emptyElement></emptyElement>. Namespace Declarations: Canonical XML requires preserving all namespace declarations as such (along with the namespace prefixes) except superfluous namespace declarations. Ordering of Namespace Declarations and Attributes: Canonical XML requires the inclusion of namespace declarations and attributes in ascending lexicographic order. Inside an opening element, all namespace declarations should appear first, followed by the attribute-value pairs. 18