solcrypto - Solidity crypto libraries, ring signatures, proof of knowledge, packed signatures etc

  •        165

This repository contains Solidity and Python implementations of several cryptographic primitives, they are designed to work together and make it easier to build novel cryptosystems using composable primitives. These implementations can be easily switched to either the secp256k1 or alt_bn128 curves.

https://github.com/HarryR/solcrypto

Dependencies:

soljitsu : >=0.1.2

Tags
Implementation
License
Platform

   




Related Projects

awesome-solidity - :small_blue_diamond: A curated list of awesome Solidity resources, libraries, tools and more

  •    Shell

A curated list of awesome Solidity resources, libraries, tools and more. Please check the contribution guidelines for info on formatting and writing pull requests.

remix-project - Remix is a browser-based compiler and IDE that enables users to build Ethereum contracts with Solidity language and to debug transactions

  •    Javascript

Remix Project is a platform for development tools that use a plugin architecture. It encompasses sub-projects including Remix Plugin Engine, Remix Libraries, and of course Remix IDE. Remix IDE is an open source web and desktop application. It fosters a fast development cycle and has a rich set of plugins with intuitive GUIs. Remix is used for the entire journey of contract development with Solidity language in as well as being a playground for learning and teaching Ethereum.

zkproofs - Zero-Knowledge Proofs

  •    C

