文件头格式标准魔数magic number和mime.types

文件头格式标准魔数-magic number和mime.types 2021年11月8日10:13:39 1,magic number https://www.garykessler.net/library/file_sigs.html 这个文件头部,各种文件的默认数据格式 https://gist.github.com/Qti3e/6341245314bf3513abb080677cd1c93b 常用版本的json { "123": { ... 阅读详情

1、magic number

https://www.garykessler.net/library/file_sigs.html

这个文件头部,各种文件的默认数据格式

https://gist.github.com/Qti3e/6341245314bf3513abb080677cd1c93b

常用版本的json:

{
    "123": {
        "signs": [
            "0,00001A00051004"
        ],
        "mime": "application/vnd.lotus-1-2-3"
    },
    "cpl": {
        "signs": [
            "0,4D5A",
            "0,DCDC"
        ],
        "mime": "application/cpl+xml"
    },
    "epub": {
        "signs": [
            "0,504B03040A000200"
        ],
        "mime": "application/epub+zip"
    },
    "ttf": {
        "signs": [
            "0,0001000000"
        ],
        "mime": "application/font-sfnt"
    },
    "gz": {
        "signs": [
            "0,1F8B08"
        ],
        "mime": "application/gzip"
    },
    "tgz": {
        "signs": [
            "0,1F8B08"
        ],
        "mime": "application/gzip"
    },
    "hqx": {
        "signs": [
            "0,28546869732066696C65206D75737420626520636F6E76657274656420776974682042696E48657820"
        ],
        "mime": "application/mac-binhex40"
    },
    "doc": {
        "signs": [
            "0,0D444F43",
            "0,CF11E0A1B11AE100",
            "0,D0CF11E0A1B11AE1",
            "0,DBA52D00",
            "512,ECA5C100"
        ],
        "mime": "application/msword"
    },
    "mxf": {
        "signs": [
            "0,060E2B34020501010D0102010102",
            "0,3C435472616E7354696D656C696E653E"
        ],
        "mime": "application/mxf"
    },
    "lha": {
        "signs": [
            "2,2D6C68"
        ],
        "mime": "application/octet-stream"
    },
    "lzh": {
        "signs": [
            "2,2D6C68"
        ],
        "mime": "application/octet-stream"
    },
    "exe": {
        "signs": [
            "0,4D5A"
        ],
        "mime": "application/octet-stream"
    },
    "class": {
        "signs": [
            "0,CAFEBABE"
        ],
        "mime": "application/octet-stream"
    },
    "dll": {
        "signs": [
            "0,4D5A"
        ],
        "mime": "application/octet-stream"
    },
    "img": {
        "signs": [
            "0,000100005374616E64617264204A6574204442",
            "0,504943540008",
            "0,514649FB",
            "0,53434D49",
            "0,7E742C015070024D52010000000800000001000031000000310000004301FF0001000800010000007e742c01",
            "0,EB3C902A"
        ],
        "mime": "application/octet-stream"
    },
    "iso": {
        "signs": [
            "32769,4344303031",
            "34817,4344303031",
            "36865,4344303031"
        ],
        "mime": "application/octet-stream"
    },
    "ogx": {
        "signs": [
            "0,4F67675300020000000000000000"
        ],
        "mime": "application/ogg"
    },
    "oxps": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/oxps"
    },
    "pdf": {
        "signs": [
            "0,25504446"
        ],
        "mime": "application/pdf"
    },
    "p10": {
        "signs": [
            "0,64000000"
        ],
        "mime": "application/pkcs10"
    },
    "pls": {
        "signs": [
            "0,5B706C61796C6973745D"
        ],
        "mime": "application/pls+xml"
    },
    "eps": {
        "signs": [
            "0,252150532D41646F62652D332E3020455053462D332030",
            "0,C5D0D3C6"
        ],
        "mime": "application/postscript"
    },
    "ai": {
        "signs": [
            "0,25504446"
        ],
        "mime": "application/postscript"
    },
    "rtf": {
        "signs": [
            "0,7B5C72746631"
        ],
        "mime": "application/rtf"
    },
    "tsa": {
        "signs": [
            "0,47"
        ],
        "mime": "application/tamp-sequence-adjust"
    },
    "msf": {
        "signs": [
            "0,2F2F203C212D2D203C6D64623A6D6F726B3A7A"
        ],
        "mime": "application/vnd.epson.msf"
    },
    "fdf": {
        "signs": [
            "0,25504446"
        ],
        "mime": "application/vnd.fdf"
    },
    "fm": {
        "signs": [
            "0,3C4D616B657246696C6520"
        ],
        "mime": "application/vnd.framemaker"
    },
    "kmz": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.google-earth.kmz"
    },
    "tpl": {
        "signs": [
            "0,0020AF30",
            "0,6D7346696C7465724C697374"
        ],
        "mime": "application/vnd.groove-tool-template"
    },
    "kwd": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.kde.kword"
    },
    "wk4": {
        "signs": [
            "0,00001A000210040000000000"
        ],
        "mime": "application/vnd.lotus-1-2-3"
    },
    "wk3": {
        "signs": [
            "0,00001A000010040000000000"
        ],
        "mime": "application/vnd.lotus-1-2-3"
    },
    "wk1": {
        "signs": [
            "0,0000020006040600080000000000"
        ],
        "mime": "application/vnd.lotus-1-2-3"
    },
    "apr": {
        "signs": [
            "0,D0CF11E0A1B11AE1"
        ],
        "mime": "application/vnd.lotus-approach"
    },
    "nsf": {
        "signs": [
            "0,1A0000040000",
            "0,4E45534D1A01"
        ],
        "mime": "application/vnd.lotus-notes"
    },
    "ntf": {
        "signs": [
            "0,1A0000",
            "0,30314F52444E414E43452053555256455920202020202020",
            "0,4E49544630"
        ],
        "mime": "application/vnd.lotus-notes"
    },
    "org": {
        "signs": [
            "0,414F4C564D313030"
        ],
        "mime": "application/vnd.lotus-organizer"
    },
    "lwp": {
        "signs": [
            "0,576F726450726F"
        ],
        "mime": "application/vnd.lotus-wordpro"
    },
    "sam": {
        "signs": [
            "0,5B50686F6E655D"
        ],
        "mime": "application/vnd.lotus-wordpro"
    },
    "mif": {
        "signs": [
            "0,3C4D616B657246696C6520",
            "0,56657273696F6E20"
        ],
        "mime": "application/vnd.mif"
    },
    "xul": {
        "signs": [
            "0,3C3F786D6C2076657273696F6E3D22312E30223F3E"
        ],
        "mime": "application/vnd.mozilla.xul+xml"
    },
    "asf": {
        "signs": [
            "0,3026B2758E66CF11A6D900AA0062CE6C"
        ],
        "mime": "application/vnd.ms-asf"
    },
    "cab": {
        "signs": [
            "0,49536328",
            "0,4D534346"
        ],
        "mime": "application/vnd.ms-cab-compressed"
    },
    "xls": {
        "signs": [
            "512,0908100000060500",
            "0,D0CF11E0A1B11AE1",
            "512,FDFFFFFF04",
            "512,FDFFFFFF20000000"
        ],
        "mime": "application/vnd.ms-excel"
    },
    "xla": {
        "signs": [
            "0,D0CF11E0A1B11AE1"
        ],
        "mime": "application/vnd.ms-excel"
    },
    "chm": {
        "signs": [
            "0,49545346"
        ],
        "mime": "application/vnd.ms-htmlhelp"
    },
    "ppt": {
        "signs": [
            "512,006E1EF0",
            "512,0F00E803",
            "512,A0461DF0",
            "0,D0CF11E0A1B11AE1",
            "512,FDFFFFFF04"
        ],
        "mime": "application/vnd.ms-powerpoint"
    },
    "pps": {
        "signs": [
            "0,D0CF11E0A1B11AE1"
        ],
        "mime": "application/vnd.ms-powerpoint"
    },
    "wks": {
        "signs": [
            "0,0E574B53",
            "0,FF000200040405540200"
        ],
        "mime": "application/vnd.ms-works"
    },
    "wpl": {
        "signs": [
            "84,4D6963726F736F66742057696E646F7773204D6564696120506C61796572202D2D20"
        ],
        "mime": "application/vnd.ms-wpl"
    },
    "xps": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.ms-xpsdocument"
    },
    "cif": {
        "signs": [
            "2,5B56657273696F6E"
        ],
        "mime": "application/vnd.multiad.creator.cif"
    },
    "odp": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.oasis.opendocument.presentation"
    },
    "odt": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.oasis.opendocument.text"
    },
    "ott": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.oasis.opendocument.text-template"
    },
    "pptx": {
        "signs": [
            "0,504B030414000600"
        ],
        "mime": "application/vnd.openxmlformats-officedocument.presentationml.presentation"
    },
    "xlsx": {
        "signs": [
            "0,504B030414000600"
        ],
        "mime": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
    },
    "docx": {
        "signs": [
            "0,504B030414000600"
        ],
        "mime": "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
    },
    "prc": {
        "signs": [
            "0,424F4F4B4D4F4249",
            "60,74424D504B6E5772"
        ],
        "mime": "application/vnd.palm"
    },
    "pdb": {
        "signs": [
            "11,000000000000000000000000000000000000000000000000",
            "0,4D2D5720506F636B6574204469637469",
            "0,4D6963726F736F667420432F432B2B20",
            "0,736D5F",
            "0,737A657A",
            "0,ACED0005737200126267626C69747A2E"
        ],
        "mime": "application/vnd.palm"
    },
    "qxd": {
        "signs": [
            "0,00004D4D585052"
        ],
        "mime": "application/vnd.Quark.QuarkXPress"
    },
    "rar": {
        "signs": [
            "0,526172211A0700",
            "0,526172211A070100"
        ],
        "mime": "application/vnd.rar"
    },
    "mmf": {
        "signs": [
            "0,4D4D4D440000"
        ],
        "mime": "application/vnd.smaf"
    },
    "cap": {
        "signs": [
            "0,52545353",
            "0,58435000"
        ],
        "mime": "application/vnd.tcpdump.pcap"
    },
    "dmp": {
        "signs": [
            "0,4D444D5093A7",
            "0,5041474544553634",
            "0,5041474544554D50"
        ],
        "mime": "application/vnd.tcpdump.pcap"
    },
    "wpd": {
        "signs": [
            "0,FF575043"
        ],
        "mime": "application/vnd.wordperfect"
    },
    "xar": {
        "signs": [
            "0,78617221"
        ],
        "mime": "application/vnd.xara"
    },
    "spf": {
        "signs": [
            "0,5350464900"
        ],
        "mime": "application/vnd.yamaha.smaf-phrase"
    },
    "dtd": {
        "signs": [
            "0,0764743264647464"
        ],
        "mime": "application/xml-dtd"
    },
    "zip": {
        "signs": [
            "0,504B0304",
            "0,504B0304",
            "0,504B030414000100630000000000",
            "0,504B0708",
            "30,504B4C495445",
            "526,504B537058",
            "29152,57696E5A6970"
        ],
        "mime": "application/zip"
    },
    "amr": {
        "signs": [
            "0,2321414D52"
        ],
        "mime": "audio/AMR"
    },
    "au": {
        "signs": [
            "0,2E736E64",
            "0,646E732E"
        ],
        "mime": "audio/basic"
    },
    "m4a": {
        "signs": [
            "0,00000020667479704D344120",
            "4,667479704D344120"
        ],
        "mime": "audio/mp4"
    },
    "mp3": {
        "signs": [
            "0,494433",
            "0,FFFB"
        ],
        "mime": "audio/mpeg"
    },
    "oga": {
        "signs": [
            "0,4F67675300020000000000000000"
        ],
        "mime": "audio/ogg"
    },
    "ogg": {
        "signs": [
            "0,4F67675300020000000000000000"
        ],
        "mime": "audio/ogg"
    },
    "qcp": {
        "signs": [
            "0,52494646"
        ],
        "mime": "audio/qcelp"
    },
    "koz": {
        "signs": [
            "0,49443303000000"
        ],
        "mime": "audio/vnd.audikoz"
    },
    "bmp": {
        "signs": [
            "0,424D"
        ],
        "mime": "image/bmp"
    },
    "dib": {
        "signs": [
            "0,424D"
        ],
        "mime": "image/bmp"
    },
    "emf": {
        "signs": [
            "0,01000000"
        ],
        "mime": "image/emf"
    },
    "fits": {
        "signs": [
            "0,53494D504C4520203D202020202020202020202020202020202020202054"
        ],
        "mime": "image/fits"
    },
    "gif": {
        "signs": [
            "0,474946383961"
        ],
        "mime": "image/gif"
    },
    "jp2": {
        "signs": [
            "0,0000000C6A5020200D0A"
        ],
        "mime": "image/jp2"
    },
    "jpg": {
        "signs": [
            "0,FFD8",
            "0,FFD8",
            "0,FFD8",
            "0,FFD8"
        ],
        "mime": "image/jpeg"
    },
    "jpeg": {
        "signs": [
            "0,FFD8",
            "0,FFD8"
        ],
        "mime": "image/jpeg"
    },
    "jpe": {
        "signs": [
            "0,FFD8",
            "0,FFD8"
        ],
        "mime": "image/jpeg"
    },
    "jfif": {
        "signs": [
            "0,FFD8"
        ],
        "mime": "image/jpeg"
    },
    "png": {
        "signs": [
            "0,89504E470D0A1A0A"
        ],
        "mime": "image/png"
    },
    "tiff": {
        "signs": [
            "0,492049",
            "0,49492A00",
            "0,4D4D002A",
            "0,4D4D002B"
        ],
        "mime": "image/tiff"
    },
    "tif": {
        "signs": [
            "0,492049",
            "0,49492A00",
            "0,4D4D002A",
            "0,4D4D002B"
        ],
        "mime": "image/tiff"
    },
    "psd": {
        "signs": [
            "0,38425053"
        ],
        "mime": "image/vnd.adobe.photoshop"
    },
    "dwg": {
        "signs": [
            "0,41433130"
        ],
        "mime": "image/vnd.dwg"
    },
    "ico": {
        "signs": [
            "0,00000100"
        ],
        "mime": "image/vnd.microsoft.icon"
    },
    "mdi": {
        "signs": [
            "0,4550"
        ],
        "mime": "image/vnd.ms-modi"
    },
    "hdr": {
        "signs": [
            "0,233F52414449414E43450A",
            "0,49536328"
        ],
        "mime": "image/vnd.radiance"
    },
    "pcx": {
        "signs": [
            "512,0908100000060500"
        ],
        "mime": "image/vnd.zbrush.pcx"
    },
    "wmf": {
        "signs": [
            "0,010009000003",
            "0,D7CDC69A"
        ],
        "mime": "image/wmf"
    },
    "eml": {
        "signs": [
            "0,46726F6D3A20",
            "0,52657475726E2D506174683A20",
            "0,582D"
        ],
        "mime": "message/rfc822"
    },
    "art": {
        "signs": [
            "0,4A47040E"
        ],
        "mime": "message/rfc822"
    },
    "manifest": {
        "signs": [
            "0,3C3F786D6C2076657273696F6E3D"
        ],
        "mime": "text/cache-manifest"
    },
    "log": {
        "signs": [
            "0,2A2A2A2020496E7374616C6C6174696F6E205374617274656420"
        ],
        "mime": "text/plain"
    },
    "tsv": {
        "signs": [
            "0,47"
        ],
        "mime": "text/tab-separated-values"
    },
    "vcf": {
        "signs": [
            "0,424547494E3A56434152440D0A"
        ],
        "mime": "text/vcard"
    },
    "dms": {
        "signs": [
            "0,444D5321"
        ],
        "mime": "text/vnd.DMClientScript"
    },
    "dot": {
        "signs": [
            "0,D0CF11E0A1B11AE1"
        ],
        "mime": "text/vnd.graphviz"
    },
    "ts": {
        "signs": [
            "0,47"
        ],
        "mime": "text/vnd.trolltech.linguist"
    },
    "3gp": {
        "signs": [
            "0,0000001466747970336770",
            "0,0000002066747970336770"
        ],
        "mime": "video/3gpp"
    },
    "3g2": {
        "signs": [
            "0,0000001466747970336770",
            "0,0000002066747970336770"
        ],
        "mime": "video/3gpp2"
    },
    "mp4": {
        "signs": [
            "0,000000146674797069736F6D",
            "0,000000186674797033677035",
            "0,0000001C667479704D534E56012900464D534E566D703432",
            "4,6674797033677035",
            "4,667479704D534E56",
            "4,6674797069736F6D"
        ],
        "mime": "video/mp4"
    },
    "m4v": {
        "signs": [
            "0,00000018667479706D703432",
            "0,00000020667479704D345620",
            "4,667479706D703432"
        ],
        "mime": "video/mp4"
    },
    "mpeg": {
        "signs": [
            "0,00000100",
            "0,FFD8"
        ],
        "mime": "video/mpeg"
    },
    "mpg": {
        "signs": [
            "0,00000100",
            "0,000001BA",
            "0,FFD8"
        ],
        "mime": "video/mpeg"
    },
    "ogv": {
        "signs": [
            "0,4F67675300020000000000000000"
        ],
        "mime": "video/ogg"
    },
    "mov": {
        "signs": [
            "0,00",
            "0,000000146674797071742020",
            "4,6674797071742020",
            "4,6D6F6F76"
        ],
        "mime": "video/quicktime"
    },
    "cpt": {
        "signs": [
            "0,4350543746494C45",
            "0,43505446494C45"
        ],
        "mime": "application/mac-compactpro"
    },
    "sxc": {
        "signs": [
            "0,504B0304",
            "0,504B0304"
        ],
        "mime": "application/vnd.sun.xml.calc"
    },
    "sxd": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.sun.xml.draw"
    },
    "sxi": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.sun.xml.impress"
    },
    "sxw": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.sun.xml.writer"
    },
    "bz2": {
        "signs": [
            "0,425A68"
        ],
        "mime": "application/x-bzip2"
    },
    "vcd": {
        "signs": [
            "0,454E5452595643440200000102001858"
        ],
        "mime": "application/x-cdlink"
    },
    "csh": {
        "signs": [
            "0,6375736800000002000000"
        ],
        "mime": "application/x-csh"
    },
    "spl": {
        "signs": [
            "0,00000100"
        ],
        "mime": "application/x-futuresplash"
    },
    "jar": {
        "signs": [
            "0,4A4152435300",
            "0,504B0304",
            "0,504B0304140008000800",
            "0,5F27A889"
        ],
        "mime": "application/x-java-archive"
    },
    "rpm": {
        "signs": [
            "0,EDABEEDB"
        ],
        "mime": "application/x-rpm"
    },
    "swf": {
        "signs": [
            "0,435753",
            "0,465753",
            "0,5A5753"
        ],
        "mime": "application/x-shockwave-flash"
    },
    "sit": {
        "signs": [
            "0,5349542100",
            "0,5374756666497420286329313939372D"
        ],
        "mime": "application/x-stuffit"
    },
    "tar": {
        "signs": [
            "257,7573746172"
        ],
        "mime": "application/x-tar"
    },
    "xpi": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/x-xpinstall"
    },
    "xz": {
        "signs": [
            "0,FD377A585A00"
        ],
        "mime": "application/x-xz"
    },
    "mid": {
        "signs": [
            "0,4D546864"
        ],
        "mime": "audio/midi"
    },
    "midi": {
        "signs": [
            "0,4D546864"
        ],
        "mime": "audio/midi"
    },
    "aiff": {
        "signs": [
            "0,464F524D00"
        ],
        "mime": "audio/x-aiff"
    },
    "flac": {
        "signs": [
            "0,664C614300000022"
        ],
        "mime": "audio/x-flac"
    },
    "wma": {
        "signs": [
            "0,3026B2758E66CF11A6D900AA0062CE6C"
        ],
        "mime": "audio/x-ms-wma"
    },
    "ram": {
        "signs": [
            "0,727473703A2F2F"
        ],
        "mime": "audio/x-pn-realaudio"
    },
    "rm": {
        "signs": [
            "0,2E524D46"
        ],
        "mime": "audio/x-pn-realaudio"
    },
    "ra": {
        "signs": [
            "0,2E524D460000001200",
            "0,2E7261FD00"
        ],
        "mime": "audio/x-realaudio"
    },
    "wav": {
        "signs": [
            "0,52494646"
        ],
        "mime": "audio/x-wav"
    },
    "webp": {
        "signs": [
            "0,52494646"
        ],
        "mime": "image/webp"
    },
    "pgm": {
        "signs": [
            "0,50350A"
        ],
        "mime": "image/x-portable-graymap"
    },
    "rgb": {
        "signs": [
            "0,01DA01010003"
        ],
        "mime": "image/x-rgb"
    },
    "webm": {
        "signs": [
            "0,1A45DFA3"
        ],
        "mime": "video/webm"
    },
    "flv": {
        "signs": [
            "0,00000020667479704D345620",
            "0,464C5601"
        ],
        "mime": "video/x-flv"
    },
    "mkv": {
        "signs": [
            "0,1A45DFA3"
        ],
        "mime": "video/x-matroska"
    },
    "asx": {
        "signs": [
            "0,3C"
        ],
        "mime": "video/x-ms-asf"
    },
    "wmv": {
        "signs": [
            "0,3026B2758E66CF11A6D900AA0062CE6C"
        ],
        "mime": "video/x-ms-wmv"
    },
    "avi": {
        "signs": [
            "0,52494646"
        ],
        "mime": "video/x-msvideo"
    }
}

