diff options
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/gski.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/scripts/gski.py b/scripts/gski.py new file mode 100644 index 00000000..f7e6dbf6 --- /dev/null +++ b/scripts/gski.py @@ -0,0 +1,22 @@ +# $Id$ + +import POW, POW.pkix, base64, getopt, sys + +opts, args = getopt.getopt(sys.argv[1:], "", ["pem", "der"]) + +use_pem = False + +for o, a in opts: + if o == "--pem": use_pem = True + if o == "--der": use_pem = False + +for file in args: + f = open(file, "r") + der = f.read() + f.close() + if use_pem: + der = POW.pemRead(POW.X509_CERTIFICATE, der).derWrite() + cert = POW.pkix.Certificate() + cert.fromString(der) + ski = base64.b64encode([x for x in cert.getExtensions() if x[0] == (2, 5, 29, 14)][0][2]).replace("+", "-").replace("/", "_") + print ski, file |