Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: Tiedoston kryptaus

Sivun loppuun

vita_zipper [04.09.2005 17:36:07]

#

Tiettääkö joku toimivan tiedostokryptauksen. Tarkoituksena kryptata suuria tiedostoja (400 kt.-5 Mt.) salasanan taakse.
ja mielummin sellainen kryptaus, joka osaisi tarkistaa onko salasana oikein vai väärin. (VB6)

renni [04.09.2005 21:10:51]

#

Mitäs vikaa yleisesti käytetyissä kryptauksissa? Niistä vaan valitsemaan sopivaa.

tuomas [04.09.2005 21:32:17]

#

Täältä putkastakin löytyy koodivinkit muutamaan kryptausmenetelmään. Pari kertaa tiedoston sisällön xorrauskin riittänee (Tästä myös vinkki täällä), jos ei mitään hirveän arkaluontoista materiaalia ole salattavana.

hunajavohveli [04.09.2005 21:43:26]

#

Itse olen xorria käyttänyt, kun jotain on pitänyt kryptata, mutta on se VB:llä kyllä suhteellisen hidasta.

Blaze [04.09.2005 22:29:04]

#

tuomas kirjoitti:

Pari kertaa tiedoston sisällön xorrauskin riittänee

Joo, kantsii xorrata aina kahesti niin on turvallisempaa! ;P

Tumppu [05.09.2005 11:53:22]

#

minkälaista tiedostoa sun on tarve kryptata? (kuvaa, musiikkia, tekstiä?)

vita_zipper [07.09.2005 15:17:04]

#

Tarvis kryptata tiedoston, joka sisältää tavallista tekstiä ja myös muita tiedostoja, joista suurin osa on kuvia. Mutta kaikkein tärkeintä on kryptata sen suuren tekstitiedoston

ville-v [07.09.2005 15:21:04]

#

Blaze kirjoitti:

tuomas kirjoitti:

Pari kertaa tiedoston sisällön xorrauskin riittänee

Joo, kantsii xorrata aina kahesti niin on turvallisempaa! ;P

Tiedoksi niille, jotka eivät vielä sitä tajunneet, niin tuplaxorraus samalla luvulla ei muuta muuttujan arvoa mitenkään. Jos aiotaan salata xorraamalla monta kertaa, niin luvun pitää olla joka kerralla eri.

tuomas [08.09.2005 19:51:46]

#

Blaze kirjoitti:

tuomas kirjoitti:

Pari kertaa tiedoston sisällön xorrauskin riittänee

Joo, kantsii xorrata aina kahesti niin on turvallisempaa! ;P

Niin, ei siis tietenkään samalla avaimella, muutenhan tulos tosiaan pysyy samana. Kaksi kertaa xorraus on kuitenkin kannattavaa, sillä avain voi näkyä ns. "nollakohdissa" salatun tekstin seassa. Kahdesti xorraamalla pitäisi ainakin sen ensimmäisen avaimen olla visusti piilossa, vaikka toinen sattuisikin jossakin kohtaa näkymään.

vita_zipper [08.09.2005 23:33:03]

#

xorraus on vähän hidas, jos tiedosto on liian suuri. ja se toimii vain ASCII-merkistön kanssa. myös se purkaa tiedoston, vaikka salasana olisi väärä

esakom [09.09.2005 09:07:49]

#

vita_zipper kirjoitti:

xorraus on vähän hidas, jos tiedosto on liian suuri. ja se toimii vain ASCII-merkistön kanssa. myös se purkaa tiedoston, vaikka salasana olisi väärä

onko xorraus nyt oikeasti kovinkaan hidas? En ole testannut, mutta veikkaisin että pullonkaula on ennemminkin vb:n stringinkäsittelyn hitaus, tai joku vastaava ohjelmointikämmi, xorri on bittioperaatio ja sinällään uskoisin olevan nopea... Olenko ihan väärässä??? Tarvittaessa kannattaa ehkä harkita dll:n pyöräyttämistä esim. C:llä, jota sitten kutsutaan vb:stä. Yllättävän helppoa, olen monesti käyttänyt kun vb:n stringit on liian hitaita pyöritellä.

Pitääpä testailla kun aikaa riittää...

Sami [09.09.2005 10:15:05]

#

XOR todellakin on bittioperaatio ja luulisin myös sen käytön olevan nopeata. Jos käyttää tuplaxorausta, niin silloin kummankin avaimen tulisi olla eri mittaisia tai muuten kaksinkertaisesta xoraamisesta ei ole mitään hyötyä.
Kahteen kertaan xoraamisen nimittäin voi purkaa yhdelläkin avaimella ja tämän avaimen pituus on (a1 * a2 / syt(a1, a2)), missä a1 on avaimen 1 pituus, a2 vastaavasti avaimen 2 pituus ja syt() on kahden luvun suurin yhteinen tekijä. Tässä tapauksessa olisi parasta valita vähintään toisen avaimen pituudeksi jokin alkuluku tai ainakin niin, että luvuilla ei ole yhteisiä tekijöitä.

Jos molemmat avaimet ovat saman mittaisia, niin purkuavaimeksi riittää yksinkertaisesti avain (a1 XOR a2). Jos ei muuten usko niin siitä vain todistamaan tuo, jonka tosin ei pitäisi olla kovin vaikeata.

tesmu [09.09.2005 13:00:28]

#

Tosin voit myös käyttä RSA kryptausta joka on yksi vaikeimmin murrettavista kryptays järjestelmistä se sisältää Pakkaus ja Purkuavaimen ja Se ei perustu mihinkään alkoritmiin Muunmuassa MSN Messenger käyttää RSA alkoritmiä ja tosiaan mitä pitempi avain sen vaikeemmin se on murrettavissa