mime.types

https://datatracker.ietf.org/doc/html/rfc6838

/usr/local/nginx/mime.types

{
    "123": {
        "signs": [
            "0,00001A00051004"
        ],
        "mime": "application/vnd.lotus-1-2-3"
    },
    "cpl": {
        "signs": [
            "0,4D5A",
            "0,DCDC"
        ],
        "mime": "application/cpl+xml"
    },
    "epub": {
        "signs": [
            "0,504B03040A000200"
        ],
        "mime": "application/epub+zip"
    },
    "ttf": {
        "signs": [
            "0,0001000000"
        ],
        "mime": "application/font-sfnt"
    },
    "gz": {
        "signs": [
            "0,1F8B08"
        ],
        "mime": "application/gzip"
    },
    "tgz": {
        "signs": [
            "0,1F8B08"
        ],
        "mime": "application/gzip"
    },
    "hqx": {
        "signs": [
            "0,28546869732066696C65206D75737420626520636F6E76657274656420776974682042696E48657820"
        ],
        "mime": "application/mac-binhex40"
    },
    "doc": {
        "signs": [
            "0,0D444F43",
            "0,CF11E0A1B11AE100",
            "0,D0CF11E0A1B11AE1",
            "0,DBA52D00",
            "512,ECA5C100"
        ],
        "mime": "application/msword"
    },
    "mxf": {
        "signs": [
            "0,060E2B34020501010D0102010102",
            "0,3C435472616E7354696D656C696E653E"
        ],
        "mime": "application/mxf"
    },
    "lha": {
        "signs": [
            "2,2D6C68"
        ],
        "mime": "application/octet-stream"
    },
    "lzh": {
        "signs": [
            "2,2D6C68"
        ],
        "mime": "application/octet-stream"
    },
    "exe": {
        "signs": [
            "0,4D5A"
        ],
        "mime": "application/octet-stream"
    },
    "class": {
        "signs": [
            "0,CAFEBABE"
        ],
        "mime": "application/octet-stream"
    },
    "dll": {
        "signs": [
            "0,4D5A"
        ],
        "mime": "application/octet-stream"
    },
    "img": {
        "signs": [
            "0,000100005374616E64617264204A6574204442",
            "0,504943540008",
            "0,514649FB",
            "0,53434D49",
            "0,7E742C015070024D52010000000800000001000031000000310000004301FF0001000800010000007e742c01",
            "0,EB3C902A"
        ],
        "mime": "application/octet-stream"
    },
    "iso": {
        "signs": [
            "32769,4344303031",
            "34817,4344303031",
            "36865,4344303031"
        ],
        "mime": "application/octet-stream"
    },
    "ogx": {
        "signs": [
            "0,4F67675300020000000000000000"
        ],
        "mime": "application/ogg"
    },
    "oxps": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/oxps"
    },
    "pdf": {
        "signs": [
            "0,25504446"
        ],
        "mime": "application/pdf"
    },
    "p10": {
        "signs": [
            "0,64000000"
        ],
        "mime": "application/pkcs10"
    },
    "pls": {
        "signs": [
            "0,5B706C61796C6973745D"
        ],
        "mime": "application/pls+xml"
    },
    "eps": {
        "signs": [
            "0,252150532D41646F62652D332E3020455053462D332030",
            "0,C5D0D3C6"
        ],
        "mime": "application/postscript"
    },
    "ai": {
        "signs": [
            "0,25504446"
        ],
        "mime": "application/postscript"
    },
    "rtf": {
        "signs": [
            "0,7B5C72746631"
        ],
        "mime": "application/rtf"
    },
    "tsa": {
        "signs": [
            "0,47"
        ],
        "mime": "application/tamp-sequence-adjust"
    },
    "msf": {
        "signs": [
            "0,2F2F203C212D2D203C6D64623A6D6F726B3A7A"
        ],
        "mime": "application/vnd.epson.msf"
    },
    "fdf": {
        "signs": [
            "0,25504446"
        ],
        "mime": "application/vnd.fdf"
    },
    "fm": {
        "signs": [
            "0,3C4D616B657246696C6520"
        ],
        "mime": "application/vnd.framemaker"
    },
    "kmz": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.google-earth.kmz"
    },
    "tpl": {
        "signs": [
            "0,0020AF30",
            "0,6D7346696C7465724C697374"
        ],
        "mime": "application/vnd.groove-tool-template"
    },
    "kwd": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.kde.kword"
    },
    "wk4": {
        "signs": [
            "0,00001A000210040000000000"
        ],
        "mime": "application/vnd.lotus-1-2-3"
    },
    "wk3": {
        "signs": [
            "0,00001A000010040000000000"
        ],
        "mime": "application/vnd.lotus-1-2-3"
    },
    "wk1": {
        "signs": [
            "0,0000020006040600080000000000"
        ],
        "mime": "application/vnd.lotus-1-2-3"
    },
    "apr": {
        "signs": [
            "0,D0CF11E0A1B11AE1"
        ],
        "mime": "application/vnd.lotus-approach"
    },
    "nsf": {
        "signs": [
            "0,1A0000040000",
            "0,4E45534D1A01"
        ],
        "mime": "application/vnd.lotus-notes"
    },
    "ntf": {
        "signs": [
            "0,1A0000",
            "0,30314F52444E414E43452053555256455920202020202020",
            "0,4E49544630"
        ],
        "mime": "application/vnd.lotus-notes"
    },
    "org": {
        "signs": [
            "0,414F4C564D313030"
        ],
        "mime": "application/vnd.lotus-organizer"
    },
    "lwp": {
        "signs": [
            "0,576F726450726F"
        ],
        "mime": "application/vnd.lotus-wordpro"
    },
    "sam": {
        "signs": [
            "0,5B50686F6E655D"
        ],
        "mime": "application/vnd.lotus-wordpro"
    },
    "mif": {
        "signs": [
            "0,3C4D616B657246696C6520",
            "0,56657273696F6E20"
        ],
        "mime": "application/vnd.mif"
    },
    "xul": {
        "signs": [
            "0,3C3F786D6C2076657273696F6E3D22312E30223F3E"
        ],
        "mime": "application/vnd.mozilla.xul+xml"
    },
    "asf": {
        "signs": [
            "0,3026B2758E66CF11A6D900AA0062CE6C"
        ],
        "mime": "application/vnd.ms-asf"
    },
    "cab": {
        "signs": [
            "0,49536328",
            "0,4D534346"
        ],
        "mime": "application/vnd.ms-cab-compressed"
    },
    "xls": {
        "signs": [
            "512,0908100000060500",
            "0,D0CF11E0A1B11AE1",
            "512,FDFFFFFF04",
            "512,FDFFFFFF20000000"
        ],
        "mime": "application/vnd.ms-excel"
    },
    "xla": {
        "signs": [
            "0,D0CF11E0A1B11AE1"
        ],
        "mime": "application/vnd.ms-excel"
    },
    "chm": {
        "signs": [
            "0,49545346"
        ],
        "mime": "application/vnd.ms-htmlhelp"
    },
    "ppt": {
        "signs": [
            "512,006E1EF0",
            "512,0F00E803",
            "512,A0461DF0",
            "0,D0CF11E0A1B11AE1",
            "512,FDFFFFFF04"
        ],
        "mime": "application/vnd.ms-powerpoint"
    },
    "pps": {
        "signs": [
            "0,D0CF11E0A1B11AE1"
        ],
        "mime": "application/vnd.ms-powerpoint"
    },
    "wks": {
        "signs": [
            "0,0E574B53",
            "0,FF000200040405540200"
        ],
        "mime": "application/vnd.ms-works"
    },
    "wpl": {
        "signs": [
            "84,4D6963726F736F66742057696E646F7773204D6564696120506C61796572202D2D20"
        ],
        "mime": "application/vnd.ms-wpl"
    },
    "xps": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.ms-xpsdocument"
    },
    "cif": {
        "signs": [
            "2,5B56657273696F6E"
        ],
        "mime": "application/vnd.multiad.creator.cif"
    },
    "odp": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.oasis.opendocument.presentation"
    },
    "odt": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.oasis.opendocument.text"
    },
    "ott": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.oasis.opendocument.text-template"
    },
    "pptx": {
        "signs": [
            "0,504B030414000600"
        ],
        "mime": "application/vnd.openxmlformats-officedocument.presentationml.presentation"
    },
    "xlsx": {
        "signs": [
            "0,504B030414000600"
        ],
        "mime": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
    },
    "docx": {
        "signs": [
            "0,504B030414000600"
        ],
        "mime": "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
    },
    "prc": {
        "signs": [
            "0,424F4F4B4D4F4249",
            "60,74424D504B6E5772"
        ],
        "mime": "application/vnd.palm"
    },
    "pdb": {
        "signs": [
            "11,000000000000000000000000000000000000000000000000",
            "0,4D2D5720506F636B6574204469637469",
            "0,4D6963726F736F667420432F432B2B20",
            "0,736D5F",
            "0,737A657A",
            "0,ACED0005737200126267626C69747A2E"
        ],
        "mime": "application/vnd.palm"
    },
    "qxd": {
        "signs": [
            "0,00004D4D585052"
        ],
        "mime": "application/vnd.Quark.QuarkXPress"
    },
    "rar": {
        "signs": [
            "0,526172211A0700",
            "0,526172211A070100"
        ],
        "mime": "application/vnd.rar"
    },
    "mmf": {
        "signs": [
            "0,4D4D4D440000"
        ],
        "mime": "application/vnd.smaf"
    },
    "cap": {
        "signs": [
            "0,52545353",
            "0,58435000"
        ],
        "mime": "application/vnd.tcpdump.pcap"
    },
    "dmp": {
        "signs": [
            "0,4D444D5093A7",
            "0,5041474544553634",
            "0,5041474544554D50"
        ],
        "mime": "application/vnd.tcpdump.pcap"
    },
    "wpd": {
        "signs": [
            "0,FF575043"
        ],
        "mime": "application/vnd.wordperfect"
    },
    "xar": {
        "signs": [
            "0,78617221"
        ],
        "mime": "application/vnd.xara"
    },
    "spf": {
        "signs": [
            "0,5350464900"
        ],
        "mime": "application/vnd.yamaha.smaf-phrase"
    },
    "dtd": {
        "signs": [
            "0,0764743264647464"
        ],
        "mime": "application/xml-dtd"
    },
    "zip": {
        "signs": [
            "0,504B0304",
            "0,504B0304",
            "0,504B030414000100630000000000",
            "0,504B0708",
            "30,504B4C495445",
            "526,504B537058",
            "29152,57696E5A6970"
        ],
        "mime": "application/zip"
    },
    "amr": {
        "signs": [
            "0,2321414D52"
        ],
        "mime": "audio/AMR"
    },
    "au": {
        "signs": [
            "0,2E736E64",
            "0,646E732E"
        ],
        "mime": "audio/basic"
    },
    "m4a": {
        "signs": [
            "0,00000020667479704D344120",
            "4,667479704D344120"
        ],
        "mime": "audio/mp4"
    },
    "mp3": {
        "signs": [
            "0,494433",
            "0,FFFB"
        ],
        "mime": "audio/mpeg"
    },
    "oga": {
        "signs": [
            "0,4F67675300020000000000000000"
        ],
        "mime": "audio/ogg"
    },
    "ogg": {
        "signs": [
            "0,4F67675300020000000000000000"
        ],
        "mime": "audio/ogg"
    },
    "qcp": {
        "signs": [
            "0,52494646"
        ],
        "mime": "audio/qcelp"
    },
    "koz": {
        "signs": [
            "0,49443303000000"
        ],
        "mime": "audio/vnd.audikoz"
    },
    "bmp": {
        "signs": [
            "0,424D"
        ],
        "mime": "image/bmp"
    },
    "dib": {
        "signs": [
            "0,424D"
        ],
        "mime": "image/bmp"
    },
    "emf": {
        "signs": [
            "0,01000000"
        ],
        "mime": "image/emf"
    },
    "fits": {
        "signs": [
            "0,53494D504C4520203D202020202020202020202020202020202020202054"
        ],
        "mime": "image/fits"
    },
    "gif": {
        "signs": [
            "0,474946383961"
        ],
        "mime": "image/gif"
    },
    "jp2": {
        "signs": [
            "0,0000000C6A5020200D0A"
        ],
        "mime": "image/jp2"
    },
    "jpg": {
        "signs": [
            "0,FFD8",
            "0,FFD8",
            "0,FFD8",
            "0,FFD8"
        ],
        "mime": "image/jpeg"
    },
    "jpeg": {
        "signs": [
            "0,FFD8",
            "0,FFD8"
        ],
        "mime": "image/jpeg"
    },
    "jpe": {
        "signs": [
            "0,FFD8",
            "0,FFD8"
        ],
        "mime": "image/jpeg"
    },
    "jfif": {
        "signs": [
            "0,FFD8"
        ],
        "mime": "image/jpeg"
    },
    "png": {
        "signs": [
            "0,89504E470D0A1A0A"
        ],
        "mime": "image/png"
    },
    "tiff": {
        "signs": [
            "0,492049",
            "0,49492A00",
            "0,4D4D002A",
            "0,4D4D002B"
        ],
        "mime": "image/tiff"
    },
    "tif": {
        "signs": [
            "0,492049",
            "0,49492A00",
            "0,4D4D002A",
            "0,4D4D002B"
        ],
        "mime": "image/tiff"
    },
    "psd": {
        "signs": [
            "0,38425053"
        ],
        "mime": "image/vnd.adobe.photoshop"
    },
    "dwg": {
        "signs": [
            "0,41433130"
        ],
        "mime": "image/vnd.dwg"
    },
    "ico": {
        "signs": [
            "0,00000100"
        ],
        "mime": "image/vnd.microsoft.icon"
    },
    "mdi": {
        "signs": [
            "0,4550"
        ],
        "mime": "image/vnd.ms-modi"
    },
    "hdr": {
        "signs": [
            "0,233F52414449414E43450A",
            "0,49536328"
        ],
        "mime": "image/vnd.radiance"
    },
    "pcx": {
        "signs": [
            "512,0908100000060500"
        ],
        "mime": "image/vnd.zbrush.pcx"
    },
    "wmf": {
        "signs": [
            "0,010009000003",
            "0,D7CDC69A"
        ],
        "mime": "image/wmf"
    },
    "eml": {
        "signs": [
            "0,46726F6D3A20",
            "0,52657475726E2D506174683A20",
            "0,582D"
        ],
        "mime": "message/rfc822"
    },
    "art": {
        "signs": [
            "0,4A47040E"
        ],
        "mime": "message/rfc822"
    },
    "manifest": {
        "signs": [
            "0,3C3F786D6C2076657273696F6E3D"
        ],
        "mime": "text/cache-manifest"
    },
    "log": {
        "signs": [
            "0,2A2A2A2020496E7374616C6C6174696F6E205374617274656420"
        ],
        "mime": "text/plain"
    },
    "tsv": {
        "signs": [
            "0,47"
        ],
        "mime": "text/tab-separated-values"
    },
    "vcf": {
        "signs": [
            "0,424547494E3A56434152440D0A"
        ],
        "mime": "text/vcard"
    },
    "dms": {
        "signs": [
            "0,444D5321"
        ],
        "mime": "text/vnd.DMClientScript"
    },
    "dot": {
        "signs": [
            "0,D0CF11E0A1B11AE1"
        ],
        "mime": "text/vnd.graphviz"
    },
    "ts": {
        "signs": [
            "0,47"
        ],
        "mime": "text/vnd.trolltech.linguist"
    },
    "3gp": {
        "signs": [
            "0,0000001466747970336770",
            "0,0000002066747970336770"
        ],
        "mime": "video/3gpp"
    },
    "3g2": {
        "signs": [
            "0,0000001466747970336770",
            "0,0000002066747970336770"
        ],
        "mime": "video/3gpp2"
    },
    "mp4": {
        "signs": [
            "0,000000146674797069736F6D",
            "0,000000186674797033677035",
            "0,0000001C667479704D534E56012900464D534E566D703432",
            "4,6674797033677035",
            "4,667479704D534E56",
            "4,6674797069736F6D"
        ],
        "mime": "video/mp4"
    },
    "m4v": {
        "signs": [
            "0,00000018667479706D703432",
            "0,00000020667479704D345620",
            "4,667479706D703432"
        ],
        "mime": "video/mp4"
    },
    "mpeg": {
        "signs": [
            "0,00000100",
            "0,FFD8"
        ],
        "mime": "video/mpeg"
    },
    "mpg": {
        "signs": [
            "0,00000100",
            "0,000001BA",
            "0,FFD8"
        ],
        "mime": "video/mpeg"
    },
    "ogv": {
        "signs": [
            "0,4F67675300020000000000000000"
        ],
        "mime": "video/ogg"
    },
    "mov": {
        "signs": [
            "0,00",
            "0,000000146674797071742020",
            "4,6674797071742020",
            "4,6D6F6F76"
        ],
        "mime": "video/quicktime"
    },
    "cpt": {
        "signs": [
            "0,4350543746494C45",
            "0,43505446494C45"
        ],
        "mime": "application/mac-compactpro"
    },
    "sxc": {
        "signs": [
            "0,504B0304",
            "0,504B0304"
        ],
        "mime": "application/vnd.sun.xml.calc"
    },
    "sxd": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.sun.xml.draw"
    },
    "sxi": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.sun.xml.impress"
    },
    "sxw": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/vnd.sun.xml.writer"
    },
    "bz2": {
        "signs": [
            "0,425A68"
        ],
        "mime": "application/x-bzip2"
    },
    "vcd": {
        "signs": [
            "0,454E5452595643440200000102001858"
        ],
        "mime": "application/x-cdlink"
    },
    "csh": {
        "signs": [
            "0,6375736800000002000000"
        ],
        "mime": "application/x-csh"
    },
    "spl": {
        "signs": [
            "0,00000100"
        ],
        "mime": "application/x-futuresplash"
    },
    "jar": {
        "signs": [
            "0,4A4152435300",
            "0,504B0304",
            "0,504B0304140008000800",
            "0,5F27A889"
        ],
        "mime": "application/x-java-archive"
    },
    "rpm": {
        "signs": [
            "0,EDABEEDB"
        ],
        "mime": "application/x-rpm"
    },
    "swf": {
        "signs": [
            "0,435753",
            "0,465753",
            "0,5A5753"
        ],
        "mime": "application/x-shockwave-flash"
    },
    "sit": {
        "signs": [
            "0,5349542100",
            "0,5374756666497420286329313939372D"
        ],
        "mime": "application/x-stuffit"
    },
    "tar": {
        "signs": [
            "257,7573746172"
        ],
        "mime": "application/x-tar"
    },
    "xpi": {
        "signs": [
            "0,504B0304"
        ],
        "mime": "application/x-xpinstall"
    },
    "xz": {
        "signs": [
            "0,FD377A585A00"
        ],
        "mime": "application/x-xz"
    },
    "mid": {
        "signs": [
            "0,4D546864"
        ],
        "mime": "audio/midi"
    },
    "midi": {
        "signs": [
            "0,4D546864"
        ],
        "mime": "audio/midi"
    },
    "aiff": {
        "signs": [
            "0,464F524D00"
        ],
        "mime": "audio/x-aiff"
    },
    "flac": {
        "signs": [
            "0,664C614300000022"
        ],
        "mime": "audio/x-flac"
    },
    "wma": {
        "signs": [
            "0,3026B2758E66CF11A6D900AA0062CE6C"
        ],
        "mime": "audio/x-ms-wma"
    },
    "ram": {
        "signs": [
            "0,727473703A2F2F"
        ],
        "mime": "audio/x-pn-realaudio"
    },
    "rm": {
        "signs": [
            "0,2E524D46"
        ],
        "mime": "audio/x-pn-realaudio"
    },
    "ra": {
        "signs": [
            "0,2E524D460000001200",
            "0,2E7261FD00"
        ],
        "mime": "audio/x-realaudio"
    },
    "wav": {
        "signs": [
            "0,52494646"
        ],
        "mime": "audio/x-wav"
    },
    "webp": {
        "signs": [
            "0,52494646"
        ],
        "mime": "image/webp"
    },
    "pgm": {
        "signs": [
            "0,50350A"
        ],
        "mime": "image/x-portable-graymap"
    },
    "rgb": {
        "signs": [
            "0,01DA01010003"
        ],
        "mime": "image/x-rgb"
    },
    "webm": {
        "signs": [
            "0,1A45DFA3"
        ],
        "mime": "video/webm"
    },
    "flv": {
        "signs": [
            "0,00000020667479704D345620",
            "0,464C5601"
        ],
        "mime": "video/x-flv"
    },
    "mkv": {
        "signs": [
            "0,1A45DFA3"
        ],
        "mime": "video/x-matroska"
    },
    "asx": {
        "signs": [
            "0,3C"
        ],
        "mime": "video/x-ms-asf"
    },
    "wmv": {
        "signs": [
            "0,3026B2758E66CF11A6D900AA0062CE6C"
        ],
        "mime": "video/x-ms-wmv"
    },
    "avi": {
        "signs": [
            "0,52494646"
        ],
        "mime": "video/x-msvideo"
    }
}

