Quantcast
Channel: George – UlduzSoft
Browsing all 55 articles
Browse latest View live

Reverse-engineering the KaraFun file format. Part 2, the directory

In the first part we found out the header format, and that it does not provide us with the directory location. However we know there must be a directory, as the KaraFun application must know where...

View Article


Reverse-engineering the KaraFun file format. Part 3, the Song.ini file

This is quite simple. We look at the song.ini file and it is obvious immediately where the text and the timing information is as those are the only lines with enough numbers....

View Article


Reverse-engineering the KaraFun file format. Part 4, the encryption

So far the files we have seen had no encryption. However some of our users pointed out there are some files which are encrypted. While the encrypted KFN files were still analyzed and dumped properly,...

View Article

Help to fight Internet censorship!

Since Nov 1st 2012 the new Russian law implementing the Internet censorship comes into effect. This law allows several agencies of the Russian government to add any Internet site they consider “harmful...

View Article

Preventing WordPress comments spam

There seem to be an easy way to prevent a significant number of WordPress comment spam. The majority of spam comments nowadays come with either a bunch of URLs, or with a generic message such as: Hi...

View Article


Installing Steam at the unsupported Linux which is not Ubuntu

Today at Feb 14th Valve released Steam for Linux. At this moment it officially only supports Ubuntu. However it is easy to run it on any other Linux distribution, in my case at OpenSuSE 12.2. 1. Create...

View Article

Failed to load steamui.so ?

Recent Steam update switched it to SDL2, so unless you have the very latest libSDL2 installed, you’ll get an error while trying to load Steam: Fatal error: Failed to load steamui.so The short test will...

View Article

select / poll / epoll: practical difference for system architects

When designing a high performance networking application with non-blocking socket I/O, the architect needs to decide which polling method to use to monitor the events generated by those sockets. There...

View Article


Practical difference between epoll and Windows IO Completion Ports (IOCP)

Introduction This article compares the difference between the use of epoll and Windows I/O Completion Port (hereby IOCP). It may be of interest to system architects who need to create a...

View Article


Running Mac OS X under qemu/KVM on AMD CPU

Due to the excellent work of Gabriel L.Somlo it is possible to run the emulated Mac OS X on Linux under Qemu/KVM. The changes seem to be minimal, and the operating system emulation works well – as long...

View Article

OpenSuSE 13.2: do not use BTRFS as rootfs

OpenSuSE 13.2 comes with BTRFS chosen as your default rootfs, replacing the old trusted ext4. Unfortunately the kernel version it ships with contains a known flaw which breaks some software using...

View Article

Android: an easy splash screen implementation using ImageView

I’ve seen a number of suggestions of how to implement a splash screen properly. Most typical implementation is through activities. To show it, you need to make it the first activity in your...

View Article

Breaking the Vigenere cipher

I have signed up for the excellent Cryptography course by Prof. Jonathan Katz at Coursera, and took the first programming assignment which was about breaking the Vigenere cipher. The instructor...

View Article


Breaking the one-time pad encryption

Following up the second week task for the excellent Cryptography course by Prof. Jonathan Katz at Coursera, and took the second programming assignment. This time it is about breaking the one-time pad...

View Article

Image may be NSFW.
Clik here to view.

XPS13 wireless: the ultimate fix

As frequently complained, Dell XPS13 which is otherwise a very nice ultrabook unfortunately offers horrible wireless experience while running Linux. Typical wireless issues include: Not connecting to...

View Article


Mac OS X guest and VirtualBox 5 on AMD CPU

Before you proceed: there is NO working solution yet, and I was not able to run unmodified Mac OS X guest on AMD CPU under VirtualBox. It runs fine under KVM however. Installing it on a machine with...

View Article

Generating C or Java byte array from a binary using command-line tools

Once in a while during development a software engineer needs to embed the binary object as byte array in C or Java language. While coding a solution is simple, it could be achieved by the following...

View Article


Reverse-engineering the EMZ karaoke format, or watch out the API calls

Worked on adding support for the EMZ karaoke format to the Karaoke Player application, and would like to share another good reverse-engineering technique. EMZ is a Karaoke format similar to the old...

View Article

Reverse-engineering Lyric file format – handling encryption with a known...

This article explains how to reverse-engineer file formats by using what is called a known plaintext attack. This is a kind of attack when an attacker has an ability to pass the plaintext to the oracle...

View Article

Usability of Qt5 QMediaPlayer for multimedia applications

I have developed several multimedia applications using Qt4 and Qt5. In past, when creating Karaoke Lyrics Editor with Qt4, I initially used Phonon, which was offered by Qt4 multimedia framework....

View Article
Browsing all 55 articles
Browse latest View live