Another idea is a project I was made aware of yesterday called zenroom where the crypto could be specified in language neutral wm and be shared between the different implementations. This does not mean that we don't need tests, just that the really tricky crypto stuff can be written once.