Algorithm Projects with Rust

Public Key Cryptography you own this product

This project is part of the liveProject series Four Small Algorithm Projects with Rust
prerequisites
the modulus operator, arrays and slices, integer division, exponentiation
skills learned
randomization • GCD and LCM • fast exponentiation • working with prime numbers • factoring • primality testing • RSA encryption
Rod Stephens
1 week · 6-8 hours per week · INTERMEDIATE

pro $24.99 per month

  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose one free eBook per month to keep
  • exclusive 50% discount on all purchases

lite $19.99 per month

  • access to all Manning books, including MEAPs!

team

5, 10 or 20 seats+ for your team - learn more


Look inside

In this liveProject, you’ll use Rust and RSA encryption to secure the emails of your antique marble collection business. You’ll steadily build up different parts of the RSA encryption process before bringing each together in a working RSA example that can both encrypt and decrypt your email messages. Throughout the journey, you will acquire knowledge about prime number identification, factoring, probabilistic generation of random primes, and rapid exponentiation techniques.

This project is designed for learning purposes and is not a complete, production-ready application or solution.

book resources

When you start your liveProject, you get full access to the following books for 90 days.

project author

Rod Stephens

Rod Stephens started out as a mathematician but discovered the fun of algorithms and has been programming ever since. Rod was a Microsoft Visual Basic Most Valuable Professional (MVP) for 15 years, has spoken to user groups and conferences, and has taught introductory programming courses. He has written more than 35 books including Essential Algorithms: A Practical Approach to Computer Algorithms Using Python and C# and Beginning Software Engineering, both of which include material related to this series of liveProjects.

prerequisites

This liveProject is for Rust programmers who want to flex their skills. You should know the basics of Rust, but you don’t need any advanced knowledge or capabilities.

TOOLS
  • Intermediate Rust
TECHNIQUES
  • Basics of number theory and modular arithmetic

you will learn

In this liveProject, you’ll learn to use Rust to establish effective RSA encryption.

  • Randomization
  • GCD and LCM
  • Fast exponentiation
  • Working with prime numbers
  • Factoring
  • Primality testing
  • RSA encryption

features

Self-paced
You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.

choose your plan

team

monthly
annual
$49.99
$499.99
only $41.67 per month
  • five seats for your team
  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose another free product every time you renew
  • choose twelve free products per year
  • exclusive 50% discount on all purchases
  • Public Key Cryptography project for free