The Needham-Schroeder-Lowe protocol

Size: px
Start display at page:

Download "The Needham-Schroeder-Lowe protocol"

Transcription

1 The Needham-Schroeder-Lowe protocol Unbounded sessions Principals run either initiator or responder role in each of their sessions We adopt the following conventions throughout this paper: honest principals will be denoted by A, B, C, X, Y while arbitrary principals, honest or not, by. For honest and general randomness we use r and s respectively. Honestly generated nonces, will be denoted by capital letters N while strings received from the network, not necessarily honest, will be denoted by n, m. 1. A B : {N 1, A} B 2. B A : {N 1, N 2, B} A 3. A B : {N 2 } B Roles Init A NSL[A, i,, N 1, n 2, r 1, s 2, r 3 ] A generates i N 1 ; A sends i {N 1, A} r1 ; A receivesi {N 1, n 2, } s2 A ; A sendsi {n 2 } r3 Resp B NSL[B, i,, n 1, N 2, s 1, r 2, s 3 ] B receives i {n 1, } s1 B ; B generatesi N 2 ; B sends i {n 1, N 2, B} r2 ; B receivesi {N 2 } s3 B Abbreviations Honest principals in each of their sessions follow either the initiator or the responder role and do nothing else. FOLL(Roles A NSL) ) i (,N1,n 2,r 1,s 2,r 3 Foll(Init A NSL[A, i,, N 1, n 2, r 1, s 2, r 3 ]),n 1,N 2,s 1,r 2,s 3 Foll(Resp A NSL[A, i,, n 1, N 2, s 1, r 2, s 3 ]) Protocol Prot AB NSL[A, i, B, i, N 1, N 2, r 1, r 2, r 3 ] A generates i N 1 ; A sends i {N 1, A} r1 B ; B receivesi {N 1, A} r1 B ; B generatesi N 2 ; B sends i {N 1, N 2, B} r2 A receives i {N 1, N 2, B} r2 A ; A sendsi {N 2 } r3 B ; B {N receivesi 2 } s3 B For this protocol, we need an additional axiom, namely that n, N Without this, there is a serious attack where n is of sort nonce (not hnonce). a) We first prove SecSend. Let C A,B [N] i,n,r,x A,B,Y A,B (X generates i N; X sends i {N, X} r Y X generates i N; X sends i {n, N, X} r Y ) (1) and let C (t A,B [X, i, t, m, N] i,n,n,r,r,y A,B ( {n, N, X} r Y (t = {n, N, X} r Y (m = N N N)) ) (2) ( X generates i N; X sends i {N, X} r Y t {N, X} r ) Y ( X generates i N; X sends i {N, X} r X t {n} r ) X ( Y generates i N; Y sends i {n, N, Y } r ) ) X t {N} r Y A ; 1

2 The blue line is an optional addition, we comment on it in the proof. So SecSend takes the form SecSend( A, C, C ) ( C[N] Y A Y sends i2 τ 2 t 2 N,Y,i2,τ 2,t 2,u 2,m 2 m2 (m 2 u 2 m 2 Y ( m 2 t 2 C A (Y, i 2, t 2, m 2, N) )) ( m 2 Y m 2 t 2 C A (Y, i 2, t 2, m 2, N) ) (3) u1 ( m1.m 1 u 1 m 1 X( i1,τ 1.<τ 2,t 1,X.X A( m1 t 1 X sends i1 t 1 C A (X, i 1, t 1, m 1, N) )) Sec τ2 ( A, ) u 1, u 2, N) N.C[N ]Sec τ2 ( A, N ) u1 ( m1.m 1 u 1 m 1 X( i1,τ 1.<τ 2,t 1,X.X A( m1 t 1 X sends i1 t 1 C A (X, i 1, t 1, m 1, N) )) Sec τ2 ( A, ) ) u 1, u 2, m 2, t 2, N) We will show that FOLL(Roles A NSL) FOLL(Roles B NSL) SecSend( A, B, C, C ). Proof of a.) Suppose FOLL(Roles A NSL) FOLL(Roles B NSL) and the premise of SecSend hold. Let N, Y, i 2, τ 2, t 2, u 2, m 2 be as in the premise of SecSend, and let u 1 be such that We have to show m1.m 1 u 1 ( i1,τ 1.<τ 2,t 1,X.X A( m1 t 1 X sends i1 t 1 C A (X, i 1, t 1, m 1, N) )). Sec τ2 ( A, u 1, u 2, m 2, t 2, N). By the premise of (3), Y sends i2 τ 2 t 2. From FOLL(Roles A NSL) FOLL(Roles B NSL), FOLL(Roles Y NSL) follows, and so,n1,n 2,r 1,s 2,r 3 Foll(Init Y NSL[Y, i 2,, N 1, n 2, r 1, s 2, r 3 ]),n 1,N 2,s 1,r 2,s 3 Foll(Resp Y NSL[Y, i 2,, n 1, N 2, s 1, r 2, s 3 ]). Furthermore, (Init Y NSL[Y, i 2,, N 1, n 2, r 1, s 2, r 3 ]) Foll(Resp Y NSL[Y, i 2,, n 1, N 2, s 1, r 2, s 3 ]) because FOLL requires that in every session only the initiator or the responder role is executed, and by term axioms, no send action of responder s role can be equal any of the initiator s send actions, and no send action of the initiator s role can be equal to any of the responder s send actions. So there are two possibilities. 1/2.) If Init Y NSL[Y, i 2,, N 1, n 2, r 1, s 2, r 3 ]), that is, the role of i 2 is that of the initiator s, then FOLL(Init Y NSL) implies that t 2 = {N 1, Y } r1 t = {n 2} r3 1/2.1/2.) Suppose first that t 2 = {N 1, Y } r1. Then by FOLL(Init Y NSL), Y generates i2 N 1 ; Y sends i2 {N 1, Y } r1. 1/2.1/2.1/2.) If N 1 = N, then C[N 1 ] is satisfied, which by VI.1.b implies Y sends i2 {N 1, Y } r Z for Z being A or B, and so by FOLL(Init Y NSL) and term axioms, = Z. 2

3 In this case, the second conjunct of C A (Y, i 2, t 2, m 2, N) is not satisfied, therefore, since we assumed that C A (Y, i 2, t 2, m 2, N) is satisfied, m 2 = Y. By the premise of SecSend, we have Therefore, since in this case the encryption is secure, we have by axiom V.i. Since m 2 = Y, we also have, by V.b and V.f that Sec τ2 ( A, u 1, u 2, N). Sec τ2 ( A, B, u 1, u 2, {N 1, A } r1 B, N) Sec τ2 ( A, B, u 1, u 2, m 2, {N 1, A } r1 B, N). 1/2.1/2.2/2.) Let N 1 N. Since, by the initiator s protocol role, there is no send action before Y sends i2 {N 1, Y } r1, by the third item of axiom V.a, we have Sec τ2 ( A, u 1, u 2, N 1, N). Then by V.b, we get and finally, by V.j, Sec τ2 ( A, u 1, u 2, N 1, A, N), Sec τ2 ( A, u 1, u 2, N 1, {N 1, Y } r1, N). By the premise of SecSend, m 2 {N 1, Y } r1. So m 2 is either N 1 or Y. If it is N 1, then we are done. If it is Y, then since names can always be pulled into the second argument of Sec, we also have by V.b that Sec τ2 ( A, u 1, u 2, m 2, {N 1, Y } r1, N). 1/2.2/2.) If t 2 = {n 2 } r3, then by the premise of SecSend, m 2 is either Y or n 2. 1/2.2/2.1/2.) If Sec τ2 ( A, B, u 1, u 2, n 2, N), then by V.f, and V.b Sec τ2 ( A, B, u 1, u 2, Y, n 2, n 2, N), and Sec τ2 ( A, B, u 1, u 2, Y, n 2, {n 2 } r3, N) by Axiom V.j. So, again by V.f, as m 2 is either Y or n 2, we have Sec τ2 ( A, B, u 1, u 2, m 2, {n 2 } r3, N). 1/2.2/2.2/2.) Let now hold. This implies By Init A NSL[Y, i 2,, N 1, n 2, r 1, s 2, r 3 ]), Sec τ ( A, B, u 1, u 2, n 2, N) (4) Sec τ ( A, B, N 1, n 2,, u, N). (5) Y receives i2 τ {N 1, n 2, } s2 Y ; Y sendsi2 τ 2 {n 2 } r3. We have Sec τ2 ( A, B, u 1, u 2, N) by the premise of SecSend, hence we also have Sec τ2 ( A, B, {N 1, n 2, } s2 Y, u 1, u 2, N) 3

