Advertisement
miguelcl

SSL Decoder

Dec 16th, 2016
135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.86 KB | None | 0 0
  1.  
  2. import OpenSSL.crypto
  3. from OpenSSL.crypto import load_certificate_request, FILETYPE_PEM
  4.  
  5. csr = '''-----BEGIN NEW CERTIFICATE REQUEST-----
  6. MIIDPzCCAqgCAQAwZDELMAkGA1UEBhMCQ04xCzAJBgNVBAgTAmJqMQswCQYDVQQH
  7. EwJiajERMA8GA1UEChMIbXhjei5uZXQxETAPBgNVBAsTCG14Y3oubmV0MRUwEwYD
  8. VQQDEwx3d3cubXhjei5uZXQwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMQ7
  9. an4v6pHRusBA0prMWXMWJCXY1AO1H0X8pvZj96T5GWg++JPCQE9guPgGwlD02U0B
  10. NDoEABeD1fwyKZ+JV5UFiOeSjO5sWrzIupdMI7hf34UaPNxHo6r4bLYEykw/Rnmb
  11. GKnNcD4QlPkypE+mLR4p0bnHZhe3lOlNtgd6NpXbAgMBAAGgggGZMBoGCisGAQQB
  12. gjcNAgMxDBYKNS4yLjM3OTAuMjB7BgorBgEEAYI3AgEOMW0wazAOBgNVHQ8BAf8E
  13. BAMCBPAwRAYJKoZIhvcNAQkPBDcwNTAOBggqhkiG9w0DAgICAIAwDgYIKoZIhvcN
  14. AwQCAgCAMAcGBSsOAwIHMAoGCCqGSIb3DQMHMBMGA1UdJQQMMAoGCCsGAQUFBwMB
  15. MIH9BgorBgEEAYI3DQICMYHuMIHrAgEBHloATQBpAGMAcgBvAHMAbwBmAHQAIABS
  16. AFMAQQAgAFMAQwBoAGEAbgBuAGUAbAAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABp
  17. AGMAIABQAHIAbwB2AGkAZABlAHIDgYkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  18. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  19. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  20. AAAAAAAAAAAAAAAAAAAAADANBgkqhkiG9w0BAQUFAAOBgQBIKHVhHb9FZdVLV4VZ
  21. 9DK4aBSuYY//jlIpvsfMIdHXfAsuan7w7PH87asp1wdb6lD9snvLZix1UGK7VQg6
  22. wUFYNlMqJh1m7ITVvzhjdnx7EzCKkBXSxEom4mwbvSNvzqOKAWsDE0gvHQ9aCSby
  23. NFBQQMoW94LqrG/kuIQtjwVdZA==
  24. -----END NEW CERTIFICATE REQUEST-----'''
  25.  
  26. req = load_certificate_request(FILETYPE_PEM, csr)
  27. key = req.get_pubkey()
  28. key_type = 'RSA' if key.type() == OpenSSL.crypto.TYPE_RSA else 'DSA'
  29. subject = req.get_subject()
  30. components = dict(subject.get_components())
  31. print "Common name:", components['CN']
  32. print "Organisation:", components['O']
  33. print "Orgainistional unit", components['OU']
  34. print "City/locality:", components['L']
  35. print "State/province:", components['ST']
  36. print "Country:", components['C']
  37. print "Signature algorithm:", '?'
  38. print "Key algorithm:", key_type
  39. print "Key size:", key.bits()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement