WordPerfect text and graphics file
application/vnd.wordperfect
Magic Bytes
Offset: 0
61 70 70 6C 69 63 61 74 69 6F 6E 2F 76 6E 64 2E 77 6F 72 64 70 65 72 66 65 63 74 3B
The WordPerfect text and graphics format (WP6) is a proprietary document standard originally developed by WordPerfect Corporation and later maintained by Corel. It enables the creation of rich text documents containing sophisticated layouts, mathematical equations, and integrated raster imagery for professional office environments. Now considered a legacy format, it is primarily encountered in digital forensics or during the migration of historical legal archives to contemporary file systems.
Validation Code
How to validate .wp6 files in Python
Python
def is_wp6(file_path: str) -> bool:
"""Check if file is a valid WP6 by magic bytes."""
signature = bytes([0x61, 0x70, 0x70, 0x6C, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x2F, 0x76, 0x6E, 0x64, 0x2E, 0x77, 0x6F, 0x72, 0x64, 0x70, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74, 0x3B])
with open(file_path, "rb") as f:
return f.read(28) == signature
How to validate .wp6 files in Node.js
Node.js
function isWP6(buffer: Buffer): boolean {
const signature = Buffer.from([0x61, 0x70, 0x70, 0x6C, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x2F, 0x76, 0x6E, 0x64, 0x2E, 0x77, 0x6F, 0x72, 0x64, 0x70, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74, 0x3B]);
return buffer.subarray(0, 28).equals(signature);
}
Go
func IsWP6(data []byte) bool {
signature := []byte{0x61, 0x70, 0x70, 0x6C, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x2F, 0x76, 0x6E, 0x64, 0x2E, 0x77, 0x6F, 0x72, 0x64, 0x70, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74, 0x3B}
if len(data) < 28 {
return false
}
return bytes.Equal(data[:28], signature)
}
API Endpoint
GET
/api/v1/wp6
curl https://filesignature.org/api/v1/wp6