Live data from Hacker News

Colorado scrambles to change voting-system passwords after accidental leak

arstechnica.com

671–680 of 682 posts

Re: Colorado scrambles to change voting-system passwords after accidental leak

#671
post #668

Earlier quoted context omitted.

You could argue Brzezinski and CIA arming the mujahideen was also “purely defensive”, or Soviets arming the PLO a decade earlier was “purely defensive”. One could, but it'd be silly as you already know, and no one is doing that. Hence, no analogy here.

Well, they shouldn't do it here either then. The analogy is quite deep since history repeats itself: CIA training paramilitaries against Russia/USSR Increasing the chances of Russia invading Giving ever more weapons to the "freedom fighters" Country ravaged and destroyed by war Lots of dead combatants & civilians (needlessly) Of course the war in Ukraine is like other proxy wars (in Yemen, Afghanistan etc) and can be…

CIA training paramilitaries against Russia/USSR

In the case of Ukraine -- OSS training of partisan forces against the Wehrmacht would be an infinitely closer analogy.

The thing is, you seem to assume axiomatically that the CIA's training of stay-behind forces (a.k.a. "paramilitaries") in Ukraine after 2014 was intrinsically offensive, i.e. was done just to get up Russia's backside, for whatever nefarious purpose.

Well, I don't buy that axiom, the simple reason that after 2014 Ukraine had every right to defend itself, and creating stay-behind forces is just a standard way of doing that. Just as France, Italy, Poland, Yugoslavia, Greece and all the other countries in Europe had a perfect right to resist occupation by Nazi Germany via whatever means necessary and available to them, including the development of partisan forces.

as US CIA did with far-right paramilitaries in Ukraine.

Which "far-right paramilitaries" are you referring to? You seem to be confusing the stay-behind forces described in the article with quasi-independent militias like Azov. The two are entirely different, sharing nothing in common other than the slightly scary-sounding keyword "paramilitary" you keep latching onto.

Yet in your mind, they've fused into one and the same entity. Why is that?

It's also a war in which Russia invades a country in an attempt to bring it to the negotiating table to agree to permanently stop shelling two breakaway republics

Again, the Ukrainian regions on Putin's smash-and-grab list were never "breakaway republics" in the mold of Ossetia and Abkhazia, as has already been pointed out. There was no violent "conflict" of any kind in those regions until Putin's little green men began arriving in March 2014. There's just no analogy here. Doesn't matter how often you attempt to simply repeat it.

Nor did the 2022 invasion have anything to do with "stopping the shelling" in those regions -- that's just another talking point that people read somewhere and keep repeating and repeating, with no idea of what they're talking about, because there's simply no substance to it. In any case, it's definitely not why Putin launched the full-scale invasion.

Rather than invent fantasy scenarios that Russian orcs want to genocide all Ukrainians,

It's a fantasy scenario in your own head, because no one has ever suggested that Russia intends to "genocide all Ukrainians". That's just a straw man, with simply no substance behind it.

With that, I'm going to have to bow out, and let you figure this stuff out on your own. It's one thing to have different viewpoints about what these big awful governments and their respective agencies are up to. But we're nowhere near that kind of discussion. I just have the sense that you're extremely careless in your research, or are reading from very propagandized sources, or just not pausing to think critically about whatever stuff it is that you do read.

Re: Colorado scrambles to change voting-system passwords after accidental leak

#672
post #509

Earlier quoted context omitted.

In traditional voting, the votes get counted by humans, supervised by other humans. If you want to spend the time and energy, you can be one of those humans. It's completely different from a machine count. Humans have human failure modes, which are easily accounted for. Machines have random failure modes, and complex ways of being attacked. And all of the machines can be wrong in one direction at the same time, which…

>Even random spot checks don't work for machines if the machine has some way of detecting it is being checked. That's theoretically a possibility, but it's trivially defeated by choosing which ballot boxes to spot check after the machines have finished counting.

Fair enough, but there is also another problem. What happens if you detect a discrepancy in one or two places, but good results in many others? Do you still issue a full recount of all places that the machine was used? If not, then an adversary can still subtly modify the results of the election, at least probabilistically.

Re: Colorado scrambles to change voting-system passwords after accidental leak

#673
post #661

Earlier quoted context omitted.

> There is a cryptographic mixer like Tornado Cash that is responsible for the unlinkability, by “tumbling” the tokens to anonymize them while still making sure that each person voting legitimately had registered. This is not anonymity, it is pseudonimity, if the system then records "person in control of key K voted for X". Sure, it may be impossible to tell who is that person, unless they come out. But that person c…

No, it only gives a false sense of security, which is worse. Everything you are describing relies on trust in the people that build these systems, trust in the people that invent the algorithms, trust in the people that invent the maths, trust in the chosen parameters of the cryptographic systems, and so on. Literally none of what you are describing works if you don't trust in all of these people to be (a) honest, an…

There is a major difference between trusting regular infrastructure and trusting elections infrastructure. The threat model is completely different. For one, vote secrecy makes it impossible to prove that your vote was mis-registered. For another, in normal situations the cyber-adversaries I need to worry about are regular criminals, for which basic computer security practices are good enough. But votes in an election are improtant enough that nation-state actors are a real threat, and I am absolutely certain that my phone or laptop are not secure against hacking attempts by a nation, or even potentially my own government!

Not to mention, elections are the only situation where trust in my government is not fully possible: the current government has too much incentive to steal votes secretly. So, unlike the electrical grid, roads, financial infra and so on, I can't rely on implicit trust in the government to trust elections.

> If someone was able to record a signature that their voting gateway signed vote for X as vote for X, but then later that same service claimed they voted for Y, they are caught red-handed cryptographically signing with the private key two conflicting votes.

If. What if instead my voting app is showing me that my vote was correctly registered, and that key verification succeeded while the polls are still open, but once the polls close, it shows me that in reality the server registered the opposite vote? How do I prove to anyone else that I voted for X and the app was showing me I voted for X, but now the system shows I voted for Y, and that is what is recorded in the official counted results?

This doesn't even require anyone breaking the encryption: the app can just show me a lie, or some malware can intercept the display info and show a different result, etc. To not leave any trace, the malware even deletes itself from the system as soon as the election timeout expires. Or maybe I am just lying and nothing wrong happened: I voted for Y, the system recorded I voted for Y, and now I'm just trying to cast doubt. Same as a paper based election, anyone can claim anything, and it's exactly as impossible to prove one way or the other.

Plus, again, only a very very very small group of people can actually confirm for themselves that all of these complicated crypto algorithms actually do what they promise to do. Especially when looking at the end to end system. I for one am certain I couldn't verify for myself that all steps of such a system is secure. I would bet you can't either. If, say, Ron Rivest (of RSA fame) came out and said the cryptography used in the election is broken, while Adi Shamir (same) said it isn't, I would have no way to be certain which is right, and even if I tried to verify the math myself, I wouldn't trust myself as much as either of them.

Re: Colorado scrambles to change voting-system passwords after accidental leak

#674
post #661

Earlier quoted context omitted.

No, it only gives a false sense of security, which is worse. Everything you are describing relies on trust in the people that build these systems, trust in the people that invent the algorithms, trust in the people that invent the maths, trust in the chosen parameters of the cryptographic systems, and so on. Literally none of what you are describing works if you don't trust in all of these people to be (a) honest, an…

There is a major difference between trusting regular infrastructure and trusting elections infrastructure. The threat model is completely different. For one, vote secrecy makes it impossible to prove that your vote was mis-registered. For another, in normal situations the cyber-adversaries I need to worry about are regular criminals, for which basic computer security practices are good enough. But votes in an electio…

You’re still misunderstanding how it works.

First of all, blockchains are a third party ledger, which is maintained by many independent nodes are the large ones are infeasible to corrupt by a nation-state. The attack could only happen at the point where you sign transactions for the smart contracts.

Voters are required to use at least 2 devices, such as scanning a QR code on their laptop (which runs Chrome) with their phone (which runs Safari).

The QR code contains (or points to) a vote that is cryptographically signed by one gateway. The website or app on the phone checks this QR code and displays the same result back to you, and you confirm it on eg your phone’s screen.

