Hackerboard WikiHaboBlog

[HaBo]

 
Cryptography & Encryption Ver- und Entschlüsselung, Algorithmen, Kryptoanalyse ? Kryptographie in der Praxis. Blowfish, Triple-DES, XOR u.a.

asymmetrisches Kryptosystem public key berechnen

Diskussion: asymmetrisches Kryptosystem public key berechnen im Forum Cryptography & Encryption, in der Kategorie Security Area; hey, ich habe eine frage: Ist es möglich mit hilfe eines privaten Keys den öffentlichen zu berechnen? mfg KaiserKronos...

Antwort
Alt 11.03.10, 14:17   #1 (permalink)
 
Registriert seit: 28.08.09
KaiserKronos Leistung: Facit NTK
Likes: 0
Standard asymmetrisches Kryptosystem public key berechnen


hey,

ich habe eine frage:

Ist es möglich mit hilfe eines privaten Keys den öffentlichen zu berechnen?

mfg KaiserKronos

KaiserKronos ist offline   Mit Zitat antworten
Alt 11.03.10, 17:09   #2 (permalink)
 
Registriert seit: 22.03.09
Mr5mith Leistung: Facit NTK
Likes: 0
Standard

Ich hatte gerade mal etwas Luft und habe nach 1 Sekunde googeln das hier gefunden...

Vielleicht hilft das.
Mr5mith ist offline   Mit Zitat antworten
   
HaBOT
 

Werbung ist gerade online    
Alt 11.03.10, 18:21   #3 (permalink)
 
Registriert seit: 20.07.06
Darkslide Leistung: Facit NTK
Likes: 18
Standard

Nein ist es nicht, da die Schlüssel unabhängig zueinander sind, soll heißen Kpr und Kpub werden nicht berechnet, sondern frei gewählt. Sie stehen also in keinem mathematischen Zusammenhang.
Darkslide ist offline   Mit Zitat antworten
Alt 11.03.10, 18:51   #4 (permalink)
Senior Member
 
Benutzerbild von odigo
 
Registriert seit: 25.12.04
odigo Leistung: 8086odigo Leistung: 8086
odigo eine Nachricht über ICQ schicken
Likes: 50
Standard

Zitat:
Zitat von Darkslide Beitrag anzeigen
Sie stehen also in keinem mathematischen Zusammenhang.
Dann ist es auch kein Schlüsselpaar mit Public- und Private-Key. Entweder du liest dich erstmal in die Basics von Verschlüsselung ein oder du verrätst ein paar mehr Details.
odigo ist gerade online   Mit Zitat antworten
Alt 11.03.10, 19:08   #5 (permalink)
Themenstarter
 
Registriert seit: 28.08.09
KaiserKronos Leistung: Facit NTK
Likes: 0
Standard

okey, das alles bringt mich nicht so weiter, ist es nun möglich, eher gesagt ist es sehr schnell möglich oder brauch man die gleiche zeit wie vom pub zum priv?
KaiserKronos ist offline   Mit Zitat antworten
Alt 11.03.10, 19:44   #6 (permalink)
 
Registriert seit: 09.02.06
goflo Leistung: Facit NTK
Likes: 0
Standard

Klar sollte das möglich sein. Es ist sogar NUR möglich wenn man den privaten Key kennt (zumindest bei RSA). Zuerst wird der private Schlüssel berechnet und anschließend der öffentliche (Einwegfunktion).
Wie? --> Der Wikipedia Artikel bietet einen guten Einstieg!
goflo ist offline   Mit Zitat antworten
Alt 11.03.10, 20:39   #7 (permalink)
 
Registriert seit: 22.03.09
Mr5mith Leistung: Facit NTK
Likes: 0
Standard

Zitat:
Zitat von goflo Beitrag anzeigen
Der Wikipedia Artikel bietet einen guten Einstieg!
Na ja... ok.


Zitat:
Erzeugung des öffentlichen und privaten Schlüssels [Bearbeiten]




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 den RSA-Modul, e den Verschlüsselungsexponenten und d den Entschlüsselungsexponenten. Diese Zahlen werden durch das folgende Verfahren erzeugt:
  1. Wähle zufällig und stochastisch unabhängig zwei Primzahlen . In der Praxis rät man dazu jeweils eine Zahl und führt mit dieser anschließend einen Primzahltest durch.
