local real_sha = require("bgcrypto.sha256") local sha_proxy = {} function sha_proxy:new() local fake_instance = { data = "", } function fake_instance:update(data) self.data = self.data .. data end function fake_instance:final() return real_sha.digest(self.data, true) end return fake_instance end return sha_proxy