.| Autor | Beitrag |
|---|---|
|
000 31.01.2006, 14:24 [AR] HL-Mapper |
Funktionen fgetc() unf fputc() nur fuer ASCII Zeichen ??? In einem DV-Praktika haben wir ein kleines Kyptogrphie-Programm geschrieben. Jedoch ergibt sich bei mir auf dem Rechner ein kleines Problem: Meine Vermutung ist deshalb, dass die Funktionen fgetc() unf fputc() nur fuer ASCII Zeichen, also Binärzahlen von 0 bis 255, funktioniernen. Die .doc , .rtf und .jpg - Dateien verwenden hoechstwahrscheinlich Binärzahlen von ueber 255, sodass die beiden Funktionen diese Bytes einfach weglässt. Oder kann es auch etwas mit dem Betriebssystem zusammenhängen? Beim Praktika wurde irgendein Linux-BS verwendet, ich habe auf meinen Rechener XP drauf. Beim Praktika konnte ich zB problemlos Bitmapdateien (.bmp) codieren und decodieren; zu Hause gib es mit dem selben Programm aus dem Praktikum nicht mehr! (Könnte aber auch an dem .bmp Format zusammenhängen und wie es Linux speichert, habe nämlich nicht dieselbe Bitmap einmal unter Linux und einmal unter XP de/codiert.) Hat hier jemand ne Idee, wo das Problem sein könnte? Gruss Andre --.: Ist es krank, wenn ich es geil finde ? :. |
|
Profil || Suche |
|
001 31.01.2006, 14:41 theDon |
Ein Byte hat acht Bits. Demnach kann ein Byte nie groesser als 255 sein. -- \o tanz den naziprau! o/ And more than ever, I hope to never fall, |
|
Profil || Suche |
|
002 31.01.2006, 14:48 CN |
1. es heisst praktikum im singular ansonsten, wenn du byte-weise liesst dann kriegst du auch nur n byte (zeig mir mal eins dass nen wert grösser als 255 hat) Dieser Beitrag wurde am 31.01.2006 um 14:50 von CN bearbeitet. |
|
Profil || Suche |
|
003 31.01.2006, 15:47 Kriz |
Btw., wenn du dein Prog da pimpen willst, solltest du wissen, daß einige ASCII-Zeichen nur Steuerfunktion besitzen bzw. Whitespaces sind. In diesem Fall wäre es besser, wenn du CNs Vorschlag beherzigst und die Datei binär schreibst beim Verschlüsseln bzw. binär einliest beim Entschlüsseln. EDIT: Ack, hat ja hier keinen [cpp] Tag o_O --K:R-I)Z++ Dieser Beitrag wurde am 31.01.2006 um 15:48 von Kriz bearbeitet. |
|
Profil || Suche |
|
004 31.01.2006, 15:51 theDon |
*hust* unsigned char wohl eher. -- \o tanz den naziprau! o/ And more than ever, I hope to never fall, |
|
Profil || Suche |
|
005 31.01.2006, 19:11 TheTinySteini |
Abgesehen davon macht die Schluessel-Pruefung nicht das, was die Eingabezeile vermuten laesst. --TheTinySteini |
|
Profil || Suche |
|
006 31.01.2006, 20:57 Kriz |
Wtf, wo ist denn das un geblieben? Dolle Kartoffel... --K:R-I)Z++ |
|
Profil || Suche |
|
007 01.02.2006, 12:06 [AR] HL-Mapper |
Stimmt, ein Gedankenfehler von mir! Weiss ich. Im DV-Praktikum habe ich zum Beispiel den Quellcode des C-Programmes codiert und diesen dann mit einem normalen Texteditor betrachtet: * Beide Dateien waren gleich gross ( -> keine Bytes irgendwie verloren gegangen.) * Die einzelenen Zeichen waren um den Wert des Schlüssels verändert wurden ( aus einem 'A' wurde zB ein 'i', wenn man den Schlüssel 40 verwendet hat. Aus einem Zeilensprung wurde dann ein anderes Zeichen (weiss jetzt nicht die ASCII Nr des Zeilensprungs, sonst könnte ich ein äquivalentes Beispiel liefern.)) * Nach dem decodieren entstand wieder zu 100% der alte Text, mit den alten Formatierungszeichen (Tab,Zeilensprung,Leerzeichen,usw) Das gleiche hat auch mit einer beliebigen Bitmap funktioniert. ----- Das Thema finde ich sehr interesant, also nach dem Praktikum mir den Quellcode auf den USB-Stick gepackt und wollte das Prog zu Hause auf dem Rechner ausprobieren und erweitern. Bei einer einfachen Unicode-Textdatei nur ~ ein dutzend, Kann die Formatierung einer Festplatte irdendwelche Auswirkungen darauf haben, sperrt sich Windows/Virenscanner/... gegen das beschreiben von Dateien mit 'seltsamen Byte-Folgen' ?? Ich geh das Programm zu Hause noch mal Zeile für Zeile durch, vielleicht hat sich ja da ein Fehler eingschlichen MfG --.: Ist es krank, wenn ich es geil finde ? :. |
|
Profil || Suche |
|
008 01.02.2006, 13:55 theDon |
... -- \o tanz den naziprau! o/ And more than ever, I hope to never fall, |
|
Profil || Suche |
|
009 01.02.2006, 14:39 CN |
[AR] HL-Mapper |
|
Profil || Suche |
|
010 01.02.2006, 15:11 Kriz |
1. fputc() & Co. lassen definitiv keine Bytes unter den Tisch fallen K:R-I)Z++ |
|
Profil || Suche |
|
011 01.02.2006, 16:39 TheTinySteini |
Quick & Dirty... praktisch identischer Code, geht. TheTinySteini |
|
Profil || Suche |
|
012 07.02.2006, 02:29 doener |
Hey, ich hab auch ne Kryptographiefrage! Und zwar hab ich mal vor nem Jahr was in ner Klausur zum RSA-Verfahren geschrieben, das ich jetzt nicht mehr verstehe ^^
x ist der Rest der überbleibt wenn die Division von dem was da in Klammern steht mit e nicht sauber aufgeht, solange das nicht aufgeht wird (p - 1) * (q - 1) immer mit einem pro Durchlauf um 1 angestiegendem i multipliziert. Geht die Rechnung ohne Rest auf, so wird abschließend d ausgegeben. Was ich jetzt nicht zahlentheoretisch kapiere ist: (Wieso) darf ich einfach (p - 1) * (q - 1) immer mit nem ansteigendem Faktor multiplizieren? Ist das ein korrektes Verfahren um ein d zu bestimmen? Bin wohl zu müde -_o --Dieser Beitrag wurde am 07.02.2006 um 02:32 von doener bearbeitet. |
|
Profil || Suche |
|
013 07.02.2006, 17:53 CN |
dazu guckst du dir vielleicht besser eine beschreibung des rsa verfahrens an denn dann musst du so ne frage nicht stellen Dieser Beitrag wurde am 07.02.2006 um 17:54 von CN bearbeitet. |
|
Profil || Suche |
|
014 07.02.2006, 18:25 doener |
Öhm... nicht ganz, der Block mitm i wird garnicht wiederholt, nur ein einziges mal ausgeführt, cool was so nen vergessenes "do" ausmacht wa? Btw. woher willste das eigentlich wissen, hab ja garnicht die Programmiersprache genannt, könnt doch auch was ganz anderes sein als Java... :P |
|
Profil || Suche |
|
015 07.02.2006, 19:00 CN |
wer sagt denn dass ich von java ausgegangen bin, wer sagt dass ich von irgendwas ausser logik ausgegangen bin? |
|
Profil || Suche |
|
016 07.02.2006, 22:52 doener |
Logik ist relativ. -- |
|
Profil || Suche |

