Milyen általános képletet lehet használni egy karakterlánc összes lehetséges kombinációjának kiszámítására?
Ugye az is kérdés, hogy ismétléses, vagy ismétlés nélküli kombinációról van szó, azaz egy karakterláncban többször is szerepelhet-e az adott karakter. Karakterlánc esetén ugye kérdés, hogy a 10 karakter hosszúakat keressük-e, vagy a *maximum* 10 karakter hosszúakat, azaz az 1, a 2, stb… hosszúságú karakterláncokat is keressük-e.
(Továbbá a tényleges számításnál fontos lehet, hogy milyen karakterek kerülhetnek a karakterláncba, illetve hogy – teljes ASCII tábla esetén – null-terminated karakterláncról van-e szó, vagy Pascal stílusúról, hiszen az utóbbiban a #0 karaktert is lehet használni a karakterláncon belül.)
Tehát a kérdés, hogy matematikai értelemben vett kombinációról van-e szó, vagy a kombinációt kicsit hétköznapibb értelemben érted…
Hmm... Köszönöm a kiegészítő kérdést.
Igazad van. Én speciel adott hosszúságú (pl. maradjunk a 10-hosszúnál) láncot gondoltam és igen, szerepelhet minden helyen minden karakter, mint pl. a rendszámnál.
AAA-000, AAA-001, stb.
A másik persze, mikor pl. egy lottó számkombinációról beszélünk, mert akkor nyilván nem lehet 5 db 87-es számot kihúzni...
Én itt jelszóra gondoltam, mert archívum-jelszó problémám van. Tudtam, hogy sok ideig tart még egy 3GHz-es procinak is megfejteni akár egy 4 hosszú láncot, de majd lepetéztem, mikor egy óra után kiírta, hogy hol jár. AA estimated time: 2 days...bla-bla...:D
Szóval ott még csak két karakter esetében 2704 lehetséges variációt vizsgált, ha jól emlékszem.
Szóval a kérdés az fix hosszúságú és mindenhol lehet minden. ASCII (szerintem) Az 0-255-ig van.
A-Z, a-z, 0-9, symbols, space, all printable...ilyen funkciók vannak nekem itt.
Most BQ-nál jár 3 óra után, de szerintem ha mindet bejelölöm, talán jövő ilyenkorra készen lesz...pfff
Nos, akkor egyszerű, mert ugye annyiadik hatványra kell emelni az értékkészletben található karakterek számát, ahány darab karakter van. Pl. ugye ha 0-9 karakterekkel nézem, akkor 4 karakter esetén 0000-9999-ig kell végigpróbálni, azaz 10^4 = 10000 próbálkozás kell.
Persze ehhez még hozzájönnek a 3, 2, 1 karakterek kombinációk, így
x^4 + x^3 + x^2 + x darab próbálkozás kell, ahol x a megengedhető karakterek száma.
4 karakterrel számolva a próbálkozások száma:
- Csak számjegyek esetén: 11 110
- Angol kisbetűk (a-z): 475 254
- Angol kisbetűk + szám: 1 727 604
- Angol kis- és nagybetűk: 7 454 980
- Angol vegyes betűk + szám: 15 018 570
- Nyomtatható 7 bites karakterek (#32-től #127-ig): 85 828 704
- Nyomtatható 8 bites karakterek (#32-#255): 2 528 920 800
- Összes karakter (#0-#255): 4 311 810 304
10 karakter esetén:
- Csak számjegyek esetén: 11,11 * 10^10
- Angol kisbetűk (a-z): 1,47 * 10^14
- Angol kisbetűk + szám: 3,66 * 10^15
- Angol kis- és nagybetűk: 1,47 * 10^17
- Angol vegyes betűk + szám: 8,53 * 10^17
- Nyomtatható 7 bites karakterek (#32-től #127-ig): 6,72 * 10^19
- Nyomtatható 8 bites karakterek (#32-#255): 3,19 * 10^23
- Összes karakter (#0-#255): 1,21 * 10^24
Mint látható, nem mindegy, hogy milyen értékkészletet vizsgálunk, főleg ha több karakterről van szó. 10 karakter esetén már nagyságrendi különbségek vannak.
Érdemes előbb a számokat végigzongorázni, majd a kis+nagybetű+szám kombinációkat, majd esetleg az magyar ékezetes betűket, és pár gyakoribb karaktert (kötőjel, pont, aláhúzás), és csak utána meggondolni, hogy érdemes-e tovább menni.
Esetleg lehet szivárványtáblával, szótárral is kísérletezni. Ez utóbbi esetén pl. előbb a szótárban található szavakat, azok egymással illetve számokkal történő kombinációit próbálja végig. Pl. egy 10 karakteres jelszó esetén évek helyett max. órák kellenek így egy nem elég erős jelszó megtalálásához.
* * *
Az sem mindegy ugye, hogy milyen jelszavak ezek. Ha pl. email jelszóról van szó, amit távoli gépről próbálgatsz, akkor a szűk keresztmetszet a net sávszélessége is lehet. Bizonyos kódolások erősen erőforrás igényesek lehetnek, illetve bizonyos esetekben szándékos várakoztatás is lehet a dologban. Érdemes lenne tudni, hogy minek a jelszavai ezek, mert lehet, hogy van más módszer is rá.
Köszi!
Nagyon korrekt választ adtál.
Végül is letöltöttem egy filmet - gondoltam megnézem, nyilván csak saját célra - és a barom, aki felrakta betömörítette egy RAR archívumba, csak akkor nem tudom, minek teszi fel, ha nem ad hozzá jelszót. A magyarázat persze egy txt file-ban van megadva: "ne kerüljön illetéktelen kezekbe". Mintha egy eredeti Mona Lisa-ról lenne szó, basszus...
A minőség sem túl jó szerintem (a méretből adódóan), szóval nem tudom, megéri-e.
Azért köszönöm, hogy foglalkoztál a kérdéssel!
A jelszó nem véletlen. Több racionális ok is szól a jelszóval védett anyagok megosztása mellett.
Egyes fájlmegosztó oldalak képesek vizsgálni a feltöltött tartalmat, alkalmasint azonosítani tudják a jogvédett anyagokat. Így, hogy jelszóval van védve, nem képesek vizsgálni a tartalmat.
Illetve esetleges jogi következmények esetén is nehezebb a jelszóval védett anyagot visszafejteni. (Gondolják a feltöltők, holott azért nem lehetetlen.)
Harmadrészt kötheti a usert egy adott honlaphoz szolgáltatáshoz. A jelszó csak az adott oldalon szerepel első körben, így muszáj megkeresni a fájl letöltése után az adott oldalt, esetleg regisztrálni rá, stb… Lehet, hogy te rátalálsz a google.com-al, vagy más módon, de a feltöltőnek az volt a célja, hogy a www.sajátwarezoldalam.hu -ra regisztrált felhasználók érjék csak el az anyagot.
Ilyenkor felesleges a jelszófeltöréssel próbálkozni, hacsak nem valami nagyon egyedi dologról van szó.
- Egyrészt érdemes rákeresni az adott oldal URL-jére, ahonnan letöltötted, mert így meg lehet találni, hogy hol hivatkoznak erre a fájlra, aminél valószínű ott a jelszó is.
- Másrészt számtalan torrent oldal, fájlmegosztó alkalmazás létezik, ahonnan szintén le tudod ugye tölteni.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!