RSA Kryptaus perustuu puhtaasti alkulukujen käyttöön ja lopuksi kaikki muutetaan hexaksi

Tuplanolla [09.09.2005 15:47:28]

#

Suosittelen tätä: http://www.planetsourcecode.com/vb/scripts/ShowCode.asp?txtCodeId=12023&lngWId=-1

Tuo koodi sisältää kryptat Simple XOR, Blowfish, Twofish, Skipjack, TEA, Gost, RC4, CrpytAPI ja DES.
Itse suosittelen Gostia, Simple XOR:ia (vähemmän tärkeisiin juttuihin) tai RC4:sta.

FooBat [09.09.2005 20:15:28]

#

Jos haluaa tehdä helpon, mutta melko pätevän kotitekoisen salauksen, voi vaikkapa etsiä jostain hyvän, mielellään vähintään 64-bittisen satunnaislukugeneraattorin, asettaa salasanan sen siemenluvuksi ja sitten tavu kerrallaan xorrata tiedostoa seuraavilla satunnaisluvuilla. Kyllä tuon varmaan joku fiksu matemaatikko purkaa, mutta pitääpähän se ainakin siskot, veljet ja anopit pois urkkimasta.

Sami [09.09.2005 21:41:45]

#

Tavu kerrallaan satunnaisluvuilla xoraaminen ei välttämättä ole se kannattavin tapa, sillä satunnaislukujen generoiminen on suhteellisen hidasta puuhaa. Toisaalta taas en tiedä tulisiko tuossa ensiksi vastaan Stringien käsittelynopeus, satunnaislukujen generointi vai jokin muu. Testaamalla se kuitenkin selvinnee.

tesmu [10.09.2005 12:58:35]

#

heh mikä virhe tossa mun tekstissä

huomaatteko
"Se ei perustu mihinkään alkoritmiin Muunmuassa MSN Messenger käyttää RSA alkoritmiä ja"

siis MSN Käyttää RSaata ei RSA alkoritmiä koska se ei perustu alkoritmiin

tkarkkainen [10.09.2005 14:18:24]

#

FooBat kirjoitti:

Jos haluaa tehdä helpon, mutta melko pätevän kotitekoisen salauksen, voi vaikkapa etsiä jostain hyvän, mielellään vähintään 64-bittisen satunnaislukugeneraattorin, asettaa salasanan sen siemenluvuksi ja sitten tavu kerrallaan xorrata tiedostoa seuraavilla satunnaisluvuilla. Kyllä tuon varmaan joku fiksu matemaatikko purkaa, mutta pitääpähän se ainakin siskot, veljet ja anopit pois urkkimasta.

Mikäli käsitin oikein, niin tuo on vain XOR-versio Vigenere-salauksesta, jossa avain on yhtä pitkä kuin itse viestikin. Se on matemaattisesti todettu purkamattomaksi. Ongelmana on juuri avaimen tuhoton pituus, joten sen luotettava siirtäminen salauksen purkajalle on hankalaa.

RSA on "turvallinen" niin kauan kuin nopeaa tekijöihin jakamista ei ole keksitty. Ja uskon kyllä että se on jo keksitty, mutta sitä ei tiedetä kuin NSA:ssa ja vastaavissa laitoksissa.

Tesmulta haluaisin kysyä, että minkä takia RSA-algoritmi ei perustu algoritmiin?

Wikipedia kirjoitti:

In cryptography, RSA is an algorithm for public key encryption.

tesmu [10.09.2005 15:21:29]

#

Se ei ole säännöllisyys vaan puhdas alkulukujen matemaattinen muuntaminen tjtn

tkarkkainen [10.09.2005 15:34:40]

#

Jos tjtn tarkoittaa "tai jotain" niinkuin luulen sen tarkoittavan, niin ollaanpas vankalla pohjalla. Wikipedian mukaan algoritmi on "tarkasti määritelty vaihesarja, jota seuraamalla voidaan ratkaista tietty ongelma". Missä kohtaa RSA ei täytä tuota määritelmää? Kuvaus löyty vaikka http://fi.wikipedia.org/wiki/RSA

FooBat [10.09.2005 15:39:58]

#

tkarkkainen kirjoitti:

FooBat kirjoitti:

Jos haluaa tehdä helpon, mutta melko pätevän kotitekoisen salauksen, voi vaikkapa etsiä jostain hyvän, mielellään vähintään 64-bittisen satunnaislukugeneraattorin, asettaa salasanan sen siemenluvuksi ja sitten tavu kerrallaan xorrata tiedostoa seuraavilla satunnaisluvuilla. Kyllä tuon varmaan joku fiksu matemaatikko purkaa, mutta pitääpähän se ainakin siskot, veljet ja anopit pois urkkimasta.

Mikäli käsitin oikein, niin tuo on vain XOR-versio Vigenere-salauksesta, jossa avain on yhtä pitkä kuin itse viestikin. Se on matemaattisesti todettu purkamattomaksi. Ongelmana on juuri avaimen tuhoton pituus, joten sen luotettava siirtäminen salauksen purkajalle on hankalaa.

Ensinnäkin avain on tuossa vain siemenluvun mittainen eli eim. 64-bittiä (8-merkkiä). Pitää muistaa, että satunnaislukugeneraattorien antamat luvut eivät suinkaan ole satunnaisia vaan tietyillä laskutoimituksilla edellisestä luvusta muodostettu sarja.

Toiseksi tuo ei juurikaan muistuta vigenere salausta.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta