Zgodbe o obvozu zaščit pred kopiranjem software-a

Vse ostalo v zvezi z nostalgijo. Če se bo tega nabralo bomo odprli nov podforum.

Zgodbe o obvozu zaščit pred kopiranjem software-a

OdgovorNapisal/-a sundancer » 19 Mar 2025, 21:03

Računalniški muzej zbira zgodbe o obhodu zaščit pred kopiranjem programske opreme za Spectrum, Commodore in druge klasične računalnike.
https://bsky.app/profile/racunalniskimu ... qikv7v722q

@VolkD ? :)
Dyslexic man walks into a bra.
Uporabniški avatar
sundancer
 
Prispevkov: 955
Pridružen: 16 Jan 2015, 23:36
Kraj: Domžale
Zahvalil se je: 407 krat
Prejel zahvalo: 515 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 61

Re: Zgodbe o obvozu zaščit pred kopiranjem software-a

OdgovorNapisal/-a VolkD » 19 Mar 2025, 21:31

Ne da se mi spisat štorije, lahko pa dam intervju, kako sem skopiral šah na QL-ju. Samo ne vem komu ?
Dokler bodo ljudje mislili, da živali ne čutijo bolečine, bodo živali čutile, da ljudje ne mislijowww.S5tech.net
Uporabniški avatar
VolkD
Administratorji strani
 
Prispevkov: 66611
Pridružen: 29 Dec 2014, 20:49
Kraj: Kačiče (Divača)
Zahvalil se je: 19951 krat
Prejel zahvalo: 10198 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 254

Re: Zgodbe o obvozu zaščit pred kopiranjem software-a

OdgovorNapisal/-a xfce » 19 Mar 2025, 22:57

VolkD je napisal/-a:Ne da se mi spisat štorije, lahko pa dam intervju, kako sem skopiral šah na QL-ju. Samo ne vem komu ?

kaj pa tisto, ko si našel neke nedokumentirane ukaze za nek xyz procesor?
Uporabniški avatar
xfce
 
Prispevkov: 954
Pridružen: 14 Feb 2015, 12:38
Kraj: Poljane nad Škofjo loko
Zahvalil se je: 132 krat
Prejel zahvalo: 290 krat
Uporabnika povabil: S52O
Število neizkoriščenih povabil: 58

Re: Zgodbe o obvozu zaščit pred kopiranjem software-a

OdgovorNapisal/-a VolkD » 20 Mar 2025, 00:49

xfce je napisal/-a:kaj pa tisto, ko si našel neke nedokumentirane ukaze za nek xyz procesor?
Ja saj to še vedno obstaja.
Z80 procesorji različnih proizvajalcev se na videz obnašajo povsem enako. Ampak samo na videz.
Ko se v sodobnih procesorjih zgodi, da v instrukcijsko dekodirno enoto pride ukaz, ki ni legalen, se zgodi interupt in če je na tem interuptu ( in običajno to je - vsaj reset) se taka zadeva obdela.

Pri Z80 temu ni tako. Tu se pač nekaj izvede. Kaj je ta nekaj je odvisno od proizvajalca do proizvajalca. Dva nista enaka. Sicer je res, da se večinoma ne zgodi nič, ampak včasih pa se.

Strašno zanimivo je bilo ugotavljati kaj se zgodi. Z80 ima tri registre, ki se nekako spogledujejo z 16 biti. To so IX, IY (naslovni registri) In registerski par H in L. To sta ločena registra, a se v paru lahko obnašata kot naslovni register. Nabor (govorimo o strojnem jeziku oziroma vsaj assm) instrukcij za HL register, kljub temu, da je lahko naslovni, ima bistveno manjši nabor ukazov, kot je nabor ukazov kot IX in IY. In tu se zaresna zabava šele začne.

V instrukcijah sta dva bita, ki povesta za kateri register se gre. HL register pa uradno nima vseh kombinacij, ki jih imata IX in IY register, temveč le nekatere. Dekodirni del instrukcij za HL registerski par je nekdo kar copy/paste še za HL register (govorimo o HW). Zato nekatere neuradne in nedokumentirane instrukcije, ki so sicer za IX in IY povsem legit, delujejo tudi na HL registerskem paru. Nikoli verjetno ne bom pogruntal zakaj nekatere ne delajo, druge pa delajo nekaj drugače.
Nedojemljivo je tudi, da nekatere delajo samo na procesorjih določenih proizvajalcev. Zaradi tovrstne anomalije se je dalo z nedokumentiranimi instrukcijami določiti proizvajalca Z80 procesorja. No nekatere ilegalne instrukcije na srečo delujejo na vseh znanih procesorjih. Zato se je z njimi dalo narediti kodo, za katero se je točno vedelo kaj dela, a ker disasemblerski programi niso poznali nelegalnih instrukcij, je bilo praktično nemogoče debugirati tako narejen program.

