6
Moving from Security to Distributed Trust in Ubiquitous Computing Environments Lalana Kagal, Tim Finin and Anupam Joshi University of Maryland Baltimore County email : lkagal1,finin,[email protected] 1 Introduction Traditionally, security for stand-alone computers and small networks was handled by physical secu- rity and by logging into computers and domains. With open networks like the Internet and pervasive environments, issues concerning security and trust become crucial. There is no longer the physical as- pect of security due to the distributed nature of the networks and the concept of user authentication to a domain is not possible. Imagine a scenario where a user, with a portable device, walking through a building, switches on the lights in the corridor and lowers the temperature of the room that he/she enters. This is an example of pervasive/ubiquitous environments that will soon be a reality. In these ubiquitous computing environments users expect to access resources and services anytime and anywhere, leading to serious security risks and problems with access control as these resources can now be accessed by almost anyone with a mobile device. Adding security to such open models is extremely difficult with problems at many levels. We can not assume an architecture with a central authority and access control is required for foreign users. The portable hand-held and embedded devices involved have severe limitations in their processing capabilities, memory capacities, software support and bandwidth characteristics. Moreover, there is currently a great deal of heterogeneity in the hardware and software environments and this is likely to continue for the foreseeable future. Finally, in such an open, heterogeneous, distributed environ- ment there is a great likelihood that inconsistent interpretations will be made of the security information in different domains. Existing security infrastructures deal with authentication and access control. These mechanisms are inadequate for the increased flexibility required by distributed networks. We suggest enhancing security by the addition of trust, which is similar to the way security is handled in human societies. A person is trusted if someone we trust, says that the person can be trusted. In terms of distributed computing, a user is allowed to access a service or information, if the user has the access right to do so, or if the user has been delegated the ability by a trusted authority. Trust management can be viewed as developing of security policies, the assignment of credentials to entities, checking if the credentials fulfill the policy and the delegation of trust to third parties [8, 3]. We propose a lightweight solution for trust management that is applicable for the Internet, which we are tailoring for pervasive computing environments. 2 Pervasive Computing Pervasive Computing strives to simplify day-to-day life by providing the means of carrying out per- sonal and business tasks via portable and embedded devices. These tasks could be as simple as switching This research was supported in part by the IBM EECOMS program, the DARPA DAML program under contract F30602- 97-1-0215, NSF CCR0070802, 1159875433. To appear in IEEE Computer, December 2001 1

Moving from Security to Distributed Trust in Ubiquitous ...finin/papers/papers/ieee01/ieee01.pdf · Moving from Security to Distributed Trust in Ubiquitous Computing Environments

Embed Size (px)

Citation preview

Moving from Security to Distributed Trustin Ubiquitous Computing Environments

LalanaKagal, Tim Finin andAnupamJoshiUniversityof MarylandBaltimoreCountyemail: lkagal1,finin,[email protected]

1 Introduction

Traditionally, securityfor stand-alonecomputersandsmallnetworkswashandledby physicalsecu-rity andby logging into computersanddomains.With opennetworks like the Internetandpervasiveenvironments, issuesconcerningsecurityandtrustbecomecrucial. Thereis no longerthephysicalas-pectof securitydueto thedistributednatureof thenetworksandtheconceptof userauthenticationtoa domainis not possible.Imaginea scenariowherea user, with a portabledevice, walking throughabuilding, switchesonthelights in thecorridorandlowersthetemperatureof theroomthathe/sheenters.This is anexampleof pervasive/ubiquitousenvironmentsthatwill soonbea reality. In theseubiquitouscomputingenvironmentsusersexpectto accessresourcesandservicesanytimeandanywhere,leadingtoserioussecurityrisksandproblemswith accesscontrolastheseresourcescannow beaccessedby almostanyonewith amobiledevice. Addingsecurityto suchopenmodelsis extremelydifficult with problemsatmany levels.Wecannotassumeanarchitecturewith acentralauthorityandaccesscontrolis requiredfor foreignusers.Theportablehand-heldandembeddeddevicesinvolvedhaveseverelimitationsin theirprocessingcapabilities,memorycapacities,softwaresupportandbandwidthcharacteristics.Moreover,thereis currentlya greatdealof heterogeneityin the hardwareandsoftwareenvironmentsandthis islikely to continuefor theforeseeablefuture.Finally, in suchanopen,heterogeneous,distributedenviron-mentthereis agreatlikelihoodthatinconsistentinterpretationswill bemadeof thesecurityinformationin differentdomains.

