Representation of smart contracts as state diagrams
Autor(a) principal: | |
---|---|
Data de Publicação: | 2022 |
Tipo de documento: | Dissertação |
Idioma: | eng |
Título da fonte: | Repositório Institucional da UFSC |
Texto Completo: | https://repositorio.ufsc.br/handle/123456789/241048 |
Resumo: | Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Ciência da Computação, Florianópolis, 2022. |
id |
UFSC_ec007f0d755b33398ec4fb9874c18074 |
---|---|
oai_identifier_str |
oai:repositorio.ufsc.br:123456789/241048 |
network_acronym_str |
UFSC |
network_name_str |
Repositório Institucional da UFSC |
repository_id_str |
2373 |
spelling |
Representation of smart contracts as state diagramsComputaçãoBlockchains (Base de dados)Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Ciência da Computação, Florianópolis, 2022.Smart contracts ganharam popularidade recentemente com o surgimento das blockchains, embora o conceito por trás do termo smart contract tenha sido estudado desde os anos 90. A automação de contratos firmados na vida real é um assunto interdisciplinar e chama a atenção não só no escopo da tecnologia, mas também em areas como negócios e direito. Em contraste com um contrato legal escrito em linguagem natural, entender com um smart contract funciona pode ser uma tarefa difícil, especialmente para pessoas que não são programadoras. Em contrapartida, contratos escritos em liguagem natural podem conter ambiguidades e muita informação desnecessária, além de um vocabulário complexo e complicado. Com o objetivo de permitir entendimento claro, precisão e segurança das informações no processo de criação de um contrato inteligente, diversas ferramentas foram desenvolvidas, tanto para evitar vulnerabilidades quanto para permitir que qualquer pessoa contribua para a escrita de um contrato. Em paralelo, dentro da Engenharia de Software, muitas ferramentas de design visual são utilizadas para garantir a precisão esperada de um sistema. Diante desse cenário e buscando facilitar ainda mais o entendimento geral dos smart contracts, este trabalho visa ao mapeamento automático entre uma linguagem formal para especificação de smart contracts em um diagrama de estados. Dessa forma, podemos democratizar ainda mais a compreensão dos contratos legais e possibilitar o uso de smart contracts. Para isso, primeiramente foi realizada uma revisão sistemática, com o objetivo de encontrar trabalhos que também representassem smart contracts utilizando diagramas de estados ou outros recursos visuais similares, mas que também representassem o ciclo de vida do smart contract. Nessa revisão sistemática, também buscamos selecionar trabalhos que mencionassem a representação dos aspectos legais de um contrato, ou seja, a representação de obrigações e poderes, direitos e deveres dentro do smart contract. Com a revisão sistemática concluída, foi projetado um mapeamento dos passos necessários para transformar uma linguagem de domínio específica para smart contracts em um diagrama de estado. Num primeiro momento, o mapeamento também foi especificado para uma linguagem específica chamada Symboleo. Com o projeto em mente, um algoritmo foi implementado, possibilitando o upload de um arquivo contendo um contrato definido com a linguagem Symboleo e produzindo um diagrama de estado para esse contrato. Os dois experimentos realizados mostraram que um diagrama de estado gerado com o algoritmo implementado neste trabalho ajudou os participantes a responder perguntas sobre um contrato escrito em linguagem natural.Abstract: Smart contracts have recently gained popularity with the emergence of blockchains, although the concept behind them has been studied since the 1990s. The automation of contracts signed in real life is an interdisciplinary subject and draws attention not only in the scope of technology but also in areas such as business and law. In contrast to a legal contract written in natural language, understanding how a smart contract works may be a difficult task, especially for non-programmers. On the other hand, contracts written in natural language may contain ambiguities and much unnecessary information, in addition to complicated vocabulary. With the aim of providing clear understanding, accuracy and security of information in the process of creating a smart contract, several tools have been developed, both to avoid vulnerabilities and to allow anyone to contribute to the writing of a contract. In parallel, within Software Engineering, many visual design tools are used to ensure the accuracy expected from a system. In view of this scenario and seeking to further facilitate the general understanding of smart contracts, this master?s thesis aims at carrying out automatic mapping between a formal smart contract specification language and a state diagram. In doing so, we can further democratize the understanding of legal contracts and enable the use of smart contracts. The two experiments carried out showed that a state diagram generated with the algorithm developed in this study helped participants answer questions about a contract written in natural language.Vilain, PatríciaUniversidade Federal de Santa CatarinaVieira, Marina Luiza Lardizabal2022-10-21T17:02:50Z2022-10-21T17:02:50Z2022info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesis141 p.| il., gráfs.application/pdf378819https://repositorio.ufsc.br/handle/123456789/241048engreponame:Repositório Institucional da UFSCinstname:Universidade Federal de Santa Catarina (UFSC)instacron:UFSCinfo:eu-repo/semantics/openAccess2022-10-21T17:02:51Zoai:repositorio.ufsc.br:123456789/241048Repositório InstitucionalPUBhttp://150.162.242.35/oai/requestopendoar:23732022-10-21T17:02:51Repositório Institucional da UFSC - Universidade Federal de Santa Catarina (UFSC)false |
dc.title.none.fl_str_mv |
Representation of smart contracts as state diagrams |
title |
Representation of smart contracts as state diagrams |
spellingShingle |
Representation of smart contracts as state diagrams Vieira, Marina Luiza Lardizabal Computação Blockchains (Base de dados) |
title_short |
Representation of smart contracts as state diagrams |
title_full |
Representation of smart contracts as state diagrams |
title_fullStr |
Representation of smart contracts as state diagrams |
title_full_unstemmed |
Representation of smart contracts as state diagrams |
title_sort |
Representation of smart contracts as state diagrams |
author |
Vieira, Marina Luiza Lardizabal |
author_facet |
Vieira, Marina Luiza Lardizabal |
author_role |
author |
dc.contributor.none.fl_str_mv |
Vilain, Patrícia Universidade Federal de Santa Catarina |
dc.contributor.author.fl_str_mv |
Vieira, Marina Luiza Lardizabal |
dc.subject.por.fl_str_mv |
Computação Blockchains (Base de dados) |
topic |
Computação Blockchains (Base de dados) |
description |
Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Ciência da Computação, Florianópolis, 2022. |
publishDate |
2022 |
dc.date.none.fl_str_mv |
2022-10-21T17:02:50Z 2022-10-21T17:02:50Z 2022 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
378819 https://repositorio.ufsc.br/handle/123456789/241048 |
identifier_str_mv |
378819 |
url |
https://repositorio.ufsc.br/handle/123456789/241048 |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
141 p.| il., gráfs. application/pdf |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFSC instname:Universidade Federal de Santa Catarina (UFSC) instacron:UFSC |
instname_str |
Universidade Federal de Santa Catarina (UFSC) |
instacron_str |
UFSC |
institution |
UFSC |
reponame_str |
Repositório Institucional da UFSC |
collection |
Repositório Institucional da UFSC |
repository.name.fl_str_mv |
Repositório Institucional da UFSC - Universidade Federal de Santa Catarina (UFSC) |
repository.mail.fl_str_mv |
|
_version_ |
1808652321996931072 |