Tools · Files
The file hash is computed in your browser and only 64 characters leave. A hit means confirmed malware; without one, we say what to weigh before you open it.
Pick a file you do not trust. The browser computes a SHA-256 hash of it — a short string that identifies the file uniquely but from which its contents cannot be reassembled. Only that hash goes to the server, and we use it to query databases of known malware.
The file stays with you. It is not uploaded to us or anywhere else; the whole computation runs in the browser and 64 hex characters go out. The rest of the page traffic behaves as it does everywhere else on the web — we host the font ourselves and, once cookies are accepted, we send our own traffic measurement. The details are in the privacy policy.
How it works
A SHA-256 hash is an open one-way function: it turns a file into 64 characters, but those 64 characters cannot be turned back into the contents of the file. That is why it can be sent to places you would never send the file itself.
The browser reads it in blocks straight from the disk. It is not uploaded anywhere and is never held in memory as a whole, so even a large file can be processed.
SHA-256 is computed progressively from the individual blocks. The correctness of the computation is verified against known test values when the page loads.
Only the hash goes to our server. From there it is sent to the databases of known malware — your IP address never reaches them, because we do the asking, not your browser.
A database either knows such a sample or it does not. You get no score and no probability — which is why the answer is a pointer, and we add to it what else to weigh about the file.
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
The example is the hash of an empty file — a constant from public examples, not your file. A hash can be compared against a list of known samples, but it cannot be turned back into the contents of a file.
The query to the database is sent by our server, not by your browser. The database operator therefore sees only our server and the hash — not who was asking. The hash is cached with us for a few hours so that a repeated query does not needlessly load a third-party service; we store nothing else about the check.
This is useful for large files and anywhere you would rather not let a file near the browser. The result is the same string — paste it into the second field of the form.
Upper and lower case in the hash make no difference, the tool normalises them itself.
More tools
When it gets more serious
A hash check answers one thing, and only at one moment in time. Whether anyone else received the same attachment, which way the route inside led and what happened afterwards is something only a review of the environment will show. We can help with that.