2、mime.types

http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types

Internet 媒体类型应按照 RFC 4288 中的描述进行注册。
注册表位于 http://www.iana.org/assignments/media-types/

http://www.iana.org/assignments/media-types/
这个是目前比较新和完整。

Python文件头校验实战:5分钟构建安全可靠的文件类型检测工具 文件类型识别是数据处理与安全验证的基础技术。其核心原理在于解析文件的二进制结构,通过识别文件起始位置的特定字节序列(即“文件头”或“魔数”)来判断真实格式,这比依赖易被篡改的文件扩展名更为可靠。这项技术的核心价值在于提升系统的安全性与数据处理的准确性,能有效防范恶意文件伪装,例如将可执行文件伪装成图片。在Web开发、文件管理、安全审计等场景中,文件头校验是验证用户上传文件、自动化处理批量文件的必备手段。本文以Python标准库为基础,详细讲解如何通过读取文件头、比对十六进制签名来快速实现一个轻量级检测器,并 阅读详情

相关推荐

MIME类型全解析:从HTTP协议到PHP安全校验的实战指南

MIME(多用途互联网邮件扩展)是互联网通信中定义文件格式的核心标准,它通过“类型/子类型”的结构(如text/html、image/jpeg)在HTTP协议中标识内容类型。其工作原理基于服务器在响应头中设置Content-Type字段,浏览器据此决定如何解析和渲染资源。这一机制对Web开发至关重要,它确保了数据交换的准确性,直接影响前端资源加载、API数据交互的可靠性。在安全领域,MIME类型是防御恶意文件上传的第一道防线,开发者必须理解其与文件扩展名、文件魔数的优先级关系。本文以PHP文件上传场景为例,

