Hoofdcategorieën
Device Settings

Nieuwe methode om klonen van chips tegen te gaan

Door Harm Hilvers, maandag 4 oktober 2004 21:03
Bron: New Scientist, submitter: Standeman, views: 16.570

Het is mogelijk om computerchips te klonen door van ieder circuit uit een chip na te gaan wat het doet en deze functie vervolgens op dezelfde wijze in een nieuwe chip te implementeren. Wanneer dit volledig op de juiste manier gedaan wordt, ontstaat een kopie van de chip die door apparaten niet van echt te onderscheiden is. New Scientist bericht over een techniek waarmee het moeilijker, volgens de betrokken onderzoeker zelfs onmogelijk, gemaakt wordt om een chip te kopiëren. Srini Devadas, onderzoeker bij het Massachusetts Institute of Technology in Boston, heeft een ontwerp uitgedacht waarbij software de hardware 'aan een onderzoek onderwerpt' om te controleren of de gebruikte chip wel echt is. Kleine variaties in het gebruikte materiaal betekenen al dat twee chips niet identiek zijn. Volgens Devadas kunnen deze foutjes gebruikt worden om een unieke code te genereren op basis van de chip zelf.

ChipTransistors op een chip zijn met elkaar verbonden via aluminium of koperen banen met een breedte van enkele honderden nanometers. Deze breedte is onder andere afhankelijk van de temperatuur en druk tijdens het productieproces. Door kleine verschillen in de temperatuur en de druk is niet iedere chip gelijk. Een bredere verbinding laat een signaal sneller door dan een smallere. Devadas wil chips uitrusten met een speciaal circuit dat deze verschillen opmerkt en gebruikt om een unieke code te genereren. Wanneer deze code in combinatie met beveiligingssoftware gebruikt wordt, kan ervan uitgegaan worden dat de omgeving veilig is. Chips die gebruikmaken van deze functie zijn veel moeilijker te kopiëren, waardoor de kans op misbruik aanmerkelijk kleiner is. Het is namelijk onmogelijk om de fysieke kenmerken van de chip exact na te maken.

Volgende 21:58 Meer informatie over de verschillende nForce 4-chipsets
Vorige 16:58 Interview met chief developer van Mozilla Firefox
Advertentie

Reacties

«  1  2  3  »

Ik voorspel hier een grote toepassing voor DRM, zodat bijvoorbeeld de software in een film kan controleren of de videospeler geen kopieën toelaat.

In je haast om een first post te behalen heb je waarschijnlijk niet begrepen waar het bericht over gaat.

DRM heeft er namelijk helemaal niets mee te maken. Het gaat om het beveiligen van chips tegen reverse-engineering.

Ik vraag me af in hoeverre variaties binnen het productieproces van producent A verschillen van de variaties binnen het productieproces van producent B. Ook het gedeelte van de chip dat de controle van de chip parameters doet is natuurlijk na te maken. Het lijkt me niet onwaarschijnlijk dat je met een beetje meer geld ook dit circuit zo kunt aanpassen dat je de parameters van je eigen proces kunt gebruiken voor een unieke (geldige) code.

Ook is het hele systeem natuurlijk geheel te omzeilen door het betreffende deel van de chip niet te kopieren.

Kortom; Ik denk dat het voor een kwaadwillende producent en een goed product dat gekopieerd dient te worden, altijd mogelijk blijft om delen van de chip te gebruiken.

Sorry maar het is wel degelijk een 100% DRM item.
Een gekloonde chip heeft in een apparaat meestal als doel bepaalde beveiligingen te omzeilen (bijv modchips) .
Door nu een chip een fingerprint te geven gebaseerd op hardware-eigenschappen zoals delays resonantie-effecten etc die controleerbaar zijn m.b.v. software is de hard en software fysiek aan elkaar te koppelen. Een apparaat met een modchip is zo te blokkeren. Zie originele artikel. .-.-.

