diff options
Diffstat (limited to 'monitor/josef_experimental.py')
-rwxr-xr-x | monitor/josef_experimental.py | 71 |
1 files changed, 61 insertions, 10 deletions
diff --git a/monitor/josef_experimental.py b/monitor/josef_experimental.py index 979bae8..5df124b 100755 --- a/monitor/josef_experimental.py +++ b/monitor/josef_experimental.py @@ -4,6 +4,7 @@ import sys import os from josef_lib import * +from josef_lib2 import * # import leveldb import argparse import json @@ -126,17 +127,67 @@ def update_roots(log): open(tempname, 'w').write(data) mv_file(tempname, fn) +def parse_entry(e, idx, log): + # print the following fields, separated by sep + sep = ";" + + s = log["name"] + s += sep + str(idx) # index + s += sep + e["subject"] # Subject + s += sep + e["SAN"] # SAN + s += sep + e["issuer"] # issuer + s += sep + e["chain_length"] # path length + s += sep + e["sig_algorithm"] # Signature algothithm + s += sep + e["pubkey_algorithm"] # pubkey algorithm + s += sep + e["not_before"] # valid from + s += sep + e["not_after"] # valid to + s += sep + e["validation"] # EV? + s += sep + e["in_mozilla"] # chains to mozilla root? + + return s + +def check_api2(url): + print "\nTesting " + url + try: + print get_sth_v2(url) + except: + print "GET STH Failed..." if __name__ == '__main__': - # for log in [CTLOGS[4]]: - # url = log["url"] - # try: - # get_entries(url,8,8) - # except Exception, e: - # print "Failed to get entry from " + log["name"], e - log = CTLOGS[9] - entries = get_entries(log["url"],0,5000)["entries"] - print log["name"], len(entries) - # check_inclusion_by_submission(1,1,[CTLOGS[3]],[CTLOGS[3]]) + + + + + + + # Data gathering for Niklas + if False: + log = CTLOGS[0] + sth = get_sth(log["url"]) + # size = sth["tree_size"] + # for i in range(15,200): + start = 5757748 + end = 5757847 + print "Getting " + str(start) + " to " + str(end) + entries = get_entries(log["url"],start ,end)["entries"] + + # TODO set filename + filename = "ct_log_content.txt" + # TODO remove file if exists + if os.path.exists(filename): + os.remove(filename) + # TODO open file + with open(filename, 'a') as f: + # TODO write lines + for i in range(len(entries)): + entry = entries[i] + res = check_domain_extended(entry) + string = parse_entry(res, i + start, log) + f.write(string + "\n") + + + + + |