• Stars
    star
    3,030
  • Rank 14,885 (Top 0.3 %)
  • Language
    CSS
  • License
    MIT License
  • Created about 6 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Practical Cryptography for Developers: Hashes, MAC, Key Derivation, DHKE, Symmetric and Asymmetric Ciphers, Public Key Cryptosystems, RSA, Elliptic Curves, ECC, secp256k1, ECDH, ECIES, Digital Signatures, ECDSA, EdDSA

Welcome

Warning: this book is not finished! I am still working on some of the chapters. Once it is completed, I will publish it as PDF and EPUB. Be patient.

Practical Cryptography for Developers - Free Book by Svetlin Nakov - front cover

A modern practical book about cryptography for developers with code examples, covering core concepts like: hashes (like SHA-3 and BLAKE2), MAC codes (like HMAC and GMAC), key derivation functions (like Scrypt, Argon2), key agreement protocols (like DHKE, ECDH), symmetric ciphers (like AES and ChaCha20, cipher block modes, authenticated encryption, AEAD, AES-GCM, ChaCha20-Poly1305), asymmetric ciphers and public-key cryptosystems (RSA, ECC, ECIES), elliptic curve cryptography (ECC, secp256k1, curve25519), digital signatures (ECDSA and EdDSA), secure random numbers (PRNG, CSRNG) and quantum-safe cryptography, along with crypto libraries and developer tools, with a lots of code examples in Python and other languages.

Author: Svetlin Nakov, PhD - https://nakov.com

Contributors: Milen Stefanov, Marina Shideroff

Sponsor: SoftUni (Software University) - https://softuni.org

ISBN: 978-619-00-0870-5 (9786190008705)

This book is free and open-source, published under the MIT license.

Official Web site: https://cryptobook.nakov.com

Official GitHub repo: https://github.com/nakov/practical-cryptography-for-developers-book.

Sofia, November 2018

Tags: cryptography, free, book, Nakov, Svetlin Nakov, hashes, hash function, SHA-256, SHA3, BLAKE2, RIPEMD, MAC, message authentication code, HMAC, KDF, key derivation, key derivation function, PBKDF2, Scrypt, Bcrypt, Argon2, password hashing, random generator, pseudo-random numbers, CSPRNG, secure random generator, key exchange, key agreement, Diffie-Hellman, DHKE, ECDH, symmetric ciphers, asymmetric ciphers, public key cryptosystems, symmetric cryptography, AES, Rijndael, cipher block mode, AES-CTR, AES-GCM, ChaCha20-Poly1305, authenticated encryption, encryption scheme, public key cryptography, RSA, ECC, elliptic curves, secp256k1, curve25519, EC points, EC domain parameters, ECDH key agreement, asymmetric encryption scheme, hybrid encryption, ECIES, digital signature, RSA signature, DSA, ECDSA, EdDSA, ElGammal signature, Schnorr signature, quantum-safe cryptography, digital certificates, TLS, OAuth, multi-factor authentication, crypto libraries, Python cryptography, JavaScript cryptography, C# cryptography, Java cryptography, C++ cryptography, PHP cryptography.

More Repositories

1

Smart-Mass-Mailer

Smart Bulk Email Sender with Mail Merge, Delay between Emails and HTML Content
C#
68
star
2

TurtleGraphics.NET

C# Turtle Graphics library - for teaching kids to code
C#
65
star
3

NakovForwardServer

TCP port forwarding software, written in Java: forwards a local TCP port (e.g. 127.0.0.1:1521) to external port (e.g. 0.0.0.0:1522)
Java
44
star
4

IMDB-Tech-Module

