Einfache Textverschlüsselung - ein Tupel von Zahlen mit Komplexitätskontrolle


Github


https://github.com/denisxab/SHISH

Ich wollte eine sehr einfache kryptografische Anwendung für Text erstellen, plötzlich wird es einen solchen Bedarf geben.

Der Punkt ist, dass die Verschlüsselung mit Zufallszahlen aus dem gegebenen Bit erfolgt , der zweite Rand- Wert die Anzahl der Schlüssel für jedes Zeichen so festlegt, dass es sich nicht wiederholt und es unmöglich ist, die Regelmäßigkeit des Textes zu finden.

Der Schlüssel selbst ist in .json gespeichert, so dass das Senden, Suchen und Bearbeiten einfach ist.

Wie funktioniert es


  1. Erstellen Sie einen Schlüssel.
  2. Teilen Sie den Schlüssel.
  3. Schreiben Sie den Text in das Fenster "Encode" und klicken Sie auf die Schaltfläche.
  4. Senden Sie Text aus dem Dekodierungsfenster.

Aufgrund der Besonderheit von tkinter antwortet es nicht mit list, sondern mit normalem str, und daher ist jeder Einzug im Decode-Fenster wichtig.

Schlüsselerstellung


bit = input() rand = input() l = {} a = list('','','','','') for x in a: l[x]=[] for y in range(rand): l[x].append(random.getrandbits(bit)) print(l) 

Text verschlüsseln


 slo = input() red =dict(   ) v = [] for x in slo: if x in red: v.append(random.choice(red[x])) print(v) 

Dekodieren


 list_code = input() red = dict(   ) v = {} for x in red.items(): for z in list_code: if z in x[1]: v[z]=x[0] zx = [] for x in list_code: if x in v: zx.append(v[x]) 

Source: https://habr.com/ru/post/de460727/


All Articles