src/HOL/Auth/TLS.thy
changeset 4421 88639289be39
parent 4198 c63639beeff1
child 5074 753d4daff1df
equal deleted inserted replaced
4420:16b92885de6b 4421:88639289be39
    87           ==> Says Spy B X # evs : tls"
    87           ==> Says Spy B X # evs : tls"
    88 
    88 
    89     SpyKeys (*The spy may apply PRF & sessionK to available nonces*)
    89     SpyKeys (*The spy may apply PRF & sessionK to available nonces*)
    90          "[| evsSK: tls;
    90          "[| evsSK: tls;
    91 	     Says Spy B {|Nonce NA, Nonce NB, Nonce M|} : set evsSK |]
    91 	     Says Spy B {|Nonce NA, Nonce NB, Nonce M|} : set evsSK |]
    92           ==> Says Spy B {| Nonce (PRF(M,NA,NB)),
    92           ==> Notes Spy {| Nonce (PRF(M,NA,NB)),
    93 			    Key (sessionK((NA,NB,M),b)) |} # evsSK : tls"
    93 			   Key (sessionK((NA,NB,M),b)) |} # evsSK : tls"
    94 
    94 
    95     ClientHello
    95     ClientHello
    96 	 (*(7.4.1.2)
    96 	 (*(7.4.1.2)
    97 	   PA represents CLIENT_VERSION, CIPHER_SUITES and COMPRESSION_METHODS.
    97 	   PA represents CLIENT_VERSION, CIPHER_SUITES and COMPRESSION_METHODS.
    98 	   It is uninterpreted but will be confirmed in the FINISHED messages.
    98 	   It is uninterpreted but will be confirmed in the FINISHED messages.
   127            and another MASTER SECRET is highly unlikely (even though
   127            and another MASTER SECRET is highly unlikely (even though
   128 	   both items have the same length, 48 bytes).
   128 	   both items have the same length, 48 bytes).
   129            The Note event records in the trace that she knows PMS
   129            The Note event records in the trace that she knows PMS
   130                (see REMARK at top). *)
   130                (see REMARK at top). *)
   131          "[| evsCX: tls;  A ~= B;  Nonce PMS ~: used evsCX;  PMS ~: range PRF;
   131          "[| evsCX: tls;  A ~= B;  Nonce PMS ~: used evsCX;  PMS ~: range PRF;
   132              Says B'  A {|Nonce NB, Number SID, Number PB|} : set evsCX;
   132              Says B' A (certificate B KB) : set evsCX |]
   133              Says B'' A (certificate B KB) : set evsCX |]
       
   134           ==> Says A B (Crypt KB (Nonce PMS))
   133           ==> Says A B (Crypt KB (Nonce PMS))
   135 	      # Notes A {|Agent B, Nonce PMS|}
   134 	      # Notes A {|Agent B, Nonce PMS|}
   136 	      # evsCX  :  tls"
   135 	      # evsCX  :  tls"
   137 
   136 
   138     CertVerify
   137     CertVerify