IMDB Movie Database (in C#, Java, JS and PHP) - Exam Preparation for the Tech Module @ SoftUni (December 2017)
PHP
26
star
5

Nakov.io.cin

Nakov.IO.Cin is console input for C# in the C++ style: cin >> x >> y;
C#
14
star
6

TODO-List-Tech-Module

TODO List (in C#, Java, JS and PHP) - Exam Preparation for the Tech Module @ SoftUni (August 2017)
PHP
13
star
7

introcsharpbook

"Fundamentals of Computer Programming with C#" Book
12
star
8

Java-Cryptography-Examples

Java Examples for: Hashes, HMAC, PBKDF2, Scrypt, Argon2, AES-CTR-HMAC, ECDSA-secp256k1, EdDSA-Ed25519
Java
11
star
9

Ethereum-Web3-Document-Registry-Demo

Live demo source code: Document Registry DApp (using Ethereum, Solidity, Web3 and MetaMask)
JavaScript
10
star
10

q2a-plugin-open-questions

Open Questions plugin for Questions2Answers QA platform - displays all non-closed questions without answers
PHP
9
star
11

Eventures

Sample ASP.NET MVC App for CI / CD
C#
9
star
12

NakovChain

Simple Educational Blockchain Network
JavaScript
8
star
13

Fruits-Web-Game

Fruits game in C# and ASP.NET MVC - sample project
C#
6
star
14

Messages-REST-Service

Messages RESTFul Web Services, based on ASP.NET Web API + Repositories + Unit of Work + Unit Tests + Integration Tests
C#
5
star
15

client-side-ethereum-wallet

Voting DApp with client-side Ethereum wallet. Implements register / login / logout / vote
JavaScript
5
star
16

introjavabook

Книга "Въведение в програмирането с Java"
Java
5
star
17

NakovTestGenerator

Paper-based test generator for exams
Pascal
3
star
18

SoftUni

My SoftUni projects, homework and exercises
C#
3
star
19

playwright-example

Example of Web Browser Automation with the Playwright Framework
JavaScript
3
star
20

OJS-Checkers

Custom checkers for the OJS judge system (open judge system)
C#
3
star
21

nakov.github.io

Nakov's Page at GitHub (http://nakov.github.io)
3
star
22

python-bulb-controller-thinger

Bulb Controller: ESP8266 + Thinger + Python App
Python
3
star
23

nakov

About Svetlin Nakov
3
star
24

Nakov-Simple-Crypto

Simple Crypto Algorithms: 32-Bit Hash and 32-Bit Symmetric Block Cypher
C#
3
star
25

MVC-app-integration-tests-example-mocha

Integration tests of Web MVC app with Mocha
JavaScript
3
star
26

Books-Library

Simple (Minimalistic) JavaScript Single Page App (SPA) without a Framework
JavaScript
3
star
27

CategoriesAPI

Gategories RESTful API
JavaScript
3
star
28

Unified-Support-System

Unified Support System: Embedded Questions with Comments
JavaScript
2
star
29

cognates-and-false-friends-tools

Automatically exported from code.google.com/p/cognates-and-false-friends-tools
C#
2
star
30

ShortURL

URL Shortener (JS App)
JavaScript
2
star
31

SoftUni-Projects

Exercises, Homework, Projects and Exams from SoftUni Java Track
C#
2
star
32

TaskBoard

Trello-style task board, holding tasks in boards (Open, In Progress, Done): C# App + RESTful API + Desktop Client + Android Client
C#
2
star
33

OfficeFilesToPdfConverter

Office Documents (Word and PowerPoint) to PDF Converter (Console App)
C#
2
star
34

ConsoleAppMarch2019Again

C#
1
star
35

SoftUni-Foundation-Docs-Converter

SoftUni-Foundation-Docs-Converter (for the "IT Career" trainings)
C#
1
star
36

nextjs-ai-chatbot

TypeScript
1
star
37

SimpleTreeNode

Very simple TreeNode<T> class for .NET
C#
1
star
38

Multidimensional-and-Jagged-Arrays-Examples

C#
1
star
39

Defining-Classes-Examples

C# Classes - Examples
C#
1
star
40

Appium-Tests-Vivino-Android

Appium-Based Automated Tests for the "Vivino" App on Android
C#
1
star
41

firts-repo

My first repo
1
star
42

Appium-7Zip-Test-Automation

Appium-based Automated Test for the 7-Zip File Archiver
C#
1
star
43

ConsoleAppMarch2019

1
star
44

NakovDocumentSigner

NakovDocumentSigner is an obsolete Java-applet based technology for digital signatures in the Web browser
Java
1
star
45

Dictionaries-and-Sets-Examples

C# examples for Dictionaries, Nested Dictionaries and Sets
C#
1
star
46

Appium-NUnit-CSharp-Example

Automated UI Testing with Appium for Android and Windows Desktop Apps
C#
1
star
47

test-repo

Това е тестово репо, което е за демо и след малко ще го изтрия
C#
1
star
48

selenium-webdriver-example

Example of using Selenium WebDriver to automate Chrome Web browser from Python
Python
1
star
49

ShortURL-DesktopClient

Windows desktop client app for the "ShortURL" service
C#
1
star
50

site-demo

site-demo (temp repo)
HTML
1
star
51

gwt-advanced-table

Automatically exported from code.google.com/p/gwt-advanced-table
Java
1
star
52

SoftUni-Homeworks

C#
1
star