Loading... Born a day after the American Independence in Jalandhar, Punjab, India, I've spent most part of my life there. Studied till 5th standard in St. Joseph's Convent School, Jalandhar, and later had to join Apeejay School, Jalandhar as, perhaps, the former school decided boys could be troublesome in a girls' school after 5th. After completing schooling in APJ (till 12th), joined National Institute of Technology [NITJ] (again, in Jalandhar) as a Computer Science & Engineering student in 2005. During the worst period of downtime (recession), got an on-campus placement in Accenture in 2008. Graduating from college took another year after that, and finally joined Accenture in mid-2009. This is my story so far... Btw, you can find me on: google+, twitter last.fm github librarything granular steam
@AnuragBhandari twitter updates
Tech enthusiast, open source evangelist, book worm, software developer, sports fan, passionate gamer, movie buff.
  • My Nexus 7's performance has degraded a bit after the #LollipopUpdate. —
  • @JabongIndia I appreciate your concern. I wouldn't blame Jabong for this, but Gmail for their aggressive ads. —
  • Those silly Jabong offers in Gmail are PISSING ME OFF! #gmail #advertisement #fail
Dec 14

This thought occurred to me when I was preparing for my end-semester exam of the Information Security Systems course. The course was all about computer networks, security, and cryptology. Before I come to the topic of this post, let me give a brief introduction to Monoalphabetic ciphers.

Monoalphabetic cipher is a way to encrypt data (convert data into a secret form) by substituting each alphabet of the message to be encrypted with some other alphabet such that the substitute alphabet chosen for each alphabet remains constant throughout the message.

Accourding to simonsingh.net:

The ciphers in this substitution section replace each letter with another letter according to the cipher alphabet. Ciphers in which the cipher alphabet remains unchanged throughout the message are called Monoalphabetic Substitution Ciphers.

Suppose we want to encrypt the following message:
Meet me today at twelve

If we choose to substitute the letter “e” with, say, “u”, the letter “m” with “a”, the letter “a” with “c”, the letter “t” with “n”, and so on…, we’ll get the encrypted text like this:
auun au nyxcz cn npukbu

When you pass this message to your friend to let him decrypt it (convert it back into the original message), it would be assumed that it’s only you and your friend who knows the letter mappings – as to which letter was substituted for which. It seems pretty efficient way of sharing secrets? But, nope, it isn’t that efficient as it can be easily broken.

The most common and simplest way to break a monoalphabetic cipher is by guessing each alphabet in the encrypted text by using the help of a table/graph containing the relative letter frequencies in English language. Consider the frequency chart as follows:

As you can see from the above figure that the most used letter in English language is “e”, followed by “t”, then “a”, then “o”, then “i”, and so on…

Now looking at out encrypted text “auun au nyxcz cn npukbu”, it can be noticed that:
the letter “u” occurs 5 times (most times)
the letter “n” occurs 4 times (second-most times)
the letter “c” occurs 2 times (third-most times)

So, the first guess would be:
“u” was substituted for “e”
“n” was substituted for “t”
“c” was substituted for “a”

Using this much analysis, we try to decrypt the text as:
_eet _e t__ay at t_e__e

So you see, it wouldn’t be hard from here on to guess the original message as “meet me today at twelve”.

But this task of breaking the cipher (cryptanalysis) could have been made more difficult for the “hacker” by using SMS English. Suppose we wanted to encrypt this message:
come for tea at club see you there

Now before encrypting this message, you first convert it into SMS English:
cm 4 t at klub c u dere

With this converted text, proceed with the normal monoalphabetic substitution, and make sure your message target (probably your friend) already has the letter mapping. The encrypted text would be very difficult to break as mere guessing of letters using letter frequency table would lead to revelation of utter gibberish. And there are no letter frequency charts (or at least none I could see) for SMS language.

So all you SMS addicts, worry no more. You can finally utilize your skills for some good cause. :)

Dec 09

MyBlog is a very simple, nice looking, fast, and easy-to-use blogging application targeted to be used as personal blog. It has been completely coded in PHP, and uses MySQL as the database backend. Unlike many other blogging systems available, like WordPress, Movable Type, etc., MyBlog contains only those features that should be sufficient enough to maintain a personal blog. This adds to the fast speed blogging offered by MyBlog.

Read more about MyBlog or check out detailed features of it.

Some salient features of Myblog:

  • A full-featured Dashboard (admin area).
  • Uses FCKEditor for creating dealing with posts and adding comments.
  • Categories are supported.
  • There are specialized pages – MyWidgets, MyMovies, MyGames and MyWebsites.

Demo (see MyBlog live in action)
Download (browse through the download archive)

Happy blogging! :D

Tagged with:
Dec 05

