<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Towards Privacy Policy-Aware Web-Based Systems</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>ADAPT Lab, Universitat Koblenz-Landau</institution>
          ,
          <addr-line>Koblenz</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Ekaterina Pek</institution>
        </aff>
      </contrib-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        The Web provides di erent ways to communicate and perform activities that
vary from simple to sophisticated: using forums on websites, online shopping,
orchestrating Web Services. All of them involve processing data about the user,
be it technical (e.g., the version of the user's browser or the IP address) or
personal information (name, address, gender, credit card number, etc.). In order
to give the user control over their data on the Web, P3P, the Platform for
Privacy Preferences, [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] was o cially recommended by the World Wide Web
Consortium in 2002. P3P is a language and a protocol allowing websites to
describe data practices: what data is collected, what for, how long it will be
stored and what parts of the data are exposed to other parties. These policies
are declarative and non-executable, which leads to the topic of presented work:
How to make Web-based systems comply with declared policies? How to make
systems policy-aware?
2.1
      </p>
    </sec>
    <sec id="sec-2">
      <title>Overview of Related</title>
    </sec>
    <sec id="sec-3">
      <title>Work</title>
      <sec id="sec-3-1">
        <title>Previous Attempts at P3P Enforcement</title>
        <p>
          Agrawal et al. [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ] proposed translating a P3P policy into a set of restrictions in
relational database management system (RDBMS) on the level of columns, rows
or cells, provided that a user query would contain information about purpose
and recipient. This approach requires the support from database producers, since
it proposes new language constructs and implementation design for ne-grained
access control.
        </p>
        <p>
          Ashley [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] suggested implementation of an external policy framework that has
integration points (Privacy Monitors) between the Privacy Server that contains
policies and the application environment. This approach uses Reference Monitors
(see below).
        </p>
        <p>
          IBM developed Tivoli Privacy Manager [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ] and related technologies: the
Declarative Policy Monitoring [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] and Reference Monitor [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ], but the Privacy
Manager was withdrawn from marketing in 2009 [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ] and corresponding
technologies have been retired.
        </p>
        <p>
          In the work of Hayati and Abadi [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ] the authors develop a language-based
approach for modeling and verifying aspects of privacy policies. They use the
programming language Jif [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ], an extension of Java with information- ow types,
to show how to prevent leaks of the data from the system and how to implement
P3P notions of purposes and retentions. However, this work does not cover all
aspects of the P3P language, e.g., base/custom data schemes.
2.2
        </p>
      </sec>
      <sec id="sec-3-2">
        <title>P3P as an Intermediate Representation</title>
        <p>
          Karjoth et al. [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ] proposed the Platform for Enterprise Privacy Practices
(EP3P), which uses P3P to present a coarser-grained privacy policy to the
customer, while for internal enforcement a new language is suggested.
        </p>
        <p>
          In the work of Salim et al. [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ], P3P policies are used as an intermediate
level between the extended Digital Rights Management model and the user,
because P3P preferences are more abstract than a license and it's easier for data
owners to specify the purposes for which data is to be collected. In the end, P3P
preferences are transformed into MPEG REL (Moving Picture Expert Group
Rights Expression Language) licenses that can be enforced by the framework.
2.3
        </p>
      </sec>
      <sec id="sec-3-3">
        <title>General Solutions to Policy Enforcement</title>
        <p>
          He and Anton [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ] propose a framework to bridge the gap between high-level
privacy requirements and low-level access control policies by modeling privacy
requirements in the role engineering process. The framework provides a basis for
enforcing privacy requirements with RBAC (role-based access control) model.
The work does not address any high-level privacy requirements language in
particular, though, uses P3P elements (e.g., purpose) as an example of standard
privacy policy entities.
        </p>
        <p>
          Mont et al. [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ] introduce a notion of \sticky policy" in order to prevent
leaking of personal information. The proposed privacy model involves Tracing
Authorities as a main point to log and audit the disclosures of con dential data
as well as to notify the owner of the data. Such a model requires a request to the
Tracing Authority each time when a service wants to transfer the data outside.
        </p>
        <p>
          Ringelstein and Staab [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ] introduce a notion of \sticky logging" in order to
collect di erent kinds of data usage (create, copy, read, update, transfer, delete)
in distributed environments. This allows to reconstruct the execution afterwards,
which might be useful, if the customer requests the report about data usage.
This work does not directly address any kind of compliance of a reconstructed
execution with existing privacy policies of a system.
3
        </p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Proposed Solution</title>
      <p>The relation between the system and the policy can be twofold.</p>
      <p>One case is that a P3P policy is created for the existing system by analyzing
the behaviour of the system and translating it into the P3P language. This means
that a P3P policy can be seen as a by-product of the system and ideally could
be generated from the system.</p>
      <p>The second case is that a P3P policy exists before the system. This means
that a P3P policy can be seen as a speci cation of the system or as additional
constraints at the modelling phase of the system.</p>
      <p>While these scenarios are polar, we hope to bridge them in practical
experiments (for more details see Section 4). In the end, we aim to develop
language support for describing policies as part of the programming e ort: that is,
a policy-aware programming language supporting idioms for expressing
policyrelated constraints. We see this language as a simpli ed, idealized language or
calculus, similar to other language design e orts that use Featherweight or
Classic Java.There may be the following language constructs for privacy awareness:
annotations of the data model with the privacy-related categories; annotations
of persistence actions with duration or access information; annotations of service
calls so that sharing of data is classi ed.
4</p>
    </sec>
    <sec id="sec-5">
      <title>Research Method</title>
      <p>
        We started our research with an empirical study of P3P policies in the wild [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ].
We believe that an empirical study of the language at hand is an important
stage of working with the language. While one can start from the speci cation
of the language and try to devise a solution top-down, it can be the case that
some combinations of language elements/constructs are seldom or never used,
inadequate in practice, or even contradictory [
        <xref ref-type="bibr" rid="ref14 ref18">18, 14</xref>
        ].
      </p>
      <p>For example, we've found out, that even with low P3P usage { for the seed
of 1,450,660 URLs, we were able to download only 4,158 XML les with P3P
policies1{ the coverage of the base data schema proposed in P3P speci cation is
76%. In other words, the language is used to its full extent and there can be no
short-cuts in our e ort.</p>
      <p>
        Now that we know the shape of P3P policies, we can start with a realistic
and interesting case study to guide the development of a prototype system. This
is our plan of attack:
{ First, we consider a typical lightweight architecture for a Web-based
system: persistence layer, domain-speci c logic, presentation layer and,
optionally, Web Services. At this point we have decided to dedicate ourselves to
Java Pet Store [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], a sample Web application, designed to run on the Java
Enterprise Edition 5 platform. While this application has all technical
aspects highlighted above, it also suggests non-trivial information ow issues
(see Fig. 4). We intend to put some developing e orts into the system in
order to make it complete w.r.t. those issues.
1 Please, note, that this low usage is partially because our approach used one seed of
URLs (Google Directory). Cranor et al. [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] found that P3P had been deployed on
10% of the sites returned in the top-20 results of typical searches, and on 21% of the
sites returned in the top-20 results of e-commerce searches.
buyer's payment
through paypal
mark item in the catalog
      </p>
      <p>as reserved
buy an item
pet store receives
payment email
[payment accepted]
send email to seller
with meeting point
send email to buyer
with meeting point
meet all parties
at meeting point
seller hands out the
item to buyer</p>
      <p>pet stthoeremhoannedys out
marked the item in the</p>
      <p>catalog as sold
(a) The scenario</p>
      <p>Does PayPal get the buyer's contact information?
Does PayPal get the seller's contact information?
Does the seller get the buyer's contact information?
Does the buyer get the seller's contact information?
Is the contact information deleted upon purchase
completion?
(b) Interesting questions about information ow
&lt;STATEMENT&gt;
&lt;PURPOSE&gt;&lt;current/&gt;&lt;/PURPOSE&gt;
&lt;RECIPIENT&gt;&lt;ours/&gt;&lt;/RECIPIENT&gt;
&lt;RETENTION&gt;&lt;indefinitely/&gt;&lt;/RETENTION&gt;
&lt;DATA-GROUP&gt;
&lt;DATA ref="#user.name"/&gt;
&lt;DATA ref="#user.home-info.online.email"/&gt;
&lt;DATA ref="#user.home-info.postal"/&gt;
&lt;/DATA-GROUP&gt;
&lt;/STATEMENT&gt;</p>
      <p>(c) A P3P policy (excerpt) for the seller</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>IBM</given-names>
            <surname>Tivoli</surname>
          </string-name>
          <article-title>Privacy Manager Solution Design and Best Practices</article-title>
          . IBM Press (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>IBM</given-names>
            <surname>Tivoli</surname>
          </string-name>
          <article-title>Privacy Manager info page</article-title>
          . http://www-01.ibm.com/software/ tivoli/products/privacy-mgr-e-bus
          <source>/ (Jul</source>
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <article-title>3. The Java Pet Store 2.0 Reference Application</article-title>
          . http://java.sun.com/developer/ releases/petstore/ (
          <year>Sep 2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <article-title>Jif home page</article-title>
          . http://www.cs.cornell.edu/jif/ (
          <year>Sep 2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <article-title>5. W3C, the platform for privacy preferences 1.1</article-title>
          (
          <issue>P3P1</issue>
          .
          <article-title>1) speci cation</article-title>
          . http://www. w3.org/TR/P3P11/ (
          <year>Jul 2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Agrawal</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bird</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grandison</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kiernan</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Logan</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rjaibi</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          :
          <article-title>Extending relational database systems to automatically enforce privacy policies</article-title>
          .
          <source>In: ICDE '05: Proceedings of the 21st International Conference on Data Engineering</source>
          . pp.
          <volume>1013</volume>
          {
          <fpage>1022</fpage>
          . IEEE Computer Society (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Ashley</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Enforcement of a P3P privacy policy</article-title>
          .
          <source>In: Proceedings of the 2nd Australian Information Security Management Conference, Securing the Future</source>
          . pp.
          <volume>11</volume>
          {
          <fpage>26</fpage>
          . School of Computer and Information Science, Edith Cowan University, Western Australia (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Bohrer</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hada</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Miller</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Powers</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wu</surname>
          </string-name>
          , H.f.:
          <article-title>Declarative Privacy Monitoring for Tivoli Privacy Manager</article-title>
          . http://www.alphaworks.ibm.com/tech/dpm (Jul
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Cranor</surname>
            ,
            <given-names>L.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Egelman</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sheng</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McDonald</surname>
            ,
            <given-names>A.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chowdhury</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>P3P deployment on websites</article-title>
          .
          <source>Electronic Commerce Research and Applications</source>
          <volume>7</volume>
          (
          <issue>3</issue>
          ),
          <volume>274</volume>
          {
          <fpage>293</fpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Hayati</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Abadi</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Language-based enforcement of privacy policies</article-title>
          .
          <source>In: Proceedings of Privacy Enhancing Technologies Workshop (PET)</source>
          . Springer-Verlag (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>He</surname>
            ,
            <given-names>Q.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Anton</surname>
            ,
            <given-names>A.I.:</given-names>
          </string-name>
          <article-title>A framework for modeling privacy requirements in role engineering</article-title>
          .
          <source>In: Proceedings of the 9th International Workshop on Requirements Engineering: Foundation for Software Quality (REFSQ'03)</source>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Hill</surname>
            ,
            <given-names>R.K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fritz</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Reference Monitor for Tivoli Privacy Manager</article-title>
          . http://www. alphaworks.ibm.com/tech/refmon (Jul
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Karjoth</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schunter</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Waidner</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Platform for enterprise privacy practices: privacy-enabled management of customer data</article-title>
          .
          <source>In: PET'02: Proceedings of the 2nd international conference on Privacy enhancing technologies</source>
          . pp.
          <volume>69</volume>
          {
          <fpage>84</fpage>
          .
          <string-name>
            <surname>SpringerVerlag</surname>
          </string-name>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14. Lammel, R.,
          <string-name>
            <surname>Pek</surname>
          </string-name>
          , E.:
          <article-title>Vivisection of a non-executable, domain-speci c language; Understanding (the usage of) the P3P language</article-title>
          .
          <source>In: Proceedings of ICPC</source>
          <year>2010</year>
          . IEEE (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Mont</surname>
            ,
            <given-names>M.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pearson</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bramhall</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Towards accountable management of identity and privacy: Sticky policies and enforceable tracing services</article-title>
          .
          <source>In: DEXA '03: Proceedings of the 14th International Workshop on Database and Expert Systems Applications</source>
          . p.
          <fpage>377</fpage>
          . IEEE Computer Society (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Ringelstein</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Staab</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          : DIALOG:
          <article-title>Distributed auditing logs</article-title>
          .
          <source>In: ICWS-2009 - 7th IEEE Int. Conference on Web Services</source>
          . Los Angeles, CA, USA (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Salim</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sheppard</surname>
            ,
            <given-names>N.P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Safavi-Naini</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          :
          <article-title>Enforcing P3P policies using a digital rights management system</article-title>
          .
          <source>In: PET'07: Proceedings of the 7th international conference on Privacy enhancing technologies</source>
          . pp.
          <volume>200</volume>
          {
          <fpage>217</fpage>
          . Springer-Verlag (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Yu</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Li</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Anton</surname>
            ,
            <given-names>A.I.:</given-names>
          </string-name>
          <article-title>A formal semantics for P3P</article-title>
          .
          <source>In: SWS '04: Proceedings of the 2004 workshop on Secure web service</source>
          . pp.
          <volume>1</volume>
          {
          <issue>8</issue>
          .
          <string-name>
            <surname>ACM</surname>
          </string-name>
          (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>