added virtual keyfile generation