Entwickler-Ecke
Algorithmen, Optimierung und Assembler - Rückgängig machen von or / and und xor verknüpfungen
uall@ogc - So 23.01.05 23:41
Titel: Rückgängig machen von or / and und xor verknüpfungen
so mein letztes problem für heute
ist es möglich folgendes rückgängig zu machen:
Delphi-Quelltext
1:
| a1^ := a1^ xor (decryparray[(j+i) and $F] or (j shl j) or j or $A5); |
al^ ist ein pointer auf nen byte
j kann von 0 bis 3 gehen
decryptarray ist ein festes array mit 16 bytes
mein problem ist schon:
wenn decryparray[(j+i) and $F] or (j shl j) or j -> 5 ist
und dann
egal ob $4 oder $5 or $A5 gemacht wird es kommt beides mal $A5 raus also kann man doch ne or verlnüpfung nicht rückgängig machen wenn man das ergebnis kenn und womit der wert verknüpfu wurde oder?
patrick - Mo 24.01.05 10:43
kannst du die ganze funktion posten?
ich würd meine variante gerne ausprobieren, ich hab zwar war, bin mir aber nicht ganz sicher ob das so funktioniert :oops: ...und bevor ich was falsches in die welt schreibe... :nixweiss:
MitschL - Mo 24.01.05 18:26
Ähm,
wenn mich mein Logikverständnis nicht trügt, müßte doch
decryparray[(j+i) and $F] = decryparray[j+i] sein - immerhin geht's nur um eine Position im Array mit 16 Zeichen, oder?
Ansonsten ist ein or nicht umkehrbar. ( Schau es dir dezimal an, das macht es IMHO sichtbar.)
gegrüßt!
uall@ogc - Mo 24.01.05 20:11
problem wurde anders gelöst da
(decryparray[(j+i) and $F] or (j shl j) or j or $A5);
maximal 64 werte haben konnte und die einfach immer wieder von vorne anfangen
decryparray 16 elemente mal j 4 elemente = 64 ;>
ScorpionKing - Mo 24.01.05 20:16
or und xor kann man doch nicht rückgänig machen, oder täusch ich mich da??? :?: :!:
AXMD - Mo 24.01.05 20:18
xor schon, or nicht
AXMD
uall@ogc - Mo 24.01.05 20:21
xor geht durch 2 malies xorn
and und or geht nicht
or:
11001110
00110001
________
11111111
and:
11011011
00111111
________
00011011
xor:
10101001
10110101
________
00011100
xor2:
10110101
________
10101001 <- wieder das 1.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!