462

Java 中的魔数

魔数用于标识文件的格式,java的Class文件的魔数为CAFEBABE

gao_zhennan的博客 2666

Web安全实战:绕过Content-Type校验上传Web Shell的原理与防御

文件上传是Web应用中的常见功能,也是安全防护的关键环节。其核心原理涉及HTTP协议的多部分表单数据格式,服务器通过解析请求中的Content-Type等字段来识别和处理文件。在安全层面,仅依赖客户端提供的数据进行校验存在根本性缺陷,因为HTTP请求在传输过程中可被拦截篡改。这种漏洞的技术价值在于揭示了“客户端不可信”这一基础安全原则,攻击者通过修改Content-Type头部即可绕过服务端的简单类型检查。在实际应用场景中,文件上传功能广泛存在于社交网络、电商平台、内容管理系统等需要用户提交图片、文档的场景

weixin_33884611的博客 439

文件格式的唯一标识-魔数

魔法数是文件的前几位,它唯一地标识了文件的类型。这使得编程更容易,因为不需要搜索复杂的文件结构来识别文件类型。例如,jpeg文件以ffd8 ffe0 0010 4a46 4946 0001 0101 0047......JFIF........G开头,ffd8表示它是JPEG文件,ffe0标识JFIF类型结构。有一个ascii编码“JFIF”,它在长度代码之后出现,但这不是识别文件所必需的。前4个字节唯一地做到这一点。这给出了一个正在进行的文件类型魔法数列表。

