
Hexadecimal El propósito del nacimiento es desarrollar una herramienta liviana pero útil. La razón es que el editor hexadecimal existente tiene algunas limitaciones diferentes (por ejemplo, demasiadas dependencias, falta de funciones de coloración hexadecimal, etc.).


El proyecto se basa en qhexedit2, piedra angular y piedra angular motor. Es posible que se agreguen nuevas funciones en el futuro, y las relaciones públicas son bienvenidas.
- Cargador de bloques: se usa para cargar solo una parte de archivos grandes sin quedarse sin memoria (use alt + flechas izquierda / derecha para moverse entre bloques). Tenga en cuenta que en el modo de fragmentos, todas las operaciones (como la búsqueda), excepto el guardado de archivos (se guarda el archivo completo) solo se aplican al fragmento actual. Sin embargo, cada vez que edite un bloque, guárdelo antes de pasar a otro bloque, de lo contrario perderá sus cambios.
- Buscar y reemplazar (admite UTF-8, HEX, expresión regular, búsqueda inversa) [
CTRL + F
] - Salida de color (espacios, caracteres ASCII, 0xFF, UTF-8 y bytes NULL tienen colores diferentes)
- Interprete los bytes seleccionados como enteros, enteros largos, enteros largos sin signo [
CTRL + B
] - copiar y pegar [
CTRL + C
andCTRL + V
] - Copiar los caracteres Unicode seleccionados [
CTRL + Space
] - Poner a cero todos los bytes seleccionados [
Delete
orCTRL + D
] - Deshacer rehacer [
CTRL + Z
andCTRL + Y
] - Arrastrar y soltar (insinuación: Arrastre y suelte dos archivos para distinguirlos)
- Sobrescriba el mismo archivo o cree uno nuevo [
CTRL + S
] - Ir a compensación [
CTRL + G
] - Admite el modo de inserción para insertar nuevos bytes en lugar de sobrescribir los bytes existentes [
INS
] - Crea una nueva instancia [
CTRL + N
] - Visor de texto básico para el texto seleccionado [
CTRL + T
] - Recargar el archivo actual [
F5
] - Compare dos archivos diferentes a nivel de bytes
- Gráfico binario navegable (consulte los detalles a continuación) [
F1
] - Convertidor de números hexadecimales-decimales [
F2
] - Carácter de escape de cadena hexadecimal (por ejemplo, de 010203 a x01 x02 x03) [
F3
] - Motor de coincidencia de patrones (consulte los detalles a continuación)
- Disassebler basado en el motor Capstone [
F4
] - Ensamblador basado en motor Keystone [
F4
] - Reducir / Ampliar vista de bytes (
CTRL + Up/Down
oCTRL + -/+
) - Accesos directos a todas estas funciones
Motor de coincidencia de patrones
Fhex puede cargar un archivo de configuración al inicio (desde ~/fhex/config.json
) El formato es JSON, que contiene la cadena o lista de bytes que se resaltará y los comentarios / etiquetas que se agregarán cerca de la coincidencia.
ejemplo:
{
«La coincidencia de patrones»:
[
{
“string” : “://www.”,
“color” : “rgba(250,200,200,50)”,
“message” : “Found url”
},
{
“bytes” : “414243”,
“color” : “rgba(250,200,200,50)”,
“message” : “Found ABC”
}
]
}
Para activar la coincidencia de patrones, presione CTRL + P
Finalmente, Fhex también mostrará una lista de compensaciones que contiene todas las referencias de resultados. notas: Las etiquetas anotadas solo se agregan cuando la ventana está maximizada. Si las etiquetas no se muestran correctamente, intente ejecutar la coincidencia de patrones nuevamente.
Fhex tiene un archivo binario cargado para dibujar (notas: Para compilar el proyecto, ahora también necesita qt5-charts
Instalado en el sistema). El rango del eje y está entre 0 y 255 (hexadecimal 0x0 y 0xff, es decir, valores de bytes). El rango del eje x está entre 0 y el tamaño del archivo.
El gráfico traza los valores de bytes del archivo binario, lo que le permite concentrarse solo en la parte relevante. Por ejemplo, si hay un área llena de bytes vacíos en el archivo binario, puede detectarlo fácilmente en el gráfico.