One fundamental concern in blockchain technology is the confidentiality of the data. In order to reach consensus between all independent nodes, each node must be able to validate all transactions (for instance against double-spend), in most cases this means that the content of the transactions is visible to all nodes. Fortunately, several solutions exist that preserve confidentiality on a blockchain (private transactions, HyperLedger Fabric Channels, Payment Channels, Homomorphic encryption, transaction-mixing, zero knowledge proofs etc.). The Zero Knowledge Range Proof requires a commitment on a number by a trusted party (for instance a government committing on someone's age), an Ethereum user can use this commitment to generate a range proof. The Ethereum network will verify this proof.

Solidity - The Solidity Contract-Oriented Programming Language

  •    C++

Solidity is a contract-oriented, high-level language for implementing smart contracts. It was influenced by C++, Python and JavaScript and is designed to target the Ethereum Virtual Machine (EVM). It is statically typed, supports inheritance, libraries and complex user-defined types among other features. With Solidity you can create contracts for uses such as voting, crowdfunding, blind auctions, and multi-signature wallets.

python-ecdsa - pure-python ECDSA signature/verification

  •    Python

This is an easy-to-use implementation of ECDSA cryptography (Elliptic Curve Digital Signature Algorithm), implemented purely in Python, released under the MIT license. With this library, you can quickly create keypairs (signing key and verifying key), sign messages, and verify the signatures. The keys and signatures are very short, making them easy to handle and incorporate into other protocols. This library provides key generation, signing, and verifying, for five popular NIST "Suite B" GF(p) curves, with key lengths of 192, 224, 256, 384, and 521 bits. The "short names" for these curves, as known by the OpenSSL tool (openssl ecparam -list_curves), are: prime192v1, secp224r1, prime256v1, secp384r1, and secp521r1. It also includes the 256-bit curve used by Bitcoin, whose short name is secp256k1. No other curves are included, but it would not be too hard to add more.


21st Century Crypto

  •    C

This ainamp;#39;t your daddyamp;#39;s crypto! We provide a set of C libs and utilities to perform cypherpunk style crypto functions, using your existing OpenPGP keys. Ring signatures; credentials; mental poker; timelines; zero knowledge proofs. Cool stuff!

bulletproofs - Bulletproofs are short non-interactive zero-knowledge proofs that require no trusted setup

  •    Haskell

Bulletproofs are short zero-knowledge arguments of knowledge that do not require a trusted setup. Argument systems are proof systems with computational soundness. Bulletproofs are suitable for proving statements on committed values, such as range proofs, verifiable suffles, arithmetic circuits, etc. They rely on the discrete logarithmic assumption and are made non-interactive using the Fiat-Shamir heuristic.

Crypton - A framework for creating zero-knowledge web applications

  •    Javascript

Crypton is a framework for creating zero-knowledge web applications. Zero Knowledge applications offer meaningful privacy assurance to end users because the servers running the application cannot read the data created and stored by the application.

sodiumoxide - Sodium Oxide: Fast cryptographic library for Rust (bindings to libsodium)

  •    Rust

NaCl (pronounced "salt") is a new easy-to-use high-speed software library for network communication, encryption, decryption, signatures, etc. NaCl's goal is to provide all of the core operations needed to build higher-level cryptographic tools. Of course, other libraries already exist for these core operations. NaCl advances the state of the art by improving security, by improving usability, and by improving speed. Sodium is a portable, cross-compilable, installable, packageable fork of NaCl (based on the latest released upstream version nacl-20110221), with a compatible API.

web3j - Connect Java and Android apps to the Ethereum blockchain

  •    Java

web3j is a lightweight, reactive, type safe Java and Android library for integrating with clients (nodes) on the Ethereum network. This allows you to work with the Ethereum blockchain, without the additional overhead of having to write your own integration code for the platform.

aleth - Aleth – Ethereum C++ client, tools and libraries

  •    C++

The collection of C++ libraries and tools for Ethereum, formerly known as cpp-ethereum project. This includes the full Ethereum client aleth. The Ethereum Documentation site hosts the cpp-ethereum homepage, which has a Quick Start section.

brainflayer - A proof-of-concept cracker for cryptocurrency brainwallets and other low entropy key alogrithms

  •    C

Brainflayer is a Proof-of-Concept brainwallet cracking tool that uses libsecp256k1 for pubkey generation. It was originally released as part of my DEFCON talk about cracking brainwallets (slides, video, why). The name is a reference to Mind Flayers, a race of monsters from the Dungeons & Dragons role-playing game. They eat brains, psionically enslave people and look like lovecraftian horrors.

Zcash - Internet Money

  •    C++

Zcash is an implementation of the "Zerocash" protocol. Based on Bitcoin's code, it intends to offer a far higher standard of privacy through a sophisticated zero-knowledge proving scheme that preserves confidentiality of transaction metadata. Bitcoin and most cryptocurrencies expose your entire payment history to the public. Zcash is the first open, permissionless cryptocurrency that can fully protect the privacy of transactions using zero-knowledge cryptography.

Cryptag - Encrypted, taggable, searchable cloud storage

  •    Go

CrypTag is an idea, a spec, an API, and a piece of software that makes it easy to build a zero-knowledge system, which means that the server holding user data doesn't know what it is (since it's encrypted).

PrivateBin - A minimalist, open source online pastebin where the server has zero knowledge of pasted data

  •    PHP

PrivateBin is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted and decrypted in the browser using 256bit AES in Galois Counter mode.

cakeshop - An integrated development environment and SDK for Ethereum-like ledgers

  •    Javascript

Cakeshop is a set of tools and APIs for working with Ethereum-like ledgers, packaged as a Java web application archive (WAR) that gets you up and running in under 60 seconds. Included in the package is the geth, quorum, and constellation Ethereum servers, a Solidity compiler and all dependencies.

Truffle - The most popular Ethereum development framework

  •    Javascript

Truffle is the most popular development framework for Ethereum with a mission to make your life a whole lot easier.

ethereum-api - Oraclize API for Ethereum smart contracts

  •    Solidity

Thanks to this Ethereum API helpers using Oraclize in your Solidity/Serpent code is very easy. In Solidity it is as simple as inheriting the usingOraclize contract: this will provide you some functions, like oraclize_query, which make it trivial to leverage our technology straight away.

Solium - Linter to identify and fix style & security issues in Solidity

  •    Javascript

Solium analyzes your Solidity code for style & security issues and fixes them. To know which lint rules Solium applies for you, see Style rules and Security rules.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.