weixin_43837016的博客 2118

文件上传漏洞防御:从白名单到纵深防御的Web安全实践

文件上传是Web应用中的常见功能,其安全漏洞源于对用户输入数据的过度信任。攻击者通过伪造文件名、MIME类型或利用服务器解析特性,可上传恶意脚本获取服务器控制权。防御的核心在于建立“默认拒绝”的白名单机制,对文件扩展名、MIME类型、文件头魔数和内容渲染进行四重校验。结合存储路径隔离、随机化命名、服务器安全配置(如关闭cgi.fix_pathinfo)和访问控制代理,构建纵深防御体系。本文通过实际案例和PHP代码示例,深入剖析了文件上传漏洞的成因与防御策略,为开发者提供从基础校验到高级对抗的完整解决方案。

weixin_34241036的博客 574

Python文件扩展名提取的正确姿势:pathlib与os.path深度解析

文件扩展名是操作系统识别文件类型的关键语义标识,其提取并非简单的字符串分割,而是涉及POSIX/Windows路径规范、多级扩展名(如.tar.gz)、隐藏文件(.gitignore)及编码安全等底层原理。正确理解suffix、stem、suffixes等概念,能避免因split('.')导致的生产事故。技术价值在于提升路径处理的健壮性与跨平台兼容性,广泛应用于用户上传文件解析、静态资源路由、配置加载和安全策略校验等场景。本文聚焦Python中pathlib.Path.suffix与os.path.spli

