Länge von Public/Private Keys (RSA)

Von: , Frage gestellt am Mo, 12. Okt 2009

Hallo an alle!

Ist die Länge der private und public Keys mit Verwendung von RSA berechenbar?

Also wenn ich ein x-beliebiges Schlüsselpaar erstelle mit RSA-1024 kann ich dann auf die Länge oder max. Länge der beiden Schlüssel schließen?

Und gibt es dafür eine allg. Berechnung RSA-512, RSA-2024, etc.?

Danke + Gruß PHANTOM

9 Antworten zu dieser Frage

  1. Antwort von nach einer Stunde 0 hilfreich
    Re: Länge von Public/Private Keys (RSA)

    Ist die Länge der private und public Keys mit Verwendung von
    RSA berechenbar?
    Die muss nicht errechnet werden, weil sie bekannt ist. Also wenn ich ein x-beliebiges Schlüsselpaar erstelle mit
    RSA-1024 kann ich dann auf die Länge oder max. Länge der
    beiden Schlüssel schließen?
    Logisch, die Schlüssellänge ist 1024 bit, wie der Name schon sagt. Und gibt es dafür eine allg. Berechnung RSA-512, RSA-2024,
    etc.?
    Die Schlüssellänge in bit entspricht einfach der Zahl, die hinten angehängt ist.

    • Antwort von nach 2 Stunden 0 hilfreich
      Re^2: Länge von Public/Private Keys (RSA)

      Ist die Länge der private und public Keys mit Verwendung von
      RSA berechenbar?
      Die muss nicht errechnet werden, weil sie bekannt ist.
      Das habe ich auch gedacht. Also wenn ich ein x-beliebiges Schlüsselpaar erstelle mit
      RSA-1024 kann ich dann auf die Länge oder max. Länge der
      beiden Schlüssel schließen?
      Logisch, die Schlüssellänge ist 1024 bit, wie der Name schon
      sagt.
      Ja, aber wie ist die Länge in Zeichen? Das soll in eine Datenbank-Spalte hinein. Was ist das Maximum bei 1024 Bit an Zeichen?

      Gruß PHANTOM

      • Antwort von nach 3 Stunden 0 hilfreich
        Re^3: Länge von Public/Private Keys (RSA)

        Ja, aber wie ist die Länge in Zeichen? Das soll in eine
        Datenbank-Spalte hinein. Was ist das Maximum bei 1024 Bit an
        Zeichen?
        Das kommt logischerweise drauf an, als was du das speicherst. Wenn du es als Bytearray oder als ähnlichen Binär-Datentyp speicherst, dann muss das Feld logischerweise 1024 bit lang sein.

        Wenn du es als String speichern willst, dann hängt's logischweise damit zusammen, wie du die Binärdaten kodieren willst. Wenn du's z.B. mit Base64 machst, dann ist der String um ein Drittel länger als die Rohdaten.

        • Antwort von nach 3 Stunden 0 hilfreich
          Berichtigung

          Berichtigung:
          Wie Malte richtig sagt, setzt sich der Schlüssel aus zwei Zahlen zusammen. Die eine Zahl ist in der Tat bei RSA 1024bit lang, die zweite Zahl ist maximal 1024bit lang, d.h der benötigte Platz für den Schlüssel ist dann doppelt so groß, wie von mir in meinen vorherigen Postings angegeben.

          • Antwort von nach 4 Stunden 0 hilfreich
            Re: Berichtigung

            Hmm, und wie lang als String ist der Schlüssel nun?
            Ein public key den ich erzeugt habe, hat 199 Zeichen:
            AAAAB3NzaC1yc2EAAAABIwAAAIEA5pAbIDBRC6uRvQKp0of0SQPCaof3U1DYApAebbieXECuI+rusFRY1gZP3FbMgJUdHDKUXyRPTy7inPBBI7ZksFj47RgPOoykpliaQPrtIrEL5Z7esiC/FyWDA3CnxisHE7eVuH6eYsmclYf2FrzGF1hhh1L4NLbJr/IPxsZD0XE

            Das ist von Intersse. Ich brauche nur den Maximalwert von öffentlichem und privaten Schlüssel in dieser Textform, dann kann ich die Datenbankspalte dementsprechend dimensionieren.

            Gruß PHANTOM

    • Antwort von nach 3 Stunden 0 hilfreich
      Re^2: Länge von Public/Private Keys (RSA)

      Ist die Länge der private und public Keys mit Verwendung von
      RSA berechenbar?
      Die muss nicht errechnet werden, weil sie bekannt ist.
      Achja? Also wenn ich ein x-beliebiges Schlüsselpaar erstelle mit
      RSA-1024 kann ich dann auf die Länge oder max. Länge der
      beiden Schlüssel schließen?
      Logisch, die Schlüssellänge ist 1024 bit, wie der Name schon
      sagt.
      Das ist so nicht richtig. N ist 1024 bit lang. N ist aber nicht der Schlüssel. Zur Erklärung ein Zitat aus der Wikipedia:

      "Der öffentliche Schlüssel (public key) ist ein Zahlenpaar (e,N) und der private Schlüssel (private key) ein Zahlenpaar (d,N), wobei N bei beiden Schlüsseln gleich ist. Man nennt N das RSA-Modul, e den Verschlüsselungsexponenten und d den Entschlüsselungsexponenten."

      Darüber hinaus kommt es dann noch auf die Kodierung der Schlüssel an - und auf den Verwendungszweck, in GnuPG-Schlüsseln bspw. sind ja noch weitere Informationen kodiert, u.U. sogar JPEG-Bilder. Und gibt es dafür eine allg. Berechnung RSA-512, RSA-2024, etc.?
      Die Schlüssellänge in bit entspricht einfach der Zahl, die
      hinten angehängt ist.
      So einfach ist das Ganze dann leider nicht :-)

      Gruß,

      Malte

      PS: Ich seh grad, das manche Autoren N auch den "Schlüssel" nennen, das ist aber eine praxisferne Bezeichnung und imho unsauber.

      • Antwort von nach 3 Stunden 0 hilfreich
        Re^3: Länge von Public/Private Keys (RSA)

        Das ist so nicht richtig. N ist 1024 bit lang. N
        ist aber nicht der Schlüssel.
        Da hast du recht. Dann ist der Schlüssel maximal 2*N groß, weil e bzw d maximal so groß wie N sein können.

    • Antwort von nach einem Tag 0 hilfreich
      Re^2: Länge von Public/Private Keys (RSA)

      Hallo,

      hm, nicht ganz das was ich wissen wollte. Ich interessiere mich für die Länge des Keys. In die Datenbank kriege ich ihn, durch eine text-Spalte nur ich wollte das auf ein varchar begrenzen. Aber wenn das nicht möglich ist, dann lass ich das groß das Feld.

      Gruß PHANTOM

Keine passende Antwort gefunden? Jetzt eigene Frage stellen!