Existingsecurityinfrastructuresdealwith authenticationandaccesscontrol. Thesemechanismsareinadequatefor theincreasedflexibility requiredby distributednetworks.Wesuggestenhancingsecurityby the additionof trust, which is similar to the way securityis handledin humansocieties.A personis trustedif someonewe trust,saysthat thepersoncanbetrusted.In termsof distributedcomputing,auseris allowedto accessa serviceor information,if theuserhastheaccessright to do so,or if theuserhasbeendelegatedtheability by a trustedauthority. Trustmanagementcanbeviewedasdevelopingofsecuritypolicies,the assignmentof credentialsto entities,checkingif the credentialsfulfill the policyandthedelegationof trustto third parties[8, 3]. Weproposealightweightsolutionfor trustmanagementthatis applicablefor theInternet, whichwearetailoring for pervasivecomputingenvironments.

2 Pervasive Computing

Pervasive Computingstrivesto simplify day-to-daylife by providing themeansof carryingout per-sonalandbusinesstasksvia portableandembeddeddevices.Thesetaskscouldbeassimpleasswitching

Thisresearchwassupportedin partby theIBM EECOMSprogram,theDARPA DAML programundercontractF30602-97-1-0215,NSFCCR0070802,1159875433.To appearin IEEEComputer, December2001

1

Figure 1. Pervasive Computing

on thelights in a conferenceroom,checkingemail,organizingmeetings,accessingservicesin a room,to bookingairlinetickets,buyingandsellingstock,andevenmanagingbankaccounts.As seenin Figure1., hand-heldandembeddeddeviceswork within a ubiquitousnetwork infrastructureto provide morerelevantinformationandservicesto theuser.

Our researchprogram�

is aimedat realizingubiquitouscomputingsystemsthatarecomposedof au-tonomous,intelligent,articulateandsocialcomponents.As partof this researchproject,wehavedevel-opedCentaurus[7], which realizestheSmartOfficescenario,whereintelligentservicesareaccessibleto mobileusersvia hand-helddevicesconnectedovershortrangewirelesslinks.

We encounteredseveral problemswith securityfor Centaurus. Firstly, it is not possibleto have acentralauthorityfor asinglebuilding, or evenagroupof rooms.Sowehave to useadistributedmodel,wherethe servicemanagers, eachof which areresponsiblefor a subsetof services,arearrangedin ahierarchy. It is alsonotsufficient to authenticateusersbecausemostusersareforeignto thesystem,i.e.they arenotknown. Sothereis nomeansof providing accesscontrol.ConsideraCentaurusSmartroomin an office, equippedwith an MP3 player, fax machine,several lights, a coffee maker anda printer.If a user, John,walks, how doesthe room decidewhich servicesJohnhasthe right to access.JustauthenticatingJohn’s certificategivesno informationon accesscontrol becauseJohnis an unknownuser. Unlessit is known in advancewhich usersaregoingto accesstheroomandtheir accessrightsarealsoknown, simpleauthenticationandaccesscontrolis notgoingwork. AssumeJohndoesnotwork intheoffice,but in oneof its partnerfirms. How will thesystemdecidewhetherto allow him to usecertainservices? DistributedTrust is thesolution.Someauthorizedpersonin theofficecandelegatetheuseof

web pagesdescribingthe UMBC Ebiquity Group, including descriptionsof faculty, students,researchprojectsandpapers,canbefoundat http://research.ebiquity.org/.

