Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Cryptography Educational Foundations

License

NotificationsYou must be signed in to change notification settings

pluto/ronkathon

Repository files navigation

ContributorsTestsLint

Overview

Ronkathon is a collection of cryptographic primitives implemented in Rust. It is inspired by thepython plonkathon repository andplonk-by-hand. We use the same curve and field as plonk-by-hand (which is not secure) and the goal of this repository is to work towards building everything from scratch to understand everything from first principles.

Primitives

Signatures

Encryption

Asymmetric

Symmetric

Hash

Resources

We have found the following resources helpful in understanding the foundational mathematics behind this implementation. After going through these, you should be able to understand the codebase

Theoretic Resources

Code References

Math

To see computations used in the background, go to themath/ directory.From there, you can run the.sage files in a SageMath environment.In particular, themath/field.sage computes roots of unity in thePlutoField which is of size 101. To install sage on your machine, follow the instructionshere. If you are on a Mac, you can install it via homebrew withbrew install --cask sage.

Building mdBook

To locally build/serve themdBook site, install mdBook andmdbook-katex:

cargoinstallmdbookcargoinstallmdbook-katex

To build, run:

cargorun--bincreate_mdbookcp-rassetsbook/mdbookbuild

If you want to serve locally, runmdbook serve.

License

Licensed under the Apache License, Version 2.0 (LICENSE-APACHE orhttp://www.apache.org/licenses/LICENSE-2.0)

Contributing

We welcome contributions to our open-source projects. If you want to contribute or follow along with contributor discussions, join ourmain Telegram channel to chat about Pluto's development.

Our contributor guidelines can be found atCONTRIBUTING.md. A good starting point is issues labelled 'bounty' in our repositories.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be licensed as above, without any additional terms or conditions.


[8]ページ先頭

©2009-2025 Movatter.jp