4 by axiom V.c. In Axiom VI.3, taken t to be N 1, n 2,, we have Xi 1 t 1 t r(x A, B X sends i1 t 1 ; Y receives i2 {N 1, n 2, } s2 Y ; Y sendsi2 {n 2 } r3 {t } r Y t 1 {N 1, n 2, } s2 Y = {t } r Y ), so, N 1, n 2, = t. (6) by axiom IV.2.c. X is following either the initiator or the responder role of the NSL protocol in its session i 1. 1/2.2/2.2/2.1/2.) Let,N 1,n 2,r 1,s 2,r 3 Foll(Init X NSL[X, i 1,, N 1, n 2, r 1, s 2, r 3]). In this case, t 1 can be two things. 1/2.2/2.2/2.1/2.1/2) Let t 1 = {N 1, X} r 1. Then {t } r Y t 1 implies by term axioms that Therefore, again by term axioms, {N 1, X} r 1 = {t } r Y. = Y t = N 1, X. This combined with (6) gives us N 1, X = N 1, n 2,. (7) Since Sec 0 ( A, B, N 1, n 2,, N 1 ), we also have that Sec 0 ( A, B, N 1, X, N 1 ), and by axiom V.b, Sec 0 ( A, B, N 1, N 1 ). But, by axiom V.a, this implies that N 1 = N 1. Further, (5) and (7) imply Sec τ2 ( A, B, N 1, X, N), from which Sec τ2 ( A, B, N 1, u 2, N) follows. As X sends i1 {N 1, X} r 1 and < τ 2, this contradicts to the premise of SecSend (with u 1 = N 1) unless is satisfied. But that is only possible if C A (X, i 1, {N 1, X} r 1 Y, N 1, N) A generates i N; A sends i {N, A} r B X = A {N 1, X} r 1 Y = {N, A}r B, and so Y = B N 1 = N 1 = N. Hence, as N was generated in session i of A, N 1 in session i 2 of Y and N 1 in i 1 of X, by axiom VI.1.b, i = i 1 = i 2 A = B = X = Y. Then = B = A according to the role of i. This, together with (7) gives N, A = N, n 2, A. From here we can only conclude if either we assume A B or that N, A N, n 2, A, in which case we get a contradiction. Otherwise, there is an attack for the case A = B. So t 1 {N 1, X} r 1. 4

5 If we consider the blue addition to C, then in the case A = B, we only have to prove Sec τ2 ( A, B, u 1, u 2, {n 2 } r3 A, N), which does hold by the premise of SecSend and by V.i. 1/2.2/2.2/2.1/2.2/2) Let t 1 = {n 2} r 3. Then {t } r Y t 1 implies by term axioms that Therefore, again by term axioms, {n 2} r 3 = {t } r Y. = Y t = n 2. This combined with (6) gives us Further, (5) and (8) imply n 2 = N 1, n 2,. (8) Sec τ2 ( A, B, n 2, N). As X sends i1 {n 2} r 3 and < τ 2, this contradicts to the premise of SecSend (with u 1 = n 2) unless is satisfied. But that is only possible if and so This, together with (8) gives C A (X, i 1, {n 2} r 3 Y, n 2, N) i,n,r,r (B generatesi N; B sends i {n, N, B} r A X = A {n 2} r 3 Y Y = B n 2 = N. N = N 1, n 2, A. = B), {N}r Since Sec 0 ( A, B, N 1, n 2,, N 1 ), we also have that Sec 0 ( A, B, N, N 1 ), But, by axiom V.a, this implies that N = N 1. But this is not possible by VI.1.b, because N was generated in session i of B, whereas N 1 was generated in session i 2 of B, and i i 2 as i is a responder session and i 2 is an initiator session. So t 1 {n 2} r 3 1/2.2/2.2/2.2/2.) Let now,n 1,N 2,s 1,r 2,s 3 Foll(RespX NSL[X, i 1,, n 1, N 2, s 1, r 2, s 3]) hold. Then by FOLL(Resp X NSL), This, together with {t } r Y t 1 and term axioms, we get This, together with (6) and term axioms imply t 1 = {n 1, N 2, X} r 2. = Y t 1 = n 1, N 2, X. n 1 = N 1 n 2 = N 2 = X. Therefore, t 2 = {N 2} r3 X 5

6 holds. Since this is a safe encryption, so 1/2.2/2.2/2.2/2.1/2.) if m 2 = X, then by V.b and by V.i, Sec τ2 ( A, B, u 1, u 2, m 2{N 2} r3 X, N) holds. 1/2.2/2.2/2.2/2.2/2.) If m 2 X, then by the premise of SecSend, m 2 t 2, holds implying m 2 = N 2, and C A (Y, i 2, {N 2} r3 X, m 2, N) ) holds as well. As {N 2} r3 X {N, A}r B and {N 2} r3 X {n, N, X} r Y, the first two conjuncts of C don t give any aditional restrictions. The last conjunct says that i,n,r,r (B generatesi N; B sends i {n, N, B} r A Y = A {N 2} r3 X {N}r B). 1/2.2/2.2/2.2/2.2/2.1/2.) Suppose B generates i N; B sends i {n, N, B} r A. 1/2.2/2.2/2.2/2.2/2.1/2.1/2) Suppose Y = A. Then by C, r {N 2} r3 X {N}r B. Because of this condition, if X = B, then N 2 N, as otherwise {N 2} r3 X = {N}r3 B. If X A, then again N 2 N, because N was generated by B, but N 2 was generated by X. So in either cases, N 2 N. 1/2.2/2.2/2.2/2.2/2.1/2.2/2) Suppose now Y A. In this case, {n 1, N 2, X} r 2 Y {n, N, B}r A, meaning that the sessions in which N 2 and N were generated (by X and B respectively) are different, so N 2 N. 1/2.2/2.2/2.2/2.2/2.2/2.) Suppose now that i,n,rb generates i N; B sends i {n, N, B} r A, which means, as C[N] is satisfied, that N was generated by A, that is, A generates i N; A sends i {N, A} r B. In this case, N was generated in an initiator session, whereas N 2 was generated in a responder session. So we have that 1/2.2/2.2/2.2/2.2recap/2.) That means that is satisfied, and hence is also true, and as a consequence, for u 1 = u 1, N 2, N 2 N. C A (X, i 1, {n 1, N 2, X} r 2 Y, N 2, N) ) i1,.<τ 2,t 1,X.X A( N 2 t 1 X sends i1 t 1 C A (X, i 1, t 1, N 2, N) ) m1.m 1 u 1 m1 X ( i1,τ 1.<τ 2,t 1,X.X A( m1 t 1 X sends i1 t 1 C A (X, i 1, t 1, m 1, N) )) is satisfied. Therefore, by the premise of SecSend, Sec τ2 ( A, B, u 1, N 2, u 2, N), and so holds. Then again, by V.i, and as m 2 = N 2, we have Sec τ2 ( A, B, u 1, u 2, N 2, N) Sec τ2 ( A, B, u 1, u 2, m 2, {N 2} r3 X, N). 6

