Hmail | dinsdag 14 maart 2006 @ 13:18 |
Ik ga beginnen aan applicatie waarin je allerlei gevoelige informatie vast kunt leggen. Deze informatie word beveiligd met een wachtwoord, dus ik wil niet dat de info gewoon in notepad te openen is. Wat ik dus wil is een eigen formaat die alleen mijn applicatie kan openen. Net als dat je, wanneer je een PDF of een DOC in notepad opent, dan zie je ook allemaal onzin. Zo wil ik dat ook in mijn bestanden. Maar hoe moet dit ![]() Kan iemand me op weg helpen? | |
Lucille | dinsdag 14 maart 2006 @ 13:19 |
Hint: je moet je bestand encrypten. | |
_Led_ | dinsdag 14 maart 2006 @ 13:30 |
Je "eigen bestandsformaat" maken is gewoon een kwestie van naar disk schrijven wat JIJ wilt. Ik denk dat je eerst eens wat ervaring moet opdoen met programmeren in C++ en het werken met files... Een paar leuke sites om rond te neuzen als je windows-apps wilt gaan maken zijn bv. http://www.codeproject.com http://www.codeguru.com | |
Developersrus | dinsdag 14 maart 2006 @ 13:32 |
quote:#include <fstream.h> int main() { ifstream ifp( "stuff.in" ); ofstream ofp( "crap.out" ); int i; ifp >> i; ifp.close(); ofp << i * i; ofp.close(); return( 0 ); } Easy as 1,2,3! | |
electricity | dinsdag 14 maart 2006 @ 13:33 |
quote:dat is het enige juiste antwoord. afhankelijk van hoe amateuristisch alles is kun je zelf ff een filtertje maken die wat bitjes omwisselt, maar als je echte beveiliging wilt, kun je het beste een daarvoor bestaande library gebruiken. | |
electricity | dinsdag 14 maart 2006 @ 13:34 |
quote: ![]() | |
Keiichi | dinsdag 14 maart 2006 @ 13:51 |
Openssl library gebruiken? Dan is het iig versleuteld ![]() | |
_Led_ | dinsdag 14 maart 2006 @ 14:06 |
Sorry maar als meneer niet weet "hoe ie z'n eigen bestandsformaat maakt" zou ik nog maar even niet over encryptie beginnen ![]() | |
Keiichi | dinsdag 14 maart 2006 @ 14:10 |
quote:Bij een eigen bestandsformaat zou je gewoon kunnen denken aan XML, wel zo handig aangezien er al mooie libraries daarvoor zijn geschreven. Ik heb vroeger ook eens eigen bestandsformaat gebruikt (had iets weg van CSV) en dat raakte op een gegeven moment corrupt. | |
_Led_ | dinsdag 14 maart 2006 @ 14:14 |
quote:Prima, maar dan blijft m'n stelling nog steeds staan : als meneer dus niet weet hoe dat allemaal zit, zou ik nog maar niet over encryptie beginnen ![]() | |
Visitor.Q | dinsdag 14 maart 2006 @ 14:20 |
Nou, als dat programma niets anders doet dan zijn gevoelige informatie opslaan, dan hoeft hij juist alleen maar iets over encryptie te weten, namelijk hoe hij codeert en decodeert (ok, en het wachtwoord verifieert). Het gecodeerde deel schrijf je weg als tekst en je bestand is onleesbaar voor derden, als je een beetje fatsoenlijke encryptie pakt natuurlijk, niet alles 1 letter opschruiven ofzo ![]() | |
Developersrus | dinsdag 14 maart 2006 @ 14:24 |
quote:Da's 1 formaat, ASCII | |
Visitor.Q | dinsdag 14 maart 2006 @ 14:26 |
quote:Ja, dat wil hij toch? | |
Hmail | dinsdag 14 maart 2006 @ 14:52 |
Wauw wat een reacties ![]() L.Denninger: Ik heb een beetje ervaring met Windows programmeren, ik kan kleine simpele applicaties schrijven waar niemand wat aan heeft ![]() Developersrus: Zo'n beveiliging is wel heel makkelijk te omzeilen ![]() ![]() quote:Welke formaten zijn er nog meer? Encyptie in combinatie met openssl is waarschijnlijk waar ik naar op zoek ben. Daar ga ik eens op googlen ![]() Tot zover in ieder geval bedankt! | |
_Led_ | dinsdag 14 maart 2006 @ 15:35 |
Voorbeeldje : http://www.codeproject.com/cpp/encrypt.asp | |
gday | dinsdag 14 maart 2006 @ 15:40 |
quote:Ken ik jou toevallig uit de demoscene? ![]() | |
_Led_ | dinsdag 14 maart 2006 @ 15:42 |
quote:Da was ik nie, da was een negert ! Ja dus ![]() | |
Developersrus | dinsdag 14 maart 2006 @ 15:43 |
quote:http://nl.wikipedia.org/wiki/Bestandsformaat | |
Intrepidity | dinsdag 14 maart 2006 @ 19:54 |
Op het moment dat je je data in een struct zet bijvoorbeeld en deze opslaat naar een binair (!!) bestand dan wordt het zonder de structuur van de struct te kennen al flink lastig er nog informatie uit te halen volgensmij.. pas nog een vorm van encryptie toe en volgensmij moet het dan redelijk veilig wezen ![]() | |
gday | dinsdag 14 maart 2006 @ 20:15 |
Jep, je moet inderdaad weten wat de datatypes zijn, hoe groot ze zijn, etc etc en daar ook nog eens nuttige informatie uit weten te halen. Nog een keer encryptie eroverheen en klaar. Afhankelijk van hoe gevoelig die informatie is, zou ik kijken hoe sterk de encryptie moet zijn. | |
Intrepidity | dinsdag 14 maart 2006 @ 20:18 |
Waarschuwing: Dat truucje werkt dan overigens weer niet bij open-source programma's ![]() | |
electricity | dinsdag 14 maart 2006 @ 20:42 |
quote:afgezien van het feit dat text embedded opslaan in een struct nogal onpraktisch is ivm fixed size beperkingen, is het in die vorm 'binair' nog net zo leesbaar als een gewoon stuk text. tenzij je unicode characters gebruikt. dan zit overal een spatie tussen. afhankelijk van de mate van gevoeligheid van de data zul je moeten wegen wat voor vorm van encryptie je gebruikt. maar als ik TS zo hoor praten kan de gevoeligheid nooit heel groot zijn, gezien zijn overduidelijke gebrekkige kennis van zaken. security through obscurity is een slecht principe ![]() | |
gday | dinsdag 14 maart 2006 @ 20:44 |
.... en daarom dus een combinatie van de 2. Maar idd, ik denk niet dat dit een applicatie zal worden voor bedrijfskritieke processen met zeer zeer gevoelige informatie.... ![]() | |
Intrepidity | dinsdag 14 maart 2006 @ 21:25 |
een simpele vorm van encryptie kan overigens wezen een getal als 'wachtwoord' vragen van een cijfer of 8 en je characters afwisselend verhogen met een van die cijfers... Stel je hebt het woord huis en het wachtwoord 8134 krijg je als uitvoer: h + 8 --> p u + 1 --> v i + 3 --> l s + 4 --> w pvlw is al een stuk minder bruikbaar als huis ![]() Moet zelfs voor de beginnende programmeur te regelen zijn met een paar for-loopjes | |
Hmail | dinsdag 21 maart 2006 @ 13:05 |
Ik ben er mee aan de slag gegaan, jullie tips hebben me behoorlijk geholpen! Toch nog 1 vraag, en omdat ik geen reactie meer krijg in het Digital Feedback topic dump ik het maar hier ![]() quote:Ik ben hiermee bezig gegaan maar ik krijg openssl niet gecompileerd ![]() Ik maak vaak gebruik van de Mingw compiler i.c.m Dev-C++, maar als ik de "installer" gebruik krijg ik op een gegeven moment deze melding: quote:Weet iemand waar dit aan ligt? | |
Nekto | dinsdag 21 maart 2006 @ 13:39 |
Er worden niet genoeg libaries eringelinkt, of oude versies die bepaalde symbolen niet hebben. Als dat tijdens de installer gebeurt lijkt me dat echter een fout, maar kijk even of je misschien sommige andere packages moet installeren waar die installer van afhankelijk is. | |
Light | woensdag 22 maart 2006 @ 13:57 |
quote:Klinkt leuk, maar je moet alsnog zorgen dat er niets getoond wordt als het verkeerde wachttwoord wordt ingevoerd. Als er in het bestand "pvlw" staat en je voert als wachtwoord 9134 in dan hoor je dus niets te krijgen, en niet "guis". Anders is het wel heel makkelijk na te gaan dat je in de buurt zit qua wachtwoord. | |
ViPeRII | woensdag 22 maart 2006 @ 14:08 |
Light, opzicht heb je gelijk, en dan zou je het dus nog een keer moeten doen. Kijk maar naar PGP. Je hebt 1 public en 1 private key. Met de public key kan je dus inderdaad de code: 8 1 3 4 voor huis. Als je dan dus nog een key hebt (de private) die er voor zorgt dat je bijvoorbeeld 9 8 6 13 (De code omgedraait +5 per cijfer) die je in moet voeren voordat je dus de public key kan laten zien, dan wordt het vrij moeilijk toch? | |
FallenAngel666 | donderdag 23 maart 2006 @ 12:26 |
Het blijft nog steeds een simpel substitutie cipher dat eenvoudig te kraken is, omdat ieder teken uit de plaintext wordt vervangen door precies één teken in de ciphertext. Met behulp van frequentie analyse is het dan vrij eenvoudig om voor ieder teken in de ciphertekst te achterhalen wat de plaintext waarde is. Voor iedere taal is namelijk bekend wat de frequentie distributie is van alle letters uit het alfabet. Gebruik maken van een doodsimpel transpositie cipher, waarbij de volgorge van de letters in het bericht worden omgedraaid voegt natuurlijk helemaal niets toe qua beveiliging ![]() [ Bericht 0% gewijzigd door FallenAngel666 op 23-03-2006 12:44:29 ] | |
Hmail | donderdag 23 maart 2006 @ 16:15 |
Daarom wil ik dus m'n tekst eerst met md5 encrypten, en vervolgens die letters/cijfers coderen. Op dit moment heb ik dat gedaan door eerst een char in een int te converteren, vervolgens een (vaste) berekening er mee doen, en dan de int weer terug in een char te zetten zodat het op het eerste gezicht al onzin lijkt. Maar openssl werkt niet mee ![]() | |
Keiichi | donderdag 23 maart 2006 @ 16:28 |
quote:MD5 kun je niet decrypten ![]() | |
vbmot | donderdag 23 maart 2006 @ 16:30 |
quote:md5 lijkt me niet erg geschikt omdat het informatie weggooit. Dan moet je gaan brute-forcen om te decrypten. ![]() | |
Hmail | donderdag 23 maart 2006 @ 16:31 |
quote: ![]() Heb me er ook nog niet volledig in verdiept, dus ik ken die termen nog niet ![]() edit: Ik bedoel dus te zeggen dat ik de inhoud door md5 wil coderen, checksummen of wat dan ook ![]() Vervolgens moet je om de inhoud van het bestand weer te geven een wachtwoord invoeren, en dan, als je het goeie wachtwoord ingeeft, dat hij dan de inhoud weer kan geven. Heet zoiets geen "seed"? Of wil ik juist iets wat helemaal niet kan? ![]() hmm volgens mij begin ik door te krijgen wat jullie bedoelen ![]() Maar hoe moet dat dan? Hoe doet bijvoorbeeld OpenOffice het dan als je een document opslaat met wachtwoord? | |
FallenAngel666 | donderdag 23 maart 2006 @ 16:32 |
MD5 is een one-way cryptografische hashfunctie voor het genereren van 128-bit digest uit input van een willekeurige omvang. Niet bruikbaar voor encryptie / decryptie dus. Edit: spuit 11 ![]() | |
FallenAngel666 | donderdag 23 maart 2006 @ 16:36 |
quote:Wat jij wil kan wel, maar niet met MD5 ![]() Voor jouw doeleinden kan je het beste een symmetrisch encryptie algorithme pakken, zoals Blowfish, (3)DES, of AES (Rijndael). [ Bericht 3% gewijzigd door FallenAngel666 op 23-03-2006 16:43:46 ] |