CAS42

05/12/2012 23:12 irrenhaus#1
Hi,
ich möchte meinen kleinen Algorithmus vorstellen, der zur Datei-Verschlüsselung und Entschlüsselung dient.

Vorweg, es soll kein ersatz eines Verschlüsselungs-Algorithmus sein.
Ich möchte dashier nur Teilen, wenn es einem nicht gefällt ist es nicht meine Sache.

[+]Wie funktioniert er?
[+]Der Code
[+]Wieso CAS42?

[-]Wie Funktioniert er?
Ganz einfach:
Für die Encrypt-Funktion wird der erste Byte mit dem Modulo von i und 9 addiert und der letzte Byte mit dem gleichen Modulo Wert subtrahiert.
Anschließend werden die beiden Bytes getauscht und der nächste "Ring" beginnt. Bei der decryption ist das genau umgedreht. Dies wird 42 mal wiederholt.

Hier ist es nocheinmal Bildlich dargestellt (encryption):
[Only registered and activated users can see links. Click Here To Register...]


[-]Der Code
Hier ist der Code, den ich verwende:

Code:
void encrypt(ref byte[] data, int size)
        {
            for (int a = 0; a < 42; a++)
            {
                for (int i = 0; i < size/2; i++)
                {
                    int j = size - i - 1;
                    byte bFirst = data[i];
                    byte bLast = data[j];
                    bFirst = (byte)(bFirst + (i % 9));
                    bLast = (byte)(bLast - (a % 9));
                    data[i] = bLast;
                    data[j] = bFirst;
                }
            }
        }

        void decrypt(ref byte[] data, int size)
        {
            for (int a = 0; a < 42; a++)
            {
                for (int i = 0; i < size/2; i++)
                {
                    int j = size - i - 1;
                    byte bFirst = data[i];
                    byte bLast = data[j];
                    bFirst = (byte)(bFirst - (i % 9));
                    bLast = (byte)(bLast + (a % 9));
                    data[i] = bLast;
                    data[j] = bFirst;
                }
            }
        }
[-]Wieso CAS42?
CAS ist mein Name und 42 ist die Antwort auf alles.
Wer sich fragt wieso es ein Modulo 9 ist sollte Dantes Inferno Spielen, oder die Göttliche Komödie lesen.

Im Anhang ist ein Beispiel.
Wie man es bedient, sollte klar sein.
Danke an [Only registered and activated users can see links. Click Here To Register...] das er meine exe Datei getestet hat.

MfG
CAS!
05/12/2012 23:19 Che#2
Entweder bin ich extrem dumm oder das ganze ist extremst unsicher und nutzlos.
Führe doch bitte ein paar Beispiele an, die zeigen, dass es sicherer ist als die Ergebnisse bekannter Verschlüsselungsalgorithmen, denn das bezweifle ich stark.
05/12/2012 23:58 Status#3
Quote:
Originally Posted by Che​ View Post
Entweder bin ich extrem dumm oder das ganze ist extremst unsicher und nutzlos.
Führe doch bitte ein paar Beispiele an, die zeigen, dass es sicherer ist als die Ergebnisse bekannter Verschlüsselungsalgorithmen, denn das bezweifle ich stark.
Wenn es besser wäre als bekannte Systeme, würde er dafür Geld verlangen und wäre nicht bereit es kostenlos bereit zu stellen.
Was er hier macht ist ein kleine Programm inkl. Source bereit zu stellen, welches als kleine Spielerei oder als wichtiger Anhaltspunkt zum üben genutzt werden kann.
Ob du nun dumm bist, wage ich allerdings nicht zu entscheiden.
05/13/2012 00:18 .SkyneT.#4
Quote:
Originally Posted by °Status View Post
Wenn es besser wäre als bekannte Systeme, würde er dafür Geld verlangen und wäre nicht bereit es kostenlos bereit zu stellen.
Was er hier macht ist ein kleine Programm inkl. Source bereit zu stellen, welches als kleine Spielerei oder als wichtiger Anhaltspunkt zum üben genutzt werden kann.
Ob du nun dumm bist, wage ich allerdings nicht zu entscheiden.
Kostenlos gibt es aber auch Sachen wie [Only registered and activated users can see links. Click Here To Register...] ... :rolleyes:
05/13/2012 00:20 Status#5
Ja, lasset uns deswegen alles was schlechter ist als was anderes aus dem Internet verbannen, den Scheiß braucht ja eh' keiner....wait.
Das ist keine Begründung.
Der Release hat ne Daseinsberechtigung und wird dem ein oder anderem definitiv auch helfen, wenn man weiß wie.
Also hört auf ihn runterzumachen, weil ihr sowas evtl. nicht könnt. Einfach mal nett zu sein hat noch nie geschadet, vorallem nicht in diesem Forum.
05/13/2012 00:31 .SkyneT.#6
Quote:
Originally Posted by °Status View Post
Ja, lasset uns deswegen alles was schlechter ist als was anderes aus dem Internet verbannen, den Scheiß braucht ja eh' keiner....wait.
Das ist keine Begründung.
Der Release hat ne Daseinsberechtigung und wird dem ein oder anderem definitiv auch helfen, wenn man weiß wie.
Also hört auf ihn runterzumachen, weil ihr sowas evtl. nicht könnt. Einfach mal nett zu sein hat noch nie geschadet, vorallem nicht in diesem Forum.
Hm, leere Worte, da ich nichts davon behauptet/geschrieben habe.