7 2/2.) If Resp Y NSL[Y, i 2,, n 1, N 2, s 1, r 2, s 3 ] then Y sends i τ t, by FOLL(Resp Y NSL) implies that t 2 = {n 1, N 2, Y } r2 2/2.1/2.) If = A = B, then: 2/2.1/2.1/2.) If m 2 = Y, then Since, by the premise of SecSend, we have Sec τ2 ( A, B, u 1, u 2, N), and from V.b, we have Further, as = A = B, we have by V.i that Sec τ2 ( A, B, u 1, u 2, m 2, N). Sec τ2 ( A, B, u 1, u 2, m 2, {n 1, N 2, Y } r2, N). 2/2.1/2.2/2.) If m 2 Y, then by the premise of SecSend, m t 2, C A (Y, i 2, t 2, m 2, N) hold, so n,n,r,z{n 1, N 2, Y } r2 {n, N, Y } r Z (m 2 = N N N), which means, in particular for N = N 2, n = n 1, r = r 2 and Z =, that As the first disjunct never holds, we have {n 1, N 2, Y } r2 {n 1, N 2, Y } r2 (m 2 = N 2 N 2 N). m 2 = N 2 N 2 N. Since, by the premise of SecSend, we have Sec τ2 ( A, B, u 1, u 2, N), we also have from V.a, as N 2 has not been sent out yet, that Sec τ2 ( A, B, u 1, u 2, N 2, N). Further, as = A = B and m = N 2, we have by V.i that Sec τ2 ( A, B, u 1, u 2, m 2, {n 1, N 2, Y } r2, N). 2/2.2/2.) If A B, then C A (Y, i 2, t 2, m 2, N) does not provide any further restriction, so by the premise of SecSend, m 2 = Y m 2 = n 1 m 2 = N 2. 2/2.2/2.1/2.) If Sec τ2 ( A, B, u 1, u 2, n 1, N), then we also have from V.a, as N 2 has not been sent out yet, that Further, from V.b, we have Then, by V.j, follows, from which, using V.f, we receive Sec τ2 ( A, B, u 1, u 2, n 1, N 2, N). Sec τ2 ( A, B, u 1, u 2, n 1, N 2, Y, N). Sec τ2 ( A, B, u 1, u 2, n 1, N 2, Y, {n 1, N 2, Y } r2, N) Sec τ2 ( A, B, u 1, u 2, m 2, {n 1, N 2, Y } r2, N). 2/2.2/2.2/2.) If Sec τ2 ( A, B, u 1, u 2, n 1, N), then by Axiom VI.3, and FOLL(Resp Y NSL), A i 1 t 1 t r(x A, B X sends i1 t 1 ; Y receives i2 {n 1, } s1 Y ; Y sendsi2 {n 1, N 2, Y } r2 {t } r Y t 1 {n 1, } s1 Y = {t } r Y ), 7

8 so, n 1, = t. (9) X is following either the initiator or the responder role of the NSL protocol in its session i 1. 2/2.2/2.2/2.1/2.) Let,N 1,n 2,r 1,s 2,r 3 Foll(Init X NSL[X, i 1,, N 1, n 2, r 1, s 2, r 3]). In this case, t 1 can be two things. 2/2.2/2.2/2.1/2.1/2) Let t 1 = {N 1, X} r 1. Then {t } r Y t 1 implies by term axioms that Therefore, again by term axioms, This combined with (9) gives us from which {N 1, X} r 1 = {t } r Y. = Y t = N 1, X. N 1, X = n 1,, (10) n 1 = N 1 = X. This means that is A or B, contradicting our assumption. 2/2.2/2.2/2.1/2.2/2) If t 1 = {n 2} r 3, then by term axioms, and since {t } r Y t 1, = Y t = n 2. But as n 1, = t, we have n 1, = n 2. (11) This, together with Sec τ2 ( A, B, u 1, u 2, n 1, N) imply by Axiom V.f. and V.h. that Sec τ2 ( A, B, u 1, u 2, n 2, {n 2} r 3 Y, N) holds, which, by the premise of SecSend is possible only if holds. This, in turn is only possible as long as That is, and we get C A (X, i 1, {n 2} r 3 Y, n 2, N) B generates i N; B sends i {n, N, B} r A X = A {n 2} r 3 Y Y = B n 2 = N, n 1, = N. = B. {N}r As we mentioned at the beginning, if we have n 1, N as an axiom, then we get a contradiction here. If we do not postulate this, then there is an attack. 2/2.2/2.2/2.2/2.) Let,n 1,N 2,s 1,r 2,s 3 Foll(Resp X NSL[X, i,, n 1, N 2, s 1, r 2, s 3]). In this case, t 1 = {n 1, N 2, X} r 2, then by term axioms, and since {t } r Y t 1, = Y t = n 1, N 2, X. But as n 1, = t, we have n 1, = n 1, N 2, X. (12) 2/2.2/2.2/2.2/2.1/2.) If n 1, N 2, X = n 1, N 2, X, then (12) implies X =, which contradicts our assumption that is neither A, nor B. 8

9 2/2.2/2.2/2.2/2.2/2.) If n 1, N 2, X = n 1, N 2, X, then (12) implies N 2, X =. As = Y, N 2 satisfies C[N 2], therefore, by the premise of SecSend, Sec τ2 ( A, N 2) holds. Then, by V.b, Sec τ2 ( A,, N 2) and so which gives a contradiction. Sec τ2 ( A, N 2, X, N 2), b) We now prove agreement from the responder s viewpoint. That is, we will show that Resp B NSL[B, i, A, n 1, N 2, s 1, r 2, s 3 ] FOLL(Roles A NSL) FOLL(Roles B NSL) ir 1 s 2 r 3 Init A NSL[A, i, B, n 1, N 2, r 1, s 2, r 3 ] Proof of b.) As a result of SecSend, and axiom VI.2, we have u. ( C(N) m0.m 0 u i, τ, t, X A.m 0 t X sends i τ t C A (X, i, t, m 0, N) ) Sec ( A, u, N). (13) By Resp B NSL[i, A, n 1, N 2, s 1, r 2, s 3 ], we have therefore, C[N 2 ] is satisfied, and hence, by 13. we have B generates i N 2 ; B sends i {n 1, N 2, B} r2 A ; B receivesi {N 2 } s3 B Sec ( A, B, N 2 ). So, since Sec( A, B, N 2, N 2 ) by Axiom V.g., we have by VI.3 X,i1,t 1,t,r(X A, B X sends i1 t 1 ; B receives i {N 2 } s3 B {t } r B t 1 {N 2 } s5 B = {t } r B ), so, 1/2.) If i 1 is responder role, then By term axioms, and since {t } r B t 1, But as by equation (14), we have N 2 = t. (14) t 1 = {n 1, N 2, X} r 1. = B t = n 1, N 2, X. n 1, N 2, X = N 2. 1/2.1/2.) Suppose N 2 N 2. By the preceding, X sends i1 {n 1, N 2, X} r 1 B, which means that C[N 2] is satisfied. As we also had B sends i {n 1, N 2, B} r1 A, which means that sessions i and i 1 are different. Since C [B, i, {n 1, N 2, B} r1 A, N 2, N 2] is satisfied, setting u 1 = N 2, we get from (13) that Sec ( A, N 2, N 2) 9

10 which contradicts n 1, N 2, X = N 2. 1/2.1/2.) Suppose N 2 = N 2. By the preceding, X sends i1 {n 1, N 2, X} r 1 B. As we also had B sendsi {n 1, N 2, B} r1 A, which means that sessions i and i 1 must be identical as N 2 was generated in i and N 2 in i 1. In this case A = B. If n 1, N 2, B = N 2 is possible, then we cannot conclude anything. It is reasonable though to postulate that this is not possible. 2/2.) If i 1, is initiator role, then t 1 = {N 1, X} r1 t 1 = {n 2 } r3. 2/2.1/2.) If t 1 = {N 1, X} r1, then by term axioms, and since {t } r B t 1, But as by equation (14), we have = B t = N 1, X. N 1, X = N 2, which is not possible by Axiom IV.2.f. Here we also used that N 1 N 2 (by axiom VI.1.b) because they are generated by different roles, and also that N 2 as it was received. Alternatively, this can be proved by (13): setting u 1 = N 1, X, N = N 2, we get that Sec ( A, u 1, N 2 ), which contradicts N 1, X = N 2. So t 1 {N 1, X} r1. 2/2.2/2.) If t 1 = {n 2 } r3, then by term axioms, and since {t } r B t 1, = B t = n 2. But by equation (14), we have Hence, so, by FOLL(Roles X NSL), we have n 2 = N 2. X sends i1 {N 2 } r3 B, We still have to prove that X = A and n 1 = N 1. Since in 1 r 1 s 2 r 3 Init X NSL[X, i, B, N 1, N 2, r 1, s 2, r 3 ]. X generates i N 1 ; X sends i {N 1, X} r1 B, C[N 1 ] is satisfied, so by (13), we have Further, Init X NSL[X, i, B, N 1, N 2, r 1, s 2, r 3 ] implies Sec ( A, B, N 1 ). and since Sec( A, B, N 1, n 2, B, N 1 ), by Axiom VI.3., so, X receives i {N 1, N 2, B} s2 X, Y i 1t 1 t r(y A, B Y sends i 1 t1 ; X receives i {N 1, N 2, B} s2 X 2/2.2/2.1/2.) If i 1 is an initiator session, then because of FOLL(Roles Y NSL), {t } r X t 1 {N 1, N 2, B} s2 X = {t } r X ), N 1, N 2, B = t. (15) t 1 = {N 1, Y } r 1 t 1 = {n 2} r 3. 10

