Об этом курсе
4.6
Оценки: 93
Рецензии: 21
Специализация
100% онлайн

100% онлайн

Начните сейчас и учитесь по собственному графику.
Гибкие сроки

Гибкие сроки

Назначьте сроки сдачи в соответствии со своим графиком.
Начальный уровень

Начальный уровень

Часов на завершение

Прибл. 15 часа на выполнение

Предполагаемая нагрузка: 4 weeks, 2-5 hours/week...
Доступные языки

Английский

Субтитры: Английский

Приобретаемые навыки

Number TheoryCryptographyModular Exponentiation
Специализация
100% онлайн

100% онлайн

Начните сейчас и учитесь по собственному графику.
Гибкие сроки

Гибкие сроки

Назначьте сроки сдачи в соответствии со своим графиком.
Начальный уровень

Начальный уровень

Часов на завершение

Прибл. 15 часа на выполнение

Предполагаемая нагрузка: 4 weeks, 2-5 hours/week...
Доступные языки

Английский

Субтитры: Английский

Программа курса: что вы изучите

Неделя
1
Часов на завершение
4 ч. на завершение

Modular Arithmetic

In this week we will discuss integer numbers and standard operations on them: addition, subtraction, multiplication and division. The latter operation is the most interesting one and creates a complicated structure on integer numbers. We will discuss division with a remainder and introduce an arithmetic on the remainders. This mathematical set-up will allow us to created non-trivial computational and cryptographic constructions in further weeks....
Reading
10 видео ((всего 90 мин.)), 4 материалов для самостоятельного изучения, 13 тестов
Video10 видео
Numbers6мин
Divisibility6мин
Remainders9мин
Problems6мин
Divisibility Tests5мин
Division by 212мин
Binary System11мин
Modular Arithmetic12мин
Applications7мин
Modular Subtraction and Division11мин
Reading4 материала для самостоятельного изучения
Python Code for Remainders5мин
Slides1мин
Slides1мин
Slides1мин
Quiz12 практического упражнения
Divisibility15мин
Remainders10мин
Division by 45мин
Four Numbers10мин
Division by 10110мин
Properties of Divisibility10мин
Divisibility Tests8мин
Division by 24мин
Binary System8мин
Modular Arithmetic8мин
Remainders of Large Numbers10мин
Modular Division10мин
Неделя
2
Часов на завершение
4 ч. на завершение

Euclid's Algorithm

This week we'll study Euclid's algorithm and its applications. This fundamental algorithm is the main stepping-stone for understanding much of modern cryptography! Not only does this algorithm find the greatest common divisor of two numbers (which is an incredibly important problem by itself), but its extended version also gives an efficient way to solve Diophantine equations and compute modular inverses....
Reading
7 видео ((всего 78 мин.)), 4 материалов для самостоятельного изучения, 7 тестов
Video7 видео
Euclid’s Algorithm15мин
Extended Euclid’s Algorithm10мин
Least Common Multiple8мин
Diophantine Equations: Examples5мин
Diophantine Equations: Theorem15мин
Modular Division12мин
Reading4 материала для самостоятельного изучения
Greatest Common Divisor: Code15мин
Extended Euclid's Algorithm: Code10мин
Slides1мин
Slides10мин
Quiz7 практического упражнения
Greatest Common Divisor10мин
Tile a Rectangle with Squares20мин
Least Common Multiple10мин
Least Common Multiple: Code15мин
Diophantine Equations15мин
Diophantine Equations: Code20мин
Modular Division: Code20мин
Неделя
3
Часов на завершение
4 ч. на завершение

Building Blocks for Cryptography

Cryptography studies ways to share secrets securely, so that even eavesdroppers can't extract any information from what they hear or network traffic they intercept. One of the most popular cryptographic algorithms called RSA is based on unique integer factorization, Chinese Remainder Theorem and fast modular exponentiation. In this module, we are going to study these properties and algorithms which are the building blocks for RSA. In the next module we will use these building blocks to implement RSA and also to implement some clever attacks against RSA and decypher some secret codes....
Reading
14 видео ((всего 91 мин.)), 3 материалов для самостоятельного изучения, 6 тестов
Video14 видео
Prime Numbers3мин
Integers as Products of Primes3мин
Existence of Prime Factorization2мин
Euclid's Lemma4мин
Unique Factorization9мин
Implications of Unique Factorization10мин
Remainders7мин
Chinese Remainder Theorem7мин
Many Modules5мин
Fast Modular Exponentiation10мин
Fermat's Little Theorem7мин
Euler's Totient Function6мин
Euler's Theorem4мин
Reading3 материала для самостоятельного изучения
Slides10мин
Slides10мин
Slides10мин
Quiz5 практического упражнения
Integer Factorization20мин
Remainders8мин
Chinese Remainder Theorem15мин
Fast Modular Exponentiation15мин
Modular Exponentiation8мин
Неделя
4
Часов на завершение
5 ч. на завершение

