The example here shows how to encrypt and decrypt data using python in a way that is fully compatible with openssl aes-256-cbc. It is based on the work that I did in C++ Cipher class that is published on this site. It works for both python-2.7 and python-3.x.
The key idea is based on the way that openssl generates the key and iv data from password as well as the “Salted__” prefix that it uses.
The complete routine can be downloaded here: mycrypt.py.
Continue reading Simple python functions that provide openssl -aes-256-cbc compatible encrypt/decrypt
I recently created a web based tool that allows you to manage your private data and generate passwords safely. If you are interested in trying it click here.
I suspect that it will only work on newer browsers. I have only tested it on Firefox 15, IE 9 and Chrome 23. See the tool help for more detailed information.
This blog describes how I installed firefox 15.0.1 with java jre-7u7 and flash 11.2 on a CentOS 5.8 host. None of the installation commands were distro specific so it should work on any linux system.
This technique allows you to test different versions of firefox/java/flash without interfering with your system defaults. It also allows you to install a centralized version that can be shared by other users.
Continue reading Install firefox 15.0.1 with flash and java support on linux
I recently had to install jshint and rhino. It was a bit of a challenge because they needed ant and npm (node package manager). This blog describes what I did and provides a bash shell script that you can use.
Have you ever needed to run an X11 based program like emacs or firefox in a sudo session and received one of the following errors?
X11 connection rejected because of wrong authentication.
Error: cannot open display: localhost:10.0
This blog describes how to fix the problem.
Continue reading Make X11 programs work in an ssh sudo session
This week I updated the gcc-4.7.0 bash install script to include binutils-2.22 with gold support enabled. See this blog entry to download it.
Continue reading gcc 4.7.0 bash install script updated to support binutils-2.22
I recently had to build gcc 4.6.3 on CentOS 5.5 so I put together this script to do all of the work. It is released in text mode so that you can cut-n-paste it from the web page. The shell version is also available: http://projects.joelinoff.com/gcc-4.6.3/bld.sh if you want to download it directly using a tool like wget.
The full installation of gcc-4.6.3 and boost-1.49 requires about 4GB of disk space. After the build is complete you can delete the archives, bld and src directory trees to reclaim about 3.4GB of disk space.
Continue reading Bash script to download, build and install gcc 4.6.3 and boost 1.49
My colleagues and I recently built a filer using OI 151a/ZFS and wanted to increase the throughput by aggregating multiple NICs to a common IP address that is dedicated for data. We did it by physically adding a card with 4 NICs, aggregating the ports on server and then updating the switch to enable link aggregation (port trunking) on the 2 connections.
Continue reading OpenIndiana 151a NIC Aggregation
I recently tried to log into a filer using napp-it where I forgot the operator password. To fix it, I reset the value_operatorpw password field at line 9 in
napp-it.cfg to an empty value, like this:
Continue reading How I fixed my napp-it operator password