Naredil sem članek na to temo. Pri Moj micro so članek (ker je bil predolg ?) razdelili na dva dela. Prvi del je bil objavljen, drugi pa je izginil v revijskih nebesih. Šele mnogo kasneje sem izvedel, da je bil pritisk proizvajalcev igric tako velik, da se je revija odločila, da drugega dela ne objavi. Kar nekaj proizvajalcev SW je namreč to dejstvo že poznalo in ga koristilo za zaščito svojih produktov pred kopiranjem.
Dokler bodo ljudje mislili, da živali ne čutijo bolečine, bodo živali čutile, da ljudje ne mislijowww.S5tech.net
Uporabniški avatar
VolkD
Administratorji strani
 
Prispevkov: 66611
Pridružen: 29 Dec 2014, 20:49
Kraj: Kačiče (Divača)
Zahvalil se je: 19951 krat
Prejel zahvalo: 10198 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 254

Re: Zgodbe o obvozu zaščit pred kopiranjem software-a

OdgovorNapisal/-a Lovro7 » 20 Mar 2025, 01:40

VolkD je napisal/-a:
xfce je napisal/-a:kaj pa tisto, ko si našel neke nedokumentirane ukaze za nek xyz procesor?
Ja saj to še vedno obstaja.
Z80 procesorji različnih proizvajalcev se na videz obnašajo povsem enako. Ampak samo na videz.
Ko se v sodobnih procesorjih zgodi, da v instrukcijsko dekodirno enoto pride ukaz, ki ni legalen, se zgodi interupt in če je na tem interuptu ( in običajno to je - vsaj reset) se taka zadeva obdela.

Pri Z80 temu ni tako. Tu se pač nekaj izvede. Kaj je ta nekaj je odvisno od proizvajalca do proizvajalca. Dva nista enaka. Sicer je res, da se večinoma ne zgodi nič, ampak včasih pa se.

Strašno zanimivo je bilo ugotavljati kaj se zgodi. Z80 ima tri registre, ki se nekako spogledujejo z 16 biti. To so IX, IY (naslovni registri) In registerski par H in L. To sta ločena registra, a se v paru lahko obnašata kot naslovni register. Nabor (govorimo o strojnem jeziku oziroma vsaj assm) instrukcij za HL register, kljub temu, da je lahko naslovni, ima bistveno manjši nabor ukazov, kot je nabor ukazov kot IX in IY. In tu se zaresna zabava šele začne.

V instrukcijah sta dva bita, ki povesta za kateri register se gre. HL register pa uradno nima vseh kombinacij, ki jih imata IX in IY register, temveč le nekatere. Dekodirni del instrukcij za HL registerski par je nekdo kar copy/paste še za HL register (govorimo o HW). Zato nekatere neuradne in nedokumentirane instrukcije, ki so sicer za IX in IY povsem legit, delujejo tudi na HL registerskem paru. Nikoli verjetno ne bom pogruntal zakaj nekatere ne delajo, druge pa delajo nekaj drugače.
Nedojemljivo je tudi, da nekatere delajo samo na procesorjih določenih proizvajalcev. Zaradi tovrstne anomalije se je dalo z nedokumentiranimi instrukcijami določiti proizvajalca Z80 procesorja. No nekatere ilegalne instrukcije na srečo delujejo na vseh znanih procesorjih. Zato se je z njimi dalo narediti kodo, za katero se je točno vedelo kaj dela, a ker disasemblerski programi niso poznali nelegalnih instrukcij, je bilo praktično nemogoče debugirati tako narejen program.

Naredil sem članek na to temo. Pri Moj micro so članek (ker je bil predolg ?) razdelili na dva dela. Prvi del je bil objavljen, drugi pa je izginil v revijskih nebesih. Šele mnogo kasneje sem izvedel, da je bil pritisk proizvajalcev igric tako velik, da se je revija odločila, da drugega dela ne objavi. Kar nekaj proizvajalcev SW je namreč to dejstvo že poznalo in ga koristilo za zaščito svojih produktov pred kopiranjem.


Zanimivo!
Lahko izvem v kateri številki je bil objavljen prvi članek?
Vse je lahko žarnica, če je dovolj toka. http://lovro7.eu/index.html
Uporabniški avatar
Lovro7
 
Prispevkov: 371
Pridružen: 11 Feb 2024, 21:19
Kraj: Velenje (Šmartno ob Paki)
Zahvalil se je: 138 krat
Prejel zahvalo: 113 krat
Uporabnika povabil: DusanK
Število neizkoriščenih povabil: 9

Re: Zgodbe o obvozu zaščit pred kopiranjem software-a

OdgovorNapisal/-a VolkD » 20 Mar 2025, 02:20

Lovro7 je napisal/-a:Zanimivo!
Lahko izvem v kateri številki je bil objavljen prvi članek?
Nimam pojma. Ampak moralo je biti drugo ali tretje leto izhajanja Moj mikro.

1985/ 3, 4 številka.

Še popravek, drugi del je objavljen, a samo en del.
Dokler bodo ljudje mislili, da živali ne čutijo bolečine, bodo živali čutile, da ljudje ne mislijowww.S5tech.net
Uporabniški avatar
VolkD
Administratorji strani
 
Prispevkov: 66611
Pridružen: 29 Dec 2014, 20:49
Kraj: Kačiče (Divača)
Zahvalil se je: 19951 krat
Prejel zahvalo: 10198 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 254

Re: Zgodbe o obvozu zaščit pred kopiranjem software-a

OdgovorNapisal/-a DusanK » 20 Mar 2025, 02:31

"Nelegalni ukazi 2" str. 42
https://ia902304.us.archive.org/31/item ... 985_04.pdf

"Šola programiranja v strojnem jeziku (8)" str. 36
https://ia802304.us.archive.org/31/item ... 985_03.pdf
Največji čar - električar
Uporabniški avatar
DusanK
 
Prispevkov: 7587
Pridružen: 18 Jan 2015, 01:43
Kraj: Medvode
Zahvalil se je: 3488 krat
Prejel zahvalo: 5955 krat
Uporabnika povabil: VolkD
Število neizkoriščenih povabil: 255

Re: Zgodbe o obvozu zaščit pred kopiranjem software-a

OdgovorNapisal/-a xfce » 20 Mar 2025, 12:45

Meni je najbolj fenomenalna zaščita, ki je bila narejena za disketo pod imenom fuzzy bit.

https://en.wikipedia.org/wiki/Fuzzy_bit

Gre se za to, da so original igrico na disketo posneli tako, da nek bit niso posneli čisto pravilno z manchester enkodiranjem. In torej, ko je program na vsake toliko časa prebral disketo je enkrat prebral 1 in drugič 0. Torej je vedil, da ima opravka z original disketo. Če si pa to igrico prekopiral, je pa vsebino skupiral točno tako kot je bila na originalu. S to razliko, da je bil tisti fuzzy bit na novi disketi napisan fixno in je vedno vrnil določeno stanje. Ko je igrica večkrat zapored prebrala isto stanje je vrgla ven nek naključen error. :D

Uporabniški avatar
xfce
 
Prispevkov: 954
Pridružen: 14 Feb 2015, 12:38
Kraj: Poljane nad Škofjo loko
Zahvalil se je: 132 krat
Prejel zahvalo: 290 krat
Uporabnika povabil: S52O
Število neizkoriščenih povabil: 58

Re: Zgodbe o obvozu zaščit pred kopiranjem software-a

OdgovorNapisal/-a DusanK » 20 Mar 2025, 20:47

Ha, se spomnim ene diskete podjetja Mikro Ada. Ne vem točno kaj je bilo gor, mislim pa, da nek antivirusni program.
Bil je na disketi 5,25" kapacitete 1,2MB.
S klasičnimi, naprednimi DOS ukazi ter raznimi XXCopy extra programi se je ni dalo prekopirati, da bi delovala.
Saj skopiralo jo je, samo program potem ni deloval in je prijavil napako zaščite.
In sem ugotovil zakaj.

Bila je fizično poškodovana. Točno na določenem sektorju. To sem opazil, ko sem disketo dal pred luč/svetlobo, jo vrtil naokoli in na določenem delu sem opazil čisto malo luknjico.
Glede na (index hole) odprtino/luknjo, ki jo ima sleherna 1,2MB disketa tako na tršem ovoju kot mehkejšem/gibljivem mediju sem glede na pozicijo originalne luknje naredil s šivanko luknjico na novi disketi.
Če mi spomin ne nagaja sem prej skopiral original na novo disketo 1:1 in nato s ozko šivanko naredil luknjico skozi original na kopijo.
In nova disketa (kopija) je štartala.
Tako nekako je bilo. :)

