Skip to main content

Security and Election tools.

Doing some security reading, I came across a post from Bruce Schneier about voting and technology. It is part of a continuing thread in his blog and is quite timely. Securing Elections.

As a software engineer, I agree with Schneier and I think that working on secure, distributed, open and widely implemented voting registration system and tabulation systems would be interesting - both technically and socially. I have up-close experience (as a candidate in small city) with the tabulation process and I was surprised by the apparent lack of tools to expedite, verify, validate and secure the process.

This piqued my curiosity further, to no particular end. Given that, I started searching the web for open voter registration and I found the Voting Technology Toolkit. An online sample of voter registration can be found at Trust the Vote demo project (Virginia). or even better at Rock the Vote.

Another system is Civitas, a NSF funded project from Cornell which is interesting for it's detailed description of it's theoretical underpinnings.

Doing a casual literature survey of "voter registration security issues" brings up a number of key issues like trust models, biometrics, voter coercion and fraud, permanent voter cards and a whole host of verification issues. Security of voting encompasses authentication, authorization and trust but also taking a systems view of the process. Getting only one component of the system secure, such as the voting machines themselves still leaves the whole system untrustworthy. Standards are supported by organizations like Verified Voting and they look at the whole picture, including administrative structures. It requires both defense in depth as well as laterally - being particularly careful at transition points.

Interestingly it's less than obvious who the makers of voting systems are. If you are interested, there are federal testing standards for voting systems from the Election Assistance Commision.

So, here are a few resources available if you are interested in electronic voting systems...

Comments

Popular posts from this blog

Let's Not Mess Around with Security on our Personal Systems Either!

Essential Security Practices for Your Personal Systems Ensuring a minimal level of cybersecurity, privacy, and availability on your personal systems means you need to manage the following essential practices. This is a brief overview of recommendations from sources like CISA, NSA, etc., focused on personal laptop, phone, and other systems' security. Anti-virus  I've found you'll get the best anti-virus protection and usability from a paid product - I've always had good luck with Norton labeled products. If you are looking for current vendor offerings see:  https://www.pcmag.com/picks/the-best-antivirus-protection Regardless of whether you choose to use a commercial product or open-source anti-virus tool, it is absolutely something you need to use. This is the minimally needed level of system security. Once installed, ideally, it should be invisible until there's a security problem it can't prevent or solve.   Backups You need to have at least a minimal level of ...

RACI, Cybersecurity and NICE Framework

The NICE framework from a RACI point of view The NICE framework ( NIST SP 800-181 rev. 1) established a standard approach for describing cybersecurity work, in order to help stakeholders share a common language and ideally improve how to identify, recruit, develop and retain talent. It breaks down cybersecurity work role categories into: Oversight and Governance; Design and Development; Implementation and Operation; Protection and Defense; Investigation.  Which is very cybersecurity-centric and not related to common tools for project management within companies. Especially smaller enterprises that do not have dedicated people to mange and coordinate cybersecurity needs. A  RACI chart  is   a project management tool used to define and clarify roles and responsibilities within a project team.   It stands for Responsible, Accountable, Consulted, and Informed, and visually represents who is responsible for what, who is accountable for the outcome, who needs to be c...

Threat Modeling Manifesto

Secure Your Code with Threat Modeling As a software developer, security should be a top priority. By proactively identifying and addressing potential vulnerabilities, you can significantly reduce the risk of breaches and data loss. What is Threat Modeling?   Threat modeling is a systematic approach to identifying, assessing, and mitigating security threats. It involves looking at your system from a hacker's perspective to uncover weaknesses and devise strategies to protect against attacks. See the  OWASP Cheat Sheet   Why is Threat Modeling Important? Proactive Security: By anticipating potential threats, you can take steps to prevent them. Risk Mitigation: Identify and address vulnerabilities before they can be exploited. Regulatory Compliance: Adhere to industry standards and regulations. Enhanced Security Posture: Strengthen your overall security posture. How to Get Started with Threat Modeling   The Threat Modeling Manifesto provides a valuable framewor...