This will make a prim say who is touching the prim and give his/her key.
<lsl> default {
touch_start(integer num) { integer i = 0; do llSay(0, llDetectedName(i) + " touched me. His/Her key is " + (string) llDetectedKey(i)); while(num > ++i); }
}</lsl>