Trust
Security is the default, not a tier.
Encryption, careful engineering, and a small attack surface. There is no premium plan that unlocks safety and no free plan that skimps on it. Here is how we protect your account and your conversations, in plain language, including the trade-offs.
The security model at a glance.
Six commitments that hold everywhere on the platform, for every account, on every plan.
Private DMs
Direct messages are private: in the app, only the people in the conversation see them, and our staff do not read private conversations. Private conversations stay between the people in them.
Encrypted in transit
Every connection runs over TLS with strict transport security. There is no unencrypted mode to fall back to, no plain-HTTP endpoint, no exceptions for old clients.
Accounts, hardened
Passwords are stored as modern salted hashes, sensitive actions require your password again, and one action signs you out of every session on every device.
Small attack surface
The platform is hand-written with a deliberately small set of dependencies. The code we did not add cannot be exploited, and the library we never imported cannot leak.
Tested backups
Backups run automatically, and restores are tested rather than assumed. A backup you have never restored is a hope, not a plan, so we rehearse the recovery, not just the copy.
Open disclosure
No system is perfect, including ours. We run an open vulnerability disclosure process and answer security reports personally, not with an autoresponder.
Encryption, layer by layer.
Different conversations need different guarantees. Here is exactly what is encrypted, where, and why.
In transit: everything, always
Every request between your browser and our servers travels over TLS. Strict transport security tells your browser to refuse plain connections entirely, so even a mistyped address or a hostile network cannot downgrade you to an unencrypted session. There is no legacy port, no debug endpoint, and no unencrypted mode to fall back to. If a connection cannot be encrypted, it does not happen.
Direct messages: private
DMs are private. In the app, only the people in the conversation see them, and as a matter of policy our staff do not read private conversations. Like every connection on the platform, DMs travel over TLS, so nobody in between is reading along. You can read more about how this works on the private DMs page.
Community channels: encrypted in transit, moderated by design
Community channels are visible to their community and its moderators, and that is a deliberate, honest choice rather than a gap. A public space needs moderation: server owners and their moderators must be able to see what is posted in their channels to remove abuse, enforce their rules, and keep the space safe for everyone in it. Hiding channel content from the people who moderate it would not make a room of hundreds private in any meaningful sense anyway, since every member already holds the content. So channels get TLS in transit and moderation tools on top, while private one-to-one conversations live in DMs, where they belong. The privacy page covers this split in more depth, and the moderation tools page shows what owners can do with it.
What this means for you
The rule of thumb is simple. If you would say it on a stage, say it in a channel. If you would say it behind a closed door, say it in a DM. The platform is engineered so the closed door is real: we never read private conversations, we never sell data, and we never show ads, so there is no business reason for us to want your content in the first place.
Two kinds of conversation, two sets of guarantees.
The same platform, side by side: what holds in a public channel, and what holds in a DM.
Ownership guarantees apply across both: see account ownership for the full picture of what stays yours and when.
Lock down your account in four steps.
We handle the server side. These are the habits that close the remaining gaps on yours.
Use a strong, unique password
Your password is stored as a modern salted hash, so a database leak on our side does not hand it to an attacker. But no hashing helps if you reuse the same password on a site that stores it badly. Use a password manager, generate something long and random, and never reuse it anywhere else.
Treat your password like a key, not a fact
We will never ask for your password in a DM, an email, or a support conversation. Nobody legitimate will. If anyone claiming to be staff asks for it, they are not staff. The only place you should ever type it is the sign-in screen and the confirmation prompts for sensitive actions inside your own settings.
If something feels off, sign out everywhere
One action in your settings signs you out of every session on every device, instantly. Shared a computer at a library, lost a phone, or just have a bad feeling? Use it, then change your password. Every open session dies at once, and only someone holding the new password gets back in.
Report anything suspicious
A page behaving strangely, a link that looks like ours but is not, an email you did not expect: tell us at security@vronify.chat. A report that turns out to be nothing costs us a few minutes. A report nobody sent costs someone their account.
The numbers behind the posture.
Security claims are cheap. These are the ones we are willing to be measured against.
Drawn in ink, not pencil.
What we do for your security, and the lines we will not cross to make anything easier.
What we do
- Encrypt every connection with TLS, with no unencrypted fallback
- Store passwords only as modern salted hashes
- Require your password again before sensitive actions
- Enforce strict content security policies on every page
- Back up automatically and test restores, not just copies
- Answer every security report personally
What we never do
- Read your private conversations
- Sell your data, to anyone, for any reason
- Show ads or let trackers ride along with your session
- Hold your data hostage: export your data or delete your account any time
- Ask for your password outside the sign-in and confirmation prompts
- Gate a security feature behind a paid tier
Small surface, few dependencies.
The code we did not add cannot be exploited.
Most platforms are assembled: a framework here, a template there, dozens of packages underneath, each one written by someone else and each one a potential way in. Vronify.chat is hand-written, from 0 to over 125.000 lines of code, with no template or white-label product underneath. That is not a bragging point for its own sake; it is a security property. When you write the code yourself, you know what every line does, and when a vulnerability is announced in some popular library, the answer to "are we affected?" is usually "we never imported it."
The platform is built with a deliberately small set of dependencies, strict content security policies, and defaults that assume the worst. A content security policy tells your browser exactly which sources of scripts and content to trust and to refuse everything else, which blunts entire classes of injection attacks even if a bug slips through. Hardened defaults mean features ship locked down and get opened up deliberately, never the other way around.
It also runs on hardware we own and tune ourselves, not a rented sliver of someone else's cloud. That keeps the trust chain short: fewer companies with physical or administrative access to the machines that hold your data means fewer places for something to go wrong that we cannot see. It is the same choice that keeps message delivery under 40ms median in Europe: control the whole stack, and both speed and security stop depending on third parties.
Backups are automatic, and restores are tested rather than assumed. Availability is part of security too: 99.9% uptime across the last 12 months means the platform is there when you need it, and the tested restore path means that even in the worst case, your community comes back. You can read more about the team and how we work on the about page.
Found something? Tell us.
An open disclosure process, answered by the people who wrote the code.
No system is perfect, which is why we run an open vulnerability disclosure process and answer security reports personally at security@vronify.chat. Reports do not go into a ticket queue or an outsourced triage service; they go to the small team in the Netherlands that built the platform and can actually fix what you found.
What to report
Anything that lets someone read data they should not read, act as a user they are not, escalate permissions inside a server, bypass the encryption guarantees described on this page, or take the platform down. If you are unsure whether something qualifies, report it anyway; we would much rather read ten false alarms than miss one real issue.
How to write a useful report
Tell us what you found, the steps to reproduce it, and what you think the impact is. A short, clear reproduction beats a long theory. If you can, include the exact page or request involved and what you expected to happen versus what actually happened. Please do not access other people's data beyond the minimum needed to demonstrate the issue, do not degrade the service for others, and give us a reasonable window to fix the problem before talking about it publicly. The full ground rules, including what is in and out of scope, live on the vulnerability disclosure page.
What happens next
We read the report, reproduce it, and reply to you personally. Confirmed issues get fixed with the urgency their impact deserves, and because we own the whole stack, a fix does not wait on an upstream vendor or a framework release cycle. For questions about what data we hold in the first place, see the privacy policy; for how the platform behaves day to day, the system status page shows current operational state.
Questions about security.
Can Vronify read my direct messages?
As a matter of policy, no. DMs are private: in the app, only the people in the conversation see them, and our staff do not read private conversations. Connections are encrypted in transit with TLS as well. The private DMs page explains the details.
Why can moderators see community channels?
Because public spaces need moderation. Server owners and moderators must be able to see channel content to remove abuse and enforce their community's rules; hiding it from them would take that away without adding real privacy, since every member already sees the content anyway. Channels are still encrypted in transit over TLS. We think stating this trade-off plainly beats marketing that implies channel privacy that does not exist.
How are passwords stored?
As modern salted hashes, never in plain text and never in a reversible form. A hash is a one-way transformation: we can check that the password you typed is right, but we cannot recover the password itself, and neither can anyone who steals the database. The salt means two people with the same password still get different hashes, which defeats precomputed cracking tables. On top of that, sensitive account actions ask for your password again, so a briefly unattended session cannot be quietly turned into a stolen account.
What should I do if I think my account is compromised?
Two moves, in order. First, use the sign-out-everywhere action in your settings: one action ends every session on every device instantly, kicking out anyone who might be riding along. Second, change your password to something new and unique. If you saw anything that suggests a platform problem rather than a stolen password, also write to security@vronify.chat so we can look for a wider pattern.
What happens to my data if I am banned or I leave?
A ban only stops participation. You keep your account, every message you ever sent, and the DMs you received, unless the sender removed them. If you want out entirely, you can delete your account at any time, which anonymizes it: your name and profile are removed, and the messages you already sent stay in their conversations attributed to a deleted user. You can export your data any time. We never hold data hostage; security includes being safe from us. The account ownership page covers this in full.
Will the bot engine be able to read my messages?
The upcoming bot engine is built by us and runs on our infrastructure; there is no third-party bot code running inside servers and no external party your community's data flows to. It only acts inside servers where the owner switched it on, and it cannot read DMs, which stay private. It is not live yet; this page will stay accurate when it ships.
Do the upcoming mobile and desktop apps change any of this?
No. The browser version is available now with nothing to install, and the mobile app for iOS and Android and the desktop app for Windows, macOS, and Linux are coming soon. They will connect to the same platform under the same guarantees: TLS everywhere, private DMs, and the same hardened account model. Security is a property of the platform, not of one client.
Is any of this behind a paid plan?
No. Everything on this page applies to every account. Core features are free forever, optional extras for power users may come later, and there are no surprise paywalls, but encryption, hardened accounts, and session control will never be among the extras. If safety were a tier, the people who most need it would be the least likely to have it.
Your community. Your rules. Your data.
Create a server, invite your people, and see what chat feels like when your account actually belongs to you.
Free to start. Live in under a minute. No install required.