mikrocontroller.net

Forum: PC Hard- und Software wie wird sha-1 verwendet


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: kona (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
hallo,
es wird zwar oft beschrieben wie man einen Text mit SHA-1 verschlüsselt, 
aber was macht man dann mit der verschlüsselten Nachricht xD
Wenn die ja so toll geschützt ist kann man die ja gar nicht nutzen...
( SHA-1 wurde ja bereits gehackt oder so.. aber das ist ja was anderes)
Also wie nutzt man normalerweise diesen verschlüsseleten wert ?
Danke :D

Autor: Jörg W. (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
5 lesenswert
nicht lesenswert
kona schrieb:
> SHA-1 verschlüsselt

Da wird nichts "verschlüsselt". Es ist lediglich ein "secure hash", eine 
Prüfsumme über ein Dokument. Die Annahme ist, dass es nicht möglich ist, 
gezielt ein zweites Dokument mit gleicher Prüfsumme zu bauen, d.h. wenn 
du ein Dokument mitsamt Prüfsumme bekommst und du auf deiner Seite die 
gleiche Prüfsumme dafür errechnest, kannst du mit an Sicherheit 
grenzender Wahrscheinlichkeit davon ausgehen, dass das Dokument "echt" 
ist.

Natürlich muss dabei sichergestellt sein, dass nicht etwas Dokument 
und Prüfsumme bei der Übertragung manipuliert worden sind (bspw. durch 
Übertragung auf einem völlig anderen Weg).

Autor: Jim M. (turboj)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kona schrieb:
> Also wie nutzt man normalerweise diesen verschlüsseleten wert

Das ist ein Hash, da wird nix verschlüsselt.

Ein Anwendungsfall wäre "Bit rot", wo ich am Ende einer langen 
Übertragung überprüfen will obs gut gegangen ist.

Dazu berechnet man sowohl an der Quelle als auch am Ziel 
SHA1(Dicker_Brocken_mit_vieeelen_GB) und muss nur die 160 Bits 
vergleichen.

Für Crypto Zwecke nutzt man die Eigenschaft das es extrem aufwändig ist 
zu einem gegeben Hash die entsprechenden Quelldaten zu berechnen. Neuere 
Fortschritte haben diesen Aufwand allerdings so stark abgesenkt dass man 
SHA1 durch SHA2 oder anderes ersetzen muss.

Autor: Vollbitverschluesseler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
SHA1 ist ein Pruefsummenalgorithmus, der einem beliebig langen Input 
einen kurzen Output zuordnet. Die Umkehrung ist sehr aufwaendig zu 
berechnen, gleiches gilt fuer die Bestimung anderen Inputs fuer 
denselben Outputwert.

Damit kann man also hingehen und zwei entfernte grosse Datensaetze 
effizient auf Gleichheit pruefen, indem man an jedem Standort die 
Pruefsumme berechnet und nur selbige uebertragen und vergleichen muss.

Autor: blubb117 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine Möglichkeit ist das Signieren von Firmwares. Damit kann der 
Bootloader prüfen ob die Firmware wirklich vom Hersteller stammt oder 
nicht. Auch Firmwareupdates können so geprüft werden.

Im einfachen Fall passiert das so, dass von der Firmware der Hashwert 
errechnet wird und dieser dann mit dem geheimen privaten Schlüssel vom 
Hersteller verschlüsselt wird (eigentlich signiert). Das Gerät errechnet 
sich von der Firmware dann auch den Hashwert und entschlüsselt es mit 
Schlüssel, den der Hersteller am Gerät hinterlegt. Wenn der 
entschlüsselte Hashwert mit dem Hashwert der Firmware übereinstimmt, 
dann stammt die Firmware vom Hersteller und wurde nicht verändert. Das 
ist nur eine ganz vereinfachte Darstellung und es gibt standardisierte 
Methoden, die von Experten geprüft wurde und auch sicher sind. Man 
sollte möglichste diese standardisierte Methoden verwenden.

Alte Bootloader für µC, SoC und FPGAs haben SHA-1 dafür verwendet und 
haben zwischenzeitlich auf die sicheren SHA-256 und SHA-512 gewechselt. 
Xilinx hat sogar auf das aktuellere SHA-3 gewechselt.

Autor: kona (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
achsoo xD danke
verstehe !

Autor: Axel S. (a-za-z0-9)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Vollbitverschluesseler schrieb:
> SHA1 ist ein Pruefsummenalgorithmus, der einem beliebig langen Input
> einen kurzen Output zuordnet. Die Umkehrung ist sehr aufwaendig zu
> berechnen

Mööp!

Ein Hash-Verfahren kann man nicht umkehren. Das ist nicht nur 
aufwendig, sondern im Nomralfall geradezu unmöglich.

Das ist auch sehr leicht einzusehen. Wenn der Output bspw. 160 Bit lang 
ist, dann kann man "nur" 2^160 verschiedene Outputs erhalten. Der 
Hash-Algorithmus erzeugt den aber aus einem (im Prinzip) beliebig langen 
Input. Sobald der Input länger als 160 Bits ist, wird es zwangsläufig 
mindestens zwei Inputs geben, die den gleichen Hash ergeben. Und es gibt 
keine Möglichkeit herauszufinden, welcher von denen es war.

Das nennt sich das "Schubfachprinzip"


kona schrieb:
> aber was macht man dann mit der verschlüsselten Nachricht

Du hast den Unterschied von Verschlüsselung und Hash nicht verstanden. 
Geh zurück auf Los.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.