draft-ietf-geopriv-arch-02.txt   draft-ietf-geopriv-arch-03.txt 
GEOPRIV R. Barnes GEOPRIV R. Barnes
Internet-Draft M. Lepinski Internet-Draft M. Lepinski
Updates: 3693, 3694 BBN Technologies Updates: 3693, 3694 BBN Technologies
(if approved) A. Cooper (if approved) A. Cooper
Intended status: BCP J. Morris Intended status: BCP J. Morris
Expires: November 28, 2010 Center for Democracy & Expires: April 14, 2011 Center for Democracy &
Technology Technology
H. Tschofenig H. Tschofenig
Nokia Siemens Networks Nokia Siemens Networks
H. Schulzrinne H. Schulzrinne
Columbia University Columbia University
May 27, 2010 October 11, 2010
An Architecture for Location and Location Privacy in Internet An Architecture for Location and Location Privacy in Internet
Applications Applications
draft-ietf-geopriv-arch-02 draft-ietf-geopriv-arch-03
Abstract Abstract
Location-based services (such as navigation applications, emergency Location-based services (such as navigation applications, emergency
services, management of equipment in the field) need geographic services, management of equipment in the field) need geographic
location information about Internet hosts, their users, and other location information about Internet hosts, their users, and other
related entities. These applications need to securely gather and related entities. These applications need to securely gather and
transfer location information for location services, and at the same transfer location information for location services, and at the same
time protect the privacy of the individuals involved. This document time protect the privacy of the individuals involved. This document
describes an architecture for privacy-preserving location-based describes an architecture for privacy-preserving location-based
skipping to change at page 1, line 48 skipping to change at page 1, line 48
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on November 28, 2010. This Internet-Draft will expire on April 14, 2011.
Copyright Notice Copyright Notice
Copyright (c) 2010 IETF Trust and the persons identified as the Copyright (c) 2010 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 3, line 11 skipping to change at page 3, line 11
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1. Binding Rules to Data . . . . . . . . . . . . . . . . . . 4 1.1. Binding Rules to Data . . . . . . . . . . . . . . . . . . 4
1.2. Location-Specific Privacy Risks . . . . . . . . . . . . . 5 1.2. Location-Specific Privacy Risks . . . . . . . . . . . . . 5
1.3. Privacy Paradigms . . . . . . . . . . . . . . . . . . . . 6 1.3. Privacy Paradigms . . . . . . . . . . . . . . . . . . . . 6
2. Overview of the Architecture . . . . . . . . . . . . . . . . . 7 2. Terminology Conventions . . . . . . . . . . . . . . . . . . . 7
2.1. Basic Geopriv Scenario . . . . . . . . . . . . . . . . . . 8 3. Overview of the Architecture . . . . . . . . . . . . . . . . . 7
2.2. Roles and Data Formats . . . . . . . . . . . . . . . . . . 9 3.1. Basic Geopriv Scenario . . . . . . . . . . . . . . . . . . 8
3. The Location Life-Cycle . . . . . . . . . . . . . . . . . . . 12 3.2. Roles and Data Formats . . . . . . . . . . . . . . . . . . 10
3.1. Positioning . . . . . . . . . . . . . . . . . . . . . . . 13 4. The Location Life-Cycle . . . . . . . . . . . . . . . . . . . 13
3.1.1. Determination Mechanisms and Protocols . . . . . . . . 13 4.1. Positioning . . . . . . . . . . . . . . . . . . . . . . . 14
3.1.2. Privacy Considerations for Positioning . . . . . . . . 15 4.1.1. Determination Mechanisms and Protocols . . . . . . . . 14
3.1.3. Security Considerations for Positioning . . . . . . . 16 4.1.2. Privacy Considerations for Positioning . . . . . . . . 16
3.2. Location Distribution . . . . . . . . . . . . . . . . . . 16 4.1.3. Security Considerations for Positioning . . . . . . . 17
3.2.1. Privacy Rules . . . . . . . . . . . . . . . . . . . . 17 4.2. Location Distribution . . . . . . . . . . . . . . . . . . 17
3.2.2. Location Configuration . . . . . . . . . . . . . . . . 19 4.2.1. Privacy Rules . . . . . . . . . . . . . . . . . . . . 18
3.2.3. Location References . . . . . . . . . . . . . . . . . 20 4.2.2. Location Configuration . . . . . . . . . . . . . . . . 20
3.2.4. Privacy Considerations for Distribution . . . . . . . 20 4.2.3. Location References . . . . . . . . . . . . . . . . . 20
3.2.5. Security Considerations for Distribution . . . . . . . 22 4.2.4. Privacy Considerations for Distribution . . . . . . . 21
3.3. Location Use . . . . . . . . . . . . . . . . . . . . . . . 23 4.2.5. Security Considerations for Distribution . . . . . . . 23
3.3.1. Privacy Considerations for Use . . . . . . . . . . . . 23 4.3. Location Use . . . . . . . . . . . . . . . . . . . . . . . 24
3.3.2. Security Considerations for Use . . . . . . . . . . . 23 4.3.1. Privacy Considerations for Use . . . . . . . . . . . . 24
4. Security Considerations . . . . . . . . . . . . . . . . . . . 24 4.3.2. Security Considerations for Use . . . . . . . . . . . 24
5. Example Scenarios . . . . . . . . . . . . . . . . . . . . . . 26 5. Security Considerations . . . . . . . . . . . . . . . . . . . 25
5.1. Minimal Scenario . . . . . . . . . . . . . . . . . . . . . 26 6. Example Scenarios . . . . . . . . . . . . . . . . . . . . . . 27
5.2. Location-based Web Services . . . . . . . . . . . . . . . 27 6.1. Minimal Scenario . . . . . . . . . . . . . . . . . . . . . 27
5.3. Emergency Calling . . . . . . . . . . . . . . . . . . . . 29 6.2. Location-based Web Services . . . . . . . . . . . . . . . 28
5.4. Combination of Services . . . . . . . . . . . . . . . . . 31 6.3. Emergency Calling . . . . . . . . . . . . . . . . . . . . 30
6. Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 6.4. Combination of Services . . . . . . . . . . . . . . . . . 32
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 36 7. Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 36 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 37
9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 36 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 37
9.1. Normative References . . . . . . . . . . . . . . . . . . . 36 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 37
9.2. Informative References . . . . . . . . . . . . . . . . . . 36 10.1. Normative References . . . . . . . . . . . . . . . . . . . 37
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 38 10.2. Informative References . . . . . . . . . . . . . . . . . . 37
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 39
1. Introduction 1. Introduction
Location-based services (applications that require information about Location-based services (applications that require information about
the geographic location of an individual or device) are becoming the geographic location of an individual or device) are becoming
increasingly common on the Internet. Navigation and direction increasingly common on the Internet. Navigation and direction
services, emergency services, friend finders, management of equipment services, emergency services, friend finders, management of equipment
in the field and many other applications require geographic location in the field and many other applications require geographic location
information about Internet hosts, their users, and other related information about Internet hosts, their users, and other related
entities. As the accuracy of location information improves and the entities. As the accuracy of location information improves and the
skipping to change at page 5, line 16 skipping to change at page 5, line 16
those preferences will be honored necessarily increases. In those preferences will be honored necessarily increases. In
particular, no recipient of the location information can disavow particular, no recipient of the location information can disavow
knowledge of users' preferences for how their location may be used. knowledge of users' preferences for how their location may be used.
The binding of privacy rules to location information can convey The binding of privacy rules to location information can convey
users' desire for and expectations of privacy, which in turn helps to users' desire for and expectations of privacy, which in turn helps to
bolster social and legal systems' protection of those expectations. bolster social and legal systems' protection of those expectations.
Binding of usage rules to sensitive information is a common way of Binding of usage rules to sensitive information is a common way of
protecting information. Several emerging schemes for expressing protecting information. Several emerging schemes for expressing
copyright information provide for rules to be transmitted together copyright information provide for rules to be transmitted together
with copyrighted works. The Creative Commons [21] model is the most with copyrighted works. The Creative Commons [28] model is the most
prominent example, allowing an owner of a work to set four types of prominent example, allowing an owner of a work to set four types of
rules ("Attribution," "Noncommercial," "No Derivative Works" and rules ("Attribution," "Noncommercial," "No Derivative Works" and
"ShareAlike") governing the subsequent use of the work. After the "ShareAlike") governing the subsequent use of the work. After the
author sets these rules, the rules are conveyed together with the author sets these rules, the rules are conveyed together with the
work itself, so that every recipient is aware of the copyright terms. work itself, so that every recipient is aware of the copyright terms.
Classification systems for controlling sensitive documents within an Classification systems for controlling sensitive documents within an
organization are another example. In these systems, when a document organization are another example. In these systems, when a document
is created, it is marked with a classification such as "SECRET" or is created, it is marked with a classification such as "SECRET" or
"PROPRIETARY." Each recipient of the document knows from this "PROPRIETARY." Each recipient of the document knows from this
marking that the document should only be shared with other people who marking that the document should only be shared with other people who
are authorized to access documents with that marking. Classification are authorized to access documents with that marking. Classification
markings can also convey other sorts of rules, such as a markings can also convey other sorts of rules, such as a
specification for how long the marking is valid (a declassification specification for how long the marking is valid (a declassification
date). The United States Department of Defense guidelines for date). The United States Department of Defense guidelines for
classification [4] provides one example. classification [4] provide one example.
1.2. Location-Specific Privacy Risks 1.2. Location-Specific Privacy Risks
While location-based services raise some privacy concerns that are While location-based services raise some privacy concerns that are
common to all forms of personal information, many of them are common to all forms of personal information, many of them are
heightened and others are uniquely applicable in the context of heightened and others are uniquely applicable in the context of
location information. location information.
Location information is frequently generated on or by mobile devices. Location information is frequently generated on or by mobile devices.
Because individuals often carry their mobile devices with them, Because individuals often carry their mobile devices with them,
skipping to change at page 7, line 9 skipping to change at page 7, line 9
information. information.
Geopriv does not, by itself, provide technical means through which it Geopriv does not, by itself, provide technical means through which it
can be guaranteed that users' location privacy rules will be honored can be guaranteed that users' location privacy rules will be honored
by recipients. The privacy protections in the Geopriv architecture by recipients. The privacy protections in the Geopriv architecture
are largely provided by virtue of the fact that recipients of are largely provided by virtue of the fact that recipients of
location are informed of relevant privacy rules, and are expected to location are informed of relevant privacy rules, and are expected to
only use location in accordance with those rules. The distributed only use location in accordance with those rules. The distributed
nature of the architecture inherently limits the degree to which nature of the architecture inherently limits the degree to which
compliance can be guaranteed and verified by technical means. compliance can be guaranteed and verified by technical means.
Section 4 describes how some security mechanisms can address this to Section 5 describes how some security mechanisms can address this to
a limited extent. a limited extent.
By binding privacy rules to location information, however, Geopriv By binding privacy rules to location information, however, Geopriv
provides valuable information about users' privacy preferences, so provides valuable information about users' privacy preferences, so
that non-technical forces such as legal contracts, governmental that non-technical forces such as legal contracts, governmental
consumer protection authorities, and marketplace feedback can better consumer protection authorities, and marketplace feedback can better
enforce those privacy preferences. If a commercial recipient of enforce those privacy preferences. If a commercial recipient of
location information, for example, violates the location rules bound location information, for example, violates the location rules bound
to the information, the recipient can in a growing number of to the information, the recipient can in a growing number of
countries be charged with violating consumer or data protection laws. countries be charged with violating consumer or data protection laws.
In the absence of a binding of rules with location information, In the absence of a binding of rules with location information,
consumer protection authorities would be less able to protect consumer protection authorities would be less able to protect
consumers whose location information has been abused. individuals whose location information has been abused.
2. Overview of the Architecture 2. Terminology Conventions
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [1].
3. Overview of the Architecture
This section provides an overview of the Geopriv architecture for the This section provides an overview of the Geopriv architecture for the
secure and private distribution of location information on the secure and private distribution of location information on the
Internet. We describe the three phases of the "location life cycle" Internet. We describe the three phases of the "location life cycle"
-- positioning, distribution and use -- and discuss how the -- positioning, distribution and use -- and discuss how the
components of the architecture fit within each phase. The next components of the architecture fit within each phase. The next
section provides additional detail about how each phase can be section provides additional detail about how each phase can be
achieved in a private and secure manner. achieved in a private and secure manner.
The risks discussed in the previous section all arise from The risks discussed in the previous section all arise from
skipping to change at page 8, line 28 skipping to change at page 8, line 35
support for the application of privacy rules. For example, support for the application of privacy rules. For example,
authentication mechanisms validate the identities of entities authentication mechanisms validate the identities of entities
requesting location (so that authorization and access-control requesting location (so that authorization and access-control
policies can be applied), and confidentiality mechanisms protect policies can be applied), and confidentiality mechanisms protect
location information en route between privacy-preserving entities. location information en route between privacy-preserving entities.
Security mechanisms can also provide assurances that are outside the Security mechanisms can also provide assurances that are outside the
purview of privacy by, for example, assuring location recipients that purview of privacy by, for example, assuring location recipients that
location information has been faithfully transmitted to them by its location information has been faithfully transmitted to them by its
creator. creator.
2.1. Basic Geopriv Scenario 3.1. Basic Geopriv Scenario
As location information is transmitted among Internet hosts, it goes As location information is transmitted among Internet hosts, it goes
through a "location life-cycle": first, the location is computed through a "location life-cycle": first, the location is computed
based on some external information (positioning), then it is based on some external information (positioning), then it is
transmitted from one host to another (distribution) until finally it transmitted from one host to another (distribution) until finally it
is used by a recipient (use). is used by a recipient (use).
For example, suppose Alice is using a mobile device, she learns of For example, suppose Alice is using a mobile device, she learns of
her location from a wireless location service, and she wishes to her location from a wireless location service, and she wishes to
share her location privately with her friends by way of a presence share her location privately with her friends by way of a presence
skipping to change at page 9, line 47 skipping to change at page 10, line 33
| -------- | | Server | |---->| Friend-1 | | -------- | | Server | |---->| Friend-1 |
| |---Rules--->| |---Rules------>| +----------+ | |---Rules--->| |---Rules------>| +----------+
| Alice | +----------+ | | Alice | +----------+ |
+----------+ | +----------+ |
| +----------+ | +----------+
+---->| Friend-2 | +---->| Friend-2 |
+----------+ +----------+
Figure 1: Basic Geopriv Scenario Figure 1: Basic Geopriv Scenario
2.2. Roles and Data Formats 3.2. Roles and Data Formats
The above example illustrates the six basic roles in the Geopriv The above example illustrates the six basic roles in the Geopriv
architecture: architecture:
Target: An individual or other entity whose location is sought in Target: An individual or other entity whose location is sought in
the Geopriv architecture. In many cases the Target will be the the Geopriv architecture. In many cases the Target will be the
human user of a Device, but it can also be an object such as a human user of a Device, but it can also be an object such as a
vehicle or shipping container to which a Device is attached. In vehicle or shipping container to which a Device is attached. In
some instances the Target will be the Device itself. The Target some instances the Target will be the Device itself. The Target
is the entity whose privacy Geopriv seeks to protect. Alice is is the entity whose privacy Geopriv seeks to protect. Alice is
skipping to change at page 11, line 14 skipping to change at page 11, line 51
Location Recipient (LR): Performs the role of receiving location Location Recipient (LR): Performs the role of receiving location
information. A Location Recipient may ask for location explicitly information. A Location Recipient may ask for location explicitly
(by sending a query to a Location Server), or it may receive (by sending a query to a Location Server), or it may receive
location asynchronously. The presence service, Bob, Friend-1 and location asynchronously. The presence service, Bob, Friend-1 and
Friend-2 are Location Recipients in Figure 1. Friend-2 are Location Recipients in Figure 1.
In general, these roles may or may not be performed by physically In general, these roles may or may not be performed by physically
separate entities, as demonstrated by the entities in Figure 1, many separate entities, as demonstrated by the entities in Figure 1, many
of which perform multiple roles. It is not uncommon for the same of which perform multiple roles. It is not uncommon for the same
entity to perform both the LG and LS roles, or both the LR and LS entity to perform both the Location Generator and Location Server
roles. A single entity may take on multiple roles simply by virtue roles, or both the Location Recipient and Location Server roles. A
of its own capabilities and the permissions provided to it. single entity may take on multiple roles simply by virtue of its own
capabilities and the permissions provided to it.
Although in the above example there is only a single Location Although in the above example there is only a single Location
Generator and a single Rule Maker, in some cases a Location Server Generator and a single Rule Maker, in some cases a Location Server
may receive Location Objects from multiple Location Generators or may receive Location Objects from multiple Location Generators or
Rules from multiple Rule Makers. Likewise, a single Location Rules from multiple Rule Makers. Likewise, a single Location
Generator may publish location information to multiple Location Generator may publish location information to multiple Location
Servers, and a single Location Recipient may receive Location Objects Servers, and a single Location Recipient may receive Location Objects
from multiple Location Servers. from multiple Location Servers.
There is a close relationship between a Target and its Device. The There is a close relationship between a Target and its Device. The
skipping to change at page 11, line 41 skipping to change at page 12, line 30
Geopriv can also be used to convey location information about a Geopriv can also be used to convey location information about a
device that is not directly linked to a single individual or object, device that is not directly linked to a single individual or object,
such as a Device shared by multiple individuals. such as a Device shared by multiple individuals.
Two data formats are necessary within this architecture: Two data formats are necessary within this architecture:
Location Object (LO): An object used to convey location information Location Object (LO): An object used to convey location information
together with Privacy Rules. Geopriv supports both geodetic together with Privacy Rules. Geopriv supports both geodetic
location data (latitude/longitude/altitude/etc.) and civic location data (latitude/longitude/altitude/etc.) and civic
location data (street/city/state/etc.). Either or both types of location data (street/city/state/etc.). Either or both types of
location information may be present in a single LO. Location location information may be present in a single LO (see the
Objects typically include some sort of identifier associated with considerations in [5] for LOs containing multiple locations).
the Target. Location Objects typically include some sort of identifier
associated with the Target.
Privacy Rule: A directive that regulates an entity's activities Privacy Rule: A directive that regulates an entity's activities
with respect to location information, including the collection, with respect to location information, including the collection,
use, disclosure, and retention of the location information. use, disclosure, and retention of the location information.
Privacy Rules describe which entities may obtain location Privacy Rules describe which entities may obtain location
information in what form (access control rules) and how location information in what form (access control rules) and how location
information may be used by an entity (usage rules). information may be used by an entity (usage rules).
The whole example, using Geopriv roles and formats, is illustrated in The whole example, using Geopriv roles and formats, is illustrated in
the following figure: the following figure:
skipping to change at page 12, line 32 skipping to change at page 13, line 32
|Device |--------------->| LR |---------------+---->| LR | |Device |--------------->| LR |---------------+---->| LR |
| RM | LO | LS | LO | +----+ | RM | LO | LS | LO | +----+
| LS | +----+ | | LS | +----+ |
+-------+ | +-------+ |
| +----+ | +----+
+---->| LR | +---->| LR |
+----+ +----+
Figure 2: Basic Geopriv Scenario Figure 2: Basic Geopriv Scenario
3. The Location Life-Cycle 4. The Location Life-Cycle
The previous section gave an example of how an individual's location The previous section gave an example of how an individual's location
can be distributed through the Internet. In general, the location can be distributed through the Internet. In general, the location
life-cycle breaks down into three phases: life-cycle breaks down into three phases:
1. Positioning: A Location Generator determines the Device's 1. Positioning: A Location Generator determines the Device's
location. location.
2. Distribution: Location Servers send location to Location 2. Distribution: Location Servers send location to Location
Recipients, which may in turn act as Location Servers and further Recipients, which may in turn act as Location Servers and further
skipping to change at page 13, line 26 skipping to change at page 14, line 26
|Location | Location | Location |+ LO |Location | |Location | Location | Location |+ LO |Location |
|Generator |--------------->| Server(s)||-------------->|Recipient | |Generator |--------------->| Server(s)||-------------->|Recipient |
| | | || | | | | | || | |
+----------+ +----------+| +----------+ +----------+ +----------+| +----------+
+----------+ +----------+
<-------------------------><---------------------------><-----------> <-------------------------><---------------------------><----------->
Positioning Distribution Use Positioning Distribution Use
Figure 3: Location Life-Cycle Figure 3: Location Life-Cycle
3.1. Positioning 4.1. Positioning
Positioning is the process by which the physical location of the Positioning is the process by which the physical location of the
Device is computed, based on some observations about the Device's Device is computed, based on some observations about the Device's
situation in the physical world. (This process goes by several other situation in the physical world. (This process goes by several other
names, including Location Determination or Sighting.) The input to names, including Location Determination or Sighting.) The input to
the positioning process is some information about the Device, and the the positioning process is some information about the Device, and the
outcome is that the Location Generator knows the location of the outcome is that the LG knows the location of the Device.
Device.
In this section, we give a brief taxonomy of current positioning In this section, we give a brief taxonomy of current positioning
systems, their requirements for protocol support, and the privacy and systems, their requirements for protocol support, and the privacy and
security requirements for positioning. security requirements for positioning.
3.1.1. Determination Mechanisms and Protocols 4.1.1. Determination Mechanisms and Protocols
While the specific positioning mechanisms that can be applied for a While the specific positioning mechanisms that can be applied for a
given Device are strongly dependent on the physical situation and given Device are strongly dependent on the physical situation and
capabilities of the Device, these mechanisms generally fall into the capabilities of the Device, these mechanisms generally fall into the
three categories described in detail below: three categories described in detail below:
o Device-based o Device-based
o Network-based o Network-based
o Network-assisted
o Network-assisted
As suggested by the above names, a positioning scheme can rely on the As suggested by the above names, a positioning scheme can rely on the
Device, an Internet-accessible resource (not necessarily a network Device, an Internet-accessible resource (not necessarily a network
operator), or a combination of the two. For a given scheme, the operator), or a combination of the two. For a given scheme, the
nature of this reliance will dictate the protocol mechanisms needed nature of this reliance will dictate the protocol mechanisms needed
to support it. to support it.
With Device-based positioning mechanisms, the Device is capable of With Device-based positioning mechanisms, the Device is capable of
determining its location by itself. This is the case for manually- determining its location by itself. This is the case for manually-
entered location or for (unassisted) satellite-based positioning entered location or for (unassisted) satellite-based positioning
(using a Global Navigation Satellite System, or GNSS). In these (using a Global Navigation Satellite System, or GNSS). In these
cases, the Device acts as its own Location Generator, and there are cases, the Device acts as its own LG, and there are no protocols
no protocols required to support positioning (since no information required to support positioning (since no information needs to be
needs to be communicated). communicated).
In network-based positioning schemes, an external Location Generator In network-based positioning schemes, an external LG (an Internet
(an Internet host other than the Device) has access to sufficient host other than the Device) has access to sufficient information
information about the Device, through out-of-band channels, to about the Device, through out-of-band channels, to establish the
establish the position of the Device. The most common examples of position of the Device. The most common examples of this type of LG
this type of LG are entities that have a physical relationship to the are entities that have a physical relationship to the Device (such as
Device (such as ISPs). In wired networks, wiremap-based location is ISPs). In wired networks, wiremap-based location is a network-based
a network-based technique; in wireless networks, timing and signal- technique; in wireless networks, timing and signal-strength based
strength based techniques that use measurements from base stations techniques that use measurements from base stations are considered to
are considered to be network-based. Large-scale IP-to-geo databases be network-based. Large-scale IP-to-geo databases (for example,
(for example, those based on WHOIS data or latency measurements) are those based on WHOIS data or latency measurements) are also
also considered to be network-based positioning mechanisms. considered to be network-based positioning mechanisms.
For network-based positioning as for Device-based, no protocols are For network-based positioning as for Device-based, no protocols are
strictly necessary to support positioning, since positioning strictly necessary to support positioning, since positioning
information is collected outside of the location distribution system information is collected outside of the location distribution system
(at lower layers of the network stack, for example). This does not (at lower layers of the network stack, for example). This does not
rule out the use of other Internet protocols (like SNMP) to collect rule out the use of other Internet protocols (like SNMP) to collect
inputs to the positioning process. Rather, since these inputs can inputs to the positioning process. Rather, since these inputs can
only be used by certain Location Generators to determine location, only be used by certain LGs to determine location, they are not
they are not controlled as private information. Network-based controlled as private information. Network-based positioning often
positioning often provides location to protocols by which the network provides location to protocols by which the network informs a Device
informs a Device of its own location (these are known as Location of its own location (these are known as Location Configuration
Configuration Protocols, see Section 3.2.2 for further discussion). Protocols, see Section 4.2.2 for further discussion).
Network-assisted systems account for the greatest number and Network-assisted systems account for the greatest number and
diversity of positioning schemes. In these systems, the work of diversity of positioning schemes. In these systems, the work of
positioning is divided between the Device and an external Location positioning is divided between the Device and an external LG via some
Generator via some communication (possibly over the Internet), communication (possibly over the Internet), typically in one of two
typically in one of two ways: ways:
o The Device provides measurements to the LG o The Device provides measurements to the LG
o The LG provides assistance data to the Device
o The LG provides assistance data to the Device
"Measurements" are understood to be observations about the Device's "Measurements" are understood to be observations about the Device's
environment, ranging from wireless signal strengths to the MAC environment, ranging from wireless signal strengths to the MAC
address of a first-hop router. "Assistance" is the complement to address of a first-hop router. "Assistance" is the complement to
measurement, namely the information that enables the computation of measurement, namely the positioning information that enables the
location based on measurements. A set of wireless base station computation of location based on measurements. A set of wireless
locations (or wireless calibration information) would be an base station locations (or wireless calibration information) would be
assistance datum, as would be a table that maps routers to buildings an assistance datum, as would be a table that maps routers to
in a corporate campus. buildings in a corporate campus.
For example, wireless and wired networks can serve as the basis for For example, wireless and wired networks can serve as the basis for
network-assisted positioning. In several current 802.11 positioning network-assisted positioning. In several current 802.11 positioning
systems, the Device sends measurements (e.g., MAC addresses and systems, the Device sends measurements (e.g., MAC addresses and
signal strengths) to a Location Generator, and the Location Generator signal strengths) to an LG, and the LG returns a location to the
returns a location to the client. In wired networks, the Device can client. In wired networks, the Device can send its MAC address to
send its MAC address to the Location Generator, which can query the the LG, which can query the MAC-layer infrastructure to determine the
MAC-layer infrastructure to determine the switch and port to which switch and port to which that MAC address is connected, then query a
that MAC address is connected, then query a wire map to determine the wire map to determine the location at which the wire connected to
location at which the wire connected to that port terminates. that port terminates.
As an aside, the common phrase "assisted GPS" ("assisted GNSS" more As an aside, the common phrase "assisted GPS" ("assisted GNSS" more
broadly) actually encompasses techniques that transmit both broadly) actually encompasses techniques that transmit both
measurements and assistance data. Systems in which the Device measurements and assistance data. Systems in which the Device
provides the Location Generator with GNSS measurements are provides the LG with GNSS measurements are measurement-based, while
measurement-based, while those in which the assistance server provide those in which the assistance server provide ephemeris or alamanac
ephemeris or alamanac data are assistance-based in the above data are assistance-based in the above terminology. (Those familiar
terminology. (Those familiar with GNSS positioning will note that with GNSS positioning will note that there are of course cases in
there are of course cases in which both of these interactions occur which both of these interactions occur within a single location
within a single location determination protocol, so the categories determination protocol, so the categories are not mutually
are not mutually exclusive.) exclusive.)
Naturally, the exchange of measurement or positioning data between Naturally, the exchange of measurement or positioning data between
the Device and the LG requires a protocol over which the information the Device and the LG requires a protocol over which the information
is carried. The structure of this protocol will depend on which of is carried. The structure of this protocol will depend on which of
the two patterns a network-assisted scheme follows. Conversely, the the two patterns a network-assisted scheme follows. Conversely, the
structure of the protocol will determine which of the two parties structure of the protocol will determine which of the two parties
(the Device, the LG, or both) is aware of the Device's location at (the Device, the LG, or both) is aware of the Device's location at
the end of the protocol interaction. the end of the protocol interaction.
3.1.2. Privacy Considerations for Positioning 4.1.2. Privacy Considerations for Positioning
Positioning is the first point at which location may be associated Positioning is the first point at which location may be associated
with a particular Target's identity. Local identifiers, unlinked with a particular Target's identity. Local identifiers, unlinked
pseudonyms, or private identifiers that are not linked to the real pseudonyms, or private identifiers that are not linked to the real
identity of the Target should be used as forms of identity whenever identity of the Target should be used as forms of identity whenever
possible. This provides privacy protection by disassociating the possible. This provides privacy protection by disassociating the
location from the Target's identity before it is distributed. location from the Target's identity before it is distributed.
At the conclusion of the positioning process, the entity acting as At the conclusion of the positioning process, the entity acting as
the LG has the Device's location (if the Device is performing the LG the LG has the Device's location (if the Device is performing the LG
role, then they both have it). If the entity acting as the LG also role, then they both have it). If the entity acting as the LG also
performs the role of LS, the privacy considerations in Section 3.2.4 performs the role of LS, the privacy considerations in Section 4.2.4
apply. apply.
In some deployment scenarios, positioning functions and distribution In some deployment scenarios, positioning functions and distribution
functions may need to be provided by separate entities, in which case functions may need to be provided by separate entities, in which case
the LG and LS roles will not be performed by the same entity. In the LG and LS roles will not be performed by the same entity. In
this situation, the LG acts as a "dumb," non-privacy-aware this situation, the LG acts as a "dumb," non-privacy-aware
positioning resource, and the LS provides the privacy logic necessary positioning resource, and the LS provides the privacy logic necessary
to support distribution (possibly with multiple LSes using the same to support distribution (possibly with multiple LSes using the same
LG). In order to allow the privacy-unaware LG to distribute location LG). In order to allow the privacy-unaware LG to distribute location
to these LSes while maintaining privacy, the relationship between the to these LSes while maintaining privacy, the relationship between the
LG and its set of LSes MUST be tightly constrained, effectively LG and its set of LSes MUST be tightly constrained, effectively
"hard-wired." That is, the LG MUST only provide location to a small "hard-wired." That is, the LG MUST only provide location to a small
fixed set of LSes, and each of these LSes MUST comply with the fixed set of LSes, and each of these LSes MUST comply with the
requirements of Section 3.2.4. requirements of Section 4.2.4.
3.1.3. Security Considerations for Positioning 4.1.3. Security Considerations for Positioning
Manipulation of the positioning process can expose location through Manipulation of the positioning process can expose location through
two mechanisms: two mechanisms:
1) A third party could guess or derive measurements about a specific 1) A third party could guess or derive measurements about a specific
device and use them to get the location of that Device. To mitigate device and use them to get the location of that Device. To mitigate
this risk, the LG should be able to authenticate and authorize this risk, the LG SHOULD be able to authenticate and authorize
devices providing measurements and, if possible, verify that the devices providing measurements and, if possible, verify that the
presented measurements are likely to be the actual physical values presented measurements are likely to be the actual physical values
measured by that client. These security procedures rely on the type measured by that client. These security procedures rely on the type
of positioning being done, and may not be technically feasible in all of positioning being done, and may not be technically feasible in all
cases. cases.
2) By eavesdropping, a third party may be able to obtain measurements 2) By eavesdropping, a third party may be able to obtain measurements
sent by the Device itself that indicate the rough position of the sent by the Device itself that indicate the rough position of the
Device. To mitigate this risk, protocols used for positioning must Device. To mitigate this risk, protocols used for positioning MUST
provide confidentiality and integrity protections in order to prevent provide confidentiality and integrity protections in order to prevent
observation and modification of transmitted positioning data while en observation and modification of transmitted positioning data while en
route between the Target and the LG. route between the Target and the LG.
If a Location Generator or a Target chooses to act as a Location If an LG or a Target chooses to act as an LS, it inherits the
Server, it inherits the security requirements for an LS, described in security requirements for an LS, described in Section 4.2.5.
Section 3.2.5.
3.2. Location Distribution 4.2. Location Distribution
When an entity receives location (from an LG or an LS) and When an entity receives location (from an LG or an LS) and
redistributes it to other entities, it acts as a Location Server. redistributes it to other entities, it acts as an LS. Location
Distribution is the process by which one or more LSes provide LOs to
Location Distribution is the process by which one or more Location LRs in a privacy-preserving manner.
Servers provide LOs to Location Recipients in a privacy-preserving
manner.
The role of a Location Server is thus two-fold: First, it must The role of an LS is thus two-fold: First, it must collect location
collect location information and Rules that control access to that information and Rules that control access to that information. Rules
information. Rules can be communicated within a Location Object, can be communicated within an LO, within a protocol that carries LOs,
within a protocol that carries LOs, or through a separate protocol or through a separate protocol that carries Rules. Second, the LS
that carries Rules. Second, the Location Server must process must process requests for location and apply the Rules to these
requests for location and apply the Rules to these requests in order requests in order to determine whether it is authorized to fulfill
to determine whether it is authorized to fulfill them by returning them by returning location.
location information.
A Location Server thus has at least two types of interactions with An LS thus has at least two types of interactions with other hosts,
other hosts, namely receiving and sending Location Objects. An LS namely receiving and sending LOs. An LS may optionally implement a
may optionally implement a third interaction, allowing Rule Makers to third interaction, allowing Rule Makers to provision it with Rules.
provision it with Rules. The distinction between these two cases is The distinction between these two cases is important in practice,
important in practice, because it determines whether the LS has a because it determines whether the LS has a direct relationship with a
direct relationship with a Rule Maker: An LS that accepts Rules Rule Maker: An LS that accepts Rules directly from a Rule Maker has
directly from a Rule Maker has such a relationship, while an LS that such a relationship, while an LS that acquires all its Rules through
acquires all its Rules through LOs does not. LOs does not.
3.2.1. Privacy Rules 4.2.1. Privacy Rules
Privacy Rules are the central mechanism in Geopriv for maintaining a Privacy Rules are the central mechanism in Geopriv for maintaining a
Target's privacy, because they provide a recipient of a LO (an LS or Target's privacy, because they provide a recipient of an LO (an LS or
LR) with information on how the LO may be used. LR) with information on how the LO may be used.
Throughout the Geopriv architecture, Privacy Rules are communicated Throughout the Geopriv architecture, Privacy Rules are communicated
in rules languages with a defined syntax and semantics. For example, in rules languages with a defined syntax and semantics. For example,
the Common Policy rules language has been defined [5] to provide a the Common Policy rules language has been defined [6] to provide a
framework for broad-based rule specifications. Geopriv Policy [6] framework for broad-based rule specifications. Geopriv Policy [7]
defines a language for creating location-specific rules. XCAP [7] defines a language for creating location-specific rules. XCAP [8]
can be used as a protocol to install rules in both of these formats. can be used as a protocol to install rules in both of these formats.
Privacy Rules follow a default-deny pattern: an empty set of Rules Privacy Rules follow a default-deny pattern: an empty set of Rules
implies that all requests for location should be denied (other than implies that all requests for location should be denied (other than
requests made by the Target itself), with each Rule added to the set requests made by the Target itself), with each Rule added to the set
granting a specific permission. Adding a Rule to a set can never granting a specific permission. Adding a Rule can only augment
reduce existing permissions; it can only augment them. privacy protections because all Rules are positive grants of
permission.
The following are examples of Privacy Rules governing location The following are examples of Privacy Rules governing location
distribution: distribution:
o Retransmit location when requested from example.com o Retransmit location when requested from example.com
o Retransmit only city and country o Retransmit only city and country
o Retransmit location with no less than a 100 meter radius of o Retransmit location with no less than a 100 meter radius of
uncertainty uncertainty
o Retransmit location only for the next two weeks o Retransmit location only for the next two weeks
Location Servers enforce Privacy Rules in two ways: by denying LSes enforce Privacy Rules in two ways: by denying requests for
requests for location, or by transforming the location information location, or by transforming the location information before
before retransmitting it. retransmitting it.
Location Servers may also receive Rules governing location retention, LSes may also receive Rules governing location retention, such as
such as "Retain location only for 48 hours." Such Rules are simply "Retain location only for 48 hours." Such Rules are simply
directives about how long the Target's location information can be directives about how long the Target's location information can be
retained. retained.
Privacy Rules can govern the behavior of both Location Servers and Privacy Rules can govern the behavior of both LSes and LRs. Rules
Location Recipients. Rules that direct Location Servers about how to that direct LSes about how to treat a Target's location information
treat a Target's location information are known as Local Rules. are known as Local Rules. Local Rules are used internally by the LS
Local Rules are used internally by the Location Server to handle to handle requests from LRs. They are not distributed to LRs.
requests from Location Recipients. They are not distributed to
Location Recipients.
Forwarded Rules, on the other hand, travel inside LOs and direct Forwarded Rules, on the other hand, travel inside LOs and direct LSes
Location Servers and Location Recipients about how to handle the and LRs about how to handle the location information they receive.
location information they receive. Because the Rules themselves may Because the Rules themselves may reveal potentially sensitive
reveal potentially sensitive information about the Target, only the information about the Target, only the minimal subset of Forwarded
minimal subset of Forwarded Rules necessary to handle the LO is Rules necessary to handle the LO is distributed.
distributed.
An example can illustrate the interaction between Local Rules and An example can illustrate the interaction between Local Rules and
Forwarded Rules. Suppose Alice provides the following Local Rules to Forwarded Rules. Suppose Alice provides the following Local Rules to
a Location Server: an LS:
o The LS may retransmit Alice's precise location to Bob, who in turn o The LS may retransmit Alice's precise location to Bob, who in turn
is permitted to retain the location information for one month is permitted to retain the location information for one month
o The LS may retransmit Alice's city, state, and country to Steve, o The LS may retransmit Alice's city, state, and country to Steve,
who in turn is permitted to retain the location information for who in turn is permitted to retain the location information for
one hour one hour
o The LS may retransmit Alice's country to a photo-sharing website, o The LS may retransmit Alice's country to a photo-sharing website,
which in turn is permitted to retain the location information for which in turn is permitted to retain the location information for
one year and retransmit it to any requesters one year and retransmit it to any requesters
When Steve asks for Alice's location, the Location Server can When Steve asks for Alice's location, the LS can transmit to Steve
transmit to Steve the limited location information (city, state, and the limited location information (city, state, and country) along
country) along with Forwarded Rules instructing Steve to (a) not with Forwarded Rules instructing Steve to (a) not further retransmit
further retransmit Alice's location information, and (b) only retain Alice's location information, and (b) only retain the location
the location information for one hour. By only sending these information for one hour. By only sending these specifically
specifically applicable Forwarded Rules to Steve (as opposed to the applicable Forwarded Rules to Steve (as opposed to the full set of
full set of Local Rules), the LS is protecting Alice's privacy by not Local Rules), the LS is protecting Alice's privacy by not disclosing
disclosing to Steve that (for example) Alice allows Bob to obtain to Steve that (for example) Alice allows Bob to obtain more precise
more precise location information than Alice allows Steve to receive. location information than Alice allows Steve to receive.
Geopriv is designed to be usable even by devices with constrained Geopriv is designed to be usable even by devices with constrained
processing capabilities. To ensure that Forwarded Rules can be processing capabilities. To ensure that Forwarded Rules can be
processed on constrained devices, LOs are required to carry only a processed on constrained devices, LOs are required to carry only a
limited set of Forwarded Rules, with an option to reference a more limited set of Forwarded Rules, with an option to reference a more
robust set of external Rules. The limited Rule set covers two robust set of external Rules. The limited Rule set covers two
privacy aspects: how long the Target's location may be retained privacy aspects: how long the Target's location may be retained
("Retention"), and whether or not the Target's location may be ("Retention"), and whether or not the Target's location may be
retransmitted ("Retransmission"). A LO may contain a pointer to more retransmitted ("Retransmission"). A LO may contain a pointer to more
robust Rules, such as those shown in the set of four Rules at the robust Rules, such as those shown in the set of four Rules at the
beginning of this section. beginning of this section.
3.2.2. Location Configuration 4.2.2. Location Configuration
Some performing the Location Generator role are designed only to Some entities performing the LG role are designed only to provide
provide Targets with their own locations (as opposed to distributing Targets with their own locations (as opposed to distributing a
a Target's location to others). The process of providing a Target Target's location to others). The process of providing a Target with
with its own location is known within Geopriv as Location its own location is known within Geopriv as Location Configuration.
Configuration. The term Location Information Server (LIS) is often The term Location Information Server (LIS) is often used to describe
used to describe the entity that performs this function (although a the entity that performs this function (although a LIS may also
LIS may also perform other functions, such as providing a Target's perform other functions, such as providing a Target's location to
location to other entities). other entities).
A Location Configuration Protocol (LCP) [8] is one mechanism that can A Location Configuration Protocol (LCP) [9] is one mechanism that can
be used by a Device to discover its own location from a LIS. LCPs be used by a Device to discover its own location from a LIS. LCPs
provide functions in the way they obtain, transport and deliver provide functions in the way they obtain, transport and deliver
location requests and responses between a LIS and a Device such that location requests and responses between a LIS and a Device such that
the LIS can trust that the location requests and responses handled the LIS can trust that the location requests and responses handled
via the LCP are in fact from/to the Target. Several LCPs have been via the LCP are in fact from/to the Target. Several LCPs have been
developed within Geopriv [9][10][11][12]. developed within Geopriv [10][11][12][13].
A LIS whose sole purpose is to perform Location Configuration need A LIS whose sole purpose is to perform Location Configuration need
only follow a simple privacy-preserving policy: transmit a Target's only follow a simple privacy-preserving policy: transmit a Target's
location only to the Target itself. This is known as the "LCP location only to the Target itself. This is known as the "LCP
policy." policy."
Importantly, if an LS is also serving in the role of LG and it has Importantly, if an LS is also serving in the role of LG and it has
not been provisioned with Privacy Rules for a particular Target, it not been provisioned with Privacy Rules for a particular Target, it
MUST follow the LCP policy, whether it is a LIS or not. In the MUST follow the LCP policy, whether it is a LIS or not. In the
positioning phase, an entity serving the roles of both LG and LS that positioning phase, an entity serving the roles of both LG and LS that
has not received Privacy Rules must follow this policy. The same is has not received Privacy Rules must follow this policy. The same is
true for any LS in the distribution phase. true for any LS in the distribution phase.
3.2.3. Location References 4.2.3. Location References
The location distribution process occurs through a series of The location distribution process occurs through a series of
transmissions of Location Objects: transmissions of location "by transmissions of LOs: transmissions of location "by value." Location
value." Location "by value" can be expressed in terms of geodetic "by value" can be expressed in terms of geodetic location data
location data (latitude/longitude/altitude/etc.) and civic location (latitude/longitude/altitude/etc.) and civic location data (street/
data (street/city/state/etc.). city/state/etc.).
Location can also be distributed "by reference," where a reference is Location can also be distributed "by reference," where a reference is
represented by a URI that can be dereferenced to obtain the LO. This represented by a URI that can be dereferenced to obtain the LO. This
document summarizes the properties of location-by-reference that are document summarizes the properties of location-by-reference that are
discussed at length in [13]. discussed at length in [14].
Distribution of location by reference (distribution of location URIs) Distribution of location by reference (distribution of location URIs)
offer several benefits. Location URIs are a more compact way of offer several benefits. Location URIs are a more compact way of
transmitting location, since URIs are usually smaller than LOs. A transmitting location, since URIs are usually smaller than LOs. A
recipient of location can make multiple requests to a URI over time recipient of location can make multiple requests to a URI over time
to receive updated location (if the URI is configured to provide to receive updated location (if the URI is configured to provide
fresh location rather than a single "snapshot"). fresh location rather than a single "snapshot").
From a positioning perspective, location by reference can offer the From a positioning perspective, location by reference can offer the
additional benefit of "just in time" positioning. If location is additional benefit of "just in time" positioning. If location is
distributed by reference, an entity acting as a combined LG/LS only distributed by reference, an entity acting as a combined LG/LS only
needs to perform positioning operations when a recipient dereferences needs to perform positioning operations when a recipient dereferences
a previously distributed URI. a previously distributed URI.
From a privacy perspective, distributing location as a URI instead of From a privacy perspective, distributing location as a URI instead of
as a Location Object can help protect privacy by forcing each as an LO can help protect privacy by forcing each recipient of the
recipient of the location to request location from the referenced LS, location to request location from the referenced LS, which can then
which can then apply access controls individually to each recipient. apply access controls individually to each recipient. But the
But the benefit provided here is contingent on the LS applying access benefit provided here is contingent on the LS applying access
controls. If the LS does not apply an access control policy to controls. If the LS does not apply an access control policy to
requests for a location URI (in other words, if it enforces the requests for a location URI (in other words, if it enforces the
"possession model" defined in [13]), then transmitting a location URI "possession model" defined in [14]), then transmitting a location URI
presents the same privacy risks as transmitting the Location Object presents the same privacy risks as transmitting the LO itself.
itself. Moreover, the use of location URIs without access controls Moreover, the use of location URIs without access controls can
can introduce additional privacy risks: If URIs predictable, an introduce additional privacy risks: If URIs predictable, an attacker
attacker to whom the URI has not been sent may be able to guess the to whom the URI has not been sent may be able to guess the URI and
URI and use it to obtain the referenced LO. To mitigate this, use it to obtain the referenced LO. To mitigate this, location URIs
location URIs without access controls need to be constructed so that without access controls need to be constructed so that they contain a
they contain a random component with sufficient entropy to make random component with sufficient entropy to make guessing infeasible.
guessing infeasible.
3.2.4. Privacy Considerations for Distribution 4.2.4. Privacy Considerations for Distribution
Location information MUST be accompanied by Rules throughout the Location information MUST be accompanied by Rules throughout the
distribution process. Otherwise, a recipient will not know what uses distribution process. Otherwise, a recipient will not know what uses
are authorized, and will not be able to use the LO. Consequently, are authorized, and will not be able to use the LO. Consequently,
LOs MUST be able to express Rules that convey appropriate LOs MUST be able to express Rules that convey appropriate
authorizations. authorizations.
An LS MUST only accept Rules from authorized Rule Makers. For an LS An LS MUST only accept Rules from authorized Rule Makers. For an LS
that receives Rules exclusively in LOs and has no direct relationship that receives Rules exclusively in LOs and has no direct relationship
with a Rule Maker, this requirement is met by applying the Rules with a Rule Maker, this requirement is met by applying the Rules
provided in a LO to the distribution of that LO. For an LS with a provided in an LO to the distribution of that LO. For an LS with a
direct relationship to a Rule Maker, this requirement means that the direct relationship to a Rule Maker, this requirement means that the
LS MUST be configurable with an RM authorization policy. An LS LS MUST be configurable with an RM authorization policy. An LS
SHOULD define a prescribed set of RMs that may provide Rules for a SHOULD define a prescribed set of RMs that may provide Rules for a
given Target or LO. For example, an LS may only allow the Target to given Target or LO. For example, an LS may only allow the Target to
set Rules for itself, or it might allow an RM to set Rules for set Rules for itself, or it might allow an RM to set Rules for
several Targets (e.g., a parent for children, or a corporate security several Targets (e.g., a parent for children, or a corporate security
officer for employees). officer for employees).
No matter how Rules are provided to an LS, for each LO it receives, No matter how Rules are provided to an LS, for each LO it receives,
it MUST combine all Rules that apply to the LO into a Rule set that it MUST combine all Rules that apply to the LO into a Rule set that
defines which transmissions are authorized, and it MUST transmit defines which transmissions are authorized, and it MUST transmit
location only in ways that are authorized by these Rules. location only in ways that are authorized by these Rules.
An LS that receives Rules exclusively through LOs MUST examine the An LS that receives Rules exclusively through LOs MUST examine the
Rules that accompany a given LO in order to determine how the LS may Rules that accompany a given LO in order to determine how the LS may
use the LO (if any Rules are included by reference, the LS SHOULD use the LO (if any Rules are included by reference, the LS SHOULD
attempt to download them). If the LO includes no Rules that allow attempt to download them). If the LO includes no Rules that allow
the LS to transmit the LO to another entity, then the LS MUST NOT the LS to transmit the LO to another entity, then the LS MUST NOT
transmit the LO. If the LO contains no Rules at all (if it is in a transmit the LO. If the LO contains no Rules at all (if it is in a
format with no Rules syntax, for example), then the LS MUST delete format with no Rules syntax, for example), then the LS MUST delete it
it. (emergency services provide an exception in that Rules can be implicit,
see [15]). If the LO included Rules by reference, but these Rules
were not obtained for any reason, the LS MUST NOT transmit the LO and
MUST delete it.
An LS that receives Rules both directly from one or more Rule Makers An LS that receives Rules both directly from one or more Rule Makers
and through LOs MUST combine the Rules in a given LO with Rules it and through LOs MUST combine the Rules in a given LO with Rules it
has received from the RMs. The strategy the LS uses to combine these has received from the RMs. The strategy the LS uses to combine these
sets of Rules is a matter for local policy, depending on the relative sets of Rules is a matter for local policy, depending on the relative
priority that the LS grants to each source of Rules. Some example priority that the LS grants to each source of Rules. Some example
policies: policies:
Union: A transmission of location is authorized if it is authorized Union: A transmission of location is authorized if it is authorized
by either a rule in the LO or an RM-provided rule. by either a rule in the LO or an RM-provided rule.
Intersection: A transmission of location is authorized if it is Intersection: A transmission of location is authorized if it is
authorized by both a rule in the LO and an RM-provided rule. authorized by both a rule in the LO and an RM-provided rule.
RM Override: A transmission of location is authorized if it is RM Override: A transmission of location is authorized if it is
authorized by an RM-provided rule (regardless of the LO Rules). authorized by an RM-provided rule (regardless of the LO Rules).
LO Override: A transmission of location is authorized if it is LO Override: A transmission of location is authorized if it is
authorized by a LO-provided rule (regardless of the RM Rules). authorized by an LO-provided rule (regardless of the RM Rules).
In general, it is RECOMMENDED that an LS follow the "Intersection" Different policies may be applicable in different scenarios. In
policy, since it grants equal weight to all RMs (including the LO cases where an external RM is more trusted than the source of the LO,
creator). In cases where an external RM is more trusted than the the "RM Override" policy may be suitable (for example, if the
source of the LO, the "RM Override" policy may be more suitable (for external RM is the Target, and the LO is provided by a third party).
example, if the external RM is the Target, and the LO is provided by Conversely, the "LO Override" policy is better suited to cases where
a third party). Conversely, the "LO Override" policy is best suited the LO provider is more trused than the RM (for example, if the RM is
to cases where the LO provider is more trused than the RM (for the user of a mobile device LS and the LO contains Rules from the
example, if the RM is the user of a mobile device LS and the LO RM's parents or corporate security office). The "Intersection"
contains Rules from the RM's parents or corporate security office). policy takes the strictest view of the permission grants, giving
equal weight to all RMs (including the LO creator).
3.2.5. Security Considerations for Distribution Each of these policies will also have different privacy consequences.
Following the "Intersection" policy ensures that the most privacy-
protective subset of all RMs' rules will be followed. The "Union"
policy and both "Override" policies may defy the expectations of any
RM (including, potentially, the Target) whose policy is not followed.
For example, if a Target acting as an RM sets Rules and those Rules
are overridden by the application of a more permissive LO Override
policy that has been set by the Target's parent or employer acting as
an RM, the retransmission or retention of the Target's data may come
as a surprise to the Target. For this reason, it is RECOMMENDED that
LSes provide a way for RMs to be able to find out which policy will
be applied to the distribution of a given LO.
4.2.5. Security Considerations for Distribution
An LS's decisions about how to transmit location are based on the An LS's decisions about how to transmit location are based on the
identities of entities requesting information and other aspects of identities of entities requesting information and other aspects of
requests for location. In order to ensure that these decisions are requests for location. In order to ensure that these decisions are
made properly, the LS needs assurance of the reliability of made properly, the LS needs assurance of the reliability of
information on the identities of the entities with which the LS information on the identities of the entities with which the LS
interacts (including LRs, LSes, and RMs) and other information in the interacts (including LRs, LSes, and RMs) and other information in the
request. request.
Protocols to convey LOs and protocols to convey Rules MUST provide Protocols to convey LOs and protocols to convey Rules MUST provide
information on the identity of the recipient of location and the information on the identity of the recipient of location and the
identity of the RM, respectively. In order to ensure the validity of identity of the RM, respectively. In order to ensure the validity of
this information, these protocols MUST allow for mutual this information, these protocols MUST allow for mutual
authentication of both parties, and MUST provide integrity protection authentication of both parties, and MUST provide integrity protection
for protocol messages. These security features ensure that the LG for protocol messages. These security features ensure that the LG
has sufficient information (and sufficiently reliable information) to has sufficient information (and sufficiently reliable information) to
make privacy decisions. make privacy decisions.
As they travel through the Internet, Location Objects necessarily As they travel through the Internet, LOs necessarily pass through a
pass through a sequence of intermediaries, ranging from layer-2 sequence of intermediaries, ranging from layer-2 switches to IP
switches to IP routers to application-layer proxies and gateways. routers to application-layer proxies and gateways. The ability of an
The ability of an LS to protect privacy by making access control LS to protect privacy by making access control decisions is reduced
decisions is reduced if these intermediaries have access to a if these intermediaries have access to an LO as it travels between
Location Object as it travels between privacy-preserving entities. privacy-preserving entities.
Ideally, Location Objects should be transmitted with confidentiality Ideally, LOs SHOULD be transmitted with confidentiality protection
protection end-to-end between an LS that transmits location and the end-to-end between an LS that transmits location and the LR that
LR that receives it. In some cases, the protocol conveying an LO receives it. In some cases, the protocol conveying an LO provides
provides confidentiality protection as a built-in security solution confidentiality protection as a built-in security solution for its
for its signaling (and potentially its data traffic). In this case, signaling (and potentially its data traffic). In this case, carrying
carrying an unprotected Location Object within such an encrypted an unprotected LOs within such an encrypted channel is sufficient.
channel is sufficient. Many protocols, however, are offering Many protocols, however, are offering communication modes where
communication modes where messages are either unprotected or messages are either unprotected or protected on a hop-by-hop basis
protected on a hop-by-hop basis (for example, between intermediaries (for example, between intermediaries in a store-and-forward
in a store-and-forward protocol). In such a case it is RECOMMENDED protocol). In such a case it is RECOMMENDED that the protocol allows
that the protocol allows for the use of encrypted LOs, or for the for the use of encrypted LOs, or for the transmission of a reference
transmission of a reference to location in place of a LO [13]. to location in place of an LO [14].
3.3. Location Use 4.3. Location Use
The primary privacy requirement of a Location Recipient is to The primary privacy requirement of an LR is to constrain its usage of
constrain its usage of location to the set of uses authorized by the location to the set of uses authorized by the Rules in an LO. If an
Rules in a LO. If an LR only uses a LO in ways that have minimal LR only uses an LO in ways that have minimal privacy impact --
privacy impact -- specifically, if it does not transmit the LO to any specifically, if it does not transmit the LO to any other entity, and
other entity, and does not retain the LO for longer than is required does not retain the LO for longer than is required to complete its
to complete its interaction with the LS -- then no further action is interaction with the LS -- then no further action is necessary for
necessary for the LR to comply with Geopriv requirements. the LR to comply with Geopriv requirements.
As an example of this simplest case, if a Location Recipient (a) As an example of this simplest case, if an LR (a) receives a
receives a location, (b) immediately provides to the Target location, (b) immediately provides to the Target information or a
information or a service based on the location, (c) does not retain service based on the location, (c) does not retain the information,
the information, and (d) does not retransmit the location to any and (d) does not retransmit the location to any other entity, then
other entity, then the LR will comply with any set of Rules that are the LR will comply with any set of Rules that are permissible under
permissible under Geopriv. Thus, a service that, for example, only Geopriv. Thus, a service that, for example, only provides directions
provides directions to the closest bookstore in response to an input to the closest bookstore in response to an input of location, and
of location, and promptly then discards the input location, will be promptly then discards the input location, will be in compliance with
in compliance with any Geopriv Rule set. any Geopriv Rule set.
LRs that make other uses of a LO (e.g., those that store LOs, or send LRs that make other uses of an LO (e.g., those that store LOs, or
them to other service providers to obtain location-based services) send them to other service providers to obtain location-based
MUST meet the requirements below to assure that these uses are services) MUST meet the requirements below to assure that these uses
authorized. are authorized.
3.3.1. Privacy Considerations for Use 4.3.1. Privacy Considerations for Use
The principle privacy requirement for Location Recipients is to The principal privacy requirement for LRs is to follow usage rules.
follow usage rules. When an LR receives a LO, it is REQUIRED to Any LR that wants to retransmit or retain the LO is REQUIRED to
examine the Rules included with that LO. Any usage the LR makes of examine the rules included with that LO. Any usage the LR makes of
the LO MUST be explicitly authorized by these Rules. Since Rules are the LO MUST be explicitly authorized by these Rules. Since Rules are
positive grants of permission, any action not explicitly authorized positive grants of permission, any action not explicitly authorized
is denied by default. is denied by default.
3.3.2. Security Considerations for Use 4.3.2. Security Considerations for Use
Since the Location Recipient role does not involve transmission of Since the LR role does not involve transmission of location, there
location, there are no protocol security considerations required to are no protocol security considerations required to support privacy
support privacy (other than ensuring that data does not leak (other than ensuring that data does not leak unintentionally caused
unintentionally caused by security breaches). by security breaches).
Aside from privacy, Location Recipients often require some assurance Aside from privacy, LRs often require some assurance that an LO is
that a LO is reliable (assurance of the integrity, authenticity, and reliable (assurance of the integrity, authenticity, and validity of
validity of an LO), since LRs use LOs in order to deliver location- an LO), since LRs use LOs in order to deliver location-based
based services. Threats against this reliability and corresponding services. Threats against this reliability and corresponding
mitigations are discussed in the Security Considerations below. mitigations are discussed in the Security Considerations below.
4. Security Considerations 5. Security Considerations
Security considerations related to the privacy of Location Objects Security considerations related to the privacy of LOs are discussed
are discussed throughout this document. In this section we summarize throughout this document. In this section we summarize those
those concerns and consider security risks not related to privacy. concerns and consider security risks not related to privacy.
The life-cycle of a Location Object often consists of a series of The life-cycle of an LO often consists of a series of location
location transmissions. Protocols that carry location can provide transmissions. Protocols that carry location can provide strong
strong assurances, but only for a single segment of the Location assurances, but only for a single segment of the LO's life cycle. In
Object's life cycle. In particular, a protocol can provide integrity particular, a protocol can provide integrity protection and
protection and confidentiality for the data exchanged, and mutual confidentiality for the data exchanged, and mutual authentication of
authentication of the parties involved in the protocol, by using a the parties involved in the protocol, by using a secure transport
secure transport such as IPsec or TLS. such as IPSec [16] or TLS [17].
Additionally, if (1) the protocol provides mutual authentication for Additionally, if (1) the protocol provides mutual authentication for
every segment, and (2) every entity in the location distribution every segment, and (2) every entity in the location distribution
chain exchanges information only with entities with whom it has a chain exchanges information only with entities with whom it has a
trust relationship, entities can transitively obtain assurances trust relationship, entities can transitively obtain assurances
regarding the origin and ultimate destination of the Location Object. regarding the origin and ultimate destination of the LO. Of course,
Of course, direct assurances are always preferred over assurances direct assurances are always preferred over assurances requiring
requiring transitive trust, since they require fewer assumptions. transitive trust, since they require fewer assumptions.
Using protocol mechanisms alone, the entities can receive assurances Using protocol mechanisms alone, the entities can receive assurances
only about a single hop in the distribution chain. For example, only about a single hop in the distribution chain. For example,
suppose that an LR receives location from an LS over an integrity- suppose that an LR receives location from an LS over an integrity-
and confidentiality-protected channel. The LR knows that the and confidentiality-protected channel. The LR knows that the
transmitted LO has not been modified or observed en route. However, transmitted LO has not been modified or observed en route. However,
the assurances provided by the protocol do not guarantee that the the assurances provided by the protocol do not guarantee that the
transmitted LO was not corrupted before it was sent to the LS (by a transmitted LO was not corrupted before it was sent to the LS (by a
previous LS, for example). Likewise, the LR can verify that the LO previous LS, for example). Likewise, the LR can verify that the LO
was transmitted by the LS, but cannot verify the origin of the LO if was transmitted by the LS, but cannot verify the origin of the LO if
it did not originate with the LS. it did not originate with the LS.
Security mechanisms in protocols are thus unable to provide direct Security mechanisms in protocols are thus unable to provide direct
assurances over multiple transmissions of a LO. However, the assurances over multiple transmissions of an LO. However, the
transmission of location "by reference" can be used to effectively transmission of location "by reference" can be used to effectively
turn multi-hop paths into single-hop paths. If the multiple turn multi-hop paths into single-hop paths. If the multiple
transmissions of a LO are replaced by multiple transmissions of a URI transmissions of an LO are replaced by multiple transmissions of a
(a multi-hop dissemination channel), the LO need only traverse a URI (a multi-hop dissemination channel), the LO need only traverse a
single hop, namely the dereference transaction between the LR and the single hop, namely the dereference transaction between the LR and the
dereference server. dereference server. The requirements for securing location passed by
reference [14] are applicable in this case.
The major threats to the security of Location Objects can be grouped The major threats to the security of LOs can be grouped into two
into two categories. First, threats against the integrity and categories. First, threats against the integrity and authenticity of
authenticity of Location Objects can expose entities that rely on LOs can expose entities that rely on LOs. Second, threats against
Location Objects. Second, threats against the confidentiality of the confidentiality of LOs can allow unauthorized access to location
Location Objects can allow unauthorized access to location
information. information.
A Location Object contains four essential types of information: An LO contains four essential types of information: identifiers for
identifiers for the described Target, location information, time- the described Target, location information, time- stamps, and Rules.
stamps, and Rules. By grouping values of these various types By grouping values of these various types together within a single
together within a single structure, a Location Object encodes a set structure, an LO encodes a set of bindings among them. That is, the
of bindings among them. That is, the Location Object asserts that LO asserts that the identified Target was present at the given
the identified Target was present at the given location at the given location at the given time and that the given Rules express the
time and that the given Rules express the Target's desired policy at Target's desired policy at that time for the distribution of his
that time for the distribution of his location. Below, we provide a location. Below, we provide a description of the assurances required
description of the assurances required by each party involved in the by each party involved in the location distribution in order to
location distribution in order to mitigate the possible attacks on mitigate the possible attacks on these bindings.
these bindings.
Rule Maker: The Rule Maker is responsible for creating the Target's Rule Maker: The Rule Maker is responsible for creating the Target's
Privacy Rules and for uploading them to the location servers. The Privacy Rules and for uploading them to the LSes. The primary
primary assurance required by the Rule Maker is that the Target's assurance required by the Rule Maker is that the Target's Privacy
Privacy Rules are correctly associated with the Target's identity Rules are correctly associated with the Target's identity when
when they are conveyed to each location server that handles the they are conveyed to each LS that handles the LO. Ensuring the
Location Object. Ensuring the integrity of the Privacy Rules integrity of the Privacy Rules distributed to the LSes prevents
distributed to the location servers prevents rule-tampering rule-tampering attacks. In many circumstances, the privacy policy
attacks. In many circumstances, the privacy policy of the Target of the Target may itself be sensitive information; in these cases,
may itself be sensitive information; in these cases, the Rule the Rule Maker also requires the assurance that the binding
Maker also requires the assurance that the binding between the between the Target's identity and the Target's Privacy Rules are
Target's identity and the Target's Privacy Rules are not deducible not deducible by anyone other than an authorized LS.
by anyone other than an authorized Location Server.
Location Server: The Location Server is responsible for enforcing Location Server: The Location Server is responsible for enforcing
the Target's Privacy Rules. The first assurance required by the the Target's Privacy Rules. The first assurance required by the
Location Server is that the binding between the Target's Privacy LS is that the binding between the Target's Privacy Rules and the
Rules and the Target's identity is authentic. Authenticating and Target's identity is authentic. Authenticating and authorizing
authorizing the Rule Maker who creates, updates and deletes the the Rule Maker who creates, updates and deletes the Privacy Rules
Privacy Rules prevents rule-tampering attacks. The Location prevents rule-tampering attacks. The LS has to ensure that the
Server has to ensure that the authorization policies are not authorization policies are not exposed to third parties, if so
exposed to third parties, if so desired by the Rule Maker (when desired by the Rule Maker (when the rules themselves are privacy-
the rules themselves are privacy-sensitive). sensitive).
Location Recipient: The Location Recipient is the consumer of the Location Recipient: The Location Recipient is the consumer of the
Location Object. The Location Recipient thus requires assurances LO. The LR thus requires assurances about the authenticity of the
about the authenticity of the bindings between the Target's bindings between the Target's location, the Target's identity and
location, the Target's identity and the time. Ensuring the the time. Ensuring the authenticity of these bindings helps to
authenticity of these bindings helps to prevent various attacks, prevent various attacks, such falsifying the location, modifying
such falsifying the location, modifying the time-stamp, faking the the time-stamp, faking the identity, replaying LOss.
identity, replaying location objects.
Location Generator: The primary assurance required by the Location Location Generator: The primary assurance required by the Location
Generator is that the Location Server to which the Location Object Generator is that the LS to which the LO is initially published is
is initially published is one that is trusted to enforce the one that is trusted to enforce the Target's Privacy Rules.
Target's Privacy Rules. Authenticating the trusted Location Authenticating the trusted LS mitigates the risk of server
Server mitigates the risk of server impersonation attacks. impersonation attacks. Additionally, the LG is responsible for
Additionally, the Location Generator is responsible for the the location determination process, which is also sensible from a
location determination process, which is also security sensible as security perspective because wrong input provided by external
wrong input provided by external entites can lead to undesireable entites can lead to undesireable disclosure or access to location
disclosure or access to location information information. information.
Assurances as to the integrity and confidentiality of a Location Assurances as to the integrity and confidentiality of a Location
Object can be provided directly through the Location Object format. Object can be provided directly through the LO format. RFC 4119 [18]
RFC 4119 provides a description for usage of S/MIME to integrity and provides a description for usage of S/MIME to integrity and
confidentility protection. Although such direct, end-to-end confidentiality protection. Although such direct, end-to-end
assurances are desirable, and these mechanisms should be used assurances are desirable, and these mechanisms should be used
whenever possible, there are many deployment scenarios where directly whenever possible, there are many deployment scenarios where directly
securing a Location Object is impractical. For example, in some securing an LO is impractical. For example, in some deployment
deployment scenarios a direct trust relationship may not exist scenarios a direct trust relationship may not exist between the
between the creator of the Location Object and the recipient. creator of the Location Object and the recipient. Additionally, in a
Additionally, in a scenario where many recipients are authorized to scenario where many recipients are authorized to receive a given LO,
receive a given Location Object, the creator of the Location Object the creator of the LO cannot guarantee end-to-end confidentiality
cannot guarantee end-to-end confidentiality without knowing precisely without knowing precisely which recipient will receive the LO. Many
which recipient will receive the Location Object. Many of these of these cases can, however, be addressed by the usage of a Location-
cases can, however, be addressed by the usage of a Location-by- by-Reference (possibly combined with an LO).
Reference (possibly combined with a location object).
5. Example Scenarios 6. Example Scenarios
This section contains a set of example of how the Geopriv This section contains a set of example of how the Geopriv
architecture can be deployed in practice. These examples are meant architecture can be deployed in practice. These examples are meant
to illustrate key points of the architecture, rather than to form an to illustrate key points of the architecture, rather than to form an
exhaustive set of use cases. exhaustive set of use cases.
For convenience and clarity in these examples, we assume that the For convenience and clarity in these examples, we assume that the
Privacy Rules that a LO carries are equivalent to those in a PIDF-LO Privacy Rules that an LO carries are equivalent to those in a PIDF-LO
Location Object (namely, that the principal Rules that can be set are (namely, that the principal Rules that can be set are limits on the
limits on the retransmission and retention of the LO). While these retransmission and retention of the LO). While these two Rules are
two Rules are the most well-known and important examples, the the most well-known and important examples, the specific types of
specific types of Rules an LS or LR must consider will in general Rules an LS or LR must consider will in general depend on the types
depend on the types of LO it processes. of LO it processes.
5.1. Minimal Scenario 6.1. Minimal Scenario
One of the simplest scenarios in the Geopriv architecture is when a One of the simplest scenarios in the Geopriv architecture is when a
Device determines its own location and uses that LO to request a Device determines its own location and uses that LO to request a
service (e.g., by including the LO in an HTTP POST request or SIP service (e.g., by including the LO in an HTTP POST request [19] or
INVITE message), and the server delivers that service immediately SIP INVITE message [20]), and the server delivers that service
(e.g., in a 200 OK response in HTTP or SIP), without retaining or immediately (e.g., in a 200 OK response in HTTP or SIP), without
retransmitting the Device's location. The Device acts as an LG by retaining or retransmitting the Device's location. The Device acts
using a Device-based positioning algorithm (e.g., manual entry) and as an LG by using a Device-based positioning algorithm (e.g., manual
as a Location Server by interpreting the rule and transmitting the entry) and as an LS by interpreting the rule and transmitting the LO.
LO. The Target acts as a Rule Maker by specifying that the location The Target acts as a Rule Maker by specifying that the location
should be sent to the server. The server acts as a Location should be sent to the server. The server acts as an LR by receiving
Recipient by receiving and using the LO. and using the LO.
In this case, the privacy of location information is maintained in In this case, the privacy of location information is maintained in
two steps: The first step is that location is only transmitted as two steps: The first step is that location is only transmitted as
directed by the single Rule Maker, namely the Target. The second directed by the single Rule Maker, namely the Target. The second
step is simply the fact that the server, as LR, does not do anything step is simply the fact that the server, as LR, does not do anything
that creates a privacy risk -- it does not retain or retransmit that creates a privacy risk -- it does not retain or retransmit
location. Because the server limits its behavior in this way, it location. Because the server limits its behavior in this way, it
does not need to read the Rules in the LO (even though they were does not need to read the Rules in the LO (even though they were
provided) -- no Rule would prevent it from using location in this provided) -- no Rule would prevent it from using location in this
safe manner. safe manner.
skipping to change at page 27, line 37 skipping to change at page 28, line 38
user indication user indication
o Use: Ephemeral web service delivers response without retaining or o Use: Ephemeral web service delivers response without retaining or
retransmitting location retransmitting location
o Key points: o Key points:
* LRs that do not behave in ways that risk privacy are Geopriv- * LRs that do not behave in ways that risk privacy are Geopriv-
compliant by default. No further action is necessary. compliant by default. No further action is necessary.
5.2. Location-based Web Services 6.2. Location-based Web Services
Many location-based services are delivered over the Web, using Many location-based services are delivered over the Web, using
Javascript code to orchestrate a series of HTTP requests for location Javascript code to orchestrate a series of HTTP requests for location
specific information. To support these applications, browser specific information. To support these applications, browser
extensions have been developed that support Device-based positioning extensions have been developed that support Device-based positioning
(manual entry and GPS) and network-assisted positioning (via AGPS, (manual entry and Global Positioning System (GPS)) and network-
and multilateration with 802.11 and cellular signals), exposing assisted positioning (via Assisted GPS (AGPS), and multilateration
position to web pages through Javascript APIs. with 802.11 and cellular signals), exposing location to web pages
through Javascript APIs.
In this scenario, we consider a Target that uses a browser with a In this scenario, we consider a Target that uses a browser with a
network-assisted positioning extension. When the Target uses this network-assisted positioning extension. When the Target uses this
browser to request location-based services from a web page, the browser to request location-based services from a web page, the
browser prompts the user to grant the page permission to access the browser prompts the user to grant the page permission to access the
user's location. If the user grants permission, the browser user's location. If the user grants permission, the browser
extension sends 802.11 signal strength measurements to a positioning extension sends 802.11 signal strength measurements to a positioning
server, which then returns the position of the host. The extension server, which then returns the position of the host. The extension
constructs a Location Object with this location and Rules set by the constructs an LO with this location and Rules set by the user, then
user, then passes the LO to the page through its Javascript API. The passes the LO to the page through its Javascript API. The page then
page then obtains location-relevant information using an obtains location-relevant information using an XMLHttpRequest [21] to
XMLHttpRequest [14] to a server in the same domain as the page and a server in the same domain as the page and renders this information
renders this information to the user. to the user.
At first blush, this scenario seems much more complicated than the At first blush, this scenario seems much more complicated than the
minimal scenario above. However, most of the privacy considerations minimal scenario above. However, most of the privacy considerations
are actually the same. are actually the same.
The positioning phase in this scenario begins when the browser The positioning phase in this scenario begins when the browser
extension contacts the positioning server. The positioning server extension contacts the positioning server. The positioning server
acts as a Location Generator. acts as an LG.
The distribution phase actually occurs entirely within the Target The distribution phase actually occurs entirely within the Target
host. This phase begins when the positioning server, now acting as host. This phase begins when the positioning server, now acting as
LS, follows the LCP policy by providing location only to the Target. LS, follows the LCP policy by providing location only to the Target.
The next hop in distribution occurs when the browser extension (an The next hop in distribution occurs when the browser extension (an
entity under the control of the Target) passes a LO to the web page entity under the control of the Target) passes an LO to the web page
(an entity under the control of its author). In this phase, the (an entity under the control of its author). In this phase, the
browser extension acts as an LS, with the Target as the sole Rule browser extension acts as an LS, with the Target as the sole Rule
Maker; the user interface for rule-making is effectively a protocol Maker; the user interface for rule-making is effectively a protocol
for conveying Rules, and the extension's API effectively defines a a for conveying Rules, and the extension's API effectively defines a
way to communicate LOs and a LO Format. The web site acts as way to communicate LOs and an LO Format. The web site acts as an LR
Location Recipient when the web page accepts the LO. when the web page accepts the LO.
The use phase encompasses the web site's use of the LO. In this The use phase encompasses the web site's use of the LO. In this
context, the phrase "web site" encompasses not only the web page, but context, the phrase "web site" encompasses not only the web page, but
also the dedicated supporting logic behind it. Considering the also the dedicated supporting logic behind it. Considering the
entire web site as a recipient, rather than a single page, it becomes entire web site as a recipient, rather than a single page, it becomes
clear that sending the LO in an XMLHttpRequest to a back-end server clear that sending the LO in an XMLHttpRequest to a back-end server
is like passing it to a separate component of the LR (as opposed to is like passing it to a separate component of the LR (as opposed to
retransmitting it to another entity). Thus, even in this case, where retransmitting it to another entity). Thus, even in this case, where
location-relevant information is obtained from a back-end server, the location-relevant information is obtained from a back-end server, the
LR does not retain or retransmit location, so its behavior is LR does not retain or retransmit location, so its behavior is
skipping to change at page 29, line 39 skipping to change at page 30, line 41
explicit user direction and Rules in an LO explicit user direction and Rules in an LO
* Distribution can occur within a host, between mutually * Distribution can occur within a host, between mutually
untrusting components untrusting components
* Some transmissions of location are actually internal to an LR * Some transmissions of location are actually internal to an LR
* LRs that do things that might be constrained by Rules need to * LRs that do things that might be constrained by Rules need to
verify that these actions are allowed for a particular LO verify that these actions are allowed for a particular LO
5.3. Emergency Calling 6.3. Emergency Calling
Support for emergency calls by Voice-over-IP devices is a critical Support for emergency calls by Voice-over-IP devices is a critical
use case for location information about Internet hosts. The details use case for location information about Internet hosts. The details
of the Internet architecture for emergency calling are described in of the Internet architecture for emergency calling are described in
[15][16]. In this architecture, there are three critical steps in [22][23]. In this architecture, there are three critical steps in
the placement of an emergency call, each involving location the placement of an emergency call, each involving location
information: information:
1. Determine the location of the caller 1. Determine the location of the caller
2. Determine the proper Public Safety Answering Point (PSAP) for the 2. Determine the proper Public Safety Answering Point (PSAP) for the
caller's location caller's location
3. Send a SIP INVITE message (including the caller's location) to 3. Send a SIP INVITE message (including the caller's location) to
the PSAP the PSAP
The first step in an emergency call is to determine the location of The first step in an emergency call is to determine the location of
the caller. This step is the positioning phase of the location life- the caller. This step is the positioning phase of the location life-
cycle. Location is determined by whatever means are available to the cycle. Location is determined by whatever means are available to the
caller's device, or to the network, if this step is being done by a caller's device, or to the network, if this step is being done by a
skipping to change at page 30, line 13 skipping to change at page 31, line 15
caller's location caller's location
3. Send a SIP INVITE message (including the caller's location) to 3. Send a SIP INVITE message (including the caller's location) to
the PSAP the PSAP
The first step in an emergency call is to determine the location of The first step in an emergency call is to determine the location of
the caller. This step is the positioning phase of the location life- the caller. This step is the positioning phase of the location life-
cycle. Location is determined by whatever means are available to the cycle. Location is determined by whatever means are available to the
caller's device, or to the network, if this step is being done by a caller's device, or to the network, if this step is being done by a
proxy. Whichever entity does the positioning (either the caller or a proxy. Whichever entity does the positioning (either the caller or a
proxy) acts as an Location Server, preserving the privacy of location proxy) acts as an LS, preserving the privacy of location information
information by only including it in emergency calls. by only including it in emergency calls.
The second step in an emergency call encompasses location The second step in an emergency call encompasses location
distribution and use. The entity that is routing the emergency call distribution and use. The entity that is routing the emergency call
sends location though the LoST protocol [17] to a mapping server. In sends location though the LoST protocol [15] to a mapping server. In
this role, the routing entity acts as a Location Server and the LoST this role, the routing entity acts as an LS and the LoST server acts
server acts as a Location Recipient. The LO format within LoST does as an LR. The LO format within LoST does not allow Rules to be sent
not allow Rules to be sent along with location, but because LoST is along with location, but because LoST is an application-specific
an application-specific protocol, the sending of location within a protocol, the sending of location within a LoST message authorizes
LoST message authorizes the LoST server to use the location to the LoST server to use the location to complete the protocol, namely
complete the protocol, namely to route the message as necessary to route the message as necessary through the LoST mapping
through the LoST mapping architecture [18]. That is, the LoST server architecture [24]. That is, the LoST server is authorized to
is authorized to complete the LoST protocol, but to do nothing else. complete the LoST protocol, but to do nothing else.
The third step in an emergency call is again a combination of The third step in an emergency call is again a combination of
distribution and use. The caller (or another entity that inserts the distribution and use. The caller (or another entity that inserts the
caller's location) acts as an LS and the PSAP acts as a Location caller's location) acts as an LS and the PSAP acts as an LR. In this
Recipient. In this specific example, the caller's location is specific example, the caller's location is transmitted either as a
transmitted either as a PIDF-LO object or as a reference that returns PIDF-LO object or as a reference that returns a PIDF-LO (or both); in
a PIDF-LO (or both); in the latter case, the reference should be the latter case, the reference should be appropriately protected so
appropriately protected so that only the PSAP has access. In any that only the PSAP has access. In any case, the receipt of an LO
case, the receipt of a LO implies that the PSAP should obey the Rules implies that the PSAP should obey the Rules in those LOs in order to
in those LOs in order to preserve privacy. Depending on the preserve privacy. Depending on the regulatory environment, the PSAP
regulatory environment, the PSAP may have the option to ignore those may have the option to ignore those constraints in order to respond
constraints in order to respond to an emergency, or it may be bound to an emergency, or it may be bound to respect these Rules (in spite
to respect these Rules (in spite of the emergency situation). of the emergency situation).
The following outline summarizes this scenario: The following outline summarizes this scenario:
o Positioning: Any o Positioning: Any
o Distribution/use hop 1: Target=LS --> LoST infrastructure (no o Distribution/use hop 1: Target=LS --> LoST infrastructure (no
Rules), privacy via authorization implicit in protocol Rules), privacy via authorization implicit in protocol
o Distribution/use hop 2: Target=LS --> PSAP, privacy via Rules in o Distribution/use hop 2: Target=LS --> PSAP, privacy via Rules in
LO LO
skipping to change at page 31, line 4 skipping to change at page 32, line 6
o Positioning: Any o Positioning: Any
o Distribution/use hop 1: Target=LS --> LoST infrastructure (no o Distribution/use hop 1: Target=LS --> LoST infrastructure (no
Rules), privacy via authorization implicit in protocol Rules), privacy via authorization implicit in protocol
o Distribution/use hop 2: Target=LS --> PSAP, privacy via Rules in o Distribution/use hop 2: Target=LS --> PSAP, privacy via Rules in
LO LO
o Use: PSAP uses location to deliver emergency services o Use: PSAP uses location to deliver emergency services
o Key points: o Key points:
* Privacy in this scenario is provided by a combination of * Privacy in this scenario is provided by a combination of
explicit user direction, implicit authorization particular to a explicit user direction, implicit authorization particular to a
protocol, and Rules in an LO protocol, and Rules in an LO
* LRs may be constrained to respect or ignore Privacy Rules by * LRs may be constrained to respect or ignore Privacy Rules by
local regulation local regulation
5.4. Combination of Services 6.4. Combination of Services
In modern Internet applications, users frequently receive information In modern Internet applications, users frequently receive information
via one channel and broadcast it via another. In this sense, both via one channel and broadcast it via another. In this sense, both
users and channels (e.g., web services) become location servers. users and channels (e.g., web services) become LSess. Here we
Here we consider a more complex example that illustrates this pattern consider a more complex example that illustrates this pattern across
across multiple logical hops. multiple logical hops.
Suppose Alice (the Target) subscribes to a wireless ISP that Suppose Alice (the Target) subscribes to a wireless ISP that
determines her location using a network-based positioning technique determines her location using a network-based positioning technique
(e.g., via the location of the base station serving the Target), and (e.g., via the location of the base station serving the Target), and
provides that information directly to a location-enhanced presence provides that information directly to a location-enhanced presence
provider (which might use SIP, XMPP, or another protocol). The provider (which might use SIP, XMPP [25], or another protocol). The
location-enhanced presence provider allows Alice to specify Rules for location-enhanced presence provider allows Alice to specify Rules for
how this location is distributed: which friends should receive how this location is distributed: which friends should receive
Alice's location and what Rules they should get with it. Alice uses Alice's location and what Rules they should get with it. Alice uses
a few other location-enhanced services as well, so she sends Rules a few other location-enhanced services as well, so she sends Rules
that allow her location to be shared with those services, and allow that allow her location to be shared with those services, and allow
those services to retain and retransmit her location. those services to retain and retransmit her location.
Bob is one of Alice's friends, and he receives her location via this Bob is one of Alice's friends, and he receives her location via this
location-enhanced presence service. Noting that she's at their location-enhanced presence service. Noting that she's at their
favorite coffee shop, Bob wants to upload a photo of the two of them favorite coffee shop, Bob wants to upload a photo of the two of them
at the coffee shop to a photo-sharing site, along with a LO that at the coffee shop to a photo-sharing site, along with an LO that
marks the location. Bob checks the Rules in Alice's LO and verifies marks the location. Bob checks the Rules in Alice's LO and verifies
that the photo sharing site is one of the services that Alice that the photo sharing site is one of the services that Alice
authorized. Seeing that Alice has authorized him to give the LO to authorized. Seeing that Alice has authorized him to give the LO to
the photo-sharing site, he attaches it to the photo and uploads it. the photo-sharing site, he attaches it to the photo and uploads it.
Once the geo-tagged photo is uploaded, the photo sharing site reads Once the geo-tagged photo is uploaded, the photo sharing site reads
the Rules in the LO and verifies that the site is authorized to store the Rules in the LO and verifies that the site is authorized to store
the photo and to share it with others. Since Alice has allowed the the photo and to share it with others. Since Alice has allowed the
site to retransmit and retain without any constraints, the site site to retransmit and retain without any constraints, the site
fulfills Bob's request to make the geo-tagged photo publicly fulfills Bob's request to make the geo-tagged photo publicly
skipping to change at page 32, line 27 skipping to change at page 33, line 29
The first distribution hop occurs when the presence server sends The first distribution hop occurs when the presence server sends
location to Bob. In this transaction, the presence server acts as an location to Bob. In this transaction, the presence server acts as an
LS, Alice acts as an RM, and Bob acts as an LR. The privacy of this LS, Alice acts as an RM, and Bob acts as an LR. The privacy of this
transaction is assured by the fact that Alice has installed Rules on transaction is assured by the fact that Alice has installed Rules on
the presence server that dictate who it may allow to access her the presence server that dictate who it may allow to access her
location. The second distribution hop is when Bob uploads the LO to location. The second distribution hop is when Bob uploads the LO to
the photo-sharing site. Here Bob acts as an LS, preserving the the photo-sharing site. Here Bob acts as an LS, preserving the
privacy of location information by verifying that the Rules in the LO privacy of location information by verifying that the Rules in the LO
allow him to upload it. The third distribution hop is when the allow him to upload it. The third distribution hop is when the
photo-sharing site sends the LO to Eve, likewise following the Rules photo-sharing site sends the LO to Eve, likewise following the Rules
-- but a different set of Rules than Bob, since a LO can specify -- but a different set of Rules than Bob, since an LO can specify
different Rule sets for different Location Servers. different Rule sets for different LSes.
Eve is the fourth LS in the chain, and fails to comply with Geopriv Eve is the fourth LS in the chain, and fails to comply with Geopriv
by not checking the Rules in the LO prior to uploading the LO to the by not checking the Rules in the LO prior to uploading the LO to the
social networking site. The site, however, is a responsible LR -- it social networking site. The site, however, is a responsible LR -- it
checks the Rules in the LO, sees that they don't allow it to use the checks the Rules in the LO, sees that they don't allow it to use the
location as it needs to, and discards the LO. location as it needs to, and discards the LO.
The following outline summarizes this scenario: The following outline summarizes this scenario:
o Positioning: Network-based, LG in network, privacy via exclusive o Positioning: Network-based, LG in network, privacy via exclusive
skipping to change at page 33, line 17 skipping to change at page 34, line 20
o Key points: o Key points:
* Privacy can be preserved through multiple hops * Privacy can be preserved through multiple hops
* A LO can specify different Rules for different entities * A LO can specify different Rules for different entities
* An LS can still disobey the Rules, but even then, the * An LS can still disobey the Rules, but even then, the
architecture still works in some cases architecture still works in some cases
6. Glossary 7. Glossary
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", Various security-related terms not defined here are to be understood
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this in the sense defined in RFC 4949 [26].
document are to be interpreted as described in RFC 2119 [1].
$ Access Control Rule $ Access Control Rule
A rule that describe which entities may receive location A rule that describe which entities may receive location
information and in what form. information and in what form.
$ civic location $ civic location
The geographic position of an entity in terms of a postal address The geographic position of an entity in terms of a postal address
or civic landmark. Examples of such data are room number, street or civic landmark. Examples of such data are room number, street
number, street name, city, ZIP code, county, state and country. number, street name, city, ZIP code, county, state and country.
$ Device $ Device
The technical device whose location is tracked as a proxy for the The physical device whose location is tracked as a proxy for the
location of a Target. location of a Target.
$ geodetic location $ geodetic location
The geographic position of an entity in a particular coordinate The geographic position of an entity in a particular coordinate
system (for example, a latitude-longitude pair). system (for example, a latitude-longitude pair).
$ Local Rule $ Local Rule
A Privacy Rules that directs a Location Server about how to treat A Privacy Rules that directs a Location Server about how to treat
skipping to change at page 36, line 10 skipping to change at page 37, line 10
user of a Device, or it may be an object such as a vehicle or user of a Device, or it may be an object such as a vehicle or
shipping container to which a Device is attached. In some shipping container to which a Device is attached. In some
instances the Target will be the Device itself. The Target is the instances the Target will be the Device itself. The Target is the
entity whose privacy Geopriv seeks to protect. entity whose privacy Geopriv seeks to protect.
$ Usage Rule $ Usage Rule
A rule that describe what uses of location information are A rule that describe what uses of location information are
authorized. authorized.
7. Acknowledgements 8. Acknowledgements
Section 4 is largely based on the security investigations conducted Section 5 is largely based on the security investigations conducted
as part of the Geopriv Layer-7 Location Configuration Protocol design as part of the Geopriv Layer-7 Location Configuration Protocol design
team, which produced [8]. We would like to thank all the members of team, which produced [9]. We would like to thank all the members of
the design team. the design team.
We would also like to thank Marc Linsner and Martin Thomson for their We would also like to thank Marc Linsner and Martin Thomson for their
contributions regarding terminology and LCPs. contributions regarding terminology and LCPs.
8. IANA Considerations 9. IANA Considerations
This document makes no request of IANA. This document makes no request of IANA.
9. References 10. References
9.1. Normative References 10.1. Normative References
[1] Bradner, S., "Key words for use in RFCs to Indicate Requirement [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels", BCP 14, RFC 2119, March 1997. Levels", BCP 14, RFC 2119, March 1997.
9.2. Informative References 10.2. Informative References
[2] Cuellar, J., Morris, J., Mulligan, D., Peterson, J., and J. [2] Cuellar, J., Morris, J., Mulligan, D., Peterson, J., and J.
Polk, "Geopriv Requirements", RFC 3693, February 2004. Polk, "Geopriv Requirements", RFC 3693, February 2004.
[3] Danley, M., Mulligan, D., Morris, J., and J. Peterson, "Threat [3] Danley, M., Mulligan, D., Morris, J., and J. Peterson, "Threat
Analysis of the Geopriv Protocol", RFC 3694, February 2004. Analysis of the Geopriv Protocol", RFC 3694, February 2004.
[4] U.S. Department of Defense, "National Industrial Security [4] U.S. Department of Defense, "National Industrial Security
Program Operating Manual", DoD 5220-22M, January 1995. Program Operating Manual", DoD 5220-22M, January 1995.
[5] Schulzrinne, H., Tschofenig, H., Morris, J., Cuellar, J., Polk, [5] Winterbottom, J., Thomson, M., and H. Tschofenig, "GEOPRIV
Presence Information Data Format Location Object (PIDF-LO)
Usage Clarification, Considerations, and Recommendations",
RFC 5491, March 2009.
[6] Schulzrinne, H., Tschofenig, H., Morris, J., Cuellar, J., Polk,
J., and J. Rosenberg, "Common Policy: A Document Format for J., and J. Rosenberg, "Common Policy: A Document Format for
Expressing Privacy Preferences", RFC 4745, February 2007. Expressing Privacy Preferences", RFC 4745, February 2007.
[6] Schulzrinne, H., Tschofenig, H., Morris, J., Cuellar, J., and [7] Schulzrinne, H., Tschofenig, H., Morris, J., Cuellar, J., and
J. Polk, "Geolocation Policy: A Document Format for Expressing J. Polk, "Geolocation Policy: A Document Format for Expressing
Privacy Preferences for Location Information", Privacy Preferences for Location Information",
draft-ietf-geopriv-policy-21 (work in progress), January 2010. draft-ietf-geopriv-policy-21 (work in progress), January 2010.
[7] Rosenberg, J., "The Extensible Markup Language (XML) [8] Rosenberg, J., "The Extensible Markup Language (XML)
Configuration Access Protocol (XCAP)", RFC 4825, May 2007. Configuration Access Protocol (XCAP)", RFC 4825, May 2007.
[8] Tschofenig, H. and H. Schulzrinne, "GEOPRIV Layer 7 Location [9] Tschofenig, H. and H. Schulzrinne, "GEOPRIV Layer 7 Location
Configuration Protocol; Problem Statement and Requirements", Configuration Protocol: Problem Statement and Requirements",
draft-ietf-geopriv-l7-lcp-ps-10 (work in progress), July 2009. RFC 5687, March 2010.
[9] Polk, J., Schnizlein, J., and M. Linsner, "Dynamic Host [10] Polk, J., Schnizlein, J., and M. Linsner, "Dynamic Host
Configuration Protocol Option for Coordinate-based Location Configuration Protocol Option for Coordinate-based Location
Configuration Information", RFC 3825, July 2004. Configuration Information", RFC 3825, July 2004.
[10] Schulzrinne, H., "Dynamic Host Configuration Protocol (DHCPv4 [11] Schulzrinne, H., "Dynamic Host Configuration Protocol (DHCPv4
and DHCPv6) Option for Civic Addresses Configuration and DHCPv6) Option for Civic Addresses Configuration
Information", RFC 4776, November 2006. Information", RFC 4776, November 2006.
[11] Polk, J., "Dynamic Host Configuration Protocol (DHCP) IPv4 and [12] Polk, J., "Dynamic Host Configuration Protocol (DHCP) IPv4 and
IPv6 Option for a Location Uniform Resource Identifier (URI)", IPv6 Option for a Location Uniform Resource Identifier (URI)",
draft-ietf-geopriv-dhcp-lbyr-uri-option-07 (work in progress), draft-ietf-geopriv-dhcp-lbyr-uri-option-08 (work in progress),
March 2010. July 2010.
[12] Barnes, M., Winterbottom, J., Thomson, M., and B. Stark, "HTTP [13] Barnes, M., "HTTP-Enabled Location Delivery (HELD)", RFC 5985,
Enabled Location Delivery (HELD)", September 2010.
draft-ietf-geopriv-http-location-delivery-16 (work in
progress), August 2009.
[13] Marshall, R., "Requirements for a Location-by-Reference [14] Marshall, R., "Requirements for a Location-by-Reference
Mechanism", draft-ietf-geopriv-lbyr-requirements-09 (work in Mechanism", RFC 5808, May 2010.
progress), November 2009.
[14] World Wide Web Consortium, "The XMLHttpRequest Object", W3C [15] Hardie, T., Newton, A., Schulzrinne, H., and H. Tschofenig,
"LoST: A Location-to-Service Translation Protocol", RFC 5222,
August 2008.
[16] Kent, S. and K. Seo, "Security Architecture for the Internet
Protocol", RFC 4301, December 2005.
[17] Dierks, T. and E. Rescorla, "The Transport Layer Security (TLS)
Protocol Version 1.2", RFC 5246, August 2008.
[18] Peterson, J., "A Presence-based GEOPRIV Location Object
Format", RFC 4119, December 2005.
[19] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L.,
Leach, P., and T. Berners-Lee, "Hypertext Transfer Protocol --
HTTP/1.1", RFC 2616, June 1999.
[20] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A.,
Peterson, J., Sparks, R., Handley, M., and E. Schooler, "SIP:
Session Initiation Protocol", RFC 3261, June 2002.
[21] World Wide Web Consortium, "The XMLHttpRequest Object", W3C
document http://www.w3.org/TR/XMLHttpRequest/, April 2008. document http://www.w3.org/TR/XMLHttpRequest/, April 2008.
[15] Rosen, B., Schulzrinne, H., Polk, J., and A. Newton, "Framework [22] Rosen, B., Schulzrinne, H., Polk, J., and A. Newton, "Framework
for Emergency Calling using Internet Multimedia", for Emergency Calling using Internet Multimedia",
draft-ietf-ecrit-framework-10 (work in progress), July 2009. draft-ietf-ecrit-framework-11 (work in progress), July 2010.
[16] Rosen, B. and J. Polk, "Best Current Practice for [23] Rosen, B. and J. Polk, "Best Current Practice for
Communications Services in support of Emergency Calling", Communications Services in support of Emergency Calling",
draft-ietf-ecrit-phonebcp-14 (work in progress), January 2010. draft-ietf-ecrit-phonebcp-15 (work in progress), July 2010.
[17] Hardie, T., Newton, A., Schulzrinne, H., and H. Tschofenig,
"LoST: A Location-to-Service Translation Protocol", RFC 5222,
August 2008.
[18] Schulzrinne, H., "Location-to-URL Mapping Architecture and [24] Schulzrinne, H., "Location-to-URL Mapping Architecture and
Framework", draft-ietf-ecrit-mapping-arch-04 (work in Framework", draft-ietf-ecrit-mapping-arch-04 (work in
progress), March 2009. progress), March 2009.
[19] Peterson, J., "A Presence-based GEOPRIV Location Object [25] Saint-Andre, P., Ed., "Extensible Messaging and Presence
Format", RFC 4119, December 2005. Protocol (XMPP): Core", RFC 3920, October 2004.
[20] Polk, J. and B. Rosen, "Location Conveyance for the Session [26] Shirey, R., "Internet Security Glossary, Version 2", RFC 4949,
August 2007.
[27] Polk, J. and B. Rosen, "Location Conveyance for the Session
Initiation Protocol", draft-ietf-sip-location-conveyance-13 Initiation Protocol", draft-ietf-sip-location-conveyance-13
(work in progress), March 2009. (work in progress), March 2009.
URIs URIs
[21] <http://creativecommons.org/> [28] <http://creativecommons.org/>
Authors' Addresses Authors' Addresses
Richard Barnes Richard Barnes
BBN Technologies BBN Technologies
9861 Broken Land Pkwy, Suite 400 9861 Broken Land Pkwy, Suite 400
Columbia, MD 21046 Columbia, MD 21046
USA USA
Phone: +1 410 290 6169 Phone: +1 410 290 6169
 End of changes. 143 change blocks. 
441 lines changed or deleted 478 lines changed or added

This html diff was produced by rfcdiff 1.40. The latest version is available from http://tools.ietf.org/tools/rfcdiff/