Fun with UNICODE and Mirroring Character
What is UNICODE?
Everything you see on your computer is represented by 0's and 1's. Characters are also encoded in the form of 0's and 1's. In this method each character is represented by a number. A common method of encoding is called ASCII (American Standard for Information Interchange). In this method each character is represented by 8 bits. Therefore 256 different characters can be represented using this method. But 256 characters is not enough to mention all characters in all languages. Here comes UNICODE, in which each character is represented by 16 bits. Therefore in this method of encoding, 65536 characters can be represented.
For more information about UNICODE and its applictions visit Unicode.org
Whats interesting?
Unicode is capable of representing many languages, including those written from left to right and those written from right to left. There are special characters in UNICODE to achieve the RTL. One such character is the Mirroring character. The property of mirroring character is that it makes Left to Right Text, Right to Left just by pasting the character, all text after it becomes RTL. So it can be used on sites which use UNICODE character encoding format (like orkut). The property of the mirroring character is that it reverses whatever you paste after it. So "[mirror char]hello, how are you?" becomes "?ouy era woh ,olleh".
Mirror character has nothing to display, so you cant see a mirror character.
One thing to note that is the mirroring character is not rendered on all browsers. It is supported on Firefox, Opera, IE7 (partially). If anyone has any info about other browsers please leave a comment.
Effect of using a mirroring character on orkut with the profile name is shown below:
Note that the word "scrapbook" is inversed. There is more of it left for you to explore and find out ...
Mirroring character also works on some Instant Messengers like Google Talk and Yahoo! Messenger, on which you can send reversed sentences very easily, making a feeling that you can type reversed.
See for yourself
If your are using a browser such as Firefox which renders the unicode mirroring character the following text(in the gray box) will appear reversed:
The unicode mirroring character was used to
reverse this text. If it still appears normal
then, your browser does not render mirroring
character or worse do not support UNICODE!
If you are seeing this normally then there
is no point in continuing. Get a browser like firefox that
supports unicode.
Want the mirroring character?
The mirroring character cannot be seen and I couldnot find the HEX or Numeric Code. If anyone has found out leave a comment.
The mirroring character is within these braces ((
Inorder to get the mirroring character, try copying the content between the braces and paste it somewhere to see the magic! ...
What can it be used for?
Suppose you paste a link like this and if someone clicks he/she goes to mysite.com instead of google.com. This could be used on sites like orkut.com which doesn't allow you to hide the url of the link you are giving.
http://www.mysite.com/fol/file.html?site/moc.elgoog.www://ptth
So it could be potentially used for phishing !Inorder to protect yourself from such methods always look at the url beofre you give away senstitive information about yourself.
Other potential uses are left for you to explore. If you find anything interesting please let me know..
Guess you can take care of it from here on ...
Thats all folks.
Thanks to
Vineeth Mohan for giving me the mirroring character.
Caution!
This trick can potentially be used for phishing! So please always look at the Address Bar for the URL of the page and verify it is the right site you want to visit! Please warn everyone you know about this risk.
47 comments:
kochu kallan...beware of this guy, folks! :P
Found out the mirroring character code :
8 2 3 8;
(without the spaces)
works on opera too. why does everyone always forget opera...
˙ʎΙΙɐsɹǝʌᴉun ǝɹoɯ ʞɹoʍ ʇɐɥʇ sɹǝuɹoɔ ǝбuɐɹʇs ɹǝɥʇo sɐɥ ǝpoɔᴉu⋂ ʇnq 'ᴉɹɐɟɐS s,ǝΙdd∀ uᴉ ʞɹoʍ ʇusǝop sᴉɥ⊥
Is there like an anti-reverse character? I think I messed up my meebo...
Very cool.
I was curious, so I looked at the Unicode code charts and found both the RLO (right-to-left override) and LRO (left-to-right override) characters:
http://www.unicode.org/charts/PDF/U2000.pdf
RLO is 202E (base-16), or 8238 in decimal form as previously noted. LRO is 202D (8237). Using a combination of these you can get different sections of a document/page to read in different directions!
Works in Konqueror too.
the link thing doesnt work for me.. tried opera and firefox.
Your testcase fails for me, yet I'm using firefox on linux..
http://digitalpbk.blogspot.com/2006/12/examples-of-mirroring-character-at-work.html
+ for those who dont believe it...
+ for those who are unlucky to see the mirroring character at work..
A really cool application of this character would be to make a Boustrophedon[1] text reader.
[1]: http://en.wikipedia.org/wiki/Boustrophedon
I tried Firefox 2.0, Opera, Safari, and Camino. All of them reject the URL as invalid because it doesn't start with a valid character.
As a parlor trick it's a bit of fun on OS X though. Turn on Unicode Hex Input in the Keyboard prefpane. Then just type Option+2+0+2+E and type away.
Try it. It's a lot of fun.
Just for the record, you can type ‮ as &#8238 in HTML documents. :-)
Copies and pastes as you would like (at least on Firefox) too.
This trick wouldn't produce true boustrophedon effect, because the characters themselves should also be reversed, so that d becomes b...
Just an erratum to the introduction paragraph. Quoted from http://www.unicode.org/faq/basic_q.html:
"Unicode characters may be encoded at any code point from U+0000 to U+10FFFF. The size of the code unit used for expressing those code points may be 8 bits (for UTF-8), 16 bits (for UTF-16), or 32 bits (for UTF-32)"
The complete range [U+0000,U+10FFFF] cannot fit into 16bits. But it's true that ealy forms of Unicode used to implement Unicode using UCS16 (fixed 16bit), which could only represent the first 16bits of the Unicode standard.
In other words, Unicode is just a list of codepoints representing glyphs/ideograms. Then exist Unicode transformations that can be applied to these codepoints to obtain a binary representation (see UTF-8/16/32).
Wikipedia articles are nice at explaining you all that.
does this work?
thats it im getting firefox
what
‮
This doesn't work, does it
I don't see what all the fuss is about.
What you just replied is reversed.
Check it in Mozilla firefox
Let's see what we can do here.
(it is not working for me)
oh thanck a lot for information.
I'll pay more attention to ascii now
I found the character in a way you can see it:
҉
Have fun with that ^^
˙ tests
This is a simple test to see if unicode mirror is working for my browser.
҉words and stuff
‮
‮this is a test
.firefox
probando
cool XD
hello
let me try!
let me try
what is this I don't even
lol work plx
well, amidoinitrite?
No, you aren't 'doinitrite'.
Testing, testing, 1.2.3.
no shit homes
this is fun
(؛ʇʇʇʇı ǝʞıl ı
(؛ ɔɔɔɔɔıʇsɐʇuɐɟ sʇɐɥʇ
testing123
appears to work in chrome and safari too.
Post a Comment