美文网首页
OpenSSL(二)

OpenSSL(二)

作者: 赛亚人之神 | 来源:发表于2018-05-15 15:29 被阅读9次

    更多参考文章地址

    1. 生成私钥(默认为 pkcs1 格式)
    openssl genrsa -out access_token_private_key.pem 2048
    

    生成结果:

    -----BEGIN RSA PRIVATE KEY-----
    MIIEowIBAAKCAQEAv39BQVAS4E5IxwJIMc5/+gc0pVkCqkR4evDUiIA56onrI/6o
    P6B88DuO+wCyz5LjK1thHOVTWbWjDbBMc41kGYxBRddeggY75B+x6Pcl7s7UavCk
    9pWFRIotOAtSoeDc21zmPm8id/CsvfXyUzb89873BdJ0GnJ5QTSKAVY2XUZp83ax
    xIbQpAm03PydZBujDjzSZkFfJKdkLKhzfqB1FReBatjtiP5PubYkzr9oxcxqsaln
    Rl6TGjtER+VKqAeHxstzRb+eIQR1QIzqE82vkBxpYthfHpL3tbEg29+Zq37Mn0TB
    boxM6hbTfd6zDp+YVBDU5yK95BRFzn9ib/xsjQIDAQABAoIBAD3jJnexJSiQpDyM
    pEBUeE+ZnI4DYjUcw8MXqdgjeJQv1mpflohZmYcZ+G9uHluvIPOWKKBqDLHlXbjC
    zTJa84q+JSopHEXxNdHX3Gtp1DyFY2jcNLPsRpGMBmkiX6YpQbczIsXyrLUOdwU9
    Qv9Zug9sN7EN/q+9ZyqHjEI6Vn91/wiF9tv0AjySiq9r/uXY5uuIbFVjO2tOkPWd
    4QkPJM3wISorqCrVmhKTAEXU9WWhOUPrxGv8lK8Rw8nHVBDeeOUKte6ksWFCvNJm
    +OeFByHfC5UG2jDdx/20PYEuBXlcSnDZ+NPLxqq0FyrbGvtNtGKk9RqskZPIe++t
    apdcigECgYEA4sexnesnjP/H04m4wFh78/4CzuWhewrrh2w+xLQjEVCLC3ju+mUy
    k5c+KCc8EgYTqq1t3HeO60i8mVTVGUicFDwYZwoM5Wxd+ca60Yt9VnTr5MBSNo9l
    cz08BiKREdfrDtWlBkWAx0ZFWJumCyaDKv4mpvEFpg+kgWUHHqIkcO0CgYEA2CvB
    /aJqKg8MLNH/9J3gmvIQ0r8L47s9I+q7HcLlpxpOS/OYmdw4XFsq1phEyVl7v7Zt
    0cjy8OyKMDNgSEl81covN3CCnY8hmSW/M0lwUnKTUqSGdT3n71+B4LCPxIKS3532
    DzcbWal9bfB004kNM45eUDIkGbYMqIN24jq7liECgYEA28+ZjqrWzClEY/ry06Uw
    iB/mUupq6dt8zeeSs5CzCN5b18PhR1z9d+c5/SuCYyn2uBGgEfjk05POEoUShI5H
    kqlpMb6hH2M5d5gzjlY5J6ru1uu/BFlbiSaKXpv0pyn1EYzthrWpi/3Fy4walmY+
    71Ym2tt1kS9KUY0+KGgbEEUCgYByquOAc0L1hH3k2JB5ZbXa+0TJReY8qvnHr6AK
    LXQ8q8uUpmbwVsze0M1sf+EdHYZzL4YZngqgmhjDcL1GGxVJIrLhKaFfiqk737YI
    spAObBCR6gwY7Pm3FGaElaPtjYXzcIsxjv3HFg0e4EpYW37RNlf5Gl/j85nLWdEa
    OCWBgQKBgHIZx/4U3zc6tTQf7+NeOn2uxA1S+Pra1EMur3jJoU+4rsT74RBNSF2B
    Pc7EfC/SVWUhzAahpvbY7RJenza3EnW7vOPupjU4/7LXDYw12P89JVDDrSS2BFZG
    C2Rl6EojESpLg8dlx/drnEjHOzMwj15/I+5kCWuItQ1ryAIteamz
    -----END RSA PRIVATE KEY-----
    
    1. 根据私钥生成公钥
    openssl rsa -in access_token_private_key.pem -pubout -out access_token_public_key.pem
    

    生成结果:

    -----BEGIN PUBLIC KEY-----
    MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAv39BQVAS4E5IxwJIMc5/
    +gc0pVkCqkR4evDUiIA56onrI/6oP6B88DuO+wCyz5LjK1thHOVTWbWjDbBMc41k
    GYxBRddeggY75B+x6Pcl7s7UavCk9pWFRIotOAtSoeDc21zmPm8id/CsvfXyUzb8
    9873BdJ0GnJ5QTSKAVY2XUZp83axxIbQpAm03PydZBujDjzSZkFfJKdkLKhzfqB1
    FReBatjtiP5PubYkzr9oxcxqsalnRl6TGjtER+VKqAeHxstzRb+eIQR1QIzqE82v
    kBxpYthfHpL3tbEg29+Zq37Mn0TBboxM6hbTfd6zDp+YVBDU5yK95BRFzn9ib/xs
    jQIDAQAB
    -----END PUBLIC KEY-----
    
    
    1. 将私钥的 pkcs1 转换成 pkcs8 格式,使用 -nocrypt 表示不使用密码(否则需要在命令行输入密码)
    openssl pkcs8 -in access_token_private_key.pem -topk8 -out access_token_pkcs8_private_key.pem -nocrypt
    

    生成结果:

    -----BEGIN PRIVATE KEY-----
    MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC/f0FBUBLgTkjH
    Akgxzn/6BzSlWQKqRHh68NSIgDnqiesj/qg/oHzwO477ALLPkuMrW2Ec5VNZtaMN
    sExzjWQZjEFF116CBjvkH7Ho9yXuztRq8KT2lYVEii04C1Kh4NzbXOY+byJ38Ky9
    9fJTNvz3zvcF0nQacnlBNIoBVjZdRmnzdrHEhtCkCbTc/J1kG6MOPNJmQV8kp2Qs
    qHN+oHUVF4Fq2O2I/k+5tiTOv2jFzGqxqWdGXpMaO0RH5UqoB4fGy3NFv54hBHVA
    jOoTza+QHGli2F8ekve1sSDb35mrfsyfRMFujEzqFtN93rMOn5hUENTnIr3kFEXO
    f2Jv/GyNAgMBAAECggEAPeMmd7ElKJCkPIykQFR4T5mcjgNiNRzDwxep2CN4lC/W
    al+WiFmZhxn4b24eW68g85YooGoMseVduMLNMlrzir4lKikcRfE10dfca2nUPIVj
    aNw0s+xGkYwGaSJfpilBtzMixfKstQ53BT1C/1m6D2w3sQ3+r71nKoeMQjpWf3X/
    CIX22/QCPJKKr2v+5djm64hsVWM7a06Q9Z3hCQ8kzfAhKiuoKtWaEpMARdT1ZaE5
    Q+vEa/yUrxHDycdUEN545Qq17qSxYUK80mb454UHId8LlQbaMN3H/bQ9gS4FeVxK
    cNn408vGqrQXKtsa+020YqT1GqyRk8h7761ql1yKAQKBgQDix7Gd6yeM/8fTibjA
    WHvz/gLO5aF7CuuHbD7EtCMRUIsLeO76ZTKTlz4oJzwSBhOqrW3cd47rSLyZVNUZ
    SJwUPBhnCgzlbF35xrrRi31WdOvkwFI2j2VzPTwGIpER1+sO1aUGRYDHRkVYm6YL
    JoMq/iam8QWmD6SBZQceoiRw7QKBgQDYK8H9omoqDwws0f/0neCa8hDSvwvjuz0j
    6rsdwuWnGk5L85iZ3DhcWyrWmETJWXu/tm3RyPLw7IowM2BISXzVyi83cIKdjyGZ
    Jb8zSXBScpNSpIZ1PefvX4HgsI/EgpLfnfYPNxtZqX1t8HTTiQ0zjl5QMiQZtgyo
    g3biOruWIQKBgQDbz5mOqtbMKURj+vLTpTCIH+ZS6mrp23zN55KzkLMI3lvXw+FH
    XP135zn9K4JjKfa4EaAR+OTTk84ShRKEjkeSqWkxvqEfYzl3mDOOVjknqu7W678E
    WVuJJopem/SnKfURjO2GtamL/cXLjBqWZj7vViba23WRL0pRjT4oaBsQRQKBgHKq
    44BzQvWEfeTYkHlltdr7RMlF5jyq+cevoAotdDyry5SmZvBWzN7QzWx/4R0dhnMv
    hhmeCqCaGMNwvUYbFUkisuEpoV+KqTvftgiykA5sEJHqDBjs+bcUZoSVo+2NhfNw
    izGO/ccWDR7gSlhbftE2V/kaX+PzmctZ0Ro4JYGBAoGAchnH/hTfNzq1NB/v4146
    fa7EDVL4+trUQy6veMmhT7iuxPvhEE1IXYE9zsR8L9JVZSHMBqGm9tjtEl6fNrcS
    dbu84+6mNTj/stcNjDXY/z0lUMOtJLYEVkYLZGXoSiMRKkuDx2XH92ucSMc7MzCP
    Xn8j7mQJa4i1DWvIAi15qbM=
    -----END PRIVATE KEY-----
    
    1. 根据 pkcs8 格式的私钥生成公钥 - 发现和根据 pkcs1 格式生成的公钥内容相同
    openssl rsa -in access_token_pkcs8_private_key.pem -pubout -out access_token_pkcs8_public_key.pem 
    

    生成结果:

    -----BEGIN PUBLIC KEY-----
    MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAv39BQVAS4E5IxwJIMc5/
    +gc0pVkCqkR4evDUiIA56onrI/6oP6B88DuO+wCyz5LjK1thHOVTWbWjDbBMc41k
    GYxBRddeggY75B+x6Pcl7s7UavCk9pWFRIotOAtSoeDc21zmPm8id/CsvfXyUzb8
    9873BdJ0GnJ5QTSKAVY2XUZp83axxIbQpAm03PydZBujDjzSZkFfJKdkLKhzfqB1
    FReBatjtiP5PubYkzr9oxcxqsalnRl6TGjtER+VKqAeHxstzRb+eIQR1QIzqE82v
    kBxpYthfHpL3tbEg29+Zq37Mn0TBboxM6hbTfd6zDp+YVBDU5yK95BRFzn9ib/xs
    jQIDAQAB
    -----END PUBLIC KEY-----
    

    相关文章

      网友评论

          本文标题:OpenSSL(二)

          本文链接:https://www.haomeiwen.com/subject/iytydftx.html