|
LiameObfuscator
IntroductionSpammers use software (robots, bots, spambots or spiders) which goes all over the Internet, gathering email addresses present in the Web pages they visit. To achieve what they want, this applications can analyze the source code looking for character sequences and patterns usually found in email addresses, such as @ (at), and follow links to new pages where to start again. Obfuscation techniques allow (or at least they try) to hide email addresses from spammers while keeping them visible to the users, using several camouflage techniques. LiameLiame is an open source server control for ASP.NET that obfuscates email addresses in a web page, using javascript and other techniques to hide them from spammers. You can see the server control demo But that's not all. Using Liame's technology it is possible to generate javascript code ready to use in your pages, regardless of the server language or platform being used. So you can use Liame obfuscation with HTML, PHP, Java and so on. You can access the Javascript generator following the link. And, why this name? The name "Liame" is a pun. First, the term is Email read from right to left. Second, in Spanish, it means "confuse me" or "get me in a muddle". ;-) Main featuresLiame includes obfuscation techniques that seem to be secure nowadays. It uses javascript to generate the link, and some CSS hacks to be used when scripting is not possible. To encode the email addresses, Liame uses an extensible Codec (coder-decoder) system that generate the javascript code. The following codecs are included:
How to useLiame is quite easy to use. The easiest way is to include the assembly in your IDE's toolbar; then, you'll be able to darg and drop Liame into your !Webform. If you prefer to do it by hand, you should add a reference to Liame.dll in your project, and in every page using a Liame control, include the following directive: <%@ Register Assembly="Liame" Namespace="Liame" TagPrefix="cc1" %> Then, us this code to insert a Liame control: <cc1:Liame ID="Liame3" runat="server" EmailAddress="youremailhere@youremailserverhere.com" LinkText="Contact me!" /> Anyway, you must, at least, set the `EmailAddress´ property. If you want to know other advanced possibilities, the control is very documented at code and designer level, so... But...Don't forget that there is not a perfect obfuscation solution. Some of them use javascript, so it can't be used with some user agents that don't allow this feature; other are awful from the accesibility or usability perspective, or do not work with some browsers... or they are very easy to overcome. |