Bless Hex Editor

Bless is a hex editor for Linux and Windows. It is a high quality, full-featured editor written in the mono programming language. Bless comes packed with excellent features that anyone looking for a hex editor on Linux will love. In this article we are going to learn How to install Bless hex editor (hexadecimal editor) in Ubuntu 16.04. Bless is a open source best hex editor applicati. Nov 29, 2018 Description - Bless is a binary (hex) editor, a program that enables you to edit files as a sequence of bytes. It is written in C# and uses the Gtk# bindings for the GTK+ toolkit. Bless is distributed under the terms of the GNU General Public License (GPL). See the file COPYING for more information. Bless Hex editor is a free linux program that allows to you make modification of files on the binary level, and do low level data searches and recover data f.

Hex-a-What?

The hexadecimal notation is almost universally used in computing – andnot without a reason. There are sixteen hex digits – 0 to 9,and A to F (which correspond to decimal values 10 to 15), andeach hex digit represents exactly four bits. Exactly two hex digits represent a byte,which can have a value from 00 to FF (that is from 0 to 255 decimal).In order to find a hex value of a multi-byte object, you would concatenate its bytes,for example, bytes 58 A4 1B FE constitute a four-byte value 58A41BFE(or FE1BA458 if the computer uses the reversebyte ordering).

But why hexadecimal? Can't we just use good old decimal numbers? Well, they wouldbe fine for a decimal computer, but most contemporary computers are binary and workon bits and bytes. A decimal digit represents approximately 3.3 bits, and this makesarithmetic too complicated. Let's assume we have two bytes with decimal values 243and 78. What will be the value of the two-byte word? 24378? No, this method works withhexadecimal digits only. To find the decimal value of the word we must compute 243*256+78,which equals to 62286. Does not look very obvious, does it? Imagine finding a value of aneight-byte long variable and you will see why the decimal notation is not the best choicefor binary computers.

Bless

Do I really need to know this?

Yes, you should have some understanding of hexadecimal notation; in fact, there is notmuch else to know. Hex byte is the only kind of object a computer handles, and hex bytes areused to represent anything. For example, a hex byte 50 may represent the capital letter P,the processor command 'push eax', the decimal number 80, a color componentwith 31% brightness, or a zillion of other things.

The obvious question is 'How can I tell what does the byte represent?' Well, sometimes youcan tell that easily, sometimes – not that easily, and in many cases you can't tellthat at all. It is usually easy to recognize a character string, but in other cases you willhave to guess. Fortunately, it is not as bad as it sounds, and you will quickly pick upa few tricks.

But for now it is enough to understand that 1) any computer data is just an arrayof hex bytes, and 2) a hex editor is a program that shows the true contents of a file,and lets you edit the data you normally can't.

Main Edit Window

It is time to try out our new knowledge and see what hex data looks like. InstallFlexHEX if you haven't doneit yet. Right-click any binary file in the Windows Explorer window and selectEdit with FlexHEX. You will see the binary contents in the FlexHEXmain edit window:

You can see four distinct panes marked with different colors. The leftmost one is theAddress pane; each number in the pane shows the address of the first byte of the correspondingline. The only exception is the line on which the input caret is - it shows the address ofthe current byte, not the first one. The addresses are shown as hexadecimal numbers but ifyou point the mouse cursor to an address, the decimal value will appear in the Quick Viewpopup window.

The next is the Hex pane, which displays the file contents as an array of hex bytes.The light green ANSI pane shows the file contents as characters, and the rightmost UNICODEpane shows two-byte UNICODE characters.

Note that all three data panes show different representations of the same data. If youchange data in any data pane, the other two will change accordingly. You can switch betweenthe panes by pressing the Tab or Shift-Tab key, or just by pointing the mouse cursor andpressing the left mouse button.

Inspecting Data

Hex numbers may be good for computers, but how can one convert a hex number to a more human-friendlydecimal value? Easy! First, select the number either with your mouse, or by using the arrows keywhile holding down the Shift key. Second, move the mouse cursor to the selected area, and FlexHEXwill display all the valid representations in the Quick View popup window.