On both gateways (call them Services A and B) you indicated your preference, and digitally signed it, not just with your own key, but there is attestation by the device’s own private key, which is derived from the vendor’s key, meaning the vendor stands behind what their device or app does.

Let’s assume absolutely every signature service cannot be trusted, including all your crypto wallets, incouding Apple’s secure enclave, everything is designed to be sleeper agent to mislead you on the day of the election. They just really want to change everyone’s vote. You can still prove which services were corrupted!

Let’s say that you got signature Service A and Service B to sign two different candidates during the same chain of QR code confirmations. The proof is there that at least one of the services was corrupt. Even if it happened only once, with one voter. The indelible proof is on a blockchain and replicated so nation states can’t hide it. So no Service would agree to volunteer such a blatant proof of its own corruption, given the cost to its vendor. It would only happen if the Service would be hacked by an employee of the vendor, and that would only hurt the vendor, not the election. The vendor would try to eliminate this possibility as much as possible.

However, if service A one lied to you, and you found out after scanning the QR code with Service B, then you wouldn’t want to submit your faulty vote with service B when it revealed that to you. But the service B would already would have provable dirt on service A. Not conclusive, since the voter could after all be someone who would rather complain about a non-faulty system than vote. I won’t speculate on chances of many registered voters not wanting to vote but simply make up fake complaints about the system, but I don’t think regular users should face penalties for lying, so I’ll just accept this as a serious possibility. All I will say is, these people are similar to those who stay out and don’t vote now. It’s an issue of “turnout”.

But even in this scenario (of a malicious voter rather than malicious service), Service B would then be required to do the reverse — process your other vote, and sign the transaction, then anonymously submit it to Service A to be signed. Service A would have to either refuse to cooperate with Service B, or sign it. After that, you’d be given a QR code presented by Service B, and verify it with Service A.

Of course there could be far more than just a of Services A and B. There could be 100 services (eg web-based) and voters could be required to go through a chain of 3 of them, as determined from a random oracle (ie they don’t get to pick who to collude with). You’d get the list of 3, and an honest service would simply redirect you to the next one as you bounce between two devices via QR codes.

  Service A on Laptop
  Service B on Phone
  Service C on Laptop - done
Everything that’s signed goes into a third-party gossipped / replicated log (doesn’t have to be a blockchain, there doesn’t have to be a total order). This log / heap is what contains the indelible proofs that can be found out anytime after the fact, which is why every service must be careful to mess up even once.

You see, there is a huge difference between actors/nodes simply voting between some arbitrary choices A and B, and nodes voting while also following cryptographic constraints amd creating a trail where cheating at any step can be caught and proven later. The latter is much harder to pull off and, given costly enough consequences, creates chilling effects and strong incentives to be honest. This is what many BFT algorithms get wrong and why they fail in the presence of over 33% malicious nodes.

https://youtu.be/BYRTvoZ3Rho?si=AGbuwZlJ85G3KXPg

Re: Colorado scrambles to change voting-system passwords after accidental leak

#675
post #634

Earlier quoted context omitted.

After your very last sentence, I’m not even sure what your point is here. You just listed a bunch of reasons you don’t think mail in ballots are safe, and then ended with saying the alternative also isn’t safe from vote buying. Vote buying also does not appear to be a problem in the US electoral system, as another commented pointed out: in order to make a difference in the election, you’d have to buy enough votes tha…

Yea no, I get that, it's just that voting was still secure up until smartphones were ubiquitous. Now it's not. It's not just about vote stealing per se, it's about any third party infraction of individual voting rights. It may not matter on a large scale, but it matters to individuals. Not only that, but it matters that bosses can't coerce workers into voting for someone, or an abusive spouse, or any third party who…

Au contraire.

With my remote voting, I can generate as many ballots as I want. If I want to make a dummy ballot that says I voted for any given candidate in order to fool someone it is easier than ever. Now instead of 1 physical ballot, I can generate multiple ballots, and do as I please with them.

Re: Colorado scrambles to change voting-system passwords after accidental leak

#676
post #674

Earlier quoted context omitted.

