Given input string S, and transformation (i.e. computer program) T, is it possible to provide a succinct proof that another binary string S' is identical to the output T(S)?
By "succinct", I basically mean significantly less computationally intensive than repeating the original transformation. Also, I am ok with limiting the operations that can be performed by T to a specific set, but ideally this set should be Turing-complete.
I am encouraged by what I have read about zk-SNARKs that this type of thing is at least within the realm of the conceivable, but much of the underlying cryptography is currently unfamiliar territory to me, and it is not clear whether this type of proof is something I can use in my code, how much effort this would take, and how much compute power would be necessary for sizable input data sets.
Ideally, I'd like to leverage a reasonably friendly API to a well-written cryptographic library, but I am also willing to do a fair amount of the grunt work and open-source what I come up with.
Direct answers, as well as any helpful resources, will be much appreciated.