summaryrefslogtreecommitdiff
path: root/tools/josef_experimental.py
diff options
context:
space:
mode:
Diffstat (limited to 'tools/josef_experimental.py')
-rwxr-xr-xtools/josef_experimental.py37
1 files changed, 29 insertions, 8 deletions
diff --git a/tools/josef_experimental.py b/tools/josef_experimental.py
index 4cb16f8..e44dcd4 100755
--- a/tools/josef_experimental.py
+++ b/tools/josef_experimental.py
@@ -6,6 +6,8 @@ import base64
import urllib
import urllib2
import sys
+import subprocess
+
# from pympler.asizeof import asizeof
from certtools import *
from Crypto.Signature import PKCS1_v1_5
@@ -61,6 +63,23 @@ def get_proof_by_index(baseurl, index, tree_size):
print "ERROR:", e.read()
sys.exit(1)
+def my_get_cert_info(s):
+ p = subprocess.Popen(
+ ["openssl", "x509", "-text", "-noout",
+ "-certopt", "no_header,no_version,no_serial,no_signame,no_validity,no_aux", "-inform", "der"],
+ # ["openssl", "x509", "-noout", "-subject", "-issuer", "-inform", "der"],
+ stdin=subprocess.PIPE, stdout=subprocess.PIPE,
+ stderr=subprocess.PIPE)
+ parsed = p.communicate(s)
+ if parsed[1]:
+ print "ERROR:", parsed[1]
+ sys.exit(1)
+ result = {}
+ for line in parsed[0].split("\n"):
+ (key, sep, value) = line.partition("=")
+ if sep == "=":
+ result[key] = value
+ return result
base_urls = [
"https://plausible.ct.nordu.net/",
@@ -96,19 +115,21 @@ monitored_domains = [
"symantec.com",
]
-raw_entry = get_entries(base_urls[0], 1000, 1000)["entries"]
+raw_entry = get_entries(base_urls[0], 1000, 1005)["entries"]
orig_entries = []
for item in raw_entry:
- print item
+ # print item
+ orig_entry = extract_original_entry(item)
+ cert_info = my_get_cert_info(orig_entry[0][0])
- cert_info = get_cert_info(item)
- for md in monitored_domains:
- if md in cert_info["subject"]:
- print md + " certifed by " + cert_info["issuer"]
+ print cert_info
+ # for md in monitored_domains:
+ # if md in cert_info["subject"]:
+ # print md + " certifed by " + cert_info["issuer"]
- print "\n\n"
- print item
+ # print "\n\n"
+ # print item