There is a major difference between trusting regular infrastructure and trusting elections infrastructure. The threat model is completely different. For one, vote secrecy makes it impossible to prove that your vote was mis-registered. For another, in normal situations the cyber-adversaries I need to worry about are regular criminals, for which basic computer security practices are good enough. But votes in an electio…

You’re still misunderstanding how it works. First of all, blockchains are a third party ledger , which is maintained by many independent nodes are the large ones are infeasible to corrupt by a nation-state. The attack could only happen at the point where you sign transactions for the smart contracts. Voters are required to use at least 2 devices, such as scanning a QR code on their laptop (which runs Chrome) with the…

We're still chasing around the same issue. Say the following happens:

1. I open my laptop, and I say I want to vote for Alice. It presents a QR code.

2. I open my phone and scan the QR code. It says I'm voting for Bob.

I repeat this five times and the same happens. What do I do next? Assume I'm also afraid of publicly admitting I'm voting for Alice. Assume this only happens for a small part of the electorate, say 1-2%.

Here is another scenario: I have a sophisticated malware on both my phone and laptop.

1. I open my laptop, and say I want to vote for Alice. The malware connects to a voting server and asks it for a vote for Bob. The voting server replies with a QR code that proves I voted for Bob. The malware on my laptop then prints a QR code that says "hey, phone malware! this person thinks they voted for Alice, and here is the validation for their vote for Bob".

2. I open my phone and scan this QR code. The malware on my phone tells me "Yup, this is a vote for Alice". I press "Vote", and it sends the information from the Bob vote to the validation server. I'm happy that I voted for Alice, but the system has recorded that I voted for Bob, with all necessary signatures.

3. Even if the system includes the ability to check your vote, I can't prove to anyone else that I was trying to vote for Alice.

Now, if this happens to a huge number of people, the election may be contested and re-done (in a functioning democracy; in a dictatorship, it was the whole point). But what if it happens to a small minority, enough to only steal 1-2% of the vote? What if it's additionally well targeted to people that aren't generally trusted by their peers, so that they will be easily written off as cranks?

Also, what if I come out claiming this is what happened to me, but this didn't actually happen? What if I'm a celebrity, or a well-known scientist? What if I'm actually Alice herself, shamelessly lying to my voters that the election was stolen?

Another scenario that defeats this scheme, that I haven't even touched on before:

I am coerced, defrauded, or payed to share my private key with a third party. They vote in my name from the comfort of their own home, with every single system you described attesting that my vote was cast legally.

Try to prove that I shared my key, while still preserving the anonymity of private key individual person association.

And this doesn't even get into how the private keys are given to every single person in a country without revealing them to a third party in the first place, but also without generating valid private keys for people who aren't entitled to vote.

Re: Colorado scrambles to change voting-system passwords after accidental leak

#677
post #674

Earlier quoted context omitted.

You’re still misunderstanding how it works. First of all, blockchains are a third party ledger , which is maintained by many independent nodes are the large ones are infeasible to corrupt by a nation-state. The attack could only happen at the point where you sign transactions for the smart contracts. Voters are required to use at least 2 devices, such as scanning a QR code on their laptop (which runs Chrome) with the…

We're still chasing around the same issue. Say the following happens: 1. I open my laptop, and I say I want to vote for Alice. It presents a QR code. 2. I open my phone and scan the QR code. It says I'm voting for Bob. I repeat this five times and the same happens. What do I do next? Assume I'm also afraid of publicly admitting I'm voting for Alice. Assume this only happens for a small part of the electorate, say 1-2…

In reality, instead of 2 distrusting parties (democrats and republicans) in each polling place, there would be 100 mutually competing / distrusting services that would like nothing better than to expose the other services as frauds with indelible cryptographic proofs. That's the basis of Byzantine Fault Tolerant consensus protocols.

In the first scenario, to answer your question, if service 1 kept being faulty (saying you vote for Bob when you voted for Alice) then you'd simply increment your nonce and try another VoteChain that starts with service 52. The VoteChain determines which 3-4 services out of the 100 are consulted, and in what order. You have a few nonces, up to 10. If you claim ALL random services you've tried are faulty, then yeah, go ahead and sit out the vote, you're probably just a liar and complainer. They don't know who you are, so the chances of them being good for 100 other people and specifically not good for you, 10 times in a row, are very small. And even if it was true, that's 1 vote out of many. Now if this happens more frequently, then these services could be dropped from the 100, pending investigation -- which is easy since the services don't know who is voting, could be the police. So why would the services risk being on the hook for this?

