Blocking Abusive WebTV Users with Home-Baked Cookies INTENDED USE: This document outlines a way to block an individual, abusive WebTV user from accessing your site, as well as a way to report specific abusers to WebTV Networks, Inc. This document is to be distributed only to individuals with whom WebTV Networks has an ongoing relationship. Under no circumstances should this document become generally available to the public, or made available without supervision of WebTV Networks. BACKGROUND: Like any other Internet users, WebTV users occasionally act abusive on Web sites, and Webmasters may wish to ban them from re-entry. The most common method of doing this, IP blocking, is not an appropriate way of dealing with the problem. WebTV Networks' use of proxies means that thousands of users may share the same IP at any given time. In addition, the ease with which WebTV users can create new users rules out user-specific cookies as a possible solution. Proposal: By using a WebTV-specific technology called "Home-Baked Cookies," sites can effectively block a single WebTV subscriber, no matter how many different users that subscriber creates. When reported to WebTV Networks, the value attribute of these cookies enables a rapid identification of abusive users. TECHNOLOGY: A "Home-Baked Cookie" is set and retrieved like any other type of HTTP cookie. The key difference is that the cookie name has a prefix of "WTV-HomeBakedCookie". The initial cookie value is irrelevant. Once a cookie with the WTV-HomeBakedCookie prefix is written to a WebTV system, the WebTV Networks' servers overwrite the original value of that cookie with an encrypted tracking number. Any user created on that WebTV system will receive the same encrypted tracking number when a WTV-HomeBakedCookie is issued. This makes it possible to block not only one user, but all users from an individual WebTV system. ADDITIONAL CONSIDERATIONS: Although not outlined here, Webmasters will need a way to associate abusive users with the value in their Home-Baked Cookies. An advanced chat site may wish to log the names of chatters with the contents of the cookie, while an anonymous message board may just log the contents of the cookie with the content of user posts. Lastly, abusive users should be reported to abuse@corp.webtv.net for investigation. IMPLEMENTATION NOTES: The implementation outlined below is simply one of many possibilities. If you decide to use these cookies on your site, your implementation will probably be quite different. View the example below only as an introduction to the technology. There are four parts to this system. A "Terms of Service/Login" page. This page details the guidelines of the site and sends all WebTV users to the "checker.cgi" script. A "checker.cgi" script will verify visitors are not currently banned from the site, and assign them session cookies that they will need to enter. "banned.txt," a list of blocked users created by the Webmaster. A small chunk of JavaScript that, when placed on any page within the site, will block access from unqualified users. To understand how the system works, let's look at the experience of a WebTV user who lands on the "Terms Of Service" page. The Terms of Service page has a form with a button labeled "I agree." Clicking on this button sends a WebTV user to "checker.cgi." Note that WebTV users cannot manually disable JavaScript in their browsers.By attempting to log on to the site, the WebTV user must first pass through the "checker.cgi" script. The first thing the script does is to give a Home-Baked Cookie to users who do not already have one. use CGI;