Sometimes there is no valid representation at all. For example, if you select five bytes,there will be no Quick View window because FlexHEX knows no object five bytes long. Howeverany 1, 2, 4, 8, or 16 byte long field has at least one valid representation. In general,when the mouse cursor changes to the arrow-with-question-mark shape, this means that FlexHEXhas something to show you and the Quick View window is ready to appear.

Editing Data

Now that we know the basics let's go straight to hex editing. Start FlexHEX and you willsee the main editing window with an automatically created new empty file. It has zero lengthbut can be extended - the light gray boxes mark the positions where you can enter new data.Enter the hex bytes 4D 61 72 79 20 starting from the position 0, wherethe input caret initially was:

Now press the Tab key to switch to the green ANSI pane and type in had a little lamb.It is easy to see that every byte in the Hex pane corresponds to some character in the ANSIpane. When you enter a hex value, the corresponding character appears in the ANSI pane andvice versa.

Don't be afraid to make a mistake – FlexHEX has unlimited Undo/Redo list.If you did something wrong, just press Ctrl-Z to undo the action.

Editing Existing File

A simple but rather typical task is to go to some address and replace some bytes.As an example we will change the byte string EB 1F 5F FB to01 00 00 00 at the address 52E1C.

The first step is to find the data to be modified. Select theNavigation / Go To command or just press Ctrl-G and enter the address:

Don't forget to pay attention to the Dec/Hex selector. FlexHEX is smart enoughto recognize a hexadecimal number if it contains hex digits A to F, but if the numberconsists of decimal digits only, make sure you have selected the correct number radix.

Now press the Go To button and you are there:

We have found the data, but before typing in the new values check the Insertion Modeindicator in the status bar.If it displays OVERWRITE, the newly entered data will replace the data at the currentposition marked by the blinking input caret.

The INSERT mode works differently. The existing data starting from the currentposition are shifted below, making place for the data you are entering. Note that thiswill change the position of all data objects below the insertion point. Many files getcorrupted if their data have been shifted, so be careful and pay attention to theshift indicator in thestatus bar.

If the current mode is INSERT, press the Insert key to switch tothe OVERWRITE mode.

Now type in the new hex data:

You may have noticed that a new Modified tab has appeared in the Navigationpanel. Click the tab to open the pane:

This pane lists all modified areas in the file. Click the area starting or endingaddress to jump there; to select the whole area, click the size field.

Changing Typed Values

Sometimes you need to make modification to a typed object, not just to a sequenceof hex bytes. With FlexHEX, it is no more complicated than simple hex editing. Selectthe object (usually 1, 2, 4, 8, or 16 bytes long), right-click and select theEdit Selected As command from the menu:

Select the appropriate representation and enter the new value.

Happy Hex Editing!

How To Use Bless Hex Editor Tutorial

Comments (4)

Hex
5/5 (2)
2
Apr 2019

I want to change the target power and power limit to 120-140watt in my gpu-bios (vbios), how do i find and change these values with HxD? This is the bios file: https://www.techpowerup.com/vgabios/187883/187883

6
Mar 2019
Top Poster
Most Likes

I suppose you need to ask the HxD author about that.

Hex
0
Mar 2019

How to move every second byte (String character) one space to the left in a file?

Example:

From:

eHplemlp s

Bless Hex Editor Windows

Into:

Helpmepls

6
Mar 2019
Top Poster
Most Likes

The current version 2.x can't do that. The next version will include a full-featured scripting engine.

1
Mar 2019

Hi, do you know how to remove bytes permanently?

'Delete' only changes them to 00:

6
Mar 2019
Top Poster
Most Likes

Ray, press the 'Ins' key on your keyboard to switch between the 'Insert' and the 'Overwrite' modes. In the 'Insert' mode the 'Del' key will actually delete bytes, shifting the data.

1
Mar 2019

Thanks, it works perfectly! I missed that part of the guide, my apologies.

Good program, it will probably become my default hex editor from now on

0
Mar 2019
First Poster

Using Bless Hex Editor

Tomas says...

Bless Hex Editor Windows

Add Comment