ІІ. Сабақтың ортасы
Жаңа сабақ.
Программаны заңсыз көшіруден қорғалған деп есептейік, егер онда программаның өзін тексеруге мүмкіндік беретін программа көшірмесі барлық қажетті технологияны сақтай отырып жасалған ба, соны анықтау мақсатымен орындалады. Егер көшірмелерді құру технологиясы бұзылған болса, программа қалыпты жұмыс істей алмайды. Осылай заңды көшіру көшірме құрудың кейбір ерекше технологиясын қолдануға әкеледі. Қорғалған программаның кез келген көшірмесінің өзінде немесе ішкі файлында «кілт» болуы керек - бір немесе бірнеше кодтық сандар. Тексеру кезінде программа жұмыс ортасының бірқатар спецификалық белгілерін алдынала кодталған кілтпен салыстырады және салыстыру нәтижесі бойынша сәйкес белгіні құрастырады. Сонымен, программа көшірмесін құру аз: бұл көшірме жұмысқа қабілетті болуы үшін нақты компьютермен жұмысқа дайын кілтті беруі керек. Ортаның жеке белгілерін талдау. Программа жұмыс жасайтын компьютер, нақтырақ айтқанда, программалық-аппараттық орта қандай спецификалық белгілерге ие болуы мүмкін. IBM-үйлесімді ДК үшін бұл белгілер мыналар болуы мүмкін: ДК типі және операциялық жүйе типі (версиясы); ТЕСҚ BIOS шығу мерзімі мен/немесе оның бақылау қосындысы; дискілік тасымалдаушыдағы файлдардың физикалық орны; аппараттық құралдар құрамы; программаның жасырын бөліктерінің болуы; тасымалдаушының физикалық ерекшеліктері (соның ішінде дефекттер). Бұл белгілердің кейбіреулері өте жекеленген (мысалы, сапасыз тасымалдаушының физикалық ерекшеліктері), басқалары азырақ жекелікке ие (ДК типі, ДОС версиясы). Программа көшірменің заңдылығын тексеру үшін бір немесе бірнеше белгілерді қолдана алады. Бұл жағдайда ерекше мәнге программаны қолдану тәсілі ие болады: егер программа нақты ДК-дегі жұмысқа есептелген болса, бір белгілер таңдалады, егер ол жұмыс істеу қабілетін жоғалтпастан бір компьютерден екіншіге жеңіл жылжитын болса – басқалар таңдалады. Бірінші типті программаларды - стационар деп, ал екіншілерді - мобильді деп атайық. Барлық жағдайда заңдылықты тексеру программаның жылдам әрекетіне әсер етпеуі тиіс немесе қолданушыдан қандай да бір қосымша әрекетті талап етуі керек (Мысалы, пароль қолданатын жүйені тиімді деп санауға бола ма). Қорғау жүйесі қолданушыны емес, көшірмені тексеруі тиіс! ДК типін тексеру Бұл тексерулер өте қарапайым, бірақ бірдей ОЖ қолданылатын бір типті жүздеген мың ДК болуы мүмкін деген мағынада даралықтың жоғары дәрежесіне ие болмайды. Сондықтан әдетте бұл тексерулер басқа жеке белгілерді тексерумен бірігіп қолданылады және стационар программаларды қорғауға арналған. ДК типі $F0000:$FFFE адресі бойынша ТЕСҚ-на жазылған, яғни ДК мегабайтты адрестік кеңістігіндегі соңғының алдындағы байтта. Бұл байттың мәндері келесі кодтар болуы мүмкін: Код ДК типі FF PC FE XT FD PCjr FC AT ТЕСҚ шығу мерзімі мен бақылау қосындысын тексеру Тұрақты есте сақтау құрылғысы (ТЕСҚ) ДК-мен біріккен кез келген IBM-нің бөлінбейтін құрама бөлігі болып табылады. ТЕСҚ құрамы нақты ДК-ді жүзеге асыру ерекшеліктерін ескереді және әр типті компьютерлерден ерекшеленуі мүмкін. Сонымен бірге ТЕСҚ соңында ($F000:$FFFS адресі бойынша) әдетте оның шығу мерзімі жазылады, сондықтан бір типті ДК үшін де (бір дайындаушы-фирма болса да) ТЕСҚ бақылау қосындысы ДК-дің әртүрлі даналарында ерекшеленеді. ТЕСҚ-ның шығу мерзімі SFOOO: $FFF5 адресі бойынша табылады және 8 аралас байттан тұрады. Мәліметтер символдық түрде MM/DD/YY (ММ – ай нөмірінің символдары, DD – күн нөмірі, YY – жыл нөмірі) форматында сақталады, мысалы «06/26/92». Бұл тексеру стационар программаларды қорғау үшін қолданылады. Дискідегі файлдың орналасу орнын тексеру Жақсы даралыққа қатты дискіде қорғалған программасы бар файлмен басталып кластердің физикалық нөмірі ие болады. Шынымен де, ДК-дің аппаратты-программалық ортасында басқа бір нәрсе (оперативті жадының құрамынан басқа) қатты дискінің файлдық құрылымы тәрізді серпінді өзгереді. Заңды көшірме құрғанда қатты дискідегі файл программасы үшін бастапқы кластер нөмірі жалпы жағдайда кездейсоқ болады. Егер жіберу кезінде программа бұл нөмірді тексеретін болса, онда көп жағдайда ол заңсыз көшіру болмысын жеңіл табады. Қорғаудың мұндай тәсілін көптеген себептерге байланысты керемет деп есептеуге болмайды. Кластердің нөмірін тексеру ТЕСҚ-ның шығу мерзімі мен ДК типін тексеру тәрізді оңай орындалмайды. Бірақ бастапқы кемшілік басқада: ең болмағанда бір каталог шегіндегі файл орнының кез келген өзгеруі ертерек орнатылған көшірменің заңсыз болуына әкеледі. Аппараттық құралдар құрамын тексеру Программа тиімді оперативті жадының көлемін, кеңейтілген жадының бар болуы мен көлемі, орталық процессордің типі мен оның жұмысының шамамен алынған жылдамдығын, математикалық сопроцессордың болуы, иілгіш дискілер үшін дисководтардың типі мен саны, физикалық қатты дискінің параметрлері, логикалық дискілердің саны, сыртқы құрылғыларды қосуға арналған арналардың типі мен санын тексере алады. Бұл сипаттамалардың әрқайсысы мыңдаған басқа ДК-де қайталануы мүмкін, бірақ олардың бәрі кешенде жеткілікті дара болады және сондықтан стационар программаларды қорғау үшін үлкен жетістікпен қолданыла алады. Кейбір шетел фирмалары мобильді программаларды қорғау үшін электронды кілттер шығарады – қорғалатын программаны жібермес бұрын тізбекті немесе параллельді енгізу-шығару стандартты арнасына қосылатын біршама арзан құрылғылар. Электронды кілттер тапсырыс берілген микросхемалар негізінде жүзеге асады және қорғалған программамен қажетті интерфейсті өзара әрекетті іске асырады. IBM AT класты компьютерлер үшін ДК-дің аппараттық құралдарының құрамы жайлы пайдалы ақпаратты сақтайтын, соның ішінде – тиімді жадыны, арнайы энерготәуелді КМОПжады1 қолданылады. Периферийлі құрылғылар жайлы ақпаратты КМОП - жадыдағы Equipm өрісі құрайды. Программаның жасырын бөліктерін қолдану және ақпаратты физикалық тасушылардың ерекшеліктері Қорғаудың біршама тиімді тәсілі (негізінен мобильді программалар үшін) программаның жасырын бөліктерін құру мен қолдану және/немесе ақпаратты физикалық тасушылардың ерекешеліктері болып табылады. Программаның жасырын бөліктері – бұл сол немесе басқа тәсілмен программамен байланысқан, бірақ ОЖ файлдары түрінде жазылмаған дискілік тасушының аумағы. Басым көпшілік жағдайда программада мұндай аумақтарды жасанды құрудың қажеті жоқ, өйткені олар кез келген файлдың «артында» болады. Қорғаудың өте тиімді емес тәсілі қосымша жасырын кластерлерді құру мен қолданудан тұрады. Мұндай кластерлер FAT-та жаңылысқан немесе «жоғалған» болып белгіленуі мүмкін (яғни, ешқандай тіркелген файлға тиісті емес). (Барлық жағдайда, кілт файл артына немесе жеке кластерге орналаса ма, қорғау оңай бейтараптануы мүмкін, егер дискетті «блоктан блокқа» көшіру DISKCOPY жүйелік утилиттің немесе ұқсас жүйелік емес программалардың көмегімен қолданылатын болса). Заңсыз көшіру әрекетіне қарсы тұрудың ең жақсы қабілетіне дараланған ерекшеліктер есебіне негізделген қорғау жүйесі ие болады, бәрінен бұрын жойылмайтын дефектілерді талдаудағы дискеталар. Бұл жағдайда қорғауды тексеру жүйесі түпнұсқалы дискетаның дефектті секторларының тізімін «біледі» және оларды форматтауға тырысады. Егер форматтаудан кейін сектормен ақпарат алмасу дұрыс өтсе, онда сәйкес сектор - дефектісіз және, демек, біз дискетаның заңсыз көшірмесімен жұмыс жасағалы отырмыз. Бұл қорғау тәсілінің басты жетістігі дұрыс дискетада программалық құралдармен жойылмайтын дефектілерді құрудың принципті мүмкін еместігіне әкеледі. Практикада көретініміздей, дискеталардың бірталайы (1% аз емес) заводтық шығу дефектілерінен тұрады, сондықтан коммерциялық программаларды көптеп шығаруда мұндай дефектілерді жасанды құруға тура келеді. Ол үшін кейде лазерлер, ал жиірек – кәдімгі түйреуіш қолданылады. Бірнеше жаттығудан кейін Сіз қай кезде де тасушының қабатына сызат қалдыра аласыз немесе дискетаны, оның көп бөлігінің жұмыс істеу қабілетін сақтау үшін шаншуға болады. Бірақ дискета бетін сызаттау мен шаншу тасушының кейбіреуінің бастарын зақымдауы мүмкін
Достарыңызбен бөлісу: |