Wenn ich es richtig verstanden habe, sorgt die Selfsig auch dafür, dass eine minimale Hashfunktion benutzt wird.
Ohne Selfsig könnte jemand eine Unterschrift fälschen, indem er als Hash zB MD5 verwendet.
Ist das korrekt?
Gibt es noch einen Grund, warum die Selfsig sicherheitsrelevant ist?
Ich bin nämlich gerade dabei, etwas zu bauen, wo die Identität des Unterschreibers der Hash des gesamten öffentlichen Schlüssels ist. Also nicht der Fingerprint und auch nicht der Keygrip, und schon gar nicht eine vom Schlüsselmacher willkürlich festgelegte UID. Im öffentlichen Schlüssel steht, wenn es OpenPGP ist, die minimale Hashfunktion drin. Und wer das ändert, hat eine andere Identität.
Eine Selbstsignatur dabeizutun, ist ganz praktisch, weil man dann schon einmal ausprobieren kann, ob man mit diesem Schlüssel überhaupt Unterschriften prüfen kann. Aber es würde, so denke ich jedenfalls bis jetzt, auch ohne gehen.
Selfsig bei gpg
Selfsig bei gpg
Harry, hol schon mal das Rasiermesser!
Re: Selfsig bei gpg
Der öffentliche Key enthält aber auch die Signaturen von jedem, der den Key signiert hat - der Inhalt (und damit der Hashwert) ändert sich somit jedes mal wenn jemand deinen Key signiert...Lohengrin hat geschrieben:28.11.2018 17:44:51Ich bin nämlich gerade dabei, etwas zu bauen, wo die Identität des Unterschreibers der Hash des gesamten öffentlichen Schlüssels ist.
Kennst du keybase.io? Damit lassen sich GPG-keys direkt mit den Identitäten auf verschiedensten Plattformen/Portalen (github, twitter, reddit etc) sowie Geräten oder Webseiten verknüpfen. Dadurch kann eine relativ enge trustchain bzw graph hergestellt werden mit der die eindeutige Verifizierung einer Identität einfacher wird bzw nicht nur an einem (möglicherweise gespooften) Faktor festgemacht werden muss.
Ist z.B. SPF/DKIM korrekt eingerichtet, die DNS-Zone der maildomain per DNSSEC validiert und die Maildomain sowie der GPG-Key bei keybase validiert, hat man eine vollständige trust-chain von der GPG-Signatur zur maildomain des Absenders.
Per API kann eine keybase-identität recht einfach durchsucht werden: https://keybase.io/docs/api/1.0/user_objects
Ich weiß nicht genau was du erreichen möchtest, aber evtl ist das ja hilfreich

