421 research outputs found

    Formal Verification of e-Auction Protocols

    Get PDF
    Auctions have a long history, having been recorded as early as 500 B.C.. With the rise of Internet, electronic auctions have been a great success and are increasingly used. Many cryptographic protocols have been proposed to address the various security requirements of these electronic transactions. We propose a formal framework to analyze and verify security properties of e-Auction protocols. We model protocols in the Applied Pi-Calculus and define privacy notions, which include secrecy of bids, anonymity of the participants, receipt-freeness and coercion-resistance. We also discuss fairness, non-repudiation and non-cancellation. Additionally we show on two case studies how these properties can be verified automatically usingProVerif, and discover several attacks

    Enforcing Privacy in the Presence of Others: Notions, Formalisations and Relations

    Get PDF
    Protecting privacy against bribery/coercion is a necessary requirement in electronic services, like e-voting, e-auction and e-health. Domain-specific privacy properties have been proposed to capture this. We generalise these properties as enforced privacy: a system enforces a user's privacy even when the user collaborates with the adversary. In addition, we account for the influence of third parties on a user's privacy. Third parties can help to break privacy by collaborating with the adversary, or can help to protect privacy by cooperating with the target user. We propose independency of privacy to capture the negative privacy impact that third parties can have, and coalition privacy to capture their positive privacy impact. We formally define these privacy notions in the applied pi calculus and build a hierarchy showing their relations

    Automated Analysis of Accountability

    Get PDF

    Automated Verification of Exam, Cash, aa Reputation, and Routing Protocols

    Get PDF
    Security is a crucial requirement in the applications based on information and communication technology, especially when an open network such as the Internet is used.To ensure security in such applications cryptographic protocols have been used.However, the design of security protocols is notoriously difficult and error-prone.Several flaws have been found on protocols that are claimed secure.Hence, cryptographic protocols must be verified before they are used.One approach to verify cryptographic protocols is the use of formal methods, which have achieved many results in recent years.Formal methods concern on analysis of protocol specifications modeled using, e.g., dedicated logics, or process algebras.Formal methods can find flaws or prove that a protocol is secure under ``perfect cryptographic assumption" with respect to given security properties. However, they abstract away from implementation errors and side-channel attacks.In order to detect such errors and attacks runtime verification can be used to analyze systems or protocols executions.Moreover, runtime verification can help in the cases where formal procedures have exponential time or suffer from termination problems.In this thesis we contribute to cryptographic protocols verification with an emphasis on formal verification and automation.Firstly, we study exam protocols. We propose formal definitions for several authentication and privacy propertiesin the Applied Pi-Calculus. We also provide an abstract definitions of verifiability properties.We analyze all these properties automatically using ProVerif on multiple case studies, and identify several flaws.Moreover, we propose several monitors to check exam requirements at runtime. These monitors are validated by analyzing a real exam executions using MARQ Java based tool.Secondly, we propose a formal framework to verify the security properties of non-transferable electronic cash protocols.We define client privacy and forgery related properties.Again, we illustrate our model by analyzing three case studies using ProVerif, and confirm several known attacks.Thirdly, we propose formal definitions of authentication, privacy, and verifiability properties of electronic reputation protocols. We discuss the proposed definitions, with the help of ProVerif, on a simple reputation protocol.Finally, we obtain a reduction result to verify route validity of ad-hoc routing protocols in presence of multiple independent attackers that do not share their knowledge.La sĂ©curitĂ© est une exigence cruciale dans les applications basĂ©es sur l'information et la technologie de communication, surtout quand un rĂ©seau ouvert tel que l'Internet est utilisĂ©. Pour assurer la sĂ©curitĂ© dans ces applications des protocoles cryptographiques ont Ă©tĂ© dĂ©veloppĂ©. Cependant, la conception de protocoles de sĂ©curitĂ© est notoirement difficile et source d'erreurs. Plusieurs failles ont Ă©tĂ© trouvĂ©es sur des protocoles qui se sont prĂ©tendus sĂ©curisĂ©s. Par consĂ©quent, les protocoles cryptographiques doivent ĂȘtre vĂ©rifiĂ©s avant d'ĂȘtre utilisĂ©s. Une approche pour vĂ©rifier les protocoles cryptographiques est l'utilisation des mĂ©thodes formelles, qui ont obtenu de nombreux rĂ©sultats au cours des derniĂšres annĂ©es.MĂ©thodes formelles portent sur l'analyse des spĂ©cifications des protocoles modĂ©lisĂ©es en utilisant, par exemple, les logiques dĂ©diĂ©s, ou algĂšbres de processus. Les mĂ©thodes formelles peuvent trouver des failles ou permettent de prouver qu'un protocole est sĂ©curisĂ© sous certaines hypothĂšses par rapport aux propriĂ©tĂ©s de sĂ©curitĂ© donnĂ©es. Toutefois, elles abstraient des erreurs de mise en ouvre et les attaques side-channel.Afin de dĂ©tecter ces erreurs et la vĂ©rification des attaques d'exĂ©cution peut ĂȘtre utilisĂ©e pour analyser les systĂšmes ou protocoles exĂ©cutions. En outre, la vĂ©rification de l'exĂ©cution peut aider dans les cas oĂč les procĂ©dures formelles mettent un temps exponentielle ou souffrent de problĂšmes de terminaison. Dans cette thĂšse, nous contribuons Ă  la vĂ©rification des protocoles cryptographiques avec un accent sur la vĂ©rification formelle et l'automatisation. Tout d'abord, nous Ă©tudions les protocoles d'examen. Nous proposons des dĂ©finitions formelles pour plusieurs propriĂ©tĂ©s d'authentification et de confidentialitĂ© dans le Pi-calcul AppliquĂ©.Nous fournissons Ă©galement une des dĂ©finitions abstraites de propriĂ©tĂ©s de vĂ©rifiabilitĂ©. Nous analysons toutes ces propriĂ©tĂ©s en utilisant automatiquement ProVerif sur plusieurs Ă©tudes de cas, et avons identifiĂ© plusieurs failles. En outre, nous proposons plusieurs moniteurs de vĂ©rifier les exigences d'examen Ă  l'exĂ©cution. Ces moniteurs sont validĂ©s par l'analyse d'un exĂ©cutions d'examen rĂ©el en utilisant l'outil MARQ Java.DeuxiĂšmement, nous proposons un cadre formel pour vĂ©rifier les propriĂ©tĂ©s de sĂ©curitĂ© de protocoles de monnaie Ă©lectronique non transfĂ©rable. Nous dĂ©finissons la notion de vie privĂ©e du client et les propriĂ©tĂ©s de la falsification. Encore une fois, nous illustrons notre modĂšle en analysant trois Ă©tudes de cas Ă  l'aide ProVerif, et confirmons plusieurs attaques connues.TroisiĂšmement, nous proposons des dĂ©finitions formelles de l'authentification, la confidentialitĂ© et les propriĂ©tĂ©s de vĂ©rifiabilitĂ© de protocoles de rĂ©putation Ă©lectroniques. Nous discutons les dĂ©finitions proposĂ©es, avec l'aide de ProVerif, sur un protocole de rĂ©putation simple. Enfin, nous obtenons un rĂ©sultat sur la rĂ©duction de la vĂ©rification de la validitĂ© d'une route dans les protocoles de routage ad-hoc, en prĂ©sence de plusieurs attaquants indĂ©pendants qui ne partagent pas leurs connaissances

    Automated verification of equivalence properties of cryptographic protocols

    Get PDF
    The original publication is available at www.springerlink.comInternational audienceIndistinguishability properties are essential in formal verification of cryptographic protocols. They are needed to model anonymity of cryptographic protocols. They are needed to model anonymity properties, strong versions of confidentiality and resistance to offline guessing attacks, and can be conveniently modeled using process equivalences. We present a novel procedure to verify equivalence properties for bounded number of sessions. Our procedure is able to verify trace equivalence for determinate cryptographic protocols. On determinate protocols, trace equivalence coincides with observational equivalence which can therefore be automatically verified for such processes. When protocols are not determinate our procedure can be used for both under- and over-approximations of trace equivalence, which proved successful on examples. The procedure can handle a large set of cryptographic primitives, namely those which can be modeled by an optimally reducing convergent rewrite system. Although, we were unable to prove its termination, it has been implemented in a prototype tool and has been effectively tested on examples, some of which were outside the scope of existing tools

    A programming system for process coordination in virtual organisations

    Get PDF
    PhD thesisDistributed business applications are increasingly being constructed by composing them from services provided by various online businesses. Typically, this leads to trading partners coming together to form virtual organizations (VOs). Each member of a VO maintains their autonomy, except with respect to their agreed goals. The structure of the Virtual Organisation may contain one dominant organisation who dictates the method of achieving the goals or the members may be considered peers of equal importance. The goals of VOs can be defined by the shared global business processes they contain. To be able to execute these business processes, VOs require a flexible enactment model as there may be no single ‘owner’ of the business process and therefore no natural place to enact the business processes. One solution is centralised enactment using a trusted third party, but in some cases this may not be acceptable (for instance because of security reasons). This thesis will present a programming system that allows centralised as well as distributed enactment where each organisation enacts part of the business process. To achieve distributed enactment we must address the problem of specifying the business process in a manner that is amenable to distribution. The first contribution of this thesis is the presentation of the Task Model, a set of languages and notations for describing workflows that can be enacted in a centralised or decentralised manner. The business processes that we specify will coordinate the services that each organisation owns. The second contribution of this thesis is the presentation of a method of describing the observable behaviour of these services. The language we present, SSDL, provides a flexible and extensible way of describing the messaging behaviour of Web Services. We present a method for checking that a set of services described in SSDL are compatible with each other and also that a workflow interacts with a service in the desired manner. The final contribution of this thesis is the presentation of an abstract architecture and prototype implementation of a decentralised workflow engine. The prototype is able to enact workflows described in the Task Model notation in either a centralised or decentralised scenario

    Accountability: Definition and Relationship to Verifiability

    Get PDF
    Many cryptographic tasks and protocols, such as non-repudiation, contract-signing, voting, auction, identity-based encryption, and certain forms of secure multi-party computation, involve the use of (semi-)trusted parties, such as notaries and authorities. It is crucial that such parties can be held accountable in case they misbehave as this is a strong incentive for such parties to follow the protocol. Unfortunately, there does not exist a general and convincing definition of accountability that would allow to assess the level of accountability a protocol provides. In this paper, we therefore propose a new, widely applicable definition of accountability, with interpretations both in symbolic and computational models. Our definition reveals that accountability is closely related to verifiability, for which we also propose a new definition. We prove that verifiability can be interpreted as a restricted form of accountability. Our findings on verifiability are of independent interest. As a proof of concept, we apply our definitions to the analysis of protocols for three different tasks: contract-signing, voting, and auctions. Our analysis unveils some subtleties and unexpected weaknesses, showing in one case that the protocol is unusable in practice. However, for this protocol we propose a fix to establish a reasonable level of accountability
    • 

    corecore