For each request, Chainlink VRF generates one or more random values and a cryptographic proof, which is published and verified onchain before a consuming application can use the result. Its current v2.5 documentation supports subscription and direct-funding request methods, with payment in LINK or native tokens.