TermChamp

Security

Last updated 4 October 2026
No system is secure, and nobody honest will tell you otherwise. What follows is what TermChamp actually does, so you can judge for yourself what to put in it.

Signing in

Sign in with a one-time code emailed to your school address, or with a password you set. A password is stored only as a hash by the authentication service; nobody can read it, us included. Sessions are held in your browser and refresh in the background; signing out clears them.

How your data is separated

Every table uses database-level row policies, so who can read a row is decided by the database rather than by the app asking nicely. Friend access is checked against an accepted friendship each time, not cached and trusted.

Messages work the same way and one step further: reading a conversation requires a membership row, and that check runs inside the database on every query. A conversation you are not in does not return a filtered version — it returns nothing.

Review anonymity, and what changed

Until 28 August 2026, the author id on a review was readable by any signed-in student. Review text was always meant to be public and the author never was, so this page and the Privacy page were both making a promise the database did not keep. It is closed: reviews are now served from a view that has no author column, and the table underneath is readable only by the person who wrote the row. That is a stronger guarantee than a rule about who may look, because there is no longer anything to look at.

The per-review “show my friends I wrote this” switch was added at the same time and not before, because offering that choice on top of the old behaviour would have been offering a choice that had already been made for people.

What we do not do

Honest limits

Found a problem?

Please report it rather than testing how far it goes. Email support@termchamp.com with what you found and how to reproduce it. Reports made in good faith are welcome, and you won’t be pursued for reporting one. Please don’t access, change or keep other students’ data while investigating.

If something goes wrong

If student data is exposed, affected people will be emailed at the address on their account, with what happened and what to do, as soon as the facts are established.