2

theservicesin theroomto Johnfor theperiodduringwhichheis in theoffice.As simplesecuritydoesnotsatisfyall therequirementsof thepervasivemodel,wesuggesttheuseof

distributedtrust.

3 Distributed Trust

The distributed trust approachinvolvesarticulatingpolicies for authentication,accesscontrol anddelegation,assigningcredentialsto individuals,allowing entitiesto delegateor defertheir rightsto thirdpartiesandproviding accesscontrol by checkingif the initiators credentialsfulfill the policies. If anindividualhastheability to accessa certainservice,theindividual is saidto have theright to accesstheservice.If anindividualdefersa right, he/shepossesses,to anotherindividual, it is calleda delegation,theformeris calleddelegatorandthelatterdelegatee.A usercanaccessaservice,if he/shehastherightto do so,or if he/shehasbeendelegatedtheright by anauthorizeduser, whohastheability to delegate.

Therehasbeensomework in this areastartingwith well known modelslike Simple Public KeyInfrastructure(SPKI) [5] andPrettyGoodPrivacy or PGP[14], to Blaze’s Policy Maker [8, 3]. Blaze,who coinedthe termDistributedTrust Management, tries to solve the trustproblemby bindingpublickeys to accesscontrolwithout authentication[8, 3]. His PolicyMaker, givena policy, answersqueriesabouttrust. Thoughpowerful, thepolicy definition is complicatedandnot easyto understandfor non-programmerswhoareprobablygoingto developthepolicy. Delegation,suchascopy/copy propagationissues,havebeenlookedat in operatingsystems,but they generallydealtwith aknownuserdomain;alluserswereknown in advance.

DistributedTrust is essentiallytheestablishmentof trustby interpretingpoliciesto validatecreden-tials, which canbe delegatedby authorizedusers.But how candistributedtrust be usedin pervasivecomputing? Next we describeanarchitecturethatusestrust to solve thepreviously discussedsecurityissues.

4 Trust Architecture

A securitypolicy is a setof rulesfor authorization,accesscontrolandtrust in a certaindomain.Allservices/usersof thedomainmustenforceits policy andcanimposea local policy aswell. A servicebeingaccessedby a foreignusershouldverify thattheuserconformsto bothits policies.Thepolicy ineachdomainis enforcedby specialagentscalledsecurityagents. Theseagentsarepartof theCentaurusServiceManager. Users/agentsareidentifiedby X.509 [1] authenticationcertificates.Delegationscanbemadeby authorizedagentsin theform of signedassertions.Securityagentsareableto reasonaboutthesesignedassertionsandthesecuritypoliciesto provideaccesscontrolto theservicesin theirdomain.In our systemwe view ’delegation’ as a permissionitself. Only an agentwith the right to delegatea certainactioncanactuallydelegatethat action,and the ability to delegate,itself canbe delegated.Delegationscanbeconstrainedin thepolicy, by specifyingwhetheranagentcandelegateacertainrightandto whomit candelegate.

Rightsor privilegescanbegivento trustedagents,whoareresponsiblefor theactionsof theagentstowhomthey subsequentlydelegatetheprivileges.Sotheagentswill only delegateto agentsthatthey trust.Thisformsadelegationchain.If any agentalongthischainfailsto meettherequirementsassociatedwitha delegatedright, thechainis brokenandall agentsfollowing the failurearenot permittedto performtheactionassociatedwith theright [6].

Agentscanmake requestsfor a certainserviceto a securityagentcontrolling theservice,andwhiledoingsothey attachall their credentials,i.e. ID certificate,authorizationcertificatesetc.,to therequest.Thesecurityagentsgenerateauthorizationcertificates,that canbeusedas’tickets’ to accessa certainresource.An agentcanalsorequestanotheragentto delegateto it the right to accessa certainservice(refer to Figure 2). The latter agent,if satisfiedwith the requester’s credentialsmay decideto send