Een gecloonde chip ondervangt uiteraard die hardware implementatie meuk. De software krijgt dan altijd het gewenste antwoord. Voor DRM toepassingen heb je dus andere technieken nodig om reverse engineering tegen te gaan. Zonder aanvullende hardware technieken is dit tamelijk ongeschikt voor beveiligingstoepassingen.

Zo raar is die firstpost niet.. lees http://www.againsttcpa.com maar eens door. Als TCPA VOLLEDIG is geimplementeerd in de hardware is de enige manier om het te omzeilen het plaatsen van een gekloonde chip (die bv. onbeveiligde data afgeeft om op te slaan). Deze beveiliging kan dit geheel helpen te voorkomen. Juist het pro-DRM volk spreekt dit aan!

Een verbouwde TCPA chip is geen 100% gekloonde chip. Het klonen van chips is probleem wat veel meer is dan DRM. Als Intel met pijn en moeite en voor miljoenen een chip ontwikkeld (zeg de itanium 3) dan kan iemand die hem namaakt een legale kopie op de markt brengen. Of (een voorbeeld uit de oertijd) je zet een paar mensen op een IBM bios, maakt het na en noemt het een Compaq. Hopla de IBM kloon (waar 90% van de mensen op werkt) is geboren) Het tegengaan van het klonen van chips heeft dus veel belangrijker toepassingen dan enkel DRM.

Dat het de mensen aanspreekt die voor DRM zijn, (oftewel, mensen die voor het betalen van de mensen die producten maken zijn. DRM verhindert het kopieren voor thuisgebruik namelijk niet echt. En zeker niet per definitie! ) is wel logisch. Als je vindt dat men andermans techniek en ideeen niet zomaar mag jatten, vind je technieken die de rechten van rechthebbende beschermd zonder legale gebruikers ernstig lastig te vallen ook geen probleem. Echter, ik hoop dat er ook mensen zijn die tegen de huidige DRM systemen zijn maar hier wel het nut van inzien.

Maar op tweakers? Denk niet dat er veel mensen voor zoiets zijn. Maar ja, volgens mij gelooft de gemiddelde tweaker ook nog in de heilzame werking van het rode boekje.

Deze beveiliging kan dit geheel helpen te voorkomen
Nee hoor, elke chip genereert een unieke code voor die chip, maar die code moet wel gecontroleerd worden, dus ergens zit een chipje of een stukje software die controleert of de code de juiste is. Omdat die code uniek is voor de chip moet de code waarmee vergeleken worden ergens in een geheugen chippie oid gebakken worden, en aangezien die voor elke chip uniek is kan je die niet helemaal hardwiren, dus je zal er op z'n minst iets van PROM in moeten hebben.
Gevolg hiervan is dus dat je niet 1 maar 2 chippies moet vervangen om de DRM te omzeilen.

Gevolg hiervan is dus dat je niet 1 maar 2 chippies moet vervangen om de DRM te omzeilen.
Ligt maar helemaal aan je toepassing.

Stel je hebt een smartcard om in te loggen op het bedrijfsnetwerk. Met deze techniek kan alleen _die_ smartcard ook gebruikt worden om in te loggen. Elke andere smartcard zou een andere code afgeven wanneer deze getest wordt.

(Dus controle van de chip gebeurt niet in het apparaat zelf).

Zou o.a. ook handig kunnen zijn voor toepassingen zoals XBOX live enzo.

Ik denk niet dat het om het klonen van een itaium 3 gaat. Het uitlezen van de circuits van een Chip is enorm duur. Het klonen is nog een heel veel duurder. Een chipfabriek die de laatste micro processors kan bakken kost bijna net zoveel als heel de ontwikkeling vna de chip (miljarden). En het lukt je niet om miljoenen gekloonde chips aan de man te brengen zonder dollar tekens in de ogen van juristen ta laten verschijnen.

De toepassing op korte termijn is echt DRM/copy protection achtige verschijnselen. b.v. waarbij software verifieerd dat een dongle echt de orignele dongle is.

Wat is hier het nut van :?

Je kon toch sowieso al niet bv. een Northbridge van een mobo afsolderen om hem vervolgens te gaan klonen. Daar heb je ontwerpschema's e.d. bij nodig.
Die ontwerpschema's houdt een fabrikant voor zich zelf neem ik aan. :)