Ja... und dann machst du was? Bitte erklär mir das!

Hat irgendwer das hier gelesen? Das ist ja genau DAS Prinzip, wobei es bei der asymetrischen Verschlüsselung geht. Wenn das jmd kann, sollte dieser jmd bitte keine Scheu haben, mich einzuweihen...
Mr5mith ist offline   Mit Zitat antworten
Alt 11.03.10, 21:11   #8 (permalink)
Member of Honour
 
Benutzerbild von xrayn
 
Registriert seit: 05.03.08
xrayn Leistung: Pentium IIIxrayn Leistung: Pentium IIIxrayn Leistung: Pentium IIIxrayn Leistung: Pentium IIIxrayn Leistung: Pentium III
Likes: 185
Standard

D(E(M)) = E(D(M)) = m

Also waehlt man sich en Msg m verschluesselt diese mit dem private key und hat dann einen gewaltigen Rechenaufwand um die public key zu bestimmen, voraussetzung ist natuerlich, dass man das n kennt, ansonsten kann man diese Technik nicht anwenden. Dann ist es auch nicht moeglich den public key zu berechnen. Aber wenn du den private key hast, brauchst den oeffentlichen garnicht zu berechnen schließlich ist er ja oeffentlich
xrayn ist offline   Mit Zitat antworten
Alt 11.03.10, 21:25   #9 (permalink)
 
Registriert seit: 22.03.09
Mr5mith Leistung: Facit NTK
Likes: 0
Standard

Zitat:
Aber wenn du den private key hast, brauchst den oeffentlichen garnicht zu berechnen schließlich ist er ja oeffentlich

Also, warum solltest Du soetwas wollen? Was steckt dahinter?
Mr5mith ist offline   Mit Zitat antworten
Alt 12.03.10, 01:59   #10 (permalink)
Moderator
 
Benutzerbild von Elderan
 
Registriert seit: 30.03.04
Elderan Leistung: 8086
Likes: 14
Standard

Hallo,
oh hier im Thread sind diverse Ungereihmheiten drin. Um mal etwas Klarheit ins Dunkle zu bringen:

Zuerst basiert es mal auf dem Verfahren. Es gibt verschiedene Public-Key Verfahren und es ist keine allgemeine Anforderung, dass es schwierig sein soll vom privaten auf den öffentlichen zu schließen.
Dass keine mathematische Beziehungen zwischen beiden besteht ist falsch, da alle (aktuellen) public-key Verfahren auf irgendwelchen mathematischen Problemen basieren und somit private und public Key in einem Zusammenhang hängen.


Nimmt man RSA, so besteht der Public Key aus den beiden Zahlen e (Exponent) und n (Modulus), geschrieben oftmals als (e,n).
Der Private Key ist d (Exponent) und n (Geschrieben (d,n)).

Sprich, der private und der öffentliche Schlüssel bei RSA unterscheidet sich nur in e und d. Da e zumeist einen Standardwert hat, oftmals 3, 17 oder 65537 (diese Zahlen sind vorteilhaft für die Performance), ist es kein Problem einfach diese 3 Zahlen zu testen.
Der öffentliche Exponent wird eigentlich fast nie zufällig gewählt, da dies erheblich die Performance beeinträchtigen würde. Also ist es in fast allen Fällen sehr leicht bei RSA vom den öffentlichen Schlüssel zu erhalten, wenn man den privaten Schlüssel (d,n) gegeben hat.


Ansonsten, der Zusammenhang zwischen e und d ist:
(e*d) mod (p-1)(q-1) = 1

Wenn man nur d und n=p*q gegeben hat (weder p noch q), und e zufällig gewählt wäre, wäre es in der Tat schwierig auf e zu schließen. Genauso schwierig wie vom öffentlichen RSA-Key auf den privaten zu schließen.

Zumeist, auch wieder aus Performance-Gründen, speichert man beim privaten Schlüssel nicht nur d und n, sondern auch p und q ab, da sich so die Verschlüsselung beschleunigen lässt.
Hat man p,q und d gegeben, so lässst sich der öffentlich Schlüssel (e,n) sehr leicht berechnen.


