Privacy Policy Cookie Policy Terms and Conditions Web of Trust - Wikipedia

Web of Trust

aus Wikipedia, der freien Enzyklopädie

Schematische Darstellung eines Web-of-Trust
vergrößern
Schematische Darstellung eines Web-of-Trust

Netz des Vertrauens bzw. Web of Trust (WOT) ist in der Kryptologie die Idee, die Echtheit von digitalen Schlüsseln durch ein Netz von gegenseitigen Bestätigungen (Signaturen) zu sichern. Es stellt eine dezentrale Alternative zum hierarchischen PKI-System dar.

Inhaltsverzeichnis

[Bearbeiten] Funktionsprinzip (stark vereinfacht)

Ich vertraue jedem, dem jemand vertraut, dem ich vertraue. Und umgekehrt: Jeder, der jemandem vertraut, der mir vertraut, vertraut auch mir.

In der Sprache der Objektorientierung: Jedes Objekt O, das eine Vertrauensassoziation zu anderen Objekten hat, vererbt diese Assoziation an alle Objekte, die eine ebensolche Assoziation zum Objekt O haben.

[Bearbeiten] Schlüsselaustausch-Problem

Zum Austausch verschlüsselter Informationen stehen symmetrische und asymmetrische Verschlüsselungsverfahren zur Verfügung. Beim Einsatz symmetrischer Verfahren müssen jeweils zwei Personen, die vertraulich miteinander kommunizieren wollen, einen geheimen Schlüssel vereinbaren, bei n Teilnehmern also insgesamt {n \choose 2} = \frac{n \cdot (n-1)}{2}. Das ist besonders bei großen Benutzergruppen (wie z. B. im Internet) unpraktikabel. Im Gegensatz dazu besteht der Schlüssel bei Public-Key-Verschlüsselungsverfahren aus einem öffentlichen Teil, den jeder kennen darf und einem privaten Teil, der geheim gehalten wird. Um einem anderen Teilnehmer eine verschlüsselte Nachricht schicken zu können, genügt es, dessen öffentlichen Schlüssel zu kennen. Damit n Teilnehmer einander verschlüsselte Nachrichten schicken können, müssen insgesamt nur n öffentliche Schlüssel existieren und ausgetauscht werden.

Dabei muss aber sichergestellt werden, dass dieser Austausch authentisch ist (also niemand einen eigenen öffentlichen Schlüssel für den eines anderen ausgeben kann).

[Bearbeiten] Lösungsmöglichkeiten

Die Lösung für dieses Problem besteht darin, die Echtheit eines öffentlichen Schlüssels von einer vertrauenswürdigen Instanz durch ein digitales Zertifikat bestätigen zu lassen. Bei Public-Key-Infrastrukturen ist dies eine Zertifizierungsstelle; im Web of Trust übernehmen alle Teilnehmer diese Funktion.

[Bearbeiten] Beispiel: Schlüsselaustausch im Web of Trust

In einem Web of Trust funktioniert das so:

  1. Alice erzeugt für sich ein Schlüsselpaar und signiert es. Außerdem schickt sie den öffentlichen Teil an einen Schlüsselserver (key server), damit andere Teilnehmer leichten Zugriff darauf haben.
  2. Bob möchte mit Alice verschlüsselt kommunizieren. Dazu besorgt er sich Alice' Schlüssel von einem Keyserver, muss aber noch sicherstellen, dass er wirklich den richtigen Schlüssel bekommen hat: ein Angreifer könnte sich für Alice ausgeben und einen von ihm erzeugten Schlüssel an den Keyserver schicken. Jeder, der meint, eine Nachricht nur für Alice zu verschlüsseln, würde sie in Wirklichkeit für den Angreifer verschlüsseln.
  3. Bob fragt Alice über einen sicheren Kanal (z. B. einen Telefonanruf oder bei einem persönlichen Treffen) nach den Details ihres öffentlichen Schlüssels. Dies sind die ID, die Länge und der Typ, das Erzeugungsdatum und insbesondere der Fingerprint des öffentlichen Schlüssels. All diese Daten vergleicht er mit denen des Schlüssels, den er vom Keyserver erhalten hat.
  4. Stimmen alle diese Daten und vor allem beide Fingerprints überein, signiert er den öffentlichen Schlüssel von Alice mit seinem privaten und schickt diese Signatur wieder an den Keyserver.
  5. Möchte jetzt Carl mit Alice verschlüsselt kommunizieren, besorgt er sich genau wie Bob Alice' öffentlichen Schlüssel vom Keyserver. Dann stellt er fest, dass Bob Alice' Schlüssel bereits überprüft hat. Wenn Carl Bobs Schlüssel schon kennt und Bob vertraut, dass er vor der Signatur fremder Schlüssel eine gründliche Überprüfung durchführt, dann muss er nicht erst Alice treffen und diese Prüfung wiederholen.

