Monthly Archives: October 2014

Bitmessage – Secure Email Communication

Encrypted Communication

Eric Snowden has revealed to the world how governments around the world, in particular the US government has access to most of internet data including all the major web email providers such as Google and Microsoft.  The access to the information is obtained either through a backdoor installed in their system or by forcing them to reveal the information.  Therefore we must assume that anything we do and say on the big wide internet can be viewed by someone whom we did not intend to share that information with.  Which means, our privacy on the internet can be easily compromised unless we take some necessary steps.  So how do users protect their privacy and communicate securely and privately on the internet?

There are a number of existing as well as upcoming technologies which have aimed at solving this issue.  For example, one technology that has been around for quiet sometime is pretty good privacy (PGP) developed by Phil Zimmerman in the early 90s. It is a technology used to sign and encrypt files, emails, and whole disks.

Bitmessage is a new email communication program based on peer to peer technology using block chains.  It does not centrally store messages but rather messages are processed on individual client computers.  Therefore there is no central entity that can be hacked or made to provide its data to others.


Below is information from the homepage of this project.


Bitmessage is a P2P communications protocol used to send encrypted messages to another person or to many subscribers. It is decentralized and trustless, meaning that you need-not inherently trust any entities like root certificate authorities. It uses strong authentication which means that the sender of a message cannot be spoofed, and it aims to hide “non-content” data, like the sender and receiver of messages, from passive eavesdroppers like those running warrantless wiretapping programs. If Bitmessage is completely new to you, you may wish to start by reading the whitepaper.


An open source client is available for free under the very liberal MIT license. For screenshots and a description of the client, see this CryptoJunky article: “Setting Up And Using Bitmessage”.

Windows icon.png Download for Windows

Apple icon.png Download for OS X

Tux.png Run the source code

Source code

You may view the Python source code on Github. Bitmessage requires PyQt and OpenSSL. Step-by-step instructions on how to run the source code on Linux, Windows, or OSX is available here.

Security audit needed

Bitmessage is in need of an independent audit to verify its security. If you are a researcher capable of reviewing the source code, please email the lead developer. You will be helping to create a great privacy option for people everywhere!



Mininet is an Open Source software developed for practicing and learning SDN concepts.  The content posted below is from their home page on their website and pretty much explains what Mininet is.


Mininet creates a realistic virtual network, running real kernel, switch and application code, on a single machine (VM, cloud or native), in seconds, with a single command:

Because you can easily interact with your network using the Mininet CLI (and API), customize it, share it with others, or deploy it on real hardware, Mininet is useful for development, teaching, and research.

Mininet is also a great way to develop, share, and experiment with OpenFlow and Software-Defined Networking systems.

Mininet is actively developed and supported, and is released under a permissive BSD Open Source license. We encourage you to contribute code, bug reports/fixes, documentation, and anything else that can improve the system!
Tagged , ,

Bulk Changes Using VI / VIM


VI or VIM (Vi IMproved) are text editors that are found in most *nix systems.  Today I came across a very simple but handy feature of these editors which can be used for bulk replacement of repetitive text within files.  It can be compared to the find and replace feature of most text editors such as notepad and Microsoft Word.


To use this feature, type the command “:%s/old_text/new_text/g” in the command mode of VI or VIM.  The command mode is accessed when you first open your editor or you can switch to it by pressing the “Esc” key on the keyboard. The “old_text” in the command is the text that you want to replace while the “new_text” will be the new text to replace the old one.  The “g” option makes the changes to all occurrences of the old text within the file.  If you want confirmation while doing the changes, then you can add the “c” option at the end by typing “:%s/old_text/new_text/gc“.



For example i wanted to change a name of an access list in a particular firewall configuration as shown below.  The name appears 21 times in the configuration file.  This means, if i do it manually i have to type 21 times in order for the change to take effect.  I opened the file in VIM and then used the command to change the name from acl_apptest to acl-apptest_in.



You can search the file by pressing “/” symbol and looking for the text.  In our case the when looking for the text “acl_apptest” the editor highlights all the instances of the text in the file.


Then i use the command :%s/acl_apptest/acl_app_in/g to make the changes that i want.  As you can see below, the change is instance and all 21 occurrences are changed at once.