    # File lib/ramaze/helper/csrf.rb, line 123
          def generate_csrf_token(args = {})
            # Default TTL is 15 minutes
            ttl = args[:ttl] || (15 * 60)

            # Get some good entropy
            random = SecureRandom.random_bytes(512)
            # and some not so good entropy
            time = Time.now.to_f

            # Hash it together
            token = Digest::SHA512.hexdigest(random + time.to_s)

            # Time to store all the data we want to check later.
            session[:_csrf] = {
              :time  => time.to_i,
              :token => token,
              :ip    => request.env['REMOTE_ADDR'],
              :agent => request.env['HTTP_USER_AGENT'],
              :host  => request.env['REMOTE_HOST'],
              :ttl   => ttl
            }

            # Prevent this method from returning any value (it isn't needed anyway)
            return
          end