packages feed

cpsa-2.0.3: tst/dh.tst

(comment "CPSA 2.0.3")
(comment "All input read")

(defprotocol dhke diffie-hellman
  (defrole init
    (vars (a b name) (g base) (m expn))
    (trace (send (cat a (enc "i" (exp (gen) m) (privk a))))
      (recv (cat b (enc g (privk b)) (enc "r" a b (exp g m))))
      (send (enc "i" a b (exp g m))))
    (uniq-orig (exp (gen) m)))
  (defrole resp
    (vars (a b name) (h base) (n expn))
    (trace (recv (cat a (enc "i" h (privk a))))
      (send
        (cat b (enc (exp (gen) n) (privk b)) (enc "r" a b (exp h n))))
      (recv (enc "i" a b (exp h n))))
    (uniq-orig (exp (gen) n))))

(defskeleton dhke
  (vars (a b name) (h base) (n expn))
  (defstrand resp 3 (a a) (b b) (h h) (n n))
  (non-orig (exp h n) (privk a) (privk b))
  (uniq-orig (exp (gen) n))
  (traces
    ((recv (cat a (enc "i" h (privk a))))
      (send
        (cat b (enc (exp (gen) n) (privk b)) (enc "r" a b (exp h n))))
      (recv (enc "i" a b (exp h n)))))
  (label 0)
  (unrealized (0 0) (0 2))
  (comment "1 in cohort - 1 not yet seen"))

(defskeleton dhke
  (vars (a b name) (n m expn))
  (defstrand resp 3 (a a) (b b) (h (exp (gen) m)) (n n))
  (defstrand init 1 (a a) (m m))
  (precedes ((1 0) (0 0)))
  (non-orig (exp (gen) (mul n m)) (privk a) (privk b))
  (uniq-orig (exp (gen) n) (exp (gen) m))
  (operation encryption-test (added-strand init 1)
    (enc "i" (exp (gen) m) (privk a)) (0 0))
  (traces
    ((recv (cat a (enc "i" (exp (gen) m) (privk a))))
      (send
        (cat b (enc (exp (gen) n) (privk b))
          (enc "r" a b (exp (gen) (mul n m)))))
      (recv (enc "i" a b (exp (gen) (mul n m)))))
    ((send (cat a (enc "i" (exp (gen) m) (privk a))))))
  (label 1)
  (parent 0)
  (unrealized (0 2))
  (comment "1 in cohort - 1 not yet seen"))

(defskeleton dhke
  (vars (a b name) (n m m-0 expn))
  (defstrand resp 3 (a a) (b b) (h (exp (gen) m)) (n n))
  (defstrand init 1 (a a) (m m))
  (defstrand init 3 (a a) (b b) (g (exp (gen) (mul n m (rec m-0))))
    (m m-0))
  (precedes ((1 0) (0 0)) ((2 2) (0 2)))
  (non-orig (exp (gen) (mul n m)) (privk a) (privk b))
  (uniq-orig (exp (gen) n) (exp (gen) m) (exp (gen) m-0))
  (operation encryption-test (added-strand init 3)
    (enc "i" a b (exp (gen) (mul n m))) (0 2))
  (traces
    ((recv (cat a (enc "i" (exp (gen) m) (privk a))))
      (send
        (cat b (enc (exp (gen) n) (privk b))
          (enc "r" a b (exp (gen) (mul n m)))))
      (recv (enc "i" a b (exp (gen) (mul n m)))))
    ((send (cat a (enc "i" (exp (gen) m) (privk a)))))
    ((send (cat a (enc "i" (exp (gen) m-0) (privk a))))
      (recv
        (cat b (enc (exp (gen) (mul n m (rec m-0))) (privk b))
          (enc "r" a b (exp (gen) (mul n m)))))
      (send (enc "i" a b (exp (gen) (mul n m))))))
  (label 2)
  (parent 1)
  (unrealized (2 1))
  (comment "1 in cohort - 1 not yet seen"))

