News for hackers. Stuff that matters.
Re:Sierra Leone government denies the role of blockchain in ... by darawk on Monday March 19, 2018 @07:15PM (#16624277)
> I have yet to see how blockchain is supposed to solve problems with elections that can't be solved with good process. And if process isn't fixed, I don't see how blockchain alone will get around the process shortcomings.

Blockchains provide a verifiably immutable log. This is the exact primitive you want for elections - tamper-proof logging. It is genuinely a good technological solution to the problems of election legitimacy and validation. That isn't a defense of this article, or of any of the current blockchain/election projects, but in principle, the idea makes sense.

Re:Sierra Leone government denies the role of blockchain in ... by portofcall on Monday March 19, 2018 @08:18PM (#16624756)
You’ve commented a lot on this, so I feel I have to ask, do you have a stake in cryptocurrency, or is this purely your sincere enthusiasm for the tech? After all, cryptographically secure elections with verifiablity don’t require blockchain tech in the slightest.
Re:Sierra Leone government denies the role of blockchain in ... by darawk on Monday March 19, 2018 @10:32PM (#16625537)
I am invested in cryptocurrency, but cryptocurrency really has nothing to do with this. Blockchains are a convenient cryptographic solution to secure elections. There are definitely others, and the fact that blockchains are a convenient solution to this problem should have any implications for the price of any cryptocurrency, because cryptocurrencies rely on distributed consensus algorithms that aren't necessary in the context of elections (where precise temporal ordering doesn't really matter).

Don't get me wrong - there's a ton of hype around blockchains that is completely unjustified. But there are a few applications where it may have some utility, and I think this is one of them. So it irritates me when I see people on HN jump on the "blockchain therefore hype" bandwagon without spending the time to actually think about when this sort of technology is useful and when it isn't.

Re:Sierra Leone government denies the role of blockchain in ... by skywhopper on Monday March 19, 2018 @09:00PM (#16624978)
That’s honestly the smallest part of election validation. How do you know everything was recorded to the log correctly or at all? In other words, the actual “election” part where you verify voters and collect results, which has nothing to do with blockchain. But even if that is all done right, how is the blockchain itself being run? Blockchain data is only as trustworthy as the systems doing the verification. A centralized blockchain is no more trustworthy than a centralized database of any kind. And a distributed blockchain has its own attack vectors. Rubbing blockchain on it is not a security solution.
Re:Sierra Leone government denies the role of blockchain in ... by hmcdona1 on Monday March 19, 2018 @09:56PM (#16625359)
If I am given a voterID, let's say an address from which I cast my vote. I can look at my vote on the chain to ensure it was cast correctly forever from that point forward. The node software would ideally be open source and publicly available. A full node could be run at each voting site, and potentially by citizens themselves even. You could run one to make the voting process even more secure.

A decentralized blockchain is far more trustworthy than a centralized database in this scenario. Say Russia controls the centralized voting database, they can just edit whatever value they want to say "Putin" and call it a day. It's not public. No one can verify their vote. It's under the control of one party. The entire point of decentralization is to ensure there is public consensus among multiple parties.

There are other discussions about how to allow or incentivize citizens to run nodes, mitigate lost or stolen IDs/private keys, prevent against spam attacks, etc...but it sounds like you aren't even open to discussing those because you equate the word "blockchain" with "snake oil".

Re:Sierra Leone government denies the role of blockchain in ... by marksomnian on Tuesday March 20, 2018 @03:36AM (#16626593)
> I can look at my vote on the chain

And now you've told everyone exactly how millions of citizens voted.

Re:Sierra Leone government denies the role of blockchain in ... by darawk on Monday March 19, 2018 @10:36PM (#16625556)
It is secure, even if its centralized, because you will be able to see if your vote counted or not. At the end of the election, there will be a digital artifact, that will allow you to cryptographically prove whether or not your vote was tallied.
Re:Sierra Leone government denies the role of blockchain in ... by arthur_pryor on Tuesday March 20, 2018 @08:03PM (#16634006)
> Blockchains provide a verifiably immutable log. This is the exact primitive you want for elections - tamper-proof logging.

i disagree. the exact primitive you want is a verifiable counter, where people can be verified as being allowed to add one to the counter, with no ability to determine who added to which counter. that is different from a verifiably immutable log.

also, there are scenarios where a blockchain can be mutated, and i bet you that the election of a country would provide a very enticing target for subverting the blockchain.

> That isn't a defense of this article, or of any of the current blockchain/election projects, but in principle, the idea makes sense.

but in practice, maybe it doesn't? elections aren't some academic thing.

Re:Sierra Leone government denies the role of blockchain in ... by spydum on Monday March 19, 2018 @07:22PM (#16624349)
I'd say a significant amount of our problems are not transaction log failures - they are authentication/identity failures. The catch is that blockchain technologies force you to solve both (you cant take part in a transaction without an identity, can you?). Plenty of people who've lost wallets will concede this is still hard (what happens when you lose your government issued private-key, for example?).
Re:Sierra Leone government denies the role of blockchain in ... by darawk on Monday March 19, 2018 @07:25PM (#16624372)
I agree that blockchains do not solve all of the problems with elections. Here's what blockchain can offer, assuming you have a cryptographic identity mechanism (which has its own problems, of course):

1. Any person can validate that their vote was counted.

2. Any person can validate that their voted counted towards their intended candidate.

3. The collective can validate that no person (i.e. no crypto-id) voted twice.

4. The collective can validate the exact true number of tallied votes (and, e.g. make sure it doesn't exceed the total number of eligible voters).

5. The collective can validate the tallying process. I.e. they can count all the votes on the chain, and themselves reproduce the sums.

That does not address the following:

1. Ensuring that a crypto-id was used by the appropriate person (Although if someone stole your ID, this would likely be discovered by the person it was stolen from, due to previous property #2).

2. Ensuring that a person was not coerced to use their crypto-id against their will.

Which are real problems that I would love to see solutions to. But that doesn't mean we shouldn't try to solve those first 4 as well.

Re:Sierra Leone government denies the role of blockchain in ... by Nursie on Monday March 19, 2018 @07:33PM (#16624439)
>> 2. Any person can validate that their voted counted towards their intended candidate.

This is a bad idea even in concept. If anyone can validate their vote went for the candidate of their choice, someone else can force them to perform the same validation for money, under threat of violence, familial ostracism, or whatever really.

I get that you understand there is a problem with coercion here, but it's not just an implementation problem, it's a problem with the concept.

Re:Sierra Leone government denies the role of blockchain in ... by darawk on Monday March 19, 2018 @07:51PM (#16624565)
> This is a bad idea even in concept. If anyone can validate their vote went for the candidate of their choice, someone else can force them to perform the same validation for money, under threat of violence, familial ostracism, or whatever really.

I responded to this issue in the previous thread about this. But short answer is: create a verifiable but also deniable scheme.

https://news.ycombinator.com/item?id=16598591

Re:Sierra Leone government denies the role of blockchain in ... by acdha on Tuesday March 20, 2018 @09:09PM (#16634394)
That’s a proposal, not a proven solution, and it assumes that the chosen algorithm, implementation, and operation are all perfect or it fails open. That’s why you need to look at this as a system rather than a chance to use the current fad: this class of proposal replaces something which is cheap, robust, easy to understand, and fails closes with something complex and unproven which most people would cannot make accurate threat assessments about. There’d have to be a huge win to make up for that and “it costs a lot more and my startup could cash in” doesn’t count.
Re:Sierra Leone government denies the role of blockchain in ... by jacques_chester on Monday March 19, 2018 @09:42PM (#16625274)
Goals 1 through 5 are addressable by using election scrutineers[0], without introducing problems 1 and 2.

I like crypto as much as the next person. But the bigger picture means that simpler, dumber systems that rely on lots and lots of humans are more suited to the problem space.

[0] http://www.aec.gov.au/Voting/scrutineers.htm

Re:Sierra Leone government denies the role of blockchain in ... by darawk on Tuesday March 20, 2018 @11:44AM (#16629551)
Problems 1 and 2 exist just as much with scrutineers as they do with a blockchain solution.
Re:Sierra Leone government denies the role of blockchain in ... by beat on Tuesday March 20, 2018 @10:14AM (#16628710)
Why is authentication/identity failure an actual problem in practice, that can't be solved with simple good process? Despite misleading propaganda by a certain American political party, it is simple and straightforward to reduce voter identity fraud to irrelevance.

Let's start with imagining a statewide election with a million votes. To move the results by 1% would require 10,000 fraudulent votes. Now, how do we get 10,000 fraudulent votes?

First, we could stuff the boxes with fake ballots. Second, we could have false voter registrations and send "professional voters" around to vote at multiple polling places. Third, we could alter the results at the count, by giving a false count.

Now, let's introduce a process step: all activities that involve touching ballots, whether marked or unmarked, must be done in the presence of representatives of at least two political parties. In other words, if Team A is going to try to physically manipulate ballots or counts, they have to do it where Team B can watch them do it. How does that affect things?

And there's the process of running a polling place. At the beginning of the day, you get X number of blank ballots. They were delivered by two parties, and counted by two parties, and are presumably under some sort of seal. We know how many ballots are in the building. And there's a paper voter registration roll, with the names of every registered voter in the precinct. When a voter comes in, they look up the name on the roll, and the voter signs to say they voted. A tally is kept of how many voters sign. Each voter then gets a ballot, marks the ballot, and puts it in the box. At the end of the day, count the number of ballots. It should match the number of voters on the tally, and can be hand-checked against the number of signatures on the roll in a recount. Spot-checks of this at random precincts prevent widespread alteration without triggering a recount. The number of votes plus the number of remaining blank ballots equals the number of blank ballots at the beginning. So inserting fake ballots is hard. Inserting them in a way that can't be detected at count time or at recount time is harder.

So, how about false registrations and professional voters going around making multiple votes in different precincts? Remember, we need 10,000 votes to move the tally 1% in our theoretical election. Let's say one professional voter can make it to ten polling places over the course of a day. So you would need a thousand of them, trained, with targets. They would need to be either fanatical, or paid. And you need to do this with no leaks, no turncoats, no one who thinks "I could sell my story to the news for tens of thousands", no hidden cameras... yeah. (As an aside, this is why insistence on voter ID is misplaced. The difficulty of the problem prevents it far more than an ID step would.)

So how about altering the count? Well, if it involves altering the ballots themselves, it's a hard problem. (Unless you use those idiotically dangerous touchscreen machines, which ought to be illegal.) You need to remove valid ballots and replace them with altered ones, again with multiple parties observing. Or you can alter the final result count, but then it mismatches the paper ballots, and would be detected as fraudulent at recount time. Spot check hand-counts detect such issues.

Technical implementation example here: In Minnesota, we use Scantron machines. If there are multiple Scantrons at a polling place, we will hand-count one of them and compare to its electronic tally. The electronic tally from the machine is an unofficial result only, until certified.

Now, let's look at some easy things to do to manipulate elections! First, gerrymandering - draw district lines that make it nearly impossible for one party to win. I live in such a district. We're more likely to get visited by aliens than elect a Republican in my district. Second, voter suppression. Make it increasingly more difficult to vote - limit polling station resources in certain districts to force multi-hour lines, require ID, etc. These are popular and common. See how this works?

Blockchain doesn't fix ANY of this. Either it's already fixed, or could be fixed by improving the process based on models that are demonstrably good in other states.

Heck, they do fair elections in poor countries with high illiteracy rates, too. Just stamp each voter's hand when they vote. No one can vote twice because stamps are checked. Ballots can have symbols for parties rather than words. Election validation is easy.

Re:Sierra Leone government denies the role of blockchain in ... by jacques_chester on Monday March 19, 2018 @09:38PM (#16625248)
> This is the exact primitive you want for elections - tamper-proof logging

It is exact opposite of what is wanted.

Re:Sierra Leone government denies the role of blockchain in ... by darawk on Monday March 19, 2018 @10:36PM (#16625559)
...by who? I want it. Everyone I know wants it. The only people that don't want it are kleptocrats and dictators.
Re:Sierra Leone government denies the role of blockchain in ... by jacques_chester on Monday March 19, 2018 @10:45PM (#16625601)
A tamper-proof log of votes is how you make it possible to buy or extort votes. That works pretty well for the kleptocrats and dictators.
Re:Sierra Leone government denies the role of blockchain in ... by darawk on Monday March 19, 2018 @11:11PM (#16625727)
I've already explained elsewhere in this thread that it's easy to make this system also deniable, so that you cannot be extorted. As for buying votes, the deniability would make it equally difficult to prove you voted a certain way as it is now.
Re:Sierra Leone government denies the role of blockchain in ... by jacques_chester on Tuesday March 20, 2018 @06:56PM (#16633574)
It's deniable afterwards, but not during. At some point you reveal to the voter a way to map their vote to an anonymised 1 or 0. That point is vulnerable and that point will be where someone expects you to show them something.