Re: Selfsig bei gpg
Bei mir nicht. Die Signatur eines anderen ist nur sinnvoll, wenn der andere die Identität, die der Schlüsselmacher erfunden hat, bestätigt.r4pt0r hat geschrieben:28.11.2018 21:33:44Der öffentliche Key enthält aber auch die Signaturen von jedem, der den Key signiert hat - der Inhalt (und damit der Hashwert) ändert sich somit jedes mal wenn jemand deinen Key signiert...Lohengrin hat geschrieben:28.11.2018 17:44:51Ich bin nämlich gerade dabei, etwas zu bauen, wo die Identität des Unterschreibers der Hash des gesamten öffentlichen Schlüssels ist.
Bei mir hat der Schlüsselmacher die Identität, die durch den Schlüsselbau vom Himmel fällt. Die braucht niemand anderes zu bestätigen.
OpenPGP ist nur eine von vielen Möglichkeiten, einen öffentlichen Schlüssel zu bauen, der für meine Zwecke taugt. Die Selbstunterschrift, die UID, die Fremdunterschriften, ignoriere ich, ist so etwas wie Salz. Ich benutze OpenPGP, weil es funktioniert. Später können kürzere Formate, nämlich welche, wo die für mich überflüssigen Sachen gar nicht dabei sind, hinzukommen.
Der andere kann dem Schlüsselmacher einen Namen verpassen, und zwar so, wie es dem anderen gefällt. Der Schlüsselmacher braucht dem weder zustimmen, noch kann er sich dagegen wehren.
Interessant ist nur, wie ein Dritter die vergebenen Namen und den Schlüssel zusammenbringt. Und da kommt mir entgegen, dass Hash bunt ist. Das hat schon genau das richtige Format für Hashtable und B-Baum. Durch willkürlich vergebene Identitäten würde ich das kaputtmachen.
Wenn ich frage, ob das der Schlüssel von Anton ist, dann setze ich einen gemeinsamen Namensraum voraus. Dass das Streit gibt, ist klar.
Die Frage muss anders lauten, nämlich, ob das der Schlüssel von dem ist, den der, den ich als Berta kenne, Anton nennt, und nicht von dem, den der, den ich als Cäsar kenne, Anton nennt.
Wenn der, den ich bisher als Anton kannte, eine Sockenpuppe baut, und Dora es bemerkt, dann nennt Dora die Sockenpuppe auch Anton. Wenn ich Dora vertraue, dann interessiert mich nicht, wie sich die Sockenpuppe selber nennt.
Wenn ich wissen will, wie Dora wen nennt, dann frage ich Dora und nicht die von Dora Benannten.
Das, was bei OpenPGP eine Fremdsignatur ist, ist bei mir eine Benennung, die der Benannte zur Schau stellen will. Das kann er irgendwie online stellen. Er kann auch unterschreiben, dass er mit diesen Benennungen einverstanden ist. Aber das ist bei mir nicht Teil des Schlüssels.
Kenne ich nicht. Aber es scheint mir ein Problem zu lösen, das man sich einbrockt, wenn man willkürlich vergebene Identitäten zulässt.r4pt0r hat geschrieben:28.11.2018 21:33:44Kennst du keybase.io? Damit lassen sich GPG-keys direkt mit den Identitäten auf verschiedensten Plattformen/Portalen (github, twitter, reddit etc) sowie Geräten oder Webseiten verknüpfen.
Das hängt mit meinem Senftenberg zusammen, das ich nur gebaut habe, weil ich eigentlich auf etwas anderes aus bin, wo es auch um diese Art von Identitäten geht.r4pt0r hat geschrieben:28.11.2018 21:33:44Ich weiß nicht genau was du erreichen möchtest, aber evtl ist das ja hilfreich![]()
Harry, hol schon mal das Rasiermesser!
Re: Selfsig bei gpg
Ich hab das Gefühl, Du versuchst hier etwas sehr umständlich zu lösen. Vielleicht reicht Dir schon "cat /proc/sys/kernel/random/uuid"?
Und was willst Du eigentlich mit "dass Hash bunt ist" aussagen?
Und was willst Du eigentlich mit "dass Hash bunt ist" aussagen?
Re: Selfsig bei gpg
Das hüpfende Komma ist, dass ich von dem gemeinsamen willkürlich gefüllten Namensraum loskommen will. Das erzeugt zwangsläufig Namensstreit.eggy hat geschrieben:29.11.2018 00:43:43Ich hab das Gefühl, Du versuchst hier etwas sehr umständlich zu lösen.
Das Problem fängt schon bei IP-Nummern an, geht über DNS und sitzt im OpenPGP (die UID dort haben Emailadressen).
Als das alles erfunden wurde, hat sich niemand darüber Gedanken gemacht. Außerdem gab es damals weder Hash noch Unterschrift.
Ich will aus dem, was wir heute haben, etwas Neues bauen, das mit den alten Sachen bricht, so dass die damals unabsichtlich gemachten Fehler verschwunden sind.
Nein. Reicht mir nicht.eggy hat geschrieben:29.11.2018 00:43:43Vielleicht reicht Dir schon "cat /proc/sys/kernel/random/uuid"?
Jedes Datenstück hat bereits seine eindeutige Identität, nämlich seinen Hash.
Sollen andere festlegen, dass bei ihren Datenstücken die nullten 16 Bytes der Identifikator ist. Für mich ist der Hash vom Ganzen der Identifikator.
Die anderen können dann nur ihre Datenstücke benutzen. Aber ich packe sie alle, weil jedes Datenstück einen Hash hat.
Um in Datenbanken herumzuindexen müssen die willkürlich festgelegten Identitäten künstlich bunt gemacht werden. Als man noch keinen Hash hatte, hat man etwas genommen, was halbwegs bunt ist, musste aber, weil Doppelgänger böswillig erzeugt werden konnten, bei scheinbarer Gleichheit nochmal gründlich prüfen.eggy hat geschrieben:29.11.2018 00:43:43Und was willst Du eigentlich mit "dass Hash bunt ist" aussagen?
Das ist nicht mehr nötig. Hash ist schon bunt und kollisionsfrei.
Harry, hol schon mal das Rasiermesser!
Re: Selfsig bei gpg
Sorry, aber ich versteh Dich immer noch nicht. Was willst Du mit "bunt" den genau sagen?
Beschäftigte Dich mal mit den Begriffen "ordnungserhaltend" und "strukturerhaltend", gehe ich recht in der Annahme, dass Du mit "bunt" das Fehlen dieser Eigenschaften ausdrücken willst? Oder ist das nur ein Teil dessen, was Dein Begriff beschreiben soll?
Das andere Thema hatten wir ja schon beim letzten mal, es gibt nicht DIE Hashfunktion, es gibt unendlich viele. Diese haben unterschiedliche Eigenschaften, bzw Güteklassenkriterien. Grundsätzlich sind Hashfunktionen Abbildungen, für die bestimmte Annahmen getroffen werden, um bestimmte Ziele zu erreichen. Kollisionsresistenz ist nur eins davon. Resistenz, nicht Freiheit! Für Freiheit bräuchtest Du die Eigenschaft der Injektivität. Nur damit kannst Du dann nicht mehr unendlich viele Objekte auf einen begrenzten Schlüsselraum abbilden. Daher kommt es bei fast allen* Hashfunktionen zumindest theoretisch zwangsläufig zu Kollisionen. Und wie gesagt, eine Hashfunktion die alles auf die 1 und 0 abbildet, ist ebenfalls ein Hash, nur halt keine, die für Deinen Anwendungsfall taugt