Waarom niet? Je kunt toch een chip er toch gewoon met alle geweld afrippen?

Natuurlijk zal hij deze niet aan "jan alleman" geven, maar ze zijn zeker wel te vinden. Zij verkopen die chips ook aan moederbord producenten, die willen graag wel de onderdelen kunnen aansluiten op hun moederbord. Anders weten ze niet eens hoe ze het moederbord moetten opbouwen.

Dat kan dus wel als je laagje voor laagje van de chip afschraapt en met een microscoop gaat bekijken. Dit is ooit door een russisch bedrijf gedaan met de Philips TV SoC, als ik het me goed herinner. En dit zal vast wel vaker voorkomen.

In de Sovjet tijd kloonde men ook VAX systemen. Reden voor engineers van DEC om een boodschap voor de Russen in de CVAX chip te etsen:

http://microscopy.fsu.edu/creatures/pages/russians.html

Je kan het "schrapen" inmiddels ook beveiligen. Door een miniscuul laagje folie aan te brengen op elke laag. Dit gebeurt nu ook op microcontrollers om de software te beschermen en dat werkt ook perfect

wist niet dat mensen zoveel moeite zouden steken in het nagaan wat al die miljoenen stroompjes in een chip afzonderlijk doen. dat onderzoeken lijkt me bijna even tijdrovend/duur als een geheel eigen chip te ontwerpen

Alles is te kraken :P

Als je een chip kloont ZONDER het beveiligingsgedeelte, is alle beveliging natuurlijk in 1 klap weg.

Maar vergeet niet dat de software dat ziet en dat die chip dus al per direct in dat geval onbruik is.

Geen beveiling -> chip werkt niet :)

Als je de resources hebt om een Chip te strippen kun je neem ik aan ook nog wel een stuk software reverse engineeren...

Ow ja? misschien is dat beveiligingsgedeelte wel om bepaalde code te decoderen hè? dan heb je er nog steeds niks aan :Y)

Je kunt hem wel degelijk klonen op exact dezelfde manier als daarvoor.

Stel: de functie wordt alleen gebrukt voor de copy check

Dan: zal ie op de oorspronkelijke chip altijd "true" terug geven, dit is nou eenmaal een origineel. Op de namaak zullen ze die functie namaken zodat ie sowieso true terug geeft, ze hebben geen ander kunnen vinden.

Stel: de functie wordt NIET alleen gebruikt voor de copy check

Dan: zal ie op de oorspronkelijke chip als copy check altijd true geven, en bij de andere functies een andere functie die je ook kunt namaken (eindig aantal inputs, eindig aantal outputs, is per definitie te klonen). Heb je nog steeds geen probleem met de chip :)


Deze anti-kopieer-beveiliging helpt alleen tegen kopieermachinekopieerders. Dit zullen dan wel geavanceerde mensen zijn, maar het idee blijft hetzelfde, als je de werking kloont is er geen mens dat het verschil merkt, en de machine kan dat niet beter merken dan de mens (machines worden nog steeds gemaakt naar een voorbeeld van de mens).

Jah, en je hebt erg dure lasers en dat soort aparatuur nodig, en dat om een chippie na te maken. Komop zeg, ik wist niet eens dat mensen daar de moeite voor namen ...

[edit : schoonheidsvoutje ;)]
[Reactie op Thandor]

Waarom niet? Er zijn genoeg dure fabrieken die op bepaalde momenten leeg staan... waarom niet daar een paar batches van erg dure chipset produceren??? Je hebt geen kosten voor R&D (afgezien van het afkijken / klonen) en daarom kun je een enorm grote marge nemen.