In all your examples, you're begging the question.

In 1 and 2 in the second scenario, you assume that your own phone AND your own laptop AND all the servers all have malware and are undetectably malicious. In that case, you have much bigger problems -- they can, for example, steal money from many people, send messages to ruin relationships and reputations, and much more. In your example, large swaths of people can't trust any of your devices. In that case, society as a whole is cooked. It's not quite as paranoid as "not trusting the cryptographic algorithms and math", but it's close.

Let's assume that the Trusted Computing Base isn't compromised. Because if it is, then you may as well also distrust all the poll workers as being corrupt, and the media as reporting the wrong result, etc. After all, this system is being added ON TOP of the existing system, so it can only ADD security.

Regarding giving out private keys without revealing them to a third party, I have already said that's a strawman. They'd be giving out tokens that are used to prove that you have 1 vote, and they are put through a mixer by the people, like pulling numbers out of a hat. On the other hand, the public/private key pairs are generated by the person on their own devices (e.g. in the secure enclave). You can't steal these keys so easily, unless you steal the person's phone AND coerce them to enter biometrics when voting. But then you could just make them do a wire transfer or anything else.

Look, about this constant refrain about "coersion, defrauding, etc" this happens already. Voter intimidation can happen already, preventing you from going to a polling place, or simply disenfranchising you making it too inconvenient or far to go. It's a much BIGGER problem now, that would be REDUCED if you could vote from your phone, and on net you'd have an improvement.

Also, since in the USA you don't need to present ID while voting, a person could tie you up in your basement and go vote as you. Since in your hypopthetical world, illegal coersion and force and defrauding has no consequences apparently, then that would mean in CURRENT voting schemes, people could just vote as others.

Heck, in Australia, I could even get someone in trouble by voting AS THEM. Their name would appear twice. In Australia, they fine you if you didn't show up to vote. So without IDs, you can get in trouble either way (if you don't show up, or if you supposedly voted twice).

I'm telling you, the same people who claim IDs are totally unnecessary for voting, are the same people trying to find attacks on cryptographically secure voting. But many of these "rubber hose attacks" are already doubly possible in today's "physical" voting schemes, along with all the other downsides (the cost, the speed, the scandals, as you can see with uncertainty in elections around the world).

30% of the USA thinks that the 2020 election results were illegitimate. You can't wave that away as "well, our paper elections are great, they're just partisan hacks/deluded". I bet you with cryptographic elections, that 30% would be far less, and elections / referendums would also be cheaper and easier to do all the time. You wouldn't need to do it once every 4 years and spend billions AND it would be more reliable.

https://www.umass.edu/political-science/

Re: Colorado scrambles to change voting-system passwords after accidental leak

#678
post #634

Earlier quoted context omitted.

Yea no, I get that, it's just that voting was still secure up until smartphones were ubiquitous. Now it's not. It's not just about vote stealing per se, it's about any third party infraction of individual voting rights. It may not matter on a large scale, but it matters to individuals. Not only that, but it matters that bosses can't coerce workers into voting for someone, or an abusive spouse, or any third party who…

Au contraire. With my remote voting, I can generate as many ballots as I want. If I want to make a dummy ballot that says I voted for any given candidate in order to fool someone it is easier than ever. Now instead of 1 physical ballot, I can generate multiple ballots, and do as I please with them.

That's a different security issue, not related to voter coercion.

There are checks to ensure votes aren't fraudulent, that's actually very easy and already done. You can send as many ballots as you want, but they need to be legitimised against a person. That's not such an easy grift. I believe

Re: Colorado scrambles to change voting-system passwords after accidental leak

#679
post #677

Earlier quoted context omitted.

