1## Introduce 2 3This package code is derived from github.com/AGWA-forks/golang-crypto , and moved to be a independent package for PKCS12 encode and decode! 4 5## Demo 6 7```go 8package main 9 10import ( 11 "io/ioutil" 12 "log" 13 "strconv" 14 15 "github.com/lotus-wu/go-pkcs12" 16) 17 18func main() { 19 pfxData, _ := ioutil.ReadFile("a.p12") 20 pv, cer, err := pkcs12.DecodeAll(pfxData, "123456") 21 if err != nil { 22 log.Println(err) 23 return 24 } 25 log.Println(pv) 26 log.Println(cer) 27 28 id := int64(0) 29 for _, v := range cer { 30 filename := "test" + strconv.FormatInt(id, 10) + ".cer" 31 ioutil.WriteFile(filename, v.Raw, 0666) 32 id += 1 33 } 34 35 pfxDataNew, _ := pkcs12.Encode(pv, cer[0], cer[1:], "123456") 36 ioutil.WriteFile("1.p12", pfxDataNew, 0666) 37} 38``` 39 40