A software watermarking scheme allows one to embed a "mark" into a program without significantly altering the behavior of the program. Moreover, it should be difficult to remove the watermark without destroying the functionality of the program. Recently, Cohen et al. (STOC 2016) and Boneh et al. (PKC 2017) showed how to watermark cryptographic functionalities such as pseudorandom functions (PRFs) using general-purpose indistinguishability obfuscation, and left open the question of realizing watermarking from weaker assumptions.
In this talk, I will describe the first construction of a watermarkable family of PRFs with strong security from standard lattice assumptions. Our construction relies on a new primitive called a private translucent PRF, which may be of independent interest.
Joint work with Sam Kim.