(comment "CPSA 2.2.11")
(comment "Extracted shapes")
(herald "A Tagged version of Otway-Rees Protocol"
  (comment "using variables of sort mesg"))
(comment "CPSA 2.2.11")
(comment "All input read from tagged_or.scm")

Trees: 0 5 10 15.

Tree 0.

4 0
(defprotocol or basic
  (defrole init
    (vars (my_init_id yr_resp_id s name) (na text) (k skey) (m text))
    (trace
      (send
        (cat m my_init_id yr_resp_id
          (enc "init_req" na m my_init_id yr_resp_id
            (ltk my_init_id s))))
      (recv (cat m (enc na k (ltk my_init_id s))))))
  (defrole resp
    (vars (yr_init_id my_resp_id s name) (nb text) (k skey) (m text)
      (x y mesg))
    (trace (recv (cat m yr_init_id my_resp_id x))
      (send
        (cat m yr_init_id my_resp_id x
          (enc "resp_req" nb m yr_init_id my_resp_id
            (ltk my_resp_id s))))
      (recv (cat m y (enc nb k (ltk my_resp_id s)))) (send y)))
  (defrole serv
    (vars (a b s name) (na nb text) (k skey) (m text))
    (trace
      (recv
        (cat m a b (enc "init_req" na m a b (ltk a s))
          (enc "resp_req" nb m a b (ltk b s))))
      (send (cat m (enc na k (ltk a s)) (enc nb k (ltk b s)))))
    (uniq-orig k)))

Item 0, Child: 4.

y (cat m y (enc nb k (ltk b s))) (cat m a b x (enc "resp_req" nb m a b (ltk b s))) (cat m a b x) ((x x) (y y) (nb nb) (m m) (yr_init_id a) (my_resp_id b) (s s) (k k)) resp or 0
(defskeleton or
  (vars (x y mesg) (nb m text) (s a b name) (k skey))
  (defstrand resp 4 (x x) (y y) (nb nb) (m m) (yr_init_id a)
    (my_resp_id b) (s s) (k k))
  (non-orig (ltk a s) (ltk b s))
  (uniq-orig nb)
  (traces
    ((recv (cat m a b x))
      (send (cat m a b x (enc "resp_req" nb m a b (ltk b s))))
      (recv (cat m y (enc nb k (ltk b s)))) (send y)))
  (label 0)
  (unrealized (0 2))
  (origs (nb (0 1)))
  (comment "2 in cohort - 2 not yet seen"))

Item 4, Parent: 0.

(cat m a b (enc "init_req" na m a b (ltk a s))) (cat m (enc na k (ltk a s)) (enc nb k (ltk b s))) (cat m a b (enc "init_req" na m a b (ltk a s)) (enc "resp_req" nb m a b (ltk b s))) y (cat m y (enc nb k (ltk b s))) (cat m a b x (enc "resp_req" nb m a b (ltk b s))) (cat m a b x) ((na na) (m m) (my_init_id a) (yr_resp_id b) (s s)) init ((na na) (nb nb) (m m) (a a) (b b) (s s) (k k)) serv ((x x) (y y) (nb nb) (m m) (yr_init_id a) (my_resp_id b) (s s) (k k)) resp or 4 (realized)
(defskeleton or
  (vars (x y mesg) (nb m na text) (s a b name) (k skey))
  (defstrand resp 4 (x x) (y y) (nb nb) (m m) (yr_init_id a)
    (my_resp_id b) (s s) (k k))
  (defstrand serv 2 (na na) (nb nb) (m m) (a a) (b b) (s s) (k k))
  (defstrand init 1 (na na) (m m) (my_init_id a) (yr_resp_id b) (s s))
  (precedes ((0 1) (1 0)) ((1 1) (0 2)) ((2 0) (1 0)))
  (non-orig (ltk a s) (ltk b s))
  (uniq-orig nb k)
  (operation encryption-test (added-strand init 1)
    (enc "init_req" na m a b (ltk a s)) (1 0))
  (traces
    ((recv (cat m a b x))
      (send (cat m a b x (enc "resp_req" nb m a b (ltk b s))))
      (recv (cat m y (enc nb k (ltk b s)))) (send y))
    ((recv
       (cat m a b (enc "init_req" na m a b (ltk a s))
         (enc "resp_req" nb m a b (ltk b s))))
      (send (cat m (enc na k (ltk a s)) (enc nb k (ltk b s)))))
    ((send (cat m a b (enc "init_req" na m a b (ltk a s))))))
  (label 4)
  (parent 0)
  (unrealized)
  (shape)
  (maps ((0) ((nb nb) (s s) (a a) (b b) (k k) (m m) (x x) (y y))))
  (origs (k (1 1)) (nb (0 1))))