11 2/2.2/2.1/2.1/2.) Let t 1 = {N 1, Y } r 1. Then {t } r X t 1 implies by term axioms that Therefore, again by term axioms, This combined with (15) gives us {N 1, Y } r 1 = {t } r X. = X t = N 1, X. N 1, Y = N 1, N 2, B. (16) N 2 was generated in a responder session, satisfying C[N 2 ]. Then by taking u 1 = N 1, by (13), Sec ( A, N 1, N 2 ), giving a contradiction. 2/2.2/2.1/2.2/2.) Let t 1 = {n 2} r 3. Then {t } r X t 1 implies by term axioms that Therefore, again by term axioms, This combined with (15) gives us {n 2} r 3 = {t } r X. = X t = n 2. n 2 = N 1, N 2, B. (17) N 2 was generated in a responder session, satisfying C[N 2 ]. The above equation implies Sec ( A, n 2, N 2 ), which, by setting u 1 = n 2 and (13), is only possible if n 2 = N 2. So N 2 = N 1, N 2, B. Since N 1 was generated by X and meant for B, we also have C[N 1 ]. Again by (13), Sec ( A, N 2, N 1 ) giving a contradiction. 2/2.2/2.2/2.) If i 1 is a responder session, then by FOLL(Roles Y NSL), By term axioms, and since {t } r X t 1, But by equation (15), we have Hence From the preceding, we had t 1 = {n 1, N 2, Y } r 2. = X t = n 1, N 2, Y. n 1 = N 1 n 2 = N 2 Y = B. (18) B sends i 1 {N1, N 2, B} r 2 X. B generates i N 2 B generates i 1 N 2 n 2 = N 2 n 2 = N 2. Therefore, by axiom VI.1.b., But that means and by Foll(Resp B NSL), we get and by equation (18), i 1 = i. B receives i {n 1, A} s1 B B receivesi {n 1, X} s 1 B, n 1 = n 1 X = A n 1 = N 1. 11

12 c) We now prove agreement from the initiator s viewpoint. That is, we will show that Proof of c.) By Init A NSL[i, B, N 1, n 2, r 1, s 2, r 3 ], we have Init A NSL[i, B, N 1, n 2, r 1, s 2, r 3 ] FOLL(Init A NSL) FOLL(Resp B NSL) i s 1 r 2 (B receives i {N 1, A} s1 B ; B generatesi n 2 ; B sends i {N 1, n 2, B} r2 A ) A generates i N 1 ; A sends i {N 1, A} r1 B ; A receivesi {N 1, n 2, B} s2 A therefore, C[N 1 ] is satisfied, and hence, by a.) and axiom VI.2. we have So, since Sec( A, B, N 1, n 2, B, N 1 ), by Axiom VI.3., so, Sec ( A, B, N 1 ). Xi 1 t 1 t r(x A, B X sends i1 t 1 ; A receives i {N 1, n 2, B} s2 A 1/2.) If i 1 is an initiator session, then because of FOLL(Roles X NSL), {t } r A t 1 {N 1, n 2, B} s2 A = {t } r A ), N 1, n 2, B = t. (19) t 1 = {N 1, X} r 1 t 1 = {n 2} r 3. 1/2.1/2.) Let t 1 = {N 1, X} r 1. Then {t } r A t 1 implies by term axioms that Therefore, again by term axioms, This combined with (19) gives us {N 1, X} r 1 = {t } r A. = A t = N 1, X. N 1, X = N 1, n 2, B. (20) N 1 was generated in an initiator session of, satisfying C[N 1 ]. 1/2.1/2.1/2.) Suppose N 1 N 1. Then by taking u 1 = N 1, by (13), Sec ( A, N 1, N 2 ), and so Sec ( A, N 1, X, N 2 ) giving a contradiction. 1/2.1/2.2/2.) Suppose N 1 N 1. Then, X = A, because N 1 cannot be generated by different names. Further, i 1 = i, and so A = B as N 1 was meant for B, and N 1 was meant (encrypted) for A. So N 1, A = N 1, n 2, A. As we discussed in 1.1 of a), this has to be prevented in order to be able to verify for A = B. 1/2.2/2.) Let t 1 = {n 2} r 3. Then {t } r A t 1 implies by term axioms that {n 2} r 3 = {t } r A. 12

13 Therefore, again by term axioms, This combined with (19) gives us = A t = n 2. n 2 = N 1, n 2, B. (21) N 1 was generated in a responder session, satisfying C[N 1 ]. If we have the blue addition in C, then we cannot proceed further, unless A B. But the blue line was introduces solely for this case. If we don t have, then by setting u 1 = n 2, from (13) we get Sec ( A, n 2, N 1 ). And that contradicts (21). 2/2.) If i 1 is a responder session then by FOLL(Roles X NSL), t 1 = {n 1, N 2, X} r2. By term axioms, and since {t } r A t 1, But by equation (19), we have Hence, so, by FOLL(Roles B NSL), we have = A t = n 1, N 2, X. n 1 = N 1 n 2 = N 2 X = B. B sends i1 {N 1, n 2, B} r2 A, i s 1 r 2 (B receives i {N 1, A} s1 B ; B generatesi n 2 ; B sends i {N 1, n 2, B} r2 A ). 13

NSL Verification and Attacks Agents Playing Both Roles

NSL Verification and Attacks Agents Playing Both Roles NSL Verification and Attacks Agents Playing Both Roles Pedro Adão Gergei Bana Abstract Background: [2] and eprint version: [1] 1 The Axioms Equality is a Congruence. The first axiom says that the equality

More information

CPSA and Formal Security Goals

CPSA and Formal Security Goals CPSA and Formal Security Goals John D. Ramsdell The MITRE Corporation CPSA Version 2.5.1 July 8, 2015 Contents 1 Introduction 3 2 Syntax 6 3 Semantics 8 4 Examples 10 4.1 Needham-Schroeder Responder.................

More information

Manual of Logical Style (fresh version 2018)

Manual of Logical Style (fresh version 2018) Manual of Logical Style (fresh version 2018) Randall Holmes 9/5/2018 1 Introduction This is a fresh version of a document I have been working on with my classes at various levels for years. The idea that

More information

A Logic of Authentication. Borrows, Abadi and Needham TOCS 1990, DEC-SRC 1989

A Logic of Authentication. Borrows, Abadi and Needham TOCS 1990, DEC-SRC 1989 A Logic of Authentication Borrows, Abadi and Needham TOCS 1990, DEC-SRC 1989 Logic Constructs P believes X : P may act as though X is true. P sees X : a message containing X was sent to P; P can read and

More information

Propositional Language - Semantics

Propositional Language - Semantics Propositional Language - Semantics Lila Kari University of Waterloo Propositional Language - Semantics CS245, Logic and Computation 1 / 41 Syntax and semantics Syntax Semantics analyzes Form analyzes Meaning

More information

Encoding security protocols in the cryptographic λ-calculus. Eijiro Sumii Joint work with Benjamin Pierce University of Pennsylvania

Encoding security protocols in the cryptographic λ-calculus. Eijiro Sumii Joint work with Benjamin Pierce University of Pennsylvania Encoding security protocols in the cryptographic λ-calculus Eijiro Sumii Joint work with Benjamin Pierce University of Pennsylvania An obvious fact Security is important Cryptography is a major way to

More information

Chapter 4: Classical Propositional Semantics

Chapter 4: Classical Propositional Semantics Chapter 4: Classical Propositional Semantics Language : L {,,, }. Classical Semantics assumptions: TWO VALUES: there are only two logical values: truth (T) and false (F), and EXTENSIONALITY: the logical

More information

Solution Set 2. Problem 1. [a] + [b] = [a + b] = [b + a] = [b] + [a] ([a] + [b]) + [c] = [a + b] + [c] = [a + b + c] = [a] + [b + c] = [a] + ([b + c])

Solution Set 2. Problem 1. [a] + [b] = [a + b] = [b + a] = [b] + [a] ([a] + [b]) + [c] = [a + b] + [c] = [a + b + c] = [a] + [b + c] = [a] + ([b + c]) Solution Set Problem 1 (1) Z/nZ is the set of equivalence classes of Z mod n. Equivalence is determined by the following rule: [a] = [b] if and only if b a = k n for some k Z. The operations + and are

