Pro Cryptography and Cryptanalysis: Creating Advanced Algorithms with C# and .NET

  • 4h 57m
  • Marius Iulian Mihailescu, Stefania Loredana Nita
  • Apress
  • 2021

Utilize this comprehensive, yet practical, overview of modern cryptography and cryptanalysis to improve performance. Learn by example with source code in C# and .NET, and come away with an understanding of public key encryption systems and challenging cryptography mechanisms such as lattice-based cryptography.

Modern cryptography is the lifeboat of a secure infrastructure. From global economies and governments, to meeting everyday consumer needs, cryptography is ubiquitous, and used in search, design, data, artificial intelligence, and other fields of information technology and communications. Its complexity can lead to misconfiguration, misuse, and misconceptions. For developers who are involved in designing and implementing cryptographic operations in their applications, understanding the implications of the algorithms, modes, and other parameters is vital.

Pro Cryptography and Cryptanalysis is for the reader who has a professional need or personal interest in developing cryptography algorithms and security schemes using C# and .NET. You will learn how to implement advanced cryptographic algorithms (such as Elliptic Curve Cryptography Algorithms, Lattice-based Cryptography, Searchable Encryption, Homomorphic Encryption), and come away with a solid understanding of the internal cryptographic mechanisms, and common ways in which the algorithms are correctly implemented in real practice. With the new era of quantum computing, this book serves as a stepping stone to quantum cryptography, finding useful connections between current cryptographic concepts and quantum related topics.

What You Will Learn

  • Know when to enlist cryptography, and how it is often misunderstood and misused
  • Explore modern cryptography algorithms, practices, and properties
  • Design and implement usable, advanced cryptographic methods and mechanisms
  • Understand how new features in C# and .NET impact the future of cryptographic algorithms
  • Use the cryptographic model, services, and System.Security.Cryptography namespace in .NET
  • Modernize your cryptanalyst mindset by exploiting the performance of C# and .NET with its weak cryptographic algorithms
  • Practice the basics of public key cryptography, including ECDSA signatures
  • Discover how most algorithms can be broken

Who This Book Is For

Information security experts, cryptologists, software engineers, developers, data scientists, and academia who have experience with C#, .NET, as well as IDEs such as Visual Studio, VS Code, or Mono. Because this book is for an intermediate to advanced audience, readers should also possess an understanding of cryptography (symmetric and asymmetric) concepts.

About the Authors

Marius Iulian Mihailescu, PhD is CEO of Dapyx Solution Ltd., a company focused on security- and cryptography-related research. He has authored and co-authored more than 50 articles, journal contributions, and conference proceedings, and three books related to security and cryptography. He lectures at well-known national and international universities, teaching courses on programming, cryptography, information security, and other technical topics. He holds a PhD (thesis on applied cryptography over biometrics data) and two MSc in information security and software engineering.

Stefania Loredana Nita, PhD is a software developer and researcher at the Institute for Computers. Prior to that she was an assistant lecturer at the University of Bucharest, where she taught courses on advanced programming techniques, simulation methods, and operating systems. She has authored and co-authored more than 15 papers and journals, most recently Advanced Cryptography and Its Future: Searchable and Homomorphic Encryption, as well as two books. She holds a PhD (thesis on advanced cryptographic schemes using searchable encryption and homomorphic encryption), an MSc in software engineering and two BSc in computer science and mathematics.

In this Book

  • Cryptography Fundamentals
  • Mathematical Background and Its Applicability in Cryptography
  • Large Integer Arithmetic
  • Floating-Point Arithmetic
  • What's New in C# 8.0
  • Secure Coding Guidelines
  • .NET Cryptography Services
  • Overview of the Security.Cryptography Namespace
  • Cryptography Libraries in C# and .NET
  • Elliptic-Curve Cryptography
  • Lattice-Based Cryptography
  • Searchable Encryption
  • Homomorphic Encryption
  • Ring-Learning with Errors Cryptography
  • Chaos-Based Cryptography
  • Big Data Cryptography
  • Cloud Computing Cryptography
  • Getting Started with Cryptanalysis
  • Cryptanalysis Attacks and Techniques
  • Linear and Differential Cryptanalysis
  • Integral Cryptanalysis
  • Attacks
  • Text Characterization
  • Implementation and Practical Approach of Cryptanalysis Methods