【问题标题】:determine key size from public key (PEM format)根据公钥确定密钥大小(PEM 格式)
【发布时间】:2012-11-24 16:39:49
【问题描述】:

我正在尝试计算我收到的公钥的大小。如何从密钥中确定大小?我在documentation中找不到简单的方法。

我拥有的是公钥本身,我收到的是这样的:

cert = OpenSSL::X509::Certificate.new(sock.peer_cert)
pkey = cert.public_key

公钥采用 PEM 格式。所以你有开始和结束线,中间是实际的键。现在密钥本身是 base64 编码的。如果我解码该字符串并计算字节数,我会得到一个大小。这个大小包括一些额外的东西,比如指数和模数(还有更多吗?)。我需要知道确定公钥的位是多少字节模数和指数(如果有更多,那么也有)占用。

【问题讨论】:

    标签: ruby security size certificate public-key


    【解决方案1】:
    key_length_in_bits = pkey.n.num_bytes * 8
    

    引用Wikipedia:

    [...] n 用作公钥和私钥的模数。它的长度,通常以位表示,是密钥长度。 [...]

    【讨论】:

    • 或者只是pkey.n.num_bits
    猜你喜欢
    • 1970-01-01
    • 2019-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-29
    • 1970-01-01
    • 2020-06-08
    • 2015-08-17
    相关资源
    最近更新 更多