Willkommen bei Entwickler-Forum.
Seite 1 von 2 1 2 LetzteLetzte
Ergebnis 1 bis 10 von 17
  1. #1
    Neuer Benutzer
    Registriert seit
    03.01.2013
    Beiträge
    7

    Standard lässt sich mein Algorithmus knacken?

    Hallo Forum.

    Ich hab mal einen eigenen Asymmetrischen Algorithmus erstellt. Ich befürchte aber, dass er nicht sicher ist.

    Die Funktionsweise:
    Der Schlüssel liegt in Form einer quadratischen Binärtabelle vor.
    Bsp. mit 24 bit Seitenlänge:
    0,1,1,1,0,0,1,1,1,0,0,0,0,1,0,1,0,0,1,0,1,1,0,0
    0,1,0,0,0,1,1,0,0,0,0,1,0,0,0,1,0,0,0,0,1,1,0,1
    0,0,0,1,0,0,1,1,0,1,1,0,0,0,0,0,0,1,1,0,0,1,0,1
    0,0,1,0,1,1,1,0,0,0,0,1,0,0,0,1,1,1,1,1,0,0,1,1 <- 4. Zeile
    0,0,0,0,1,0,1,0,1,0,0,1,0,0,1,1,1,1,0,1,1,1,0,0
    1,1,0,1,0,1,1,1,1,0,1,0,1,1,0,0,1,0,0,1,1,0,1,0
    0,1,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,1,1,0 <- 7. Zeile
    1,1,0,0,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,0,1,0,0,0
    0,0,0,0,0,1,0,1,0,0,0,1,1,0,0,0,1,0,1,0,0,0,1,0
    1,1,1,0,0,0,1,1,1,0,0,0,0,1,0,1,0,1,1,1,0,0,1,1
    0,1,1,0,0,0,1,0,0,1,1,0,1,1,0,0,0,0,0,0,1,1,0,1
    1,1,1,1,0,1,0,1,0,0,1,0,0,1,1,1,0,1,0,1,1,1,0,0
    0,0,1,0,1,0,0,1,0,0,1,0,0,0,1,0,0,1,1,1,0,1,0,0
    0,1,1,0,1,0,0,1,1,0,1,1,0,0,0,0,0,0,1,0,1,0,0,0
    1,0,0,0,0,0,1,1,1,1,0,0,1,0,0,1,1,0,0,1,0,1,1,0 <- 15. Zeile
    0,0,0,0,1,1,0,1,1,1,0,0,0,0,0,1,1,0,1,0,1,0,0,1
    1,0,1,1,1,0,0,0,0,1,0,1,0,1,0,1,0,1,1,1,0,0,0,1
    0,0,0,0,0,1,1,0,1,0,0,0,0,1,1,1,1,0,1,1,1,1,1,1
    1,1,1,0,1,1,1,1,0,0,1,1,1,1,1,0,1,0,1,0,0,1,1,0
    1,1,0,0,1,1,1,0,0,0,0,0,0,1,0,1,0,0,0,0,1,1,1,1
    0,0,0,1,1,0,1,0,0,1,1,1,1,1,0,1,0,1,0,0,0,1,1,1
    1,0,1,0,1,1,0,0,1,1,1,1,0,1,1,0,0,0,1,0,1,1,1,0
    1,0,0,1,1,1,0,1,0,0,0,1,1,1,0,0,1,0,0,1,0,0,1,0
    1,0,1,1,0,0,0,0,0,1,1,0,0,1,1,1,0,0,1,0,1,1,0,0

    Um nun eine 24 bit lange Nachricht zu verschlüsseln, schreibt man diese senkrecht links neben die Tabelle.
    Dann wählt man alle Zeilen aus, bei denen in der Nachricht eine eins Steht und verknüpft sie mit XOR.
    Wenn in der Nachricht z.B. nur das 4., 7. und 15. bit einsen sind und sonst Nullen, werden die 4., die 7. und die 15. Zeile der Tabelle XOR verknüpft.

    0,0,1,0,1,1,1,0,0,0,0,1,0,0,0,1,1,1,1,1,0,0,1,1
    0,1,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,1,1,0
    1,0,0,0,0,0,1,1,1,1,0,0,1,0,0,1,1,0,0,1,0,1,1,0
    --------------------------------------------
    1,1,1,1,1,1,1,0,1,0,0,0,0,1,1,0,0,1,1,1,0,0,1,1

    Kann man dieses Verfahren knacken?

    lg Onnie

  2. #2
    Stammgast
    Registriert seit
    23.04.2011
    Ort
    Zürich
    Beiträge
    364

    Standard

    Grundsätzlich ist jedes Verfahren zu knacken, es ist nur eine Frage des Aufwands.

    Du schreibst "Asymmetrischer Algorithmus", wo ist der zweite Schlüssel zum Entschlüsseln und wie ist das Verfahren?
    Was machst du wenn die Nachricht grüsser als 24 Bit gross ist?

    Ein allgemeiner Nachteil von asymmetrischen Verfahren ist, dass die Schlüssellänge recht lang sein muss, damit der Algorithmus als sicher gelten kann.
    Bei RSA sind es z.B. 1024 Bit.

    Ich bin zwar kein Experte in Sachen Kryptografie aber dein Ansatz funktioniert vermutlich nicht und ist nicht sicher.

    Gruss

  3. #3
    Forenheld
    Registriert seit
    26.02.2003
    Beiträge
    15.278

    Standard

    24-Bit lange Nachricht 3 Zeichen? Ungemein praktisches Verfahren. Und sicherlich ist das Verfahren schnell zu knacken, da du immer den Code zum ver-/entschlüsseln in irgendeiner Form bereitstellen musst
    Christian

  4. #4
    Neuer Benutzer
    Registriert seit
    03.01.2013
    Beiträge
    7

    Standard

    Die Tabelle kann beliebig erweitert werden. Einziger Nachteil ist die Größe und damit der Speicherbedarf. (bei 512 bit Seitenlänge sind das 32 kB)
    Entschlüsseln funktioniert genauso, nur mit einer anderen Tabelle. Die beiden Tabellen werden miteinander erstellt.

    Edit: Funktionstüchtig ist das Verfahren.
    Geändert von onnie (03.01.2013 um 20:10 Uhr)

  5. #5
    Stammgast
    Registriert seit
    26.02.2003
    Beiträge
    4.440

    Standard

    Bei längeren Nachrichten würdest du den Schlüssel immer wiederholen, also je n bit? Dann würden gleiche Nachrichtenmuster immer das selbe Verschlüsselungsmuster erzeugen und damit potentiell leicht knackbar sein. Ich vermute mal das mit genügend verschlüsseltem Material dein Entschlüsselungschlüssel leicht ermittelbar ist. Wenn dein Schlüssel immer länger (oder zumindest gleichlang) wie die Nachricht sein muss dann wäre es aus alleine aus diesem Grund potentiell sicher (wenn du den Schlüssel nur einmal verwendest). Das wären andere wesentlich einfacher handhabbare Verfahren aber auch. Dein Verfahren ist also eventuell sicher aber definitiv nicht praktibel.

    Wie zufällig ist eigentlich der Schlüssel? Zeilen dürfen sich sicher nicht wiederholen aber steckt da noch mehr Struktur drin? Dann wäre das auch wieder ein potentieller Angriffspunkt.

  6. #6
    Stammgast
    Registriert seit
    23.04.2011
    Ort
    Zürich
    Beiträge
    364

    Standard

    Kleiner Nachtrag, ich mache mal ein paar Vermutungen.

    Zum Entschlüsseln werden die Bits erneut mit den 24 Zeilen via XOR verknüpft und man bekommt die Zeilen welche in der orginalen Nachricht "1" waren.
    Das wäre dann "normales" CDMA Verfahren, ein typisch symetrischer Algorithmus.

    Wie hast du die 24 Zeilen des Schlüssels erzeugt? Wenn es zufällige Zahlen sind, funktioniert dein Verfahren nicht, da die verschlüsselte Nachricht auch mit einer anderen Kombination herauskommen könnte, (fiktives Beispiel: Zeile 5,9,20,23). Es funktioniert nur wenn wenn die 24 Codes streng orthogonal zueinander sind. Eine Liste aus orthogonalen Codes kann man z.B. mit der Walsh-Funktion erzeugen. Die Anzahl möglicher Codes ist dann aber erheblich kleiner als "2 hoch 24", es sind nur ein paar wenige welche sich jeder selbst erzeugen und durchprobieren kann.

    Gruss

  7. #7
    Neuer Benutzer
    Registriert seit
    03.01.2013
    Beiträge
    7

    Standard

    Zitat Zitat von Ralf Jansen Beitrag anzeigen
    Wie zufällig ist eigentlich der Schlüssel? Zeilen dürfen sich sicher nicht wiederholen aber steckt da noch mehr Struktur drin? Dann wäre das auch wieder ein potentieller Angriffspunkt.
    Die Zahlen sind komplett zufällig, unter der Voraussetzung, dass das ganze noch eindeutig lösbar ist.
    Wenn sich Zeilen wiederholen würden, wäre es nicht mehr eindeutig.

  8. #8
    Stammgast
    Registriert seit
    23.04.2011
    Ort
    Zürich
    Beiträge
    364

    Standard

    Die Tabelle mit dem Codes zu rekonstruieren ist doch fast schon trivial:

    Einfach diese Nachrichten
    1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
    0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
    0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
    0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
    usw.
    verschlüsseln und die verschlüsselten Nachrichten entsprechen der Code-Tabelle.

    Gruss

  9. #9
    Stammgast
    Registriert seit
    26.02.2003
    Beiträge
    4.440

    Standard

    verschlüsseln und die verschlüsselten Nachrichten entsprechen der Code-Tabelle.
    Die Codetabelle hattest du doch eh schon zum verschlüsseln benutzt. Die kennst du also bereits.

  10. #10
    Neuer Benutzer
    Registriert seit
    03.01.2013
    Beiträge
    7

    Standard

    Um es vollständig zu machen, hier die Entschlüsseltabelle:

    1,0,1,0,1,1,1,1,1,1,1,1,1,0,1,0,1,1,1,0,1,1,1,0
    0,0,1,1,0,1,1,0,1,0,1,0,1,1,1,0,1,1,0,1,0,0,1,1
    1,0,1,0,0,0,0,1,1,1,0,1,0,0,0,1,0,0,1,1,0,0,0,1
    0,1,1,1,0,0,1,1,0,1,1,0,1,1,0,1,0,0,1,1,1,0,0,0
    1,0,1,1,1,0,1,1,0,1,0,1,0,1,0,1,1,0,0,0,1,0,0,0
    0,0,0,0,0,0,0,1,1,1,1,1,0,1,1,1,1,1,0,1,0,0,1,1
    0,0,1,1,1,0,1,1,1,1,0,0,0,0,0,0,0,1,0,1,1,0,1,0
    1,1,0,0,0,1,0,1,0,1,1,1,0,0,0,1,0,0,0,1,1,1,1,1
    1,1,0,0,0,0,0,1,1,0,0,1,1,1,0,1,1,0,0,1,0,1,1,0
    1,0,1,1,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,1,0,1,0,0
    1,1,1,1,0,0,0,1,0,0,1,0,1,1,0,0,0,1,0,1,0,0,1,1
    1,1,0,1,0,1,0,1,1,0,0,1,0,0,0,0,0,1,1,0,1,0,0,0
    0,0,1,0,1,0,0,1,0,0,0,0,0,1,1,1,0,1,0,0,1,0,1,1
    0,0,1,0,0,1,0,0,0,0,0,1,0,1,0,1,0,1,0,1,0,0,1,0
    0,1,1,0,0,1,1,0,0,0,0,1,0,1,0,0,1,0,1,0,1,0,0,0
    0,1,1,1,1,0,0,0,1,1,1,0,1,0,0,0,1,1,0,1,0,1,0,0
    1,1,0,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,0,1,0,1,0,1
    0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,0,0,0,0,0,1,0,0
    0,1,0,1,1,0,1,1,0,1,1,0,0,1,0,0,0,1,1,1,0,1,1,0
    0,0,0,1,1,0,0,0,0,0,1,1,0,0,1,1,0,1,1,1,1,0,0,0
    0,1,0,1,0,1,1,1,0,0,0,1,1,0,1,0,1,0,1,0,1,1,1,0
    0,0,0,0,1,0,1,1,1,0,1,1,1,1,0,1,0,1,0,1,0,1,1,1
    1,0,1,0,0,1,0,1,0,0,1,0,1,0,1,0,0,1,0,0,1,1,0,0
    1,0,1,1,1,1,0,1,0,1,0,0,0,1,1,0,0,0,0,1,1,1,1,1

    lässt sich die irgendwie aus der anderen berechnen?

 

 
Seite 1 von 2 1 2 LetzteLetzte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •