» »

Identifikacija naprav z branjem pokvarjenih celic

Identifikacija naprav z branjem pokvarjenih celic

Celica

Slo-Tech - Markus Jakobsson za Security Week piše o novem načinu ugotavljanja in zagotavljanja istovetnosti elektronskih naprav, ki v principu preprečuje krajo identitete. Nov prstni odtis se nahaja v NAND-bliskovnih čipih (flash), ki jih dandanes v takšni ali drugačni izvedenki najdemo v skoraj vsej potrošni elektroniki.

Znano je, da imajo čipi napake in da se z rabo celice počasi kvarijo. Problem je za komercialno rabo že dovolj dobro rešen, tako da mehanizmi za popravljanje napak polovijo te napake, jih popravijo in okvarjene celice označijo kot neuporabne. Ideja je, da bi se pokvarjene celice uporabile za identifikacijo. Programska oprema bi določila nek sektor, v katerega bi namenoma tako dolgo pisala podatke in jih brisala, da bi zadostno število celic storilo konec. Ta sektor bi bil za zapis podatkov neprimeren.

Identifikacija bi se potem vršila takole. Programska oprema bi vse bite v sektorju postavila na 0, jih prebrala, nato jih postavila na 1 in spet prebrala. Dobljeni vzorec bo zaradi pokvarjenih celic unikaten in bi enolično identificiral komponento. In če bi nepridiprav identiteto pridobil, je zaradi fizičnih lastnosti bliskovnega pomnilnika ne bi mogel podvojiti.

13 komentarjev

Pyr0Beast ::

Ker hw hash ni dovolj in je treba uničevati čipe ?

Tudi ne vem zakaj bi bila taka okvara statična. Naredi 20.000 ciklov in uniči celico. Nato pa spet piše in bere v isto celico in pričakuje se da bo rezultat enak ?

Kaj te matra da 'bliskovni pomnilnik' ne emuliraš na FPGA-ju z nekaj rama ?
Some nanoparticles are more equal than others

Good work: Any notion of sanity and critical thought is off-topic in this place

Zgodovina sprememb…

Lonsarg ::

Sej to JE hw hash. Sam pač poceni za narest, par kilobajtev NAND pomnilnika, ki ga rabiš za tole je praktično zastonj. kak specializiran hw hast lahko gre v tisoče, sploh če ni masovne proizvodnje.

Isotropic ::

se nebi scasoma pokvarile tudi dodatne celice (ce bi za vsak ident pisal in bral, kot pise zgoraj)?

Pyr0Beast ::

Samo finta je, da ni statičen.
Ti ne boš in ne moreš vedeti ali se bo celica naslednjič popravila ali bo crknila.
Some nanoparticles are more equal than others

Good work: Any notion of sanity and critical thought is off-topic in this place

Isotropic ::

ali se bo celica naslednjič popravila ali bo crknila.
mislis prebrala ali crknila

Pyr0Beast ::

Ne, popravila in podala zapisano vrednost ali ostala pokvarjena in venomar dajala 0 ali 1.
Spet, to zna biti odvisno celo od temperature.
Some nanoparticles are more equal than others

Good work: Any notion of sanity and critical thought is off-topic in this place

Spura ::

Lol kako neumna ideja. Kot so ze rekli, s pisanjem v te pokvarjene celice jih spreminjas, torej se identiteta spreminja.

uio ::

joj no
Crknjene celice bi dajale veno 0 in 1. (konstantno neglede na prepisovanje)
S pepisom 1 na vseh bi dobili 0 v sklopu celice, s prepisom 0 pa 1 v sklopu, ki bi pa bile v naprej znane za določeno identiteto kartice.
Ker je točno določeno strukturo v kartici skoraj nemogoče samo uničiti na točno določen bit, bi bilo take kartice skoraj če ne nemogoče ponarediti, ker da bi ponaredili zapis crknjenih celic, bi morale vsi biti crknit točno v enakem stanju.

Čeprov meni se zdi problematično to da ti čipi tudi sami po sebi počasi crkujejo brez pomoči, kaj bi se zgodilo z identiteto, ko bi se pokvarilo še nekaj dodatnih bitov?

Afo ::

Identifikacija bi se potem vršila takole. Programska oprema bi vse bite v sektorju postavila na 0, jih prebrala, nato jih postavila na 1 in spet prebrala. Dobljeni vzorec bo zaradi pokvarjenih celic unikaten in bi enolično identificiral komponento.

Ponarejanje: preberemo neko "zakodirano" kartico -> identificiramo "pokvarjene" celice -> na novi kartici uničimo celice na istem mestu = imamo kartico, ki je kopija prvotne.

Torej ne držita ti dve trditvi:
... o novem načinu ugotavljanja in zagotavljanja istovetnosti elektronskih naprav, ki v principu preprečuje krajo identitete...
... In če bi nepridiprav identiteto pridobil, je zaradi fizičnih lastnosti bliskovnega pomnilnika ne bi mogel podvojiti...

