Newer
Older
#!/usr/bin/python3
from CellFrame.libCellFrame import *
from string import Template
import os
import sys
import MyAuthConf
# App name
appName = "MyAuth"
jsonCfg = MyAuthConf.getJsonString(appName, "CRITICAL")
except json.decoder.JSONDecodeError as jex:
sys.stderr.write("load_json_config JSONdecode :%s" % jex)
exit(-1)
# Prepare to parse input arguments
# Parse input arguments
# Extract command name
# Extract subcommand
if counter == 2:
action = arg
elif counter > 2:
action_arg[counter-2]=arg
# Process actions
# Action Help
def help():
print("CA managment script usage: ")
print("")
print("To get this help")
print("\t"+cmdName+" [help]")
print("Generate <Root nodes number> certificates (5 by default)" +
"for selected <Algorythm> (\"sig_dil\" by default)")
print("\t"+cmdName+" init_root_ca [<Root nodes number>] [<Algorythm>]")
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
if action == "help":
help()
# Action init root CAs
elif action == "init_root_ca":
# Default params
rootCaNumber = 5
rootCaAlgoName = "sig_dil"
# Set default algo Dilithium
rootCaAlgo = CryptoKeyType.DAP_ENC_KEY_TYPE_SIG_DILITHIUM
# Read action args
if len(action_arg) > 0:
rootCaNumber = action_arg[1]
if len(action_arg) > 1:
rootCaAlgoName = action_arg[2]
# Parse algo name
if rootCaAlgoName == "sig_bliss":
rootCaAlgo = CryptoKeyType.DAP_ENC_KEY_TYPE_SIG_BLISS
elif rootCaAlgoName == "sig_tesla":
rootCaAlgo = CryptoKeyType.DAP_ENC_KEY_TYPE_SIG_TESLA
elif rootCaAlgoName == "sig_picnic":
rootCaAlgo = CryptoKeyType.DAP_ENC_KEY_TYPE_SIG_PICNIC
elif rootCaAlgoName == "sig_dil":
rootCaAlgo = CryptoKeyType.DAP_ENC_KEY_TYPE_SIG_DILITHIUM
else:
# Process error case
print("(!) Wrong algo name \""+rootCaAlgoName+"\", possible names: sig_bliss, sig_tesla, sig_picnic, sig_dil")
help()
exit(-1)
# Create certs
print("Init root "+str(rootCaNumber)+" certificates with algo "+rootCaAlgoName)
for cur in range(int(rootCaNumber)):
certName = MyAuthConf.getNetworkName(appName,"_") +"_root_"+str(cur)
cert=Cert.generate( certName, rootCaAlgo,"fasdfsdf" )