(0)

Elliptic Curve Cryptography for Developers

e-book


Make your public key protocols smaller and more secure with this accessible guide to Elliptic Curve Cryptography.

Elliptic Curve Cryptography for Developers introduces the mathematics of elliptic curves—a powerful alternative to the prime number-based RSA encryption standard. You’ll learn to deliver zero-knowledge proofs and aggregated multi-signatures that are not even possible with RSA mathematics. All you need is the basics of calculus you learned in high school.

Elliptic Curve Cryptography for Developers includes:

• Clear, well-illustrated introductions to key ECC concepts

• Implementing efficient digital signature algorithms

• State of the art zero-knowledge proofs

• Blockchain applications with ECC-backed security

The book gradually introduces the concepts and subroutines you’ll need to master with diagrams, flow charts, and accessible language. Each chapter builds on what you’ve already learned, with step-by-step guidance until you’re ready to write embedded systems code with advanced mathematical algorithms.

About the technology

The Elliptic Curve Cryptography (ECC) protocol secures everything from credit card transactions to the blockchain. With a little C code, high school calculus, and the techniques in this book, you can implement ECC cryptographic protocols that are smaller and more secure than the RSA-based systems in common use today.

About the book

Elliptic Curve Cryptography for Developers teaches you how ECC protocols work and how to implement them seamlessly in C code. Unlike academic cryptography books, this practical guide sticks to the minimum math and theory you need to get the job done. Author Mike Rosing illustrates each concept with clear graphics, detailed code, and hands-on exercises. As you go, you’ll practice what you learn by building two encryption systems for a blockchain application.

What's inside

• Efficient digital signature algorithms

• Zero-knowledge proofs

• ECC security for blockchain applications

About the reader

Readers need to understand basic calculus. Examples in C.

About the author

Michael Rosing’s career as a scientist, hardware engineer, and software developer includes high-energy physics, telephone switch engineering, and developing vision devices for the blind.

The technical editor on this book was Mark Bissen.

Table of Contents

1 Pairings over elliptic curves in cryptography

Part 1

2 Description of finite field mathematics

3 Explaining the core of elliptic curve mathematics

4 Key exchange using elliptic curves

5 Prime field elliptic curve digital signatures explained

6 Finding good cryptographic elliptic curves

Part 2

7 Description of finite field polynomial math

8 Multiplication of polynomials explained

9 Computing powers of polynomials

10 Description of polynomial division using Euclid’s algorithm

11 Creating irreducible polynomials

12 Taking square roots of polynomials

Part 3

13 Finite field extension curves described

14 Finding low embedding degree elliptic curves

15 General rules of elliptic curve pairing explained

16 Weil pairing defined

17 Tate pairing defined

18 Exploring BLS multi-signatures

19 Proving knowledge and keeping secrets: Zero knowledge using pairings

Appendix A Code and tools

Appendix B Hilbert class polynomials

Appendix C Variables list