Previous Up No next

Various signature programs

Signature programs are short programs that people have been using as part of their signature. They are small (2 to 4 lines) programs, that are often rather cryptic because they have to save space as much as possible.

A polygot signature program by Tom Dawes-Gamble

The signature program below is a polygot, which means that it is both a valid C program as a valid COBOL program. Both produce the same output.
 char *o, *c="%.9s%.7s%.7s\n"; extern void printf(char*, ...); int main(int d,
 char**z){int b,g,l,n;d=d/d;l=*(c+d+d)-*(c+d);g=*c-d++-l--;n=d*d;b=l+n++;d-=d;
 o = "  DISPLAY'tmdg@tmdg';,,;'.co.uk '*>"+g++;printf(c,o-++b,o+l,o);l = ~++n;
 o = "  DISPLAY'http://www.tmdg.co.uk/ ' *>"+g;printf(c,o-++b,o+l,o);exit(d);}
He also wrote a hex converter signature program.

Lisp signature program by Reini Urban signature

Reini Urban  http://xarch.tu-graz.ac.at/~rurban/
(defun remove (item from)
  (cond ((atom from) from)
        ((equal (car from) item) (remove item (cdr from)))
        (t (cons (car from) (remove item (cdr from))))))

A Maple signature program by James McCarron

cat(``,op(zip(cat,[seq(_,_="Js nte al akr")],[seq(_,_="utAohrMpeHce ")])));

A Korne shell script by Darren S. Embry

#!/bin/ksh
h="Darren S. Embry (dsembr01@starbase.spd.louisville.edu)";o="\1";s=$o;\
c=$((${RANDOM}%10+2));until [ $c -eq 0 ];do s=$o$s;c=$((${c}-1));done;e\
cho $h|sed "s/\(.\)/"$s"/g"|sed "s/^\(.*\)$/"$s"/g"|sed "s/\(.\)"`echo \
$s|sed "s/"'\\'$o"$//g"`"/"$o"/g"|sed "s/^\(.*\)"`echo $s|sed "s/"'\\'$\
o"$//g"`"$/"$o"/g"

Map of Australia by Michael Stapleton using Rexx

Created the following rexx signature program, which prints the map of Australia:
... rx "_='0a'x;say ' ,-_|\'_'/     \'_'\_,-\_/'_'     v'

An Awk prime number generator by Sam Trenholme

View primes under 999 in Unix. Replace 999 w/ larger # for more prime #s:
awk 'BEGIN{while(++a<999){for(b=i=1;i&&b*b<a;)i=a%++b;if(i)printf a" "}}'

A sed script by Michael Van Biesbrouck

# -- Michael Van Biesbrouck,      1996 ACM Programming Contest 3rd Place Team
:b^Js/\(.*\)\(,.*\):\1\(.\)\([a-z]*\)\(.\)r\(:.*\)>\3/\4\2:\1\3\4\5r\6\5>/
s/\(.*\)\(,.*\):\1\(.\)\([a-z]*\)\(.\)l\(:.*\)\(.\)>\3/\4\2:\1\3\4\5l\6>\7\5/
s/>$/>0/^J/^halt/!bb^J#           http://www.csclub.uwaterloo.ca/u/mlvanbie/
Please note that the
^J
characters have to be expanded into line feeds. The real puzzle is figuring out what the input format is so that you can actually do something with it.

Vi virus signature

Email viruses can be written to work with very simple editors like vi, as my example below illustrates. vi has an option to use modelines, these are lines at the begining or end of a file which contain code to be executed as editor commands. Major window for security to fly out of. (The metaphore is deliberate.)

Below they are used to form a .signature virus, how it works is left as an exercise for the reader.

ex: /sig virus!$/w!>>~/.signature : Eli's vi modeline sig virus!
A slightly more vicious (but also more effective) version would have the `>>' removed.

By `Eli the bearded'.

The Prolog version of a selfreproducing program - Henk Schotel

._________________________.______________________________________________.
| Drs Henk P. Schotel     | :- dynamic(virus/1). % To prevent compiling  |
| xxxxxxxx@xxx.xxx.xxx.xx | virus(A) :- clause(virus(B),C),              |
| ++31 024-3616075        |             A=(virus(B):-C), assert(A),      |
| http://atd.let.kun.nl   |             virus(A).                        |
|_________________________|______________________________________________|

Uuencoded signature by Ryan Collins

Ryan 'Gozar' Collins
("UUdecode and Type with vt100 emulation")
begin 666 SIG.LZH
M'.<M;&@Q+5D```#E````CXX_%B``!E-)1RY65&V*C``$:S$Q0%EI4$[N~"[Va
M'=]&%?!$>"HT&:?S\'FU@3A<R;`D8&*@,5LK49'<_8'\?]=\?U`/I4@,_'!&a
><*>"BIY*JFI/?'ULXCLX_MBQ(~?%_/\H9<R3_ZP`a
 a
end

Uuencoded gif file of a face

