Visse tegn ser identiske ud, men har forskellig betydning eller oprindelse og har derfor forskellige Unicode-værdier. Eksempelvis er det svært med det blotte øje at se forskel på et semikolon og et græsk spørgsmålstegn. Hvis man blot har skrevet et par linjers kode i Java eller C#, så kan man måske fornemme, hvad softwareudvikler Greg Toombs har frigivet på Github.
Med det lille program Mimic, opkaldt efter blandt andet et frustrerende monster fra Dungeons & Dragons, er det nu let at erstatte helt almindelige latinske tegn med noget, der ligner, men ikke er det samme.
Hvis man blot skulle læse en tekst på papir, ville det ikke gøre nogen forskel, om der var tale om et X eller et græsk chi eller det kyrilliske kha. Men når det er programkode, der skal fortolkes af en compiler, så er det Unicode-værdien og ikke udseendet, der tæller.
Metoden har været brugt i spammails til at forklæde et ondsindet domæne som et velkendt, legitimt domæne i linkform ved eksempelvis at udskifte enkelte tegn med kyrilliske.
Fejler, når koden skal fortolkes,
Pudser man Mimic-programmet på en kollegas kode, så vil udskiftningen af de kritiske semikoloner med græske spørgsmålstegn resultere i fejl, når koden skal fortolkes, og med de mange muligheder for tegnudskiftninger, Unicode giver mulighed for, så vil det være svært umiddelbart at gennemskue, hvad der er galt.
Mimic-programmet vil også kunne misbruges til netop at lave falske links eller skrive bandeord på forummer, der automatisk censurerer den slags. Men Greg Toombs påpeger også, at Mimic vil kunne vendes mod den ondsindede brug af tegnudskiftninger til at opdage, når de eksempelvis bliver brugt i spammails.