auch Umformatiert

This commit is contained in:
Wolfgang Nowak 2023-11-21 23:38:43 +01:00
parent 833db410ad
commit 02b0734f0e

35
notizen/n.py Normal file → Executable file
View file

@ -1,4 +1,5 @@
#!/usr/bin/python3 #!/usr/bin/python3
import hashlib, os import hashlib, os
## funktionen ## funktionen
@ -10,18 +11,26 @@ def a_str(inp, leng):
elif len(inp) > leng: elif len(inp) > leng:
inp = inp[:leng] inp = inp[:leng]
return inp return inp
def sha512(passwort): def sha512(passwort):
sha512 = hashlib.sha512() sha512 = hashlib.sha512()
sha512.update(passwort.encode()) sha512.update(passwort.encode())
return sha512.hexdigest() return sha512.hexdigest()
def crypt(text, key_hash): def crypt(text, key_hash):
key_hash = a_str(key_hash, len(text)) key_hash = a_str(key_hash, len(text))
crypted_text = "" crypted_text = ""
for i in range(len(text)): for i in range(len(text)):
crypted_text += chr(ord(text[i]) ^ ord(key_hash[i])) crypted_text += chr(ord(text[i]) ^ ord(key_hash[i]))
return crypted_text return crypted_text
def o(note, mode): def o(note, mode):
return open(f"{n_path}{note}.txt", mode, encoding="utf-8") return open(f"{n_path}{note}.txt", mode, encoding="utf-8")
def nlist(): def nlist():
string = "" string = ""
notizen = [] notizen = []
@ -38,6 +47,7 @@ def nlist():
datei.close() datei.close()
return [string, notizen] return [string, notizen]
def neditadd(notiz=str, text=str): def neditadd(notiz=str, text=str):
if not notiz + ".txt" in os.listdir(n_path): if not notiz + ".txt" in os.listdir(n_path):
if a_note + ".txt" in os.listdir(n_path): if a_note + ".txt" in os.listdir(n_path):
@ -51,6 +61,7 @@ def neditadd(notiz=str,text=str):
datei.close() datei.close()
return back return back
## variablen ## variablen
passwort = input("Passwort:") passwort = input("Passwort:")
passwort = sha512(passwort) passwort = sha512(passwort)
@ -65,7 +76,8 @@ if not os.path.exists(f"{n_path}n{tzeichen}"):
n_path += "n" + tzeichen n_path += "n" + tzeichen
## start ## start
print(""" Willkommen zu n print(
""" Willkommen zu n
ACHTUNG: Falls du dein Passwort falsch eingibst überprüfe ACHTUNG: Falls du dein Passwort falsch eingibst überprüfe
erst ob deine Notizen richtig angezeigt werden sonnst falls erst ob deine Notizen richtig angezeigt werden sonnst falls
@ -75,14 +87,16 @@ ACHTUNG: Es kann seine das einige Zeichen wie Umlaute falsch
angezeigt werden können. angezeigt werden können.
Was möchtest du machen?: add, edit, read, list, help, exit. Was möchtest du machen?: add, edit, read, list, help, exit.
""") """
)
print(nlist()[0]) print(nlist()[0])
## programmschleife ## programmschleife
while 1: while 1:
action = input(">") action = input(">")
if action == "help": # help if action == "help": # help
print("""Hilfe: print(
"""Hilfe:
edit = Bearbeite eine Notiz. edit = Bearbeite eine Notiz.
read = Zeige eine Notiz an. read = Zeige eine Notiz an.
@ -93,9 +107,11 @@ secure = Wie funktioniert die verschlüsselung.
debug = Zeigt Debug Infos. debug = Zeigt Debug Infos.
exit = Beenden. exit = Beenden.
Bei Fehlern Bitte an Megamichi melden.""") Bei Fehlern Bitte an Megamichi melden."""
)
if action == "secure": # secure if action == "secure": # secure
print("""Zur Sicherheit: print(
"""Zur Sicherheit:
Es wir ein SHA-512 Hash aus dein Passwort erstellt. Es wir ein SHA-512 Hash aus dein Passwort erstellt.
Und mit deinen Notizen und den auf die richtige Länge Und mit deinen Notizen und den auf die richtige Länge
angepassten Hash wir ein One-Time-Pad angewendet. angepassten Hash wir ein One-Time-Pad angewendet.
@ -105,7 +121,8 @@ erst ob deine Notizen richtig angezeigt werden sonst falls
du eine neue Notiz erstellst wird sie anderst verschlüsselt. du eine neue Notiz erstellst wird sie anderst verschlüsselt.
ACHTUNG: Es kann seine Das einige Zeichen wie Umlaute falsch ACHTUNG: Es kann seine Das einige Zeichen wie Umlaute falsch
angezeigt werden können.""") angezeigt werden können."""
)
if action == "edit": # edit if action == "edit": # edit
a_note = input("Notiz Titel:") a_note = input("Notiz Titel:")
text = input("bitte neuen Text einfügen:") text = input("bitte neuen Text einfügen:")
@ -135,9 +152,11 @@ ACHTUNG: Es kann seine Das einige Zeichen wie Umlaute falsch
if action == "list": # list if action == "list": # list
print(nlist()[0]) print(nlist()[0])
if action == "debug": # debug if action == "debug": # debug
print(f"""Debug Informationen: print(
f"""Debug Informationen:
n_path={n_path} n_path={n_path}
pas_hash={passwort}""") pas_hash={passwort}"""
)
if action == "exit": # exit if action == "exit": # exit
print("Bye") print("Bye")
exit() exit()