Was würden Sie diesen Verschlüsselungsalgorithmus auf einer Skala von 1 bis 10 bewerten? Was kann ich tun, um es zu verbessern?

310
Elijah
from random import choice  word = raw_input('Word to encrypt: ')  def generateKey():  primes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97] key = '' for i in range(2): sel = choice(primes) key += str(sel) return key  def encrypt(text, key): alphabet = 'abcdefghijklmnopqrstuvwxyz' newWord = [] enc = '' for char in text: newWord.append(alphabet.index(char.lower())) for num in newWord: num += int(key) while num != 1: if num % 2 == 0: num = (num / 2) enc = enc + str(num) + ',' else: num = ((num * 3) + 1) enc = enc + str(num) + ',' return enc  print 'Plaintext:', word key = generateKey() print 'Key:', key encrypted = encrypt(word, key) print 'Ciphertext:', encrypted 

Ich habe gerade angefangen, etwas über Kryptographie zu lernen und wollte sehen, was ich tun kann. Ich habe diesen kleinen Verschlüsselungsalgorithmus basierend auf der Collatz-Vermutung geschrieben und weiß nicht, ob er gut ist oder nicht. Von 1-10 wie gut ist das? Und was könnte ich tun oder forschen, um es zu verbessern.

-3
Sie sollten angeben, was Sie mit diesem Algorithmus genau erreichen möchten, andernfalls ist diese Frage, vorzugsweise in Form einer Frage zu einem bestimmten Problem, nur "meinungsbasiert". Auch dies sollte in eine Community wie "Stack Overflow" oder "Software Engineering" verschoben werden. Albin vor 4 Jahren 1
Versuchen Sie es stattdessen mit Crypto.SE (oder Security.SE), aber ich bin mir nicht sicher, was ihre derzeitige Regel bei "Rate my crypto" ist. Sie könnten auch etwas Glück bei der Kryptographie Reddit haben. Das heißt, Ihre Schlüsselerzeugungsmethode allein ist leicht verdächtig. grawity vor 4 Jahren 0
Willkommen bei Super User! Ich möchte noch hinzufügen, worauf die anderen hingewiesen haben. Normalerweise möchten Sie keine eigenen Verschlüsselungsalgorithmen erstellen. Nur wenn Sie etwas darüber erfahren (und selbst dann sollten sie nirgendwo verwendet werden). Neue Verschlüsselungsalgorithmen durchlaufen komplexe Verifikations- und Korrekturprozesse. Ich sage das nur, obwohl Sie das vielleicht schon wissen. Verwenden Sie vorhandene Algorithmen, die sich als gut erwiesen haben. Aulis Ronkainen vor 4 Jahren 0
-10 um auf der falschen Seite zu fragen (wo es falsch ist) DavidPostill vor 4 Jahren 1
Ich wäre gespannt, wie Sie eine Nachricht dekodieren würden. Hast du auch eine Decodierungsfunktion geschrieben? agtoever vor 4 Jahren 0

0 Antworten auf die Frage