3 ms·
This sounds really similar to secret sharing[1]. While not doing exactly the same thing, a simple secret sharing algorithm is also interesting to read about now
by tikhonj 15y ago
This sounds really similar to secret sharing[1]. While not doing exactly the same thing, a simple secret sharing algorithm is also interesting to read about now--it's a different algorithm chunking up and reassembling data in a similar way with different properties.
One difference is that with secret sharing unless you have enough chunks you do not have any information about the result. (That's why it's called secret sharing--you can share a secret with a bunch of people without any of them knowing it unless a minimum number get together.) The neat trick is that any subset of the chunks big enough will get you all of the information.
[1]: http://en.wikipedia.org/wiki/Shamir%27s_Secret_Sharing http://en.wikipedia.org/wiki/Shamir%27s_Secret_Sharing
In fact, the algorithm (at a high level) is exceptionally simple: encode your data as the coefficients of a polynomial of degree n and transmit it as a bunch of points in the polynomial. You then need n+1 points to recover the polynomial, but which particular points you have does not matter.
What I love about this algorithm is that it is useful, nontrivial and can be explained in a single sentence (by a better writer than I :)).
- zacharyvoase 15y agoAnother way of phrasing the same concept: An infinite number of Euclidean planes can be drawn containing a single point, but you only need three of these—and it can be any three—to find the original point.
- lurker14 15y ago(if the original point is contained within a line that is also known. For example, if the original/desired point is on the x-axis)