Wat zeg je nou geen moeitje ?
Een bedrijf dat jaren heeft gewerkt aan een chip ontwerp (Neem bijvoorbeeld Amd of Intel maar het kan natuurlijk ook philips of infineon of weet ik veel welke chip fabrikant zijn)
En er jaren aan research in heeft gestoken om een bepaalde chip te ontwerpen en te optimaliseren die hebben er echt wel wat voor over om hun eigen ontwerp te beschermen door dit soort dingen.
Als een bedrijf een chip ontwikkeld en daar 100 miljoen in heeft gestoken en een ander bedrijf doet enkele weken onderzoek naar hun chip en bouwt deze dan na dan kost dat het originele bedrijf enorm veel geld want die ander kan hem goedkoper aan bieden omdat deze r&d kosten heeft moeten maken.

Hmm weer te laat precies wat the source zegt dus.

allemaal heel mooi en wel, maar dan heb je nog steeds geen techniek om het klonen ervan tegen te gaan, in het beste geval is het een obstakel voor het gebruik van een gekloonde chip in combinatie met dezelfde software.

Echter denk ik dat deze maatregel vooral Chinese bedrijven viseert die het niet zo nauw nemen met de internationale regelgevingen. Wat weerhoudt hen ervan om chips te klonen waar dan heel gezellig een linux-distro op draait die de speciale code niet gebruikt.

Deze methode zal ook kunnen ontdekken of er met de chips van een spelcomputer is geknutseld. (Om illegale kopieen te draaien)

Hmmm misschien denk ik nu wel heel simpel, maar als ze een hele chip kunnen klonen, dan kunnen ze vast ook wel de code die het genereert uitlezen en kunstmatig laten zenden door de gekopieerde chip.

het uitzenden is hier niet eenen en nullen denk ik, maar varieties in spanning/stroom die worden verookzaakt door kleine verschillen in de chip

Als je een andere chip hebt die dat uitleest dan wordt het nog knap moeilijk om de beveiliging te omzeilen lijkt me zo

Als je die andere chip (die AD convertor) ook weer aanpast is het ook weer omzeild.

Het probleem blijft bestaan: als de software aan de chip 'vraagt' om de unieke code dan kan die chip toch gewoon dezelfde code teruggeven als de originele chip?

Ik wou het net zeggen. Ze klonen dan toch gewoon de gegenereerde code mee?
Beetje vaag :X

Waarbij software de hardware 'aan een onderzoek onderwerpt'.
Hier gaat het (neem ik aan) dus om een analoge challenge-response systeem waarbij je wel degelijk ingebouwde D/A en A/D converters kan gebruiken. Het enige probleem is dat er wel enige marge moet zijn omdat het analoog is. Lijkt me lastig om zoiets te bedenken.

Het kan ook mooi gebruikt worden om ervoor te zorgen dat MAC adressen niet meer gekloond kunnen worden. Weer iets meer beveiliging in WIFI enz...

Aangezien het de software is die MAC adressen verstuurd zal dat altijd veranderd kunnen worden, de tcp pakketjes iets aanpassen en het berichtje komt opeens van een ander ip/mac adres.
Daar zal deze techniek iig geen verschil voor maken.

Dat is dus niet waar, sorry.
<let op deze post gaat enigzins offtopic>

Vroegah :) waren zo'n beetje alle MAC adressen hard-wired in de Netwerkkaart of geflashed in een EPROM. Niet door software te veranderen dus. MAC adressen worden namelijk gebruikt op OSI layer 2 niveau (waar echte electrische signalen worden gedigitaliseerd in bits). Dat is het eerste niveau boven de fysieke layer (nr. 1, de laag van de werkelijke signalen die door je netwerkkabel gestuurd worden, waar gesproken wordt over spanningen, frequenties en kabeltypen)
Dit was dus allemaal in hardware uitgevoerd en de bovenliggende lagen hadden daar geen invloed op, ze konden alleen netwerkpakketjes er naar toe stouwen of de pakketten die voor door laag 2 geselecteerd waren omdat het voor het juiste MAC adres was (namelijk die in de kaart) uitlezen.

