AOL personal file cabinet
application/octet-stream
Magic Bytes
Offset: 0
41 56 47 36 5F 49 6E 74 65 67 72 69 74 79 5F 44 61 74 61 62 61 73 65
The AOL Personal Filing Cabinet (PFC) is a proprietary data storage format developed by AOL for managing local user information and communication history. This legacy format was primarily utilized by the AOL desktop application to store offline copies of emails, contact lists, newsgroup messages, and web favorites. As an obsolete format, specialized software is often required for data recovery, and users should treat these files with caution as they typically contain sensitive personal data.
Validation Code
How to validate .pfc files in Python
Python
def is_pfc(file_path: str) -> bool:
"""Check if file is a valid PFC by magic bytes."""
signature = bytes([0x41, 0x56, 0x47, 0x36, 0x5F, 0x49, 0x6E, 0x74, 0x65, 0x67, 0x72, 0x69, 0x74, 0x79, 0x5F, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65])
with open(file_path, "rb") as f:
return f.read(23) == signature
How to validate .pfc files in Node.js
Node.js
function isPFC(buffer: Buffer): boolean {
const signature = Buffer.from([0x41, 0x56, 0x47, 0x36, 0x5F, 0x49, 0x6E, 0x74, 0x65, 0x67, 0x72, 0x69, 0x74, 0x79, 0x5F, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65]);
return buffer.subarray(0, 23).equals(signature);
}
Go
func IsPFC(data []byte) bool {
signature := []byte{0x41, 0x56, 0x47, 0x36, 0x5F, 0x49, 0x6E, 0x74, 0x65, 0x67, 0x72, 0x69, 0x74, 0x79, 0x5F, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65}
if len(data) < 23 {
return false
}
return bytes.Equal(data[:23], signature)
}
API Endpoint
GET
/api/v1/pfc
curl https://filesignature.org/api/v1/pfc