Skip to content
Snippets Groups Projects
Commit 4243690e authored by Peter Gerwinski's avatar Peter Gerwinski
Browse files

Screenshots und Beispiele 11.1.2024

parent e795222b
Branches
No related tags found
No related merge requests found
Diffie-Hellman-Schlüsselaustausch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Alice Bob
<------ gemeinsam: e --->
geheim: a geheim: b
A = e^a -------------->
<-------------------- B = e^b
B^a = e^(b·a) A^b = e^(a·b)
~~~~~~~ ~~~~~~~ <----- gemeinsamer geheimer Schlüssel
cassini/home/peter/bo/2023ws/dbs/20240111> sha256sum
Hallo. Dies ist ein Test.
565fd769eb3b7df2c4f6e65f4ed8cc977d93d6eebcea67b1de09cbad37911521 -
cassini/home/peter/bo/2023ws/dbs/20240111> sha256sum
Hallo. Dies ist ein Test.
565fd769eb3b7df2c4f6e65f4ed8cc977d93d6eebcea67b1de09cbad37911521 -
cassini/home/peter/bo/2023ws/dbs/20240111> sha256sum
Hallo. Dies ist ein test.
f6d865709ef59cb882ad71695a7af2a248040a8d44856bfc84a0821f71070af7 -
cassini/home/peter/bo/2023ws/dbs/20240111>
Message Authentication Code (MAC)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Nachricht: Dies ist ein Test.
Hash-Wert: 8a8c0ba357659d8ad10cc6c79048a07b440c053c50a1a83466440e5a22a319e0
mit geheimem Schlüssel verschlüsseln --> MAC
Empfänger kennt denselben geheimen Schlüssel --> entschlüsseln, mit Hash vergleichen
Diffie-Hellman-Schlüsselaustausch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Alice Bob
<------ gemeinsam: e --->
geheim: a geheim: b
A = e^a -------------->
<-------------------- B = e^b
B^a = e^(b·a) A^b = e^(a·b)
~~~~~~~ ~~~~~~~ <----- gemeinsamer geheimer Schlüssel
Man-In-The-Middle-Angriff
~~~~~~~~~~~~~~~~~~~~~~~~~
Alice Mallory Bob
<------ gemeinsam: e---------> <------------ gemeinsam ------->
geheim: a m geheim: b
A = e^a --------------------> A m ---------------------------->
<----------------------- M = e^m B <------------------------- B = e^b
M^a = e^(m·a) M^b = e^(m·b)
Gegenmaßnahme: Sorgfalt beim Schlüsselaustausch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Öffentlicher Schlüssel von Alice an Bob:
Alice Bob
A = e^a -------------->
Hash-Wert des Schlüssels ("Fingerprint") über separaten Kanal austauschen
z.B. Telefonat: Stimme erkennen -- Achtung: KI kann Stimme fälschen
z.B. Visitenkarte
#include <stdio.h>
#include <stdlib.h>
int main (void)
{
for (int i = 0; i < 10; i++)
printf ("%d ", rand ());
printf ("\n");
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main (void)
{
for (int i = 0; i < 10; i++)
printf ("%d ", rand () % 26);
printf ("\n");
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main (void)
{
srand (42);
for (int i = 0; i < 10; i++)
printf ("%d ", rand () % 26);
printf ("\n");
return 0;
}
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main (void)
{
srand (getpid ());
for (int i = 0; i < 10; i++)
printf ("%d ", rand () % 26);
printf ("\n");
return 0;
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment