Programy komputerowe w świetle krajowego prawa autorskiego korzystają ze szczególnej ochrony. W odróżnieniu od standardowego „utworu" nie ma zastosowania wobec nich tzw. dozwolony użytek, który umożliwia w określonych okolicznościach korzystanie z utworu bez zgody twórcy.
Ustawodawca dał nam jednak w zamian instytucję tzw. legalnego użytkownika, tj. osoby, która legalnie weszła w posiadanie oprogramowania, np. nabywając licencję. Co do zasady, taki użytkownik może, nawet bez zgody producenta oprogramowania, zwielokrotniać, tłumaczyć, przystosowywać, zmieniać układ lub dokonywać jakichkolwiek innych zmian, jeżeli są niezbędne do korzystania z oprogramowania zgodnie z jego przeznaczeniem, w tym do poprawiania błędów.
Nie wymaga zezwolenia twórcy m.in. także badanie i testowanie oprogramowania w celu poznania jego niechronionych elementów, czyli idei oraz zasad, na jakich się on opiera (tzw. reverse analysis). Takich czynności może jednak dokonać wyłącznie osoba posiadająca prawo korzystania z egzemplarza oprogramowania. Jak zauważa się w literaturze przedmiotu, wyniki reverse analysis można wykorzystać nawet przy tworzeniu własnego, konkurencyjnego oprogramowania, „także takiego, który praktycznie »klonowałby« funkcje pierwowzoru"1.
Czym innym jest natomiast tzw. inżynieria odwrotna, polegająca na zwielokrotnianiu samego kodu źródłowego lub tłumaczeniu jego formy – badania samego kodu w celu ustalenia, w jaki sposób on funkcjonuje. Służy więc ona poznaniu tajemnicy oprogramowania – jego kodu źródłowego, który jest swoistym DNA, algorytmem oprogramowania. Będąc osobą uprawnioną do korzystania z oprogramowania, możemy dokonywać takich czynności, w określonych w ustawie okolicznościach, wówczas gdy jest to niezbędne dla zapewnienia współdziałania programów komputerowych. Co istotne jednak, pozyskane informacje nie mogą być wykorzystane do rozwijania lub wytwarzania oprogramowania o istotnie podobnej formie wyrażenia.
Jak więc widać, prawo polskie dość wąsko traktuje dozwolony użytek w IT – ściśle określone uprawnienia przysługują wyłącznie uprawnionym osobom, które w sposób legalny weszły w posiadanie oprogramowania. Nie jest możliwe kopiowanie fragmentu kodu oprogramowania w celu stworzenia konkurencyjnego produktu. Kod źródłowy jest tym, co prawo autorskie chroni najbardziej w oprogramowaniu.