Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Cryptography
  3. scrypto

scrypto

CC0-1.0Scalav3.1.0

A Scala cryptographic toolkit providing hash functions, signing, encoding, and authenticated data structures for secure applications.

GitHubGitHub
203 stars49 forks0 contributors

What is scrypto?

Scrypto is a cryptographic toolkit for Scala that provides a suite of secure primitives including hash functions, signing algorithms, encoding schemes, and authenticated data structures. It solves the problem of making cryptography accessible and safe for developers building applications that require robust security features.

Target Audience

Scala developers working on applications needing cryptographic operations, such as blockchain projects, secure messaging systems, or any software requiring data integrity and authentication.

Value Proposition

Developers choose Scrypto for its comprehensive, thread-safe implementations of essential cryptographic algorithms, its origin in the proven Scorex blockchain framework, and its permissive public domain license that allows unrestricted use.

Overview

Cryptographic primitives for Scala

Use Cases

Best For

  • Implementing secure hash functions in Scala applications
  • Adding digital signatures with Curve25519/Ed25519 support
  • Building authenticated data structures like AVL+ trees for two-party verification
  • Encoding and decoding binary data with Base16, Base58, or Base64
  • Integrating cryptographic primitives into blockchain or distributed ledger projects
  • Creating Merkle trees for cryptographic commitments and proofs

Not Ideal For

  • Projects requiring a wide variety of elliptic curves beyond Curve25519 and Ed25519
  • Teams seeking minimal dependency setups without npm or complex SBT memory configurations
  • Applications needing symmetric encryption, key derivation, or other common cryptographic primitives not included in Scrypto's suite

Pros & Cons

Pros

Comprehensive Hash Functions

Supports multiple secure hash algorithms like Blake2b, Keccak, and SHA, all implemented as thread-safe for concurrent use, as detailed in the 'Hash functions' section.

Authenticated AVL+ Trees

Implements two-party authenticated data structures with batching compression and verifier efficiency guarantees, based on academic research from the referenced IACR paper.

Secure Signing Capabilities

Provides a Scala wrapper for Curve25519-Java using JDK SecureRandom, ensuring robust elliptic curve signatures for Ed25519 and Curve25519, with simple API calls demonstrated in the README.

Flexible Encoding Schemes

Includes Base16, Base58, and Base64 for reliable binary-to-text encoding and decoding, with clear examples like Base64.encode and decode in the documentation.

Cons

Limited Cryptographic Scope

Focuses primarily on hashing, signing, and data structures, lacking common features such as symmetric encryption or key derivation functions, which limits its utility for broader cryptographic needs.

Documentation Gaps

The README admits incomplete sections, notably the Merkle tree description marked as TODO, which can hinder developers seeking comprehensive guidance and examples.

Complex Build Process

Requires npm installation for ScalablyTyped and specific SBT memory settings, adding setup overhead and potential environment issues, as mentioned in the contributing section.

Frequently Asked Questions

Quick Stats

Stars203
Forks49
Contributors0
Open Issues2
Last commit1 year ago
CreatedSince 2015

Tags

#public-domain#digital-signatures#merkle-tree#scala#cryptography#encoding#hash-functions#elliptic-curve

Built With

s
sbt
S
Scala
n
npm
S
Scala.js

Included in

Cryptography6.8k
Auto-fetched 9 hours ago

Related Projects

tsectsec

Type-safe general-cryptography library - https://jmcardon.github.io/tsec/

Stars350
Forks54
Last commit4 years ago
recryptrecrypt

Transform encryption library for Scala

Stars37
Forks4
Last commit7 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub