Materials that I can suggest for Cryptography and Computer Science
Published:
These books and other materials helped my study of cryptography. If there is an English version of the book/paper - I first give a link to that book, if there is a Russian version - the link is given in a tag “RUS”. Some materials are only in Russian, some are only in English. The links are intended to give more details about the book/paper and not as an advertisement for any platform/shop. I am sure someone would prefer a different book or material on some topics - the following list is what I used and liked during my work and studies.
Materials that I can suggest for Cryptography and Computer Science
Combinatorics: Combinatorics by N. Ya. Vilenkin(RUS)
Algebra and Linear Algebra: Introduction to Algebra by Kostrikin (RUS vol 1;RUS vol 2; RUS vol 3)
Discrete math: Лекции по дискретной математике - А. В. Чашкин
Mathematical Analysis: Mathematical Analysis by V. A. Zorich and Vol. 2 (RUS vol 1; RUS vol 2)
Probability Theory: Probability and Statistics for Computer Scientists by Michael Baron
Finite Fields and their applications: Finite Fields by Lidl, Niederreiter (RUS), Элементы конечной алгебры: группы, кольца, поля, линейные пространства - Чашкин А.В., Жуков Д. А.
Mathematical tools: Concrete Mathematics by Rondald L. Graham, Donald E. Knuth, Oren Patashnik (RUS); generatingfunctionology by Herbert S. Wilf;
Coding theory: Error-Correcting Codes by W. Wesley Peterson, E. J. Weldon Jr. (RUS)
Algorithms and Data structures: Algorithms by Dasgupta, Papadimitriou, Vazirani (RUS); Grokking Algorithms by Aditya Bhargava (RUS); Introduction to Algorithms by Cormen, Thomas H.; Leiserson, Charles E.; Rivest, Ronald L (RUS)
Advanced algorithms: Advanced algorithms part 1, part 2.
Computational complexity: Computational Complexity: A Modern Approach by Sanjeev Arora and Boaz Barak
Programming: C++ How to Program by Paul Deitel, Harvey Deitel (RUS); Practical Cryptography in Python by Seth James Nielson, Christopher K. Monson; SageMath; Project Euler;
Computer security: Hacking: The Art of Exploitation by Jon Erickson (RUS)
Algorithms for Cryptography: Введение в теоретико-чиcловые методы криптографии - Глухов М.М.; Prime Numbers: A Computational Perspective by Richard Crandall, Carl B. Pomerance; (RUS); Number-theoretic Algorithms in Cryptography by O.N. Vasilenko (RUS);
Boolean functions: Ирина Панкратова: Булевы функции в криптографии.; Boolean Functions in Coding Theory and Cryptography (Translations of Mathematical Monographs) by O. A. Logachev, A. A. Salnikov, V. V. Yashchenko;(RUS) 2 Videos - Analysis of Boolean Functions by Eyan O’Donnell;
Cryptography overview: Practical Cryptography by Niels Ferguson, Bruce Schneier (RUS); Real World Cryptography by David Wong; Implementing and Exploiting Cryptography by Kamran Khan and Bill Cox
A more in-depth Cryptography overview: Handbook of Applied Cryptography (Discrete Mathematics and Its Applications) by Alfred J. Menezes, Paul C. van Oorschot, Scott A. Vanstone
A Graduate Course in Applied Cryptography: A Graduate Course in Applied Cryptography by Dan Boneh and Victor Shoup
Theoretical foundations of cryptography: The Foundations of cryptography by Oded Goldreich
Elliptic curve cryptography: Elliptic Curves, Number Theory, and Cryptography by LAWRENCE C. WASHINGTON
Provable security: The Joy of cryptography by Mike Rosulek
Hash functions: The Theory of Hash Functions and Random Oracles by Arno Mittelbach, Marc Fischlin
Key Establishment: Protocols for Authentication and Key Establishment by Colin Boyd, Anish Mathuria, Douglas Stebila
Multiparty Computation and Secret Sharing: Secure Multiparty Computation and Secret Sharing by Ronald Cramer, Ivan Bjerre Damgård, Jesper Buus Nielsen
Quantum computations: Quantum Computation and Quantum Information from CS teacher; Quantum Computation and Quantum Information by Michael A. Nielsen & Isaac L. Chuang (RUS
Overview of Post-quantum cryptography: Post-Quantum Cryptography, Editors: Daniel J. Bernstein, Johannes Buchmann, Erik Dahmen
Lattice-based Cryptography:
A Decade of Lattice Cryptography
Basic Lattice Cryptography: The concepts behind Kyber (ML-KEM) and Dilithium (ML-DSA)
A survey on the security of the lattice-based NIST finalists
Lattice Attacks on NTRU and LWE: A History of Refinements
Hash-based Cryptography:
Survey on Hash-based cryptography
Mitigating Multi-Target Attacks in Hash-based Signatures
Recovering the tight security proof of SPHINCS+
SPHINCS+C: Compressing SPHINCS+ With (Almost) No Cost
Zero Knowledge:
Proofs, Arguments, and Zero-Knowledge by Justin Thaler
The MoonMath Manual - The MoonMath Manual is a resource for anyone interested in understanding and unlocking the potential of zk-SNARKs, from beginners to experts.
ZK acronyms - The ZK Jargon Decoder aims to be a dictionary and reference guide for common jargon found in cryptography and the zero-knowledge literature.
ZK news ___
Rust:
The Rust Programming Language by Steve Klabnik, Carol Nichols, and Chris Krycho - The Rust Programming Language, an introductory book about Rust.
A Gentle Introduction To Rust - The aim of this tutorial is to take you to a place where you can read and write enough Rust to fully appreciate the excellent learning resources available online.
100 exercises to lear rust - You’ll learn Rust by solving 100 exercises. You’ll go from knowing nothing about Rust to being able to start writing your own programs, one exercise at a time.
Rustlings - This project contains small exercises to get you used to reading and writing Rust code.
Build a RC5 Symmetric Block Cipher in Rust - This course teaches you how to build an RC5 symmetric block cipher in Rust.
Elliptic Curve Cryptography in Rust - This course teaches you how elliptic curve groups work together with finite fields and how to implement a Rust library from scratch to perform basic groups’ operations.
Zero-Knowledge Proofs in Rust - This Zero-Knowledge Proof course in Rust is designed to learn how to implement a cryptography ZKP algorithm and use it in real-world applications for user registration and authentication.
Good links:
International Association for Cryptologic Research - There, you can find information about good schools, conferences, workshops, job offers, Ph.D. and PostDoc positions, and more.
Ask questions on cryptography papers
Russian forum on math related topics
Survey on Code-based cryptography
Cryptography for Big Data Security Book Chapter for Big Data: Storage, Sharing, and Security - Survey on modern applications of cryptography: Attribute-based encryption, Searchable encryption, Multi-party computations, Homomorphic encryption, Verifiable Computation, Functional encryption.
Homomorphic encryption: Good paper to start with; ZAMA tutorials and documentations
Some less severe content:
3Blue1Brown - Youtube channel on different mathematical topics
Numberphile - Youtube channel on various mathematical topics
Cryptography FM - Podcast on cryptography
Security. Cryptography. Whatever - Podcast on cryptography
Zero Knowledge Podcast - Podcast about decentralization and technology, open source communities & ZK proofs
Cryptography olympiads, CTF, online platforms:
One more list of good cryptography books
Как написать математическую статью по-ангийски - Сосинский А.Б.
How to lead a research team in science