Program za podpis v računalniškem programiranju je kratek blok neprevedene izvorne kode, ki je pripet na konec e-pošte ali druge komunikacije. Podpis v elektronski komunikaciji je blok besedila, ki je samodejno priložen odhodnim sporočilom, včasih za identifikacijo uporabnika. Ko je blok kode vključen v to področje, je znan kot program za podpis. Večina podpisnih programov izvaja trivialne funkcije, ki oddajajo podatke ali informacije na presenetljiv način za kratkost dejanske kode. Omejitve pomenijo, da podpisni program ni preveden, kar od radovednega gledalca zahteva, da ga prevede, da vidi rezultate – naloga, ki zahteva nekaj znanja programiranja – kar pomeni, da si večino podpisnih programov ogledujejo predvsem tisti v programski skupnosti.
Eden od elementov podpisnega programa je način, na katerega je napisan. Namesto da bi izgledala kot običajna računalniška programska koda, je pogosto napisana na zelo nestandarden skrajšan način z uporabo funkcij, operaterjev in jezikovnih funkcij, ki jih ne vidimo pogosto. Del razloga za to je, da je koda težko berljiva, tako da izhod programa ni takoj razviden, čeprav je to mogoče storiti tudi za zagotovitev videza, ki je na nek način edinstven. Ime za kodo, ki je bila napisana tako, da jo je namerno težko brati, je zakrita koda.
Skupni izhod za program za podpis je lahko ime osebe, ki je napisala kodo, ali ime osebe, ki pošilja sporočilo, ki mu je priloženo. Priljubljene so tudi grafične ali besedilne predstavitve matematičnih formul in rekurzivnih operacij. Čeprav je možen skoraj vsak izhod, je izvorna koda običajno omejena na manj kot štiri vrstice, kar je tradicionalna največja dolžina datoteke s podpisom.
Dejansko oblikovanje izvorne kode je lahko del podpisnega programa, saj namiguje na izhod, ki bi lahko nastal. Včasih je to mogoče storiti tako, da izvorno kodo uredite tako, da tvori sliko, povezano z izhodom, ali z uporabo črk in simbolov v kodi za črkovanje besed. To je mogoče, ker večina programskih prevajalcev ignorira več presledkov in prelomov vrstic, namesto tega gleda samo na dejanske znake v vrstici kode.
Ena dodatna metoda, ki se uporablja za vplivanje na dolžino, delovanje in včasih videz kode v programu za podpis, je uporaba makrov. Makri so način za dodelitev dela veljavne računalniške kode krajšemu ali nadomestnemu zaporedju znakov ali simbolov. Ko je makro pozneje nameščen v izvorno kodo, ga prevajalnik nadomesti s kodo, ki jo predstavlja. To ne more samo skrajšati podpisnega programa, ampak z uporabo makrov z zavajajočimi imeni ali ki vključujejo druge makre lahko postane program izjemno težko berljiv.