youmark/pkcs8
GitHub: youmark/pkcs8
Go 语言 PKCS#8 私钥解析与转换库,弥补标准库无法处理加密 PKCS#8 私钥的不足。
Stars: 113 | Forks: 54
# pkcs8
OpenSSL 可以生成“传统格式”和 PKCS#8 格式的私有密钥。建议较新的应用程序使用更安全的 PKCS#8 格式。Go 标准 crypto 包提供了一个[函数](http://golang.org/pkg/crypto/x509/#ParsePKCS8PrivateKey)来解析 PKCS#8 格式的私有密钥。这个函数有一个限制。它只能处理未加密的 PKCS#8 私有密钥。为了使用这个函数,用户必须将私有密钥在未加密的情况下保存到文件中,这是一种将未受保护的私有密钥留在文件系统上的不良做法。此外,Go 标准包缺乏将 RSA/ECDSA 私有密钥转换为 PKCS#8 格式的函数。
pkcs8 包填补了这里的空白。它实现了处理 [RFC5208](https://tools.ietf.org/html/rfc5208) 和 [RFC5958](https://tools.ietf.org/html/rfc5958) 中定义的 PKCS#8 格式私有密钥的函数。它可以处理未加密的 PKCS#8 PrivateKeyInfo 格式,以及使用 PKCS#5 (v2.0) 算法的 EncryptedPrivateKeyInfo 格式。
[**Godoc**](http://godoc.org/github.com/youmark/pkcs8)
## 安装
支持 Go 1.10+。Release v1.1 是最后一个支持 Go 1.9 的 release
```
go get github.com/youmark/pkcs8
```
## 依赖
这个包依赖于 golang.org/x/crypto/pbkdf2 和 golang.org/x/crypto/scrypt 包。使用以下命令来获取它们
```
go get golang.org/x/crypto/pbkdf2
go get golang.org/x/crypto/scrypt
```
标签:EVTX分析, 日志审计