(defskeleton dhke
  (vars (a b a-0 name) (h base) (n m m-0 expn))
  (defstrand resp 3 (a a) (b b) (h (exp (gen) m-0))
    (n (mul n m (rec m-0))))
  (defstrand init 1 (a a) (m m-0))
  (defstrand init 3 (a a) (b b) (g (exp (gen) n)) (m m))
  (defstrand resp 2 (a a-0) (b b) (h h) (n n))
  (precedes ((1 0) (0 0)) ((2 2) (0 2)) ((3 1) (2 1)))
  (non-orig (exp (gen) (mul n m)) (privk a) (privk b))
  (uniq-orig (exp (gen) n) (exp (gen) (mul n m (rec m-0))) (exp (gen) m)
    (exp (gen) m-0))
  (operation encryption-test (added-strand resp 2)
    (enc (exp (gen) n) (privk b)) (2 1))
  (traces
    ((recv (cat a (enc "i" (exp (gen) m-0) (privk a))))
      (send
        (cat b (enc (exp (gen) (mul n m (rec m-0))) (privk b))
          (enc "r" a b (exp (gen) (mul n m)))))
      (recv (enc "i" a b (exp (gen) (mul n m)))))
    ((send (cat a (enc "i" (exp (gen) m-0) (privk a)))))
    ((send (cat a (enc "i" (exp (gen) m) (privk a))))
      (recv
        (cat b (enc (exp (gen) n) (privk b))
          (enc "r" a b (exp (gen) (mul n m)))))
      (send (enc "i" a b (exp (gen) (mul n m)))))
    ((recv (cat a-0 (enc "i" h (privk a-0))))
      (send
        (cat b (enc (exp (gen) n) (privk b))
          (enc "r" a-0 b (exp h n))))))
  (label 3)
  (parent 2)
  (unrealized (2 1))
  (comment "1 in cohort - 1 not yet seen"))

(defskeleton dhke
  (vars (a b a-0 name) (h base) (n m m-0 n-0 expn))
  (defstrand resp 3 (a a) (b b) (h (exp (gen) m-0))
    (n (mul n m (rec m-0))))
  (defstrand init 1 (a a) (m m-0))
  (defstrand init 3 (a a) (b b) (g (exp (gen) n)) (m m))
  (defstrand resp 2 (a a-0) (b b) (h h) (n n))
  (defstrand resp 2 (a a) (b b) (h (exp (gen) (mul n m (rec n-0))))
    (n n-0))
  (precedes ((1 0) (0 0)) ((2 2) (0 2)) ((3 1) (2 1)) ((4 1) (2 1)))
  (non-orig (exp (gen) (mul n m)) (privk a) (privk b))
  (uniq-orig (exp (gen) n) (exp (gen) (mul n m (rec m-0))) (exp (gen) m)
    (exp (gen) m-0) (exp (gen) n-0))
  (operation encryption-test (added-strand resp 2)
    (enc "r" a b (exp (gen) (mul n m))) (2 1))
  (traces
    ((recv (cat a (enc "i" (exp (gen) m-0) (privk a))))
      (send
        (cat b (enc (exp (gen) (mul n m (rec m-0))) (privk b))
          (enc "r" a b (exp (gen) (mul n m)))))
      (recv (enc "i" a b (exp (gen) (mul n m)))))
    ((send (cat a (enc "i" (exp (gen) m-0) (privk a)))))
    ((send (cat a (enc "i" (exp (gen) m) (privk a))))
      (recv
        (cat b (enc (exp (gen) n) (privk b))
          (enc "r" a b (exp (gen) (mul n m)))))
      (send (enc "i" a b (exp (gen) (mul n m)))))
    ((recv (cat a-0 (enc "i" h (privk a-0))))
      (send
        (cat b (enc (exp (gen) n) (privk b))
          (enc "r" a-0 b (exp h n)))))
    ((recv (cat a (enc "i" (exp (gen) (mul n m (rec n-0))) (privk a))))
      (send
        (cat b (enc (exp (gen) n-0) (privk b))
          (enc "r" a b (exp (gen) (mul n m)))))))
  (label 4)
  (parent 3)
  (unrealized (4 0))
  (comment "1 in cohort - 1 not yet seen"))

(defskeleton dhke
  (vars (a b a-0 name) (h base) (m n m-0 n-0 expn))
  (defstrand resp 3 (a a) (b b) (h (exp (gen) m))
    (n (mul (rec m) n m-0)))
  (defstrand init 1 (a a) (m m))
  (defstrand init 3 (a a) (b b) (g (exp (gen) (mul n m-0 (rec n-0))))
    (m n-0))
  (defstrand resp 2 (a a-0) (b b) (h h) (n (mul n m-0 (rec n-0))))
  (defstrand resp 2 (a a) (b b) (h (exp (gen) n)) (n m-0))
  (defstrand init 1 (a a) (m n))
  (precedes ((1 0) (0 0)) ((2 2) (0 2)) ((3 1) (2 1)) ((4 1) (2 1))
    ((5 0) (4 0)))
  (non-orig (exp (gen) (mul n m-0)) (privk a) (privk b))
  (uniq-orig (exp (gen) (mul (rec m) n m-0)) (exp (gen) m) (exp (gen) n)
    (exp (gen) (mul n m-0 (rec n-0))) (exp (gen) m-0) (exp (gen) n-0))
  (operation encryption-test (added-strand init 1)
    (enc "i" (exp (gen) n) (privk a)) (4 0))
  (traces
    ((recv (cat a (enc "i" (exp (gen) m) (privk a))))
      (send
        (cat b (enc (exp (gen) (mul (rec m) n m-0)) (privk b))
          (enc "r" a b (exp (gen) (mul n m-0)))))
      (recv (enc "i" a b (exp (gen) (mul n m-0)))))
    ((send (cat a (enc "i" (exp (gen) m) (privk a)))))
    ((send (cat a (enc "i" (exp (gen) n-0) (privk a))))
      (recv
        (cat b (enc (exp (gen) (mul n m-0 (rec n-0))) (privk b))
          (enc "r" a b (exp (gen) (mul n m-0)))))
      (send (enc "i" a b (exp (gen) (mul n m-0)))))
    ((recv (cat a-0 (enc "i" h (privk a-0))))
      (send
        (cat b (enc (exp (gen) (mul n m-0 (rec n-0))) (privk b))
          (enc "r" a-0 b (exp h (mul n m-0 (rec n-0)))))))
    ((recv (cat a (enc "i" (exp (gen) n) (privk a))))
      (send
        (cat b (enc (exp (gen) m-0) (privk b))
          (enc "r" a b (exp (gen) (mul n m-0))))))
    ((send (cat a (enc "i" (exp (gen) n) (privk a))))))
  (label 5)
  (parent 4)
  (seen 6 7 8)
  (unrealized)
  (shape)
  (comment "6 in cohort - 3 not yet seen"))

(defskeleton dhke
  (vars (a b name) (n m m-0 expn))
  (defstrand resp 3 (a a) (b b) (h (exp (gen) m-0))
    (n (mul n m (rec m-0))))
  (defstrand init 3 (a a) (b b) (g (exp (gen) (mul n m (rec m-0))))
    (m m-0))
  (defstrand resp 2 (a a) (b b) (h (exp (gen) n)) (n m))
  (defstrand init 1 (a a) (m n))
  (precedes ((0 1) (1 1)) ((1 0) (0 0)) ((1 2) (0 2)) ((2 1) (1 1))
    ((3 0) (2 0)))
  (non-orig (exp (gen) (mul n m)) (privk a) (privk b))
  (uniq-orig (exp (gen) n) (exp (gen) (mul n m (rec m-0))) (exp (gen) m)
    (exp (gen) m-0))
  (operation collapsed 1 2)
  (traces
    ((recv (cat a (enc "i" (exp (gen) m-0) (privk a))))
      (send
        (cat b (enc (exp (gen) (mul n m (rec m-0))) (privk b))
          (enc "r" a b (exp (gen) (mul n m)))))
      (recv (enc "i" a b (exp (gen) (mul n m)))))
    ((send (cat a (enc "i" (exp (gen) m-0) (privk a))))
      (recv
        (cat b (enc (exp (gen) (mul n m (rec m-0))) (privk b))
          (enc "r" a b (exp (gen) (mul n m)))))
      (send (enc "i" a b (exp (gen) (mul n m)))))
    ((recv (cat a (enc "i" (exp (gen) n) (privk a))))
      (send
        (cat b (enc (exp (gen) m) (privk b))
          (enc "r" a b (exp (gen) (mul n m))))))
    ((send (cat a (enc "i" (exp (gen) n) (privk a))))))
  (label 6)
  (parent 5)
  (seen 9)
  (unrealized)
  (shape)
  (comment "2 in cohort - 1 not yet seen"))