weixin_34253126的博客 385

各个文件类型的魔数

”或“

qq_42699326的博客 2136

Web应用文件上传漏洞剖析:从原理到防御的实战指南

文件上传功能是Web应用与用户交互的常见方式,其核心原理是允许客户端将文件数据通过HTTP协议传输至服务器端进行存储和处理。然而,如果服务器端对上传文件失去了有效控制,就会引发严重的安全风险,即任意文件上传漏洞。该漏洞的技术价值在于,它直接威胁到服务器的完整性和机密性,攻击者可能借此上传恶意脚本(如Webshell),从而获得远程代码执行能力,进而控制整个服务器。典型的应用场景广泛存在于各类内容管理系统、社交平台、电商系统等需要用户上传头像、附件或图片的Web应用中。本文以一次典型的文件上传漏洞深度剖析为例

diejiankuai3444的博客 308

文件类型识别----魔数

魔数简介: 在识别文件类型时,我们很多人都是通过文件的后缀来识别的,如苍老师.mp4, 波老师.avi, 玛利亚.jpg。 使用后缀名识别文件类型不是特别准确,尤其是后缀民可以手动修改的情况下。 另外一种识别文件名的方式是: 利用文件的头部信息中的标记,我们称这个标记为魔数。也许这个解析不是特准确,但它对识别文件类型比较准确。 常见文件类型魔数表: 类别 文件类型 Magic数 起始偏移 结束偏移 .

