🔍 文件魔数识别

📎

拖拽文件到此处或点击选择文件

读取文件头字节识别真实类型

或输入十六进制字节
常见文件魔数参考
文件类型 魔数 偏移 扩展名
📖 工具说明

文件魔数识别工具通过读取文件头部字节来判断文件的真实类型,比文件扩展名更可靠,可用于安全验证和恶意文件检测。

  1. 上传文件:拖拽或点击上传文件,自动识别文件类型
  2. 输入十六进制:手动输入文件头字节进行识别
  3. 魔数参考:上方表格列出了常见文件的魔数
💡 什么是魔数?

某些类型的文件在开头几个字节处有固定的内容,可以通过这些字节来判断文件类型,这些字节被称为"魔数"(magic number)。例如,Java class文件的魔数是"CAFEBABE"。

使用魔数来判断文件类型非常重要,因为文件扩展名很容易被修改或丢失,不够可靠。通过检查文件开头的实际二进制内容,魔数提供了一种更准确、更安全的文件格式识别方法,这对于安全验证、数据处理和防止恶意文件上传都至关重要。

💻 代码示例
function magic_bytes($path, $position = 0, $bytes = 4)
{
    if (!file_exists($path)) {
        return null;
    }
    $handle = fopen($path, 'rb');
    fseek($handle, $position);
    $bytes = bin2hex(fread($handle, $bytes));
    fclose($handle);
    return $bytes;
}
🔒 隐私保护: 仅读取文件头部字节,文件不会上传到服务器。
🔗 相关工具