Tree 5.

9 5
(defprotocol or basic
  (defrole init
    (vars (my_init_id yr_resp_id s name) (na text) (k skey) (m text))
    (trace
      (send
        (cat m my_init_id yr_resp_id
          (enc "init_req" na m my_init_id yr_resp_id
            (ltk my_init_id s))))
      (recv (cat m (enc na k (ltk my_init_id s))))))
  (defrole resp
    (vars (yr_init_id my_resp_id s name) (nb text) (k skey) (m text)
      (x y mesg))
    (trace (recv (cat m yr_init_id my_resp_id x))
      (send
        (cat m yr_init_id my_resp_id x
          (enc "resp_req" nb m yr_init_id my_resp_id
            (ltk my_resp_id s))))
      (recv (cat m y (enc nb k (ltk my_resp_id s)))) (send y)))
  (defrole serv
    (vars (a b s name) (na nb text) (k skey) (m text))
    (trace
      (recv
        (cat m a b (enc "init_req" na m a b (ltk a s))
          (enc "resp_req" nb m a b (ltk b s))))
      (send (cat m (enc na k (ltk a s)) (enc nb k (ltk b s)))))
    (uniq-orig k)))

Item 5, Child: 9.

(cat m (enc na k (ltk a s))) (cat m a b (enc "init_req" na m a b (ltk a s))) ((na na) (m m) (my_init_id a) (yr_resp_id b) (s s) (k k)) init or 5
(defskeleton or
  (vars (na m text) (s a b name) (k skey))
  (defstrand init 2 (na na) (m m) (my_init_id a) (yr_resp_id b) (s s)
    (k k))
  (non-orig (ltk a s) (ltk b s))
  (uniq-orig na)
  (traces
    ((send (cat m a b (enc "init_req" na m a b (ltk a s))))
      (recv (cat m (enc na k (ltk a s))))))
  (label 5)
  (unrealized (0 1))
  (origs (na (0 0)))
  (comment "2 in cohort - 2 not yet seen"))

Item 9, Parent: 5.

(cat m a b x (enc "resp_req" nb m a b (ltk b s))) (cat m a b x) (cat m (enc na k (ltk a s)) (enc nb k (ltk b s))) (cat m a b (enc "init_req" na m a b (ltk a s)) (enc "resp_req" nb m a b (ltk b s))) (cat m (enc na k (ltk a s))) (cat m a b (enc "init_req" na m a b (ltk a s))) ((x x) (nb nb) (m m) (yr_init_id a) (my_resp_id b) (s s)) resp ((na na) (nb nb) (m m) (a a) (b b) (s s) (k k)) serv ((na na) (m m) (my_init_id a) (yr_resp_id b) (s s) (k k)) init or 9 (realized)
(defskeleton or
  (vars (x mesg) (na m nb text) (s a b name) (k skey))
  (defstrand init 2 (na na) (m m) (my_init_id a) (yr_resp_id b) (s s)
    (k k))
  (defstrand serv 2 (na na) (nb nb) (m m) (a a) (b b) (s s) (k k))
  (defstrand resp 2 (x x) (nb nb) (m m) (yr_init_id a) (my_resp_id b)
    (s s))
  (precedes ((0 0) (1 0)) ((1 1) (0 1)) ((2 1) (1 0)))
  (non-orig (ltk a s) (ltk b s))
  (uniq-orig na k)
  (operation encryption-test (added-strand resp 2)
    (enc "resp_req" nb m a b (ltk b s)) (1 0))
  (traces
    ((send (cat m a b (enc "init_req" na m a b (ltk a s))))
      (recv (cat m (enc na k (ltk a s)))))
    ((recv
       (cat m a b (enc "init_req" na m a b (ltk a s))
         (enc "resp_req" nb m a b (ltk b s))))
      (send (cat m (enc na k (ltk a s)) (enc nb k (ltk b s)))))
    ((recv (cat m a b x))
      (send (cat m a b x (enc "resp_req" nb m a b (ltk b s))))))
  (label 9)
  (parent 5)
  (unrealized)
  (shape)
  (maps ((0) ((na na) (s s) (a a) (b b) (k k) (m m))))
  (origs (k (1 1)) (na (0 0))))