We're still chasing around the same issue. Say the following happens: 1. I open my laptop, and I say I want to vote for Alice. It presents a QR code. 2. I open my phone and scan the QR code. It says I'm voting for Bob. I repeat this five times and the same happens. What do I do next? Assume I'm also afraid of publicly admitting I'm voting for Alice. Assume this only happens for a small part of the electorate, say 1-2…

In reality, instead of 2 distrusting parties (democrats and republicans) in each polling place, there would be 100 mutually competing / distrusting services that would like nothing better than to expose the other services as frauds with indelible cryptographic proofs. That's the basis of Byzantine Fault Tolerant consensus protocols. In the first scenario, to answer your question, if service 1 kept being faulty (sayin…

As for Byzantine fault tolerance, I'm not sure I understand how you'd reach a lot of competing services. Who is paying for all of this? The voters definitely aren't. The state can choose to only pay for nodes friendly to the current government if it wants. So who else?

In 2, I explicitly said that it is only my devices that are infected, not the servers. My devices communicate to the servers exactly as if I had voted for Bob, but they show me that I'm voting for Alice.

In scenario 1, it could be either one. If it's my own devices that are compromised and refusing to let me vote for who I want is to add, then it doesn't matter which of the many vote services I connect to, the result will be the same. It's just a simpler variant of 2, in this case.

Also, this is all not "added on top of" the existing system, because poll workers today only need to know how to count votes. To handle this enormously complex system, they have to know a HELL of a lot more, even to help voters. So, you need entirely new people in all of this, replacing the dead simple system that even an illiterate person can successfully volunteer for, with a system that requires IT people and others.

And if you'll say "but you can always fall back to the paper polling system", that means we're adding a bunch of cost, so it makes the bar even higher to prove so much extra effectiveness for this. Plus all the insecurity now compounds - the security of a system is equal to the security of its weakest component, so adding a strong security component on a weak system has no effect. And if I'm right and the e-voting system is more easily attackable, then we've actively worsened the security of the whole vote by adding it on top of the old system.

For the "tokens" that you're giving: those are either private keys (in which case, whoever gave you the token might be holding on to a copy), or they're not (in which case, they don't play a part in the cryptography). I can generate a private key all I want, but someone needs to take the corresponding public key if I am to participate in the system. With Bitcoin, this is not an issue as we're not trying to enforce one man - one wallet, quite the opposite.

In all the talk about the intimidation issues with the current system, you've ignored the core difference: in the current system, I may be able to dissuade you from voting, but I can't vote in your stead. Even if I try to, I am generating video evidence at every polling station that I do it. And it doesn't scale: the more places I go to, the bigger a chance that I'll end up being caught.

But with home voting, I can collect private keys (and tokens, whatever those are) from 100k people and vote through all of them however I like. I am not going anywhere official, so at worse I have to hide my IP so it's not like too many votes are coming from a single place.

I'll be fair and note that this is also a problem for mail-in voting. It's a big reason why I'm not a supporter of mail-in voting either, and am happy that my country doesn't do it. By the way, the fact that the USA doesn't require ID to vote also seems crazy to me. I understand the reasons for it, but the fixes are so simple (but take a lot of time) that it's amazing to me that they are not even discussing implementing them.

And related to distrust in the current voting system, particularly in regards to the 2020 and the 2000 elections: most of the distrust was actually focused on (a) voting machines [hanging chads in 2000, "Venezuelan" voting machines in 2020], or (b) voter registration issues. Moving to an entirely electronic system as you describe makes (a) MUCH worse, and doesn't improve (b) in the slightest (as you still need to register just the same).

Re: Colorado scrambles to change voting-system passwords after accidental leak

#680
post #616

Earlier quoted context omitted.

If everyone got a unique prime number and a running total vote product was available, I always thought this would be a neat solution. Still susceptible to the goon-with-a-wrench technique I think

That doesn't sound like it secures anything. I can't verify that my prime number is unique (I vote for A. There is already a vote for A at 3. The machine logs a vote for B at 5 and reports to me my number is 3). So it'd be a scheme where nothing can be proved to me that I didn't already know. I still have to trust all the same middlemen, and I don't gain any knowledge about the integrity of an election.

> If everyone got a unique prime number
Post reply on HN