More information

CHAPTER 10. Gentzen Style Proof Systems for Classical Logic

CHAPTER 10. Gentzen Style Proof Systems for Classical Logic CHAPTER 10 Gentzen Style Proof Systems for Classical Logic Hilbert style systems are easy to define and admit a simple proof of the Completeness Theorem but they are difficult to use. By humans, not mentioning

More information

Strand Spaces Proving Protocols Corr. Jonathan Herzog 6 April 2001

Strand Spaces Proving Protocols Corr. Jonathan Herzog 6 April 2001 Strand Spaces Proving Protocols Corr Jonathan Herzog 6 April 2001 Introduction 3Second part of talk given early last month Introduced class of cryptographic protocols Modeled at high level of abstraction

More information

Proofs. Joe Patten August 10, 2018

Proofs. Joe Patten August 10, 2018 Proofs Joe Patten August 10, 2018 1 Statements and Open Sentences 1.1 Statements A statement is a declarative sentence or assertion that is either true or false. They are often labelled with a capital

More information

a. ~p : if p is T, then ~p is F, and vice versa

a. ~p : if p is T, then ~p is F, and vice versa Lecture 10: Propositional Logic II Philosophy 130 3 & 8 November 2016 O Rourke & Gibson I. Administrative A. Group papers back to you on November 3. B. Questions? II. The Meaning of the Conditional III.

More information

Formal Logic. Critical Thinking

Formal Logic. Critical Thinking ormal Logic Critical hinking Recap: ormal Logic If I win the lottery, then I am poor. I win the lottery. Hence, I am poor. his argument has the following abstract structure or form: If P then Q. P. Hence,

More information

Time-Bounding Needham-Schroeder Public Key Exchange Protocol

Time-Bounding Needham-Schroeder Public Key Exchange Protocol Time-Bounding Needham-Schroeder Public Key Exchange Protocol Max Kanovich, Queen Mary, University of London, UK University College London, UCL-CS, UK Tajana Ban Kirigin, University of Rijeka, HR Vivek

More information

Manual of Logical Style

Manual of Logical Style Manual of Logical Style Dr. Holmes January 9, 2015 Contents 1 Introduction 2 2 Conjunction 3 2.1 Proving a conjunction...................... 3 2.2 Using a conjunction........................ 3 3 Implication

More information

Lecture 9 Julie Staub Avi Dalal Abheek Anand Gelareh Taban. 1 Introduction. 2 Background. CMSC 858K Advanced Topics in Cryptography February 24, 2004

Lecture 9 Julie Staub Avi Dalal Abheek Anand Gelareh Taban. 1 Introduction. 2 Background. CMSC 858K Advanced Topics in Cryptography February 24, 2004 CMSC 858K Advanced Topics in Cryptography February 24, 2004 Lecturer: Jonathan Katz Lecture 9 Scribe(s): Julie Staub Avi Dalal Abheek Anand Gelareh Taban 1 Introduction In previous lectures, we constructed

More information

2/2/2018. CS 103 Discrete Structures. Chapter 1. Propositional Logic. Chapter 1.1. Propositional Logic

