Skip to content

Parameters for the GOST R 34.10-2012 512-bit curves (RFC7836)

License

Notifications You must be signed in to change notification settings

pedroalbanese/gost2012

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 

Repository files navigation

GOST2012

ISC License GoDoc Go Report Card GitHub release (latest by date)

GOST R 34.10-2012 512-bit curve ParamSet A and B

Package implements the elliptic curves originally described in RFC 7836

Usage

Usage of gost2012:
  -dec
        Decrypt with Private key
  -derive
        Derive shared secret key
  -enc
        Encrypt with Public key
  -key string
        Private/Public key
  -keygen
        Generate keypair
  -pub string
        Remote's side Public key
  -sign
        Sign with Private key
  -signature string
        Signature
  -verify
        Verify with Public key

Examples

Asymmetric keypair generation:

./gost2012 -keygen 

Digital signature (ECDSA):

./gost2012 -sign -key $prvkey < file.ext > sign.txt
sign=$(cat sign.txt)
./gost2012 -verify -key $pubkey -signature $sign < file.ext

Asymmetric Encryption:

./gost2012 -enc -key $pubkey < file.ext > file.enc
./gost2012 -dec -key $prvkey < file.enc

Shared key agreement (ECDH a.k.a. VKO):

./gost2012 -derive -key $prvkey -pub $pubkey

License

This project is licensed under the ISC License.

Military-Grade Reliability. Copyright (c) 2020-2022 ALBANESE Research Lab.