756 \onslide<5>{\bf\alert{What is wrong with this?}} |
760 \onslide<5>{\bf\alert{What is wrong with this?}} |
757 \hfill{\bf Done. Qed.} |
761 \hfill{\bf Done. Qed.} |
758 |
762 |
759 \end{frame}} |
763 \end{frame}} |
760 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
764 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
765 |
|
766 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
767 \mode<presentation>{ |
|
768 \begin{frame}[c] |
|
769 \frametitle{Program} |
|
770 |
|
771 How to prove \bl{$\Gamma \vdash F$}?\bigskip\bigskip |
|
772 |
|
773 \begin{center} |
|
774 \Large \bl{\infer{\Gamma, F\vdash F}{}} |
|
775 \end{center} |
|
776 |
|
777 \end{frame}} |
|
778 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
779 |
|
780 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
781 \mode<presentation>{ |
|
782 \begin{frame}[c] |
|
783 |
|
784 \begin{center} |
|
785 \Large |
|
786 \bl{\infer{\Gamma \vdash F_1 \Rightarrow F_2}{F_1, \Gamma \vdash F_2}} |
|
787 \end{center} |
|
788 |
|
789 \end{frame}} |
|
790 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
791 |
|
792 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
793 \mode<presentation>{ |
|
794 \begin{frame}[c] |
|
795 |
|
796 \begin{center} |
|
797 \Large |
|
798 \bl{\infer{\Gamma \vdash P \,\text{says}\, F}{\Gamma \vdash F}} |
|
799 \end{center} |
|
800 |
|
801 \end{frame}} |
|
802 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
803 |
|
804 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
805 \mode<presentation>{ |
|
806 \begin{frame}[c] |
|
807 |
|
808 \begin{center} |
|
809 \Large |
|
810 \bl{\infer{\Gamma \vdash F_1 \vee F_2}{\Gamma \vdash F_1}}\qquad |
|
811 \bl{\infer{\Gamma \vdash F_1 \vee F_2}{\Gamma \vdash F_2}}\ |
|
812 \end{center} |
|
813 |
|
814 \end{frame}} |
|
815 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
816 |
|
817 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
818 \mode<presentation>{ |
|
819 \begin{frame}[c] |
|
820 |
|
821 \begin{center} |
|
822 \Large |
|
823 \bl{\infer{\Gamma \vdash F_1 \wedge F_2}{\Gamma \vdash F_1 \quad \Gamma \vdash F_2}} |
|
824 \end{center} |
|
825 |
|
826 \end{frame}} |
|
827 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
828 |
|
829 |
761 |
830 |
|
831 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
832 \mode<presentation>{ |
|
833 \begin{frame}[t] |
|
834 \frametitle{Program: \texttt{prove2}} |
|
835 |
|
836 I want to prove \bl{$\Gamma \vdash \text{Pred}$}\bigskip\bigskip\pause |
|
837 |
|
838 \begin{enumerate} |
|
839 \item I found that \bl{$\Gamma$} contains the assumption \bl{$F_1 \Rightarrow F_2$}\bigskip\pause |
|
840 \item If I can prove \bl{$\Gamma \vdash F_1$},\pause{} then I can prove |
|
841 \begin{center} |
|
842 \bl{$\Gamma \vdash F_2$} |
|
843 \end{center}\bigskip\pause |
|
844 |
|
845 \item So I am able to try to prove \bl{$\Gamma \vdash \text{Pred}$} with the additional assumption |
|
846 \bl{$F_2$}.\bigskip |
|
847 \begin{center} |
|
848 \bl{$F_2, \Gamma \vdash \text{Pred}$} |
|
849 \end{center} |
|
850 \end{enumerate} |
|
851 |
|
852 \only<4>{ |
|
853 \begin{textblock}{11}(1,10.5) |
|
854 \bl{\infer{\Gamma\vdash F_2}{\Gamma\vdash F_1\Rightarrow F_2 & \Gamma\vdash F_1}} |
|
855 \end{textblock}} |
|
856 |
|
857 |
|
858 \end{frame}} |
|
859 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
762 |
860 |
763 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
861 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
764 \mode<presentation>{ |
862 \mode<presentation>{ |
765 \begin{frame}[c] |
863 \begin{frame}[c] |
766 \frametitle{} |
864 \frametitle{} |
788 |
886 |
789 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
887 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
790 \mode<presentation>{ |
888 \mode<presentation>{ |
791 \begin{frame}[c] |
889 \begin{frame}[c] |
792 |
890 |
793 How to prove \bl{$\Gamma \vdash F$}?\bigskip\bigskip |
|
794 |
|
795 \begin{center} |
|
796 \Large \bl{\infer{\Gamma, F\vdash F}{}} |
|
797 \end{center} |
|
798 |
|
799 \end{frame}} |
|
800 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
801 |
|
802 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
803 \mode<presentation>{ |
|
804 \begin{frame}[c] |
|
805 |
|
806 \begin{center} |
|
807 \Large |
|
808 \bl{\infer{\Gamma \vdash F_1 \Rightarrow F_2}{F_1, \Gamma \vdash F_2}} |
|
809 \end{center} |
|
810 |
|
811 \end{frame}} |
|
812 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
813 |
|
814 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
815 \mode<presentation>{ |
|
816 \begin{frame}[c] |
|
817 |
|
818 \begin{center} |
|
819 \Large |
|
820 \bl{\infer{\Gamma \vdash P \,\text{says}\, F}{\Gamma \vdash F}} |
|
821 \end{center} |
|
822 |
|
823 \end{frame}} |
|
824 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
825 |
|
826 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
827 \mode<presentation>{ |
|
828 \begin{frame}[c] |
|
829 |
|
830 \begin{center} |
|
831 \Large |
|
832 \bl{\infer{\Gamma \vdash F_1 \vee F_2}{\Gamma \vdash F_1}}\qquad |
|
833 \bl{\infer{\Gamma \vdash F_1 \vee F_2}{\Gamma \vdash F_2}}\ |
|
834 \end{center} |
|
835 |
|
836 \end{frame}} |
|
837 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
838 |
|
839 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
840 \mode<presentation>{ |
|
841 \begin{frame}[c] |
|
842 |
|
843 \begin{center} |
|
844 \Large |
|
845 \bl{\infer{\Gamma \vdash F_1 \wedge F_2}{\Gamma \vdash F_1 \quad \Gamma \vdash F_2}} |
|
846 \end{center} |
|
847 |
|
848 \end{frame}} |
|
849 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
850 |
|
851 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
852 \mode<presentation>{ |
|
853 \begin{frame}[t] |
|
854 |
|
855 I want to prove \bl{$\Gamma \vdash \text{Pred}$}\bigskip\bigskip\pause |
|
856 |
|
857 \begin{enumerate} |
|
858 \item I found that \bl{$\Gamma$} contains the assumption \bl{$F_1 \Rightarrow F_2$}\bigskip\pause |
|
859 \item If I can prove \bl{$\Gamma \vdash F_1$},\pause{} then I can prove |
|
860 \begin{center} |
|
861 \bl{$\Gamma \vdash F_2$} |
|
862 \end{center}\bigskip\pause |
|
863 |
|
864 \item So better I try to prove \bl{$\Gamma \vdash \text{Pred}$} with the additional assumption |
|
865 \bl{$F_2$}.\bigskip |
|
866 \begin{center} |
|
867 \bl{$F_2, \Gamma \vdash \text{Pred}$} |
|
868 \end{center} |
|
869 \end{enumerate} |
|
870 |
|
871 \only<4>{ |
|
872 \begin{textblock}{11}(1,10.5) |
|
873 \bl{\infer{\Gamma\vdash F_2}{\Gamma\vdash F_1\Rightarrow F_2 & \Gamma\vdash F_1}} |
|
874 \end{textblock}} |
|
875 |
|
876 |
|
877 \end{frame}} |
|
878 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
879 \newcommand{\dn}{\stackrel{\mbox{\scriptsize def}}{=}}% for definitions |
|
880 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
881 \mode<presentation>{ |
|
882 \begin{frame}[c] |
|
883 |
|
884 \begin{itemize} |
891 \begin{itemize} |
885 \item \bl{$P$} is entitled to do \bl{$F$}\smallskip\\ |
892 \item \bl{$P$} is entitled to do \bl{$F$}\smallskip\\ |
886 \bl{$P \,\text{controls}\, F \,\dn\, (P\,\text{says}\, F) \Rightarrow F$}\medskip |
893 \bl{$P \,\text{controls}\, F \,\dn\, (P\,\text{says}\, F) \Rightarrow F$}\medskip |
887 |
894 |
888 \begin{center} |
895 \begin{center} |
889 \bl{\infer{\Gamma \vdash F}{\Gamma \vdash P\,\text{controls}\, F & \Gamma \vdash P\,\text{says}\,F}} |
896 \bl{\infer{\Gamma \vdash F}{\Gamma \vdash P\,\text{controls}\, F & \Gamma \vdash P\,\text{says}\,F}} |
890 \end{center} |
897 \end{center} |
891 |
898 |
892 \item \bl{$P$} speaks for \bl{$Q$}\smallskip\\ |
899 |
893 \bl{$P \mapsto Q \,\dn\, \forall F. (P\,\text{says}\, F) \Rightarrow (Q \,\text{says}\,F)$}\medskip |
|
894 |
|
895 \begin{center} |
|
896 \bl{\infer{\Gamma \vdash Q\,\text{says}\,F}{\Gamma \vdash P\mapsto Q & \Gamma \vdash P\,\text{says}\,F}} |
|
897 \medskip\\ |
|
898 \bl{\infer{\Gamma \vdash P\,\text{controls}\,F}{\Gamma \vdash P\mapsto Q & \Gamma \vdash Q\,\text{controls}\,F}}\\ |
|
899 |
|
900 \end{center} |
|
901 \end{itemize} |
900 \end{itemize} |
902 |
901 |
903 \end{frame}} |
902 \end{frame}} |
904 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
903 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
905 |
904 |
906 |
905 |
907 |
906 |
908 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
909 \mode<presentation>{ |
|
910 \begin{frame}[c] |
|
911 \frametitle{Protocol Specifications} |
|
912 |
|
913 The Needham-Schroeder Protocol: |
|
914 |
|
915 \begin{center} |
|
916 \begin{tabular}{@ {\hspace{-7mm}}l@{\hspace{2mm}}r@ {\hspace{1mm}}l} |
|
917 Message 1 & \bl{$A \rightarrow S :$} & \bl{$A, B, N_A$}\\ |
|
918 Message 2 & \bl{$S \rightarrow A :$} & \bl{$\{N_A, B, K_{AB},\{K_{AB}, A\}_{K_{BS}} \}_{K_{AS}}$}\\ |
|
919 Message 3 & \bl{$A \rightarrow B :$} & \bl{$\{K_{AB}, A\}_{K_{BS}} $}\\ |
|
920 Message 4 & \bl{$B \rightarrow A :$} & \bl{$\{N_B\}_{K_{AB}}$}\\ |
|
921 Message 5 & \bl{$A \rightarrow B :$} & \bl{$\{N_B-1\}_{K_{AB}}$}\\ |
|
922 \end{tabular} |
|
923 \end{center} |
|
924 |
|
925 \end{frame}} |
|
926 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
927 |
907 |
928 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
908 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
929 \mode<presentation>{ |
909 \mode<presentation>{ |
930 \begin{frame}[c] |
910 \begin{frame}[c] |
931 \frametitle{Trusted Third Party} |
911 \frametitle{Trusted Third Party} |
943 \end{center} |
923 \end{center} |
944 |
924 |
945 \end{frame}} |
925 \end{frame}} |
946 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
926 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
947 |
927 |
948 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
928 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
949 \mode<presentation>{ |
929 \mode<presentation>{ |
950 \begin{frame}[c] |
930 \begin{frame}[c] |
951 \frametitle{Sending Messages} |
931 \frametitle{Sending Rule} |
952 |
932 |
953 \begin{itemize} |
933 \bl{\begin{center} |
954 \item Alice sends a message \bl{$m$} |
934 \mbox{\infer{\Gamma \vdash Q \;\text{says}\; F} |
|
935 {\Gamma \vdash P \;\text{says}\; F & \Gamma \vdash P \;\text{sends}\; Q : F}} |
|
936 \end{center}}\bigskip\pause |
|
937 |
|
938 \bl{$P \,\text{sends}\, Q : F \dn$}\\ |
|
939 \hspace{6mm}\bl{$(P \,\text{says}\, F) \Rightarrow (Q \,\text{says}\, F)$} |
|
940 |
|
941 \end{frame}} |
|
942 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
943 |
|
944 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
945 \mode<presentation>{ |
|
946 \begin{frame}[c] |
|
947 \frametitle{Trusted Third Party} |
|
948 |
955 \begin{center} |
949 \begin{center} |
956 \bl{Alice says $m$} |
950 \bl{\begin{tabular}{l} |
957 \end{center}\medskip\pause |
951 $A$ sends $S$ : $\text{Connect}(A,B)$\\ |
958 |
952 \bl{$S \,\text{says}\, (\text{Connect}(A,B) \Rightarrow$}\\ |
959 \item Alice sends an encrypted message \bl{$m$}\\ (with key \bl{$K$}) |
953 \hspace{2.5cm}\bl{$\{K_{AB}\}_{K_{AS}} \wedge |
960 \begin{center} |
954 \{\{K_{AB}\}_{K_{BS}}\}_{K_{AS}})$}\\ |
961 \bl{Alice says $\{m\}_K$} |
955 $S$ sends $A$ : $\{K_{AB}\}_{K_{AS}}$ \bl{$\wedge$} $\{\{K_{AB}\}_{K_{BS}}\}_{K_{AS}}$\\ |
962 \end{center}\medskip\pause |
956 $A$ sends $B$ : $\{K_{AB}\}_{K_{BS}}$\\ |
963 |
957 $A$ sends $B$ : $\{m\}_{K_{AB}}$ |
964 \item Decryption of Alice's message\smallskip |
958 \end{tabular}} |
965 \begin{center} |
959 \end{center}\bigskip\pause |
966 \bl{\mbox{\infer{\Gamma \vdash \text{Alice}\;\text{says}\;m} |
960 |
967 {\Gamma \vdash \text{Alice}\;\text{says}\;\{m\}_K & \Gamma \vdash \text{Alice}\,\text{says}\,K}}} |
961 |
968 \end{center} |
962 \bl{$\Gamma \vdash B \,\text{says} \, m$}? |
969 \end{itemize} |
963 \end{frame}} |
970 |
964 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
971 \end{frame}} |
965 |
972 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
973 |
|
974 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
975 \mode<presentation>{ |
|
976 \begin{frame}[c] |
|
977 \frametitle{Encryption} |
|
978 |
|
979 \begin{itemize} |
|
980 \item Encryption of a message\smallskip |
|
981 \begin{center} |
|
982 \bl{\mbox{\infer{\Gamma \vdash \text{Alice}\;\text{says}\;\{m\}_K} |
|
983 {\Gamma \vdash \text{Alice}\;\text{says}\;m & \Gamma \vdash \text{Alice}\,\text{says}\,K}}} |
|
984 \end{center} |
|
985 \end{itemize} |
|
986 |
|
987 \end{frame}} |
|
988 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
989 |
|
990 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
966 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
991 \mode<presentation>{ |
967 \mode<presentation>{ |
992 \begin{frame}[c] |
968 \begin{frame}[c] |
993 \frametitle{Public/Private Keys} |
969 \frametitle{Public/Private Keys} |
994 |
970 |
1004 \end{itemize} |
980 \end{itemize} |
1005 |
981 |
1006 \end{frame}} |
982 \end{frame}} |
1007 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
983 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1008 |
984 |
1009 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1010 \mode<presentation>{ |
|
1011 \begin{frame}[c] |
|
1012 \frametitle{Trusted Third Party} |
|
1013 |
|
1014 \begin{itemize} |
|
1015 \item Alice calls Sam for a key to communicate with Bob |
|
1016 \item Sam responds with a key that Alice can read and a key Bob can read (pre-shared) |
|
1017 \item Alice sends the message encrypted with the key and the second key it recieved |
|
1018 \end{itemize}\bigskip |
|
1019 |
|
1020 \begin{center} |
|
1021 \bl{\begin{tabular}{lcl} |
|
1022 $A$ sends $S$ &:& $\textit{Connect}(A,B)$\\ |
|
1023 $S$ sends $A$ &:& $\{K_{AB}\}_{K_{AS}}$ \textcolor{black}{and} $\{\{K_{AB}\}_{K_{BS}}\}_{K_{AS}}$\\ |
|
1024 $A$ sends $B$ &:& $\{K_{AB}\}_{K_{BS}}$\\ |
|
1025 $A$ sends $B$ &:& $\{m\}_{K_{AB}}$ |
|
1026 \end{tabular}} |
|
1027 \end{center} |
|
1028 |
|
1029 \end{frame}} |
|
1030 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1031 |
|
1032 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1033 \mode<presentation>{ |
|
1034 \begin{frame}[c] |
|
1035 \frametitle{Controls} |
|
1036 \small |
|
1037 |
|
1038 \begin{itemize} |
|
1039 \item \bl{\isa{P\ controls\ F\ {\isaliteral{5C3C65717569763E}{\isasymequiv}}\ {\isaliteral{28}{\isacharparenleft}}P\ says\ F{\isaliteral{29}{\isacharparenright}}\ {\isaliteral{5C3C52696768746172726F773E}{\isasymRightarrow}}\ F}} |
|
1040 |
|
1041 \item its meaning ``\bl{P} is entitled to do \bl{F}'' |
|
1042 \item if \bl{P controls F} and \bl{P says F} then \bl{F}\pause |
|
1043 |
|
1044 \begin{center} |
|
1045 \bl{\mbox{ |
|
1046 \infer{\mbox{\isa{{\isaliteral{5C3C47616D6D613E}{\isasymGamma}}\ {\isaliteral{5C3C7475726E7374696C653E}{\isasymturnstile}}\ F}}} |
|
1047 {\mbox{\isa{{\isaliteral{5C3C47616D6D613E}{\isasymGamma}}\ {\isaliteral{5C3C7475726E7374696C653E}{\isasymturnstile}}\ P\ controls\ F}} & \mbox{\isa{{\isaliteral{5C3C47616D6D613E}{\isasymGamma}}\ {\isaliteral{5C3C7475726E7374696C653E}{\isasymturnstile}}\ P\ says\ F}}} |
|
1048 }} |
|
1049 \end{center}\pause |
|
1050 |
|
1051 \begin{center} |
|
1052 \bl{\mbox{ |
|
1053 \infer{\mbox{\isa{{\isaliteral{5C3C47616D6D613E}{\isasymGamma}}\ {\isaliteral{5C3C7475726E7374696C653E}{\isasymturnstile}}\ F}}} |
|
1054 {\mbox{\isa{{\isaliteral{5C3C47616D6D613E}{\isasymGamma}}\ {\isaliteral{5C3C7475726E7374696C653E}{\isasymturnstile}}\ {\isaliteral{28}{\isacharparenleft}}P\ says\ F{\isaliteral{29}{\isacharparenright}}\ {\isaliteral{5C3C52696768746172726F773E}{\isasymRightarrow}}\ F}} & \mbox{\isa{{\isaliteral{5C3C47616D6D613E}{\isasymGamma}}\ {\isaliteral{5C3C7475726E7374696C653E}{\isasymturnstile}}\ P\ says\ F}}} |
|
1055 }} |
|
1056 \end{center} |
|
1057 \end{itemize} |
|
1058 |
|
1059 \end{frame}} |
|
1060 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1061 % |
|
1062 |
|
1063 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
985 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1064 \mode<presentation>{ |
986 \mode<presentation>{ |
1065 \begin{frame}[c] |
987 \begin{frame}[c] |
1066 \frametitle{Security Levels} |
988 \frametitle{Security Levels} |
1067 \small |
989 \small |
1239 \end{frame}} |
1161 \end{frame}} |
1240 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1162 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1241 % |
1163 % |
1242 |
1164 |
1243 |
1165 |
|
1166 \end{document} |
|
1167 |
|
1168 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1169 \mode<presentation>{ |
|
1170 \begin{frame}[c] |
|
1171 \frametitle{Encryption} |
|
1172 |
|
1173 \begin{itemize} |
|
1174 \item Encryption of a message\smallskip |
|
1175 \begin{center} |
|
1176 \bl{\mbox{\infer{\Gamma \vdash \text{Alice}\;\text{says}\;\{m\}_K} |
|
1177 {\Gamma \vdash \text{Alice}\;\text{says}\;m & \Gamma \vdash \text{Alice}\,\text{says}\,K}}} |
|
1178 \end{center} |
|
1179 \end{itemize} |
|
1180 |
|
1181 \end{frame}} |
|
1182 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1183 |
|
1184 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1185 \mode<presentation>{ |
|
1186 \begin{frame}[c] |
|
1187 \frametitle{Public/Private Keys} |
|
1188 |
|
1189 \begin{itemize} |
|
1190 \item Bob has a private and public key: \bl{$K_{Bob}^{pub}$}, \bl{$K_{Bob}^{priv}$}\bigskip |
|
1191 \begin{center} |
|
1192 \bl{\mbox{\infer{\Gamma \vdash \text{Alice}\;\text{says}\;m} |
|
1193 {\Gamma \vdash \text{Alice}\;\text{says}\;\{m\}_{K_{Bob}^{pub}} & |
|
1194 \Gamma \vdash K_{Bob}^{priv}}}} |
|
1195 \end{center}\bigskip\pause |
|
1196 |
|
1197 \item this is {\bf not} a derived rule! |
|
1198 \end{itemize} |
|
1199 |
|
1200 \end{frame}} |
|
1201 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1202 |
|
1203 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1204 \mode<presentation>{ |
|
1205 \begin{frame}[c] |
|
1206 \frametitle{Trusted Third Party} |
|
1207 |
|
1208 \begin{itemize} |
|
1209 \item Alice calls Sam for a key to communicate with Bob |
|
1210 \item Sam responds with a key that Alice can read and a key Bob can read (pre-shared) |
|
1211 \item Alice sends the message encrypted with the key and the second key it recieved |
|
1212 \end{itemize}\bigskip |
|
1213 |
|
1214 \begin{center} |
|
1215 \bl{\begin{tabular}{lcl} |
|
1216 $A$ sends $S$ &:& $\textit{Connect}(A,B)$\\ |
|
1217 $S$ sends $A$ &:& $\{K_{AB}\}_{K_{AS}}$ \textcolor{black}{and} $\{\{K_{AB}\}_{K_{BS}}\}_{K_{AS}}$\\ |
|
1218 $A$ sends $B$ &:& $\{K_{AB}\}_{K_{BS}}$\\ |
|
1219 $A$ sends $B$ &:& $\{m\}_{K_{AB}}$ |
|
1220 \end{tabular}} |
|
1221 \end{center} |
|
1222 |
|
1223 \end{frame}} |
|
1224 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1225 |
|
1226 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1227 \mode<presentation>{ |
|
1228 \begin{frame}[c] |
|
1229 \frametitle{Controls} |
|
1230 \small |
|
1231 |
|
1232 \begin{itemize} |
|
1233 \item \bl{\isa{P\ controls\ F\ {\isaliteral{5C3C65717569763E}{\isasymequiv}}\ {\isaliteral{28}{\isacharparenleft}}P\ says\ F{\isaliteral{29}{\isacharparenright}}\ {\isaliteral{5C3C52696768746172726F773E}{\isasymRightarrow}}\ F}} |
|
1234 |
|
1235 \item its meaning ``\bl{P} is entitled to do \bl{F}'' |
|
1236 \item if \bl{P controls F} and \bl{P says F} then \bl{F}\pause |
|
1237 |
|
1238 \begin{center} |
|
1239 \bl{\mbox{ |
|
1240 \infer{\mbox{\isa{{\isaliteral{5C3C47616D6D613E}{\isasymGamma}}\ {\isaliteral{5C3C7475726E7374696C653E}{\isasymturnstile}}\ F}}} |
|
1241 {\mbox{\isa{{\isaliteral{5C3C47616D6D613E}{\isasymGamma}}\ {\isaliteral{5C3C7475726E7374696C653E}{\isasymturnstile}}\ P\ controls\ F}} & \mbox{\isa{{\isaliteral{5C3C47616D6D613E}{\isasymGamma}}\ {\isaliteral{5C3C7475726E7374696C653E}{\isasymturnstile}}\ P\ says\ F}}} |
|
1242 }} |
|
1243 \end{center}\pause |
|
1244 |
|
1245 \begin{center} |
|
1246 \bl{\mbox{ |
|
1247 \infer{\mbox{\isa{{\isaliteral{5C3C47616D6D613E}{\isasymGamma}}\ {\isaliteral{5C3C7475726E7374696C653E}{\isasymturnstile}}\ F}}} |
|
1248 {\mbox{\isa{{\isaliteral{5C3C47616D6D613E}{\isasymGamma}}\ {\isaliteral{5C3C7475726E7374696C653E}{\isasymturnstile}}\ {\isaliteral{28}{\isacharparenleft}}P\ says\ F{\isaliteral{29}{\isacharparenright}}\ {\isaliteral{5C3C52696768746172726F773E}{\isasymRightarrow}}\ F}} & \mbox{\isa{{\isaliteral{5C3C47616D6D613E}{\isasymGamma}}\ {\isaliteral{5C3C7475726E7374696C653E}{\isasymturnstile}}\ P\ says\ F}}} |
|
1249 }} |
|
1250 \end{center} |
|
1251 \end{itemize} |
|
1252 |
|
1253 \end{frame}} |
|
1254 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1255 % |
|
1256 |
|
1257 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1258 \mode<presentation>{ |
|
1259 \begin{frame}[c] |
|
1260 \frametitle{Security Levels} |
|
1261 \small |
|
1262 |
|
1263 \begin{itemize} |
|
1264 \item Top secret (\bl{$T\!S$}) |
|
1265 \item Secret (\bl{$S$}) |
|
1266 \item Public (\bl{$P$}) |
|
1267 \end{itemize} |
|
1268 |
|
1269 \begin{center} |
|
1270 \bl{$slev(P) < slev(S) < slev(T\!S)$}\pause |
|
1271 \end{center} |
|
1272 |
|
1273 \begin{itemize} |
|
1274 \item Bob has a clearance for ``secret'' |
|
1275 \item Bob can read documents that are public or sectret, but not top secret |
|
1276 \end{itemize} |
|
1277 |
|
1278 \end{frame}} |
|
1279 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1280 % |
|
1281 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1282 \mode<presentation>{ |
|
1283 \begin{frame}[c] |
|
1284 \frametitle{Reading a File} |
|
1285 |
|
1286 \bl{\begin{center} |
|
1287 \begin{tabular}{c} |
|
1288 \begin{tabular}{@ {}l@ {}} |
|
1289 \only<2->{\textcolor{red}{$slev($File$)$ $<$ $slev($Bob$)$ $\Rightarrow$}}\\ |
|
1290 \only<2->{\hspace{3cm}}Bob controls Permitted $($File, read$)$\\ |
|
1291 Bob says Permitted $($File, read$)$\only<2->{\\} |
|
1292 \only<2>{\textcolor{red}{$slev($File$)$ $<$ $slev($Bob$)$}}% |
|
1293 \only<3>{\textcolor{red}{$slev($File$)$ $=$ $P$}\\}% |
|
1294 \only<3>{\textcolor{red}{$slev($Bob$)$ $=$ $S$}\\}% |
|
1295 \only<3>{\textcolor{red}{$slev(P)$ $<$ $slev(S)$}\\}% |
|
1296 \end{tabular}\\ |
|
1297 \hline |
|
1298 Permitted $($File, read$)$ |
|
1299 \end{tabular} |
|
1300 \end{center}} |
|
1301 |
|
1302 \end{frame}} |
|
1303 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1304 % |
|
1305 |
|
1306 |
|
1307 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1308 \mode<presentation>{ |
|
1309 \begin{frame}[c] |
|
1310 \frametitle{Substitution Rule} |
|
1311 \small |
|
1312 |
|
1313 \bl{\begin{center} |
|
1314 \begin{tabular}{c} |
|
1315 $\Gamma \vdash slev(P) = l_1$ \hspace{4mm} $\Gamma \vdash slev(Q) = l_2$ |
|
1316 \hspace{4mm} $\Gamma \vdash l_1 < l_2$\\\hline |
|
1317 $\Gamma \vdash slev(P) < slev(Q)$ |
|
1318 \end{tabular} |
|
1319 \end{center}}\bigskip\pause |
|
1320 |
|
1321 \begin{itemize} |
|
1322 \item \bl{$slev($Bob$)$ $=$ $S$} |
|
1323 \item \bl{$slev($File$)$ $=$ $P$} |
|
1324 \item \bl{$slev(P) < slev(S)$} |
|
1325 \end{itemize} |
|
1326 |
|
1327 \end{frame}} |
|
1328 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1329 % |
|
1330 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1331 \mode<presentation>{ |
|
1332 \begin{frame}[c] |
|
1333 \frametitle{Reading a File} |
|
1334 |
|
1335 \bl{\begin{center} |
|
1336 \begin{tabular}{c} |
|
1337 \begin{tabular}{@ {}l@ {}} |
|
1338 $slev($File$)$ $<$ $slev($Bob$)$ $\Rightarrow$\\ |
|
1339 \hspace{3cm}Bob controls Permitted $($File, read$)$\\ |
|
1340 Bob says Permitted $($File, read$)$\\ |
|
1341 $slev($File$)$ $=$ $P$\\ |
|
1342 $slev($Bob$)$ $=$ $T\!S$\\ |
|
1343 \only<1>{\textcolor{red}{$?$}}% |
|
1344 \only<2>{\textcolor{red}{$slev(P) < slev(S)$}\\}% |
|
1345 \only<2>{\textcolor{red}{$slev(S) < slev(T\!S)$}}% |
|
1346 \end{tabular}\\ |
|
1347 \hline |
|
1348 Permitted $($File, read$)$ |
|
1349 \end{tabular} |
|
1350 \end{center}} |
|
1351 |
|
1352 \end{frame}} |
|
1353 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1354 % |
|
1355 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1356 \mode<presentation>{ |
|
1357 \begin{frame}[c] |
|
1358 \frametitle{Transitivity Rule} |
|
1359 \small |
|
1360 |
|
1361 \bl{\begin{center} |
|
1362 \begin{tabular}{c} |
|
1363 $\Gamma \vdash l_1 < l_2$ |
|
1364 \hspace{4mm} $\Gamma \vdash l_2 < l_3$\\\hline |
|
1365 $\Gamma \vdash l_1 < l_3$ |
|
1366 \end{tabular} |
|
1367 \end{center}}\bigskip |
|
1368 |
|
1369 \begin{itemize} |
|
1370 \item \bl{$slev(P) < slev (S)$} |
|
1371 \item \bl{$slev(S) < slev (T\!S)$} |
|
1372 \item[] \bl{$slev(P) < slev (T\!S)$} |
|
1373 \end{itemize} |
|
1374 |
|
1375 \end{frame}} |
|
1376 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1377 % |
|
1378 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1379 \mode<presentation>{ |
|
1380 \begin{frame}[c] |
|
1381 \frametitle{Reading Files} |
|
1382 |
|
1383 \begin{itemize} |
|
1384 \item Access policy for reading |
|
1385 \end{itemize} |
|
1386 |
|
1387 \bl{\begin{center} |
|
1388 \begin{tabular}{c} |
|
1389 \begin{tabular}{@ {}l@ {}} |
|
1390 $\forall f.\;slev(f)$ \only<1>{$<$}\only<2>{\textcolor{red}{$\le$}} $slev($Bob$)$ $\Rightarrow$\\ |
|
1391 \hspace{3cm}Bob controls Permitted $(f$, read$)$\\ |
|
1392 Bob says Permitted $($File, read$)$\\ |
|
1393 $slev($File$)$ $=$ \only<1>{$P$}\only<2>{\textcolor{red}{$T\!S$}}\\ |
|
1394 $slev($Bob$)$ $=$ $T\!S$\\ |
|
1395 $slev(P) < slev(S)$\\ |
|
1396 $slev(S) < slev(T\!S)$ |
|
1397 \end{tabular}\\ |
|
1398 \hline |
|
1399 Permitted $($File, read$)$ |
|
1400 \end{tabular} |
|
1401 \end{center}} |
|
1402 |
|
1403 \end{frame}} |
|
1404 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1405 % |
|
1406 |
|
1407 |
|
1408 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1409 \mode<presentation>{ |
|
1410 \begin{frame}[c] |
|
1411 \frametitle{Writing Files} |
|
1412 |
|
1413 \begin{itemize} |
|
1414 \item Access policy for \underline{writing} |
|
1415 \end{itemize} |
|
1416 |
|
1417 \bl{\begin{center} |
|
1418 \begin{tabular}{c} |
|
1419 \begin{tabular}{@ {}l@ {}} |
|
1420 $\forall f.\;slev($Bob$)$ $\le$ $slev(f)$ $\Rightarrow$\\ |
|
1421 \hspace{3cm}Bob controls Permitted $(f$, write$)$\\ |
|
1422 Bob says Permitted $($File, write$)$\\ |
|
1423 $slev($File$)$ $=$ $T\!S$\\ |
|
1424 $slev($Bob$)$ $=$ $S$\\ |
|
1425 $slev(P) < slev(S)$\\ |
|
1426 $slev(S) < slev(T\!S)$ |
|
1427 \end{tabular}\\ |
|
1428 \hline |
|
1429 Permitted $($File, write$)$ |
|
1430 \end{tabular} |
|
1431 \end{center}} |
|
1432 |
|
1433 \end{frame}} |
|
1434 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1435 % |
|
1436 |
|
1437 |
1244 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1438 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1245 \mode<presentation>{ |
1439 \mode<presentation>{ |
1246 \begin{frame}[c] |
1440 \begin{frame}[c] |
1247 \frametitle{Sending Rule} |
1441 \frametitle{Sending Rule} |
1248 |
1442 |