Or you could use a privacy-preserving lookup API, but that might be too much traffic. A Bloom filter could be downloaded locally and is probably a better solution.
Bloom filter as first pass and then privacy-preserving lookup API if it returns "probably a match"?
If it returns "probably a match", you can just look up with HN directly, like it does now.