Why CDN assets aren’t encrypted
A browser has to be able to fetch and render the asset directly (<img src>, a stylesheet, etc.), which means the bytes need to be readable on request. Client-side encryption, which is what makes Secure File Sharing zero-knowledge, is incompatible with that. See How Encryption Works for the full comparison.
Metadata stripping
On upload, images are re-encoded and their EXIF, GPS, and camera metadata is stripped, so a public photo doesn’t leak the location or device it was taken on. The visible image content itself is of course still public, that’s the point of a CDN asset.Uploading and swapping
Upload an asset from your dashboard, or via the Developer API. Assets get a permanent public URL (r2.hypastack.com/...).
You can also swap an asset in place, replacing its bytes while keeping the same id and public URL. Anything already linking to that URL picks up the new version automatically. This is useful for things like a logo that needs updating without breaking every page that references it.
