M1 Courses
CSC_51057_EP, CSC_51058_EP, CSC_51059_EP, CSC_52065_EP, CSC_52074_EP, CSC_52086_EP, CSC_4SL09_TP and NET7215 are mandatory courses.
M1 students have to choose at least two options in the first block (from 01/09/2026 to 31/12/2026) and at least one option in the second block (from 04/01/2027 to 09/04/2027).
It is also possible to do a faculatative internship, which must be at least 3-month long.
- CSC_4SL09_TP: DevOps (Théo Zimmermann, 2,5 ECTS)
- NET7215: R&D project in Cybersecurity (Sébastien Canard, Jean Leneutre and Weiqiang Wen, 12,5 ECTS)
- CSC_51051_EP (INF551): Computational Logic: from Artificial Intelligence to Zero Bugs (Samuel Mimram, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/604/CSC-51051-EP-logique-informatique-de-l-intelligence-artificielle-a-l-absence-d-erreurs?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_51051_EPComputational logic has been used in a wide range of application in computer science, ranging from the deductive approach to Artificial Intelligence advocated by AI's founder John McCarthy, to proving the absence of bugs in large industrial software such as the 14th metro line in Paris, or checking difficult theorems the as the one of Feit-Thompson in the classification of finite simple groups.
The goal of this course is to explain how logic can be used in order for modeling problems of computational or mathematical nature, and how computers can be used to achieve this. In particular, we will present proof assistants, which allow to formalize human reasoning by interactively constructing proofs, and explain their use to certify the absence of bugs in programs. This is based on the so-called Curry-Howard correspondence: a program is the same as a proof (or, more precisely, a typed functional program corresponds to a derivation of its type). Then in order to reach realistic applications, we will present the proof assistant Agda and dependent logic which underlies it. Time permitting, we will also present various important related notions and techniques such as set theory and proof search.
This course is also about logic in practice: all the TDs will be on computer, using OCaml and then Agda. The website for the course is http://inf551.mimram.fr/.
- CSC_51053_EP (INF553): Database Management Systems (Ioana Manolescu, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/620/CSC-51053-EP-systeme-de-gestion-de-base-de-donnees?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_51053_EPContenu du cours- Modélisation des données: modèle entité-association, modèle relationnel
- Algèbre relationelle, calcule relationnel
- Le langage d'interrogation des bases de données relationnelles: SQL Qualité des schémas relationnels, formes normales
- Sous-système des bases de données relationnelles: disques, fichiers, buffers
- Indexation dans les bases de données: structures d'arbres, structures de tableau
- Evaluation des opérateurs relationnels
- Optimisation des requêtes SQL
- Brève introduction aux bases de données NoSQL
- CSC_51054_EP (INF554): Deep Learning (Michalis Vazirgiannis and Jessee Read, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/565/CSC-51054-EP-apprentissage-automatique-et-apprentissage-profond?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_51054_EPWe have entered the Artificial Intelligence Era. The explosion of available data in a wide range of application domains give rise to new challenges and opportunities in a plethora of disciplines – ranging from science and engineering to business and society in general. A major challenge is how to take advantage of the unprecedented scale of data, in order to acquire further insights and knowledge for improving the quality of the offered services, and this is where Machine and Deep Learning comes in capitalizing on techniques and methodologies from data exploration (statistical profiling, visualization) aiming at identifying patterns, correlations, groupings, modeling and doing predictions. In the last years Deep learning is becoming a very important element for solving large scale prediction problems.
Syllabus of the course:
- General Introduction to Machine Learning
- Supervised Learning
- Unsupervised Learning
- Advanced Machine Learning Concepts
- Kernels
- Neural Networks
- Deep Learning I
- Deep Learning II
- Machine & Deep Learning for Graphs
- CSC_51057_EP (INF557): From the Internet to the IoT: Fundamental of Modern Computer Networking (Thomas Clausen, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/627/CSC-52086-EP-securite-des-reseaux?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_51057_EPThe 21th century is, if anything, becoming a data-driven century. Interaction with everyday objects may yield a wealth of information, especially when correlated: if in an apartment the fridge door is being opened and closed regularly, then presumably apartment is inhabited ; if a drinking glass is subsequently emptied, presumably the inhabitant is alive and well, and, is staying both fresh and hydrated ; if the BBQ or the oven is used frequently, perhaps the inhabitant is either overeating (and so, a potential customer for diet plans) or is entertaining frequently (and so, a a potential customer for party supplies) — something which analysing the usage patterns of the door bell would reveal…
A premise for being able to analyse usage patterns and interactions is, of course, that these physical actions are captured and transformed into data — and, that these data are communicated from everyday objects with and through the Internet, and to the cloud.
And so, the 21th century is necessarily also the connected century: smartphones, watches, fridges, toothbrushes, drinking glasses, coffee machines, medical implants, BBQs, office plants, and forks are all becoming connected objects, generating data — and thus, becoming part of the Internet.
Outside of the consumer market, knowing the state of a machine, of an airplane engine, or of a power substation, permits scheduling predictive maintenance and avoid accidents — embedded sensors able to capture, and communicate, this state is a necessary premise.
As a matter of fact, a company launching a product today that doesn't "run an app" and "connects to the Internet" is a company, which just hasn't grasped the needs (or, at least, the desires) of its market - much as the guy installing the bike rack on the left, clearly misunderstood his "target market".
In order to ensure that YOU do not end up being that gal/guy, building a product miserably missing the market, this course provides you with the core competencies, necessary for developing connected systems.
This course:
- Offers a pragmatic and practical approach to communicating systems and to computer networking
- Studies, for each of the four major functional layers in a protocol stack (data-link, internetwork, transport, and application) the fundamental ideas, algorithms, and architectural principles, that apply “from the Internet, and to the IoT”
- Provides an in-depth tutorial in the principles behind TCP/IP Networking
- Introduces and decrypts modern Internet and IoT protocols: from IPv6 to 6LoWPAN, from ALOHA through Ethernet and WiFi to LoRa and Bluetooth — and from the WEB and REST to CORE And CoAP
- Provides practical experience in developing networked applications, and in developing and implementing protocols.
In short, this course provides an in-depth understanding of “how the net works” (pun intended), and gives the necessary baggage for an engineer (regardless of area of exercise) to be able to design communicating systems.
This course is self-contained: it assumes some programming skills, and a lot of curiosity — and will introduce the rest as it goes along. Each lesson will consist of a lecture, followed by 2h of lab (TD). This course is calibrated so that a student should expect to spend 1-2h/week outside of class, reviewing material and/or finishing exercises.
Requirements:
A good dose of curiosity is required.
(Having followed INF321 or INF311+411 probably won’t hurt)Evaluation mechanism:
Weekly submissions (either of homework, or of quizzes) worth 50% of the final grade, and a final exam QCM worth the other 50% of the grade.
Language:
English (with, at least, bilingual teaching staff)
- CSC_51058_EP (INF558): Introduction to Cryptology (François Morain, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/693/CSC-51058-EP-introduction-a-la-cryptologie?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_51058_EPCryptology is concerned with realising the impossible, namely securing information in open networks. This includes ensuring
- confidentiality of messages,
- integrity of messages,
- authenticity of principals.
The course gives an introduction to cryptology, its history and its use in modern computer systems. While the lectures are self-contained, some familiarity with basic algebra (Z/NZ, finite fields), networking is highly recommended.
To each lecture corresponds a TD, in which you apply the learnt concepts by implementing them in C.
- CSC_51059_EP (INF559): An Introduction to Computer Architecture and Operating Systems (Francesco Zappa Nardelli, Timothy Bourke and Théophile Bastian, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/842/CSC-51059-EP-introduction-aux-architectures-informatiques-et-aux-systemes-d-exploitation-pour-les-programmeurs?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_51059_EPWe will explain the enduring concepts underlying all computer systems, and show the concrete ways that these ideas affect the correctness, performance, and utility of any application program.
This course serves as an introduction to the students who go on to implement systems hardware and software. But this course also pushes students towards becoming the rare programmers who know how things work and how to fix them when they break.
This course will cover most of the key interfaces between user programs and the bare hardware, including:
- The representation and manipulation of information
- Machine-level representation of programs
- Processor architecture
- The memory hierarchy
- Exceptional Control Flow
- Virtual memory
- CSC_51063_EP (INF563): Introduction to Information Theory (Jean-Pierre Tillich, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/619/CSC-51063-EP-introduction-a-la-theorie-de-l-information?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_51063_EPInformation theory deals with finding the fundamental limits for compressing a signal, storing data or communicating information reliably over a noisy channel for instance. It turns out that all these limits can be expressed in terms of a single quantity which is entropy. The foundations of this domain were laid by Shannon who quantified in a very elegant way these limits.
We will cover during this course his major results and will also give the modern answers to this kind of issue that give very effective schemes for compressing or protecting data against noise. Now this theory has also found applications in many other areas such as cryptography, biology, quantum computing, linguistics, plagiarism detection or pattern recognition. We will cover some of those other applications during the course.
Content
- Entropy, typical sequences
- Memoryless source coding
- Memoryless source coding, Huffman code, Shannon-Fano-Elias code, Shannon code and arithmetic coding
- Adaptative Huffman coding, universal coding of a source
- Stationnary source, typical sequences, AEP
- Channel coding, capacity, Shannon theorem
- Linear codes, Hamming and Reed-Solomon codes, decoding, concatenated codes
- Polar codes
- Applications of Information Theory to other domains
- CSC_51071_EP (INF571): Distributed Data Structures, with a Spotlight on Blockchains (Constantin Enea and Daniel Augot, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/2142/CSC-51071-EP-structures-de-donnees-distribuees-avec-un-focus-sur-les-blockchains?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_51071_EPDistributed systems are composed of several computational units, classically called processes, that run concurrently and independently, without any central control. Additional difficulties are introduced by asynchrony (processes and channels operate at different speeds) and by limited local knowledge (each process has only a local view of the system and has a limited amount of information). Distributed algorithms are algorithms designed to run in this quite challenging setting. They arise in a wide range of applications, including telecommunications, internet, peer-to-peer computing, blockchain technology...
This course aims at giving a comprehensive introduction to the field of distributed algorithms. A collection of significant algorithms will be presented for asynchronous networked systems, with a particular emphasis on their correctness proofs. Algorithms will be analyzed according to various measures of interest (eg., time and space complexities, communication costs). We will also present some "negative" results, i.e., impossibility theorems and lower bounds as they play a useful role for a system designer to determine what problems are solvable and at what cost.
- CSC_52065_EP (INF565): Information Systems Security (Guenael Renault, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/700/CSC-52065-EP-securite-des-systemes-d-information?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_52065_EPThe aim of this course is to study the securing of Information Systems in the open network communication setting. Through practical cases, the course will show many existing threats and address current techniques to circumvent them.
After a first introductory lesson to raise awareness on the overall risks, the lectures will address the following topics:
- Risk Analysis and Information Security Management
- PKI and Securing communications
- Operating System security
- Secure development in C
- Security of Web applications
- Virus, Malware
- Hardware security
- CSC_52066_EP: From Fundamentals to Reality: How the Internet Really Works, and How To Make It Better (Thomas Clausen, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/450/CSC-52066-EP-des-fondamentaux-a-la-realite-comment-fonctionne-reellement-internet-et-comment-l-ameliorer?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_52066_EPArmed with the fundamentals and theory behind modern networking technology, this courses plunges into the reality of how the Internet really works, and how it came to be the resilient, yet in many ways quite fragile, world-wide system it is today.
While billions of people take the Internet for granted today, the system is still at its infancy and is subject to rapid and significant change. One of the interesting, and perhaps surprising, characteristics of the Internet is, that we as individual engineers still can make a difference: by examining what works and what doesn't, and understanding the science and art of what truly makes for a successful protocol, the Internet remains a ripe field of innovation.
In this course we will come face to face with the reality of what is and is not "broken" on the Internet today, how to examine the success or failure of an Internet protocol of their choice, and examine the economic and technical aspects of the patchwork of protocols and systems that make up the most complex distributed system mankind has ever created.
- CSC_52067_EP: Wireless Networks: from Cellular to Connected Objects (Marceau Coupechoux, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/576/CSC-52067-EP-reseaux-sans-fil-du-cellulaire-aux-objets-connectes?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_52067_EPThe goal of this course is to provide an in-depth understanding of select advanced problems in wireless networking.
The course is on wireless networks with a particular focus on cellular networks. We don’t explain how a specific technology is working. We rather explain what are the main concepts and approaches present in all (or many) wireless technologies and we give examples from specific technologies (4G, 5G, WiFi). Moreover, we explain why technological choices have been made. Wireless networks are not only about radio access (see core networks, services, applications, etc), but this course focuses on it.
- CSC_52071_EP: Foundations in software verification (Ambroise Lafont, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/23816/CSC-52071-EP-fondements-de-la-verification-des-logiciels?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_52071_EPIn this course, we learn the fundamentals of formal reasoning about programs using the Rocq proof assistant. We formally specify programming languages, that is, their syntax and operational semantics. We also formulate specifications of programs and prove that given programs satisfy their specification.
- CSC_52072_EP: Graph Machine and Deep Learning for Generative AI (Michalis Varzigiannis, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/23830/CSC-52072-EP-graph-machine-and-deep-learning-for-generative-ai?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_52072_EPIn this course we introduce you to a variety of machine and deep learning methodology to process graph-structured data. We define graph-structured data to refer to the combination of an underlying graph (or network) structure on which vectorial data is observed at the nodes, edges or both. This data type is frequently observed in practice and hence a multitude of methods have been defined to learn from it. In this course, we will review fundamental summary statistics of graphs and probabilistic models to generate graphs; we will introduce you to graph kernel methods and then move on to provide you a comprehensive overview of deep learning methodology, notably Graph Neural Networks among others. We end the course with an review of applications of the introduced methodology and an outlook on current challenges and future directions in the domain of machine and deep learning on graph structured data.
- CSC_52074_EP: Capture the Flag (François Morain, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/23977/CSC-52074-EP-capture-the-flag?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_52074_EPThe course complements the cybersecurity training. It aims at developing new skills to solve concrete security problems rapidly, using numerous tools and knowledge in CS. The course targets students having a basic experience in cybersecurity (cryptology, network, hardware, system).
- CSC_52081_EP: Reinforcement Learning and Autonomous Agents (Jesse Read, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/637/CSC-52081-EP-apprentissage-par-renforcement-et-agents-autonomes?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_52081_EPThis course explores the development of autonomous agents, i.e., systems that perceive, learn, and act independently to achieve goals in uncertain and dynamic environments. The course launches from foundations in probabilistic decision-making, inference and planning. We develop Markov Decision Processes and associated key concepts. To acquire autonomous agents, we turn principally to algorithms of Reinforcement Learning, notably Deep Q-Learning (and its variants), Policy Gradient and Actor Critic architectures. But we also study methodologies such as model-based learning, gradient-free optimization, imitation learning, and other approaches to obtain agents capable of sequential decision making, such as model based control and decision transformers). In addition we look at related and specialised topics such as offline reinforcement learning, distributionanl reinforcement learning, and imitation and inverse reinforcement learning. We focus on building algorithms on modern deep-neural architectures, which allow scalability to real-world problems. We do not lose sight of practical implications of architectural and algorithmic choices, and emphasise the importance of properly formulating problems of autonomous agents and sequential decision making. Students will implement, study, and compare algorithms in different settings. A main grading component (50%) is a class project, alongside lab assignments (50%).
- CSC_52086_EP (INF586): Introduction to Network Security (Thomas Clausen, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/627/CSC-52086-EP-securite-des-reseaux?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_52086_EPThreats and attacks are like living organisms: some survive unaltered, mostly hidden from view, but remain deadly when conditions are “just right” ; others emerge quickly, wreck havoc, then become extinct — and yet others keep evolving, both in terms of their propagation methods and their impact.
A network professional can therefore not be limited to just static application of risk assessment methodology, nor to mechanical application intrusion detection and forensics tools — and must, by nature, not simply be “following a cookbook”, but must also have a complete understanding of the whole processes, technologies, and theories involved in attacks.
This program in network security is therefore not just limited to a theoretical understanding the state of the art of security standards, threats, and techniques— but tries to bring a broad systems-understanding, to be able to be proactive and identify potential attack surfaces of a system, before an attack exists, and the necessary background to be able to rapidly analyse and understand the root nature of a new attackon a system.
To this end, the program alternates theoretical lectures and hands-on exercises, with seminars and “war-stories”, with 4h practice sessions during which we will be building a first-hand experience with how vulnerable real-world Internet-connected systems are — as well as with how “white-hat”IT professional constructs (more) secured computer networks.
- MDC_51002_EP: Quantum Information and Computing : Foundations (Titouan Carette, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/19746/MDC-51002-EP-information-et-calcul-quantique-fondements?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=MDC_51002_EPThe Quantum Information and Computing course is organized at the interface of physics and computer science, and is equally accessible to students with a background in computer science or physics. We first introduce the basic concepts of quantum information, focusing on the pivotal notions of superposition of states, entanglement, measurement processes, qubits, as well as quantum gates, and circuits. We also introduce the Bloch sphere picture and the density matrix formalism. Landmark applications and abilities of quantum processes to overcome classical approaches are illustrated around Bell's inequalities, quantum teleportation, and super-dense coding. We then discuss quantum computing via the quantum gate model. This model allows quantum algorithms to efficiently solve problems believed to be hard in the classical world, like factorization (Shor's algorithm). This is a significant threat against many currently deployed cryptographic systems. After presenting the main quantum algorithms we will cover the foundations of quantum information theory. Ultimately, we will present cryptographic systems whose security is based on the very nature of quantum mechanics.
- MDC_51006_EP: Foundation of Machine Learning (Erwan Le Pennec, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/23812/MDC-51006-EP-bases-de-l-apprentissage-automatique?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=MDC_51006_EPMachine learning is a scientific discipline that is concerned with the design and development of algorithms that allow computers to learn from data. A major focus of machine learning is to automatically learn complex patterns and to make intelligent decisions based on them.
This course focuses on the methodology underlying supervised and unsupervised learning, with a particular emphasis on the mathematical formulation of algorithms, and the way they can be implemented and used in practice. We will therefore describe some necessary tools from optimization theory, and explain how to use them for machine learning. A glimpse about theoretical guarantees, such as upper bounds on the generalization error, are provided during the last lecture.
The methodology will be the main concern of the lectures while some proofs will be done during the PCs. Practice will be done through a challenge.
M2 Courses
NET7231, NET7232, NET7234, NET7235, CSC_52068_EP and PRO7255 are mandatory courses.
M2 students have to pick one option in the first block (from 01/09/2026 to 31/12/2026) that they have not taken in M1, and are free to pick any option in the second block (from 04/01/2027 to 09/04/2027).
The internship is mandatory, and must be at least 5-month long, and is worth 30 ECTS.
- CSC_5CS08_TP: Detecting and responding to threats with AI (Rida Khatoun, 5 ECTS)
Web page: https://synapses.telecom-paris.fr/catalogue/2026-2027/ue/22017/CSC-5CS08-TP-detection-et-reponses-aux-menaces-avec-l-ia?from=D4
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_5CS08_TPIn the face of increasingly sophisticated and rapid cyberthreats, artificial intelligence is becoming a strategic lever for detecting attacks in real time, anticipating malicious behaviour and automating effective, targeted responses. This course covers various aspects of this use of AI, such as data recovery and processing, and attack detection. It will also cover various applications, including the cloud, V2X and telecommunications.
- CSC_5CS09_TP: Security of AI models, attacks on learning, data protection in AI (Sébastien Canard, 5 ECTS)
Web page: https://synapses.telecom-paris.fr/catalogue/2026-2027/ue/27894/CSC-5CS09-TP-securite-des-modeles-d-ia-attaques-sur-l-apprentissage-protection-des-donnees-en-ia?from=D4
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_5CS09_TPAs artificial intelligence becomes more pervasive across all sectors, model security, resistance to attacks during learning and the protection of sensitive data are becoming crucial issues in ensuring reliable, ethical and resilient AI. This course covers various aspects of these issues, in the form of lectures, practical work and projects: watermarking of AI models, federated learning, fairness of AI, differential privacy, synthetic data, generative AI, and advanced encryption techniques to protect data.
- NET7212: Safe System Programming in Rust (Stefano Zacchiroli and Samuel Tardieu, 5 ECTS)
Web page: https://ssp-rs.telecom-paris.fr
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=NET7212Description
In this cours you will learn how to build system-level applications that avoid by construction memory safety issues and data race issues, by relying on modern type systems. You will be introduced to Rust as an example of a programming language that realizes this approach and has significant industry adoption.
Syllabus
- Memory safety
- How to detect memory-safety issues in C/C++
- The Rust memory model
- NULL references and how to avoid "billion dollar mistakes"
- Rust language basics
- Race conditions
- Avoiding multiprocessing (security) pitfalls
- Data races
- Avoiding multithreading (security) pitfalls
Meta
- Site: https://ssp-rs.telecom-paris.fr/
- Field: System programming and Software security
- Keywords: programming, security, statictyping, memorysafety, multiprocessing, multithreading, rust
- Evaluation: exam + project
- Prerequisites:
- operating systems foundamentals
- C programming (C++ would be a plus)
- POSIX programming
- some experience with multithreading/multiprocessing programming
- NET7231: Risk analysis and attack detection (Grégory Blanc, 2,5 ECTS)
- NET7232: Secure protocols (Maryline Laurent, 5 ECTS)
- NET7233: Advanced Network Filtering Architecture (Olivier Paul, 5 ECTS)
- NET7234: Systems and application security (Olivier Levillain, 5 ECTS)
- NET7235: Threat and Security Policy Models (Jean Leneutre, 2,5 ECTS)
- CSC_51051_EP (INF551): Computational Logic: from Artificial Intelligence to Zero Bugs (Samuel Mimram, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/604/CSC-51051-EP-logique-informatique-de-l-intelligence-artificielle-a-l-absence-d-erreurs?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_51051_EPComputational logic has been used in a wide range of application in computer science, ranging from the deductive approach to Artificial Intelligence advocated by AI's founder John McCarthy, to proving the absence of bugs in large industrial software such as the 14th metro line in Paris, or checking difficult theorems the as the one of Feit-Thompson in the classification of finite simple groups.
The goal of this course is to explain how logic can be used in order for modeling problems of computational or mathematical nature, and how computers can be used to achieve this. In particular, we will present proof assistants, which allow to formalize human reasoning by interactively constructing proofs, and explain their use to certify the absence of bugs in programs. This is based on the so-called Curry-Howard correspondence: a program is the same as a proof (or, more precisely, a typed functional program corresponds to a derivation of its type). Then in order to reach realistic applications, we will present the proof assistant Agda and dependent logic which underlies it. Time permitting, we will also present various important related notions and techniques such as set theory and proof search.
This course is also about logic in practice: all the TDs will be on computer, using OCaml and then Agda. The website for the course is http://inf551.mimram.fr/.
- CSC_51053_EP (INF553): Database Management Systems (Ioana Manolescu, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/620/CSC-51053-EP-systeme-de-gestion-de-base-de-donnees?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_51053_EPContenu du cours- Modélisation des données: modèle entité-association, modèle relationnel
- Algèbre relationelle, calcule relationnel
- Le langage d'interrogation des bases de données relationnelles: SQL Qualité des schémas relationnels, formes normales
- Sous-système des bases de données relationnelles: disques, fichiers, buffers
- Indexation dans les bases de données: structures d'arbres, structures de tableau
- Evaluation des opérateurs relationnels
- Optimisation des requêtes SQL
- Brève introduction aux bases de données NoSQL
- CSC_51054_EP (INF554): Deep Learning (Michalis Vazirgiannis and Jessee Read, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/565/CSC-51054-EP-apprentissage-automatique-et-apprentissage-profond?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_51054_EPWe have entered the Artificial Intelligence Era. The explosion of available data in a wide range of application domains give rise to new challenges and opportunities in a plethora of disciplines – ranging from science and engineering to business and society in general. A major challenge is how to take advantage of the unprecedented scale of data, in order to acquire further insights and knowledge for improving the quality of the offered services, and this is where Machine and Deep Learning comes in capitalizing on techniques and methodologies from data exploration (statistical profiling, visualization) aiming at identifying patterns, correlations, groupings, modeling and doing predictions. In the last years Deep learning is becoming a very important element for solving large scale prediction problems.
Syllabus of the course:
- General Introduction to Machine Learning
- Supervised Learning
- Unsupervised Learning
- Advanced Machine Learning Concepts
- Kernels
- Neural Networks
- Deep Learning I
- Deep Learning II
- Machine & Deep Learning for Graphs
- CSC_51063_EP (INF563): Introduction to Information Theory (Jean-Pierre Tillich, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/619/CSC-51063-EP-introduction-a-la-theorie-de-l-information?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_51063_EPInformation theory deals with finding the fundamental limits for compressing a signal, storing data or communicating information reliably over a noisy channel for instance. It turns out that all these limits can be expressed in terms of a single quantity which is entropy. The foundations of this domain were laid by Shannon who quantified in a very elegant way these limits.
We will cover during this course his major results and will also give the modern answers to this kind of issue that give very effective schemes for compressing or protecting data against noise. Now this theory has also found applications in many other areas such as cryptography, biology, quantum computing, linguistics, plagiarism detection or pattern recognition. We will cover some of those other applications during the course.
Content
- Entropy, typical sequences
- Memoryless source coding
- Memoryless source coding, Huffman code, Shannon-Fano-Elias code, Shannon code and arithmetic coding
- Adaptative Huffman coding, universal coding of a source
- Stationnary source, typical sequences, AEP
- Channel coding, capacity, Shannon theorem
- Linear codes, Hamming and Reed-Solomon codes, decoding, concatenated codes
- Polar codes
- Applications of Information Theory to other domains
- CSC_52064_EP (INF564): Compilation (Jean-Christophe Filliatre and Georges-Axel Jaloyan, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/746/CSC-52064-EP-compilation?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_52064_EPThis course is an introduction to compilation. It explains the techniques and tools used in the different phases of a compiler, up to the production of optimized assembler code. A compiler for a fragment of the C language to the x86-64 assembler is realized in TD.
- CSC_52068_EP (INF568): Advanced Cryptology (Benjamin Smith, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/488/CSC-52068-EP-cryptologie-avancee?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_52068_EPThis is a course on the design, implementation, and analysis of contemporary cryptographic algorithms.
Among other things, we will give a detailed introduction to:
- elliptic curve cryptography
- lattice-based cryptosystems
- real-world protocols
- public-key cryptography
- modern key exchange and signature schemes
- side-channel safety
- homomorphic encryption
- post-quantum cryptography
- modern symmetric cryptography
- CSC_52071_EP: Foundations in software verification (Ambroise Lafont, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/23816/CSC-52071-EP-fondements-de-la-verification-des-logiciels?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_52071_EPIn this course, we learn the fundamentals of formal reasoning about programs using the Rocq proof assistant. We formally specify programming languages, that is, their syntax and operational semantics. We also formulate specifications of programs and prove that given programs satisfy their specification.
- CSC_52074_EP: Capture the Flag (François Morain, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/23977/CSC-52074-EP-capture-the-flag?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_52074_EPThe course complements the cybersecurity training. It aims at developing new skills to solve concrete security problems rapidly, using numerous tools and knowledge in CS. The course targets students having a basic experience in cybersecurity (cryptology, network, hardware, system).
- MDC_51002_EP: Quantum Information and Computing : Foundations (Titouan Carette, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/19746/MDC-51002-EP-information-et-calcul-quantique-fondements?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=MDC_51002_EPThe Quantum Information and Computing course is organized at the interface of physics and computer science, and is equally accessible to students with a background in computer science or physics. We first introduce the basic concepts of quantum information, focusing on the pivotal notions of superposition of states, entanglement, measurement processes, qubits, as well as quantum gates, and circuits. We also introduce the Bloch sphere picture and the density matrix formalism. Landmark applications and abilities of quantum processes to overcome classical approaches are illustrated around Bell's inequalities, quantum teleportation, and super-dense coding. We then discuss quantum computing via the quantum gate model. This model allows quantum algorithms to efficiently solve problems believed to be hard in the classical world, like factorization (Shor's algorithm). This is a significant threat against many currently deployed cryptographic systems. After presenting the main quantum algorithms we will cover the foundations of quantum information theory. Ultimately, we will present cryptographic systems whose security is based on the very nature of quantum mechanics.
- MDC_51006_EP: Foundation of Machine Learning (Erwan Le Pennec, 5 ECTS)
Web page: https://synapses.polytechnique.fr/catalogue/2026-2027/ue/23812/MDC-51006-EP-bases-de-l-apprentissage-automatique?from=D1
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=MDC_51006_EPMachine learning is a scientific discipline that is concerned with the design and development of algorithms that allow computers to learn from data. A major focus of machine learning is to automatically learn complex patterns and to make intelligent decisions based on them.
This course focuses on the methodology underlying supervised and unsupervised learning, with a particular emphasis on the mathematical formulation of algorithms, and the way they can be implemented and used in practice. We will therefore describe some necessary tools from optimization theory, and explain how to use them for machine learning. A glimpse about theoretical guarantees, such as upper bounds on the generalization error, are provided during the last lecture.
The methodology will be the main concern of the lectures while some proofs will be done during the PCs. Practice will be done through a challenge.
ENSTA Courses
ENSTA students have to choose 11 ECTS among PRO7255, NET7212 and CSC_5CS08_TP.
- CSC_5CS08_TP: Detecting and responding to threats with AI (Rida Khatoun, 5 ECTS)
Web page: https://synapses.telecom-paris.fr/catalogue/2026-2027/ue/22017/CSC-5CS08-TP-detection-et-reponses-aux-menaces-avec-l-ia?from=D4
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=CSC_5CS08_TPIn the face of increasingly sophisticated and rapid cyberthreats, artificial intelligence is becoming a strategic lever for detecting attacks in real time, anticipating malicious behaviour and automating effective, targeted responses. This course covers various aspects of this use of AI, such as data recovery and processing, and attack detection. It will also cover various applications, including the cloud, V2X and telecommunications.
- NET7212: Safe System Programming in Rust (Stefano Zacchiroli and Samuel Tardieu, 5 ECTS)
Web page: https://ssp-rs.telecom-paris.fr
Calendar: https://cs.ip-paris.fr/courses/tracks/cyber/?page=..%2Fcyber%2Fcourses&genics=NET7212Description
In this cours you will learn how to build system-level applications that avoid by construction memory safety issues and data race issues, by relying on modern type systems. You will be introduced to Rust as an example of a programming language that realizes this approach and has significant industry adoption.
Syllabus
- Memory safety
- How to detect memory-safety issues in C/C++
- The Rust memory model
- NULL references and how to avoid "billion dollar mistakes"
- Rust language basics
- Race conditions
- Avoiding multiprocessing (security) pitfalls
- Data races
- Avoiding multithreading (security) pitfalls
Meta
- Site: https://ssp-rs.telecom-paris.fr/
- Field: System programming and Software security
- Keywords: programming, security, statictyping, memorysafety, multiprocessing, multithreading, rust
- Evaluation: exam + project
- Prerequisites:
- operating systems foundamentals
- C programming (C++ would be a plus)
- POSIX programming
- some experience with multithreading/multiprocessing programming
- PRO7255: Research Project (Joaquin Garcia and Joaquin Garcia Alfaro, 8 ECTS)
The projects are described in the M2 Research Projects tab