dat2img

package
v0.0.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 8, 2025 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// Common image format definitions
	JPG     = Format{Header: []byte{0xFF, 0xD8, 0xFF}, Ext: "jpg"}
	PNG     = Format{Header: []byte{0x89, 0x50, 0x4E, 0x47}, Ext: "png"}
	GIF     = Format{Header: []byte{0x47, 0x49, 0x46, 0x38}, Ext: "gif"}
	TIFF    = Format{Header: []byte{0x49, 0x49, 0x2A, 0x00}, Ext: "tiff"}
	BMP     = Format{Header: []byte{0x42, 0x4D}, Ext: "bmp"}
	Formats = []Format{JPG, PNG, GIF, TIFF, BMP}

	// WeChat v4 related constants
	V4XorKey    byte = 0x37                           // Default XOR key for WeChat v4 dat files
	V4DatHeader      = []byte{0x07, 0x08, 0x56, 0x31} // WeChat v4 dat file header
	JpgTail          = []byte{0xFF, 0xD9}             // JPG file tail marker
)

Functions

func Dat2Image

func Dat2Image(data []byte) ([]byte, string, error)

Dat2Image converts WeChat dat file data to image data Returns the decoded image data, file extension, and any error encountered

func Dat2ImageV4 added in v0.0.6

func Dat2ImageV4(data []byte) ([]byte, string, error)

Dat2ImageV4 processes WeChat v4 dat image files WeChat v4 uses a combination of AES-ECB and XOR encryption

func ScanAndSetXorKey added in v0.0.6

func ScanAndSetXorKey(dirPath string) (byte, error)

ScanAndSetXorKey scans a directory for "_t.dat" files to calculate and set the global XOR key for WeChat v4 dat files Returns the found key and any error encountered

Types

type Format

type Format struct {
	Header []byte
	Ext    string
}

Format defines the header and extension for different image types

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL