Oh, I was thinking that the logical step would be cryptfs, where you mount a file system and get a bunch of directories representing encryption algorithms and you just open() the one you want and then use send/recvmsg with options to do the work you want.
No seriously, I don't understand why this needs to be in the kernel, a root-owned daemon should be more than enough.