O básico do sistema hexadecimal

Ficou claro com algumas de suas perguntas que alguns de vocês não estão familiarizados com o sistema hexadecimal, ou simplesmente, hexadecimal. O sistema hexadecimal é usado em toda a computação e, se você nunca estudou este sistema de numeração Base16, pode parecer relativamente opaco.




Para aqueles de vocês que podem ter sido dominados por este sistema de numeração aparentemente misterioso, dedico esta breve introdução e visão geral do sistema de numeração hexadecimal.

Como você já sabe, você encontra o sistema hexadecimal em todo o seu computador e software. Geralmente parece algo como este 0x4D ou simplesmente 4D . Imediatamente, você reconhece que algo é diferente aqui porque, em primeiro lugar, geralmente começa com esse estranho 0x e, segundo, há letras lá e não apenas os dígitos (0-9).

Muitas vezes, encontraremos hexadecimal em imagens de disco rígido, como no forense digital, como abaixo.

Ou também podemos encontrar hexadex quando usar o Wireshark , como abaixo.




E é provável que encontremos hex na leitura de nossos alertas IDS, como em Snort , assim abaixo.

Entre os motivos mais importantes para entender e estudar hexadecimal é que nossos endereços MAC em todas as NIC e dispositivos de rede estão todos em hexadecimal, e o IPv6 ALL estará em hexadecimal, uma vez que seja amplamente adotado.

Se você não está familiarizado com hexadecimal, este é o momento de levar alguns minutos para tentar entender. Alguns minutos agora provavelmente pouparão horas de dores de cabeça mais tarde.




Nosso sistema decimal

Uma das melhores maneiras de entender o sistema Base16 ou hexadecimal é voltar aos conceitos básicos de um sistema de numeração com o qual você está muito familiarizado, o Base10 ou o sistema decimal. Nesse sistema, temos 10 dígitos (0-9) e cada coluna nesse sistema representa um valor 10 vezes maior do que aquele a sua direita. Então, por exemplo:

31337




Representa (começando à direita e movendo para a esquerda):7 (1) 
3 dez (10) 
3 centenas (100) 
1 mil (1000) 
3 dez mil (10 000)Cada titular é 10 vezes maior do que o anterior. O sistema hexadecimal funciona da mesma forma, mas cada coluna é 16 vezes maior do que a coluna anterior. Assim, as quatro primeiras colunas hexagonais têm valores como este:

4096 256 16 1

Cada um é 16 vezes maior que a coluna à direita.

O Sistema de numeração Hex

O sistema hexadecimal é um sistema de numeração base16. Como o sistema decimal ou Base10, o sistema hexadecimal deve ter 16 dígitos para cobrir todas as possibilidades. Infelizmente, temos apenas 10 para trabalhar com (0-9), então precisamos adicionar mais seis. A indústria de computadores decidiu usar as letras AF para representar esses valores adicionais. Isso significa que o sistema hexadecimal possui os seguintes valores.

0 = 0 
1 = 1 
2 = 2 
3 = 3 
4 = 4 
5 = 5 
6 = 6 
7 = 7 
8 = 8 
9 = 9 
A = 10 
B = 11 
C = 12 
D = 13 
E = 14 
F = 15

Isso significa que quando vemos uma representação hexadecimal de um número como:

0x45

Podemos avaliá-lo de forma semelhante a um número decimal, exceto que a segunda coluna representa 16s e não 10s. Isso significa que 0x45 em hexadecimal pode ser avaliado, como:

5 x 1 = 5 
4 x 16 = 64 
————— 
= 69

Se tivermos um número hexadecimal como o DE, podemos calcular o valor dessa maneira:

D representa 13 x 16 = 208 
E representa 14 x 1 = 14 
———————————— – 
= 222

Por que usamos Hex

Na computação, um bit é um único interruptor on / off frequentemente representado por um 0 ou um 1. Um byte é oito bits frequentemente representados por 0000 0000. Um byte é uma unidade importante na computação, como costumava representar um caractere ASCII ou um único octeto em um endereço IP, entre muitas outras coisas. O intervalo de números que um byte pode representar é 0-255 ou 256 valores. É por isso que nos nossos endereços IPv4, cada octeto (byte) tem um valor de 0-255, como 192.168.0.254 com uma máscara de rede do 255.255.255.0. Me siga?

A maioria dos humanos tem dificuldade em trabalhar no sistema Base2 que está subjacente aos nossos sistemas informáticos. Os números Base2 podem ser representados assim:

1101 1100

Embora esse número represente 2220 em decimal, a conversão para decimal não é simples ou intuitiva.

O sistema hexadecimal nos permite representar os valores de um único byte com apenas dois dígitos, pois os valores hexadecimais de dois dígitos também variam de 0 a 255. O Hex é mais compacto do que o sistema Base2 e parece muito mais como o sistema decimal do que Base2. Além disso, todos os valores que podem ser representados por um byte podem ser representados em hexadecimal pelos valores entre 0x00 – 0xFF (255).

Hex Math

Provavelmente a maneira mais fácil de fazer matemática hexadecimal é usar a calculadora incorporada em todos os sistemas Windows. Abra a calculadora do Windows como abaixo:

Agora, vá para o menu Exibir na parte superior e escolha “Programador”.




Como você pode ver no lado esquerdo da calculadora sobre o meio do caminho, existem quatro botões, Hex, Dec, Oct, Bin. Por padrão, ele deve ser configurado para Dec ou Decimal, nosso familiar sistema Base10. Se eu quiser inserir um número hexadecimal, basta clicar em Hex e, em seguida, digitar o número.

Depois de fazer isso, eu posso mudar para o botão Dec e ele converterá meu número hexadecimal para um número decimal.




Finalmente, se queremos adicionar, subtrair, multiplicar ou dividir em hexadecimal, também podemos usar a visualização do Programador na Calculadora. Ou seja, queremos adicionar o valor hexadecimal DE ao valor hexadecimal A5, simplesmente entramos em DE na calculadora, pressione a adição (+) e depois digite o A5 e depois pressione igual. O resultado será 183 em hexadecimal.

E então podemos alternar para o botão Dec e obter o equivalente decimal ou 387.




Espero que este breve tutorial em hexadeça é útil para meus hackers novatos e ajuda você a avançar seu conhecimento para que um dia você possa piratear como um profissional!

 

 

Você pode gostar...

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *