Golang : Load DSA public key from file example
Continue from previous tutorial on generating DSA private and public key. For this tutorial, we will learn how to load a DSA public key file and process the information.
package main
import (
"crypto/dsa"
"encoding/gob"
"fmt"
"os"
)
func main() {
//load public key
pubKeyFile, err := os.Open("DSApublic.key")
if err != nil {
fmt.Println(err)
os.Exit(1)
}
decoder := gob.NewDecoder(pubKeyFile)
var publickey dsa.PublicKey
err = decoder.Decode(&publickey)
if err != nil {
fmt.Println(err)
os.Exit(1)
}
pubKeyFile.Close()
//fmt.Printf("Public key : \n%x\n", pubKeyFile)
fmt.Printf("Public key parameter P: %v\n", publickey.Parameters.P)
fmt.Printf("Public key parameter Q: %v\n", publickey.Parameters.Q)
fmt.Printf("Public key parameter G: %v\n", publickey.Parameters.G)
fmt.Printf("Public key Y: %v\n", publickey.Y)
}
Hope this helps. Happy coding!
See also : Golang : Generate DSA private, public key and PEM files example
By Adam Ng
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Tutorials
+14.5k Golang : Adding XML attributes to xml data or use attribute to differentiate a common tag name
+26.8k Golang : Find files by name - cross platform example
+7.4k Golang : Convert(cast) io.Reader type to string
+26.4k Golang : How to check if a connection to database is still alive ?
+8.1k Golang : Convert word to its plural form example
+6.1k Golang : Selection sort example
+9.9k Golang : How to profile or log time spend on execution?
+17.7k Golang : Get all upper case or lower case characters from string example
+28.2k Get file path of temporary file in Go
+7.9k Golang : How To Use Panic and Recover
+24.7k Golang : Create PDF file from HTML file
+5.2k Golang : fmt.Println prints out empty data from struct