Fórum témák

» Több friss téma
Fórum » USB Hardwarekulcs
 
Témaindító: Szpidi, idő: Feb 13, 2007
Lapozás: OK   2 / 3
(#) Programmer válasza Szpidi hozzászólására (») Feb 14, 2007 /
 
Ott az előző hsz-em!
(#) alex.taylor hozzászólása Feb 14, 2007 /
 
http://www.rohos.com/ ezen az oldalon van 1 progi, és a pendrive-ra menti a felhasználó nevet és a jelszót,de még ezt is védheted PIN kóddal.
Működés: ha mindent beállitottál utánna ha kiveszed a pendrive-ot akkor autómatikusan lezárja a gépet.ha vissza teszed akkor pedig autómatikusan bejeletkezik.az egésszel aza probléma hogy 15 nap után lejár a licensz,asjna még nem találtam hozzá serial számot ,meg cracket sem,de az amúgyis törvényellenes.használd egészséggel a progit
(#) Szpidi válasza Programmer hozzászólására (») Feb 14, 2007 /
 
Akkor szerinted minden USB-s pen drive-nak van egy ilyen teljesen különböző azonosítója?
Ha bemegyek akármelyik boltba, veszek egy komlett szériát (pl. 100db-ot), akkor annak mindegyiknek egyedi lenne ez az azonosítója?

Mert én elsősorban ezen gondolkodtam, de talán pont a prog.hu-n említették, hogy ezzel lehetnek problémák...

De most megint utánanézek. (Persze annak is, hogyan tudom ezt kiolvasni.)

Nem tudod véletlen a topic címét a prog.hu-n?
(#) Szpidi válasza alex.taylor hozzászólására (») Feb 14, 2007 /
 
Nekem nem a gépet kellene lezárni, csak az én progimat. Azért bizti hátsón lennél billentve, ha esetleg más jogokat is korlátoznék...
(#) Programmer válasza Szpidi hozzászólására (») Feb 14, 2007 /
 
Konkrét topicot nem tudok. Elméletileg minden eszköznek (nem csak pendrive nak) van egy ilyen száma. Képzeld el ha van két teljesen azonos pendrivod (talán megtörténhet de nem hiszem) akkor a gépen két hardware nek is ugyanaz lesz a hardware idja. Ez pedig biztos valamilyen I/O conflicthoz vezetne. Tehát sztem naggggyon kicsi a valószínűsége annak, hogy pont ugyanolyan számozásű pendrive al próbálkozik valaki. De ha biztosra mész belekalkulálod a Vendort meg a revizió számot amit szintén ki lehet olvasni akkor az esély 0ra csökken. Nézd meg a képen a bekarikázás előtt vannak.
Egy link
http://www.microsoft.com/whdc/device/input/HID_HWID.mspx
(#) lgyk válasza Programmer hozzászólására (») Feb 14, 2007 /
 
Nem vagyok otthon a pendriveok lelkivilágában, de érzésem szerint alkatrésztakarékossági megfontolásból az ID számokat ugyanaz a flash chip tárolja, mint az adatokat, csak a rendszerterületen (ugyanúgy, mint ahogy a telefon flash memóriája tartalmazza a firmware-t, felhasználói memóriát, IMEI számot egyaránt). Tehát a chip tartalmának 1:1 másolásával hamisítható lesz a védelem...
(#) Szpidi válasza Szpidi hozzászólására (») Feb 14, 2007 /
 
Bocs, én lennék hátsón billentve, az előbb elírtam
(#) Programmer válasza Programmer hozzászólására (») Feb 14, 2007 /
 
Jobban utánanéztem és ez a védelem nem megbízható. Ugyanis egy firmware frissítés megváltoztatja ezt az azonosítót és lőttek az egésznek. Prog.hu-n keress rá a tudástárban USB re van egy két topic ahol ezt rongyosra rágták.
(#) Szpidi válasza lgyk hozzászólására (») Feb 14, 2007 /
 
Én is valami ilyesmit hallottam. Hogy azt tudják másolni
(#) Programmer válasza lgyk hozzászólására (») Feb 14, 2007 /
 
Így van 1:1 másolással. De ezt a "kiddie láma" felhasználó nem tudja. Mindemelett ez a pendrivos védelem ténleg nem megbízható, esetleg arra jó hogy a eltíltsd a gép elől az otthoniakat.
(#) Programmer hozzászólása Feb 14, 2007 /
 
Szerintem két lehetőséged van:
1. Veszel PIC et és az elektronikusokk megmondják hogyan lehet belőle eszközt gyártani.
2. Szoftveresen véded a programodat.
(Igazából most mi a cél? Szoftver védelme valamilyen módon vagy mindenképp vmilyen hardware kulcsot akarsz? Ha csak a védelem a fontos, mindenképp ajánlom a tiszta szofftveres megoldást. Habár így nem lesz feltörhetetlen, ha komolyan titkosítod nehéz lesz egy crackernek is feltörni. A Delphinek vannak kompononensei mellyel tudsz ien enkódolást/dekódolást végezni. Plusz matematikai algoritmusok de erről is kismillió leírást találsz a neten. Ajánlom figyelmedbe a torry.net oldalt, vannak rajta ingyenes komponensek is, amelyek elvégzik ezt az enkódolást pár klikkből. )
(#) Szpidi válasza Programmer hozzászólására (») Feb 14, 2007 /
 
Tulajdonképp van egy harmadik lehetőség is 1+2=3

Na de visszatérve a valóságba. Azt hiszem, amennyire megismertem a PIC-et, szeretnék vele foglalkozni. A konkrét megoldás ez esetben azt hiszem bonyolultabb, de a közben szerzett ismereteket meg még egy csomó dologra tudnám hasznosítani.
Szóval próbálunk eszközt gyártani. Remélem kapok segítséget.

Akkor a következő a kérdés:
Milyen úton jutok el az általam programozott USB-s "hardwarekulcs"-ig?

Összefoglalom: Semmim sincs. Se égető, se tapasztalat. De csak a pesszimisták látják problémásnak az ilyen helyzetet. Én úgy fogom fel, hogy még nem vagyok tévúton

Szerintetek PIC égetőt érdemes csinálni, vagy, ha már foglalkozik vele az ember, akkor a potyo által publikált ICD2-t? Végülis nem lenne hátrány, ha lenne debug...
Nekem mindenképp USB-s kell, csak azom van.

(#) lgyk válasza Szpidi hozzászólására (») Feb 14, 2007 /
 
Több lehetőség van: építesz egy egyszerű soros égetőt, majd keresel egy soros porttal rendelkező gépet, amihez van annyi jogosultságod, hogy a programozást elvégezd. Ezzel felprogramozod az ICD-be való PIC-et, és az már megy USB-ről is.

Másik lehetőség egy USB-s égető építése. Itt találtam valami USB-s égetőszerűséget, de kérdezd meg az okosabbakat, hogy van-e egyszerűbb megoldás, illetve alkalmas-e az ICD-be való PICek felprogramozásához.

Letöltés: k149.pdf

Mindenképpen egy programozóval kell kezdeni, ha nem tudsz megkérni valakit, hogy programozza fel a PICet a debuggerhez...
(#) Inhouse hozzászólása Feb 15, 2007 /
 
Biztos, hogy kell ez a plussz költséget igyénylő USB kulcsozás? Ha valóban nem széles körben elterjedt programról van szó, akkor kicsi lesz az esélye, hogy ráállnak a hackerek. Akik ha kell a hardverkulcsot is kiiktatják a rendszerből a crack-el, szerintem.
Elegendő lenne egy okos kulcs, ha nem visszafejthető a forráskód. Képezz egy egyedi algoritmussal egy kódot a futtató számítógép bizonyos azonosítójaiból, pl. hdd serial, memória mérete, felhasználó neve, pci id-k, alaplap id... Ha valaki futtatni akarja a programodat, ezt a kódot látja, bediktálja neked, erre te egy kis kódképző prg-vel adsz neki egy visszakódot, amit a user a prg-be begépelve az fut. De csak és kizárólag nála! Sehol máshol nem fog ez a kód működni, mivel kicsi a valószínűsége, hogy teljesen ua. hardver és felhasználó kerül újra képbe. Persze vezetned kell egy listát a felhasználókról, de gondolom ez amúgy is kell. Belerakhatsz a kódba működési intervallumot is, vagy akár regisztrálási időt is, csak a generálást követő 24órában él a kód...csak a képzelet szab határt. Ha jól csinálod, ua. előnyei lesznek, vagy több, mint a hardverkulcsnak. Nem kell többezer Ft-ot költeni a kulcsokra, nem kell a felhasználónak dugdosni (az USB alaplapi tüskesorról történő utólagos, hibás kivezetésénél sok USB elvérzett már a fordított polaritástól).
Mivel programot tudsz írni, gondolom nem okoz gondot egy ilyen megoldás...

Üdv
Inhouse
(#) szabi_o hozzászólása Feb 15, 2007 /
 
Szerintem is teljesen felesleges túl sok energiát fektetned a hardver részbe. Egy valamire való cracker amúgyis egy jó nagyot nevet, majd azonnal a szoft részének áll neki.
Amit te akarsz az tényleg csak arra jó, hogy a lámákat egy mellbevágó meglepetés érje, húúú de profi.
Abban az esetben jó volna, ha senki sem férhetne hozzá sem a hardhoz (ez modjuk nyílván való egy védett mikrovezérlőnél, smart kártyánál...), sem a szofthoz, mint pl egy bank autómata...
(#) unicorn válasza Szpidi hozzászólására (») Feb 15, 2007 /
 
Szerintem egy viszonylag egyszerű megoldás, ha USB-s Bluetooth eszközt használsz. Minden Bluetooth eszköznek van egy azonosítója (asszem 6x8 bit, nem biztos), amely egyedi, teljesen biztos, hogy nincs mégegy ugyanilyen. Ezt Windows-ból ki lehet olvasni a Bluetooth API-n keresztül. Egy ilyen eszköz 2100 Ft körül kezdődik, a hatótávolsága, minősége teljesen mindegy, hiszen nem kommunikációra akarod használni.
(#) Lucifer hozzászólása Feb 15, 2007 / 4
 
Üdv!
Gondolom itt a MAC címre gondoltál. Ezt sem túl bonyolult dolog megváltoztatni. Lásd: W-LAN MAC filtering.
(#) dpeti válasza Lucifer hozzászólására (») Feb 15, 2007 / 4
 
ne ilyen egyedi eszközazonositokban gondolkodjatok... ezeket mind lehet emulalni
(#) Programmer hozzászólása Feb 15, 2007 /
 
Ahogy Inhouse is írta, ha sikerül is komoly hardware-t építeni PICből a szoftvered ami ellenőrzi védtelen. Ezzel még semmi sincs megoldva.
Ha Delphiben dolgozol a következő megoldás elegendő biztonságot nyújt, a "kezdő" crackerek sem fogják tudni feltörni. Az exédet encode-olod például a Cytadel csomaggal.(Ez egy kiegészítő a Delphihez ami beépül a fejlesztőkörnyezetbe, nagyon egyszerű használni). A jelszavakat pedig egy enkódolt fileban tárolod. Egy fájl enkódolását a NMUUProcessor komponenssel tudod megoldani(FastNet paletta). Ezt is igen egyszerű használni és igen komoly enkódolást végez(természetesen dekódolást is). Ha további részletek is érdekelnek, az már nem elektronika de priviben beszálhetünk.
(#) dpeti válasza Programmer hozzászólására (») Feb 15, 2007 /
 
akkor olvasd el mégegyszer hogy hogyan is irtam a PIC-el valo megvalositast... :-/
Azt nem lehet ellenorzes kikerulessel atlepni
(#) Szpidi válasza Programmer hozzászólására (») Feb 15, 2007 /
 
Csak azért, hogy tiszta legyen mindenki előtt.

Egy client -server alkalmazásról van szó. (Akik nem ismerik úgy próbálják elképzelni, hogy a gépen fut a program, de az adatok egy másik gépen vannak, sőt a műveletek jó része a szerveren fut)

Azért szerettem volna első lépésben egy egyedi azonosítóval rendelkező eszközt, (pen drive, bluetooth, ibutton...), hogy annak az azonosítójával kódoljam a kommunikációt.
Mert nem az a fő gondom, ha a programot használják, az adatbázisban tárolt adatokat szeretném "elrejteni" az illetéktelenek elől. És lehetőleg csak előlük

Még mindig olyan rendszerben gondolkodom, aminek van fizikai megjelenése, és hordoz plussz információt, mert:
A szerverhez egyszerre több ember kapcsolódhat, különböző feladatkörökkel és jogosultsági szintekkel. Akinek van joga használni (akkor rendelkezik egy kulccsal, névvel, jelszóval) annak be kell tudnia lépni bármelyik a rendszerhez kapcsolt gépen.
Ha a proginak mindenhol ugyanaz lenne a jelszava, akkor be lehetne lépni bárkinek. Nyílt titok lenne. Ha meg minden gép kap másik jelszót, akkor honnan tudnám, az aktuális gép jelszavát??? (ha mondjuk nem a saját gépem elé ülök le)

A PIC azért tetszik, mert ha kiküldöm a PICnek az alapparamétereket, akkor az összeállítja és kódolja (mondjuk elshifteli ) a kérést amit a szervernek küldök (a felhasználónként egyedi akár "ugró"kód szerint). Mivel a szerver tudja hogy ki a felhasználó, tudja dekódolni és vissza.

Na ekkor megnézném azt a fazont, aki akár a delphi forráskód ismeretében is megoldja, hogy a szerver a megfelelően kódolt kéréseket kapja... Ha meg nem az jön, akkor a felhasználó kizárása. Egyre hosszabb időre.

De még nem 100%, hogy ilyen megoldás lesz. Minden ötletet meghallgatok, ki tudja, hátha van ennél sokkal egyszerűbb és jobb is.

Mindenkinek köszönöm az eddigieket is, és a következő hosszászólásokat előre is!
(#) Szpidi válasza dpeti hozzászólására (») Feb 15, 2007 /
 
Igen, dpeti, úgy néz ki, hogy az a megoldás áll a leg közelebb a szívemhez, amit Te (és Lucifer) ajánlottál. Elismerem, elsőre azt gondoltam, hogy hülye leszek egy másik számítógépet is gyártani mindenkinek... De most mégis ezen töprengek.

Csak azt tudnám, hogy miért úgy találták ki ezt a rendszert, hogy nem lehet a PIC-t USB-ről felprogramozni, addig, amíg nincs felprogramozott PIC-ed.

Még mindig nem tudom, hogy egy kezdő (aki még nem játszadozott PIC-cel) hogy tud elindulni, ha nem akar 10ezreket otthagyni a boltban égetőre, ámde csak USB hozzáférhető. Azt hiszem ezt a kérdést felteszem a gyártónak... Igazán lehetne egy olyan család, amelyik az alap programot tartalmazza, és egyszerűen csatlakozhatna a géphez. Akinek van égetője, az úgyis felülírná ezt a programot, ha nem kell neki...
(#) Lucifer válasza Szpidi hozzászólására (») Feb 15, 2007 /
 
Üdv!
Nem kell feltétlenül 10K-s égető ahhoz, hogy dolgozni tudj. Egy marék pár Ft-s alkatrészből is lehet égetőt építeni. Az, hogy működik-e meg majd kiderül. Ja és persze lehet a Microchiptől rendelni előre felprogramozott PIC-et. Tízezres tételek felett.
(#) Szpidi válasza Lucifer hozzászólására (») Feb 15, 2007 /
 
Van olyan kapcsolási rajz, amivel usb-n egy nem felprogramozott mezei 18F (mondjuk 2555 v. 4550) programozható? Ami biztos működik?

A Microchip is mókás. Nekem az elsőhöz kell program, a tízezrediket már én magam szeretném programozni...
Gondolom a nagy felhasználóknak sorozatíróik vannak, amik egyszerre többet is megsütnek...

Egy marék pár Ft-ot meg az időmet szívesen rááldozom, de pénzzel nagyon nem vagyok eleresztve.
(#) dpeti válasza Szpidi hozzászólására (») Feb 15, 2007 /
 
nos ahhoz hogy usb-vel programozz kell egy usbs égető... még a pickit2-ben is 18f2550-van egyszoval tyuk es a tojas esete forog fennt...
jobban jarsz ha veszel valahonnan egetot... pl pickit2 6e korul van most... vagy hasznaltan vkitol, vagy epitesz magadnak nem usbset...
(#) Szpidi válasza dpeti hozzászólására (») Feb 15, 2007 /
 
Nálam a nem USB kizárva. Azonkívül csak FireWire van a gépemben, arra meg szerintem még kevesebb megoldás van... (Nincs se soros, se párh portom... ezt hozta a fejlődés)
megnéztem a chipcadnál van :
PICkit 2 44-Pin Count Dem
PICkit 2 Debug Express
PICKit 2 starter
PICKit 2 programozó
Ezek miben különböznek és milyen kell nekem?
(#) dpeti válasza Szpidi hozzászólására (») Feb 15, 2007 /
 
Lehet külön kapni csak programozót, csak demonyákokat a programozóhoz, vagy a kettőt együtt (programozó+demo nyák)

PICkit 2 44-Pin Count Dem - ezen 16f917 van ami debuggolható pickit2-vel, de nincs programozo hozza
PICkit 2 Debug Express - ez uez csak programozoval sztem
PICKit 2 starter - ez programozo + regi nyak (16f690)
PICKit 2 programozó - ez meg csak programozo (neked ez kell)
(#) Lucifer válasza Szpidi hozzászólására (») Feb 16, 2007 /
 
Üdv!
A pickit2 nagyon jó kis kütyü, csak ajánlani tudom.

A szövegem lehet kicsit félrértetted. Kifejlesztessz egy programot, ami működik hibátlanul. Kell belőle neked tizenpárezer darab. Ekkor megoldható, hogy a cuccost már a gyártósoron felprogramozzák.

Ez az USB-s bootloadolás a köv. képpen működik:
Van a bootloader program ezt egy normál égetővel felprogramozod a PIC-re. Beleszórod a dpeti féle kapcs. rajzba, megnyomod a BOOT gombot, majd reseteled. Innentől a PDUSB.exe-vel lehet rátölteni a programot. Viszont az MPLAB-ban egy különleges lkr fájlt kell használni, különben felülírhatod magát a bootloadert.
(#) dpeti válasza Lucifer hozzászólására (») Feb 16, 2007 /
 
huh boccs, ezeket el is felejtettem linkelni:
ez a kapcs rajz végülis ennek egy nagyon lecsupaszított verziója, a PICDEM full speed USB-nek a bootloaderét használhatod hozzá, itt van minden, ami letölthető hozzá:
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nod...163025

itt megtalálható a bootloader leforditva, meg forráskóddal is, akkor találsz példát Demo02 néven arra is, hogy hogyan kell úgy megírnod a programot, hogy a megfelelő címen kezdődjön, és ne a bootloaderre akarjon rátelepedni.
A demo01-hez kellenének kiegészítő perifériák, de az itt most nem lényeges, van egy olyan ami USB-CDC soros portot valosit meg, meg olyan is ami egy USB-HID egeret, és annyit csinal, hogy körben mozgatja az egérmutatót
(#) Inhouse válasza Szpidi hozzászólására (») Feb 16, 2007 /
 
Idézet:
„sak azért, hogy tiszta legyen mindenki előtt. Egy client -server alkalmazásról van szó. (Akik nem ismerik úgy próbálják elképzelni, hogy a gépen fut a program, de az adatok egy másik gépen vannak, sőt a műveletek jó része a szerveren fut) Azért szerettem volna első lépésben egy egyedi azonosítóval rendelkező eszközt, (pen drive, bluetooth, ibutton...), hogy annak az azonosítójával kódoljam a kommunikációt. Mert nem az a fő gondom, ha a programot használják, az adatbázisban tárolt adatokat szeretném "elrejteni" az illetéktelenek elől.”


Akkor miért nem kódolod az adatbázis adatait? Csak a szoftver tudja visszafordítani és kész...


Idézet:
„Ha a proginak mindenhol ugyanaz lenne a jelszava, akkor be lehetne lépni bárkinek. Nyílt titok lenne.”


Eddig szó sem volt jelszóról...vagy de? A szofver regisztációjánál kaphat egy azonosítót a gép és a belépési jelszóval pedig a felhasználót azonosítod. Így lehet különböző jogokat adni. Mivel az adat titkosan jön, nem tudják kívülről megnézni. Csak a szoftver tudja dekódolni. Valószínű nem fogják úgy törni, mint a milliós darabszámú elterjedt, drága szoftvereket...

Még mindig az a véleményem, hogy túlbonyolítod és nem ez a helyes megoldás...

Mondjuk az jó, hogy most már leírtad, hogy tulajdonképpen mit is akarsz védeni...

Üdv
Inhouse
Következő: »»   2 / 3
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem