




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
4.l軟件安全的基本要求主要目的:一是禁止非法拷貝和使用;二是防止非法閱讀和修改。其技術(shù)措施應(yīng)實現(xiàn)三個基本任務(wù):防拷貝、防靜態(tài)分析和防動態(tài)跟蹤。4.1.1防拷貝指的是通過采取某種加密措施,使得一般用戶利用正常的拷貝命令,甚至于各種拷貝軟件都無法將軟件進(jìn)行完整的復(fù)制,或者是復(fù)制到的軟件不能正常運行。防拷貝技術(shù)是軟件加密的核心技術(shù),利用專用技術(shù)制造一種特殊標(biāo)記,正常的拷貝途徑無法復(fù)制這種特殊標(biāo)記,或者是拷貝到的特殊標(biāo)記不完整。特殊標(biāo)記:軟標(biāo)記,硬標(biāo)記4.l軟件安全的基本要求拷貝盤母盤制造的特殊標(biāo)記特殊標(biāo)記的不完全拷貝圖4—1加密母盤的不完全拷貝示意圖圖4—2防拷貝軟件的一般結(jié)構(gòu)開始讀磁盤特殊標(biāo)記有標(biāo)記嗎?正常運行結(jié)束拒絕運行NY4.l軟件安全的基本要求一個簡單的手工作業(yè)方法制作硬標(biāo)記:準(zhǔn)備一根針,在酒精燈上將針尖部分燒紅,然后在磁盤上選擇某一位置,將燒紅的針尖靠近磁介質(zhì)表面停留片刻(注意不要接觸磁介質(zhì)表面);當(dāng)拿開針尖以后,磁盤介質(zhì)的這一部分就有一個小小的痕跡因受熱而發(fā)生變化,不能記錄信息,被損壞的扇區(qū)如果用INT13H讀寫數(shù)據(jù)時,會發(fā)生10H(CRC)錯。這樣,我們即制作了一個磁盤標(biāo)記。在被加密程序中編寫一段程序來識別這一標(biāo)記,因此必須知道被損壞的扇區(qū)所在的磁道和扇區(qū)號。
補充:BIOSINT13H磁盤I/OAH 功能調(diào)用00H 復(fù)位磁盤01H 取磁盤狀態(tài)02H 讀扇區(qū)03H 寫扇區(qū)04H 檢測扇區(qū)……功能調(diào)用02H入口參數(shù):AH=02HAL:置要讀的扇區(qū)數(shù)目DL:進(jìn)行讀操作的驅(qū)動器代碼。數(shù)碼0和1用于識別軟盤,數(shù)碼80H和81H識別硬盤。DH:所讀磁盤磁頭號。CH:識別10位磁道柱面號的低8位數(shù)。CL:低6位放入所讀的起始扇區(qū)號。高2位存放磁道柱面號的高2位。ES:BX:緩沖區(qū)地址。出口參數(shù):錯誤則CF=1,錯誤信息放在AH中,否則CF=0,AL=0。AH中錯誤狀態(tài):00H未出錯;01H非法功能調(diào)用;03H對寫保護(hù)的磁盤執(zhí)行寫操作;10H讀磁盤時循環(huán)校驗碼(CRC)奇偶校驗錯。4.l軟件安全的基本要求知道被燒壞的扇區(qū)為1面10磁道的第4扇區(qū),因此就可以在程序中寫上下面一段識別母盤的程序片段:RETRY:MOVAX,0201;讀一個扇區(qū)MOVBX,OFFSETHCQ1MOVCX,0A04H;讀10磁道的第4扇區(qū)MOVDX,0100;A驅(qū)動器的1面INT13HJBOK_PASS;讀扇區(qū)出錯,轉(zhuǎn)OK_PASSJMPRETRY;是非法復(fù)制盤,重復(fù)讀盤OK-PASS:CMPAH,10H;CRC錯(受熱損壞的結(jié)果)嗎?JNZRETRY;不是,重復(fù)讀盤假定被加密程序是顯示字符串“Howareyou!”.
STACKSEGMENTPARASTACK‘STACK’DB128DUP(0)STACKENDSDATASEGMENTMSG1DB0DH,0AH,“Howareyou!$”DATAENDSCODESEGMENTASSUMECS:CODE,ES:DATA,DS:DATASTARTPROCFARMOVAX,DATAMOVDS,AXMOVES,AXMOVDX,OFFSETMSG1MOVAH,9INT21HMOVAH4CHINT21HSTARTENDPCODEENDSENDSTART上述程序采取防拷貝的措施,是將識別母盤的程序片段寫入到程序中,修改后的程序如下:
STARTSEGMENTPARASTACK‘STACK’DB128DUP(0)STACKENDSDATASEGMENTMSG1DB0DH,0AH,“Howareyou!$”HCQ1DB512DUP(0);設(shè)置磁盤緩沖區(qū)DATAENDSCODESEGMENTASSUMECS:CODE,ES:DATA,DS:DATASTART:PROCFARMOVAX,DATAMOVDS,AXMOVES,AX
;以下識別母盤RETRY:MOVAX,0201HMOVBX,OFFSETHCQ1MOVCX,0A04HMOVDX,0100HINT13HJBOK_PASS;讀扇區(qū)出錯,轉(zhuǎn)OK_PASSJMPRETRY;是非法復(fù)制盤,重復(fù)讀盤OK_PASS:CMPAH,10HJNZRETRY;不是原盤,轉(zhuǎn)RETRYMOVDX,OFFSETMSG1;是原盤,正常運行MOVAH,9INT21HMOVAH,4CHINT21HSTART:ENDPCODE
ENDSENDSTART4.l軟件安全的基本要求4.1.2防靜態(tài)分析破譯者可以閱讀到防拷貝的這一段程序。然后進(jìn)行修改,使得被加密的軟件在運行時不進(jìn)行特殊標(biāo)記的識別而無條件地正常執(zhí)行,使得防拷貝的功能失去作用。例如,對于上述的加密程序,解密者可用DEBUG的反匯編命令看到如下的程序指令代碼(P74):……為了解密,可在讀盤操作以后,將1E53:0015處的指令改為無條件轉(zhuǎn)移指令:JMP001E這樣,該程序在運行時,不論讀沒讀到磁盤標(biāo)記,都會正常地運行。進(jìn)一步地,還可以將1E53:0007處的指令改為:JMP001E這樣,該程序在運行時甚至連讀盤都不進(jìn)行,就可以正常運行。
—U0271E53:0000B832lEMOVAX,1E321E53:00038ED8MOVDS,AX1E53:00058EC0MOVES,AX1E53:0007B80102MOVAX,02011E53:000ABB0F00MOVBX,000F1E53:000DB9040AMOVCX,0A041E53:0010BA0001MOVDX,01001E53:0013CD13INT131E53:00157202JB00191E53:0017EBEEJMP00071E53:001980FC10CMPAH,101E53:001C75E9JNZ00071E53:001EBA0000MOVDX,00001E53:0021B409MOVAH,091E53:0023CD21INT211E53:0025B44CMOVAH,4C1E53:0027CD21INT214.l軟軟件件安安全全的的基基本本要要求求防止止靜靜態(tài)態(tài)閱閱讀讀和和分分析析主主要要方方法法::將將識識別別磁磁盤盤特特殊殊標(biāo)標(biāo)記記的的程程序序放放在在比比較較隱隱蔽蔽的的地地方方,,或或者者是是對對該該段段程程序序進(jìn)進(jìn)行行加加密密變變換換,,以以密密文文的的形形式式放放在在軟軟件件中中。。但被加加密以以后的的程序序不能能被執(zhí)執(zhí)行,,要求求在被被加密密的程程序片片段之之前利利用另另外一一段解解碼程程序,,使其其變換換成明明文,,然后后再運運行該該段程程序進(jìn)進(jìn)行磁磁盤特特殊標(biāo)標(biāo)記的的識別別。經(jīng)經(jīng)過這這樣處處理以以后的的軟件件,不不運行行解碼碼程序序,用用DEBUG的““U””命令令反匯匯編出出來的的密文文對破破譯者者來說說是根根本看看不明明白的的,因因此阻阻止了了非法法用戶戶對軟軟件的的靜態(tài)態(tài)分析析和修修改。。例如,,將1E53:0007~0028之之間的的指令令代碼碼進(jìn)行行逐字字節(jié)求求反,,那么么在運運行時時,必必須使使用解解碼程程序進(jìn)進(jìn)行解解密變變換。。為此此在1E53:0007處增增加一一段解解碼程程序,,而把把原CS:0007~0028H之間間的指指令代代碼經(jīng)經(jīng)逐字字節(jié)求求反加加密變變換以以后,,存放放在1E53:00lB開始始的內(nèi)內(nèi)存區(qū)區(qū)域中中。4.l軟軟件安安全的的基本本要求求……1E53:0007BE1B00MOVSI,,00lB;;SI指指向密密碼首首地址址1E53:000AB93D00MOVCX,003D;;CX指指向密密碼末末地址址1E53:000D2BCESUBCX,SI;;解密密的字字節(jié)數(shù)數(shù)→CX1E53:000FFCCLD1E53:00102ECS::1E53:00118A04MOVAL,,[SI]];;取取一字字節(jié)密密文1E5:0013F6D0NOTAL;;求反反解密密1E53:00152ECS::1E53:00168804MOV[SI]],AL;;存存明文文一字字節(jié)1E53:001846INCSI;;改變地地址1E53:0019E2F5LOOP0010;;循環(huán)解解密1E53:001B47INCDI1E53:001CFEFD?????CH……4.l軟軟件安全的的基本要求求如:1E53:001B,001C,,001D處內(nèi)容為為:47,,F(xiàn)E,F(xiàn)D逐字節(jié)節(jié)取反后為為:B8,,01,02其匯編指令令為:MOVAX,02014.1.3防動態(tài)跟跟蹤采取了防靜靜態(tài)分析的的措施以后后,雖然阻阻止了非法法用戶對軟軟件的靜態(tài)態(tài)分析和閱閱讀及修改改,但是可可以利用DEBUG對被加密密的軟件進(jìn)進(jìn)行跟蹤,,運行解碼碼程序,找找到識別磁磁盤特殊標(biāo)標(biāo)記的程序序段,然后后對其進(jìn)行行修改。所所以,進(jìn)行行軟件加密密的第三個個基本任務(wù)務(wù)是:必須須采取一定定的措施阻阻止解密者者的動態(tài)跟跟蹤,使得得在正常狀狀態(tài)下無法法用DEBUG程序序或其它調(diào)調(diào)試程序?qū)浖旧砩磉M(jìn)行跟蹤蹤執(zhí)行。例如,對于于上面的程程序,我們們可以在防防拷貝和防防靜態(tài)分析析的基礎(chǔ)上上再增加防防動態(tài)跟蹤蹤的技術(shù)。。所用的防防動態(tài)跟蹤蹤技術(shù)是““封鎖鍵盤盤輸入”。。4.l軟軟件安全的的基本要求求2A61::0018E421INAL,21;;讀中中斷控制寄寄存器2A61::001A0C02ORAL,02;;封鎖鍵鍵盤輸入2A61::001CE621OUT21,AL;;回送中中斷控制字字2A61:001E46INCSI2A61:001FE2EFLOOP00104.l軟軟件件安安全全的的基基本本要要求求程序序在在運運行行過過程程中中會會封封鎖鎖鍵鍵盤盤的的輸輸入入,,即即當(dāng)當(dāng)用用戶戶想想使使用用DEBUG的的““T””命命令令和和““G””命命令令進(jìn)進(jìn)行行跟跟蹤蹤執(zhí)執(zhí)行行時時,,會會出出現(xiàn)現(xiàn)機機器器不不接接受受鍵鍵盤盤輸輸入入的的現(xiàn)現(xiàn)象象,,這這是是由由于于程程序序中中CS:0018~~001DH之之間間的的程程序序?qū)︽I鍵盤盤進(jìn)進(jìn)行行了了封封鎖鎖。。在在沒沒有有跟跟蹤蹤的的情情況況下下,,程程序序運運行行完完CS:0010~~0020之之間間的的解解碼碼程程序序以以后后,,將將CS::0021~~0048之之間間的的程程序序變變換換成成明明文文,,然然后后進(jìn)進(jìn)行行磁磁盤盤標(biāo)標(biāo)記記的的識識別別和和運運行行程程序序主主體體的的工工作作,,最最后后在在返返回回之之前前將將鍵鍵盤盤開開放放。。即即::2A61::004319DESBBSI,,BX2A61::00454BDECBX2A61::0046B332MOVBL,322A61::0048DE0AFIMULWORDPTR[[BP十SI]]4.2軟軟件件防拷拷貝技技術(shù)磁盤上上做特特殊標(biāo)標(biāo)記,,有硬硬標(biāo)記記、軟軟標(biāo)記記。4.2.1激光光孔加加密技技術(shù)激光方方向性性好、、亮度度高等等特點點,用用激光光在數(shù)數(shù)據(jù)區(qū)區(qū)或扇扇區(qū)標(biāo)標(biāo)識符符上燒燒若干干個痕痕跡,,使磁磁盤的的某幾幾點失失去磁磁性,,在軟軟盤表表面產(chǎn)產(chǎn)生永永久不不可恢恢復(fù)的的標(biāo)志志。由于激光光孔很小小,不仔仔細(xì)看不不容易看看見。軟軟盤在激激光處理理過的區(qū)區(qū)域讀寫寫時,產(chǎn)產(chǎn)生CRC校驗驗錯誤。。而加密密軟盤都都有自己己的識別別程序,,當(dāng)判斷斷有CRC檢驗驗錯誤時時,就認(rèn)認(rèn)為此盤盤是原盤盤,然后后執(zhí)行被被保護(hù)的的用戶程程序;若若沒有CRC校校驗錯誤誤,則認(rèn)認(rèn)為此盤盤是復(fù)制制品,從從而拒絕絕運行被被保護(hù)的的用戶程程序,使使拷貝工工具無法法使用,,不能正正常工作作。4.2軟軟件件防拷貝貝技術(shù)補充:MOVAH,19H;取取磁盤驅(qū)驅(qū)動器編編號放在在AL中中INT21H;;0:A;1:B;2:CINT13HAH=0;復(fù)位位磁盤,,磁盤校校準(zhǔn)的磁磁盤操作作AH=04;檢檢查磁盤盤扇區(qū);產(chǎn)生錯錯誤則CF=1,錯誤誤信息在在AH中中。激光孔定定位程序序和激光光孔指紋紋識別程程序如書書本80頁PROLOCK采取如如下措施施阻止解解密者的的分析和和跟蹤::(1)密密文處理理(2)反反跟蹤::防止解解密者的的跟蹤分分析,PROLOCK采用了了多種防防跟蹤措措施。①破壞斷斷點中斷斷和單步步中斷的的向量②②隱隱蔽轉(zhuǎn)移移③多循環(huán),多多出口④④設(shè)置堆棧棧4.2軟軟件防拷貝技技術(shù)4.2.2電電磁加密技技術(shù)借助于專用的的電磁機構(gòu),,在所需加密密的磁盤上隨隨機生成一系系列密鑰信息息,以供被加加密程序識別別使用的一種種加密技術(shù)。。它主要采用用了一種奇異異的編碼格式式將一些數(shù)據(jù)據(jù)寫入磁盤,,供磁盤上專專門的密鑰識識別程序鑒定定。4.2.3掩膜技術(shù)術(shù)采用半導(dǎo)體體工藝中的的鍍膜方法法來制造標(biāo)標(biāo)志,給磁磁盤某一磁磁道或某一一扇區(qū)進(jìn)行行鍍膜。這這種方法用用膜來“遮遮掉”數(shù)據(jù)據(jù)地址,使使拷貝工具具無法識別別。即使原原樣拷貝出出復(fù)制品,,在識別程程序中,首首先對被掩掩膜的磁盤盤扇區(qū)進(jìn)行行格式化,,然后再判判別該扇區(qū)區(qū)是否讀寫寫正常。如如果讀寫扇扇區(qū)正常,,則認(rèn)為此此盤是非法法復(fù)制品而而拒絕該軟軟件運行,,甚至使該該軟件自行行銷毀;否否則,認(rèn)為為是原盤,,繼續(xù)運行行該軟件。。4.3軟軟標(biāo)記加加密法4.3.1磁道軟加加密法有磁道接縫縫加密法、、額外磁道道加密法、、寬磁道加加密法、未未格式化磁磁道加密法法、磁道間間距不規(guī)則則變化加密密法和螺線線型磁道加加密法等。。1.磁道接接縫加密法法利用專門的的技術(shù)制作作特殊的磁磁道。這種種特殊的磁磁道給復(fù)制制工作造成成了困難,,甚至有些些特殊磁道道完全不能能復(fù)制。此此外,它還還利用了磁磁道接縫信信息及長度度的隨機性性。這種隨隨機性導(dǎo)致致不同磁盤盤的磁道接接縫信息不不同,從而而可達(dá)到防防拷貝的目目的。磁道后置區(qū)區(qū)占據(jù)的長長度是隨機機變化的,,其范圍在在200~~300字字節(jié)之間,,且內(nèi)容也也隨機地變變化。4.3軟軟標(biāo)記加加密法所謂的磁道道接縫軟指指紋,就是是指磁道的的后置區(qū),,因而利用用磁道接縫縫軟指紋進(jìn)進(jìn)行加密是是完全可能能的。將不定長度度的后置區(qū)區(qū)取出以作作為鑒別的的依據(jù),是是磁道接縫縫軟指紋進(jìn)進(jìn)行加密的的關(guān)鍵。對對于標(biāo)準(zhǔn)的的磁道,讀讀取困難,,除非用端端口讀磁道道命令來實實現(xiàn),而端端口讀磁道道命令又是是十分繁瑣瑣的。利用用修改扇區(qū)區(qū)ID標(biāo)標(biāo)志和軟盤盤基數(shù)表的的辦法可以以較容易地地實現(xiàn)磁道道后置區(qū)的的讀取。修改扇區(qū)ID標(biāo)志實實際上是修修改磁道上上最后一個個扇區(qū)的ID標(biāo)志,,因為磁道道上最后一一個扇區(qū)與與后置區(qū)相相連??紤]慮到后置區(qū)區(qū)長度不到到300字字節(jié),因而而將磁道最最后一個扇扇區(qū)ID標(biāo)標(biāo)志中的N改為3即可。。4.3軟軟標(biāo)記加加密法補充:INT13HAH=5格式化化磁盤的單單條磁道。AH,AL,CH,,DH,DL與磁盤盤讀寫功能能類似,CL低6位位不用。BX:被格格式化的地地址字段集集合地址,,四個字節(jié)節(jié)組成。字字節(jié)1:磁磁柱號;字字節(jié)2:磁磁頭號;字字節(jié)3:扇扇區(qū)號;字字節(jié)4:每每個扇區(qū)的的字節(jié)數(shù)目目,它有四四種可能的的數(shù)值:0:128字節(jié);1:256字節(jié);2:512字節(jié);3:1024字節(jié)。。(P86)2.額外磁磁道加密法法一般磁盤機機可以正常常讀寫44個磁道。。有些磁盤盤機甚至還還可以多讀讀寫一些。。可以設(shè)想想,如果將將一些關(guān)鍵鍵數(shù)據(jù)放在在內(nèi)圈的磁磁道上,比比如放在41道,由由于標(biāo)準(zhǔn)的的拷貝軟件件只能拷貝貝0~39道,因因此可以起起到軟盤防防拷貝的目目的。由于標(biāo)準(zhǔn)的的格式化程程序只能格格式化出40個磁道道,所以額額外磁道的的制作要由由自己編制制的匯編程程序來實現(xiàn)現(xiàn)。假設(shè)將將A驅(qū)動器器中磁盤的的0面40道格式化化成一個標(biāo)標(biāo)準(zhǔn)格式的的磁道,具具體操作如如下:A>DEBUG—AXXXX:100MOVAX,0501MOVBX,,1000MOVCX,,2801MOVDX,,0INT13JC100INT3-E10002800010228000202-E10082800030228000402-E10102800050228000602-E10182800070228000802-E102028000902-G=1004.3軟軟標(biāo)記加加密法3.寬磁道道加密法給磁盤驅(qū)動動器配以寬寬磁頭,使使之能夠同同時在兩個個或多個磁磁道上讀//寫信息。。例如,配配以寬磁頭頭的磁盤驅(qū)驅(qū)動器可以以在兩個相相鄰的磁道道以及磁道道之間的間間隙同時寫寫下完全相相同的信息息而制成一一個寬磁道道。如果讀讀該磁盤的的一段程序序能夠使磁磁盤驅(qū)動器器的讀/寫寫磁頭在寫寫有相同信信息的兩個個磁道之間間(物理上上實際是一一個寬“磁磁道”)來來回步進(jìn),,那么讀出出的數(shù)據(jù)流流也不會是是中斷的,,即可以將將寬磁道上上的數(shù)據(jù)完完整讀出。。但在復(fù)制制磁盤時,,普通磁頭頭則無法復(fù)復(fù)制這樣的的寬磁道。。由于讀寫寫磁頭兩側(cè)側(cè)的抹磁頭頭的抹除作作用,在復(fù)復(fù)制盤中必必然將這個個寬磁道物物理上分開開,成為兩兩個普通磁磁道,在這這兩個磁道道間存在物物理間隙((即在間隙隙中沒有任任何信息)),而磁頭頭步進(jìn)地讀讀取這兩道道的信息,,必然導(dǎo)致致讀出信息息的不連續(xù)續(xù),從而就就可以達(dá)到到防拷貝的的目的。4.3軟軟標(biāo)記加加密法4.未格式式化磁道加加密法在格格式式化化磁磁盤盤時時,,跳跳過過某某個個或或某某些些磁磁道道,,造造成成一一個個或或多多個個未未格格式式化化的的空空白白磁磁道道,,使使被被加加密密程程序序在在系系統(tǒng)統(tǒng)下下能能正正常常工工作作,,而而傳傳統(tǒng)統(tǒng)的的拷拷貝貝軟軟件件則則無無法法正正常??娇截愗?。。使用用被被加加密密程程序序時時,,先先用用在在被被加加密密程程序序中中的的一一段段特特殊殊程程序序?qū)Υ糯疟P盤進(jìn)進(jìn)行行檢檢查查,,如如果果發(fā)發(fā)現(xiàn)現(xiàn)某某一一((或或某某些些))特特定定的的磁磁道道為為未未格格式式化化磁磁道道,,則則此此盤盤為為原原盤盤,,否否則則為為非非法法拷拷貝貝盤盤。。5..磁磁道道間間距距不不規(guī)規(guī)則則變變化化加加密密法法磁道道間間距距不不規(guī)規(guī)則則變變化化技技術(shù)術(shù)的的原原理理就就是是利利用用軟軟件件來來控控制制步步進(jìn)進(jìn)電電機機,,使使得得磁磁頭頭在在磁磁盤盤上上產(chǎn)產(chǎn)生生不不規(guī)規(guī)則則的的磁磁道道間間距距,,使使傳傳統(tǒng)統(tǒng)拷拷貝貝軟軟件件無無法法復(fù)復(fù)制制((傳傳統(tǒng)統(tǒng)的的拷拷貝貝工工具具是是利利用用程程序序控控制制步步進(jìn)進(jìn)電電機機,,使使磁磁盤盤驅(qū)驅(qū)動動器器的的讀讀//寫寫磁磁頭頭在在磁磁道道間間距距相相等等的的磁磁道道上上來來回回移移動動而而完完成成其其復(fù)復(fù)制制工工作作的的))。。4.3軟軟標(biāo)標(biāo)記記加加密密法法6..螺螺線線型型磁磁道道加加密密法法螺線線型型磁磁道道技技術(shù)術(shù)的的原原理理是是在在磁磁盤盤上上制制作作一一些些螺螺線線型型磁磁道道,,致致使使磁磁頭頭在在進(jìn)進(jìn)行行讀讀寫寫操操作作時時仍仍在在步步進(jìn)進(jìn),,即即磁磁頭頭步步進(jìn)進(jìn)與與讀讀寫寫數(shù)數(shù)據(jù)據(jù)同同時時進(jìn)進(jìn)行行。。這這樣樣就就完完全全打打亂亂了了傳傳統(tǒng)統(tǒng)的的拷拷貝貝工工具具的的復(fù)復(fù)制制過過程程,,使使經(jīng)經(jīng)過過這這種種方方法法加加密密的的磁磁盤盤無無法法被被拷拷貝貝,,達(dá)達(dá)到到加加密密的的目目的的。。4.3.2其其它它軟軟加加密密法法1..利利用用錯錯誤誤CRC碼碼加加密密2..磁磁道道噪噪聲聲法法3..雙雙機機加加密密法法4..卷卷標(biāo)標(biāo)加加密密法法5..弱弱位位加加密密法法6..IDROM加加密密法法7..利利用用加加密密器器進(jìn)進(jìn)行行加加密密4.4扇扇段段軟軟標(biāo)標(biāo)記記加加密密法法扇段段軟軟標(biāo)標(biāo)記記加加密密方方法法很很多多,,如如扇扇區(qū)區(qū)間間隙隙加加密密法法、、扇扇區(qū)區(qū)軟軟指指紋紋加加密密法法、、異異常常ID加加密密法法、、額額外外扇扇段段加加密密法法、、超超級級扇扇段段加加密密法法、、扇扇區(qū)區(qū)錯錯亂亂排排序序法法、、未未格格式式化化扇扇區(qū)區(qū)法法和和扇扇段段對對齊齊技技術(shù)術(shù)法法等等。。4.4.1扇扇區(qū)區(qū)軟軟指指紋紋加加密密法法扇區(qū)區(qū)間間隙隙軟軟指指紋紋加加密密方方法法為為::磁磁盤盤格格式式化化以以后后,,在在某某一一磁磁道道上上的的第第一一個個扇扇區(qū)區(qū)后后的的某某個個扇扇區(qū)區(qū)寫寫上上需需要要重重寫寫的的信信息息,,如如被被加加密密程程序序的的數(shù)數(shù)據(jù)據(jù)或或軟軟件件的的一一部部分分,,然然后后再再從從該該扇扇區(qū)區(qū)的的前前一一個個扇扇區(qū)區(qū)讀讀該該扇扇區(qū)區(qū)的的內(nèi)內(nèi)容容,,并并利利用用該該扇扇區(qū)區(qū)讀讀出出的的信信息息去去加加密密要要保保護(hù)護(hù)的的軟軟件件。。由由于于從從前前一一段段扇扇區(qū)區(qū)讀讀出出該該扇扇區(qū)區(qū)內(nèi)內(nèi)容容時時,,該該扇扇區(qū)區(qū)的的GAP2一一起起被被讀讀人人,,所所以以從從該該扇扇區(qū)區(qū)讀讀出出的的內(nèi)內(nèi)容容將將受受GAP2長長度度的的影影響響。。再再利利用用這這些些受受GAP2影影響響的的CRC碼碼去去加加密密用用戶戶程程序序,,其其方方法法和和途途徑徑可可以以靈靈活活多多樣樣。。4.4扇段段軟標(biāo)標(biāo)記加加密法法按扇區(qū)區(qū)間隙隙軟件件指紋紋加密密的一一個實實例((設(shè)被被處理理的扇扇區(qū)為為第40道道0面面1扇扇區(qū)))。(1))對第第40道道(可可以選選擇任任意一一道))進(jìn)行行特殊殊格式式化((只格格式化化0面)),使使第二二扇區(qū)區(qū)中從從第一一扇區(qū)區(qū)開始始,讀讀該重重寫扇扇區(qū)數(shù)數(shù)據(jù)時時,所所讀的的內(nèi)容容與重重寫前前是不不同的的。GAP2SYNCAM2…OldData(512字節(jié))CRCGAP2SYNCAM2…Newdata(512字節(jié))CRC同一磁道的同一扇區(qū)新數(shù)據(jù)寫入后DataFieldofaSector扇區(qū)軟指紋信息圖4-12軟指紋的形成(2)讀第第40道道0面3扇區(qū),讀讀之前修改改軟盤基數(shù)數(shù)表中的N值,使N=4,這這樣就可以以把第40道0面2扇區(qū)的全全部內(nèi)容讀讀出,而不不是僅讀出出數(shù)據(jù)域的的內(nèi)容。(3)經(jīng)這這樣處理后后的軟盤,,第40道道0面上的的9個扇區(qū)區(qū)就不能被被許多拷貝貝軟件所復(fù)復(fù)制。4.4.2異常ID加密法通常采用異異常ID參參數(shù)的方法法如下:(1)使扇扇區(qū)長度不不等于512字節(jié)節(jié)。例如,,早期版本本的CCDOS字字庫盤上,,其格式為為每道4扇扇區(qū),每扇扇區(qū)1024字節(jié)。。4.4扇段段軟標(biāo)記加加密法(2)改變變磁盤上扇扇區(qū)的排列列順序。例例如,可將將磁道中扇扇區(qū)格式化化成按相反反的順序或或交錯排列列的順序。。(3)使扇扇區(qū)號取標(biāo)標(biāo)準(zhǔn)格式的的取值范圍圍(l~9)以外的的值。(4)使磁磁道的邏輯輯地址與其其物理編號號不相符。。(5)使磁磁頭的邏輯輯編號與其其物理編號號不相符。。由于格式化化所需的ID參數(shù)是是由指針ES:BX指定的地地址,以磁磁道號T、、磁頭號H、扇區(qū)號號S和扇區(qū)區(qū)長度N四四個字節(jié)為為一組依次次排列的,,因此只要要改變這些些參數(shù)的順順序,就能能格式化出出特殊的磁磁道。4.4扇段段軟標(biāo)記加加密法4.4.3額外扇扇段加密法法在邏輯結(jié)構(gòu)構(gòu)上,一個個磁道包含含若干個扇扇區(qū)以及前前置區(qū)和后后置區(qū)(GAP4))。前置區(qū)區(qū)和后置區(qū)區(qū)都是為了了穩(wěn)定電機機或允許電電機轉(zhuǎn)速稍稍有偏差而而設(shè)的。前前置區(qū)的長長度是固定定的,為32字節(jié);;后置區(qū)的的長度則是是可變的,,依電機轉(zhuǎn)轉(zhuǎn)速的不同同而不同,,一般有數(shù)數(shù)百字節(jié)左左右。在FM制下下,每個扇扇區(qū)中不僅僅包含數(shù)據(jù)據(jù)區(qū)(512字節(jié))),還包含含同步電機機用的兩個個6字節(jié)的的SYNC字符序列列、4個字字節(jié)的ID地址標(biāo)志志、1個字字節(jié)的AM1、、1個字節(jié)節(jié)的數(shù)據(jù)標(biāo)標(biāo)志或刪除除數(shù)據(jù)標(biāo)志志、兩個2字節(jié)的CRC(ID域域的CRC和數(shù)據(jù)區(qū)區(qū)的CRC)、一個個11字節(jié)節(jié)的間隙((GAP2)和一個個42字節(jié)節(jié)的間隙((GAP3)。因此此,一個標(biāo)標(biāo)準(zhǔn)的扇區(qū)區(qū)包括數(shù)據(jù)據(jù)和一些必必需的標(biāo)志志、間隙,,共有512+12+4+2+4+11+42=587字節(jié)。下面的匯編編程序給出出了額外扇扇區(qū)磁道的的產(chǎn)生過程程C>DEBUG-E0000:0522;;修改磁盤盤基數(shù)表0000:0522DF02,25,02,09,0A,2A0000:0528FF50,0A-A100;格式式化軟盤第第16道0面程序0FA0:0100MOVAX,05010FA0:0103MOVBX,10000FA0:0106MOVCX,10010FA0:0109MOVDX,00000FA0:010CINT130FA0:010EINT30FA0:010F4.4扇段段軟標(biāo)記加加密法-E1000;;設(shè)置格式式化時所需需參數(shù)0FA0:100000.1000.0000.0100.0200.1000.0000.0200.020FA0:100800.1000.0000.0300.0200.1000.0000.0400.020FA0:101000.1000.0000.0500.0200.1000.0000.0600.020FA0:101800.1000.0000.0700.0200.1000.0000.0800.020FA0:102000.1000.0000.0900.0200.1000.0000.0A00.02-G=100;;執(zhí)執(zhí)行格式化程程序AX=0000BX=1000CX=1001DX=0000SP=FFEEBP=0000SI=0000DI=0000SS==0FA0ES=0FA0SS=0FA0CS=0FA0IP=010ENVUPEINGNZACPENC0FA0:0F0ECCINT3-E0000:0522;恢恢復(fù)磁磁盤基基數(shù)表表0000:0522DF..02,25,02,0A,09,2A0000:0528FF..0A,504.4扇段段軟標(biāo)標(biāo)記加加密法法下面給給出讀讀取磁磁道額額外扇扇區(qū)的的程序序及其其執(zhí)行行結(jié)果果:C>DEBUG;;進(jìn)進(jìn)入DEBUG-E0000:0525;;修修改磁磁盤基基數(shù)表表0000::052802,09,0A,2A.0000::0528FF,50,0A-A100;;讀讀16道0面第第10扇區(qū)區(qū)程序序0FA0::0100MOVAX,,02010FA0::0103MOVBX,,10000FA0::0106MOVCX,,100A0FA0::0109MOVDX,,00000FA0::010CINT130FA0::010EINT30FA0::010F4.4扇段段軟標(biāo)標(biāo)記加加密法法4.4扇段段軟標(biāo)標(biāo)記加加密法法4.4.4超超級扇扇段加加密法法由于磁磁盤機機本身身電路路的原原因,,磁盤盤機對對讀出出的要要求較較低,,往往往對大大扇區(qū)區(qū)能正正確讀讀出,,但要要復(fù)制制大扇扇區(qū)一一般是是做不不到的的。根根據(jù)這這個原原理,,Softguard系系統(tǒng)公公司研研制了了超級級扇段段技術(shù)術(shù)來實實現(xiàn)磁磁盤防防拷貝貝。超超級扇扇段技技術(shù)也也稱連連續(xù)寫寫技術(shù)術(shù),它它使用用專用用設(shè)備備在軟軟盤上上寫上上一些些超長長的扇扇區(qū),,這些些扇區(qū)區(qū)的長長度接接近一一個磁磁道的的長度度(如如N=5時時,每每扇區(qū)區(qū)字節(jié)節(jié)數(shù)為為4096字節(jié)節(jié))。。普通通的磁磁盤控控制器器不能能寫這這些扇扇區(qū),,但在在程序序控制制下可可以成成功地地讀出出這些些扇區(qū)區(qū)(磁磁盤機機甚至至可以以正確確讀出出N=6的的扇區(qū)區(qū))。。超級扇扇段技技術(shù)可可以作作為一一種防防拷貝貝加密密技術(shù)術(shù)單獨獨使用用,也也可以以同其其他技技術(shù)結(jié)結(jié)合起起來使使用,,如扇扇區(qū)接接縫指指紋技技術(shù)和和磁道道接縫縫指紋紋技術(shù)術(shù)中可可以使使用超超級扇扇段技技術(shù)。。4.4扇段段軟標(biāo)標(biāo)記加加密法法下面的程程序給出出了讀取取超級扇扇段的操操作過程程(這里里,超級級扇段容容量為4096字節(jié),,即N=5,其其所在磁磁道為0面39道)::C>DEBUG;進(jìn)入入DEBUG—E0000:0525;;修改磁磁盤基數(shù)數(shù)表0000:052502.0509.01一A100;;讀39道0面面第1扇扇區(qū)程序序0FA0:0100MOVAX,,02010FA0:0103MOVBX,,10000FA0:0106MOVCX,,27010FA0:0109MOVDX,,00000FA0:010CINT130FA0:010EINT30FA0:010F一G=100;;執(zhí)行行讀程序序AX=0000BX=1000CX=0901DX=0000SP=FFEEBP=0000SI=0000DI=0000DS=0FA0ES=0FA0SS=0FA0CS=0FA0IP=010ENVUPEINGNZACPENC0FA0:010ECCINT3一E0000:0252;;恢復(fù)復(fù)磁盤基基數(shù)表0000:052505.0201.09—Q4.4扇扇段軟標(biāo)標(biāo)記加密密法4.4扇扇段軟標(biāo)標(biāo)記加密密法4.4.5磁磁道扇扇區(qū)亂序序排列加加密法目前所用用的磁盤盤都是用用軟分段段的方法法規(guī)劃((格式化化)出來來的。所所謂軟分分段就是是用扇區(qū)區(qū)識別標(biāo)標(biāo)志來存存取磁盤盤上的信信息,整整個磁盤盤只有一一索引孔孔。這種種磁盤的的每個磁磁道上分分布著固固定數(shù)目目的扇區(qū)區(qū),每個個扇區(qū)的的開始部部分是扇扇區(qū)識別別標(biāo)志。。一條磁磁道上的的扇區(qū)從從小到大大按序排排列,讀讀寫磁盤盤扇區(qū)時時,根據(jù)據(jù)磁頭號號、磁道道號和扇扇區(qū)號來來決定讀讀寫磁盤盤上的哪哪一個扇扇區(qū)。每每個扇區(qū)區(qū)由標(biāo)識識域、數(shù)數(shù)據(jù)域和和兩個間間隙域四四個部分分構(gòu)成。。標(biāo)識域域指示該該扇區(qū)所所在的磁磁道號、、磁頭號號和扇區(qū)區(qū)號以及及扇區(qū)中中數(shù)據(jù)域域的大小小。4.4扇扇段軟標(biāo)標(biāo)記加密密法一般地,,正常格格式化出出來的磁磁盤,標(biāo)標(biāo)識域中中所指示示某扇區(qū)區(qū)的磁道道號、磁磁頭號和和扇區(qū)號號與該扇扇區(qū)的實實際位置置相一致致。讀寫寫磁盤時時,根據(jù)據(jù)請求參參數(shù)(磁磁道號、、磁頭號號和扇區(qū)區(qū)號)來來轉(zhuǎn)動盤盤片和移移動磁頭頭,并且且將讀出出的標(biāo)識識域與請請求參數(shù)數(shù)相比較較。如果果一致,,則目標(biāo)標(biāo)找到并并進(jìn)行讀讀寫操作作;如果果不一致致,則還還要轉(zhuǎn)動動盤片直直到一致致為止。。磁道扇區(qū)區(qū)亂序排排列法就就是打亂亂磁道扇扇區(qū)的正正常排列列,改變變由小到到大的次次序,由由大到小小排列,,或用大大數(shù)排列列、跳躍躍排列次次序排列列,等等等。為加密而而改變磁磁盤扇區(qū)區(qū)的排列列,只要要選擇一一道或幾幾道就行行了,完完全沒有有必要改改變所有有磁道的的扇區(qū)排排列。4.4扇扇段軟標(biāo)標(biāo)記加密密法4.4.6未未格式式化扇區(qū)區(qū)加密法法軟盤格式式化處理理后才能能存儲信信息,未未格式化化的磁盤盤是無法法使用的的。未格格式化扇扇區(qū)的加加密原理理就是利利用這個個特點,,在格式式化軟盤盤時,對對某一磁磁道的部部分扇區(qū)區(qū)不做格格式化處處理。這這樣,被被加密程程序運行行時,首首先利用用被加密密程序中中的一程程序段對對某一特特定磁道道進(jìn)行檢檢查。如如果發(fā)現(xiàn)現(xiàn)此磁道道為一正正常磁道道(即沒沒有未格格式化扇扇區(qū)),,那么此此盤必定定為復(fù)制制盤,否否則為原原盤。若若是原盤盤則正常常執(zhí)行,,否則作作異常處處理。4.4扇段段軟標(biāo)記加加密法GSH_BUFDB27H,00,01,02;格式化時時所需的標(biāo)標(biāo)識字段DB27H,00,02,,02;集集合DB27H,00,03,,02DB27H,00,04,,02DB27H,00,05,,02DB27H,00,06,,02DB27H,00,07,,02········PUSHESMOVAH,35H;;取磁磁盤基數(shù)表表指針MOVAL,1EHINT21HMOVAL,07H;;修改改磁盤基數(shù)數(shù)表中每道道的扇區(qū)數(shù)數(shù)ADDBX,04HMOVES:[BX],ALPOPES4.4扇段段軟標(biāo)記加加密法MOVDL,0;;將39磁道特特殊格式化化為有未格格式化的扇扇區(qū)MOVDH,0MOVCH,27HMOVBX,OFFSETGSH_BUF;;該磁道道僅有7個個扇區(qū)MOVAH,05INT13HPUSHESMOVAH,35HMOVAL,1EHINT21HMOVAL,09H;;恢復(fù)磁磁道基數(shù)表表原值A(chǔ)DDBX,04HMOVES:〔BX],ALPOPES········4.4扇段段軟標(biāo)記加加密法在被加密程程序中可以以安排一段段專門程序序,用來檢檢查磁盤是是否為原盤盤。具體做做法是:檢檢查磁盤的的39道上上扇區(qū)數(shù)是是否大于7。若大于于7,則此此盤為拷貝貝盤;否則則,為原盤盤。MOVAX,SEGMY_BUF;;ES:BX為用戶戶緩沖區(qū)地地址MOVES,AXMOVBX,OFFSETMY_BUFMOVAL,0lH;;讀一個個扇區(qū)MOVDL,00H;A驅(qū)動動器MOVDH,00H;;0磁頭MOVCH,27H;;39磁道道MOVCL,08H;;第8扇扇區(qū)MOVAH,02H;;讀盤INT13H;;轉(zhuǎn)轉(zhuǎn)BIOSCMPAX,0400;;申請扇扇區(qū)找到否否JNZILLEGL_DISKERR;;找到轉(zhuǎn)轉(zhuǎn)非法盤處處理子程序序4.4扇段段軟標(biāo)記加加密法4.4.7扇段段對齊加密密法扇段對齊技技術(shù)是一種種十分有效效的磁盤軟軟加密方法法。但是由由于要精確確依靠磁盤盤的轉(zhuǎn)動速速度來判斷斷扇段對齊齊,而磁盤盤的轉(zhuǎn)動速速度實際上上時時刻刻刻都不相同同,因而這這種加密技技術(shù)實施難難度大,也也較難得到到高可靠性性。因此,,在實際應(yīng)應(yīng)用中,扇扇段對齊技技術(shù)的使用用并不多見見。4.5口口令加密與與限制技術(shù)術(shù)4.5.1口令加密密技術(shù)比如一個利利用系統(tǒng)的的功能調(diào)用用07H來來接收鍵盤盤輸入的口口令加密示示范程序。。以回車鍵鍵(0DH)作為結(jié)結(jié)束符。口口令字輸入入后與程序序中事先安安排好的規(guī)規(guī)定值進(jìn)行行比較。若若一致,則則顯示:““OKPASS……”,然后后運行程序序;否則,,提示用戶戶重新輸入入口令字。。口令字最最多三次,,三次輸入入若均不正正確,則屏屏幕上顯示示:“非法法用戶,對對不起!””,然后返返回DOS,同時以以聲音報警警:笛!笛笛!笛!該程序比較簡簡單,容易被被破譯。實際際應(yīng)用時采用用個加密算法法事先將口令令字作為密鑰鑰對主要程序序段進(jìn)行加密密變換,在程程序的開頭接接收鍵盤輸入入的口令字作作為密鑰對文文件中的密碼碼進(jìn)行解密。。這樣,如果果非法用戶輸輸入的口令不不正確,程序序根本無法運運行,而對于于解密來說,,也是相當(dāng)困困難的。4.5口令令加密與限制制技術(shù)4.5.2限限制技術(shù)1.設(shè)置軟件件使用期限許多軟件加密密人員為了保保護(hù)自己的軟軟件產(chǎn)品,或或者為了控制制軟件的使用用周期,往往往在對軟件加加密過程中規(guī)規(guī)定了軟件的的使用期限。。被加密的軟軟件在每次運運行過程中,,首先通過一一段程序檢測測軟件使用期期限是否已經(jīng)經(jīng)到期。如果果沒有到期,,則使軟件正正常運行;否否則,提示用用戶軟件使用用已經(jīng)到期,,請用戶到軟軟件研制單位位進(jìn)行版本更更新?lián)Q代,并并中止軟件的的運行,甚至至從磁盤上刪刪除當(dāng)前軟件件。4.5口令令加密與限制制技術(shù)設(shè)置軟件使用用期限的方法法,一般是利利用DOS的的系統(tǒng)功能調(diào)調(diào)用2AH子子功能。該子子功能是獲取取系統(tǒng)日期的的系統(tǒng)功能調(diào)調(diào)用,其調(diào)用用方法如下::①入口參數(shù)::AH=2AH②出口參數(shù)::CX=年(1980至2099)DH=月(1=一月,,2=二月,,…,12=十二月)DL=日(1至31))AL=星期幾幾(0=星期期日,1=星星期一,…,,6=星期六六)注意:上述的的出口參數(shù)都都以二進(jìn)制形形式存放在相相應(yīng)的寄存器器中。下面的一段程程序所完成的的功能是:檢檢測當(dāng)前日期期是否超過1992年3月26日。。如果未到該該日期,則使使軟件正常工工作;否則使使軟件轉(zhuǎn)入死死機。程序如如下:MOVAH,2AHINT21HCMPCX,1992JBOK--PASSJAERRCMPDH,3JBOK--PASSJAERRCMPDH,26JBOK--PASSERR:PUSHCSPOPDSMOVDX,OFFSERMSGMOVAH,9INT21HRETRY::CLIHLTJMPRETRYMSGDBODH,OAH,09OK—PASS:………上述程序段在在檢測到軟件件使用期限已已經(jīng)到期的情情況下,首先先顯示提示信信息警告用戶戶,然后使程程序轉(zhuǎn)入死機機狀態(tài)。而有有的軟件在到到期的情況下下,則使用系系統(tǒng)功能調(diào)用用41H來將將軟件自身從從磁盤上刪除除。41H子子功能調(diào)用方方法如下:4.5口令令加密與限制制技術(shù)①入口參數(shù)::AH=41HDS:DX==帶路徑的文文件名②出口參數(shù)::CF=0刪除除成功CF=l刪除除不成功功,AX返回出出錯碼((2—一一未找到到路徑;;5—一一拒絕存存?。├?,下下面的程程序片段段完成刪刪除文件件C:\\M\YPROG.EXE和和返回DOS的功能能:PUSHCSPOPDSMOVAH,41HMOVDX,,OFFSETWJM;刪刪除文件件C:\\M\YPROG.EXEINT21HMOVAX,,4CFFH;;帶錯誤誤碼FFH返回回DOSINT21HWJMDBC::\M\\YPROG..EXE4.5口口令加加密與限限制技術(shù)術(shù)2.限制制軟件的的運行次次數(shù)限制軟件件的運行行次數(shù)是是軟件加加密中的的一種常常用的方方法。其其基本思思想是::利用安安裝程序序?qū)⒁粋€個被加密密的軟件件拷貝到到硬盤中中,并將將一個規(guī)規(guī)定的運運行次數(shù)數(shù)寫入被被加密的的軟件中中。對于于被加密密的軟件件來說,,在每次次運行過過程中,,都要將將運行次次數(shù)單元元內(nèi)容減減1,當(dāng)當(dāng)某一次次運行結(jié)結(jié)果中運運行次數(shù)數(shù)減為0時,該該加密軟軟件從此此便不能能運行,,或拒絕絕運行,,或?qū)⒆宰陨韽拇糯疟P上刪刪除掉,,然后要要求用戶戶利用安安裝盤重重新安裝裝。單獨獨使用這這種方法法的加密密軟件有有一種缺缺陷,那那就是如如果被加加密的軟軟件不具具有防拷拷貝功能能,則非非法拷貝貝者可以以將該軟軟件拷貝貝到自己己的磁盤盤上。只只要運行行次數(shù)不不為0,,它就一一直執(zhí)行行到運行行次數(shù)為為0為止止。4.5口口令加加密與限限制技術(shù)術(shù)為了阻止止拷貝,,可將運運行次數(shù)數(shù)單元設(shè)設(shè)置在主主引導(dǎo)扇扇區(qū)中。。如果是是合法用用戶,安安裝程序序便將規(guī)規(guī)定的運運行次數(shù)數(shù)寫入主主引導(dǎo)扇扇區(qū)相應(yīng)應(yīng)的單元元中,被被加密軟軟件每一一次運行行時讀取取這一單單元的內(nèi)內(nèi)容并進(jìn)進(jìn)行減1操作,,然后判判斷運行行次數(shù)是是否為0,從而而決定程程序是否否執(zhí)行。。對于這這種將運運行次數(shù)數(shù)寫入硬硬盤主引引導(dǎo)扇區(qū)區(qū)的方法法,如果果非法復(fù)復(fù)制者只只將軟件件本身拷拷貝到自自己的磁磁盤上,,而沒有有將他自自己硬盤盤中主引引導(dǎo)扇區(qū)區(qū)的運行行次數(shù)單單元的內(nèi)內(nèi)容進(jìn)行行相應(yīng)的的設(shè)置,,被拷貝貝的程序序就不能能正常運運行。更更進(jìn)一步步,為了了防止非非法用戶戶識別出出主引導(dǎo)導(dǎo)扇區(qū)的的運行次次數(shù),可可以將運運行次數(shù)數(shù)單元的的內(nèi)容經(jīng)經(jīng)過加密密變換以以后,以以密碼的的形式存存放。加加密密鑰鑰可以使使用被加加密軟件件自身的的首簇號號,這樣樣基本可可以做到到一次一一密,使使得解密密者想通通過走捷捷徑(不不分析加加密程序序,而想想仿造運運行次數(shù)數(shù))的方方法來破破譯這一一軟件是是非常困困難的.4.6硬盤盤防拷拷貝技技術(shù)常由出出售給給用戶戶的商商品軟軟件和和硬盤盤加密密安裝裝系統(tǒng)統(tǒng)軟件件組成成。這這兩個個軟件件都通通過軟軟盤方方式售售給用用戶,,其中中被出出售的的商品品軟件件是經(jīng)經(jīng)過加加密處處理的的。硬盤加加密技技術(shù)實實際上上是給給硬盤盤加鎖鎖,加加鎖的的硬盤盤只有有用密密鑰開開鎖后后才能能使用用。密密鑰有有兩種種形式式:一一種是是口令令形式式,密密鑰由由授權(quán)權(quán)用戶戶掌握握;另另一種種是密密鑰盤盤形式式,密密鑰盤盤掌握握在授授權(quán)用用戶手手中。。加密硬硬盤只只對授授權(quán)用用戶開開放,,而對對非授授權(quán)用用戶關(guān)關(guān)閉,,既阻阻止了了非法法用戶戶對硬硬盤的的使用用,又又不影影響合合法用用戶的的使用用,從從而有有效地地保護(hù)護(hù)了硬硬盤上上信息息的安安全。。硬盤盤加密密技術(shù)術(shù)主要要采用用以下下幾種種方法法:①主引導(dǎo)扇扇區(qū)設(shè)置密密碼防拷貝貝;②利用文件件首簇號防防拷貝;③硬盤消隱隱與還原技技術(shù)。4.6硬盤盤防拷貝技技術(shù)4.6.l主引導(dǎo)導(dǎo)扇區(qū)設(shè)置置密碼防拷拷貝硬盤的主引引導(dǎo)扇區(qū)中中存放主引引導(dǎo)程序和和硬盤分區(qū)區(qū)表的信息息。通常引引導(dǎo)程序占占用的偏移移地址0000~~00DFH,而硬盤分分區(qū)表則從從偏移地址址01BEH開始存放,,在引導(dǎo)程程序和硬盤盤分區(qū)表之之間大約有有206個字節(jié)空間間是空白區(qū)區(qū)。硬盤安裝程程序的主要要功能有兩兩個:一是是在硬盤上上設(shè)置密碼碼標(biāo)志;二二是將被加加密的軟件件由軟盤安安裝到硬盤盤上(一般般是在硬盤盤上建立一一個子目錄錄,將被加加密軟件的的標(biāo)志存放放在此子目目錄中)。。被安裝的的軟件,一一般在出售售給用戶之之前已進(jìn)行行了防動態(tài)態(tài)跟蹤和防防靜態(tài)分析析的加密處處理,并具具有識別硬硬盤主引導(dǎo)導(dǎo)扇區(qū)中存存放的密碼碼功能。下下面給出其其密碼設(shè)置置程序和密密碼識別程程序。1.密碼設(shè)設(shè)置程序密碼設(shè)置程程序?qū)儆诎舶惭b程序的的一部分,,可以使用用如下的一一段程序::BUF:DB512DUP(0));讀盤緩緩沖區(qū)PUSHCSPOPDSPUSHCSPOPES;;CS==DS=ESMOVBX,OFFSETBUTMOVCX,lMOVDX,0080HMOVAX,0201H;;讀硬硬盤主引導(dǎo)導(dǎo)扇區(qū)到BUFINT13HMOVBX,OFFSETBUFMOVAX,7E7EHMOV[BX十00E0H],AX;密密碼7E7EH到主主引導(dǎo)扇區(qū)區(qū)00E0H單元MOVBX,OFFSETBUFMOVCX,lMOVDX,0080HMOVAX,0301H;將設(shè)置置密碼的主主引導(dǎo)扇區(qū)區(qū)寫回硬盤盤INT13H2.密碼識識別程序密碼識別程程序?qū)儆诒槐患用苘浖绦虻牟坎糠郑捎糜萌缦乱欢味纬绦蜻M(jìn)行行主引導(dǎo)區(qū)區(qū)約定偏移移地址處密密碼的識別別操作:BUFDB512DUP(0));讀盤緩緩沖區(qū)PUSHCSPOPDSPUSHCSPOPES;;CS==DS=ESMOVBX,OFFSETBUFMOVCX,lMOVDX,0080HMOVAX,0201H;;讀硬硬盤主引導(dǎo)導(dǎo)扇區(qū)INT13HMOVBX,,OFFSETBUFMOVAX,,7E7EHCMP[BX++00E0H],AXJZOK_PASS;;有密密碼,則轉(zhuǎn)轉(zhuǎn)OK_PASS正正常進(jìn)行RETRY:CLIHLT;;無密密碼,死機機JMPRETRYOK_PASS:………………4.6硬盤盤防拷貝技技術(shù)4.6.2利用文文件首簇號號防拷貝不同類型硬硬盤的柱面面數(shù)、磁頭頭數(shù)、每個個柱面上的的扇區(qū)數(shù)都都是不盡相相同的,對對于同一個個文件來說說,拷到兩兩個硬盤上上,其首簇簇號一般是是不相同的的。即使同同一類型的的硬盤,磁磁盤空間的的使用狀況況也不盡相相同。1..文文件件首首簇簇號號的的獲獲取取與與安安裝裝文件件首首簇簇號號的的獲獲取取與與安安裝裝操操作作由由安安裝裝程程序序來來完完成成。。安安裝裝程程序序的的主主要要工工作作是是::將將被被加加密密的的軟軟件件拷拷貝貝到到硬硬盤盤根根目目錄錄或或某某一一子子目目錄錄下下,,讀讀取取該該軟軟件件的的首首簇簇號號,,以以明明文文或或密密文文的的形形式式寫寫入入被被加加密密軟軟件件規(guī)規(guī)定定的的地地方方。。對對于于DOS3.3(含含3.3)以以上上的的版版本本來來說說,,文文件件首首簇簇號號保保存存在在FCB第第28、、29字字節(jié)節(jié)中中,,而而對對于于DOS3.3以以下下的的版版本本來來說說,,文文件件首首簇簇號號則則在在FCB的的第第26、、27字字節(jié)節(jié)中中。。下面的一段程程序就是安裝裝軟件中用于于獲取被加密密軟件首簇號號的程序片段段:MSGDB0DH,0AH,’FILEOPENERROR!$$’FCBIDB0FFH,0,0,0,0,0,20,0,’PROTECTI.EXE’,25DUP(0)·······MOVDX,OFFSETFCBIMOVAL,0FHINT21HCMPAL,0JNZERRMOVAH,30HINT21HCMPAL,3JBNEXTMOVSI,OFFSETFCBIMOVAX,[SI++28]JMPGOONERR:MOVDX,OFFSETMSGMOVAH,9INT2IHMOVAX,4CFFHINT21HNEXT:MOVAX,[SI+26]]GOON:………4.6硬盤防防拷貝技術(shù)2.文件首簇簇號的識別文件首簇號的的識別操作常常由被加密程程序自己來完完成。另外也也有
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 食品終端配送合同樣本
- 深圳市商業(yè)地產(chǎn)租賃合同
- 學(xué)校與教師簽訂的勞動合同
- 八小時工作制勞動合同模板
- 生態(tài)農(nóng)業(yè)種植技術(shù)服務(wù)合同
- 游泳池常年服務(wù)承包合同范本教學(xué)用
- 農(nóng)用土地租賃合同協(xié)議書
- Module 1 Unit 1 I want a hot dog,please(教學(xué)設(shè)計)2024-2025學(xué)年外研版(三起)英語六年級下冊
- 11 再塑生命的人2024-2025學(xué)年新教材七年級上冊語文新教學(xué)設(shè)計(統(tǒng)編版2024)
- 電競比賽承辦合同范本
- 定量包裝商品培訓(xùn)
- 毛戈平-+毛戈平深度報告:再論毛戈平商業(yè)模式與核心壁壘:個人IP+化妝學(xué)校+線下服務(wù)
- 第二章美容手術(shù)的特點及其實施中的基本原則美容外科學(xué)概論講解
- 山東省濰坊市2024-2025學(xué)年高三上學(xué)期1月期末考試生物試卷含答案
- 2025年“春訓(xùn)”學(xué)習(xí)心得體會例文(3篇)
- 中央2025年公安部部分直屬事業(yè)單位招聘84人筆試歷年參考題庫附帶答案詳解
- 2025年春新外研版(三起)英語三年級下冊課件 Unit4第1課時Startup
- 2025年職業(yè)教案編寫指南:教師技巧
- 人教版(2025新版)七年級下冊數(shù)學(xué)第七章 相交線與平行線 單元測試卷(含答案)
- 2025-2025學(xué)年度第二學(xué)期高二物理教學(xué)計劃
- 幼兒園市級課一等獎-大班語言健康繪本《我的情緒小怪獸》有聲繪本課件
評論
0/150
提交評論