3

Figure 2. Trust in Pervasive Computing Environments

backa signedstatementcontainingthe delegation. The securityagentis responsiblefor honoringthedelegation,basedon thedelegator’sanddelegatee’scredentialsandthepolicies.

The securitypolicy could alsocontaininformationaboutrolesof someagentsandthe abilities as-sociatedwith certainroles. Our work is relatedto RoleBasedAccessControl [13] in that, an agentsaccessrightsarecomputedfrom its properties.Ourapproachis moregeneral,however, becauseonecanuseontologieswhich includenot just role-hierarchiesbut any propertiesandconstraintswhich canbedefinedby declarativehornclauses.

Considerthe previous exampleof Johnenteringa SmartRoom. Johnis an employeeof oneof theoffice’s partners,but the servicemanageris unableto understandhis role in the organization,sohe isdeniedaccessto theservices.Johnapproachesoneof themanagers,Susan,andasksfor permissiontousetheservicesin theSmartRoom. Accordingto thepolicy, Susanhastheright to delegatethoserightsto anyoneshetrusts.Susandelegatesto John,theright to usethelights, thecoffeemakerandtheprinterbut not thefax machine,for a shortperiodof time. Susan’s laptopsendsa shortlivedsigneddelegationto John’s hand-helddevice. WhenJohnentersthe room, the client on his hand-helddevice sendshisidentity certificateandthedelegationto theservicemanager. As Susanis trustedandhastheability todelegate,thedelegationconformsto thepolicy andJohnnow hasaccessto thelights, thecoffeemakerandthe printer in the room. Oncethe delegationexpires,Johnis deniedaccessto any servicein theroomandmustaskSusanfor anotherdelegation. In this way, a foreignuser, John,is allowedaccesstocertainserviceswithout creatinga new identity for him in thesystemor assigninga temporaryrole tohim or insecurelyopeningup thesystemin anyway. Thisscenariodemonstratestheimportanceof trustoversecurity.

4

5 Ongoing Work and Conclusion

We areworking on integratingtrust into the securityinfrastructurefor Centaurus. We believe thattrustwill addanew dimensionto pervasivecomputing,allowing greaterflexibility in designingpoliciesandmorecontrolover accessingof servicesandinformation. At thesametime, we areimproving ourtrust architecture.The systemis beingextendedto includeentitlements,prohibitionsandobligationsandtheability to delegatethem.

Anotherimportantissuewith distributednetworks is thatof privacy. Usersdo not want their namesandactionsto belogged,sowearetrying to doawaywith with X.509certificatesandreplacethemwithXML signatures[11] from a trustedauthorityanddoesnot includetheidentity of thebearer, but only aroleor designation.

