[feat] gen key
This commit is contained in:
parent
f902c144a5
commit
54db6c3065
3 changed files with 40 additions and 0 deletions
11
data/.gitignore
vendored
Normal file
11
data/.gitignore
vendored
Normal file
|
@ -0,0 +1,11 @@
|
|||
.DS_Store
|
||||
.idea
|
||||
*.log
|
||||
tmp/
|
||||
|
||||
*.py[cod]
|
||||
*.egg
|
||||
build
|
||||
htmlcov
|
||||
|
||||
*.pem
|
|
@ -1,4 +1,8 @@
|
|||
"Store App settings"
|
||||
from pathlib import Path
|
||||
|
||||
_ROOT_DIR = Path().parent.resolve()
|
||||
KEY_PATH = _ROOT_DIR / "data" / "key.pem"
|
||||
|
||||
USER_AGENT = "COSCUP-demo"
|
||||
AP_CONTENT_TYPE = "application/activity+json"
|
||||
|
|
25
demo/utils/key.py
Normal file
25
demo/utils/key.py
Normal file
|
@ -0,0 +1,25 @@
|
|||
#!/usr/bin/env python3
|
||||
"""process Key."""
|
||||
|
||||
import sys
|
||||
|
||||
from pathlib import Path
|
||||
from Crypto.PublicKey import RSA
|
||||
from demo.config import KEY_PATH
|
||||
|
||||
|
||||
def get_pubkey_as_pem(key_path: Path) -> str:
|
||||
"""Exporting public key from private key file."""
|
||||
text = key_path.read_text()
|
||||
return RSA.import_key(text).public_key().export_key("PEM").decode("utf-8")
|
||||
|
||||
|
||||
def gen_key():
|
||||
"""Generate key."""
|
||||
if KEY_PATH.exists():
|
||||
print("is existing!")
|
||||
sys.exit(2)
|
||||
else:
|
||||
k = RSA.generate(2048)
|
||||
privkey_pem = k.exportKey("PEM").decode("utf-8")
|
||||
KEY_PATH.write_text(privkey_pem)
|
Loading…
Reference in a new issue