Skip to content

cronokirby/ctcrypto

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

About

Proof-of-Concept for using https://github.com/cronokirby/safenum in crypto code

Resources

License

MIT, BSD-3-Clause licenses found

Licenses found

MIT
LICENSE
BSD-3-Clause
LICENSE_go

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published