【问题标题】:ASN1/ DER grammar for RSA keyRSA 密钥的 ASN1/DER 语法
【发布时间】:2016-01-26 05:03:08
【问题描述】:

我正在寻找 DER ASN1 RSA 密钥编码的 ASN1 语法文件

我正在寻找语法文件,以便我可以使用 ASN1C 编译器对其进行编译,然后使用 GMP 编写我自己的“c”代码以从给定的 RSA 密钥文件中提取公钥。

如果有人可以指导我如何使用以下有关 RSA 密钥的 DER / ASN1 格式的信息来生成 RSA 密钥的语法文件,那将会很有帮助

RSAPublicKey ::= SEQUENCE {
    modulus           INTEGER,  -- n
    publicExponent    INTEGER   -- e
}

RSAPrivateKey ::= SEQUENCE {
    version           Version,
    modulus           INTEGER,  -- n
    publicExponent    INTEGER,  -- e
    privateExponent   INTEGER,  -- d
    prime1            INTEGER,  -- p
    prime2            INTEGER,  -- q
    exponent1         INTEGER,  -- d mod (p-1)
    exponent2         INTEGER,  -- d mod (q-1)
    coefficient       INTEGER,  -- (inverse of q) mod p
    otherPrimeInfos   OtherPrimeInfos OPTIONAL
}

【问题讨论】:

  • 您在问题中包含了 ASN.1。我很确定这是您应该提供给 ASN.1 编译器的输入。
  • 感谢您的建议,我只是错过了第一行和最后一行,我在下面发布了适用的语法

标签: cryptography rsa gmp asn.1 der


【解决方案1】:

您可以在Appendix C of the RFC that contains the PKCS#1 RSA specification (v2.1) 中找到完整的语法规范。

【讨论】:

    【解决方案2】:

    感谢您的建议....有一个小标题信息要添加。以下是最终起作用的语法行

    RSAPRIVATEKEY DEFINITIONS ::= BEGIN
    RSAPublicKey ::= SEQUENCE {
    modulus           INTEGER,  -- n
    publicExponent    INTEGER   -- e 
    }
    Version ::= INTEGER
    RSAPrivateKey ::= SEQUENCE {
        version           Version,
        modulus           INTEGER,  -- n
        publicExponent    INTEGER,  -- e
        privateExponent   INTEGER,  -- d
        prime1            INTEGER,  -- p
        prime2            INTEGER,  -- q
        exponent1         INTEGER,  -- d mod (p-1)
        exponent2         INTEGER,  -- d mod (q-1) 
        coefficient       INTEGER}  -- (inverse of q) mod p
    --    otherPrimeInfos   OtherPrimeInfos OPTIONAL 
    END
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-10
      • 2015-05-08
      • 1970-01-01
      • 2011-08-24
      • 2014-02-06
      • 2015-03-19
      • 2017-04-16
      • 2019-02-27
      相关资源
      最近更新 更多