change to accept FS.File instance and derive the file key from that