{"id":"image-vnd-blockfact-facti","mimeType":"image/vnd.blockfact.facti","name":"BlockFact Image","shortName":"FACTI","category":"Metafiles \u0026 AI Provenance","extensions":[".facti"],"description":"The image/vnd.blockfact.facti MIME type represents the BlockFact image format, a cryptographic media container designed to guarantee the authenticity of digital photography. It encapsulates standard image payloads alongside zero-knowledge proofs (Groth16), invisible watermarking, and Poseidon hashes registered on the StarkNet blockchain. This creates an immutable chain of custody, enabling journalists, creators, and legal professionals to definitively prove when, where, and by whom a photo was captured, while combating AI-generated deepfakes.","seo":{"title":"image/vnd.blockfact.facti MIME Type | Developer Reference for BlockFact","description":"Complete reference for the image/vnd.blockfact.facti MIME type: BlockFact image containers, blockchain provenance, zero-knowledge proofs, and deepfake prevention.","faqs":[{"question":"What is a .facti file?","answer":"A .facti file is a specialized image container created by the BlockFact platform. It holds the original image data, an invisible watermark, and cryptographic proofs that are registered on the StarkNet blockchain to verify the photo's authenticity [1.1.1]."},{"question":"Does BlockFact upload my photos to the blockchain?","answer":"No. By design, your photos never leave your device. The BlockFact app generates a mathematical zero-knowledge proof and a cryptographic hash locally, and only this tiny proof is registered on the blockchain."},{"question":"Can web browsers open .facti files?","answer":"No modern web browsers natively support rendering .facti files. Viewing the image and verifying its blockchain provenance requires the BlockFact web viewer, their mobile app, or integrating their official React Native SDK."}]},"index":{"compression":["Container (Inherits payload compression, e.g., JPEG/PNG)"],"browserSupport":{"score":1,"label":"None"},"commonUses":["Journalism and Media Authentication","Legal and Insurance Evidence","AI Deepfake Prevention","Content Provenance and Authorship"]},"technical":{"magicBytes":{"hex":"Unknown (Proprietary Container)","ascii":"Unknown"},"container":"BlockFact Authenticated Container","compressionAlgorithm":["None (Pass-through to embedded payload)"],"colorDepth":["Inherited from payload"],"transparency":true,"animation":false,"metadata":{"exif":true,"xmp":true,"iccProfile":true},"alphaChannel":true,"progressiveLoading":false,"hdrSupport":true},"history":{"developer":"BlockFact","released":"2025","specification":"BlockFact Developer SDK"},"browserSupport":{"chrome":false,"chromeVersion":"None","firefox":false,"firefoxVersion":"None","safari":false,"safariVersion":"None","edge":false,"edgeVersion":"None","internetExplorer":false},"softwareSupport":[{"name":"BlockFact iOS \u0026 Android App","logo":""},{"name":"BlockFact Web Viewer","logo":""},{"name":"BlockFact React Native SDK","logo":""}],"conversion":{"convertTo":["jpeg","png","webp"],"convertFrom":[]},"developer":{"httpHeaders":[{"header":"Content-Type","value":"image/vnd.blockfact.facti"}],"htmlAccept":"image/vnd.blockfact.facti, .facti","fileDetection":["Due to its novelty, standard magic file databases do not recognize .facti files natively.","Verification and extraction of the payload should be handled using the official @blockfact/react-native-facti-pro SDK."]},"prosCons":{"pros":["Provides undeniable, mathematically verifiable proof of a photo's origin (time, location, and device) via the StarkNet blockchain [1.3.1]","Privacy-first design utilizes zero-knowledge proofs (Groth16), meaning the actual image is never uploaded to a central server or blockchain","Invisible watermarking ensures that even if the image is screenshotted or cropped, tampering can be detected"],"cons":["Lacks native rendering support in web browsers and standard image viewers, requiring specialized software to view","Requires blockchain registration at the moment of capture, making it incompatible with existing legacy photos","The proprietary nature of the container limits integration to environments supporting the BlockFact SDK"]},"specifications":{"url":"https://www.blockfact.io/","rfc":"","mimeAliases":[]},"developerSnippets":{"python":"import magic\n# Libmagic will likely fail to identify the FACTI container and fall back to 'application/octet-stream'\nprint(magic.from_file('evidence.facti', mime=True))","nodejs":"// Integration requires the official SDK for React Native\n// import { FactiVerifier } from '@blockfact/react-native-facti-pro';\n// const result = await FactiVerifier.verify('evidence.facti');\n// console.log(result.isValid);","go":"import \"net/http\"\n// The standard net/http library cannot detect FACTI files internally. You must rely on string matching the .facti extension.","php":"$mime = mime_content_type('evidence.facti');\necho $mime; // Standard server environments will map this to application/octet-stream"},"relatedFormats":["jpeg","png","aimg"]}
