liveBook · Manning

Cryptographic algorithm

As explained in Hacking Cryptography

A cryptographic algorithm is an algorithm that transforms data to provide security properties such as confidentiality, integrity, authentication, or nonrepudiation.

A cryptographic algorithm is a mathematical method for protecting data confidentiality and integrity. Its security depends not only on the algorithm, but also on the software or hardware implementation that applies it. section 1.5

Practical security work focuses on implementing popular algorithms, observing how attackers break them, and separating mathematical weaknesses from engineering failures. The treatment deliberately emphasizes practice rather than underlying mathematical theory. section 1.4 section 1.5

Use cryptographic algorithms with these engineering rules:

  • Prefer widely used, thoroughly tested implementations instead of writing production cryptography from scratch. section 1.4
  • Review interactions between cryptographic components carefully, because individually sound components can combine into subtle weaknesses. section 1.5
  • If new cryptographic code is unavoidable, obtain review from as many qualified experts as possible. section 1.5

Rainbow tables against hashed passwords

A concrete exercise builds a rainbow table to crack hashed passwords, tracing the attack against specific code lines and exposing both its theoretical applicability and practical limitations. section 1.4

How Hacking Cryptography covers it

How deep it goes
Descends into code-level implementations and exploits while stopping short of the underlying mathematical theory.
Examples
Uses Go code, rainbow tables, hashed-password cracking, and established implementations such as OpenSSL.
What you can do after
Evaluate implementations, observe attack exploits, and choose established cryptographic components for production use.
How it connects
Connects cryptographic algorithms with cryptography, mathematical theory, software implementations, hardware implementations, and attacks.

Also explained in

Compare how 2 books explain cryptographic algorithm →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Hacking Cryptography. The section links point to the parts of the book it draws on.