Չիպի վերծանում

Չիպային վերծանումը հայտնի է նաև որպես միաչիպային վերծանում (IC վերծանում): Քանի որ պաշտոնական արտադրանքի մեջ միաչիպային միկրոհամակարգչային չիպերը կոդավորված են, ծրագիրը չի կարող անմիջապես կարդացվել ծրագրավորողի միջոցով:

Միկրոկտրոլերի չիպային ծրագրերի չարտոնված մուտքը կամ պատճենումը կանխելու համար, միկրոկոնտրոլերների մեծ մասն ունի կոդավորված կողպեքի բիթեր կամ կոդավորված բայթեր՝ չիպային ծրագրերը պաշտպանելու համար: Եթե կոդավորման կողպեքի բիթը միացված է (կողպված) ծրագրավորման ընթացքում, միկրոկոնտրոլերի ծրագիրը չի կարող անմիջապես կարդացվել սովորական ծրագրավորողի կողմից, ինչը կոչվում է միկրոկոնտրոլերի կոդավորում կամ չիպի կոդավորում: MCU հարձակվողները օգտագործում են հատուկ սարքավորումներ կամ ինքնաշեն սարքավորումներ, շահագործում են MCU չիպի նախագծման մեջ առկա բացթողումները կամ ծրագրային թերությունները, և տարբեր տեխնիկական միջոցների միջոցով կարող են չիպից հանել հիմնական տեղեկատվությունը և ստանալ MCU-ի ներքին ծրագիրը: Սա կոչվում է չիպի կոտրում:

Չիպի վերծանման մեթոդ

1. Ծրագրային հարձակում

Այս տեխնիկան սովորաբար օգտագործում է պրոցեսորի հաղորդակցման ինտերֆեյսներ և շահագործում է այդ ալգորիթմների արձանագրությունները, կոդավորման ալգորիթմները կամ անվտանգության բացերը՝ հարձակումներ իրականացնելու համար: Հաջող ծրագրային հարձակման բնորոշ օրինակ է ATMEL AT89C շարքի վաղ շրջանի միկրոկառավարիչների վրա հարձակումը: Հարձակվողը օգտվել է այս շարքի միաչիպային միկրոհամակարգիչների ջնջման գործողությունների հաջորդականության նախագծման բացերից: Գաղտնագրման կողպեքի բիթը ջնջելուց հետո հարձակվողը դադարեցրել է չիպի վրա տեղադրված ծրագրային հիշողության մեջ տվյալները ջնջելու հաջորդ գործողությունը, որպեսզի կոդավորված միաչիպային միկրոհամակարգիչը դառնա չկոդավորված միաչիպային միկրոհամակարգիչ, ապա օգտագործել ծրագրավորողին՝ չիպի վրա տեղադրված ծրագիրը կարդալու համար:

Այլ կոդավորման մեթոդների հիման վրա կարող են մշակվել որոշ սարքավորումներ՝ որոշակի ծրագրային ապահովման հետ համագործակցելու համար՝ ծրագրային հարձակումներ կատարելու համար։

2. էլեկտրոնային հայտնաբերման հարձակում

Այս տեխնիկան սովորաբար վերահսկում է պրոցեսորի բոլոր սնուցման և ինտերֆեյսային միացումների անալոգային բնութագրերը նորմալ աշխատանքի ընթացքում՝ բարձր ժամանակային լուծաչափով, և հարձակումն իրականացնում է՝ վերահսկելով դրա էլեկտրամագնիսական ճառագայթման բնութագրերը: Քանի որ միկրոկառավարիչը ակտիվ էլեկտրոնային սարք է, երբ այն կատարում է տարբեր հրահանգներ, համապատասխան էներգիայի սպառումը նույնպես համապատասխանաբար փոխվում է: Այս կերպ, վերլուծելով և հայտնաբերելով այս փոփոխությունները հատուկ էլեկտրոնային չափիչ գործիքների և մաթեմատիկական վիճակագրական մեթոդների միջոցով, կարելի է ստանալ միկրոկառավարիչի որոշակի հիմնական տեղեկատվություն:

3. սխալների առաջացման տեխնոլոգիա

Այս տեխնիկան օգտագործում է աննորմալ աշխատանքային պայմաններ՝ պրոցեսորին սխալներ ներշնչելու համար, ապա լրացուցիչ մուտք է ապահովում հարձակումն իրականացնելու համար: Առավել լայնորեն օգտագործվող խափանումներ առաջացնող հարձակումները ներառում են լարման և ժամացույցի տատանումները: Ցածր և բարձր լարման հարձակումները կարող են օգտագործվել պաշտպանական շղթաները անջատելու կամ պրոցեսորին սխալ գործողություններ կատարելու հարկադրելու համար: Ժամացույցի անցումային պրոցեսները կարող են վերագործարկել պաշտպանության շղթան՝ առանց պաշտպանված տեղեկատվությունը ոչնչացնելու: Հզորության և ժամացույցի անցումային պրոցեսները կարող են ազդել որոշ պրոցեսորներում առանձին հրահանգների վերծանման և կատարման վրա:

4. զոնդի տեխնոլոգիա

Տեխնոլոգիան կայանում է չիպի ներքին լարերը ուղղակիորեն բացահայտելու, այնուհետև միկրոկառավարիչը դիտարկելու, մանիպուլյացնելու և նրան միջամտելու մեջ՝ հարձակման նպատակին հասնելու համար։

Հարմարության համար վերը նշված չորս հարձակման տեխնիկաները բաժանում են երկու կատեգորիայի. մեկը ներխուժող հարձակումն է (ֆիզիկական հարձակում), այս տեսակի հարձակման համար անհրաժեշտ է ոչնչացնել փաթեթը, այնուհետև օգտագործել կիսահաղորդչային փորձարկման սարքավորումներ, մանրադիտակներ և միկրոդիրքորոշիչներ մասնագիտացված լաբորատորիայում: Այն կարող է տևել ժամեր կամ նույնիսկ շաբաթներ: Բոլոր միկրոզոնդավորման տեխնիկաները ինվազիվ հարձակումներ են: Մյուս երեք մեթոդները ոչ ինվազիվ հարձակումներ են, և հարձակվող միկրոկառավարիչը ֆիզիկապես չի վնասվի: Ոչ ներխուժող հարձակումները որոշ դեպքերում հատկապես վտանգավոր են, քանի որ ոչ ներխուժող հարձակումների համար անհրաժեշտ սարքավորումները հաճախ կարող են ինքնուրույն պատրաստվել և արդիականացվել, ուստի շատ էժան են:

Ոչ ներխուժող հարձակումների մեծ մասը պահանջում է, որ հարձակվողը ունենա լավ գիտելիքներ պրոցեսորի և ծրագրային ապահովման վերաբերյալ: Ի տարբերություն դրա, ներխուժող զոնդային հարձակումները մեծ նախնական գիտելիքներ չեն պահանջում, և նմանատիպ տեխնիկաների լայն շրջանակ սովորաբար կարող է օգտագործվել արտադրանքի լայն շրջանակի դեմ: Հետևաբար, միկրոկառավարիչների վրա հարձակումները հաճախ սկսվում են ներխուժող հակադարձ ինժեներիայից, և կուտակված փորձը օգնում է մշակել ավելի էժան և արագ ոչ ներխուժող հարձակման տեխնիկաներ: