Author: Joseph Reagle
Audience: LawTech'99, probably lawyers and legal practitioners
Question: What do lawyers and technologists mean when they speak of "agents?"
Description: As the deployment of computer agents that act on behalf of users grow, so do questions regarding the legitimacy and legal standing of computer based agreements. I note the use of the terms "agents" and "proxy" in the technical discipline and argue that a more explicit understanding of these terms is necessary to properly address the convergence of technical and legal issues related to electronic commerce.
References: Agent: I dont think it means, what you think it means (19990524)
Joseph M. Reagle Jr.
<reagle@w3.org>
Fellow Emeritus
Berkman Center for Internet & Society
Research Engineer
IETF/W3C XML Signatures Co-Chair
W3C/LCS/MIT
Submitted this under the "Focus On New Legal Challenges: computer contracts" in the Call for Participation
This is the sister paper of a two part exposition on what it means to have agent mediated agreement:
Unfortunately, much of the legal literature on the question of computer agency is preoccupied with concepts of intelligence, consideration, and intention within a computer program; this is because these concepts are found in law. However, these concepts are premature in a technical context -- regardless of hand-waiving about artificial intelligence.
My goal is to provide a simple description of the technical concepts of agency and proxy.
This examinatin also allows me to point out open questions and confusion, best described by a phrase from the movie The Princess Bride, "You keep using that word I do not think it means, what you think it means." [local]
An agent acts on your behalf, a gateway converts between protocols, and a proxy emulates a service provided by a server that is not contacted directly by the client itself.
agent
: In the client-server model, the part of the system that performs information preparation and exchange on behalf of a client or server. Especially in the phrase "intelligent agent" it implies some kind of automatic process which can communicate with other agents to perform some collective task on behalf of one or more humans. (1995-04-09)
gateway
: 1. protocol converter....
proxy gateway
: A computer and associated software which will pass on a request for a URL from a World-Wide Web browser such as Mosaic to an outside server and return the results. This provides clients that are sealed off from the Internet a trusted agent that can access the Internet on their behalf.
The technical use of the term agent can be characterized into three overlapping periods.
IETF (the Internet Engineering Task Force) creates Internet protocol specifications, particularly those related to TCP/IP protocols.
RFC (Request for Comment) is the designation for the IETF's specifications/standards.
RFC1009 --
Requirements for Internet gateways.
RFC1027 --
Using ARP to implement transparent subnet gateways.
RFC1067 --
Simple Network Management Protocol.
The terms, agent and proxy, received their fullest treatment in 1989 in RFC1095 (The Common Management Information Services and Protocol over TCP/IP)
There reside application processes called "agents" on managed systems.... Network management occurs when managers and agents conspire (via protocols and a shared conceptual schema) to exchange monitoring and control information useful to the management of a network and its components. [RFC1095]
Proxy
is explicitly placed in a legal context.Proxy is a term that originated in the legal community to indicate an entity empowered to perform actions on behalf of another. In our context, a proxy is a manager empowered to perform actions on behalf of another manager. ... the proxy assumes the agent role with respect to the requesting manager and the manager role with respect to the managed device. [RFC1095]
Consider a technology like P3P that permits users to set or borrow rules about the proposals she will accept from services. If the proposal is accepted by the rules, the service and user have an agreement!
In contrast, the revised UCC 2B draft (now UCITA) primarily concerns itself with permitting services to exercise the necessary formalities to bind users to agreements that the users cannot possible understand.
Instead, P3P captures the semantics of a privacy agreement in a machine readable and understandable data format. The agent can then help the user with information/proposal retrieval, parsing, and processing!
Put aside complex legal considerations for the moment and ask two simple questions:
Why would users be dissatisfied?
What are the possible modes of failure of the agent? Was the computer agreement based on:
Should computer agreements include information on how involved the human actually was in making the agreement?
Numerous (and potentially ambigous) types of services out there:
For any communication to happen on the Internet, numerous intermediaries must be traversed in order to enable a seemingly "end-to-end" communication.
Web protocols do support the notion of expiration, content can be tagged requesting that proxies not keep information in cache, or that a newer version of the content be fetched at some point in the future.
However, there is no strict obligation for proxies to follow such requests. This can have a significant effect on the ability to form agreements on-line.
Proxies which do not expire old stock quotes, news stories, price lists, privacy proposals, and offers for digital contract can be detrimental to electronic commerce!
Agents act on your behalf and proxies act on someone else's behalf in order to render a service. An understanding of how the words are used in a technical and legal context may permit us to take the next step in asking the right questions.
Those questions will pertain to the responsibilities and roles of the providers of services anywhere within a network:
I believe the answers must focus on the users' ability to comprehend and exert control over agreements and how the failure of an agent is likely to affect the users.