Aber wie gesagt, es hängt stets von dem Verfahren. Bei manchen Public-Key-Verfahren mag es evt. stets sehr leicht sein, vom privaten auf den öffentlichen Key zu schließen.
Zum Beispiel hätte man RSA auch so definieren können, dass p,q und e den privaten Schlüssel bilden und (e,n) den öffentlichen Schlüssel. Dann wäre es stets leicht vom privaten Schlüssel auf den öffentlichen Schlüssel zu schließen.

Geändert von Elderan (12.03.10 um 09:18 Uhr)
Elderan ist offline   Mit Zitat antworten
Alt 12.03.10, 06:59   #11 (permalink)
Themenstarter
 
Registriert seit: 28.08.09
KaiserKronos Leistung: Facit NTK
Likes: 0
Standard

danke Elderan, du bist mein held des Tages

ok also das genaue Problem ist, ich möchte eine Kommunikation zwischen einem server und clients realisieren. Die Clients sollen den private key haben um die Nachrrichten zu entschlüsseln, und nur der Server soll den Public key haben um Nachrichten zu versenden. damit will ich bewecken das niemand einfach falsche daten versenden kann in dem er sich zwischen den Server und Client hängt.

weiß jemand eine lösung für mein problem? eine verschlüsslung die zutreffend wäre?

mfg KaiserKronos

PS: dem Clients wird nicht vertraut.
KaiserKronos ist offline   Mit Zitat antworten
Alt 12.03.10, 09:26   #12 (permalink)
Moderator
 
Benutzerbild von Elderan
 
Registriert seit: 30.03.04
Elderan Leistung: 8086
Likes: 14
Standard

Hallo,
das Zauberwort nennt sich Signatur (Stichwort: Digitale Signatur).

Jeder Teilnehmer, sprich alle Clients und der Server, hat je ein eigenes Schlüsselpaar (sprich, privaten und öffentlichen Schlüssel). Ebenso hat jeder Teilnehmer alle öffentlichen Schlüsseln von den anderen Teilnehmern.

Wenn der Server nun was an einen Client versenden will, verschlüsselt dieser es mit dem öffentlichen Schlüssel von dem Client und signiert es mit dem eigenen privaten Schlüssel.

Nur der Client kann es entschlüssel und nur der Server kann die Signatur erstellt haben, sofern kein privater Schlüssel gestohlen wird.



Was alternativ noch deutlich leichter geht wäre folgendes Szenario. Du müsstest dann abwegen ob es passt:
Nur der Server hat ein Schlüsselpaar. Alle Client haben den öffentlichen Schlüssel vom Server.

Zum Datenaustausch kontaktiert der Client den Server und sendet eine verschlüsselte zufällige Zahl/Passwort/Key an den Server (nutzt dabei den öffentlichen Schlüssel vom Server). Nur der Server kann dieses entschlüsseln.
Zum weiteren Datenaustausch nutzen beide Seiten, also Client und Server, diesen vom Client zufällig gewählten Key um damit die Daten zu verschlüsseln (z.B. mittels AES).
Wenn sich jemand in die Mitte einklinkt, dann könnte der höchsten nur unsinnige Daten an den Server oder an den Client senden. Mittels Prüfsumme würde man dies leicht erkennen.

Dies ist praktisch ein vereinfachtest SSL Verfahren.


Evt. ist dass für deinen Zweck passend.


Achja: Das ganze nennt sich kryptographisches Protokoll. Da gibts noch unzähliche weitere für verschiedenste Zwecke
Elderan ist offline   Mit Zitat antworten
Alt 13.03.10, 12:16   #13 (permalink)
Themenstarter
 
Registriert seit: 28.08.09
KaiserKronos Leistung: Facit NTK
Likes: 0
Standard

danke für die Infos Elderan, du hast mir sehr weitergeholfen mfg KaiserKronos
KaiserKronos ist offline   Mit Zitat antworten
Antwort
   

Werbung ist gerade online    

[HaBo] » Security Area » Cryptography & Encryption » asymmetrisches Kryptosystem public key berechnen
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61