Echter met al het "zacht en pluizig"(tm) gedoe van tegenwoordig waarbij men -alles- wat enigzins mogelijk is door software vervangt (winmodems, CPU slurpende audiochips, Raid-zonder-raid-performance, USB2's-die-op-10%-draaien-door-AthlonXP's-die-niet-wakker-worden-uit-hun-'middagdutje')
heeft ook het Hardware MAC adres het moeten afleggen, waardoor op de meeste hedendaagse netwerkdevices dit nu instelaar is. Ik weet niet hoe ver in de huidige goedkope netwerkadapters software de hardware vervangen heeft maar je zou een groot deel van layer 2 door software kunnen vervangen, welliswaar tegen enorm grote performance penalties omdat dan opeens ieder pakketje wat over je netwerk gaat door je driver gechecked zou moeten worden... nog even afgezien van het PCI-bus verkeer wat dat oplevert kost dat wel een paar procentjes CPU.

Dat heeft ook zo z'n voordelen natuurlijk... Straffeloos een router/IP masqerading firewall gebruiken op een kabelmodemaansluiting die alleen zou mogen werken met de door de installateur bijgeleverde netwerkkaart-bedoeld-voor-uitdrukkelijk-EEN-pc en zo je complete studentengang van internet voorzien zonder daar een complete PC voor aan te laten staan is daar maar een voorbeeldje van.

waardoor op de meeste hedendaagse netwerkdevices dit nu instelaar ism

met het programa SMAC http://www.klcconsulting.net/smac/
kan je van elke willekeurige netwerkkaart het mac adres veranderen, wel handig bijv als je graag een nieuw ip adres wil krijgen van de lokale dhcp server.
Al mijn netwerkaarten hebben een gespoofed mac adres.

Dat is dus niet waar, sorry.
<let op deze post gaat enigzins offtopic>

Vroegah waren zo'n beetje alle MAC adressen hard-wired in de Netwerkkaart of geflashed in een EPROM. Niet door software te veranderen dus. MAC adressen worden namelijk gebruikt op OSI layer 2 niveau (waar echte electrische signalen worden gedigitaliseerd in bits). Dat is het eerste niveau boven de fysieke layer (nr. 1, de laag van de werkelijke signalen die door je netwerkkabel gestuurd worden, waar gesproken wordt over spanningen, frequenties en kabeltypen)
Dit was dus allemaal in hardware uitgevoerd en de bovenliggende lagen hadden daar geen invloed op, ze konden alleen netwerkpakketjes er naar toe stouwen of de pakketten die voor door laag 2 geselecteerd waren omdat het voor het juiste MAC adres was (namelijk die in de kaart) uitlezen.
Het klopt dat dit vroegah hardwarematig was en nu allemaal softwarematig, maar toch is het MAC adres nogsteeds iets dat altijd vervalst kan worden, zolang je direct de sockets kan aansturen kan je zo berichtjes sturen die andere source IP en MAC adressen hebben.
Het blijft toch nogsteeds een berichtje dat verstuurd moet worden, als dat bericht iets aangepast word dan zal is het moeilijk zo niet onmogelijk om te detecteren dat het veranderd is.
Helaas is het niet zo dat zoiets niet te vervalsen is, misschien nog met hardware die zelf de output controleert maar voor de rest word het best wel lastig.

Software gaat controleren

Dan hack je dus niet de chip maar de software. Komop, waar doen we zo moeilijk over.?

Ja, maar wat als de chip wacht totdat het een signaal krijgt om uberhaupt iets te gaan doen. Dan zou je de software kunnen hacken maar de hardware moet nog steeds de instructie uitvoeren waar het voor gemaakt is.

Weet echter niet zeker of deze theorie klopt kon het zou gauw nergens terugvinden

Dan hack je toch zo dat het signaal gewoon verstuurd word? Simpele progjes kan je ook zo editten dat ze bij een registratie bij een verkeerd nummer 'OK' doorgeven
«  1  2  3  »

Op dit item kan niet meer gereageerd worden.

Volgende 21:58 Meer informatie over de verschillende nForce 4-chipsets
Vorige 16:58 Interview met chief developer van Mozilla Firefox
VNU Media logo Hosted by True

© 1998 - 2012 Tweakers.net B.V. - Alle rechten voorbehouden - Contact - Jouw privacy - Algemene Voorwaarden

Uitgever van:

Website van het jaar 2011