Cryptography

Cryptography

Cryptography is the practice and study of techniques for secure communication in the presence of adversaries. It involves constructing and analyzing protocols to prevent third parties from reading private messages, and is used in a variety of applications such as electronic commerce, chip-based payment cards, digital currencies, computer passwords, and military communications. Cryptography is based on mathematical theory and computer science practice, and is designed to be computationally secure. Legal issues related to cryptography include export control, compelled disclosure of encryption keys, and copyright infringement.

8 courses cover this concept

CS 251 Great Ideas in Theoretical Computer Science

Carnegie Mellon University

Fall 2022

A course offering rigorous study of computation, examining the central results and questions about the nature of computation, including finite automata, computational complexity, and cryptography.

No concepts data

+ 10 more concepts

CS 251 Cryptocurrencies and Blockchain Technologies

Stanford University

Fall 2022

Stanford's course covers a wide spectrum of blockchain and cryptocurrency concepts, focusing on technical aspects and engineering secure software. Bitcoin and Ethereum are the main case studies, and the course delves into numerous applications, including DeFi, NFTs, and privacy on the blockchain.

No concepts data

+ 33 more concepts

CS 155 Computer and Network Security

Stanford University

Spring 2022

This course focuses on principles of computer systems and network security, exploring different attack techniques and corresponding defenses. Course projects aim at building reliable code and understanding attacks. Prior knowledge in operating systems, networking protocols, and basic programming languages is needed.

No concepts data

+ 29 more concepts

CS 106AX Programming Methodologies in JavaScript and Python

Stanford University

Autumn 2022

This course is designed for those with prior programming experience. It focuses on advanced programming methodologies in Python and JavaScript, and covers topics from object-oriented design principles to building web applications.

No concepts data

+ 29 more concepts

15-251 Great Ideas in Theoretical Computer Science

Carnegie Mellon University

Fall 2018

The course provides a rigorous introduction to the foundations of computer science, improving abstract thinking skills and preparing students to be innovators in the field. Topics include computation, computational complexity, and real-world applications of computational concepts. Prerequisites imply this is an intermediate-level course.

No concepts data

+ 25 more concepts

CSE 484 / CSE M 584 Computer Security

University of Washington

Autumn 2021

This course covers a wide range of computer security topics, including software security, cryptography, web security, malware, and physical security. It encourages a "security mindset" while requiring a firm understanding of computer science fundamentals and command-line Unix development environment.

No concepts data

+ 18 more concepts

CS 161: Computer Security

UC Berkeley

Summer 2022

This course offers an introduction to computer security, including cryptography, operating system security, network security, and software security. It uses case studies from real-world systems. Prerequisites include experience working with large codebases and a basic understanding of modular arithmetic/set notation.

No concepts data

+ 40 more concepts

CSCI 1515 Applied Cryptography

Brown University

Spring 2023

Applied Cryptography at Brown University offers a practical take on securing systems. By learning foundational cryptographic algorithms and advanced topics like zero-knowledge proofs and post-quantum cryptography, students gain both theoretical insights and hands-on experience in implementing cryptosystems using C++ and crypto libraries. Label: State-of-art concepts.

No concepts data

+ 63 more concepts