src/HOL/Auth/OtwayRees_Bad.ML
changeset 2417 95f275c8476e
parent 2375 14539397fc04
child 2451 ce85a2aafc7a
equal deleted inserted replaced
2416:8ba800a46e14 2417:95f275c8476e
   315  "!!evs. [| Says Server B {|NA, X, Crypt (shrK B) {|NB, K|}|}      \
   315  "!!evs. [| Says Server B {|NA, X, Crypt (shrK B) {|NB, K|}|}      \
   316 \            : set_of_list evs;                                    \ 
   316 \            : set_of_list evs;                                    \ 
   317 \           Says Server B' {|NA',X',Crypt (shrK B') {|NB',K|}|}    \
   317 \           Says Server B' {|NA',X',Crypt (shrK B') {|NB',K|}|}    \
   318 \            : set_of_list evs;                                    \
   318 \            : set_of_list evs;                                    \
   319 \           evs : otway |] ==> X=X' & B=B' & NA=NA' & NB=NB'";
   319 \           evs : otway |] ==> X=X' & B=B' & NA=NA' & NB=NB'";
   320 by (dtac lemma 1);
   320 by (prove_unique_tac lemma 1);
   321 by (REPEAT (etac exE 1));
       
   322 (*Duplicate the assumption*)
       
   323 by (forw_inst_tac [("psi", "ALL C.?P(C)")] asm_rl 1);
       
   324 by (fast_tac (!claset addSDs [spec]) 1);
       
   325 qed "unique_session_keys";
   321 qed "unique_session_keys";
   326 
   322 
   327 
   323 
   328 (*Crucial security property, but not itself enough to guarantee correctness!*)
   324 (*Crucial security property, but not itself enough to guarantee correctness!*)
   329 goal thy 
   325 goal thy