Announcement

Collapse
No announcement yet.

SSH-Verschlüsselungs-Protokoll...

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • SSH-Verschlüsselungs-Protokoll...

    Hat jemand einen Vorschlag zur Verwendung des SSH-Protokolls?
    Ich möchte eine Verbindung zu einem Linux Server herstellen über den SSH verwendet werden soll.

    Leider habe ich im "Delphi Encryption Compendium" von Torry nicht's darüber gefunden.

  • #2
    Hi

    Im DEC Part I kannst'e da auch nichts finden. DEC implemntiert nur die symmetrischen Verschlüsselungen und Hashfunktionen. Das ist schon die Hälte vom SSH. Was noch fehlt für SSH wäre der DEC part II und III. SSH benötigt noch die asymmeterischen Verschl. (Public Key) und das eigentliche Protokoll. Für Delphi/PASCAL wirst Du auch nichts finden, es sei den das M$ Crypto API.

    Gruß Hage

    Comment


    • #3
      Hallo!

      Ich habe hier nich einmal im Forum deshalb gesucht und festgestellt, dass jemand schon einmal ein ähnliches Problem hatte.
      Nun frage ich mich nach einer alternativen Methode. Das Passwort für das FTP-Protokoll kann einfach mit einem Netzwerk-Sniffer für Linux oder Windows ermittelt werden.
      Welche Möglichkeit gibt es denn noch, um eine Datei "sicherer" von Windows von einem Linux-Rechner herunterzuladen?
      Die Möglichkeit mit SSH scheint nur schwer lösbar zu sein.

      Danke soweit...

      Ti

      Comment


      • #4
        Hi

        Und ist auch nicht sicher. Die meisten SSH Clients unterstützen nur den durch die US-Behörden genehmigten Export-Standard. Das wäre eine effektive Sicherheit wie ein 56Bit Passwort. Bedenkt man noch das diese 56Bit mit dem DES Algo. benutzt werden, und DES eben keine volle 56Bit starke Passwörter nutzt und das es mittlerweile DES-Cracking Chips gibt die jedes Passwort innerhalb 1-2 Stunden knacken, dann dürfte wohl klar sein wie sicher SSH wirklich ist. Da helfen auch keine "gigantischen" Public Key Schlüsselgrößen von > 1024 Bit da das Sessionpasswort zur Verschlüsselung der eigentlichen Daten (mit DES) eben NUR 56Bit beträgt.

        Am sichersten ist immer eine eigene Implementation, vorrausgesetzt man weis was man tut. ALLE Fremdimplementation OHNE Quelltexte und nicht selber compiliert stellen ein Sicherheitsrisiko dar. Es ist ein leichtes z.B. eine RSA Verschlüssellung so zu implementieren das es dem Programmierer jederzeit gelingt einen beliebigen öffentlichen Schlüssel zu knacken und auf direktem Wege den privaten Schlüssel aus dem öffentlichen zu berechnen. Das Problem ist dabei aber das es für einen Anwender NICHT beweisbar ist ob ein solch generierte Schlüssel nun sicher oder unsicher ist (das ist ja auch der Sinn solch geschummelter Schlüsselpaare :-). Es sei denn man kennt die Sourcen, ist sich sicher das es auch die originalen Sourcen sind, und versteht auch was die Sourcen machen.

        Im grunde musst Du für Deine Aufgabe drei Protokollstufen betrachten:<br>
        <li>sicherer Schlüsselaustausch über einen unsicheren Kanal
        <li>sichere Authentifizierung der beteiligten Parteien
        <li>sicherer Datenaustausch mithilfe der ausgetauschten Schlüssel

        Der Datenaustausch ist recht simpel, indem die daten z.B. mit dem DEC verschlüsselt werden. Das Problem ist aber wie sage ich dem Empfänger mit welchem Passwort sie verschlüsselt wurde. Normalerweise würde man sich persönlich treffen, sich den Personalausweis zeigen lassen "Authentifizierung" und dann ein zufällig gewähltes Passwort vereinbaren "Schlüsselaustausch". Nun, mit Hilfe der Public Key Kryptographie "asymmetrische Verschl." kann man das auch digital, anonym erledigen. Du solltest mal alles über PGP in Erfahrung bringen. PGP macht im Grunde alles was ich oben beschieben habe.

        Gruß Hage

        Comment


        • #5
          Hallo Hagen!

          Was bedeutet eigentlich 56Bit genau?

          Mit dem FTP-Protokoll gibt es meines Wissens nach keine Möglichkeit
          eine Passwort verschlüsselt zu senden.
          Deshalb muss ich ein anderes Protokoll verwenden, dass die Passwörter
          verschlüsselt sendet, so zum Beispiel mit DEC.
          Ein solches Protokoll muss wie FTP unter Linux und Windows einsetzbar
          sein und Dateien übertragen können.
          Ich habe auch etwas nach PGP gesucht, aber nichts für mich brauchbares
          gefunden.

          Ein Komponeten für SSH zum Beispiel gibt es nicht, aber es müsste doch
          auch noch andere Protokolle geben, die man mithilfe eines Komponeten
          oder mit Quelltext verwenden könnte.

          Tschüss Ti

          Comment


          • #6
            Hi

            56Bit ist die binäre Größe/Länge der Schlüssel. D.h. ein Schlüssel umfasst 7Bytes Daten. Nun, vorausgesetzt JEDER mögliche Schlüssel ist gleich stark dann gibt es 2^56 mögliche Schlüssel.

            <pre>

            2^32 = 4.294.967.296
            2^56 = 72.057.594.037.927.936
            2^128 = 340.282.366.920.938.463.463.374.607.431.768.211.45 6

            </pre>

            Nun, beim DES sind aber nicht alle Schlüssel gleichstark, bzw. es gibt viele binär verschiedene Schlüssel die aber die gleiche Verschlüsselung erzeugen. Beides reduziert die Sicherheit bzw. den Schlüsselraum.
            Die obigen Zahlen zeigen auch sehr deutlich den riesigen Unterschied von 56Bit zur 128Bit Verschlüsselung.

            Zum protokoll:

            Stop mal, Du darft ein Krypto-Protokoll nicht mit einem Übertragungs-Protokoll verwechseln. Es ist im Grunde egal mit welchem Protokoll Du Deine Daten überträgst, ob FTP, Mail, FRITZ!Data, Euro ISDN, per Post etc. Das Krypto-Protokoll legt fest WIE die Handlungsabfolge ist und WIE die Daten kodiert bzw. interpretiert werden müssen. Die Produkte dieser Protokolle werden dann mit irgendeinem Übertragungs-Protokoll versendet. Der Sinn dieser Differenzierung ist einfach: Ein Übertragungsprotokoll soll sicherstellen das sich die Gegenstellen verstehen und die Daten korrekt übertragen werden. Ein Krypto-Protokoll soll sicherstellen das es sicher wird, eindeutig und nichtmanipulierbar. Das schwierige dabei ist aber das die eigentlichen Übertragungsprotokolle eben unsicher sind und das dies das Krypto-Protokoll berücksichtigen muß.
            z.B. kannst Du eine verschlüsselte Datei per E-Mail versenden. Das WEB ist unsicher, aber Deine E.Mail bleibt sicher da verschlüsselt. Nun musst Du aber auch das Passwort übertragen, über den gleichen unsicheren Kanal, und da fangen die Probleme an. Um einheitlich vorzugehen und es sicherer zu machen werden dann Standards definiert (PKCS#, PGP, IEEE, PEM, S/MIME) die insich Krypto-Protokolle sind.

            Gruß Hage

            Comment


            • #7
              Hallo!

              Ich habe jetzt eine Methode gefunden, um SSH zu verwenden, jedoch wird dabei eine weitere *.exe-Datei benötigt, die das Protokoll erst einmal ermöglicht. Das ist aber eigentlich nicht in meinem Sinne gewesen, denn ich versuche das nach Möglichkeit selbst zu programmieren. Man muss eigentlich nur noch ein Konsolenfenster auslesen.

              Aber jemand muss dieses Programm unter Windows programmiert haben, also gibt es auch einen Quelltext. Dies gilt ebenfalls bei dem SSH Clienten von Datafellows F-Secure.

              Mich würde auch interessieren, ob man ein SSH-Server für Windows NT oder Windows 98 programmieren kann, denn bei Linux ist SSH schon fast Standard und somit "vorprogrammiert", aber bei Windows wüsste ich noch nichts davon.

              Tschüss Ti

              Comment


              • #8
                Hallo!

                Gibt es eine Möglichkeit eines SSH-Servers für Windows NT?
                Es gibt zwar komerzielle Software, jedoch würde ich gerne wissen, wie man dieses Problem auch selbst mit Delphi lösen kann, das heißt wie dieses Protokoll direkt funktioniert.

                Tschüss..

                Comment

                Working...
                X