In this course the student has to get to know new transfer protocols for the Internet, how to structure network applications and how to design and deploy services for web distributed applications. It must also gain the ability to deal with security problems in the network and, in particular, on the web, and gain insight into the problems of secure access to the information, privacy and digital rights. Finally, students will become familiar with the systems of distribution and management of multimedia content, including knowledge of protocols, standards and mechanisms for representation, exchange, security and interoperability.
Person in charge
Jaime M. Delgado Merce (
Silvia Llorente Viejo (
Technical Competences of each Specialization
CTE1 - Capability to model, design, define the architecture, implement, manage, operate, administrate and maintain applications, networks, systems, services and computer contents.
CTE2 - Capability to understand and know how to apply the operation and organization of Internet, technologies and protocols for next generation networks, component models, middleware and services.
CTE4 - Capability to design, develop, manage and evaluate mechanisms of certification and safety guarantee in the management and access to information in a local or distributed processing.
CTE12 - Capability to create and exploit virtual environments, and to the create, manageme and distribute of multimedia content.
Generic Technical Competences
CG1 - Capability to plan, calculate and design products, processes and facilities in all areas of Computer Science.
CG2 - Capacity for management of products and installations of computer systems, complying with current legislation and ensuring the quality of service.
CG3 - Capability to lead, plan and supervise multidisciplinary teams.
CG6 - Capacity for general management, technical management and research projects management, development and innovation in companies and technology centers in the area of Computer Science.
CG7 - Capacity for implementation, direction and management of computer manufacturing processes, with guarantee of safety for people and assets, the final quality of the products and their homologation.
CTR3 - Capacity of being able to work as a team member, either as a regular member or performing directive activities, in order to help the development of projects in a pragmatic manner and with sense of responsibility; capability to take into account the available resources.
CTR4 - Capability to manage the acquisition, structuring, analysis and visualization of data and information in the area of informatics engineering, and critically assess the results of this effort.
Distributed applications design
Application layer formats and protocols. HTML. XML. HTTP-based applications and services design. Distributed applications and remote operations. Web applications. Web services. WSDL, SOAP and REST.
Multimedia content transmission
HTML5 support to multimedia transmission. Streaming protocols. Streaming with HTTP. DASH.
1. Threats and security mechanisms.
2. Private key and public key. Algorithms for public key. Digital signature.
3. Public Key Infrastructure. Trust models.
4. Security in applications: XML Encryption, XML Signature. SAML, JWT, OAuth. Privacy. Intellectual property rights of multimedia content. Access control. Security and privacy in specific areas (eHealth, ...). New approaches in security (Blockchain, Quantum security, ...).
Network and transport layers for multimedia
IPv6, TCP vs. UDP, Protocols over UDP for big files transfer, Reliable UDP. UDP for HTTP (HTTP/3): QUIC (Quick UDP Internet Connections).
During the course, a project will be done in the lab sessions in small groups. The project aims to develop a web application that will integrate the concepts of the subject.
The project breaks down into three phases of two sessions each, covering topics such as web applications, web services and security. Each session corresponds to a delivery which is evaluated independently. The work performed on the project is incremental, since deliveries depend on the previous ones so as to achieve a more complete functionality. Objectives:12 Contents:
This course should give an overview and the most technically and practically possible view of the problems and solutions to the development of Internet secure multimedia applications. Although, as it covers many topics, there is an important descriptive approach, the subject is organised from a practical point of view with many use cases and laboratory practices.
For this reason, the teaching methodology will use examples and problems to introduce the concepts to help students to attain the skills needed. Also, we will try to encourage interaction with students considering real situations to discuss their possible solutions.
On the other hand, the laboratory practices will complete the skills and knowledge acquired in theory / problems classes. Practices will have an integrative perspective (project type) since students will built small modules to be integrated in a final practice.
2 partial exams (P1, P2). P1 includes topics 1 to 3; P2 includes the rest.
1 assignment that includes presentation, discussion and documentation.
Laboratory (L): 6 deliverables (L1, L2, L3, L4, L5, L6)
Final exam not mandatory (F) with two parts (F1, topics 1 to 3, and F2, rest of topics).
Daily "mini-tests" that increment the mark of the partial exams (Incr)
Grade: (Nt * 0,5) + (Na * 0,2) + (Nl * 0,3); Nt is the grade for theory, Na for the assignment and Nl for laboratory.
Nt = MAX (Nt partial exams, Nt with final exam)
Nt partial exams = (P1+P2)/2 * Incr, where Incr = 1 + 0,025 * (ADDITION (tests grades) / Number of tests)
Nt with final exam = 0,5 * MAX (P1, F1) + 0,5 * MAX (P2, F2)
Nl = (L1*0,1)+(L2*0,1)+(L3*0,2)+(L4*0,2)+(L5*0,2)+(L6*0,2)
Na = (0,5 *Content) + (0,3 * Presentation) + (0,1 * Discussion) + (0,1 * Participation)