ctcrypto

package module
v0.0.0-...-768a8bd Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 23, 2021 License: MIT Imports: 2 Imported by: 0

README

ctcrypto

This is an attempt to port some of Go's standard cryptography to use the safenum library. That library provides an alternative to Go's big.Int type, attempting to operate without timing leaks. This makes it more suitable for cryptography compared to big.Int, which is unfortunately used pervasively throughout Go's standard cryptography routines.

The code in this repository is based on Go's standard crypto package, trying to make minimal changes to use safenum.Nat instead of big.Int. This isn't an attempt to make a useable cryptography library, but rather to see how useable safenum.Nat's API would be for replacing big.Int, and producing benchmarks to see how much this switch to constant-time operation impacts real-world workloads.

This is experimental software, use at your own peril. (Really, this library isn't intended for consumption, unlike safenum)

Licensing

LICENSE contains an MIT license, which applies to files not originating from Go's standard library.

For files coming from Go's standard library, LICENSE_go applies, as indicated in those files' headers.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
Package dsa implements the Digital Signature Algorithm, as defined in FIPS 186-3.
Package dsa implements the Digital Signature Algorithm, as defined in FIPS 186-3.
Package ecdsa implements the Elliptic Curve Digital Signature Algorithm, as defined in FIPS 186-3.
Package ecdsa implements the Elliptic Curve Digital Signature Algorithm, as defined in FIPS 186-3.
Package elliptic implements several standard elliptic curves over prime fields.
Package elliptic implements several standard elliptic curves over prime fields.
internal
randutil
Package randutil contains internal randomness utilities for various crypto packages.
Package randutil contains internal randomness utilities for various crypto packages.
subtle
Package subtle implements functions that are often useful in cryptographic code but require careful thought to use correctly.
Package subtle implements functions that are often useful in cryptographic code but require careful thought to use correctly.
Package rsa implements RSA encryption as specified in PKCS #1 and RFC 8017.
Package rsa implements RSA encryption as specified in PKCS #1 and RFC 8017.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL