This website houses notes from my studies at the University of Liverpool. If you see any errors or issues, please do open an issue on this site's GitHub.
This is a method of running queries on XML. They are an extension of XPath and therefore every XPath is an XQuery expression. For additional XQuery examples see this lecture video Syntax For the following tree: graph $doc -->|students|a[ ] a -->|student|$s $s -->|name| ''Anna'' $s -->|module| ''COMP207'' an XQuery...
General Form XPaths generally take the following form: /axis1::E1[C1]/axis2::E2[C2] axis are navigation axes. C are conditions. E are name or a tag, attribute or *. Navigation Axes Axis Shorthand Description attribute @ An attribute child Default (child:: can be omitted) Any child descendant //E instead of /descendant::E Any proper descendant...
XPath allows us to write queries that return a set of value or nodes from an XML document: Values Nodes Document Node The whole document. Element Node Includes the root. Attributes Inside the tags of elements. Path Expressions They take the following format: \[/E_1/E_2/E_3/\ldots/E_n\] This would select all nodes reachable...
This is the second way of defining the format of an XML file. Comparison to DTD XML schema should be used if you want more precision on the schema than offered by DTD. Positives: Defined in XML. Give bounds on number of occurrences. Can do unordered sets. Can do more...
There are two ways to define the format of XML files. This lecture explains how to use DTD. DTDs contain information about the structure of an XML document: Elements that may occur in the document. Sub-elements that an element may have. Attributes that an element may have Structure The are...
With a wireless network the arriving mobile must: Associate with the access point. Authenticate to the network. 802.11 Authentication & Encryption Discovery of Security Capabilities: AP advertises its presence, forms of authentication and encryption provided. Device requests specific forms of authentication and encryption desired. Although the device and AP are...
This protocol is deployed above the transport layer and provides: Confidentiality - Via Symmetric encryption. Integrity - Via cryptography hashing. Authentication - Via public key cryptography. TLS TLS is implemented in the application layer alongside HTTP. TLS 1.3 Cipher Suite TLS 1.3 allows for the following choices: 4 ciphers based...
Confidentiality If Alice wants to send a confidential email to Bob she can do the following: Generate a random symmetric private key $K_S$. Encrypt the message with $K_S$ (for efficiency). Also encrypt $K_S$ with Bob’s public key. Send both $K_S(m)$ and $K^+_B(K_S)$ to Bob. Bob will then: Use his privaet...
Digital Signatures Digital signatures should be: Verification of a document creator. Verifiable and non-forgettable. Must have only been created by the document creator. We can complete a simple digital signature by encrypting the document with your private key $K^-_B$. This is computationally expensive, especially as message length gets longer. Message...
In order for authentication to be secure you need to ensure that the protocol avoids replay attacks: This is where an attacker replays a recorded packet and is able to authenticate as you. Nonce To avoid this the server (Bob) can send a nonce (number used once) $R$ which Alice...