ISO Public Key One-Pass Unilateral Authentication Protocol

Purpose

Self-explanatory.

Informal Specification

  1. A -> B: CertA,[Ta|Na],B,text2,E(Ka-1: [Ta|Na],B,text1)

See Commonly Used Representations

MSR Specification

Click here to download
--- Author: rishav
--- Date: 10 September 2007
--- ISO Public Key One-Pass Unilateral Authentication Protocol
---
---       A -> B: CertA,[Ta|Na],B,text2,E(Ka-1: [Ta|Na],B,text1)
(reset)
(
module ISOPublic
export * .

key : type.
pvtk : princ -> type.          pvtk A <: key.
nonce : type.                           nonce  <: msg.
enc : key -> msg -> msg.
text: type.				text <: msg.

net : msg -> state.

initiator:
forall A : princ.
{
  ISOinitRule1:
  forall B : princ.
  forall Ka-1 : pvtk A.
  forall text2 : text.
  forall text1 : text.
    empty
  => exists Na : nonce.
     exists CertA : msg.
     net (CertA & B & Na & text2 & enc Ka-1 (Na & B & text1)).
}


receiver:
forall B : princ.
{
  ISORecRule2:
  forall A : princ. 
  forall Ka-1 : pvtk A.
  forall text2 : text.
  forall text1 : text.
    net (CertA & B & Na & text2 & enc Ka-1 (Na & B & text1))
  => empty.
}

)