Heh nepridiprav ne bi mogel podvojiti. Mislim a res? Česa se pa ne da skrekat?
Bolje biti mlad in neumen, kot samo neumen!

WarpedGone ::

Tole je pogruntal nekdo nad 50 let, ki ima še vedno velike probleme z dojemanjem modernega sveta.
Zbogom in hvala za vse ribe

Lonsarg ::

Afo je izjavil:

Identifikacija bi se potem vršila takole. Programska oprema bi vse bite v sektorju postavila na 0, jih prebrala, nato jih postavila na 1 in spet prebrala. Dobljeni vzorec bo zaradi pokvarjenih celic unikaten in bi enolično identificiral komponento.

Ponarejanje: preberemo neko "zakodirano" kartico -> identificiramo "pokvarjene" celice -> na novi kartici uničimo celice na istem mestu = imamo kartico, ki je kopija prvotne.


Ne gre tako, ti lahko z programom neprestano prepisuješ iste celice, da se bodo iste uničile, ne moreš pa nikakor vplivat na to, ali bodo imele vrednost 1 ali 0, ko se bodo pokvarile, torej edini način hekanja taka zaščite je v prenosu podatkov samih, tam se pa morda da kaj narediti, ponavadi je tako, da zaščite ne padejo v svojem bistvu, ampak v podpornih protokolih za zaščito:)

Težavo, da se lahko še kakšna dodatna celica pokvari, pa rešiš z nastavitvijo, da 1% odstopanja še dovoliš. Ali pa da dodatne pokvarjene celice ignoriraš, za enako identiteto smatraš, če so prvotno pokvarjene celice v pravem stanju(0 ali 1)

fiction ::

Res je, da fizično zelo težko narediš flash pomnilnik z enakimi napakami kot original. Ampak vedno pa lahko narediš neko emulacijo, ki se bo obnašala točno tako, kakor ti hočeš. Kako potem naprava, ki bere, razlikuje s kakšnega pomnilnika bere (fejkaš lahko tudi dostopni čas itd.)?

Če prav razumem je ideja tukaj podobna kot pri kvantni kriptografiji. Z meritvijo uničiš stanje, ki ga zato ne moreš točno skopirati.

Pri tej metodi je pa za to, da ugotoviš, katera celica je pokvarjena, potrebno pisanje in pisanje teoretično uniči še kakšno celico, ki je ravno na "meji". Torej to katere celice so kako pokvarjene (vedno v 1 ali vedno v 0) je del stanja. Pri identifikaciji lahko preveriš, če so res prave celice pokvarjene. S tem, ko probaš koliko je še dodatnih pokvarjenih celic (in po možnosti tako še kakšno pokvariš) pa ugotoviš, da ni kdo že pred tabo ugotavljal katere celice so pokvarjene. Sigurno obstaja kakšna statistika, da se po n pisanjih celica pokvari s tako in tako verjetnostjo. Če dobiš ob preverjanju 1 % dodatnih pokvarjenih celic je kul, če več pa ključu ne zaupaš več.

fiction ::

Slabost je pa to, da prej ali slej crkne cel blok in moraš začeti uporabljati novega, kar naredi vse skupaj malo nepraktično. "Še 3 logine pa bo treba kupit nov ključ..." :)

Hm po branju originalnega članka se sprašujem, če je metoda res tako zamišljena kot sem napisal. Ali je metoda res kul in je pač na SecurityWeek bolj enostavno napisano ali pa je bolj lame. ID-ja NAND pomnilnika sicer res ne moreš skopirati direktno v drug NAND pomnilnik (lahko narediš napake na istih mestih, ne pa točno določenih napak na istih mestih), samo zakaj pa mora biti tisto kamor kopiraš ravno NAND pomnilnik...

To pride najbrž v poštev za kakšne naprave, kjer ne moreš fizično do pomnilnika (če razdreš ohišje se stvar uniči), lahko pa programsko bereš in pišeš.

Zgodovina sprememb…

  • spremenil: fiction ()


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Ponastavitev Androida na tovarniške nastavitve ne izbriše vseh podatkov

Oddelek: Novice / Varnost
1514692 (8314) Bye
»

Formatiranje z drugega planeta

Oddelek: Novice / Znanost in tehnologija
4413189 (10104) keber
»

Pomoč (laptop - baterija - ugašanje)

Oddelek: Pomoč in nasveti
142560 (2248) hojnikb
»

Identifikacija naprav z branjem pokvarjenih celic

Oddelek: Novice / Zasebnost
133742 (3080) fiction
»

Objavljen predlog Pravilnika o opremi in vmesnikih za zakonito prestrezanje komunikac

Oddelek: Novice / Zasebnost
474842 (3235) BigWhale

Več podobnih tem