Theory Friend_Intro
theory Friend_Intro
imports "../Safety_Properties"
begin
section ‹Friendship status confidentiality›
text ‹\label{sec:friend}
We verify the following property:
\ \\
Given a coalition consisting of groups of users ‹UIDs j› from multiple nodes ‹j›
and given two users ‹UID1› and ‹UID2› at some node ‹i› who are not in these groups,
the coalition cannot learn anything about the changes in the status
of friendship between ‹UID1› and ‹UID2›
beyond what everybody knows, namely that
▪ there is no friendship between them before those users have been created, and
▪ the updates form an alternating sequence of friending and unfriending,
and beyond those updates performed while or last before
a user in the group ‹UIDs i› is friends with ‹UID1› or ‹UID2›.
\ \\
The approach to proving this is similar to that for post confidentiality (explained
in the introduction of the post confidentiality section~\ref{sec:post}), but conceptually simpler
since here secret information is not communicated between different nodes (so we
don't need to distinguish between an issuer node and the other, receiver nodes).
Moreover, here we do not consider static versions of the bounds, but go directly for
the dynamic ones. Also, we prove directly the BD security for a network of ‹n› nodes,
omitting the case of two nodes.
Note that, unlike for post confidentiality, here remote friendship plays
no role in the statement of the property. This is because, in CoSMeDis, the listing
of a user's friends is only available to local (same-node) friends of that user,
and not to the remote (outer) friends.
›
end