Our pastwork on distributedtrust representedactions,privileges,delegationsandsecuritypolicy ashorn clausesencodedin Prolog. In orderto develop a approachthat is bettersuitedto sharinginfor-mationin anopenenvironment,we arerecastingthis work in DAML [4], theDARPA AgentsMarkupLanguage.DAML is built on XML andRDF andprovidesa descriptionlogic languagefor definingand using ontologieson the web. In applying our framework, one must extend the initial ontology(http://daml.umbc.edu/ontologies/trust-ont.daml) by definingdomain-specificclassesfor actions,roles,privileges,etc.andcreatingappropriateinstances.

In pervasivecomputingenvironments,securityplaysavery importantrole. But simplesecurityitselfis insufficient becausethe usersaregenerallyunknown andthereis no centralauthority. To make thevisionof ubiquitouscomputingareality, wefirmly believethatdistributedtrustneedsto beaddedto thesecurityinfrastructure.

References

[1] Public-key infrastructure(x.509),http://www.ietf.org/html.charters/pkix-charter.html.

[2] Tim Berners-Lee,JamesHendler, andOraLassila.Thesemanticweb. In ScientificAmerica, May2001.

[3] Matt Blaze,JoanFeigenbaum,andAngelosD. Keromytis. The role of trustmanagementin dis-tributedsystemssecurity. In Secure InternetProgramming, pages185–210,1999.

[4] DAML. Daml specification,2000.

[5] Carl M. Ellison, Bill Frantz,andBrian M. Thomas.Simplepublic key certificate. Internetdocu-ment,1996.

[6] LalanaKagal, Tim Finin, andYun Peng. A framework for distributedtrust management.In Toappearin proceedingsof IJCAI-01Workshopon Autonomy, DelegationandControl, 2001.

[7] LalanaKagal,Vlad Korolev, HarryChen,AnupamJoshi,andTim Finin. Centaurus:A frameworkfor intelligent servicesin a mobile environment. In Proceedingsof InternationalWorkshoponSmartAppliancesandWearableComputing(IWSAWC),in theThe21stInternationalConferenceon DistributedComputingSystems(ICDCS-21)April 16-19,2001.

[8] M.Blaze,J.Feigenbaum,andJ.Lacy. Decentralizedtrust management.IEEE Proceedingsof the17thSymposium, 1996.

[9] J. Steiner, C. Neuman,andJ. Schiller. An authenticationservicefor opennetwork systems. InProceedingsof theUSENIXWinter Conference, pages191–202,February1988., 1988.

[10] Blue toothwebsite.Theofficial bluetoothwebsitehttp://www.bluetooth.com/,2001.

5

[11] W3C. Xml signaturehttp://www.w3.org/signature/.

[12] Mark Weiser. Thecomputerfor the21 st century. ScientificAmerican, 265(3):94–104,1991.

[13] LonghuaZhang,Gail-JoonAhn, andBei-TsengChu. A rule-basedframework for role-baseddel-egation. 6th ACM Symposiumon AccessControl ModelsandTechnologies(SACMAT), Chantilly,VA, May3-4, 2001.

[14] Philip R. Zimmermann.TheOfficial PGPUser’sGuide. MIT Press,Cambridge,MA, USA, 1995.

6 Appendix

Webriefly describesomeof thetermsthatareusedin thepaperin following table.

Term ExplanationAuthentication involvesverifying theidentityof apersonor process.Popularauthentication

techniquesin openenvironmentsinclude Kerberostickets [9] and digitalcertificates(e.g.,X.509[1]).

Access is theability to do somethingwith a computerresource(e.g.,use,change,or view) andAccessControl is themeansby which theability is explicitlyenabledor restrictedin someway (usually throughphysicaland system-basedcontrols).

Role-BasedAccessControl is an approachin which accessdecisionsarebasedon the rolesthat indi-vidual usershave aspart of an organization,suchasdoctor, nurse,teller,manager, studentetc.

Distributedtrust canbeviewedasdevelopingof securitypolicies,theassignmentof creden-tials to entities,verifying if thecredentialsfulfill thepolicy andthedelega-tion of trustto third parties[8, 3].

Deonticlogic is abranchof logic thatdealswith reasoningpertainingto normativematterslikepermissions,obligations,entitlements,prohibitions.

Pervasivecomputing is thesetof technologiesfor developinghighly interactiveenvironmentsthatallow mobileusersto accessinformationandintegratedservicesvia hand-helddevices.Thepervasivecomputingenvironmentsof thenearfuture[12]will involvetheinteractions,coordinationandcooperationof numerous,ca-sually accessible,and often invisible computingdevices. Thesedevices,whethercarriedon our personor embeddedin our homes,businessesandclassrooms,will connectvia wirelessandwired links to oneanotherandtotheglobalnetworking infrastructure.

Bluetooth is aspecificationfor shortrangeradiolinks betweenportabledevices[10].SemanticWeb is anapproachfor expressinginformationavailableon theInternetin ama-

chinereadableform [2].DAML is an extensionto XML andthe ResourceDescriptionFramework (RDF),

which is beingdevelopedto markupinformationin machinereadableform[4].

Table 1. Appendix

6