乐活青年的博客 5594

别再为Power BI瀑布图发愁了!用这个DAX公式+堆积柱状图,5分钟搞定现金流量表可视化

本文介绍了一种使用DAX公式和堆积柱状图快速实现Power BI现金流量表可视化的高效方法。通过详细的步骤和代码示例,帮助财务分析人员5分钟内完成专业级报表制作,解决传统瀑布图配置复杂、灵活性差的问题,显著提升工作效率。

weixin_28677005的博客 247

doris2.1.8连接报错ERROR 1203 (42000): Reach limit of connections解决办法

摘要:客户Doris数据库报错"ERROR 1203 (42000): Reach limit of connections"的解决过程。发现AI提供的解决方案存在错误:1)查询命令应为SHOW FRONTEND CONFIG而非show variables;2)参数名称应为qe_max_connection而非max_connections。正确解决步骤:1)用admin账户登录查看连接数限制和当前连接数;2)通过SHOW PROPERTY命令检查用户资源限制;3)针对不同情况修改参数

Brent的专栏 1762

文件格式的魔数

文件格式Magic Number文件头格式标准魔数-magic number和mime.types

u011743621的博客 298

【嵌入式原理系列-第七篇】ld脚本实战:从零构建MCU内存布局

本文是一篇针对嵌入式开发者的实战指南,详细讲解了如何从零开始为MCU编写ld链接器脚本以构建自定义内存布局。文章以STM32F103C8T6为例,深入剖析了MEMORY和SECTIONS指令的用法,并提供了OTA分区、非易失数据存储等高级定制案例,帮助开发者解决实际工程中的Flash与RAM管理难题,实现对程序运行的深度掌控。

