Tours De Protection de CD
La protection de logiciel de CD-checking est employée par presque tous les programmes distribués sur le CD. Les produits dans cette catégorie s'étendent des défenses très simples (qui ne sont pas à dire vraie protection contre des biscuits du tout) au logiciel protecteur fortement sophistiqué. Les produits plus simples vérifient seulement pour voir si un programme a commencé à fonctionner sans CD correct, qui menacerait la fonctionnalité du programme. Il y a beaucoup de manières de découvrir si le CD original a été inséré dans une commande de CD-ROM. Et, alors que la plupart de logiciel protecteur est délaissé contre CDs "brûlé", il peut au moins le rendre impossible de copier simplement un programme à une commande dure. Une raison d'employer de telles défenses simples doit se protéger contre la prétendue "déchirure" des jeux. "déchirant" se rapporte au déplacement de grandes mais unessential parties du jeu, comme l'animation, la musique, ou le DirectX. Le jeu rétréci est alors comprimé de sorte que les gens avec des raccordements plus lents puissent le télécharger de l'Internet, de ce fait de manière significative augmentant le nombre de copies piratées. Comment Travail De CD-CheckersLes contrôleurs classiques de CD ont leur endroit dans le monde, et une fois correctement programmés, peuvent poser des problèmes même pour les biscuits meilleurs. Toujours, il est souvent facile trouver et enlever cette protection. La plupart des routines de vérification emploient l'appel de GetDriveTypeA api pour trouver la commande de CD, et tous autres contrôles sont exécutés seulement après déterminer quelle commande est le CD-ROM. Le logiciel protecteur le plus simple vérifie seulement le nom ou l'étiquette de CD's. Si le nom de CD's a été changé, le programme ne fonctionnera pas, puisque le programme a déterminé que le CD original n'est pas dans la commande. Quelques réalisateurs de protection ont essayé de compliquer le CD copiant en appelant CDs dans une manière dont cause une erreur pendant copier, employant souvent un espace vide dans le nom de CD ou un certain caractère spécial qui apparaît comme espace vide. Jusque récemment, beaucoup de brûleurs n'ont pas pu copier un tel CDs. Un autre tour commun doit vérifier les un ou plusieurs dossiers choisis sur le CD, particulièrement ceux qui le plus généralement sont enlevés des versions déchirées, telles que DirectX, animation, musique, et documentation. Cette technique a été généralement employée avec 80-minute CDs parce que, dans le passé, l'approvisionnement limité en médias du CD 80-minute a signifié que les biscuits ont dû enlever quelque chose du programme afin de faire leur version s'adapter sur CDs disponible. Aujourd'hui même, biscuits enlèvent parfois quelque chose pouvoir copier le jeu au normallength CD-Rs. Le logiciel protecteur le plus compliqué, comme SecuROM ou SafeDisc, peut vérifier des erreurs sur le CD. Les contrôles par sondage qui déterminent la présence du CD original pendant que le jeu est joué sont très inpopulaires avec des biscuits, et souvent le résultat dans la protection étant inexactement enlevée d'un jeu et de beaucoup de réparations suivantes étant exigés. Ce genre de protection a été avec succès employé avec plusieurs jeux. Le logiciel protecteur a juste découvert que le CD original n'a pas été inséré naturellement, comme avec presque tout le logiciel de protection, tôt ou tard les meilleurs biscuits apprendront comment enlever la protection. Le problème est que quand ils le fendent la deuxième fois autour, ils font tellement plus rapidement. Logiciel De Protection de CDJetons un coup d'oeil au logiciel de protection de CD disponible vous, et nous considérerons ce que les travaux et ce que ne fonctionne pas, et pourquoi. CD-Cops CD-Cops est protection commerciale contre la sécurité de données de lien (http://www.linkdata.com) qui n'est pas très largement répandue. CD-Cops identifie CDs original et copies rejetées. CDs protégé avec CD-Cops peut être identifié par une fenêtre apparaissant sur l'écran une fois que les débuts de programme, comme par le dossier et des dossiers de CDCOPS.DLL avec le GZ _ et des prolongements de W_X sur le CD. La protection elle-même est une partie d'un dossier exécutable protégé. Quand ce dossier est commencé, il vérifie pour voir si le CD original est présent en examinant l'angle entre le premier et les derniers blocs accessibles de CD. Le CD original contient un code 8-byte avec l'angle correct et une routine de vérification détecte l'angle sur le CD et puis le compare à l'angle correct décodé. Quand une copie brûlée du CD original est présente, l'angle différera, et le programme ne fonctionnera pas. (un avantage de cet arrangement de protection pour le fabricant de CD est qu'il n'exige pas une machine copiante de CD spécial.) La routine d'essai de CD-Cops's est un morceau de programmation véritablement sophistiqué. Elle emploie également un tour intelligent : Elle place un temporisateur pour voir si la routine d'essai fonctionne pendant longtemps, qui signifierait qu'elle est tracée. Si elle constate que la routine fonctionne pendant longtemps, elle cause une erreur dans le programme. CD-Cops contient également plusieurs sommes, qui empêchent des changements aux pièces de code—de programme de la routine sont décodées dans la mémoire en courant. Mais CD-Cops a une faiblesse critique : Il peut être décodé sans CD original. En fait, vous pouvez même trouver un décodeur pour lui sur l'Internet. La raison est que les créateurs du programme ont laissé le code correct dans le programme que, quoique codé, quelques biscuits intelligents pouvaient décoder. A eu CD-Cops utilisé une technique semblable à SafeDisc, qui décode le programme sans le vérifier, et seulement après lire l'angle du CD, il aurait été impossible de décoder un programme—protégé par CD-Cops sans CD original. DiscGuard DiscGuard des technologies de TTR (http://www.ttrtech.com) emballe sa protection avec les dossiers exécutables sur le CD et les code ; un code numérique sur le CD original est alors employé pour le décodage. Quand un utilisateur essaye de copier un CD protégé avec DiscGuard, le code numérique n'est pas copié correctement, et quand le programme copié est commencé, la routine de décodage l'identifie comme copie et le court comme version de démo ou avec d'autres limitations, car les réalisateurs souhaitent. Un inconvénient distinct pour des réalisateurs employant DiscGuard est qu'ils doivent employer l'un ou l'autre une machine copiante spéciale—un dispositif appelé Dg-DG-Author—pour produire CDs DiscGuard-protégé. Dans la mesure où je sais, DiscGuard a été employé avec le seulement un programme de grande diffusion, le jeu de rassemblement de Colin McRae. Tandis que le biscuit qui a enlevé la protection échouait la première fois, une version fonctionnante corrigée était signalé très le jour suivant. Etant donné le fait que c'était un genre complètement nouveau de protection, la vitesse avec laquelle il était criqué n'a pas bien réfléchi sur ses réalisateurs. Leur seulement salut était que le biscuit était Moelch, qui plus tard est devenu célèbre pour les colons fendants 3. Un avantage de DiscGuard est probablement qu'il n'y a aucun décodeur universel, parce qu'il est rarement employé. LaserLock LaserLock est protection commerciale contre MLS LaserLock international (http://www.laserlock.com). Le CD LaserLock-protégé contient un annuaire invisible avec des dossiers contenant des erreurs illisibles. Le logiciel de codage est employé ainsi qu'une marque de laser quand le CD est produit, qui tout d'abord fait lui vraiment impossible pour copier, mais il peut réellement être obtenu autour tout à fait facilement. Tandis qu'il n'y a aucun décodeur pour LaserLock, il y a un programme qui peut copier un CD de LaserLocked à une commande dure. Alternativement, vous pouvez placer un programme de CD-burning pour ignorer des erreurs et pour copier le CD, et les dossiers erreur-contenants peuvent même être sauvés avec un rédacteur de sortilège, et toutes les parties lisibles du dossier peuvent être copiées dans un dossier sur la commande dure. LaserLock a protégé beaucoup de programmes et jeux, le plus bien connu de ce qui sont les retombées radioactives 2, le Shogo, et le SpecOps. (LaserLock a été massivement amélioré dans sa dernière version. Tandis qu'elle est évident comme si cette protection peut un jour devenir désuète, LaserLock est actuellement employé tout à fait fequently. Cependant, il y a un décodeur public pour cette protection.) SafeCast SafeCast est protection commerciale contre C-Dilla (http://www.c-dilla.com), qui a également développé SafeDisc, décrit après. (C-Dilla est maintenant une partie de Macrovision, http://www.macrovision.com.) SafeCast est conçu pour des équipes de développement et est censé empêcher le programme copiant pendant le développement. Il n'exige aucune machine copiante spéciale, et la protection est conçue particulièrement pour CDs brûlé. Quand les bêtas appareils de contrôle reçoivent le CDs codé, ils doivent entrer en contact avec la compagnie qui a codé le CD pour recevoir par la poste ou l'email le code nécessaire pour exécuter le programme. SafeDisc SafeDisc (souvent appelé C-Dilla en raison de la compagnie qui l'a développé) est protection le plus généralement utilisée d'aujourd'hui, ainsi nous jettera un coup d'oeil détaillé à lui. Il est employé par les producteurs internationaux de jeu tels que le divertissement doux d'Ubi, GT interactif, divertissement d'effet, Microprose, rouge Donnent l' assaut à le divertissement, le logiciel Take2 interactif et le TalonSoft, arts électroniques, et le Microsoft. Comme avec l'autre protection commerciale, le dégagement de SafeDisc a été précédé par une campagne énorme sur l'Internet réclamant que sa protection ne pourrait pas être enlevée et qu'elle était irrépressible. Naturellement, une version piratée de la première SafeDisc-a protégé le jeu est apparue environ une semaine après le dégagement du jeu. Ceci certainement n'a pas rendu les personnes chez C-Dilla heureuses, et il appelle leur protection dans la question, mais parce qu'il n'y a aucune à concurrence proportionnée, SafeDisc continue à être le choix de de plus en plus distributeurs. La présence de ces dossiers sur un CD signale la
présence de SafeDisc : CDs SafeDisc-protégés contiennent également un dossier principal d'EXE et un dossier avec le même nom que l'EXE principal, mais avec la prolongation d'icd. L'EXE contient la protection principale, et le dossier original d'EXE est codé dans le dossier d'ICD. Cet EXE codé emploie les macros dedémontage, qui le rendent très difficile à tracer. SafeDisc emploie également plusieurs tours d'anti-correction conçus pour contrecarrer Soft-ICE, en particulier. D'abord, il divise l'EXE en deux parts. La première partie contient seulement l'information de décodage pour la deuxième partie, mais n'a autrement aucun code important. La deuxième partie est codée par le premier, qui le rend impossible de changer n'importe quoi dans la première partie, même lorsqu'essayant de faire ainsi dans la mémoire. Un dispositif protecteur dans la première partie de l'EXE emploie le tour de CreateFileA pour vérifier la présence de SoftICE. Si SoftICE est trouvé, un message semble avertissant qu'un programme de mise au point doit être enlevé de la mémoire. Si le biscuit néglige l'avertissement et essaye de travailler autour de lui, le programme décode incorrectement la deuxième partie de l'EXE dès que le programme de mise au point sera trouvé encore. La routine de décodage elle-même détermine alors encore la présence du programme de mise au point en utilisant CreateFileA. SafeDisc emploie également un tour 68h INTERNE. Si un programme de mise au point est trouvé, les constantes de décodage seront placées inexactement, et la deuxième partie de l'EXE sera inexactement décodée. Notez une version plus ancienne de
SafeDisc a employé un tour avec le registre de correction qui
pourrait découvrir actif La deuxième partie des essais d'EXE pour la présence de l'EXE original en utilisant un contrôle simple de CD, et des essais aux erreurs de lecture du CD original. S'il trouve une erreur, il montre une fenêtre exigeant de l'utilisateur d'insérer un CD original. Si le biscuit essaye de venir à bout cet avertissement, le programme simplement se brisera plutôt que montre un message d'erreur après le prochain décodage incorrect. La deuxième partie de l'EXE, derrière l'essai pour le CD original, contient un programme qui calcule le code nécessaire pour décoder l'EXE original. De programme les courses CLOKSPL.EXE d'abord, qui montre seulement une image pendant le chargement. Après, le programme est entièrement occupé à calculer la clef de décodage selon de diverses conditions. Des erreurs de CD sont lues et, selon la présence ou le manque d'erreurs, les conditions sont vraies ou fausses. Il est presque impossible d'influencer le programme avec une pièce rapportée parce qu'il lit les erreurs avec CLCD16.DLL et CLCD32.DLL. par la suite le résultat de calcul est XORed avec la date réelle, qui signifie que le code est différent chaque jour. (il serait intéressant de courir le juste de programme avant minuit, parce que le changement de date devrait déclencher le dispositif de sécurité de décodage.) En conclusion, la deuxième partie du dossier d'EXE décode une petite routine trouvée dans la mémoire, qui contient des adresses pour appeler DPLAYERX.DLL et la clef correcte de décodage. Il est difficile d'arrêter le programme courant dans cette petite routine de décodage. Le traçage est inadmissible parce qu'il a été commencé en créant un nouveau fil, et la deuxième partie de l'EXE l'appelle avec des appels du fil api de résumé. L'one-way à entrer dans lui, bien que, doit changer la première instruction au début en 3h INTERNE, a placé un palier dans SoftICE à 3h INTERNE, exécute le programme, et, une fois que le programme s'arrête au palier, puis remplace le 3h INTERNE avec la valeur originale. Dans cette routine, SafeDisc charge DPLAYERX.DLL dans la mémoire et puis appelle son procédé. DPLAYERX.DLL fonctionne comme l'EXE principal. Tandis que la bibliothèque charge en la mémoire, _ la fonction DllMain@12 est commencée, et elle fixe le décodage de la deuxième partie du DLL. La fonction (Ox77F052CC) s'appelle ainsi qu'une clef pour décoder l'EXE original, et la clef est de nouveau XORed avec la date de sorte que la clef correcte soit employée pour le décodage. _ la fonction DllMain@12 fonctionne comme la première partie de l'EXE et contient les mêmes tours d'anti-correction. des tours d'Anti-correction sont de nouveau employés au début de la deuxième fonction, Oc77F052CC. Quand un programme de mise au point n'est pas trouvé, le programme décode l'EXE original, qui est codé dans le dossier avec une prolongation d'icd. (le décodage est exécuté dans la mémoire, et le programme n'est pas sauvé au disque.) Une fois que l'EXE est correctement décodé, le programme original est lancé. SafeDisc était un morceau parfait de programmation, mais, comme avec toute la protection commerciale, une fois qu'il avait été surmonté par le passé, il pourrait facilement être surmonté encore. Vous pouvez trouver un décodeur pour SafeDisc sur l'Internet qui permet à un programme SafeDisc-protégé d'être exécuté d'une copie linéaire du CD original, y compris des erreurs. Le problème avec ces décodeurs est qu'il est difficile de créer une copie linéaire exacte du CD, parce qu'un tel CD peut contenir plus de 22.000 erreurs. Aussi, en copiant, le CD doit être indiqué seulement à la vitesse 1x de sorte que les erreurs soient lues correctement et, d'ailleurs, non tous les CD-R ou commandes de CD-ROM puissent lire ces erreurs correctement pour même à 1x. Etant donné la facilité avec laquelle SafeDisc peut être surmonté, il serait ridiculement naïf d'employer seule la protection de SafeDisc (rappelez-vous les colons 3). Toujours, SafeDisc est le meilleur logiciel protecteur commercial sur le marché, et ce n'est pas un mauvais investissement pour une compagnie qui ne veut pas développer leur propre protection. Tandis que SafeDisc n'arrêtera pas la distribution du logiciel piraté, il réduira nettement copier de CDs original par les utilisateurs moyens. Notez le programme de A pour décoder
SafeDisc (unSafeDisc) sans CD original est apparu récemment.
R!SC SecuROM SecuROM (http://www.securom.com) est protection commerciale contre Sony DADC. Les similitudes entre SecuROM et SafeDisc suggèrent que SafeDisc soit probablement basé sur SecuROM, et que les créateurs de SafeDisc ont simplement amélioré SecuROM. Ceci est suggéré par la présence du DLL 6 de CMS 1 de dossiers, du CMS_95.DLL, ou du CCMS_NT.DLL sur le CDs SecuROM-protégé. Comme SafeDisc, SecuROM est dans le développement continu. La protection de SecuROM est basée sur le même principe que SafeDisc. Bien qu'elle ait été employée pour protéger beaucoup de jeux et programmes, y compris abandoné, descente, FreeSpace, FIFA 99, centauri d'alpha, machines, et Diablo célèbre 2, je ne le décrirai pas en détail parce qu'il est employé de moins en moins. L'histoire courte est que quelques données de SecuROM sont codées dans un dossier d'EXE, qui seulement est correctement décodé une fois le CD original est inséré. L'équipement copiant spécial est exigé pour produire un CD SecuROM-protégé. Tandis qu'il n'est pas facile de fendre la protection de SecuROM, il n'est certainement pas impossible. Il est légèrement plus facile d'enlever SecuROM qu'il doit enlever SafeDisc parce que seulement certaines des données sont codées, et parce que son système de routine et de protection de décodage est légèrement plus simple. Fondamentalement, le dumper de mémoire qui sauve le dossier d'EXE au disque après que le décodage correct puisse être employé pour décoder, comme avec SafeDisc. (naturellement, ceci peut également être fait manuellement dans un programme de mise au point, mais il prendrait légèrement plus du temps.) Notez que SecuROM, comme SafeDisk, a été amélioré dans ses dernières versions. Vous pouvez trouver un décodeur de SecuROM sur l'Internet qui peut commencer des programmes d'une copie linéaire de CD. D'autre part, il n'est pas facile de tirer une telle copie : Sa création peut prendre plusieurs heures, et le résultat est loin de certain. Si vous commencez un programme SecuROM-protégé à partir d'un CD original, vous pouvez le vider employant la dernière version de ProcDump. Tandis que les lotisseurs devraient considérer cette possibilité fendante, il serait encore meilleur si SecuROM lui-même se concentrait sur aborder cette paille. VOB VOB est la dernière protection commerciale dans la famille de SecuROM et de SafeDisc, et, à mon avis, aussi le meilleur. La correction VOB est une vraie douleur parce qu'elle emploie les macros dedémontage qui prolongent la correction terriblement et la rendent très désagréable. Autrement elle n'est rien révolutionnaire. De même que commun avec ce type de protection, les contrôles de programme pour les erreurs sur le CD original, qui diffèrent sur des copies. Des valeurs de décodage pour un produit indiqué sont calculées selon un certain algorithme, et ces valeurs sont alors employées pour décoder le dossier original de PE. Puisque c'est vraiment rien de neuf, les biscuits qui sont parvenus à enlever la trouvaille de SafeDisc il facile d'enlever VOB aussi bien. VOB actuellement n'est pas très largement répandu, bien que le jeu tchèque Polda 2 et même les colons 3 aient été protégés avec lui, et dans la mesure où je sais il plus n'est mis à jour. D'Autres Tours De Protection de CDIl y a quelques autres arrangements de protection utilisés pour CDs : • Le CD contient plus de 74 minutes de données Le CD contient plus de 74 minutes de données J'ai vu la première fois ce type de protection dans les commandos de jeu. Il est basé sur l'incapacité d'un utilisateur de copier le programme à un CD 74-minute typique parce que le programme est trop grand (plus grand que 660MB). Le CD original du programme est écrit à une densité plus haute que normalement, qui lui fait une capacité plus élevée. Quand cette protection est apparue la première fois sur le marché, elle était efficace parce qu'il n'était pas possible d'acheter 80-minute CD-Rs, et les biscuits ont dû enlever quelque chose du programme pouvoir le copier. Le logiciel protecteur de commandos était prêt pour celui bien que, et s'il ait constaté que toutes les voies audio avaient été enlevées du CD, le jeu a refusé de fonctionner. Ce type de protection ne semble pas beaucoup de raisonnable aujourd'hui cependant, puisque le prix des médias 80-minute est presque sur le pair avec 7 4-minute CD-Rs, et tous les meilleurs programmes et brûleurs brûlants peuvent fonctionner avec les médias 80-minute. Cet arrangement de protection se comprendrait seulement si le CD étaient plus grand que 80 minutes, mais s'il étaient, quelques commandes de CD-ROM auraient la lecture d'ennui il. COT endommagé (table des matières) Si vous essayez de copier un CD protégé avec une table des matières endommagée, le programme brûlant montrera un message d'erreur et refusera de copier le CD. Le logiciel de protection emploie ce principe en ajoutant un bloc supplémentaire de données au CD (sans compter que le principal), le plaçant souvent entre les voies audio. Puisque le format d'OIN ne soutient pas deux blocs de données sur un CD, le programme brûlant échouera. Le talon d'Achilles de cette protection est que tous les meilleurs programmes brûlants laissent l'utilisateur couper l'avertissement et tirer la copie. (cette protection de copie a été employée avec le CD de jeu de commandos.) Dossiers Énormes Ce type de protection est souvent employé ainsi que la technique endommagée de COT. Le CD original contient les dossiers qui sont plus grands que 600MB une fois qu'ils sont copiés à une commande dure. En fait, une fois que le CD entier a été copié à une commande dure, il peut être plus grand qu'2gb, faisant refuser le programme brûlant de brûler. Ce type de protection était important parce qu'il a empêché le CD du premier étant copié à une commande dure de sorte qu'un CD 74-minute ait pu être fait à partir d'un 80-minute un. Actuellement cependant, avec la disponibilité de 80-minute CD-Rs (comme discuté précédemment) ce type de protection a perdu son importance. Erreurs Physiques Ce type de protection présente réellement des erreurs physiques sur le CD, tel qu'une voie endommagée. (cette technique n'a pas été employée très souvent, bien qu'elle ait été employée dans la protection merveilleuse des colons 3.) Très peu de commandes de CD peuvent lire de telles erreurs. (je l'ai essayé avec ma commande de TEAC, et j'ai réussi seulement après un long temps. Il était nécessaire de le lire seulement à la vitesse 1x et d'être très patient, puisque la lecture de l'un CD a pris environ six heures.) Quoique vous puissiez trouver un programme sur l'Internet qui facilite la lecture, cette technique est toujours bonne. Il peut être difficile de produire le CDs original cependant, puisque le CD doit être mécaniquement endommagé juste de la bonne manière, chaque fois. Un ou plusieurs dossiers énormes Ce le moyen très bon de la protection le rend difficile de créer une version déchirée du CD d'un programme. Dans ce cas-ci, tous les dossiers sont combinés dans un ou plusieurs dossiers très grands sur le CD. Si les dossiers emploient le codage ou la compression, il est très difficile que le biscuit de comprendre la structure de dossier, et la transforme de nouveau dans de petits dossiers afin d'enlever les dossiers qu'il considère inutile. Quand la protection est bonne, le biscuit devra combiner les petits dossiers en arrière encore dans un grand dossier et remplacer, par exemple, les dossiers d'acoustique qu'il a voulu enlever avec l'un-deuxième fait une pause pour raccourcir le dossier. Après, il devra réindexer l'en-tête de dossier avec les informations sur les longueurs et les endroits des dossiers dans le grand dossier complexe. Ce n'est pas facile et cela prend beaucoup de temps, et sans compter que ce qui, il est facile de faire une erreur et de créer une copie inutile du jeu ou du programme. Une fois combinée avec un programme qui vérifie pour voir si des changements ont été faits, il devient bien plus difficile enlever cette protection. La démo avec des fonctions choisies de programme a limité Dans cette situation, le programme protégé manque de plusieurs fonctions importantes ; par exemple, économiser est généralement handicapé. Cependant, quelques programmeurs ne font pas assez d'attention et ils bloquent simplement les fonctions dans le code de programme sans les enlever, dans ce cas tout le biscuit doit faire doit dégager la fonction pour rendre le programme entièrement fonctionnel. En utilisant cette protection, des parties importantes du programme devraient être enlevées plutôt que simplement bloquées. Il y a des programmes merveilleux pour protéger des versions de démo appelées ASProtect et le SVKP.. ASProtect et SVKP créent et économiser une démo qui devient entièrement fonctionnelle seulement une fois le numéro d'matricule correct est écrit. (les Démos sont l'un des moyens les plus sûrs de la protection, et elles sont bonnes pour le logiciel cher aussi bien que le shareware.) Les biscuits ne peuvent pas enlever la protection contre
un programme qui ne contient pas les parties importantes du code pour
lui faire la fonction. Leur seulement manière autour de la
protection qui implique d'enlever le code d'un programme serait
d'écrire le code absent eux-mêmes, et ceci est fortement peu
probable. c'est un article supplémentaire par Sylvester Douni
|
|||
|