Skip to content

Lotus 1-2-3 spreadsheet (.wk1)

.wk1 file signature | application/vnd.lotus-1-2-3;version=2

Lotus 1-2-3 spreadsheet (v1) file

Safe

Magic Bytes

Offset 0
00 00 02 00 06 04 06 00 08 00 00 00 00 00

Sources: Wikipedia, Gary Kessler

All Known Signatures

2 signature variants are documented for .wk1 files across multiple sources.

Hex Signature Offset Sources
00 00 02 00 06 04 06 00 08 00 00 00 00 00 0 Wikipedia, Gary Kessler
00 00 02 00 06 04 06 00 08 00 0 Apache Tika

Extension

.wk1

MIME Type

application/vnd.lotus-1-2-3;version=2

Byte Offset

0

Risk Level

Safe

Validation Code

How to validate .wk1 files in Python

Python
def is_wk1(file_path: str) -> bool:
    """Check if file is a valid WK1 by magic bytes."""
    signature = bytes([0x00, 0x00, 0x02, 0x00, 0x06, 0x04, 0x06, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00])
    with open(file_path, "rb") as f:
        return f.read(14) == signature

How to validate .wk1 files in Node.js

Node.js
function isWK1(buffer: Buffer): boolean {
  const signature = Buffer.from([0x00, 0x00, 0x02, 0x00, 0x06, 0x04, 0x06, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00]);
  return buffer.subarray(0, 14).equals(signature);
}

How to validate .wk1 files in Go

Go
func IsWK1(data []byte) bool {
    signature := []byte{0x00, 0x00, 0x02, 0x00, 0x06, 0x04, 0x06, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00}
    if len(data) < 14 {
        return false
    }
    return bytes.Equal(data[:14], signature)
}

API Endpoint

GET /api/v1/wk1
curl https://filesignature.org/api/v1/wk1

See the full API documentation for all endpoints and parameters.

Frequently Asked Questions

What is a .wk1 file?

A .wk1 file is a Lotus 1-2-3 spreadsheet file. Lotus 1-2-3 spreadsheet (v1) file

What are the magic bytes for .wk1 files?

The magic bytes for Lotus 1-2-3 spreadsheet files are 00 00 02 00 06 04 06 00 08 00 00 00 00 00 at byte offset 0. These bytes uniquely identify the file format regardless of the file extension.

How do I validate a .wk1 file?

To validate a .wk1 file, read the first bytes of the file and compare them against the known magic bytes (00 00 02 00 06 04 06 00 08 00 00 00 00 00) at offset 0. This is more reliable than checking the file extension alone, as extensions can be renamed.

What is the MIME type for .wk1 files?

The primary MIME type for .wk1 files is application/vnd.lotus-1-2-3;version=2.

Is it safe to open .wk1 files?

Lotus 1-2-3 spreadsheet (.wk1) files are generally safe to open. They are classified as low risk because they primarily contain data rather than executable code. However, always ensure files come from a trusted source.