1
Ich habe Python Erfahrung begrenzt, obwohl aufgefordert worden, es zu verwenden, um den RC4-Algorithmus zu implementieren. Ich habe den folgenden Code, aber richtig scheintPython RC4-Implementierungsfehler 'Bereich' Objekt unterstützt keine Item-Zuweisung
'range' object does not support item assignment
für die Zeile den Fehler erzeugt:
S[i], S[j] = S[j], S[i] # swap
Hier ist mein Code:
def KSA(key):
keylength = len(key)
S = range(256)
j = 0
for i in S:
j = (j + S[i] + key[i % keylength]) % 256
S[i], S[j] = S[j], S[i] # swap
return S
Beachten Sie, dass [RC4 ist nicht sicher] (https://en.wikipedia.org/wiki/RC4#Security). Alternativen ohne bekannte Schwächen sind [Salsa20] (https://cr.yp.to/salsa20.html) und [die eSTREAM-Empfehlungen] (https://en.wikipedia.org/wiki/ESTREAM). – twotwotwo