weixin_29271263的博客 249

Linux file命令实战:用魔数和MIME识别文件真实类型

在Linux系统中,文件类型并非由扩展名决定,而是由文件内容的特征字节(即魔数)决定。通过file命令,可以不依赖扩展名快速识别文件的真实格式,无论是被伪装成图片的可执行文件,还是无扩展名的日志数据,都能在几秒内得到可靠判断。file命令基于内置的magic数据库,读取文件头部字节并输出类型信息,结合MIME类型参数可输出标准化结果,便于脚本自动化处理。该工具在运维排查、批量文件审计、下载文件校验等场景中非常实用。掌握file命令的常用参数与工程实践方式,是提升Linux文件管理效率的关键一步。本文从原理到

weixin_34112181的博客 359

Weaxor勒索病毒实战分析:从加密算法到防御策略(附检测工具清单)

本文对Weaxor勒索病毒进行了深度实战剖析,详细拆解了其采用ChaCha20与AES-CTR的混合加密算法、横向移动手法及数据回传行为。文章重点分析了其密钥生成机制的“漏洞修复”,并提供了从主机加固、网络监控到基于IOC威胁狩猎的立体化企业级防御策略与检测工具清单。

weixin_29233333的博客 263

Elsevier投稿实战:从ESWA模板到录用通知的全流程拆解

本文详细拆解了Elsevier旗下期刊ESWA(Expert Systems With Applications)的投稿全流程,从模板选择、投稿系统操作到审稿意见回复和录用后注意事项。重点分享了单栏LaTeX模板调整、APA文献格式处理、Highlights撰写技巧等实战经验,帮助研究者高效完成投稿并提升录用概率。

weixin_32715349的博客 241

mimetype 源码级解析:基于 magic number 的 Go MIME 类型检测库

> **导读**:本文以 fn 仓库中 vendor 的 Go 第三方库 `github.com/gabriel-vasile/mimetype`(v1.4.12,见 [go.mod](https://link.gitcode.com/i/8d306580016b9f8bd52bff4e38b9da59) 中的 indirect 依赖声明与 [vendor/modules.txt](https:/

gitblog_00243的博客 262

浙政钉H5应用上架实战:从环境配置到发布避坑指南

本文详细解析浙政钉H5应用上架全流程,从环境配置到发布避坑指南。重点介绍Vue 2.6 + Node 14.21.3的稳定开发环境搭建、项目结构规范及常见报错解决方案,帮助开发者高效完成浙政钉H5应用上架流程。

weixin_27943395的博客 286

从零构建文件头识别库:原理、实现与Python实战

在计算机系统中,文件类型识别是数据处理的基础环节,其核心原理在于解析文件起始位置的特定字节序列,即文件头或魔数。这项技术通过分析二进制签名,为系统提供可靠的文件格式判断依据,弥补了仅依赖易篡改的文件扩展名的不足。在工程实践中,构建一个高效的文件头数据库涉及数据结构设计、匹配算法优化及异常处理,能显著提升数据恢复、安全分析和自动化工作流的准确性。本文以Python实现为例,深入探讨了如何采集验证文件头数据、设计可扩展的存储结构,并规避字节序冲突等常见陷阱,为开发健壮的文件识别工具提供完整解决方案。

weixin_34183910的博客 437

【CAN总线测试】——通讯相关诊断测试

本章主要介绍通讯相关诊断测试用例设计

LOVE135149的博客 1815

【AI Agent系列】【阿里AgentScope框架】深入源码:Msg是如何转变成模型需要的Prompt形式的?多模态Prompt如何构建?

前面咱们学习AgentScope,在使用Agent来对话时,输入为一个 Msg 对象,不能是字符串,然后在Agent内部,会将Msg对象转换为模型接受的Prompt。那 AgentScope 如何根据 Msg 形成相应模型接收的Prompt结构的?如何使用 Msg 带入更多的参数,传递给大模型呢?

同学小张的博客 1535

Java文件上传安全:魔数校验原理、实战与纵深防御体系

文件类型校验是Web应用安全的基础环节,其核心原理在于准确识别文件的真实格式。传统依赖文件后缀名的方法存在严重安全隐患,因为后缀名易于伪造。更可靠的技术是通过分析文件内容的二进制结构,即读取文件开头的特定字节序列(称为“魔数”或“文件签名”)来判断类型。这种方法基于文件格式规范,能有效防止用户通过修改文件名绕过检查,为系统提供了一层坚实的内容安全屏障。在Java工程实践中,结合Spring Boot框架,开发者可以高效实现魔数校验逻辑,并与后缀名白名单、文件内容深度解析(如使用Apache Tika)等技术

weixin_33835103的博客 385

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

h2non/filetype入门指南:如何用Go快速检测文件类型的终极教程

filetype 是一个快速、零依赖的 Go 包,只需读取文件开头的"魔数"(magic number)签名,就能准确推断出文件的真实类型,并返回扩展名和标准 MIME 类型。它不依赖 C 库、不解析整个文件,检测一次仅需约 1 微秒,是 Go 开发者做文件类型识别、上传校验、内容审计的首选方案。 [![filetype Go文件类型检测示例图片](https://gitcode.com/gh_

gitblog_00377的博客 750

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

new Blob() 的 type 参数:MIME 类型填错导致文件打不开的真相

MIME 类型是 Web 与操作系统间识别文件格式的通用语言,它决定浏览器如何处理数据、系统用哪个程序打开文件、以及应用能否正确解析内容。其本质是 type/subtype 结构(如 text/csv、application/pdf),需严格匹配标准规范(IANA/RFC)、浏览器解析逻辑和目标软件注册类型。前端使用 new Blob() 时,type 不仅影响下载行为,更直接关联中文编码(charset=utf-8)、二进制完整性(禁用 charset)、专业格式兼容性(如 OFD、DICOM、SHP)等

weixin_34082789的博客 328

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

h2non/filetype在生产环境的应用:构建高效文件上传系统的7个最佳实践

h2non/filetype 是一个**快速、零依赖的 Go 文件类型识别**包,通过读取文件头部的**魔数(Magic Number)签名**,在纳秒级时间内推断出文件的真实类型与 MIME。对于文件上传系统来说,它是防止"伪装扩展名"攻击、保障内容安全的关键组件。本文将分享 7 个在生产环境落地 filetype 的最佳实践,帮你构建又快又稳的上传服务。 [![文件类型识别测试用的JPEG样

gitblog_00263的博客 458

Java文件解析实战:Excel/DOCX/PDF/TXT四类格式分层治理

文件解析是企业级数据集成的核心基础能力,涉及字节流识别、编码处理、内存模型与格式语义等底层原理。理解Magic Number检测机制、Office Open XML容器结构、PDF文本抽取坐标排序逻辑及混合编码渐进式探测方法,是构建高可用解析服务的前提。本文聚焦Java生态(JDK 11+),深入拆解Excel的SAX内存优化、docx的OPC关系映射、PDF的双引擎协同(PDFBox+Tesseract)以及txt的BOM与分段编码自救策略,覆盖生产环境中OutOfMemoryError、InvalidF

weixin_32308101的博客 185
上一篇: linux宝塔安装mysql8.0,使用Navicat连接数据库失败解决
GK_hello
博客等级 码龄8年 6粉丝 18原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值