Project Plainsight
What is Project Plainsight?
Project Plainsight is Washoe County’s public record of its own voter rolls.
It is a pilot program. We are starting with one daily copy of the voter registration data, and we will build from there.
The Registrar of Voters Office keeps the list of every registered voter in the county. That list changes every day. People move, people register, and people come off the list when the law requires it.
Project Plainsight puts that work in public view. Every day we save a copy of the data and post it here, free to read and free to download. No account, no request, no reason needed.
Each copy is locked with a hash the moment we save it, so no one can edit it later, not the public, and not us. Day over day, those copies form an immutable audit trail. You can study a single day, or line up many days and see exactly what changed.
Everyone works from the same records, so any finding can be traced back to the file it came from and checked against it.
We built it to be open without weakening the systems that run Washoe County’s elections.
How does Project Plainsight Work?
The State of Nevada runs the voter registration system our county works in. Once a day we pull a fresh copy of Washoe County’s data out of it, as a CSV file that opens in any spreadsheet.
The file is hashed the moment it is pulled, before anything else touches it.
What is a hash?
A hash is a 64-character code worked out from the contents of a file. Change anything inside that file, down to a single character, and the code changes with it.
So the hash stands in for the file itself. If the hash you calculate matches the hash we published, you have the same file we posted, unchanged.
That hash is stored with the file, and it appears in the Records table below, beside each download link.
Because the hash is taken at capture, it pins the file to that day. Change one character afterward and the hash no longer matches the one published here. The file you download is the file we captured, on the day we captured it, not a copy that was cleaned up later.
That binds us as much as anyone. We cannot swap a file or correct a number without the published hash falling out of step, in public, where you can see it. You do not have to take our word for it. How to Check a File You Downloaded walks through doing it yourself.
Records
Each row below is one file. Click Download to save it to your computer. Want to be sure your copy is the real one? See How to Check a File You Downloaded, right after the table.
| Date of Record |
Hash (SHA-256) |
Download |
| Loading records... |
How to Check a File You Downloaded
The table above holds public records from the Registrar of Voters. Each row is one file. Here is what the three columns mean:
- Date of Record: the day the file was made.
- Hash (SHA-256): the file’s fingerprint code. Use it to check your download.
- Download: click this link to save the file.
How to Hash a File
The code your computer gives you should match the code on this page. You work out the code yourself, on your own computer, with any tool you like. If your code is the same as the one in the Hash (SHA-256) column above, then your file is exactly the file our office posted. Nothing has been changed or broken along the way.
Here are the four steps. They work the same no matter which tool you pick.
- Download the file. In the Records table above, click Download on the row you want. Then note two things: where your browser saved the file, usually your
Downloads folder, and the exact name it was saved as.
- Pick a tool. See the short list below.
- Run the tool on the file you downloaded. It will give you a code that is 64 characters long.
- Compare the two codes. Your code and the code on this page should be the same. Big and small letters do not matter. Every other character must match.
Which tool should I pick?
- Windows computer → Option 1
- Mac, iPhone, or iPad → Option 2
- Linux, or any computer if you like a point-and-click program → Option 3
- Any computer, with nothing to install → Option 4. You type a short command instead of clicking.
All four give you the same code. Pick whichever one fits you.
Use your own file name
The commands in Option 4 use the name voter-records.csv as an example. No file on this page is really named that. You must swap in the real name of the file you downloaded, spelled just the way it looks on your computer, and keep the .csv at the end. If you use a name that is not there, the tool will show an error like “No such file or directory” or “cannot find the path specified” instead of giving you a code.
▶ Option 1: Hash Checker from the Microsoft Store (Windows only)
Hash Checker is a free app in the Microsoft Store. It comes from the Store, so you do not have to download anything from another website. You do not have to change any safety settings either. It works out the code on your own computer. The people who made it say it sends nothing over the internet. Washoe County did not make this app and does not run it, so only install it from the Microsoft Store page linked above.
You should not see this Windows message: “The app you’re trying to install isn’t a Microsoft-verified app.” It only shows up for programs from other websites, not for apps from the Store. If you do see it, here or with any other program, read the note in Option 3 below. You can also follow this step-by-step guide from Logos Bible Software, which shows how to clear it.
What you need: a computer with Windows 10 or Windows 11 and the Microsoft Store. On a Mac, iPhone, or iPad, use Option 2 instead. If your work or your school manages your computer, the Microsoft Store may be blocked. If it is, use Option 4, which uses tools Windows already has and installs nothing. Option 3 probably will not work on a managed computer either. It needs permission that those same rules usually block.
Step 1: Install Hash Checker
- Open the Hash Checker page in the Microsoft Store. You can also press the Windows key, open the Microsoft Store app, and search for
Hash Checker.
- Make sure it is the free app by Matt Cooley. Then click Get or Install.
Step 2: Get the code for your file
- Download the file from the table above. Note the folder your browser saved it in. It is usually Downloads.
- Open Hash Checker from the Start menu. When it asks you to choose a file, pick the file you just downloaded.
- Make sure SHA256 is the code type that is picked. The app can also make MD5, SHA-1, SHA-384, and SHA-512 codes, but only a SHA-256 code will match ours.
- Check that the file name in the app is the file you downloaded. If you check the wrong file, you will get a code that can never match.
Step 3: Compare the two codes
- Come back to this page. Find the row you downloaded from and copy the code in its Hash (SHA-256) column.
- Compare it to the code the app shows.
- Big and small letters do not matter, but every other character must be the same. If even one character is different, the file is not the one we posted.
Button names and screens can look a little different from one version of the app to the next. If a step does not look the way it is written here, look for the choice that does the same thing.
▶ Option 2: Hash Check Hub (Mac, iPhone, and iPad only)
Hash Check Hub is a free app in the Apple App Store. Since it comes from the App Store, it runs on a Mac without the extra safety permissions that downloaded tools sometimes need. It also lets you check a file right on an iPhone or iPad. It works out the code on your own device, it works without internet, and its App Store page says it collects no data. Washoe County did not make this app and does not run it, so only install it from the App Store page linked above.
What you need: a Mac with an Apple chip (M1 or newer) running macOS 13.5 or newer, or an iPhone or iPad running iOS or iPadOS 16.6 or newer. This app does not work on Windows, on Linux, or on older Macs with Intel chips. On those, use Option 1 for Windows, or Option 3 or Option 4 for any computer.
Step 1: Install Hash Check Hub
- Open the Hash Check Hub App Store page on your Mac, iPhone, or iPad. You can also open the App Store app and search for
Hash Check Hub.
- Make sure it is the free app by Sonitrol Of Sacramento LLC. Then tap or click Get to install it.
Step 2: Get the code for your file
- Download the file from the table above. On a Mac it usually goes to your Downloads folder. On an iPhone or iPad, Safari puts it in the Downloads folder inside the Files app.
- Open Hash Check Hub and add the file you downloaded. When it asks you to choose a file, go to the Downloads folder.
- Make sure SHA256 is the code type that is picked. The app can also make MD5 and SHA1 codes, but only a SHA-256 code will match ours.
- Check that the file name in the app is the file you downloaded. If you check the wrong file, you will get a code that can never match.
Step 3: Compare the two codes
- Find the row you downloaded from and copy the code in its Hash (SHA-256) column.
- Compare it to the code the app shows for your file.
- Big and small letters do not matter, but every other character must be the same. If even one character is different, the file is not the one we posted.
Button names and screens can look a little different from one version to the next, and between Mac, iPhone, and iPad. If a step does not look the way it is written here, look for the choice that does the same thing.
▶ Option 3: QuickHash GUI (Linux, and any other computer)
QuickHash GUI is a free, open-source program for Linux, Windows, and macOS. It is the point-and-click choice for Linux, and it works just as well on the other two. Washoe County did not make QuickHash and does not run it, so only download it from the official site linked above.
On a Mac? QuickHash does not come from the Mac App Store, so macOS may block it or ask you for extra safety permissions first. If you would rather skip that, use Hash Check Hub in Option 2, or the Terminal steps in Option 4.
On Windows? Windows may refuse to open the program. It may show this message: “The app you’re trying to install isn’t a Microsoft-verified app.” That means your computer is set to take apps from the Microsoft Store only. To change it, open Settings and go to Apps → Advanced app settings on Windows 11, or Apps → Apps & features on Windows 10. Then change Choose where to get apps from The Microsoft Store only to Anywhere. Logos Bible Software has a step-by-step guide to this fix at support.logos.com. It was written for their own program, but the message and the fix are the same no matter which program brought it up. Washoe County is not tied to Logos Bible Software and does not write that guide. If your computer runs Windows in S mode, or your work or school manages it, this setting may be locked and you will not be able to change it. If so, use Option 1 or Option 4 instead.
Step 1: Download and open QuickHash
- Go to quickhash-gui.org and open the Downloads page.
- Pick the version that matches your computer, whether that is Windows, macOS, or Linux, and download it.
- The QuickHash site posts its own SHA-256 code for each download. If you want to check QuickHash itself before you run it, use the commands in Option 4 below.
- Unzip the download into any folder you like. On Windows it runs straight from that folder and does not need to be installed. Just double-click the QuickHash program to open it. If Windows blocks it, read the note above.
Step 2: Get the code for your file
- With QuickHash open, click the File tab at the top of the window. That tab checks one file, which is what you want here. (The Text, FileS, and Compare Two Files tabs do other jobs.)
- In the list of code types on the left side of the window, pick SHA256. This part matters. QuickHash may start on a different type, and any other type gives a code that can never match ours.
- Click Select File and find the file you downloaded from the table above.
- QuickHash starts working right away. A big file can take a moment. A bar shows you that it is still working.
- When it is done, the 64-character code shows up in the results area, along with the file name, the file size, and the time. Check that the file name shown is the file you downloaded. QuickHash checks whatever file you picked, so the wrong file gives a code that can never match.
Step 3: Compare the two codes
- Come back to this page, find the row you downloaded from, and copy the code in the Hash (SHA-256) column. Be careful to copy it from the same row you downloaded from.
- If your version of QuickHash has an Expected Hash Value box on the File tab, paste our code into that box. QuickHash will then tell you straight out whether the two match.
- If it does not have that box, compare the codes yourself. You do not have to read all 64 characters. Paste both codes into a text editor, one on each line. If they match, they will line up perfectly.
- Big and small letters do not matter. QuickHash and this page may show the same code in different letter cases.
- A match means the file has not been changed since we posted it. Only an exact match counts. If even one character is different, the file is not the one we posted.
QuickHash also has a Compare Two Files tab. That is handy if you downloaded the same file twice, or on two computers, and want to be sure both copies are the same.
▶ Option 4: Tools your computer already has (Windows, macOS, Linux)
Every big computer system already comes with a SHA-256 tool built in. You do not have to download a thing. You just type a short command.
Before you start, there are two things you must swap out in every example below:
voter-records.csv is just a stand-in. Put in the real name of the file you downloaded, spelled just the way it looks on your computer, and keep the .csv at the end. Copying the example as-is will not work.
PASTE_PUBLISHED_HASH_HERE is also a stand-in. Put in the code this page shows for that same file, copied just as it appears.
A SHA-256 code is 64 characters long. It uses only the numbers 0 through 9 and the letters A through F. The commands below print the code the same way this page shows it, so you can compare the two side by side.
Not sure of the exact file name? List the files in the folder first. Type dir on Windows, or ls on a Mac or Linux, and copy the name from the list. Here is an even easier trick: type the first few letters of the name and press Tab, and your computer will finish it for you. No typos. You can also drag the file from your file browser into the window, and its full name and folder will appear.
Windows 10 and Windows 11
- Press the Windows key, type
powershell, and open Windows PowerShell.
- Go to the folder that holds the file you downloaded:
cd $env:USERPROFILE\Downloads
- Get the code:
(Get-FileHash .\voter-records.csv -Algorithm SHA256).Hash
- PowerShell prints the 64-character code on one line. Compare it to the code this page shows for that file. They should be the same.
- You can also let PowerShell do the comparing. Run the command below. It prints
True if your file matches our code, and False if it does not:
(Get-FileHash .\voter-records.csv -Algorithm SHA256).Hash -eq "PASTE_PUBLISHED_HASH_HERE"
Windows Command Prompt, if you like it better than PowerShell
- Press the Windows key, type
cmd, and open Command Prompt.
- Go to the folder that holds the file you downloaded:
cd /d %USERPROFILE%\Downloads
- Get the code:
certutil -hashfile voter-records.csv SHA256
- Command Prompt prints the 64-character code on its own line, with a line of text above it and below it. Compare that code to the code this page shows for that file. Command Prompt uses small letters and this page uses big ones. That is fine. Letter case does not matter, but every other character must be the same.
Older versions of certutil print the code with a space after every two characters. If yours does that, take the spaces out before you compare.
macOS
- Open Terminal. You will find it in Applications → Utilities → Terminal. Or press Command + Space and type
Terminal.
- Go to the folder that holds the file you downloaded:
cd ~/Downloads
- Get the code:
shasum -a 256 voter-records.csv | cut -d' ' -f1 | tr 'a-f' 'A-F'
- Terminal prints the 64-character code on one line. Compare it to the code this page shows for that file. They should be the same.
- You can also let your Mac do the comparing. Run the command below, with our code pasted in place of the stand-in, copied just as it appears on this page. It prints
MATCH if your file is the one we posted, and NO MATCH if it is not:
[ "$(shasum -a 256 voter-records.csv | cut -d' ' -f1 | tr 'a-f' 'A-F')" = "PASTE_PUBLISHED_HASH_HERE" ] && echo "MATCH" || echo "NO MATCH"
The command openssl dgst -sha256 voter-records.csv gives the same code, so you can use it as a second check. It prints the same 64 characters in small letters, after the code type and the file name.
Linux
- Open a terminal. On most systems, press Ctrl + Alt + T.
- Go to the folder that holds the file you downloaded:
cd ~/Downloads
- Get the code:
sha256sum voter-records.csv | cut -d' ' -f1 | tr 'a-f' 'A-F'
- The terminal prints the 64-character code on one line. Compare it to the code this page shows for that file. They should be the same.
- You can also let your computer do the comparing. Run the command below, with our code pasted in place of the stand-in, copied just as it appears on this page. It prints
MATCH if your file is the one we posted, and NO MATCH if it is not:
[ "$(sha256sum voter-records.csv | cut -d' ' -f1 | tr 'a-f' 'A-F')" = "PASTE_PUBLISHED_HASH_HERE" ] && echo "MATCH" || echo "NO MATCH"
If the file name has spaces in it, put quotation marks around it, like this: sha256sum "voter records.csv".
If the two codes do not match
Most of the time, one of these three things happened:
- The download stopped early and did not finish.
- You checked one file but copied the code from a different row.
- You picked a code type other than SHA-256.
Try this: download the file again, make sure you are using the right row, and check it one more time. If the codes still do not match, please tell us with the Report a Problem form below. The Registrar of Voters Office will look into it.
Tell Us How It Went
Both forms below are for readers working with the records above. Use the first if a download failed or a hash did not match. Use the second to be listed among the contributors. The Registrar of Voters Office reads every submission.
Report a Problem
Did you find something wrong, a download that will not work, or a code that does not match? Tell us, so we can look into it and fix it.
Open the Problem Form
Get Listed as a Contributor
Checked a record and confirmed the hash matches? Send us your name and we will list you in Contributors, further down this page, along with the record you checked and the tool you used.
Open the Recognition Form
Words We Use
The list below explains most of the words you will see in Washoe County voter records. It covers four things:
- What each column in the files means.
- What each voter status means.
- How we keep the voter list up to date.
- The deadlines we have to follow by law.
Our staff wrote this list. We update it whenever a meaning changes.
Contributors
Everyone listed here has checked a published record and confirmed its hash. Each row is one check: who ran it, the record they checked, the tool they used, and the date. Names come from the Get Listed as a Contributor form above, after the Registrar of Voters Office reviews each submission.
▶ Loading contributors...
Dedication
▶ Many teams helped build this page — click to read about them.
Center for Internet Security (CIS)
The Center for Internet Security set the safety rules behind this work. Their guides shaped how we move the data, how we prove that a file has not been changed, and how we handle and post voter records. Because we follow their rules, the public can see these records without putting Washoe County’s election systems at risk. Their work is a good reminder: being open and being safe are not opposites. Together, they are what make public data worth trusting.
Board of County Commissioners
The Washoe County Board of County Commissioners backed this project and helped steer it. They believe in open government and in public records people can actually get to, and they stood behind this work from the very start. Their support made sure each department had the people and the tools it needed, and their guidance helped decide what we post here. They keep watch over the work too. That is part of why you can trust that these records match the official records our office keeps.
Washoe County Technology Department
The Washoe County Technology Department built the systems behind this page and keeps them running. Their engineers made the service that fills in the records table, and they look after the systems that store and guard the files. They set up the network protections, the access rules, and the monitoring that keep the page safe and quick. Their care is why every file here reaches you through systems worth trusting, and why this work can keep growing.
Washoe County Registrar of Voters Office
The Registrar of Voters Office takes care of the data on this page. Our staff keeps the voter rolls up to date. We follow state and federal law when we update the list. We write down every registration change in Washoe County. We chose which fields to share, what file type to use, and how often to post new files. We check every file for accuracy before it goes out. Our team knows Nevada election law inside and out, and that is the backbone of this work.
Security Standards Partner
We follow the safety rules written by the Center for Internet Security (CIS) when we handle and post voter records.