Program komputerowy jest dziełem autorskim i przysługuje mu prawna ochrona z tego tytułu. Twórcy programu lub przejmującemu jego prawa właścicielowi (na ogół jest to firma lub organizacja) wolno ustalić zasady rozpowszechniania i użytkowania programu.
Korzystając z programu użytkownik godzi się na przestrzeganie warunków licencji. Naruszenie umowy licencyjnej jest naruszeniem prawa; w określonych sytuacjach nosi znamiona wykroczenia lub przestępstwa.
Niniejsza informacja przedstawia różne typowe warunki licencyjne, w kolejności od najbardziej restrykcyjnych do najbardziej swobodnych. Notatkę przygotowano na podstawie materiałów Fundacji Wolnego Oprogramowania (Free Software Foundation); tam też można znaleźć obszerniejsze omówienie wprowadzonych pojęć.
Producent formułuje warunki, których spełnienie jest konieczne dla użytkowania i rozpowszechniania oprogramowania. Kod źródłowy programu podlega ochronie jako własność producenta (na ogół jest niedostępny).
Producent ani dystrybutor nie roszczą sobie wyłącznych praw do oprogramowania; nabywca programu przejmuje te same prawa.
Licencja obejmuje prawa do rozpowszechniania kodu źródłowego. Prawa do jego modyfikacji mogą być ograniczone.
Ujawnienie kodu źródłowego jest jedynym sposobem udowodnienia wszystkim zainteresowanym, że oprogramowanie poprawnie realizuje postawione przed nim zadania. Nie znaczy to, że programy open source są skuteczniejsze od programów z niejawnym kodem źródłowym: te drugie mogą być poprawne i skuteczne, tyle że nie da się tego publicznie udowodnić.
Ujawnienie kodu źródłowego nie jest samo w sobie gwarancją jakości. Wśród programów open source zdarzają się programy bliskie doskonałości, bywają też programy raczej mierne. To samo da się powiedzieć o oprogramowaniu zamkniętym. Tym niemniej upublicznienie kodu stwarza możliwość jego analizy przez szerokie rzesze zainteresowanych programistów, co sprzyja skutecznemu usuwaniu wad.
Licencje typu Copyleft chronią oprogramowanie przed zmianami warunków użytkowania, które w jakikolwiek sposób ograniczałyby dalsze rozpowszechnianie na zasadzie free software.
Free Software Foundation rozpowszechnia oprogramowanie na warunkach Ogólnej Licencji Publicznej GNU (GNU is Not Unix) — istnieje jej (nieoficjalny) przekład polski.
Licencja typu BSD (Berkeley System Distribution) została opracowana dla wolnego oprogramowania tworzonego na Uniwersytecie Berkeley. Pozwala ona na modyfikację oprogramowania, na dystrybucję zmodyfikowanych wersji oraz na włączanie ich do nowych projektów, także o charakterze zamkniętym. Licencja BSD nakłada obowiązek powołania się na autorstwo wykorzystanego kodu źródłowego i na tekst licencji oraz zaznaczenia miejsc, w których oryginalny kod źródłowy został zmodyfikowany.
Istnieje (nieoficjalny) przekład polski tekstu licencji BSD.