Japan Advanced Institute of Science and Technology
JAIST Repository
https://dspace.jaist.ac.jp/
Title
セキュリティプロトコルの代数モデルに基づく形式化Author(s)
金城, 直貴Citation
Issue Date
2001‑03Type
Thesis or DissertationText version
authorURL
http://hdl.handle.net/10119/1453Rights
Description
Supervisor:二木 厚吉, 情報科学研究科, 修士Naoki Kinjo
Language Design Labratory
School of Information Science,
Japan Advanced Institute of Science and Technology
February 15, 2001
Keywords: Security protocol, NSPK Protocol, Specication, CafeOBJ.
The purposes of our research are to describe a specication of the security protocol
according some formalismin order toverify, and toconsider the described specication.
The aims of the security protocol are a secret communication using cryptographies,
andaretoapplytheelectroniccommerce,theelectronicauctions,thevoteonnetworkand
soon. Therefore, someprotocols areproposed. Incaseofthatprotocolsarepracticalities,
thesafetyhastobeveriedinadvance. Indiscussingaboutthesafetyofsecurityprotocol,
it is necessary to separate from the applied cryptography. Even if the cryptography is
perfect, a maliciousness user can know secret data using the bug, when a protocol has
a bug. The correctness of security protocol often has been depended on man's instinct.
However, it is expected that the correctness of security protocol is veried with formal
method, because simple problems with some well-known protocols were found by using
it.
CafeOBJ isa multi-paradigmalgebraicspecicationlanguage, whichis asuccessor of
OBJ. CafeOBJ is based on the combination of several logics consisting of order sorted
algebra, rewriting logic and hidden algebra. According to its semantics, CafeOBJ can
t inseveral specication and programmingparadigms suchas equationalspecications,
rewriting logic specication, behavioral specication. In recent year, CafeOBJ has pro-
posed how todescribea specication of abstract state machine, whichmethodologyis to
depend some hidden signature and some equation. The specication described by this
methodology is called behavioural specication.
There are some formalism about security protocol. After this, two formalism are
introduced, G.Denker, J.Meseguer and C.Talcott formalism and Masami Hagiya, Yozo
Todaand YoshikiFukuba formalism.
In order that Denker described a specication of security protocol, she used Con-
guration and described by Maude. Conguration was dened in order to formalize a
Copyrightc 2001byNaokiKinjo
rent system. There are some Object and some Message on Conguration. When Object
receiveszeroormoreMessage, Congurationchanges. Change ofCongurationexpresses
rewrite rules.
Hagiya dened the state of network system. The state of network was expressed
principal set and message set. A principal has a state for communicating. A message
format depends in protocol. The state of network and principalchange at one step of a
protocol.
In our research, we describe security protocolby CafeOBJaccording this twoformal-
ism. Denker's formalismexpectsrewriting logicspecication. Hagiya'sformalismexpects
behavioural specication.
Needham-SchroederPublic-KeyProtocol(Itishenceforth writtenasNSPKProtocol)
is taken up as an exercise of a security protocol which we describe the specication.
NSPK Protocol is adopted the public-key cryptosystem. The public-key cryptosystem
has prepared two dierent keys, which called public-key and secret-key to encrypt and
decrypt message. The message encrypted by a certainpublic-key can be decrypted only
by corresponding secret-key as well as the message encrypted by a certain secret-key is
decrypted only by corresponding public-key. However NSPK Protocol consists of seven
steps, itomits about public-key distribution and discusses atthree steps. In step1, Alice
seekstoestablishaconnectionwithBobbyselectinganonceNa,andsendingitalongwith
itsidentity toBob,encrypted using Bob'spublic-key(message1). When Bobreceivesthis
message, it decryptsthe message toobtain the nonceNa. It returnsthe nonce Na,along
withanewnonceNb,toAlice,encryptedwithAlice's public-key(message2). WhenAlice
receivesthismessageheshouldbeassuredthatheistalkingtoBob,sinceonlyBobshould
be ableto decryptmessage1 toobtain Na. Alicereturnsthe nonceNb toBob, encrypted
with Bob's public-key. When Bob receives this message he should be assured that he is
talking toAlice,since onlyAliceshouldbeable todecryptmessage2 toobtainNb. Thus,
NSPKProtocolproposesthe authenticationbetweenpersonsby exchanginganencrypted
messageobtainanonce. Thenoncecan tbeguessedinarandomnumber. Iftheencrypted
messageincludes anonce, only the person, who generates itselfor has the corresponding
key, cansee. However, Gavin Lowedisproved authenticationby NSPKProtocol. Basisof
Lowe's opinion is when Alice seeks Sam, and sends message1 to Sam, thus Sam receives
Alice's message1, and connects with Bob using the nonce and Alice's identify to obtain
Alice's message1, the result, Sam impersonates another Alice and communicates with
Bob;we callaperson likeSamSpy, and calla person likeAliceand Bob Friend. Spy can
also behave like Friend. This behaviour of Spy calls Lowe's Attack. Lowe also reported
the revised edition of NSPK Protocol with Lowe's Attack. The revision details sender's
identity adds tomessage2 inNSPK Protocol, which preventsLowe's Attack.
Wedescribedthe specicationofthesetwoprotocolsaccordingtotwoformalismmen-
tionedpreviously. Oneof twoformalismappliedrewritinglogic specicationinCafeOBJ,
and anotherapplied behavioural specication.
The rewriting logic specications can be executable automatically to give a random
Conguration. When the specication of NSPK Protocol gave the Conguration, which
inFriend andFriend andSpy,it checked out Lowe's Attack, and therevision didn't. The
revision. This means authenticationisn't performed.
The behavioural specications can be executable one step in protocol steps to give
a random network state. The messages that can generate the principal on a network
are checked for every step, and the possible following steps are checked. As a result,
the possibility of Lowe's Attack was checked in the behavioural specication of NSPK
Protocol, and a meaningless authentication was checked in the revision, which is two
principalsmasquerade as the others.
The rewritinglogic specicationis easytounderstand intuitively,islegible,andis ex-
ecutable automatically;this specication is agoodsimulator. However, this specication
can't verify the safety of protocol. If this specication detects no protocol bug by the
simulation, it is not necessarily the safety protocol. Bythe rewriting logic specication,
itisnecessary toenumerate allrulesaboutthechangeof Conguration. However, human
canwritesome rulesonlyaparttoknow; itisnot necessarilyallrules,and theproofthat
it isall isdiÆcult.
On the other hand, the behavioural specications expect verication of security pro-
tocol, howeveritis diÆculttointuitiveunderstanding and not automaticallytosimulate
comparingwith therewriting logicspecication. Wethinkthe behaviourfortheprotocol
being safeexists. Ifthebehaviourforprotocolbeingsafedoesn tchangeinanyprotocol
steps, it is safe. And we expect the verication of safe in a security protocol is possible
at induction. Forthat purpose, it is necessary toformalize the behaviour to express the
safety of protocol.
Inour research,wedescribedthe specicationofNSPKProtocolintherewritinglogic
specicationand thebehaviorspecicationusing CafeOBJ.The specicationcanexecute
on example, and check out Lowe's Attack in NSPK Protocol. But we don't describe the
verication for asecurity protocol; therefore, safety needs tobeformalize, more details.