Bezier Interpolation
Someone may come along and correct me.. but I think this is impossible with Shape Keys. 

Using Shape Keys, whatever the interpolation between vertex positions, the route from one to another is essentially a translation. The route that would preserve inter-vertex length has a large rotational component. The vertices have to travel along an arc around the right (possibly moving) center, not a straight line, or a curve not based on that center.

You could approximate that by using something like @moonboots' solution, and setting up a large number of linearly interpolated shape keys, (ultimately achieving a match by having one shape key per frame).