Re:More backwards functions: Unevaluating polynomials
by j2kun on Wednesday September 25, 2013 @06:06PM
(#6447617)
One reason this is interesting is because polynomial interpolation is used for secret sharing, so this method constitutes an "attack" on a poorly implemented polynomial interpolation sharing scheme.
Luckily for crypto, the coefficients used in a properly implemented scheme are so large as to not be vulnerable to such an attack.
Re:More backwards functions: Unevaluating polynomials
by Osmium on Wednesday September 25, 2013 @12:35PM
(#6445597)
Very fun. I love how it's possible to accidentally discover something cool like this, only to realise (in retrospect) that the result is "obvious." Almost always learn something really useful from it.
Re:More backwards functions: Unevaluating polynomials
by chinpokomon on Wednesday September 25, 2013 @02:32PM
(#6446388)
That reminds me of the time I rediscovered averaging. I thought I was "inventing" a new type of averaging by imagining masses attached to a massless beam.
I started solving for a fulcrum when the torque would evenly balance. I then imagined instead of points, that I had one or more masses distributed continuously along the line, where the mass at any point along the line could be described by the area under a curve. It was only after I realized that I had calculated a centroid for the system, that it donned on me, I was actually calculating the average, as I had first done in elementary school. In short, nothing I was doing was new. I had simply discovered a new way to think about the problem that was not immediately clear when I came up with the thought experiment. In hind sight, it was completely obvious, but not before I ventured into calculus to solve this "tough" problem.
Re:More backwards functions: Unevaluating polynomials
by eliteraspberrie on Wednesday September 25, 2013 @12:18PM
(#6445456)
Great article, very useful for someone learning Scala like myself. If I understood correctly this is an example of polynomial interpolation. One method of solving is Neville's algorithm.
This is such a natural way to introduce it! I remember that I didn't fully grasp the concepts of what a 'base' is until my first year in college.
Luckily for crypto, the coefficients used in a properly implemented scheme are so large as to not be vulnerable to such an attack.
Input: a set of points
Output: polynomial that passes through all points of Input
Here, since the input are just two numbers, I don't think it is polynomial interpolation.