Versuche das mal in Deinen Thesen zu berücksichtigen, dann klingt das was Du schreibst gleich viel weniger spinnig

*: alle Hashfunktionen:= "alle Hashfunktionen, außer den perfekten Hashfunktionen"
Re: Selfsig bei gpg
Verschiedene Identitäten unterscheiden sich recht schnell. Es reicht aus, nur wenige Bits zu betrachten, um zwei verschiedene als verschieden zu erkennen. Wenn man eine Milliarde Objekte hat, dann ist schon bei fünf bis sechs Base64-Zeichen alles klar.eggy hat geschrieben:29.11.2018 09:59:02Sorry, aber ich versteh Dich immer noch nicht. Was willst Du mit "bunt" den genau sagen?
Das Suchen und Finden geht sehr schnell, ohne das man die Objekte vorher besonders präparieren müsste.
Das wäre nur interessant, wenn die Ordnung vorher eine Rolle spielt. Bei mir sind das nur Identifikatoren. Ob die 1,2,3 oder A,B,C oder Hund,Katze,Maus heißen, ist egal.eggy hat geschrieben:29.11.2018 09:59:02Beschäftigte Dich mal mit den Begriffen "ordnungserhaltend" und "strukturerhaltend",
Wichtig ist nur, dass ich sie möglichst schnell getrennt bekomme, also ohne viele Bytes mir anschauen zu müssen.
Ich brauche eine Hashfunktion, die praktisch kollisionsfrei ist und wo die Hash zweier Datensätze möglichst schnell verschieden sind (ich nenne das bunt). SHA1 oder SHA256 tut es. Wenn das mal geknackt ist, muss man eine andere nehmen.eggy hat geschrieben:29.11.2018 09:59:02Das andere Thema hatten wir ja schon beim letzten mal, es gibt nicht DIE Hashfunktion, es gibt unendlich viele.
Hashfunktionen sind mit diesem Ziel entwickelt worden. Deswegen habe ich von Hashfunktion gesprochen. Mag ja sein, dass woanders der Begriff Hashfunktion viel allgemeiner gefasst wird. Aber das ist ein Problem, das man immer hat, nämlich die Gratwanderung zwischen zuviel und zuwenig Präzision. Eine Entfernung vom Grat, egal in welche der beiden Richtungen, macht das Ganze unverständlicher.
Beim Geben von Gefühlen wird mir immer ganz schwummerig. Ich habe nämlich die Erfahrung gemacht, dass die, die sich besonders um das Geben von Gefühlen kümmern, damit verschleiern, dass gar kein Inhalt dahinter ist.eggy hat geschrieben:29.11.2018 09:59:02nur wenn Du mit Deiner Veröffentlichung mal etwas bzw jemanden erreichen willst, solltest Du versuchen, der Zielgruppe das Gefühl zu geben, dass Du Dich eingehend mit der Materie beschäftigt und die Vorleistungen anderer auch wirklich verstanden hast.
Was eine Vorleistung ist, ist schon wieder sehr interpretierbar. Wenn ich bei Sachen, die nur wenig mit dem Thema zu tun haben, exzessiv darlege, dass ich mich damit beschäftigt habe, dann wird das Werk 50 Seiten lang, hat acht Seiten Literaturverzeichnis, und gar keinen Inhalt mehr.
Nein! Das sehe ich völlig anders.eggy hat geschrieben:29.11.2018 09:59:02Letztendlich spielt auch es keine Rolle, ob Du direkt vom Fach bist, aber Du musst zeigen, dass Du, von dem was Du da tust, Ahnung hast. Und das überzeugend rüberzubringen, schaffst Du am ehesten durch die korrekte Anwendung der Fachtermini. Ist leider so.
Überzeugend ist, wenn etwas Funktionierendes dabei herauskommt. Nur das zählt für mich.
Harry, hol schon mal das Rasiermesser!
Re: Selfsig bei gpg
Zurück zum Thema!
Ich habe hier einen neuen Thread gestartet, weil ich das mit der Eigenunterschrift verstehen will.
Ich habe gelesen, dass ein öffentlicher OpenPGP-Schlüssel ohne Eigenunterschrift leicht fälschbar sei. Ich verstehe aber noch nicht warum.
Wenn die Identität des Besitzers des geheimen Schlüssels die UID ist, dann ist es mir klar.
Wenn die Festlegung der erlaubten Hashcodes mit der Eigenunterschrift abgesichert wird, dann ist mir auch klar warum.
Meine Frage ist, ob ich noch etwas übersehen habe.
Ich will statt der UID von OpenPGP den SHA-256 des öffentlichen OpenPGP-Schlüssels als Identität des Besitzers des geheimen Schlüssels nehmen. Gibt es dann noch einen sicherheitsrelevanten Grund für die Eigenunterschrift?
Ich habe hier einen neuen Thread gestartet, weil ich das mit der Eigenunterschrift verstehen will.
Ich habe gelesen, dass ein öffentlicher OpenPGP-Schlüssel ohne Eigenunterschrift leicht fälschbar sei. Ich verstehe aber noch nicht warum.
Wenn die Identität des Besitzers des geheimen Schlüssels die UID ist, dann ist es mir klar.
Wenn die Festlegung der erlaubten Hashcodes mit der Eigenunterschrift abgesichert wird, dann ist mir auch klar warum.
Meine Frage ist, ob ich noch etwas übersehen habe.
Ich will statt der UID von OpenPGP den SHA-256 des öffentlichen OpenPGP-Schlüssels als Identität des Besitzers des geheimen Schlüssels nehmen. Gibt es dann noch einen sicherheitsrelevanten Grund für die Eigenunterschrift?
Harry, hol schon mal das Rasiermesser!