On Amazon.it: https://www.amazon.it/Complete-Concordances-James-Bible-Azzur/dp/B0F1V2T1GJ/


Enginyeria inversa - Viquipèdia

Enginyeria inversa

De Viquipèdia

La enginyeria inversa és el procés d'analitzar quelcom en detall (un accessori mecànic, un component elèctric, programari informàtic, etc.) amb la fi de determinar com està fet, què el fa funcionar i com ha estat fabricat, amb la intenció de construïr un nou enginy o aplicació que faci exactament el mateix que el dispositiu examinat, però sense copiar res de l'original.

Aquest mètode és denominat enginyeria inversa perquè inverteix el procés natural de la enginyeria, que consisteix en utilitzar dades tècniques i plantejar idees per a aconseguir un resultat final adequat. En l'enginyeria inversa es parteix d'un producte acabat per a indagar sobre el seu funcionament intern.

Taula de continguts

[edita] Tipus i aplicacions de la Enginyeria Inversa

La enginyeria inversa és sovint utilitzada en l'àmbit militar amb l'objectiu de copiar la tecnologia d'altres nacions; dispositius, informació o parts d'enginys que han estat obtinguts als camps de batalla per soldats o per operacions de la intel·ligència militar. Va ser molt utilitzada durant la Segona Guerra Mundial i la Guerra Freda.

Per a components mecànics, les tècniques modernes en enginyeria inversa inclouen escanejat làser— l'ús de rajos làser per a escanejar la superfície de peces de qualsevol forma física per a crear una imatge precisa de la superfície de la peça. Aquest procés crea una sèrie de talls que, un cop combinats, poden representar la superfície de l'objecte en una simulació per ordinador, o, utilitzant una impressora 3D, es pot crear una rèplica física de l'objecte.

La enginyeria inversa sobre sistemes de maquinari o programari que es fa per a millorar interoperabilitats (per exemple, per a suportar formats d'arxiu o perifèrics de maquinari indocumentats), és considerada legal, tot i que els propietaris de patents no hi estan d'acord normalment i rebutgen qualsevol forma d'enginyeria inversa sobre els seus productes.

Altres objectius de l'enginyeria inversa inclouen auditories de seguretat, eliminació de la protecció contra còpia ("cracking"), evitar restriccions d'accés presents normalment en l'electrònica de consum, personalització de sistemes interns (com sistemes d'administració de motors de vehicle), activació de característiques addicionals en maquinari de baix cost (com en determinades targetes gràfiques), o fins i tot mera satisfacció de la curiositat.

La enginyeria inversa també és utilitzada per empreses per a examinar productes de la competència. És emprada per a analitzar, per exemple, com funciona un producte de la competència, què fa, qui ho manufactura, de quins components consisteix, estimar costs, identificar potencials infraccions de patents, etc.

Finalment, la enginyeria inversa és emprada sovint perquè la documentació d'un dispositiu particular s'ha perdut (o mai ha sigut escrita), i la persona que el va construïr ja no treballa a la companyia. Els circuits integrats han sigut dissenyats normalment en sistemes propietaris i ja obsolets, la qual cosa significa que la única manera d'incorporar funcionalitat sobre nova tecnologia és emprant la enginyeria inversa al xip existent i després redissenyar-lo.

[edita] Enginyeria inversa de programari

[edita] Programari Binari

Aquest procés és sovint anomenat Enginyeria de codi invers. Com a exemple, la decompilació dels binaris per a la plataforma Java pot dur-se a terme utilitzant ARGOuml.org. Un cas famós d'enginyeria inversa és el que es va portar a terme creant la primera BIOS no implementada per IBM, creada per la indústria dePCs Clònics.

El programari Samba, que permet als sistemes amb sistema operatiu diferent de Microsoft Windows compartir arxius amb aquests, és un exemple clàssic d'enginyeria inversa sobre programari, ja que el projecte Samba ha tingut d'aplicar aquest mètode per a conèixer informació no publicada sobre com funciona el sistema de compartició d'arxius de Windows, per a poder emular-lo en ordinadors amb altres sistemes operatius. El projecte WINE fa el mateix per a la API de Windows, i OpenOffice.org també ho fa amb els formats d'arxiu de Microsoft Office.

[edita] Programari Binari: tècniques

La engineria inversa de programari es pot dur a terme utilitzant diferents mètodes. Els tres mètodes principals son:

  1. Anàlisi mitjançant l'observació de l'intercanvi d'informació, molt usat en enginyeria invers de protocols, que implica utilitzar Analitzador de busos i sniffer de paquets, per exemple per a escoltar dins un bus d'ordinador o en una xarxa d'ordinadors, revelant el trafic de dades que hi passa. El comportament al bus o a la xarxa pot ser analitzat per a produïr una implementació independent que replica el comportament de la xarxa. Això és especialment bo per a fer enginyeria inversa de drivers de dispositius. De vegades l'enginyeria inversa en alguns sitemes troba una gran ajuda en eines deliberadament introduïdes pel fabricant, ja que pot ajudar-lo a millorar la seguretat del dispositiu fabricat.
  2. Desassemblatge utilitzant un desassemblador, on el llenguatge màquina del programa és llegit i traduït a llenguatge assemblador. Aquesta tècnica funciona en qualsevol programa però pot portar força temps, especialment per algú no avessat al llenguatge assemblador.
  3. Decompilació utilitzant un decompilador, un procés que intenta, amb resultats variables, recrear el codi font en algun llenguatge d'alt nivell per a un programa només disponible en codi binari o en bytecode.
Static Wikipedia March 2008 on valeriodistefano.com

aa   ab   af   ak   als   am   an   ang   ar   arc   as   ast   av   ay   az   ba   bar   bat_smg   bcl   be   be_x_old   bg   bh   bi   bm   bn   bo   bpy   br   bs   bug   bxr   ca   cbk_zam   cdo   ce   ceb   ch   cho   chr   chy   co   cr   crh   cs   csb   cv   cy   da   en   eo   es   et   eu   fa   ff   fi   fiu_vro   fj   fo   fr   frp   fur   fy   ga   gd   gl   glk   gn   got   gu   gv   ha   hak   haw   he   hi   ho   hr   hsb   ht   hu   hy   hz   ia   id   ie   ig   ii   ik   ilo   io   is   it   iu   ja   jbo   jv   ka   kab   kg   ki   kj   kk   kl   km   kn   ko   kr   ks   ksh   ku   kv   kw   ky   la   lad   lb   lbe   lg   li   lij   lmo   ln   lo   lt   lv   map_bms   mg   mh   mi   mk   ml   mn   mo   mr   ms   mt   mus   my   mzn   na   nah   nap   nds   nds_nl   ne   new   ng   nl   nn   nov  

Static Wikipedia (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia February 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu