PKI, A simple PKI library made of Golang
DummyTLS, Dummy TLS for easy testing of HTTPS web servers ( certFile, KeyFile )
go get -u github.com/alaflatca/gpkio
DummyTLS ( HTTPS Web Server Simple Test )
dummy := gpkio.GenerateDummyTLS()
http.ListenAndServeTLS(":443", dummy.CertFile, dummy.KeyFile, nil)
PKI ( private, public key )
pki, err := gpkio.GenerateKey(&gpkio.Config{
Dir: "keys", // default "./"
PrivateKeyFileName: "private-key", // default "private"
PublicKeyFileName: "public-key", // default "public"
BitSize: 2048, // default "2048"
})
==> ./keys/private-key.pem
==> ./keys/public-key.pem
privateKey, publicKey, err := pki.LoadKey(pki.config.PrivateKeyFileName, pki.config.PublicKeyFileName)
encryptedData, err := pki.Encrypt([]byte("Hello, gpkio!"))
decryptedData, err := pki.Decrypt(encryptedData)
base64Signature, err := pki.Sign([]byte("Hello, gpkio!"))
origin := []byte("Hello, gpkio!")
base64Signature, err := pki.Sign(origin)
err := pki.Verifiy(origin, base64Signature)
hashData, err := pki.Hash([]byte("Hello, gpkio!"))