Zur Verschlüsselung selber, versuche sogenannte
Einwegfunktionen zu verwenden, um dem ganzen
zumindest etwas Sicherheit zu geben.
05/13/2012 20:26 MrSm!th#7
Quote:
Originally Posted by °Status View Post
Wenn es besser wäre als bekannte Systeme, würde er dafür Geld verlangen und wäre nicht bereit es kostenlos bereit zu stellen.
Genau, kostenpflichtige Algorithmen gibts wie Sand am Meer, damit lässt sich gut Geld verdienen :rolleyes:

Quote:
Originally Posted by .SkyneT. View Post
Kostenlos gibt es aber auch Sachen wie [Only registered and activated users can see links. Click Here To Register...] ... :rolleyes:
Was aber kein Algorithmus sondern eine Ansammlung von öffentlichen Algorithmen ist. Logisch, dass die nicht kostenpflichtig ist.

Quote:
Originally Posted by °Status View Post
Ja, lasset uns deswegen alles was schlechter ist als was anderes aus dem Internet verbannen, den Scheiß braucht ja eh' keiner....wait.
Einen wirklichen Nutzen sehe ich nicht.
Soll ich auch nun meinen tollen XOR-Algorithmus veröffentlichen?
Quote:
Das ist keine Begründung.
Aber Pseudo-Copyright Brüche und fehlende Virus Total Links? :rolleyes:
Quote:
Der Release hat ne Daseinsberechtigung und wird dem ein oder anderem definitiv auch helfen, wenn man weiß wie.
Also hört auf ihn runterzumachen, weil ihr sowas evtl. nicht könnt. Einfach mal nett zu sein hat noch nie geschadet, vorallem nicht in diesem Forum.
Nicht können? Ich bitte dich, ein bisschen Bytes swappen kann jeder.
Die Berechtigung hat er, aber nicht hier. Ab damit in den Kleinere Releases Sammelthread.

Quote:
Originally Posted by .SkyneT. View Post
Hm, leere Worte, da ich nichts davon behauptet/geschrieben habe.

Zur Verschlüsselung selber, versuche sogenannte
Einwegfunktionen zu verwenden, um dem ganzen
zumindest etwas Sicherheit zu geben.
Warum sollte man Einwegfunktionen in einem synchronen Verschlüsselungsverfahren nutzen?

Quote:
int j = size - i - 1;
Spinne ich oder müsste das +1 sein?
Ich gehe mal davon aus, dass du ja in den 2 Hälften der Menge jeweils die Zahlen Mitte - i und Mitte + i tauschen willst.
Aber wenn du beim letzten Element bist, ist das eine die Mitte und das andere eben nicht das folgende, sondern das vorherige.
Du meinst wahrscheinlich size - (i - 1), was eben size - i + 1 wäre.
Das würde dann quasi das Element nach dem mittleren tauschen.