Theory Post_Intro

theory Post_Intro
  imports "../Safety_Properties"
begin

section ‹Post confidentiality›

text ‹\label{sec:post}
We verify the following BD Security property of the CoSMeDis network:

\ \\
Given a coalition consisting of groups of users UIDs j› from multiple nodes j›
and given a post PID› at node i›,

the coalition cannot learn anything about the updates to this post

beyond those updates performed while or last before one of the following holds:

(1) Some user in UIDs i› is the admin at node i›,
is the owner of PID› or is friends with the owner of PID›

(2) PID› is marked as public

unless some user in UIDs j› for a node j› different than i› is admin of node j›
or is remote friend with the owner of PID›.\footnote{So UIDs› is a function from node
identifiers (called API IDs in this formalization) to sets of user IDs.
We will write AID› instead of i› (which will be fixed in our locales)
and aid› instead of j›.}

\ \\
As explained in cite"cosmedis-SandP2017", in order to prove this property
for the CoSMeDis network, we compose BD security properties of
individual CoSMeDis nodes. When formulating the individual node properties, we will
distinguish between the \emph{secret issuer} node i› and the (potential)
\emph{secret receiver} nodes: all nodes different from i›. Consequently, we will
have two BD security properties -- for issuers and for receivers -- proved in their
corresponding subsections. Then we prove BD Security for the (binary) composition of an
issuer and a receiver node, and finally we prove BD Security for the n-ary composition
(of an entire CoSMeDis network of nodes).

Described above is the property in a form that employs a dynamic trigger
(i.e., an inductive bound that incorporates an iterated trigger) for the secret issuer
node.
However, the first subsections of this section cover the static version of this (multi-node)
property, corresponding to a static BD security property for the secret issuer.
The dynamic version is covered after that, in a dedicated subsection.

Finally, we lift the above BD security property, which refers to a single secret source,
i.e., a post at some node, to simultaneous BD Security for two independent secret sources,
i.e., two different posts at two (possibly different) nodes. For this, we use the
BD Security system compositionality and transport theorems formalized in the AFP entry
cite"BDSecuritycomp-AFP".
More details about this approach can be found in cite"cosmedis-SandP2017";
in particular, Appendix A from that paper discusses the transport theorem.
›

end