[Bearbeiten] Formalisierung

Die Schlüsselverwaltung in einem Web of Trust erfolgt mit Hilfe von Keyrings. Im Public Keyring eines Benutzers werden eigene und fremde öffentliche Schlüssel und zugehörige Zertifikate gespeichert, der Private Keyring enthält eigene private Schlüssel. Den öffentlichen Schlüsseln ordnet jeder Benutzer Vertrauen in dessen Besitzer zu („Owner Trust“). Daraus wird der Grad des Vertrauens in die Authentizität anderer Schlüssel („Key Legitimacy“) und in die Signaturen anderer Benutzer („Signatory Trust“) abgeleitet. Vertrauen in die Echtheit fremder Schlüssel wird entweder über Direct Trust (also die persönliche Überprüfung der Authentizität des Public Keys eines anderen Benutzers) oder über den Owner Trust der Signierer der fremden Schlüssel etabliert.

[Bearbeiten] Owner Trust

Den Wert für Owner Trust legt jeder Benutzer für alle Schlüssel einzeln in seinem Public Keyring selbst fest; zur Wahl stehen die Werte

  • „unknown“ für Benutzer, über die man keine weiteren Informationen hat
  • „not trusted“ für Benutzer, denen nicht vertraut wird, vor der Signierung anderer Schlüssel ist eine ordentliche Prüfung der Authentizität durchzuführen
  • „marginal“ für Benutzer, denen nicht voll vertraut wird
  • „complete“ für Benutzer, denen voll vertraut wird
  • „ultimate“ für Benutzer, deren Private Key sich im Private Keyring befindet

[Bearbeiten] Signatory Trust

Signiert Alice den Public Key von Bob und überträgt diese Signatur anschließend an einen Keyserver, so kann diese Signatur von Carl zur Beurteilung der Authentizität des öffentlichen Schlüssels von Bob benutzt werden. Dazu überprüft Carl, ob er den öffentlichen Schlüssel von Alice selbst signiert hat und er ihr als Owner Trust „marginal“ oder „complete“ zugeordnet hat. Ist das der Fall, so erhält Alice' Signatur genau diesen Wert. Hat Carl den Schlüssel von Bob selbst signiert, so erhält diese Signatur ebenfalls den Signatory Trust „complete“; in allen anderen Fällen wird der Signatur der Wert „not trusted“ zugeordnet. Im Gegensatz zum Owner Trust gehört der Signatory Trust also zu einer Signatur und nicht zu einer Person.

[Bearbeiten] Key Legitimacy

Das Vertrauen in die Authentizität eines öffentlichen Schlüssels wird durch den „Key-Legitimacy“-Wert ausgedrückt. Er wird aus dem Signatory Trust der signierenden Schlüssel wie folgt berechnet:

  • sei x die Anzahl von Signaturen, deren Signatory Trust „marginal“ ist
  • sei X die Anzahl von Signaturen mit einem Signatory Trust „marginal“, die erforderlich ist, damit ein Schlüssel als authentisch eingestuft wird
  • sei y die Anzahl von Signaturen, deren Signatory Trust „complete“ ist
  • sei Y die Anzahl von Signaturen mit einem Signatory Trust „complete“, die erforderlich ist, damit ein Schlüssel als authentisch eingestuft wird

Dann sei L = \frac{x}{X} + \frac{y}{Y}

Ist L = 0, so gilt der überprüfte Schlüssel als nicht authentisch. Bei 0 < L < 1 wird er als „teilweise authentisch“ angesehen und bei L \ge 1 als „vollkommen authentisch“. In Regelfall wählt man X = 2 und Y = 1, es sind also zwei Signaturen von teilweise vertrauenswürdigen Personen oder eine Signatur einer voll vertrauenswürdigen Person erforderlich, damit ein Schlüssel als authentisch eingestuft wird. Prinzipiell kann aber jeder die Werte für X und Y je nach persönlichem Paranoia-Grad frei wählen.

[Bearbeiten] Bewertung

Das Web of Trust ermöglicht seinen Teilnehmern einerseits die individuelle Kontrolle darüber, wen sie als vertrauenswürdig einstufen. Zudem gibt es kostenlose Software zur Realisierung des Konzepts des Web of Trust. Auf der anderen Seite erfordert es aber einen hohen Grad an Vorwissen vom Benutzer, es ist nicht juristisch bindend (wie z. B. eine Qualifizierte elektronische Signatur), und die Revokation von Zertifikaten ist nicht sofort allgemein bekannt (wie in einer PKI).

[Bearbeiten] Software

Die bekanntesten Umsetzungen der Idee des Web of Trust in der Praxis sind wohl das kommerzielle Programm Pretty Good Privacy und dessen Open-Source-Variante GNU Privacy Guard.

[Bearbeiten] Weblinks

Andere Sprachen
THIS WEB:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia 2006:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu