WordPerfect text and graphics file

application/vnd.wordperfect

Safe

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

WordPerfect Document (WPD) is a proprietary word processing format created by Satellite Software International and currently maintained by Corel Corporation. This legacy format was historically the primary tool for document creation in legal and government environments due to its specific formatting and layout controls. Although widely replaced by XML-based standards, WPD files remain safe for archival use and lack the complex macro-execution vulnerabilities typically found in many contemporary word processing formats.

Extension

.wpd

MIME Type

application/vnd.wordperfect

Byte Offset

0

Risk Level

Safe

Validation Code

How to validate .wpd files in Python

Python
def is_wpd(file_path: str) -> bool:
    """Check if file is a valid WPD 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 .wpd files in Node.js

Node.js
function isWPD(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 IsWPD(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/wpd
curl https://filesignature.org/api/v1/wpd

Related Formats