For example you could have a hat with pieces of paper in it each with a number. The numbers sum to 0 (some are positive, some are negative). Each person draws a piece of paper, adds his or her weight to it, then says that number. The numbers that each person says are summed and that's the total sum.
E.g., say that the random numbers are uniformly distributed between -200 and 200. If somebody says a number like 425, then I know they weigh at least 225 pounds. And the probability they weigh more than 225 - k pounds is 1 - k/400.
Then you would probably get more information from looking at the person thank you could from hearing a weight number that could be +/-2000 pounds
There might be behavioural issues here though - perhaps people would keep generating a random number until they are provided one that makes their weight look 'better' (and 'better' probably means 'smaller' for most people).
Edit: comicjk made a great point about large numbers. Perhaps using large random numbers (eg a normal distribution with a mean of 4550 and a std deviation of 20-30) would help reduce the behavioural issue.
Technically it can be done, and in an obfuscated way no less without relying on self-reporting, which is always going to skew things; consider the following:
- At boarding have a scale underneath a padded area when scanning each and every passenger (calibration required): this will create a unique ID that corresponds with the boarding pass and seat number and weight while the ticket is being scanned, how long this takes is anyone guess as I'm not an engineer.
- Upon acquiring the weight of each passenger, create a hash for that ID and measured weight, and use that to associate the measured weight rather than the ID, such that it creates an aggregate of each and every boarded passenger with info rather than Jane Doe 55Kg (ID/weight). Record that info into a DLT/blockchain held by a series of parties to validate independently.
- With that info you can discern individual weights, without actually having an identity attached to said weight measurement. And in real time, no less.
This, albeit crudely lined out as its a rather lengthy process to describe, is the basis for why blockchain technology/DLT could be useful for voting as it was used in Sierra Leone's 2018 election:
https://techcrunch.com/2018/03/14/sierra-leone-just-ran-the-...
PS: I don't think a token is necessary, simply having the hashed info recorded onto a blockchain is enough, assuming its held by independent parties to be able to validate.
The goal is to get the summed weight of all the passengers. In step 1 of your plan you weigh each and every passenger. If that really is your plan then step 2 is to sum them! Call the sum() function! How in the world did you turn that into 5 steps involving a blockchain?
It's the epitome of the blockchain obsessed. Create unrelated problems just to claim "see a blockchain fixed them."
You've already weighed the passengers! The way to get their summed weight is to sum them!
Non-trust based verification/consensus requires that many parties, ideally opposing ones, have the same data/ledger to validate the information desired: in this case, real-time acquisition of passenger weight.
You could argue SQL does the same thing, and you're probably right at least on paper, but it cannot be independently validated as a blockchain can. The idea being, if all have a copy of the information then it isn't subject to custodial manipulation, and corruption.
I see it as having the same features that open-source software provides: in that it allows people to look through the source code to ensure it doesn't contain some malware or some bug in the software and can do so independently from the owner/company of said software.
What is SMP?
Otherwise you're guessing.
Also it is useful to balance the weight across the sides of a plane, not just get total weight.
https://gecscales.com/aircraft-weighing-systems/
Source: commercially-licensed pilot.
The reason I say this is because you are not talking to machine parts or to secret financial players, in this problem, to you are talking to human beings. By reducing human beings to machine parts to solve a problem, you are losing information that is critical to your own humanity ! and to theirs ! super-bad results can happen when people in power and their adjuncts, are successfully rewarded for reducing human beings to machine parts in their solutions ! Junior programmers finish your studies, but all humans please take note -- no cryptography required here !
The fact that Alice could guess Bob's wealth within a certain range, even if that range is "between $0 and $1 trillion," and then have a finite range to search for a collision could be mitigated with a sufficiently slow hashing algorithm and/or an absurd number of iterations.
This is the issue with your solution, it isn't really mitigated in such problems because the domain is too small.