首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从文件加载加密的PKCS1私钥

从文件加载加密的PKCS1私钥
EN

Stack Overflow用户
提问于 2017-06-21 18:34:47
回答 2查看 2.2K关注 0票数 3

我在一个文件中有一个PKCS1私钥,我使用以下命令加载它

代码语言:javascript
复制
b, err := ioutil.ReadFile(path)
if err != nil {
    return nil, err
}

然后,我尝试将其转换为私钥对象

代码语言:javascript
复制
block, _ := pem.Decode(b)
der, err := x509.DecryptPEMBlock(block, []byte("qwerty"))
if err != nil {
    return nil, err
}

bytes := pem.EncodeToMemory(&pem.Block{Type: "RSA PRIVATE KEY", Bytes: der})

return x509.ParsePKCS1PrivateKey(bytes)

但此代码在DecryptPEMBlock中抛出异常

代码语言:javascript
复制
x509: no DEK-Info header in block

我在golang没有找到任何关于这方面的文档

EN

回答 2

Stack Overflow用户

发布于 2017-06-23 01:53:51

我的私钥文件有一个错误,下面是一个有效的代码

代码语言:javascript
复制
func GetPrivateKey(path string) (*rsa.PrivateKey, error) {
    b, err := ioutil.ReadFile(path)
    if err != nil {
        return nil, err
    }

    block, _ := pem.Decode(b)
    der, err := x509.DecryptPEMBlock(block, []byte(*PrivateKeyPassword))
    if err != nil {
        return nil, err
    }

    return x509.ParsePKCS1PrivateKey(der)
}

P.S.Go确实有一个用于解密PKCS1私钥的包,但没有用于PKCS8的包。

票数 3
EN

Stack Overflow用户

发布于 2017-06-22 00:28:02

Go似乎没有用于解码PKCS文件的软件包

有关更多详细信息,请查看此链接PKCS

我找不到用于解码PKCS1密钥的软件包

使用这个包来解码PKCS8文件,有一些包可以解码PKCS8,PKCS10,PKCS12,但不是PKCS1

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44673695

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档