Zum Inhalt springen

Verschlüsseln und entschlüsseln mit c


tafkad

Empfohlene Beiträge

Hallo,

ich bräuchte Hilfe, und zwar suche ich eine Bibilotek mit der man unter C eine txt-Datei welche als config benutzt wird verschlüsseln kann und dann mit dem Programm welches die Config braucht wieder auslesen kann.

Ich bedanke mich schon mal für eure Antworten.

PS: Eine einwegverschlüsselung ist nicht zu gebrauchen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

http://technocage.com/~ray/classes/dsa/

Schau da mal nach "Analysis of different algorithms for scrambling arrays" das kannst Du in C++ genauso anwenden.

Ansonten wirst Du hier bestimmt etwas finden:

http://directory.google.com/Top/Science/Math/Applications/Communication_Theory/Cryptography/Programming_Libraries/

http://munitions.vipul.net/dolphin.cgi?action=render&category=0301

http://www.geocities.com/SiliconValley/Peaks/1399/downloadable.html

Wenn man es genau nimmt ist eine Datenkompression auch eine effektive Verschlüsselungstechnik!

PS zurück: Gibt es eine sinnvolle Einwegverschlüsselung???

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich glaube wir verstehen etwas unterschiedliches unter "Einwegverschlüsselung". Ich verstehe darunter eine verlustbehaftete Verschlüsselung aus der die Daten nicht mehr perfekt rekonstruiert werden können. Du verstehst darunter eine Verschlüsselung ohne Paßwort aufgrund von Algorithmen, oder?

Hashing ist eigentlich ja keine Verschlüsselung, sondern lediglich eine aufgesetzte Methode auf ein Datenfeld um Datensätze schneller zu finden, indem die Inhalte durch irgendeinen Algor. einen Schlüssel wiedergeben, mit dem die wahrscheinlichste Position innerhalb des Feldes wieder möglichst schnell gefunden werden kann. Das ist gar keine Verschlüsselung, sondern ein mathematisch errechneter Index der wahrscheinlichsten Eintragungsposition. Eine Verschlüsselung nimmt direkte Änderungen an den Daten vor und kann auf Bedarf mit dem richtigen Schlüssel astrein die Orginaldaten wiederherstellen.

Nebenbei bemerkt ist die effektivste Verschlüsselungstechnik eine Schlüsseldatei mit einer Länge gleich oder größer der zu schütztenden Datei, bei der jeder Eintrag mit dem entsprechenden Eintrag der zu verschlüsselnden Daten verrechnet wird. Deshalb gilt ja auch ein zu langer Schlüssel in Amerika als Waffe: Weil sowas unknackbar ist! 168 oder 192 Bit sind ja scheinbar nicht viel - aber groß genug um eine Entschlüsselung fast unmöglich zu machen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

Danke, das ist doch schon einmal ein anfang, wo ich mich reinlesen kann.

Noch eine Frage, und zwar gibt es bei mir auf dem Unix eine Headerdatei crypt.h! Ist die auf jedem drauf, oder ist das ein sonderfall?

Wenn Sie überall drauf ist, gibts da eine art API zu??

Gruß Tafkad

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich kenne mich mit Unix nicht aus, aber es ist schon denkbar, daß das vom System unterstützt wird (wurde ja von der US-Regierung ins Leben gerufen). Probiere das mal in einen Source reinzubinden, etwas aufzurufen und zu linken - vielleicht sind die Funktionen alle global vom Betriebssystem her. Wenn es geht, dann ist es mit Sicherheit überall unterstützt.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Einfache Methode zum Chiffrieren sind Caesar - Chiffre, etc.

Schau einfach mal bei google vorbei und gib mal Chiffe ein.

PS: heir eine kleines Bsp. von mir mit Caesar-Chiffre

#include <iostream>

#include <fstream>

using namespace std;

char crypt(char ch,char key) //verschlüsseln

{

return ch+key;

};

void main()

{

ifstream in("main.cpp");

ofstream out("main.cpp.crypt");

int key;

cin>>key;

char ch=in.get();

while(!in.eof())

{

out<<crypt(ch,key);

ch=in.get();

};

};

MFG

UBAI

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

also einige der Statements fande ich ein wenig verwirrend, weshalb ich jetzt auch noch mal meinen Senf hinzugebe.

168 bzw. 192 bit Schlüssel gelten als Waffe:

Naja, hängt ganz stark davon ab um was für ein Verschlüsselungsverfahren es sich dabei handelt.

Bei symetrischen Verfahren dürfte dies Ausreichen, bei asymetrischen ist es "entschieden" zu wenig.

Sinnvolle Einwegverschlüsselung bzw. Hashwerte:

Auf diesem Wege kann z.B. die Unix Passwort datei gesichert werden. Das eingegebene Passwd wird dann auch "verschlüsselt" und mit dem in der Datei stehenden Wetr abgeglichen.

Eine andere Anwendung von Hashfunktionen sind z.B komplexe Prüfsummenverfahren die es unmöglich machen sollen eine Nachricht zu verändern.

Aber jetzt zurück zu urspünglichen Frage:

Die Programmierung einer wirklichen Ver- und Entschlüsselungslogik ist recht kompliziert. Ich würde ein Verfahren wählen das in der Implementierung eher simpel ist (verhätnissmäßig zumindest).

Daher würde ich DES nehmen, allesdings kannst du dich dann schon einmal auf eine Menge Bit-Verdreherei einstellen.

(Das 1.Bit ist jetzt das X.Bit...das n.Bit ist jetzt das Y.Bit etc.)

http://www.itl.nist.gov/fipspubs/fip46-2.htm

Ansonsten wünsche ich noch viel Spass :eek:

Greetz Ketzer

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...