Disketa_1.2MB_primer_bad_sector (Custom).png
Največji čar - električar
Uporabniški avatar
DusanK
 
Prispevkov: 7587
Pridružen: 18 Jan 2015, 01:43
Kraj: Medvode
Zahvalil se je: 3488 krat
Prejel zahvalo: 5955 krat
Uporabnika povabil: VolkD
Število neizkoriščenih povabil: 255

Re: Zgodbe o obvozu zaščit pred kopiranjem software-a

OdgovorNapisal/-a Krampus » 20 Mar 2025, 21:54

Tako, z luknjico, je imel Siemens zaščito licence, ampak na 3,5" disketi.
Program za prenos licence je skopiral licenci v skriti imenik na trdem disku.
Ko si hotel prenesti licenco na drugi PC, si licenco najprej prenesel na luknjasto disketo in od tam na drugi disk.
Kopiranje skritega imenika ni delovalo.

Zdravilo je bilo kloniranje trdega diska, prenos klonirane licence na disketo in prenos na drugi disk.
Uporabniški avatar
Krampus
 
Prispevkov: 940
Pridružen: 18 Jan 2015, 16:32
Kraj: Središče ob Dravi
Zahvalil se je: 358 krat
Prejel zahvalo: 234 krat
Uporabnika povabil: VolkD
Število neizkoriščenih povabil: 48

Re: Zgodbe o obvozu zaščit pred kopiranjem software-a

OdgovorNapisal/-a miharix » 20 Mar 2025, 23:12

Kako je pol program zaznal obstoj te luknjice? Stalno random biti na določenem sektorju ??
Lp,
M.
Uporabniški avatar
miharix
 
Prispevkov: 1894
Pridružen: 18 Jan 2015, 10:23
Kraj: Kamnik / LJ
Zahvalil se je: 891 krat
Prejel zahvalo: 640 krat
Uporabnika povabil: VolkD
Število neizkoriščenih povabil: 112

Re: Zgodbe o obvozu zaščit pred kopiranjem software-a

OdgovorNapisal/-a DusanK » 21 Mar 2025, 00:28

Lahko je gledal, če je na določenem sektorju ali več njih tam "bad sektor" in če je le ta obstajal je šel program naprej, drugače pa javil napako npr. nelegalna kopija.
Največji čar - električar
Uporabniški avatar
DusanK
 
Prispevkov: 7587
Pridružen: 18 Jan 2015, 01:43
Kraj: Medvode
Zahvalil se je: 3488 krat
Prejel zahvalo: 5955 krat
Uporabnika povabil: VolkD
Število neizkoriščenih povabil: 255

Re: Zgodbe o obvozu zaščit pred kopiranjem software-a

OdgovorNapisal/-a sundancer » 22 Mar 2025, 16:41

VolkD je napisal/-a:Ne da se mi spisat štorije, lahko pa dam intervju, kako sem skopiral šah na QL-ju. Samo ne vem komu ?

Tole sporočilo sem dobil od Računalniškega muzeja:
Would you maybe be able to post in the forum that we’d love to hear their stories and they can reach out via info@racunalniski-muzej.si for an interview? :)
Dyslexic man walks into a bra.
Uporabniški avatar
sundancer
 
Prispevkov: 955
Pridružen: 16 Jan 2015, 23:36
Kraj: Domžale
Zahvalil se je: 407 krat
Prejel zahvalo: 515 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 61

Re: Zgodbe o obvozu zaščit pred kopiranjem software-a

OdgovorNapisal/-a VolkD » 22 Mar 2025, 16:55

Hmmm :_think
Sem mislil interviju v živo in v slovenščini,...
Dokler bodo ljudje mislili, da živali ne čutijo bolečine, bodo živali čutile, da ljudje ne mislijowww.S5tech.net
Uporabniški avatar
VolkD
Administratorji strani
 
Prispevkov: 66611
Pridružen: 29 Dec 2014, 20:49
Kraj: Kačiče (Divača)
Zahvalil se je: 19951 krat
Prejel zahvalo: 10198 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 254


Vrni se na Ostalo

Kdo je na strani

Po forumu brska: 0 registriranih uporabnikov in 1 gost