Tree 10.

10
(defprotocol or basic
  (defrole init
    (vars (my_init_id yr_resp_id s name) (na text) (k skey) (m text))
    (trace
      (send
        (cat m my_init_id yr_resp_id
          (enc "init_req" na m my_init_id yr_resp_id
            (ltk my_init_id s))))
      (recv (cat m (enc na k (ltk my_init_id s))))))
  (defrole resp
    (vars (yr_init_id my_resp_id s name) (nb text) (k skey) (m text)
      (x y mesg))
    (trace (recv (cat m yr_init_id my_resp_id x))
      (send
        (cat m yr_init_id my_resp_id x
          (enc "resp_req" nb m yr_init_id my_resp_id
            (ltk my_resp_id s))))
      (recv (cat m y (enc nb k (ltk my_resp_id s)))) (send y)))
  (defrole serv
    (vars (a b s name) (na nb text) (k skey) (m text))
    (trace
      (recv
        (cat m a b (enc "init_req" na m a b (ltk a s))
          (enc "resp_req" nb m a b (ltk b s))))
      (send (cat m (enc na k (ltk a s)) (enc nb k (ltk b s)))))
    (uniq-orig k)))

Item 10.

k k y (cat m y (enc nb k (ltk b s))) (cat m a b x (enc "resp_req" nb m a b (ltk b s))) (cat m a b x) ((x x) (y y) (nb nb) (m m) (yr_init_id a) (my_resp_id b) (s s) (k k)) resp or 10
(defskeleton or
  (vars (x y mesg) (nb m text) (s a b name) (k skey))
  (defstrand resp 4 (x x) (y y) (nb nb) (m m) (yr_init_id a)
    (my_resp_id b) (s s) (k k))
  (deflistener k)
  (non-orig (ltk a s) (ltk b s))
  (uniq-orig nb)
  (traces
    ((recv (cat m a b x))
      (send (cat m a b x (enc "resp_req" nb m a b (ltk b s))))
      (recv (cat m y (enc nb k (ltk b s)))) (send y))
    ((recv k) (send k)))
  (label 10)
  (unrealized (0 2))
  (origs (nb (0 1)))
  (comment "2 in cohort - 2 not yet seen"))

Tree 15.

15
(defprotocol or basic
  (defrole init
    (vars (my_init_id yr_resp_id s name) (na text) (k skey) (m text))
    (trace
      (send
        (cat m my_init_id yr_resp_id
          (enc "init_req" na m my_init_id yr_resp_id
            (ltk my_init_id s))))
      (recv (cat m (enc na k (ltk my_init_id s))))))
  (defrole resp
    (vars (yr_init_id my_resp_id s name) (nb text) (k skey) (m text)
      (x y mesg))
    (trace (recv (cat m yr_init_id my_resp_id x))
      (send
        (cat m yr_init_id my_resp_id x
          (enc "resp_req" nb m yr_init_id my_resp_id
            (ltk my_resp_id s))))
      (recv (cat m y (enc nb k (ltk my_resp_id s)))) (send y)))
  (defrole serv
    (vars (a b s name) (na nb text) (k skey) (m text))
    (trace
      (recv
        (cat m a b (enc "init_req" na m a b (ltk a s))
          (enc "resp_req" nb m a b (ltk b s))))
      (send (cat m (enc na k (ltk a s)) (enc nb k (ltk b s)))))
    (uniq-orig k)))

Item 15.

k k (cat m (enc na k (ltk a s))) (cat m a b (enc "init_req" na m a b (ltk a s))) ((na na) (m m) (my_init_id a) (yr_resp_id b) (s s) (k k)) init or 15
(defskeleton or
  (vars (na m text) (s a b name) (k skey))
  (defstrand init 2 (na na) (m m) (my_init_id a) (yr_resp_id b) (s s)
    (k k))
  (deflistener k)
  (non-orig (ltk a s) (ltk b s))
  (uniq-orig na)
  (traces
    ((send (cat m a b (enc "init_req" na m a b (ltk a s))))
      (recv (cat m (enc na k (ltk a s))))) ((recv k) (send k)))
  (label 15)
  (unrealized (0 1))
  (origs (na (0 0)))
  (comment "2 in cohort - 2 not yet seen"))