(defskeleton dhke
  (vars (a b a-0 name) (h base) (m n m-0 expn))
  (defstrand resp 3 (a a) (b b) (h (exp (gen) m-0)) (n m))
  (defstrand init 1 (a a) (m m-0))
  (defstrand init 3 (a a) (b b) (g (exp (gen) (mul m (rec n) m-0)))
    (m n))
  (defstrand resp 2 (a a-0) (b b) (h h) (n (mul m (rec n) m-0)))
  (precedes ((0 1) (2 1)) ((1 0) (0 0)) ((2 2) (0 2)) ((3 1) (2 1)))
  (non-orig (exp (gen) (mul m m-0)) (privk a) (privk b))
  (uniq-orig (exp (gen) m) (exp (gen) (mul m (rec n) m-0)) (exp (gen) n)
    (exp (gen) m-0))
  (operation collapsed 4 0)
  (traces
    ((recv (cat a (enc "i" (exp (gen) m-0) (privk a))))
      (send
        (cat b (enc (exp (gen) m) (privk b))
          (enc "r" a b (exp (gen) (mul m m-0)))))
      (recv (enc "i" a b (exp (gen) (mul m m-0)))))
    ((send (cat a (enc "i" (exp (gen) m-0) (privk a)))))
    ((send (cat a (enc "i" (exp (gen) n) (privk a))))
      (recv
        (cat b (enc (exp (gen) (mul m (rec n) m-0)) (privk b))
          (enc "r" a b (exp (gen) (mul m m-0)))))
      (send (enc "i" a b (exp (gen) (mul m m-0)))))
    ((recv (cat a-0 (enc "i" h (privk a-0))))
      (send
        (cat b (enc (exp (gen) (mul m (rec n) m-0)) (privk b))
          (enc "r" a-0 b (exp h (mul m (rec n) m-0)))))))
  (label 7)
  (parent 5)
  (seen 9)
  (unrealized)
  (shape)
  (comment "2 in cohort - 0 not yet seen"))

(defskeleton dhke
  (vars (b a name) (m m-0 n expn))
  (defstrand resp 3 (a a) (b b) (h (exp (gen) m))
    (n (mul (rec m) m-0 n)))
  (defstrand init 1 (a a) (m m))
  (defstrand init 3 (a a) (b b) (g (exp (gen) m-0)) (m n))
  (defstrand resp 2 (a a) (b b) (h (exp (gen) n)) (n m-0))
  (precedes ((1 0) (0 0)) ((2 0) (3 0)) ((2 2) (0 2)) ((3 1) (2 1)))
  (non-orig (exp (gen) (mul m-0 n)) (privk b) (privk a))
  (uniq-orig (exp (gen) (mul (rec m) m-0 n)) (exp (gen) m)
    (exp (gen) m-0) (exp (gen) n))
  (operation collapsed 4 3)
  (traces
    ((recv (cat a (enc "i" (exp (gen) m) (privk a))))
      (send
        (cat b (enc (exp (gen) (mul (rec m) m-0 n)) (privk b))
          (enc "r" a b (exp (gen) (mul m-0 n)))))
      (recv (enc "i" a b (exp (gen) (mul m-0 n)))))
    ((send (cat a (enc "i" (exp (gen) m) (privk a)))))
    ((send (cat a (enc "i" (exp (gen) n) (privk a))))
      (recv
        (cat b (enc (exp (gen) m-0) (privk b))
          (enc "r" a b (exp (gen) (mul m-0 n)))))
      (send (enc "i" a b (exp (gen) (mul m-0 n)))))
    ((recv (cat a (enc "i" (exp (gen) n) (privk a))))
      (send
        (cat b (enc (exp (gen) m-0) (privk b))
          (enc "r" a b (exp (gen) (mul m-0 n)))))))
  (label 8)
  (parent 5)
  (seen 9)
  (unrealized)
  (shape)
  (comment "2 in cohort - 0 not yet seen"))