begin 644 gio_sig.gif
M1TE&.#=A&0`@`/```````/___RP`````&0`@```"7(R/J<L!#:,$=+Y4S5UY
M.WQXWJ>!CEB2Y/6TX:NRFGR::4B[]TYMV3F:=200&M$6)(Y^QV"RD7PRGE(%
C];A#5#%.[,SF[3&5D>V7.X:*A\UH>.D]9]NP>,U<3",*`#L`

Uuencoded message from Bruce Clement

Caution: Do not open this signature, no user servicable parts inside

begin 644 out
B66]U(&IU<W0@:&%D('1O(&QO;VLL(&1I9&XG="!Y;W4_"B4O
`

Uuencoded message from Jay Maynard

Jay Maynard, EMT-P, K5ZC, PP-ASEL | Never ascribe to malice that which can
xxxxxxxx@xxx.xxx.xxx.xxx.xxx      | adequately be explained by stupidity.
  "begin 666 foo B22!C86XG="!B96QI979E('EO=2!D96-O9&5D('1H:7,A"@ ` end"
                         -- David Charlap

Executable signature of Stewart Moss

begin 644 smoss.com
MO@\!N9\`_*S-*4EU^LT@("XM+2TN+B`@("`@("`@("`@("`@("X-"B!<7U]?
M('PM+"TN+B`L("PL+2XL+2Y\+0T*("`@("!<?"!\+2=\+WPO("PM?'P@('P-
M"B!@+2TM)V`G8"TG)R`G("!@+5XG("!@)PT*(%-T97=A<G0@36]S<PT*('-M
G;W-S0&ES+F-O+GIA#0H@:'1T<#HO+W=W=RYS;6]S<RYO<F<N>F$O
`
end
This signature can be executed on a PC.

62-byte Sudoku solver

As published on flat assembler message board.
begin 644 entry.com       /* 62-byte Sudoku solver : `entry < 1.puz' */
MM#^+U<TAD4.(`DYX][@Q0(`Z+G7UB_E/8'CM.`-U$9?4$VO`"Y9#>_<SQJG`
1X'X"]N1A<.+&`BX\.73VZ]$`
`
end /* G3=tgm80@@mail,ru  TFx=tfx@@bitmaster,it  Digimind=digimind@@aha,ru */

SGML signature by James McCarron

Although technically speaking not a program, I still felt this worth adding:
<!DOCTYPE SIG [<!ELEMENT SIG - - (NAME,EMAIL,QUOTE)><!ELEMENT NAME - -
(#PCDATA)><!ELEMENT EMAIL - - (#PCDATA)> <!ELEMENT QUOTE - - (#PCDATA)>]>
<SIG><NAME>James McCarron</NAME><EMAIL>xxxxxxxx@xxxxxxxxx.xxx</EMAIL>
<QUOTE>E Pluribus UNIX</QUOTE></SIG>

A combinator signature program by Theatetus

Used by Theatetus on Slashdot in signature:
```si`k``s.H``s.e``s.l``s.l``s.o``s.``s.w``s.o``s. r`` s.l``s.d``s.!``sri``si``si``si``si``si``si``si``si `ki

Using 'dc'

echo '[q]sa[ln0=aln256%Pln256/snlbx]sb3135071790101768542287578439snlbxq'|dc
Submitted by Colin Wu, author unknown.

AftanGustur

Uses the following alternative on Slashdot:
echo '[q]sa[ln0=aln80~Psnlbx]16isb15CB32EF3AF9C0E5D7272 C3AF4F2snlbxq'|dc

Michael Schroeder

Michael Schroeder used an improved version of the above as his signature:
Michael Schroeder   xxxxxxxx@xxxxxxxxxx.xxxxxxxxxxxx.xx
echo '[dO%O+38%O+PO/d0<0]Fi22os0CC4BA64E418CE7l0xAP'|dc
(He also wrote an encryption signature program in C.)

Signature program by Daniel Cristofani

He says that it is probably his favorite brainfuck program, a pseudo-random byte generator using the Rule 30 cellular automaton.
>>>++[<++++++++[<[<++>-]>>[>>]+>>+[-[->>+<<<[<[<<]<+>]>[>[>>]]]<[>>[-]]>[>[-
<<]>[<+<]]+<<]<[>+<-]>>-]<.[-]>>] http://www.hevanet.com/cristofd/brainfuck/
You can make use of BF online to execute this.

Brainf*** Signature program by Goran "CHUPCKO" Lazic

Outputs a well know curve.
>++++++++[-<++++>>++++>+<<]>>++>++<<<<[-[->+<]>[->.<<+>]>>>[-[->+<]+
>[<+>+++++++[->++++++<]>-.-[-<++>]<.[-]]++<[->-<]++>[<->+++++++[->++
++<]>..[-]<]>>]+<<<[-[->+<]+>[-<+>>>-[->+<]++>[-<->]<<<]<<<<]>>.<<<]
He also has some signature programs in C and PostScript. You can make use of BF online to execute this.

Shell script by ShadowRangerRIT

Shell script by ShadowRangerRIT:
$_ = "wftedskaebjgdpjgidbsmnjgcdwatb"; tr/a-z/oh, turtleneck Phrase Jar!/; print


Signature programs | home and email