[Info]
Aktuelle Zeit: Sa 18. Nov 2017, 20:38

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Implementierung von RSA
BeitragVerfasst: Do 12. Nov 2015, 21:42 
Offline
Benutzeravatar

Registriert: Sa 11. Mai 2013, 15:31
Beiträge: 528
Wohnort: Bayern

Spezialgebiet: Knoten,"Hallo Wach Kaffee+",C Sockets
Schule/Uni/Arbeit: Gymnasium
Servus Miteinander,
ich möchte euch hier ein kleines Computerprogramm vorstellen welches Ich im Rahmen meiner Seminararbeit Geschaffen habe. Thema der Arbeit war Implementierung von RSA. Warum möchte ich euch das vorstellen? Nun, das Programm funktioniert zu meiner Zufriedenheit, entspricht halbwegs den Anforderungen des BSI und vor allem möchte ich keine Software Schreiben nur damit der Lehrer sie als einziger Mensch der Welt einmal ausprobiert. Außerdem möchte ich denjenigen die noch eine Seminararbeit in Mathematik/Informatik schreiben zeigen dass falls ein Programm implementiert wird nicht immer die Mainstream Thematiken wie ENIGMA Cäsar oder Vinegre behandelt werden müssen. So nun zum Programm selbst es war insbesondere mein Ziel nicht auf vorgefertigte Bibliotheken zurückzugreifen sondern das Programm von Grund auf selber zu gestalten obwohl dadurch natürlich eine massiv höhere Laufzeit entsteht. Deswegen habe ich sämtliche Mathematischen Operationen selbst Implementiert. Das Programm besitzt 3 Funktionen
1.) Schlüsselerzeugung
Diese Funktion wird durch den Modus K aufgerufen.
Die Datei N bezeichnet das Primfaktorprodukt des Schlüssels.
Die Datei d bezeichnet den privaten Entschlüsselungsexponenten.
Die Datei e bezeichnet den öffentlichen Verschlüsselungsexponenten.
Die Schlüssellänge wird hier in Vierfachen Bytes Angegeben 1 ^= 32Bit.
Die Schlüssellänge wird vom Programm zufällig zwischen der Minimalen und Maximalen Länge Ausgewählt.
Nun muss man 2 mal hintereinander irgendwas zufälliges auf der Tastatur eingeben bis das Programm mit der Schlüsselerzeugung beginnt.
Zum Schluss werden in dem Ordner von dem das Programm gestartet wurde der Schlüssel N d und e abgelegt.
2.) Verschlüsselung
Zum verschlüsseln muss man ein bereits erzeugtes e und N angeben welche im Ordner liegen von dem aus das Programm gestartet wird des weiteren muss man die Datei angeben welche Verschlüsselt werden soll diese muss ebenfalls an dem selben Ort liegen.
3.) Entschlüsselung
Zum entschlüsseln muss man ein bereits erzeugtes d und N angeben welche im Ordner liegen von dem aus das Programm gestartet wird des weiteren muss man die Datei angeben welche Entschlüsselt werden soll diese muss ebenfalls an dem selben Ort liegen.

Ich würde es schon finden wenn ich ein bisschen Feedback erhalten würde. Bitte nicht über Rechtschreibfehler im Code wundern. In der Zipdatei ist der Quellcode falls mir jemand nicht traut und selber Compilieren will andernfalls ist die Anwendung noch für Linux Compiliert drinnen. Anwendung startet nur direkt aus der Konsole.


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

_________________
I <3 0402
Real ist alles was warm wird.


Share on FacebookShare on Google+Share on Reddit
Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Implementierung von RSA
BeitragVerfasst: Do 12. Nov 2015, 21:53 
Offline
Benutzeravatar

Registriert: Sa 11. Mai 2013, 15:31
Beiträge: 528
Wohnort: Bayern

Spezialgebiet: Knoten,"Hallo Wach Kaffee+",C Sockets
Schule/Uni/Arbeit: Gymnasium
Wenn mir jemand was schicken will hier mein Öffentlicher Schlüssel


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

_________________
I <3 0402
Real ist alles was warm wird.


Share on FacebookShare on Google+Share on Reddit
Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Implementierung von RSA
BeitragVerfasst: Sa 14. Nov 2015, 16:07 
Offline
Benutzeravatar

Registriert: Sa 17. Jan 2015, 10:55
Beiträge: 369
Wohnort: Bernbeuren

Schule/Uni/Arbeit: Schule
Hallo
Ich kann das ganze nicht ausführen, aber ich finde das Projekt (soweit ich den Quellcode verstehe) sehr gelungen.
Hoffentlich bekommst du 15 Punkte.
Gruß Daniel


Share on FacebookShare on Google+Share on Reddit
Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Implementierung von RSA
BeitragVerfasst: Fr 20. Nov 2015, 22:12 
Offline
Benutzeravatar

Registriert: Fr 18. Dez 2009, 22:18
Beiträge: 603
Wohnort: Alfeld (Leine)

Spezialgebiet: MCUs, HF, IT
Hallo ferrum,

dein C-Code ist ... nunja, mehr als gewöhnungsbedürftig ;)

Code:
if((((*Exponent).zahl[i]&(0x1<<b))>>(b))==1)

Code:
    table =malloc(2*sizeof(PSTR));
    (table[0]).s=malloc(sizeof(SIGNEDBIGNUMBER));
    (*(table[0]).s).num=malloc(sizeof(BIGNUMBER));
    (*(*(table[0]).s).num).zahl=malloc(sizeof(BYTES));
    (*(*(table[0]).s).num).zahl[0]=0x1;
    (*(*(table[0]).s).num).length=1;


und ähnliche Konstrukte *hihi*
Gleiches gilt auch für die Implementation des Square-and-Multiply Algos... ;)
Du speicherst Quelltext in Header-Dateien (RSA.h usw.), das ist auch eher so gewöhnungsbedürftig :P
Und Crypt und Encrypt sind das gleiche.. Encrypt und Decrypt oder so wären vielleicht besser gewesen.
Dein system("sleep 15") auch eher so :censer:
EDIT: Und ähhm. key=CreateKey(max,min,stdout,stdin); Einer externen Funktion die stdout/stdin Streams zu übergeben ist auch eher seltsam :D

Anyway: Hier mal eine "geheime" Nachricht:
Code:
fKoE/NPMhqcEgULnTq6nqV9UxEV6R9l3qmPQo1Xf6bffzDiVu49HNl1xRYRJ0FnYn/o6ksAjFVtZ
iy9hleLILVmDEeIumHq6uvDzuFjeKzSdYJrMF5gcYXt6Fbh1hDcP5Mi90Pi4BMMSR4dVxLwmhlsy
fI3F/aJyuJC4Hh52i5ZMWwzmF1Ow994ITDJk5tpn+j41FkUaMIufPWkmorhObSwt6OBaGTjk+OA1
kZ8IpiKQKD6dzNF3C9yf2wi/sdMa

Base64't für den Transportweg ;)

Viele Grüße,
Tobias

_________________
Visit me: tbspace.de


Share on FacebookShare on Google+Share on Reddit
Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: Majestic-12 [Bot] und 3 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Gehe zu:  



Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de

moShBox © 2008, 2009, 2010 mosfetkiller-Community