Cryptography

Modern cryptography has developed the most during the World War I and World War II, because everybody was spying on everybody. You will hear this story and see why simple cyphers didn't work anymore. You will learn that shared secret key must be changed for every communication if one wants it to be secure. This is problematic when the demand for secure communication is skyrocketing, and the communicating parties can be on different continents. You will then study the RSA cryptosystem which allows parties to exchange secret keys such that no eavesdropper is able to decipher these secret keys in any reasonable time. After that, you will study and later implement a few attacks against incorrectly implemented RSA, and thus decipher a few secret codes and even pass a small cryptographic quest!...
Reading
9 видео ((всего 67 мин.)), 4 материалов для самостоятельного изучения, 2 тестов
Video9 видео
One-time Pad4мин
Many Messages7мин
RSA Cryptosystem14мин
Simple Attacks5мин
Small Difference5мин
Insufficient Randomness7мин
Hastad's Broadcast Attack8мин
More Attacks and Conclusion5мин
Reading4 материала для самостоятельного изучения
Many Time Pad Attack10мин
Slides10мин
Randomness Generation10мин
Slides and External References10мин
Quiz2 практического упражнения
RSA Quizs
RSA Quest - Quiz6мин
4.6
Рецензии: 21Chevron Right

Лучшие рецензии

автор: PWNov 22nd 2018

I was really impressed especially with the RSA portion of the course. It was really well explained, and the programming exercise was cleverly designed and implemented. Well done.

автор: LJan 2nd 2018

A good course for people who have no basic background in number theory , explicit clear explanation in RSA algorithm. Overall,a good introduction course.

Преподавателя

Avatar

Alexander S. Kulikov

Visiting Professor
Department of Computer Science and Engineering
Avatar

Michael Levin

Lecturer
Computer Science
Avatar

Vladimir Podolskii

Associate Professor
Computer Science Department

О University of California San Diego

UC San Diego is an academic powerhouse and economic engine, recognized as one of the top 10 public universities by U.S. News and World Report. Innovation is central to who we are and what we do. Here, students learn that knowledge isn't just acquired in the classroom—life is their laboratory....

О National Research University Higher School of Economics

National Research University - Higher School of Economics (HSE) is one of the top research universities in Russia. Established in 1992 to promote new research and teaching in economics and related disciplines, it now offers programs at all levels of university education across an extraordinary range of fields of study including business, sociology, cultural studies, philosophy, political science, international relations, law, Asian studies, media and communications, IT, mathematics, engineering, and more. Learn more on www.hse.ru...

О специализации ''Introduction to Discrete Mathematics for Computer Science'

Discrete Math is needed to see mathematical structures in the object you work with, and understand their properties. This ability is important for software engineers, data scientists, security and financial analysts (it is not a coincidence that math puzzles are often used for interviews). We cover the basic notions and results (combinatorics, graphs, probability, number theory) that are universally needed. To deliver techniques and ideas in discrete mathematics to the learner we extensively use interactive puzzles specially created for this specialization. To bring the learners experience closer to IT-applications we incorporate programming examples, problems and projects in our courses....
Introduction to Discrete Mathematics for Computer Science

Часто задаваемые вопросы

  • Зарегистрировавшись на сертификацию, вы получите доступ ко всем видео, тестам и заданиям по программированию (если они предусмотрены). Задания по взаимной оценке сокурсниками можно сдавать и проверять только после начала сессии. Если вы проходите курс без оплаты, некоторые задания могут быть недоступны.

  • Записавшись на курс, вы получите доступ ко всем курсам в специализации, а также возможность получить сертификат о его прохождении. После успешного прохождения курса на странице ваших достижений появится электронный сертификат. Оттуда его можно распечатать или прикрепить к профилю LinkedIn. Просто ознакомиться с содержанием курса можно бесплатно.

Остались вопросы? Посетите Центр поддержки учащихся.