2/2/2018. CS 103 Discrete Structures. Chapter 1. Propositional Logic. Chapter 1.1. Propositional Logic CS 103 Discrete Structures Chapter 1 Propositional Logic Chapter 1.1 Propositional Logic 1 1.1 Propositional Logic Definition: A proposition :is a declarative sentence (that is, a sentence that declares

More information

Propositional Logic Review

Propositional Logic Review Propositional Logic Review UC Berkeley, Philosophy 142, Spring 2016 John MacFarlane The task of describing a logical system comes in three parts: Grammar Describing what counts as a formula Semantics Defining

More information

Abstract Specification of Crypto- Protocols and their Attack Models in MSR

Abstract Specification of Crypto- Protocols and their Attack Models in MSR Abstract Specification of Crypto- Protocols and their Attack Models in MSR Iliano Cervesato iliano@itd.nrl.navy.mil ITT Industries, Inc @ NRL Washington DC http://www.cs.stanford.edu/~iliano/ Software

More information

Unary negation: T F F T

Unary negation: T F F T Unary negation: ϕ 1 ϕ 1 T F F T Binary (inclusive) or: ϕ 1 ϕ 2 (ϕ 1 ϕ 2 ) T T T T F T F T T F F F Binary (exclusive) or: ϕ 1 ϕ 2 (ϕ 1 ϕ 2 ) T T F T F T F T T F F F Classical (material) conditional: ϕ 1

More information

CPSC 467b: Cryptography and Computer Security

CPSC 467b: Cryptography and Computer Security Outline Authentication CPSC 467b: Cryptography and Computer Security Lecture 18 Michael J. Fischer Department of Computer Science Yale University March 29, 2010 Michael J. Fischer CPSC 467b, Lecture 18

More information

Deriving GDOI. Dusko Pavlovic and Cathy Meadows

Deriving GDOI. Dusko Pavlovic and Cathy Meadows Deriving GDOI Dusko Pavlovic and Cathy Meadows September 2003 1 Outline 1. Trace logic 2. Axioms and rules 3. Deriving core GDOI 4. Global encryption and hashing transformations 5. Adding PFS and POP options

More information

CHAPTER 4 CLASSICAL PROPOSITIONAL SEMANTICS

CHAPTER 4 CLASSICAL PROPOSITIONAL SEMANTICS CHAPTER 4 CLASSICAL PROPOSITIONAL SEMANTICS 1 Language There are several propositional languages that are routinely called classical propositional logic languages. It is due to the functional dependency

More information

Numbers, proof and all that jazz.

Numbers, proof and all that jazz. CHAPTER 1 Numbers, proof and all that jazz. There is a fundamental difference between mathematics and other sciences. In most sciences, one does experiments to determine laws. A law will remain a law,

More information

Lecture 3,4: Multiparty Computation

Lecture 3,4: Multiparty Computation CS 276 Cryptography January 26/28, 2016 Lecture 3,4: Multiparty Computation Instructor: Sanjam Garg Scribe: Joseph Hui 1 Constant-Round Multiparty Computation Last time we considered the GMW protocol,

More information

Protocol Insecurity with a Finite Number of Sessions and Composed Keys is NP-complete

Protocol Insecurity with a Finite Number of Sessions and Composed Keys is NP-complete Protocol Insecurity with a Finite Number of Sessions and Composed Keys is NP-complete Michaël Rusinowitch and Mathieu Turuani LORIA-INRIA- Université Henri Poincaré, 54506 Vandoeuvre-les-Nancy cedex, France

More information

Lecture 38: Secure Multi-party Computation MPC

Lecture 38: Secure Multi-party Computation MPC Lecture 38: Secure Multi-party Computation Problem Statement I Suppose Alice has private input x, and Bob has private input y Alice and Bob are interested in computing z = f (x, y) such that each party

More information

Seminaar Abstrakte Wiskunde Seminar in Abstract Mathematics Lecture notes in progress (27 March 2010)

Seminaar Abstrakte Wiskunde Seminar in Abstract Mathematics Lecture notes in progress (27 March 2010) http://math.sun.ac.za/amsc/sam Seminaar Abstrakte Wiskunde Seminar in Abstract Mathematics 2009-2010 Lecture notes in progress (27 March 2010) Contents 2009 Semester I: Elements 5 1. Cartesian product

More information

Mathematical Reasoning. The Foundation of Algorithmics

Mathematical Reasoning. The Foundation of Algorithmics Mathematical Reasoning The Foundation of Algorithmics The Nature of Truth In mathematics, we deal with statements that are True or False This is known as The Law of the Excluded Middle Despite the fact

More information

Foundations of Mathematics MATH 220 FALL 2017 Lecture Notes

Foundations of Mathematics MATH 220 FALL 2017 Lecture Notes Foundations of Mathematics MATH 220 FALL 2017 Lecture Notes These notes form a brief summary of what has been covered during the lectures. All the definitions must be memorized and understood. Statements

More information

If f = ABC + ABC + A B C then f = AB C + A BC + AB C + A BC + A B C

If f = ABC + ABC + A B C then f = AB C + A BC + AB C + A BC + A B C Examples: If f 5 = AB + AB then f 5 = A B + A B = f 10 If f = ABC + ABC + A B C then f = AB C + A BC + AB C + A BC + A B C In terms of a truth table, if f is the sum (OR) of all the minterms with a 1 in

More information

Overview. I Review of natural deduction. I Soundness and completeness. I Semantics of propositional formulas. I Soundness proof. I Completeness proof.

Overview. I Review of natural deduction. I Soundness and completeness. I Semantics of propositional formulas. I Soundness proof. I Completeness proof. Overview I Review of natural deduction. I Soundness and completeness. I Semantics of propositional formulas. I Soundness proof. I Completeness proof. Propositional formulas Grammar: ::= p j (:) j ( ^ )

More information

Lecture Notes on The Curry-Howard Isomorphism

Lecture Notes on The Curry-Howard Isomorphism Lecture Notes on The Curry-Howard Isomorphism 15-312: Foundations of Programming Languages Frank Pfenning Lecture 27 ecember 4, 2003 In this lecture we explore an interesting connection between logic and

More information

Section 1.1: Logical Form and Logical Equivalence

Section 1.1: Logical Form and Logical Equivalence Section 1.1: Logical Form and Logical Equivalence An argument is a sequence of statements aimed at demonstrating the truth of an assertion. The assertion at the end of an argument is called the conclusion,

More information

MSR by Examples. Iliano Cervesato. ITT Industries, NRL Washington DC.

MSR by Examples. Iliano Cervesato. ITT Industries, NRL Washington DC. MSR by Examples Iliano Cervesato iliano@itd.nrl.navy.mil ITT Industries, Inc @ NRL Washington DC http://www.cs.stanford.edu/~iliano/ PPL 01 March 21 st, 2001 Outline I. Security Protocols II. MSR by Examples

More information

Notes on BAN Logic CSG 399. March 7, 2006

Notes on BAN Logic CSG 399. March 7, 2006 Notes on BAN Logic CSG 399 March 7, 2006 The wide-mouthed frog protocol, in a slightly different form, with only the first two messages, and time stamps: A S : A, {T a, B, K ab } Kas S B : {T s, A, K ab

More information

INTRODUCTION TO LOGIC. Propositional Logic. Examples of syntactic claims

INTRODUCTION TO LOGIC. Propositional Logic. Examples of syntactic claims Introduction INTRODUCTION TO LOGIC 2 Syntax and Semantics of Propositional Logic Volker Halbach In what follows I look at some formal languages that are much simpler than English and define validity of

More information

Logic Overview, I. and T T T T F F F T F F F F

Logic Overview, I. and T T T T F F F T F F F F Logic Overview, I DEFINITIONS A statement (proposition) is a declarative sentence that can be assigned a truth value T or F, but not both. Statements are denoted by letters p, q, r, s,... The 5 basic logical

More information

Mathematics 114L Spring 2018 D.A. Martin. Mathematical Logic

Mathematics 114L Spring 2018 D.A. Martin. Mathematical Logic Mathematics 114L Spring 2018 D.A. Martin Mathematical Logic 1 First-Order Languages. Symbols. All first-order languages we consider will have the following symbols: (i) variables v 1, v 2, v 3,... ; (ii)

More information

Chapter 11: Automated Proof Systems

Chapter 11: Automated Proof Systems Chapter 11: Automated Proof Systems SYSTEM RS OVERVIEW Hilbert style systems are easy to define and admit a simple proof of the Completeness Theorem but they are difficult to use. Automated systems are

More information

THE LOGIC OF COMPOUND STATEMENTS

THE LOGIC OF COMPOUND STATEMENTS CHAPTER 2 THE LOGIC OF COMPOUND STATEMENTS Copyright Cengage Learning. All rights reserved. SECTION 2.1 Logical Form and Logical Equivalence Copyright Cengage Learning. All rights reserved. Logical Form

More information

software design & management Gachon University Chulyun Kim

software design & management Gachon University Chulyun Kim Gachon University Chulyun Kim 2 Outline Propositional Logic Propositional Equivalences Predicates and Quantifiers Nested Quantifiers Rules of Inference Introduction to Proofs 3 1.1 Propositional Logic

More information

Term Rewriting applied to Cryptographic Protocol Analysis: the Maude-NPA tool

Term Rewriting applied to Cryptographic Protocol Analysis: the Maude-NPA tool Term Rewriting applied to Cryptographic Protocol Analysis: the Maude-NPA tool Santiago Escobar Departamento de Sistemas Informáticos y Computación Universitat Politècnica de València sescobar@dsic.upv.es

More information

Chapter 1 Elementary Logic

Chapter 1 Elementary Logic 2017-2018 Chapter 1 Elementary Logic The study of logic is the study of the principles and methods used in distinguishing valid arguments from those that are not valid. The aim of this chapter is to help

More information

A tricky node-voltage situation

A tricky node-voltage situation A tricky node-voltage situation The node-method will always work you can always generate enough equations to determine all of the node voltages. The method we have outlined well in almost all cases, but

More information

Round-Efficient Multi-party Computation with a Dishonest Majority

Round-Efficient Multi-party Computation with a Dishonest Majority Round-Efficient Multi-party Computation with a Dishonest Majority Jonathan Katz, U. Maryland Rafail Ostrovsky, Telcordia Adam Smith, MIT Longer version on http://theory.lcs.mit.edu/~asmith 1 Multi-party

More information

BAN Logic A Logic of Authentication

BAN Logic A Logic of Authentication BAN Logic A Logic of Authentication Sape J. Mullender Huygens Systems Research Laboratory Universiteit Twente Enschede 1 BAN Logic The BAN logic was named after its inventors, Mike Burrows, Martín Abadí,

More information

COMP 182 Algorithmic Thinking. Proofs. Luay Nakhleh Computer Science Rice University

COMP 182 Algorithmic Thinking. Proofs. Luay Nakhleh Computer Science Rice University COMP 182 Algorithmic Thinking Proofs Luay Nakhleh Computer Science Rice University 1 Reading Material Chapter 1, Section 3, 6, 7, 8 Propositional Equivalences The compound propositions p and q are called

More information

Augmented Black-Box Simulation and Zero Knowledge Argument for NP

Augmented Black-Box Simulation and Zero Knowledge Argument for NP Augmented Black-Box Simulation and Zero Knowledge Argument for N Li Hongda, an Dongxue, Ni eifang The Data Assurance and Communication Security Research Center, School of Cyber Security, University of

More information

Arguments and Proofs. 1. A set of sentences (the premises) 2. A sentence (the conclusion)

Arguments and Proofs. 1. A set of sentences (the premises) 2. A sentence (the conclusion) Arguments and Proofs For the next section of this course, we will study PROOFS. A proof can be thought of as the formal representation of a process of reasoning. Proofs are comparable to arguments, since

More information

Math Released Item Algebra 1. System of Inequalities VF648815

Math Released Item Algebra 1. System of Inequalities VF648815 Math Released Item 2016 Algebra 1 System of Inequalities VF648815 Prompt Rubric Task is worth a total of 3 points. VF648815 Rubric Part A Score Description 1 Student response includes the following element.

More information

Impossibility Results for Universal Composability in Public-Key Models and with Fixed Inputs

Impossibility Results for Universal Composability in Public-Key Models and with Fixed Inputs Impossibility Results for Universal Composability in Public-Key Models and with Fixed Inputs Dafna Kidron Yehuda Lindell June 6, 2010 Abstract Universal composability and concurrent general composition

More information

CSC Discrete Math I, Spring Propositional Logic

CSC Discrete Math I, Spring Propositional Logic CSC 125 - Discrete Math I, Spring 2017 Propositional Logic Propositions A proposition is a declarative sentence that is either true or false Propositional Variables A propositional variable (p, q, r, s,...)

More information

Math 4606, Summer 2004: Inductive sets, N, the Peano Axioms, Recursive Sequences Page 1 of 10

Math 4606, Summer 2004: Inductive sets, N, the Peano Axioms, Recursive Sequences Page 1 of 10 Math 4606, Summer 2004: Inductive sets, N, the Peano Axioms, Recursive Sequences Page 1 of 10 Inductive sets (used to define the natural numbers as a subset of R) (1) Definition: A set S R is an inductive

More information

A compositional logic for proving security properties of protocols

A compositional logic for proving security properties of protocols Journal of Computer Security 11 (2003) 677 721 677 IOS Press A compositional logic for proving security properties of protocols Nancy Durgin a, John Mitchell b and Dusko Pavlovic c a Sandia National Labs,

More information

Preference, Choice and Utility

Preference, Choice and Utility Preference, Choice and Utility Eric Pacuit January 2, 205 Relations Suppose that X is a non-empty set. The set X X is the cross-product of X with itself. That is, it is the set of all pairs of elements

More information

Deduction by Daniel Bonevac. Chapter 3 Truth Trees

Deduction by Daniel Bonevac. Chapter 3 Truth Trees Deduction by Daniel Bonevac Chapter 3 Truth Trees Truth trees Truth trees provide an alternate decision procedure for assessing validity, logical equivalence, satisfiability and other logical properties

More information

We are going to discuss what it means for a sequence to converge in three stages: First, we define what it means for a sequence to converge to zero

We are going to discuss what it means for a sequence to converge in three stages: First, we define what it means for a sequence to converge to zero Chapter Limits of Sequences Calculus Student: lim s n = 0 means the s n are getting closer and closer to zero but never gets there. Instructor: ARGHHHHH! Exercise. Think of a better response for the instructor.

More information

Decentralized Control of Discrete Event Systems with Bounded or Unbounded Delay Communication

Decentralized Control of Discrete Event Systems with Bounded or Unbounded Delay Communication Decentralized Control of Discrete Event Systems with Bounded or Unbounded Delay Communication Stavros Tripakis Abstract We introduce problems of decentralized control with communication, where we explicitly

More information

Chapter 1. Logic and Proof

Chapter 1. Logic and Proof Chapter 1. Logic and Proof 1.1 Remark: A little over 100 years ago, it was found that some mathematical proofs contained paradoxes, and these paradoxes could be used to prove statements that were known

More information

Handout on Logic, Axiomatic Methods, and Proofs MATH Spring David C. Royster UNC Charlotte

Handout on Logic, Axiomatic Methods, and Proofs MATH Spring David C. Royster UNC Charlotte Handout on Logic, Axiomatic Methods, and Proofs MATH 3181 001 Spring 1999 David C. Royster UNC Charlotte January 18, 1999 Chapter 1 Logic and the Axiomatic Method 1.1 Introduction Mathematicians use a

More information

On the Automatic Analysis of Recursive Security Protocols with XOR

On the Automatic Analysis of Recursive Security Protocols with XOR On the Automatic Analysis of Recursive Security Protocols with XOR Ralf Küsters 1 and Tomasz Truderung 2 1 ETH Zurich ralf.kuesters@inf.ethz.ch 2 University of Kiel, Wrocław University tomasz.truderung@ii.uni.wroc.pl

More information

MATH 145 LECTURE NOTES. Zhongwei Zhao. My Lecture Notes for MATH Fall

MATH 145 LECTURE NOTES. Zhongwei Zhao. My Lecture Notes for MATH Fall MATH 145 LECTURE NOTES Zhongwei Zhao My Lecture Notes for MATH 145 2016 Fall December 2016 Lecture 1, Sept. 9 Course Orientation and Organization About the Professor Stephen New MC 5419 Ext 35554 Email:

More information

Lecture Notes, Week 10

Lecture Notes, Week 10 YALE UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE CPSC 467b: Cryptography and Computer Security Week 10 (rev. 2) Professor M. J. Fischer March 29 & 31, 2005 Lecture Notes, Week 10 1 Zero Knowledge Interactive

More information

A Full Characterization of Functions that Imply Fair Coin Tossing and Ramifications to Fairness

A Full Characterization of Functions that Imply Fair Coin Tossing and Ramifications to Fairness A Full Characterization of Functions that Imply Fair Coin Tossing and Ramifications to Fairness Gilad Asharov Yehuda Lindell Tal Rabin February 25, 2013 Abstract It is well known that it is impossible

More information

Notes on Propositional and First-Order Logic (CPSC 229 Class Notes, January )

Notes on Propositional and First-Order Logic (CPSC 229 Class Notes, January ) Notes on Propositional and First-Order Logic (CPSC 229 Class Notes, January 23 30 2017) John Lasseter Revised February 14, 2017 The following notes are a record of the class sessions we ve devoted to the

More information

PERFECT SECRECY AND ADVERSARIAL INDISTINGUISHABILITY

PERFECT SECRECY AND ADVERSARIAL INDISTINGUISHABILITY PERFECT SECRECY AND ADVERSARIAL INDISTINGUISHABILITY BURTON ROSENBERG UNIVERSITY OF MIAMI Contents 1. Perfect Secrecy 1 1.1. A Perfectly Secret Cipher 2 1.2. Odds Ratio and Bias 3 1.3. Conditions for Perfect

More information

9 Knapsack Cryptography

9 Knapsack Cryptography 9 Knapsack Cryptography In the past four weeks, we ve discussed public-key encryption systems that depend on various problems that we believe to be hard: prime factorization, the discrete logarithm, and

More information

a 2 = ab a 2 b 2 = ab b 2 (a + b)(a b) = b(a b) a + b = b

a 2 = ab a 2 b 2 = ab b 2 (a + b)(a b) = b(a b) a + b = b Discrete Structures CS2800 Fall 204 Final Solutions. Briefly and clearly identify the errors in each of the following proofs: (a) Proof that is the largest natural number: Let n be the largest natural

More information

CPSC 467: Cryptography and Computer Security

CPSC 467: Cryptography and Computer Security CPSC 467: Cryptography and Computer Security Michael J. Fischer Lecture 22 November 27, 2017 CPSC 467, Lecture 22 1/43 BBS Pseudorandom Sequence Generator Secret Splitting Shamir s Secret Splitting Scheme

More information

ECOM Discrete Mathematics

ECOM Discrete Mathematics ECOM 2311- Discrete Mathematics Chapter # 1 : The Foundations: Logic and Proofs Fall, 2013/2014 ECOM 2311- Discrete Mathematics - Ch.1 Dr. Musbah Shaat 1 / 85 Outline 1 Propositional Logic 2 Propositional

More information

Verification of the TLS Handshake protocol

Verification of the TLS Handshake protocol Verification of the TLS Handshake protocol Carst Tankink (0569954), Pim Vullers (0575766) 20th May 2008 1 Introduction In this text, we will analyse the Transport Layer Security (TLS) handshake protocol.

More information

Propositional Logic Basics Propositional Equivalences Normal forms Boolean functions and digital circuits. Propositional Logic.

Propositional Logic Basics Propositional Equivalences Normal forms Boolean functions and digital circuits. Propositional Logic. Propositional Logic Winter 2012 Propositional Logic: Section 1.1 Proposition A proposition is a declarative sentence that is either true or false. Which ones of the following sentences are propositions?

More information

Expressing Security Properties Using Selective Interleaving Functions

Expressing Security Properties Using Selective Interleaving Functions Expressing Security Properties Using Selective Interleaving Functions Joseph Halpern and Sabina Petride August 8, 2008 Abstract McLean s notion of Selective Interleaving Functions (SIFs) is perhaps the

More information

8. Reductio ad absurdum

8. Reductio ad absurdum 8. Reductio ad absurdum 8.1 A historical example In his book, The Two New Sciences, 10 Galileo Galilea (1564-1642) gives several arguments meant to demonstrate that there can be no such thing as actual

More information

(2) Generalize De Morgan s laws for n sets and prove the laws by induction. 1

(2) Generalize De Morgan s laws for n sets and prove the laws by induction. 1 ARS DIGITA UNIVERSITY MONTH 2: DISCRETE MATHEMATICS PROFESSOR SHAI SIMONSON PROBLEM SET 2 SOLUTIONS SET, FUNCTIONS, BIG-O, RATES OF GROWTH (1) Prove by formal logic: (a) The complement of the union of

More information

Verification of Security Protocols in presence of Equational Theories with Homomorphism

Verification of Security Protocols in presence of Equational Theories with Homomorphism Verification of Security Protocols in presence of Equational Theories with Homomorphism Stéphanie Delaune France Télécom, division R&D, LSV CNRS & ENS Cachan February, 13, 2006 Stéphanie Delaune (FT R&D,

More information

Homework 10 M 373K by Mark Lindberg (mal4549)

Homework 10 M 373K by Mark Lindberg (mal4549) Homework 10 M 373K by Mark Lindberg (mal4549) 1. Artin, Chapter 11, Exercise 1.1. Prove that 7 + 3 2 and 3 + 5 are algebraic numbers. To do this, we must provide a polynomial with integer coefficients

More information

Lecture Summary. 2 Simplified Cramer-Shoup. CMSC 858K Advanced Topics in Cryptography February 26, Chiu Yuen Koo Nikolai Yakovenko

Lecture Summary. 2 Simplified Cramer-Shoup. CMSC 858K Advanced Topics in Cryptography February 26, Chiu Yuen Koo Nikolai Yakovenko CMSC 858K Advanced Topics in Cryptography February 26, 2004 Lecturer: Jonathan Katz Lecture 10 Scribe(s): Jeffrey Blank Chiu Yuen Koo Nikolai Yakovenko 1 Summary We had previously begun to analyze the

More information

A Little Deductive Logic

A Little Deductive Logic A Little Deductive Logic In propositional or sentential deductive logic, we begin by specifying that we will use capital letters (like A, B, C, D, and so on) to stand in for sentences, and we assume that

More information

Chapter 11: Automated Proof Systems (1)

Chapter 11: Automated Proof Systems (1) Chapter 11: Automated Proof Systems (1) SYSTEM RS OVERVIEW Hilbert style systems are easy to define and admit a simple proof of the Completeness Theorem but they are difficult to use. Automated systems

More information

THE SHAPES OF BUNDLES

THE SHAPES OF BUNDLES THE SHAPES OF BUNDLES SHADDIN F. DOGHMI, JOSHUA D. GUTTMAN, AND F. JAVIER THAYER Contents 1. Introduction 2 2. Background 2 2.1. Protocols 2 2.2. An Example: The Yahalom Protocol 3 2.3. Occurrences and

More information

Lecture on Sensor Networks

Lecture on Sensor Networks Lecture on Sensor Networks Cyclic Historical Redundancy Development Copyright (c) 2008 Dr. Thomas Haenselmann (University of Mannheim, Germany). Permission is granted to copy, distribute and/or modify

More information

Conjunction: p q is true if both p, q are true, and false if at least one of p, q is false. The truth table for conjunction is as follows.

Conjunction: p q is true if both p, q are true, and false if at least one of p, q is false. The truth table for conjunction is as follows. Chapter 1 Logic 1.1 Introduction and Definitions Definitions. A sentence (statement, proposition) is an utterance (that is, a string of characters) which is either true (T) or false (F). A predicate is

More information

The least element is 0000, the greatest element is 1111.

The least element is 0000, the greatest element is 1111. Note: this worksheet has been modified to emphasize the Boolean algebra content. Some problems have been deleted.; this, for instance, is why the first problem is #5 rather than #1. 5. Let A be the set

More information

Introduction to Metalogic

Introduction to Metalogic Philosophy 135 Spring 2008 Tony Martin Introduction to Metalogic 1 The semantics of sentential logic. The language L of sentential logic. Symbols of L: Remarks: (i) sentence letters p 0, p 1, p 2,... (ii)

More information

Lecture 11: Non-Interactive Zero-Knowledge II. 1 Non-Interactive Zero-Knowledge in the Hidden-Bits Model for the Graph Hamiltonian problem

Lecture 11: Non-Interactive Zero-Knowledge II. 1 Non-Interactive Zero-Knowledge in the Hidden-Bits Model for the Graph Hamiltonian problem CS 276 Cryptography Oct 8, 2014 Lecture 11: Non-Interactive Zero-Knowledge II Instructor: Sanjam Garg Scribe: Rafael Dutra 1 Non-Interactive Zero-Knowledge in the Hidden-Bits Model for the Graph Hamiltonian

More information

Overview. Knowledge-Based Agents. Introduction. COMP219: Artificial Intelligence. Lecture 19: Logic for KR

Overview. Knowledge-Based Agents. Introduction. COMP219: Artificial Intelligence. Lecture 19: Logic for KR COMP219: Artificial Intelligence Lecture 19: Logic for KR Last time Expert Systems and Ontologies oday Logic as a knowledge representation scheme Propositional Logic Syntax Semantics Proof theory Natural

More information

Design of Distributed Systems Melinda Tóth, Zoltán Horváth

Design of Distributed Systems Melinda Tóth, Zoltán Horváth Design of Distributed Systems Melinda Tóth, Zoltán Horváth Design of Distributed Systems Melinda Tóth, Zoltán Horváth Publication date 2014 Copyright 2014 Melinda Tóth, Zoltán Horváth Supported by TÁMOP-412A/1-11/1-2011-0052

More information

A one message protocol using cryptography, where K AB is a symmetric key shared between A and B for private communication. A B : {M} KAB on c AB

A one message protocol using cryptography, where K AB is a symmetric key shared between A and B for private communication. A B : {M} KAB on c AB A one message protocol using cryptography, where K AB is a symmetric key shared between A and B for private communication. A B : {M} KAB on c AB This can be represented as A send cab {M} KAB ;halt B recv

More information

Mathematical Logic Part One

Mathematical Logic Part One Mathematical Logic Part One Announcements Problem Session tonight from 7:00 7:50 in 380-380X. Optional, but highly recommended! Problem Set 3 Checkpoint due right now. 2 Handouts Problem Set 3 Checkpoint

More information

1.1 Statements and Compound Statements

1.1 Statements and Compound Statements Chapter 1 Propositional Logic 1.1 Statements and Compound Statements A statement or proposition is an assertion which is either true or false, though you may not know which. That is, a statement is something

More information

CHAPTER 6 - THINKING ABOUT AND PRACTICING PROPOSITIONAL LOGIC

CHAPTER 6 - THINKING ABOUT AND PRACTICING PROPOSITIONAL LOGIC 1 CHAPTER 6 - THINKING ABOUT AND PRACTICING PROPOSITIONAL LOGIC Here, you ll learn: what it means for a logic system to be finished some strategies for constructing proofs Congratulations! Our system of

More information

6.897: Selected Topics in Cryptography Lectures 7 and 8. Lecturer: Ran Canetti

6.897: Selected Topics in Cryptography Lectures 7 and 8. Lecturer: Ran Canetti 6.897: Selected Topics in Cryptography Lectures 7 and 8 Lecturer: Ran Canetti Highlights of past lectures Presented a basic framework for analyzing the security of protocols for multi-party function evaluation.

More information

Section 1.1 Propositions

Section 1.1 Propositions Set Theory & Logic Section 1.1 Propositions Fall, 2009 Section 1.1 Propositions In Chapter 1, our main goals are to prove sentences about numbers, equations or functions and to write the proofs. Definition.

More information

Interactive protocols & zero-knowledge

Interactive protocols & zero-knowledge Interactive protocols & zero-knowledge - interactive protocols formalize what can be recognized by polynomial time restricted verifiers in arbitrary protocols - generalizes NP - zero-knowledge formalizes

More information

Automatic Verification of Complex Security Protocols With an Unbounded Number of Sessions

Automatic Verification of Complex Security Protocols With an Unbounded Number of Sessions Automatic Verification of Complex Security Protocols With an Unbounded Number of Sessions Kaile Su, Weiya Yue and Qingliang Chen Department of Computer Science, Sun Yat-sen University Guangzhou, P.R. China

More information

Proofs: A General How To II. Rules of Inference. Rules of Inference Modus Ponens. Rules of Inference Addition. Rules of Inference Conjunction

Proofs: A General How To II. Rules of Inference. Rules of Inference Modus Ponens. Rules of Inference Addition. Rules of Inference Conjunction Introduction I Proofs Computer Science & Engineering 235 Discrete Mathematics Christopher M. Bourke cbourke@cse.unl.edu A proof is a proof. What kind of a proof? It s a proof. A proof is a proof. And when

More information

1. Propositional Calculus

1. Propositional Calculus 1. Propositional Calculus Some notes for Math 601, Fall 2010 based on Elliott Mendelson, Introduction to Mathematical Logic, Fifth edition, 2010, Chapman & Hall. 2. Syntax ( grammar ). 1.1, p. 1. Given:

More information

Early stopping: the idea. TRB for benign failures. Early Stopping: The Protocol. Termination

Early stopping: the idea. TRB for benign failures. Early Stopping: The Protocol. Termination TRB for benign failures Early stopping: the idea Sender in round : :! send m to all Process p in round! k, # k # f+!! :! if delivered m in round k- and p " sender then 2:!! send m to all 3:!! halt 4:!

More information