The category of small-sized Linux distributions (or mini distributions) is fast evolving. Every now and then we see a new mini distro coming out, sometimes as a light-weight edition of an already established distro and sometimes based on an innovative concept. The likes of this category involve Damn Small Linux, Yellow Dog, SliTaz, and Puppy Linux. But believe me, Puppy Linux is not yet another mini distro. It is an everything OS. Puppy comes as an installable livecd, and can be installed on a number of medium, such as hard-disk, USB pen drive, external hard-disk and more.

I happened to have my first stint with Puppy about 3-4 months ago, when I found it bundled with a local computer magazine in a companion disk; it was Puppy Linux 3. Since that very day, I knowingly or unknowingly became a hard-core fan of the distribution.

A month later, Puppy 4.0 was released and I upgraded from version 3 to version 4. As now I’ve spend considerable amount of time with this beautiful distro, I am in a state to mention some points about its goodness.

Waking up Puppy
Puppy’s boot process is a no thrills-and-frills thing. The booting is plain, but the developers have made it to look impossibly simple. We see a black screen with only relevant boot-time messages appearing, nothing more, nothing less.

The booting time is not large (about 35-40 seconds) and is almost the same when booting from hard-disk or livecd. That is a considerable improvement in the booting time of a livecd.

The interface
Once the booting has completed, Puppy logs you in as the ‘root’ user and takes you directly to the main interface. No password is by default required to login. Puppy uses JWM as the desktop environment which is extremely light-weight (occupies less space). So the interface is quite simplistic, sometimes primitive, and comes with a limited set of functionality. But there are so many other options in Puppy which will never let you feel the lack of features in JWM. Basic customizations are very easy, like changing the wallpaper, window decoration, icon theme, GTK theme, etc.

Setting up and configuring Puppy
Although Puppy detects and configures most of your hardware and other settings, there could be some areas that need to be setup by you. Say, for example, setting up an Internet connection, setting up a printer, and so on. Puppy makes it extremely easy to accomplish these common configuration tasks by providing you with a number of easy-to-follow wizards. And guess what? There is even a wizard for all other wizards by the name ‘Wizard wizard’ which serves as a central point to all configuration tasks. For installing new software, Puppy comes with its own package manager, PETget.

All-in-all, most configuration tasks in Puppy are very easy which are otherwise difficult in many other Linux distros.

Play me baby
Throw just any multimedia file at it and it will play! That’s what Puppy has to offer in this department. With the xine engine pre-installed, the multimedia application – gxine – is capable of playing just any audio or video format you have heard of (and even the ones you haven’t heard of). Although I would personally prefer a more feature-rich player than gxine, it proves a wise choice to save space. Puppy also comes with software for ripping CDs, DVDs, editing metatags and recording audio. It even has a Puppy community-made audio player Pmusic.

To complete the multimedia section, it includes Pburn – a very nice community-made software for burning CDs/DVDs and comes with sufficient options for authoring discs. Puppy even has an ISO file editor!

Internet
No Firefox! But Puppy comes with a light-weight cousin of  Firefox – Seamonkey – adored by many for its speed. And it’s not just a browser, it’s a complete suite of applications – a browser, a mail client, an address book, and a HTML editor. After you have easily setup your Internet connection, you’ll be all set to browse the web (Seamonkey), chat with friends (Ayttm), check email (Seamonkey), talk through VoIP (Psip) or download stuff (Pwget, gFTP, Pctorrent).

Fun & Work
Puppy contains many popular office utilities, like Abiword (documents), Gnumeric (spreadsheets), a pdf viewer, personal organizer (to-do, calender, contacts), scientific calculator, and even a CHM file viewer. In the fun section, there are more than a couple of games that could keep you busy for a long time.

Miscellaneous utilities
Puppy comes with some additional stuff, like a personal blogging system (PPLOG), a personal wiki system (DidiWiki), partition manager (GParted), archiver (XArchive), scanner software (XSane), firewall, torrent creator and many more such software.

Killing the Puppy
Not literally. I mean shutting down Puppy. And believe me, even if you have had enough Puppy experience, shutting it down would be just like killing a lively little being on your computer. The experience is most of the time so interactive and fun-filled (and not to mention ‘light’), you would want to switch it on again very soon. And Puppy boasts of the fastest shutdown time around. It shuts down in a mere 5 seconds or so, when most of the other well-known Linux distributions take 10-20 seconds for the same task.

Puppy also offers the feature of saving your current session to a file of desired size during shutdown or reboot for future use. The ‘current session’ includes all your custom settings (wallpaper, theme), newly installed packages etc.

Conclusion
Puppy Linux proves that even simplicity has the power to get all the things done. The basic interface may require sometime from you to get you accustomed to it, but you’ll like it afterwards.

It doesn’t matter whether you are a Linux newbie or a seasoned Linux user, you will like Puppy as much as I did. This has to be one of the best Linux distros around. And it certainly deserves more attention than it is getting right now. Puppy is a tiny atom bomb – loaded with plethora software and utilities – that you can carry in your pocket – in your pen drive, CD, etc. Puppy has so much to offer in so little a size!

Tagged with:
preload preload preload