amazingly, the browser has pretty much solved all of this. fully compatible EMCAscript implementations on every single device with hardware access (such as the camera, as is needed in this post)
I don't buy your "security through difficulty" argument for that reason alone.