\begin{frame}
  \frametitle{Résumé de l'article}

  \begin{block}{Apports}
    \begin{itemize}
      \item Formalisation des attaques possibles sur les systèmes satisfaisant la convergence causale.
      \item Définition de propriétés permettant de contrer ou de limiter ces attaques.
      \item Formalisation de "nouvelles" classes de cohérence faible étendant la cohérence causale à ces propriétés : "Secure Causal Consistency".
      \item Présentation d'algorithmes produisant des histoires satisfaisant cette classe.
      \item Expérimentation de ces algorithmes et comparaison avec les algorithmes existants.
    \end{itemize}
  \end{block}

\end{frame}

\begin{frame}
  \frametitle{Résumé de l'article}

  \begin{block}{Attentes}
    Les auteurs cherchent à produire un algorithme maximisant l'interactivité et donc minimisant la latence. \newline
    L'architecture étudiée est une architecture client-serveur, avec une connectivité en pair à pair entre les clients. 
  \end{block}

  Illustration de l'architecture

\end{frame}

\begin{frame}
  \frametitle{Attaques}

  \begin{block}{Attaques}
    \begin{itemize}
      \item \textbf{Tempering} : Anticipation d'une opération reçue par le système, mais pas encore exécutée par l'ensemble des nœuds.
      \item \textbf{Omitting Dependencies} : Création d'une opération suivant un sous ensemble des dépendances réelles.
      \item \textbf{Unseen Dependencies} : Anticipation d'une opération non reçue par le système, mais probable d'arrivée.
      \item \textbf{Sibling Generation} : Création de deux opérations différentes possédant le même identifiant. Réalisant ainsi une divergence entre les nœuds. 
    \end{itemize}
  \end{block} 
\end{frame}

\begin{frame}
  \frametitle{Propriétés}

  \begin{block}{Propriétés}
    \begin{itemize}
      \item \textbf{Immutable History} : Chaque opération est envoyée avec son passé causal. (Parade le \textbf{Tempering})
      \item \textbf{No Future Dependencies} : Chaque opération est envoyée avec l'état qu'il connait des nœuds. (Parade l'\textbf{Unseen Dependencies}, il devient impossible de créer une opération à l'avance).
      \item \textbf{Causal Execution} : Toute opération $o_i$ appartenant au passé causal d'une opération $o$ doit être sérialisable t.q. : $o_i < o$. (Fait office de synchronisation entre les nœuds)
      \item \textbf{Eventual Sibling Detection} : Les opérations sont considérées comme des "jumeaux" éventuels et sont donc "révocables" via une nouvelle opération dédiée. (Parade (relativement) le \textbf{Sibling Generation})
      \item \textbf{Limited Omission} : à travailler
    \end{itemize}
  \end{block}

  Ces propriétés définissent la première classe que les auteurs introduisent : \textbf{Secure Causal Consistency}.
\end{frame}

\begin{frame}
  \frametitle{Les différentes classes de cohérence faible}

  \begin{block}{Les différentes classes de cohérence faible}
    \begin{itemize}
      \item \textbf{Secure Causal Consistency} : Respecte les propriétés précédentes ainsi que celles introduites par la convergence causale.
      \item \textbf{Secure Strict Causal Consistency} : Extension de la précédente, mais avec un ordre total basé sur la vision d'un observateur externe.
      \item \textbf{Extended Secure Causal Consistency} : 
    \end{itemize}
  \end{block}
  

\end{frame}
