DIRECTORY CrRPC, TimeP15V2, CHNameP2V0, Rope; AuthenticationP14V2: CEDAR DEFINITIONS ~ { ROPE: TYPE ~ Rope.ROPE; SimpleVerifier: TYPE ~ CARD16; ChangeSimpleKeyType: TYPE ~ PROC [h: CrRPC.Handle, credentials: Credentials, verifier: SeqWords, newKey: CARD16]; ChangeSimpleKey: ChangeSimpleKeyType; Problem: TYPE ~ MACHINE DEPENDENT { credentialsInvalid(0), verifierInvalid(1), verifierExpired(2), verifierReused(3), credentialsExpired(4), inappropriateCredentials(5)}; CreateStrongKeyType: TYPE ~ PROC [h: CrRPC.Handle, credentials: Credentials, verifier: SeqWords, name: CHNameP2V0.ThreePartName, key: Block]; CreateStrongKey: CreateStrongKeyType; AuthenticationErrorType: TYPE ~ ERROR [problem: Problem]; AuthenticationError: AuthenticationErrorType; SimpleCredentials: TYPE ~ CHNameP2V0.ThreePartName; StrongVerifier: TYPE ~ RECORD [ timeStamp: CARD32, ticks: CARD32]; SeqWords: TYPE ~ REF SeqWordsObject; SeqWordsObject: TYPE ~ MACHINE DEPENDENT RECORD [ body: PACKED SEQUENCE length: CARDINAL OF CARD16 ]; Credentials: TYPE ~ RECORD [ type: CredentialsType, value: SeqWords]; DeleteSimpleKeyType: TYPE ~ PROC [h: CrRPC.Handle, credentials: Credentials, verifier: SeqWords, name: CHNameP2V0.ThreePartName]; DeleteSimpleKey: DeleteSimpleKeyType; GetStrongCredentialsType: TYPE ~ PROC [h: CrRPC.Handle, initiator: CHNameP2V0.ThreePartName, recipient: CHNameP2V0.ThreePartName, nonce: CARD32] RETURNS [encryptedCredentialsPackage: SeqWords]; GetStrongCredentials: GetStrongCredentialsType; Which: TYPE ~ MACHINE DEPENDENT { notApplicable(0), initiator(1), recipient(2), client(3)}; CredentialsPackage: TYPE ~ RECORD [ credentials: Credentials, nonce: CARD32, recipient: CHNameP2V0.ThreePartName, conversationKey: Block]; Verifier: TYPE ~ SeqWords; Key: TYPE ~ Block; CheckSimpleCredentialsType: TYPE ~ PROC [h: CrRPC.Handle, credentials: Credentials, verifier: SeqWords] RETURNS [ok: BOOLEAN]; CheckSimpleCredentials: CheckSimpleCredentialsType; ChangeStrongKeyType: TYPE ~ PROC [h: CrRPC.Handle, credentials: Credentials, verifier: SeqWords, newKey: Block]; ChangeStrongKey: ChangeStrongKeyType; StrongCredentials: TYPE ~ RECORD [ conversationKey: Block, expirationTime: CARD32, initiator: CHNameP2V0.ThreePartName]; Block: TYPE ~ PACKED ARRAY [0..4) OF CARD16; DeleteStrongKeyType: TYPE ~ PROC [h: CrRPC.Handle, credentials: Credentials, verifier: SeqWords, name: CHNameP2V0.ThreePartName]; DeleteStrongKey: DeleteStrongKeyType; CallErrorType: TYPE ~ ERROR [problem: CallProblem, whichArg: Which]; CallError: CallErrorType; HashedPassword: TYPE ~ CARD16; CredentialsType: TYPE ~ MACHINE DEPENDENT { simple(0), strong(1)}; CreateSimpleKeyType: TYPE ~ PROC [h: CrRPC.Handle, credentials: Credentials, verifier: SeqWords, name: CHNameP2V0.ThreePartName, key: CARD16]; CreateSimpleKey: CreateSimpleKeyType; CallProblem: TYPE ~ MACHINE DEPENDENT { tooBusy(0), accessRightsInsufficient(1), keysUnavailable(2), strongKeyDoesNotExist(3), simpleKeyDoesNotExist(4), strongKeyAlreadyRegistered(5), simpleKeyAlreadyRegistered(6), domainForNewKeyUnavailable(7), domainForNewKeyUnknown(8), badKey(9), badName(10), databaseFull(11), other(12)}; simpleCredentials: CredentialsType ~ simple; }... Ϊ AuthenticationP14V2.Mesa Copyright Σ 1989, 1991 by Xerox Corporation. All rights reserved. Generated by Willie-sue.pa at February 13, 1989 2:44:16 pm PST using Sirocco [2.0] of February 10, 1989 6:26:26 pm PST Κ›•NewlineDelimiter –(cedarcode) style™šœ™Jšœ Οeœ6™BJšœ>™>Jšœ7™7Icode˜—šΟk ˜ K˜K˜ K˜ K˜—K˜šΟnœžœž œ˜*K˜Kšžœžœžœ˜K˜K˜Kšœžœžœ˜—˜KšœžœžœIžœ˜qKšŸœ˜%—˜Kšœ žœžœž œ‰˜ͺ—˜Kšœžœžœm˜KšŸœ˜%—˜Kšœžœžœ˜9KšŸœ˜-—˜Kšœžœ˜3—˜šœžœžœ˜Kšœ žœ˜Kšœžœ˜——˜Kšœ žœžœ˜$š œžœžœž œžœ˜1Kš œžœžœ žœžœž˜0K˜——˜šœ žœžœ˜K˜K˜——˜Kšœžœžœa˜KšŸœ˜%—˜Kš œžœžœdžœžœ)˜ΑKšŸœ˜/—˜Kšœžœžœž œ<˜[—˜šœžœžœ˜#K˜Kšœžœ˜K˜$K˜——˜Kšœ žœ ˜—˜Kšœžœ ˜—˜Kš œžœžœAžœžœ˜~KšŸœ˜3—˜KšœžœžœP˜pKšŸœ˜%—˜šœžœžœ˜"K˜Kšœžœ˜K˜%——˜Kš œžœžœžœžœžœ˜,—˜Kšœžœžœa˜KšŸœ˜%—˜Kšœžœžœ)˜DKšŸ œ˜—˜Kšœžœžœ˜—˜Kšœžœžœž œ˜B—˜Kšœžœžœfžœ˜ŽKšŸœ˜%—˜Kšœ žœžœž œ‘˜Ζ—˜K˜,—K˜K˜K˜—…— Ž