(defskeleton dhke
  (vars (a b name) (m n expn))
  (defstrand resp 3 (a a) (b b) (h (exp (gen) n)) (n m))
  (defstrand init 3 (a a) (b b) (g (exp (gen) m)) (m n))
  (precedes ((0 1) (1 1)) ((1 0) (0 0)) ((1 2) (0 2)))
  (non-orig (exp (gen) (mul m n)) (privk a) (privk b))
  (uniq-orig (exp (gen) m) (exp (gen) n))
  (operation collapsed 2 0)
  (traces
    ((recv (cat a (enc "i" (exp (gen) n) (privk a))))
      (send
        (cat b (enc (exp (gen) m) (privk b))
          (enc "r" a b (exp (gen) (mul m n)))))
      (recv (enc "i" a b (exp (gen) (mul m n)))))
    ((send (cat a (enc "i" (exp (gen) n) (privk a))))
      (recv
        (cat b (enc (exp (gen) m) (privk b))
          (enc "r" a b (exp (gen) (mul m n)))))
      (send (enc "i" a b (exp (gen) (mul m n))))))
  (label 9)
  (parent 6)
  (unrealized)
  (shape))

(comment "Nothing left to do")

(defprotocol dhke diffie-hellman
  (defrole init
    (vars (a b name) (g base) (m expn))
    (trace (send (cat a (enc "i" (exp (gen) m) (privk a))))
      (recv (cat b (enc g (privk b)) (enc "r" a b (exp g m))))
      (send (enc "i" a b (exp g m))))
    (uniq-orig (exp (gen) m)))
  (defrole resp
    (vars (a b name) (h base) (n expn))
    (trace (recv (cat a (enc "i" h (privk a))))
      (send
        (cat b (enc (exp (gen) n) (privk b)) (enc "r" a b (exp h n))))
      (recv (enc "i" a b (exp h n))))
    (uniq-orig (exp (gen) n))))

(defskeleton dhke
  (vars (a b name) (h base) (n expn))
  (defstrand resp 3 (a a) (b b) (h h) (n n))
  (non-orig (privk a) (privk b))
  (uniq-orig (exp (gen) n))
  (traces
    ((recv (cat a (enc "i" h (privk a))))
      (send
        (cat b (enc (exp (gen) n) (privk b)) (enc "r" a b (exp h n))))
      (recv (enc "i" a b (exp h n)))))
  (label 10)
  (unrealized (0 0))
  (comment "1 in cohort - 1 not yet seen"))

(defskeleton dhke
  (vars (a b name) (n m expn))
  (defstrand resp 3 (a a) (b b) (h (exp (gen) m)) (n n))
  (defstrand init 1 (a a) (m m))
  (precedes ((1 0) (0 0)))
  (non-orig (privk a) (privk b))
  (uniq-orig (exp (gen) n) (exp (gen) m))
  (operation encryption-test (added-strand init 1)
    (enc "i" (exp (gen) m) (privk a)) (0 0))
  (traces
    ((recv (cat a (enc "i" (exp (gen) m) (privk a))))
      (send
        (cat b (enc (exp (gen) n) (privk b))
          (enc "r" a b (exp (gen) (mul n m)))))
      (recv (enc "i" a b (exp (gen) (mul n m)))))
    ((send (cat a (enc "i" (exp (gen) m) (privk a))))))
  (label 11)
  (parent 10)
  (unrealized)
  (shape))

(comment "Nothing left to do")