Show HN: "Have I Been Pwned” with homomorphic encryption
passwords.blyss.dev
passwords.blyss.dev
Why return a full row? Wouldn't that leak the hashes of an entire row to every client? Why not set the encrypted query to return just if the password is there or not?
Yeah, we do return the full row. It does leak the hashes, but these are already public (you can directly download them from the Have I Been Pwned website).
Under the hood, we don’t actually send the full hashes back; we can get away with just sending back fewer bits (enough to minimize the chance of a false positive).