Towards secure distributed computations

Zipitría, Felipe

Supervisor(es): Betarte, Gustavo

Resumen:

Nowadays, there are plenty of networks that work in a cooperative way and form what we know as grids of computers. These grids are serving a lot of purposes, and they are used with good results for intensive calculation, because the joined computing power aids in solving complex functions. To cope with these new requirements and facilities, programming languages had to evolve to new paradigms, including facilities to do distributed computing in a straightforward way. Functional programming is a paradigm that treats computation as the evaluation of mathematical functions. Functional programming languages implement the concepts introduced by this paradigm. Usually they are modeled using I» calculus, but other variants exist. In this line we have languages like ML, Haskell and (Pure)Lisp. This work has its focus on ML-like languages. As part of the evolution in grid computing, some functional programming languages were adapted to handle these new requirements. To be used in distributed contexts, the calculi had to be extended with new paradigms. Theoretic support for concurrent and distributed programming was conceived. For concurrent programming the I_ calculus was created, and this formalism was extended for mobility on the Ambient calculus. From these approaches, new functional languages were created. Examples of concurrent programming languages are Pict, occam-pi and Concurrent Haskell. In the case of distributed programming languages, we can mention Nomadic Pict, Alice and Acute. After the creation and utilization of such languages, an aspect remaining to be introduced is the security properties of these computations. The security properties of languages that execute on a single machine are difficult to achieve. Increased precautions must be take into account when dealing with lots of hosts and complex networks.


Distributed programming languages must achieve, among other properties, correctness in its own abstractions: they must satisfy type-safety and abstraction safety. This work is concerned with correctness and safety in distributed languages, with focus on ML-like languages and the properties they have. To this aim, we have focused on a language called Acute. This language was born for doing research in distributed programming, and was created as a joint effort of the University of Cambridge and INRIA Rocquencourt. In Acute we have modern primitives for interaction between cooperating programs. Two primitives, marshal and unmarshal, have been introduced with this in mind. Acute has powerful properties: type and abstraction safety are guaranteed along the distributed system. But this only happens when there are no entities that can tamper with data transmitted between hosts. If this situation occurs, safety can be no longer guaranteed. The Acute language typechecks values at unmarshal time, to ensure its correctness. This can be made with values of concrete types, but if we have values of abstract types the situation os different: we may have only partial information to check, or the representation could be not available at all. So, how can values of abstract types be secured, in the context of a distributed programming language? We propose the use of a novel technique, called Proof Carrying Results. This technique is based on Neculaâ_Ts proof carrying code. Basically, the result of some computation comes equipped with a certificate, or witness, that can be used with abstract types.


If the value comes with a witness that the computation was performed correctly, the caller can verify this witness and know that the value was generated in a good way. Throughout this thesis work, we will show how to add the PCR technique to a distributed programming language. The supporting infrastructure for the technique is introduced along with it. For checking the values and associated witnesses produced by some host, we use the COQ proof checker for a precise and reliable verification.


Detalles Bibliográficos
2008
COMPUTACION DISTRIBUIDA
TYPE SAFE
ABSTRATION SAFETY
ALGORITMO DE CERTIFICACION
PCR
MARSHALLING
Inglés
Universidad de la República
COLIBRI
http://hdl.handle.net/20.500.12008/2952
Acceso abierto
Licencia Creative Commons Atribución – No Comercial – Sin Derivadas (CC BY-NC-ND 4.0)
_version_ 1807523180485541888
author Zipitría, Felipe
author_facet Zipitría, Felipe
author_role author
bitstream.checksum.fl_str_mv 528b6a3c8c7d0c6e28129d576e989607
9833653f73f7853880c94a6fead477b1
4afdbb8c545fd630ea7db775da747b2f
9da0b6dfac957114c6a7714714b86306
d11d01bd1b1acdfcf36449d9ee0aed40
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
bitstream.url.fl_str_mv http://localhost:8080/xmlui/bitstream/20.500.12008/2952/5/license.txt
http://localhost:8080/xmlui/bitstream/20.500.12008/2952/2/license_text
http://localhost:8080/xmlui/bitstream/20.500.12008/2952/3/license_url
http://localhost:8080/xmlui/bitstream/20.500.12008/2952/4/license_rdf
http://localhost:8080/xmlui/bitstream/20.500.12008/2952/1/tesis-zipitria.pdf
collection COLIBRI
dc.creator.advisor.none.fl_str_mv Betarte, Gustavo
dc.creator.none.fl_str_mv Zipitría, Felipe
dc.date.accessioned.none.fl_str_mv 2014-11-24T22:36:24Z
dc.date.available.none.fl_str_mv 2014-11-24T22:36:24Z
dc.date.issued.es.fl_str_mv 2008
dc.date.submitted.es.fl_str_mv 20141202
dc.description.abstract.none.fl_txt_mv Nowadays, there are plenty of networks that work in a cooperative way and form what we know as grids of computers. These grids are serving a lot of purposes, and they are used with good results for intensive calculation, because the joined computing power aids in solving complex functions. To cope with these new requirements and facilities, programming languages had to evolve to new paradigms, including facilities to do distributed computing in a straightforward way. Functional programming is a paradigm that treats computation as the evaluation of mathematical functions. Functional programming languages implement the concepts introduced by this paradigm. Usually they are modeled using I» calculus, but other variants exist. In this line we have languages like ML, Haskell and (Pure)Lisp. This work has its focus on ML-like languages. As part of the evolution in grid computing, some functional programming languages were adapted to handle these new requirements. To be used in distributed contexts, the calculi had to be extended with new paradigms. Theoretic support for concurrent and distributed programming was conceived. For concurrent programming the I_ calculus was created, and this formalism was extended for mobility on the Ambient calculus. From these approaches, new functional languages were created. Examples of concurrent programming languages are Pict, occam-pi and Concurrent Haskell. In the case of distributed programming languages, we can mention Nomadic Pict, Alice and Acute. After the creation and utilization of such languages, an aspect remaining to be introduced is the security properties of these computations. The security properties of languages that execute on a single machine are difficult to achieve. Increased precautions must be take into account when dealing with lots of hosts and complex networks.
Distributed programming languages must achieve, among other properties, correctness in its own abstractions: they must satisfy type-safety and abstraction safety. This work is concerned with correctness and safety in distributed languages, with focus on ML-like languages and the properties they have. To this aim, we have focused on a language called Acute. This language was born for doing research in distributed programming, and was created as a joint effort of the University of Cambridge and INRIA Rocquencourt. In Acute we have modern primitives for interaction between cooperating programs. Two primitives, marshal and unmarshal, have been introduced with this in mind. Acute has powerful properties: type and abstraction safety are guaranteed along the distributed system. But this only happens when there are no entities that can tamper with data transmitted between hosts. If this situation occurs, safety can be no longer guaranteed. The Acute language typechecks values at unmarshal time, to ensure its correctness. This can be made with values of concrete types, but if we have values of abstract types the situation os different: we may have only partial information to check, or the representation could be not available at all. So, how can values of abstract types be secured, in the context of a distributed programming language? We propose the use of a novel technique, called Proof Carrying Results. This technique is based on Neculaâ_Ts proof carrying code. Basically, the result of some computation comes equipped with a certificate, or witness, that can be used with abstract types.
If the value comes with a witness that the computation was performed correctly, the caller can verify this witness and know that the value was generated in a good way. Throughout this thesis work, we will show how to add the PCR technique to a distributed programming language. The supporting infrastructure for the technique is introduced along with it. For checking the values and associated witnesses produced by some host, we use the COQ proof checker for a precise and reliable verification.
dc.format.extent.es.fl_str_mv 89 p.
dc.format.mimetype.es.fl_str_mv application/pdf
dc.identifier.citation.es.fl_str_mv ZIPITRÍA, F. "Towards secure distributed computations". Tesis de maestría, Universidad de la República (Uruguay). Facultad de Ingeniería. Instituto de Computación – PEDECIBA, 2008.
dc.identifier.uri.none.fl_str_mv http://hdl.handle.net/20.500.12008/2952
dc.language.iso.none.fl_str_mv en
eng
dc.publisher.es.fl_str_mv UR. FI-INCO,
dc.rights.license.none.fl_str_mv Licencia Creative Commons Atribución – No Comercial – Sin Derivadas (CC BY-NC-ND 4.0)
dc.rights.none.fl_str_mv info:eu-repo/semantics/openAccess
dc.source.none.fl_str_mv reponame:COLIBRI
instname:Universidad de la República
instacron:Universidad de la República
dc.subject.es.fl_str_mv COMPUTACION DISTRIBUIDA
TYPE SAFE
ABSTRATION SAFETY
ALGORITMO DE CERTIFICACION
PCR
MARSHALLING
dc.title.none.fl_str_mv Towards secure distributed computations
dc.type.es.fl_str_mv Tesis de maestría
dc.type.none.fl_str_mv info:eu-repo/semantics/masterThesis
dc.type.version.none.fl_str_mv info:eu-repo/semantics/acceptedVersion
description Nowadays, there are plenty of networks that work in a cooperative way and form what we know as grids of computers. These grids are serving a lot of purposes, and they are used with good results for intensive calculation, because the joined computing power aids in solving complex functions. To cope with these new requirements and facilities, programming languages had to evolve to new paradigms, including facilities to do distributed computing in a straightforward way. Functional programming is a paradigm that treats computation as the evaluation of mathematical functions. Functional programming languages implement the concepts introduced by this paradigm. Usually they are modeled using I» calculus, but other variants exist. In this line we have languages like ML, Haskell and (Pure)Lisp. This work has its focus on ML-like languages. As part of the evolution in grid computing, some functional programming languages were adapted to handle these new requirements. To be used in distributed contexts, the calculi had to be extended with new paradigms. Theoretic support for concurrent and distributed programming was conceived. For concurrent programming the I_ calculus was created, and this formalism was extended for mobility on the Ambient calculus. From these approaches, new functional languages were created. Examples of concurrent programming languages are Pict, occam-pi and Concurrent Haskell. In the case of distributed programming languages, we can mention Nomadic Pict, Alice and Acute. After the creation and utilization of such languages, an aspect remaining to be introduced is the security properties of these computations. The security properties of languages that execute on a single machine are difficult to achieve. Increased precautions must be take into account when dealing with lots of hosts and complex networks.
eu_rights_str_mv openAccess
format masterThesis
id COLIBRI_f9bb374449b63209dd4394578b7b1c56
identifier_str_mv ZIPITRÍA, F. "Towards secure distributed computations". Tesis de maestría, Universidad de la República (Uruguay). Facultad de Ingeniería. Instituto de Computación – PEDECIBA, 2008.
instacron_str Universidad de la República
institution Universidad de la República
instname_str Universidad de la República
language eng
language_invalid_str_mv en
network_acronym_str COLIBRI
network_name_str COLIBRI
oai_identifier_str oai:colibri.udelar.edu.uy:20.500.12008/2952
publishDate 2008
reponame_str COLIBRI
repository.mail.fl_str_mv mabel.seroubian@seciu.edu.uy
repository.name.fl_str_mv COLIBRI - Universidad de la República
repository_id_str 4771
rights_invalid_str_mv Licencia Creative Commons Atribución – No Comercial – Sin Derivadas (CC BY-NC-ND 4.0)
spelling 2014-11-24T22:36:24Z2014-11-24T22:36:24Z200820141202ZIPITRÍA, F. "Towards secure distributed computations". Tesis de maestría, Universidad de la República (Uruguay). Facultad de Ingeniería. Instituto de Computación – PEDECIBA, 2008.http://hdl.handle.net/20.500.12008/2952Nowadays, there are plenty of networks that work in a cooperative way and form what we know as grids of computers. These grids are serving a lot of purposes, and they are used with good results for intensive calculation, because the joined computing power aids in solving complex functions. To cope with these new requirements and facilities, programming languages had to evolve to new paradigms, including facilities to do distributed computing in a straightforward way. Functional programming is a paradigm that treats computation as the evaluation of mathematical functions. Functional programming languages implement the concepts introduced by this paradigm. Usually they are modeled using I» calculus, but other variants exist. In this line we have languages like ML, Haskell and (Pure)Lisp. This work has its focus on ML-like languages. As part of the evolution in grid computing, some functional programming languages were adapted to handle these new requirements. To be used in distributed contexts, the calculi had to be extended with new paradigms. Theoretic support for concurrent and distributed programming was conceived. For concurrent programming the I_ calculus was created, and this formalism was extended for mobility on the Ambient calculus. From these approaches, new functional languages were created. Examples of concurrent programming languages are Pict, occam-pi and Concurrent Haskell. In the case of distributed programming languages, we can mention Nomadic Pict, Alice and Acute. After the creation and utilization of such languages, an aspect remaining to be introduced is the security properties of these computations. The security properties of languages that execute on a single machine are difficult to achieve. Increased precautions must be take into account when dealing with lots of hosts and complex networks.Distributed programming languages must achieve, among other properties, correctness in its own abstractions: they must satisfy type-safety and abstraction safety. This work is concerned with correctness and safety in distributed languages, with focus on ML-like languages and the properties they have. To this aim, we have focused on a language called Acute. This language was born for doing research in distributed programming, and was created as a joint effort of the University of Cambridge and INRIA Rocquencourt. In Acute we have modern primitives for interaction between cooperating programs. Two primitives, marshal and unmarshal, have been introduced with this in mind. Acute has powerful properties: type and abstraction safety are guaranteed along the distributed system. But this only happens when there are no entities that can tamper with data transmitted between hosts. If this situation occurs, safety can be no longer guaranteed. The Acute language typechecks values at unmarshal time, to ensure its correctness. This can be made with values of concrete types, but if we have values of abstract types the situation os different: we may have only partial information to check, or the representation could be not available at all. So, how can values of abstract types be secured, in the context of a distributed programming language? We propose the use of a novel technique, called Proof Carrying Results. This technique is based on Neculaâ_Ts proof carrying code. Basically, the result of some computation comes equipped with a certificate, or witness, that can be used with abstract types.If the value comes with a witness that the computation was performed correctly, the caller can verify this witness and know that the value was generated in a good way. Throughout this thesis work, we will show how to add the PCR technique to a distributed programming language. The supporting infrastructure for the technique is introduced along with it. For checking the values and associated witnesses produced by some host, we use the COQ proof checker for a precise and reliable verification.Made available in DSpace on 2014-11-24T22:36:24Z (GMT). No. of bitstreams: 5 tesis-zipitria.pdf: 1349154 bytes, checksum: d11d01bd1b1acdfcf36449d9ee0aed40 (MD5) license_text: 21936 bytes, checksum: 9833653f73f7853880c94a6fead477b1 (MD5) license_url: 49 bytes, checksum: 4afdbb8c545fd630ea7db775da747b2f (MD5) license_rdf: 23148 bytes, checksum: 9da0b6dfac957114c6a7714714b86306 (MD5) license.txt: 4244 bytes, checksum: 528b6a3c8c7d0c6e28129d576e989607 (MD5) Previous issue date: 200889 p.application/pdfenengUR. FI-INCO,Las obras depositadas en el Repositorio se rigen por la Ordenanza de los Derechos de la Propiedad Intelectual de la Universidad De La República. (Res. Nº 91 de C.D.C. de 8/III/1994 – D.O. 7/IV/1994) y por la Ordenanza del Repositorio Abierto de la Universidad de la República (Res. Nº 16 de C.D.C. de 07/10/2014)info:eu-repo/semantics/openAccessLicencia Creative Commons Atribución – No Comercial – Sin Derivadas (CC BY-NC-ND 4.0)COMPUTACION DISTRIBUIDATYPE SAFEABSTRATION SAFETYALGORITMO DE CERTIFICACIONPCRMARSHALLINGTowards secure distributed computationsTesis de maestríainfo:eu-repo/semantics/masterThesisinfo:eu-repo/semantics/acceptedVersionreponame:COLIBRIinstname:Universidad de la Repúblicainstacron:Universidad de la RepúblicaZipitría, FelipeBetarte, GustavoUniversidad de la República (Uruguay). Facultad de Ingeniería. Instituto de Computación – PEDECIBAMagíster en InformáticaLICENSElicense.txttext/plain4244http://localhost:8080/xmlui/bitstream/20.500.12008/2952/5/license.txt528b6a3c8c7d0c6e28129d576e989607MD55CC-LICENSElicense_textapplication/octet-stream21936http://localhost:8080/xmlui/bitstream/20.500.12008/2952/2/license_text9833653f73f7853880c94a6fead477b1MD52license_urlapplication/octet-stream49http://localhost:8080/xmlui/bitstream/20.500.12008/2952/3/license_url4afdbb8c545fd630ea7db775da747b2fMD53license_rdfapplication/octet-stream23148http://localhost:8080/xmlui/bitstream/20.500.12008/2952/4/license_rdf9da0b6dfac957114c6a7714714b86306MD54ORIGINALtesis-zipitria.pdfapplication/pdf1349154http://localhost:8080/xmlui/bitstream/20.500.12008/2952/1/tesis-zipitria.pdfd11d01bd1b1acdfcf36449d9ee0aed40MD5120.500.12008/29522024-02-09 16:03:21.511oai:colibri.udelar.edu.uy:20.500.12008/2952VGVybWlub3MgeSBjb25kaWNpb25lcyByZWxhdGl2YXMgYWwgZGVwb3NpdG8gZGUgb2JyYXMNCg0KDQpMYXMgb2JyYXMgZGVwb3NpdGFkYXMgZW4gZWwgUmVwb3NpdG9yaW8gc2UgcmlnZW4gcG9yIGxhIE9yZGVuYW56YSBkZSBsb3MgRGVyZWNob3MgZGUgbGEgUHJvcGllZGFkIEludGVsZWN0dWFsICBkZSBsYSBVbml2ZXJzaWRhZCBEZSBMYSBSZXDvv71ibGljYS4gKFJlcy4gTu+/vSA5MSBkZSBDLkQuQy4gZGUgOC9JSUkvMTk5NCDvv70gRC5PLiA3L0lWLzE5OTQpIHkgIHBvciBsYSBPcmRlbmFuemEgZGVsIFJlcG9zaXRvcmlvIEFiaWVydG8gZGUgbGEgVW5pdmVyc2lkYWQgZGUgbGEgUmVw77+9YmxpY2EgKFJlcy4gTu+/vSAxNiBkZSBDLkQuQy4gZGUgMDcvMTAvMjAxNCkuIA0KDQpBY2VwdGFuZG8gZWwgYXV0b3IgZXN0b3MgdO+/vXJtaW5vcyB5IGNvbmRpY2lvbmVzIGRlIGRlcO+/vXNpdG8gZW4gQ09MSUJSSSwgbGEgVW5pdmVyc2lkYWQgZGUgUmVw77+9YmxpY2EgcHJvY2VkZXLvv70gYTogIA0KDQphKSBhcmNoaXZhciBt77+9cyBkZSB1bmEgY29waWEgZGUgbGEgb2JyYSBlbiBsb3Mgc2Vydmlkb3JlcyBkZSBsYSBVbml2ZXJzaWRhZCBhIGxvcyBlZmVjdG9zIGRlIGdhcmFudGl6YXIgYWNjZXNvLCBzZWd1cmlkYWQgeSBwcmVzZXJ2YWNp77+9bg0KYikgY29udmVydGlyIGxhIG9icmEgYSBvdHJvcyBmb3JtYXRvcyBzaSBmdWVyYSBuZWNlc2FyaW8gIHBhcmEgZmFjaWxpdGFyIHN1IHByZXNlcnZhY2nvv71uIHkgYWNjZXNpYmlsaWRhZCBzaW4gYWx0ZXJhciBzdSBjb250ZW5pZG8uDQpjKSByZWFsaXphciBsYSBjb211bmljYWNp77+9biBw77+9YmxpY2EgeSBkaXNwb25lciBlbCBhY2Nlc28gbGlicmUgeSBncmF0dWl0byBhIHRyYXbvv71zIGRlIEludGVybmV0IG1lZGlhbnRlIGxhIHB1YmxpY2Fjae+/vW4gZGUgbGEgb2JyYSBiYWpvIGxhIGxpY2VuY2lhIENyZWF0aXZlIENvbW1vbnMgc2VsZWNjaW9uYWRhIHBvciBlbCBwcm9waW8gYXV0b3IuDQoNCg0KRW4gY2FzbyBxdWUgZWwgYXV0b3IgaGF5YSBkaWZ1bmRpZG8geSBkYWRvIGEgcHVibGljaWRhZCBhIGxhIG9icmEgZW4gZm9ybWEgcHJldmlhLCAgcG9kcu+/vSBzb2xpY2l0YXIgdW4gcGVy77+9b2RvIGRlIGVtYmFyZ28gc29icmUgbGEgZGlzcG9uaWJpbGlkYWQgcO+/vWJsaWNhIGRlIGxhIG1pc21hLCBlbCBjdWFsIGNvbWVuemFy77+9IGEgcGFydGlyIGRlIGxhIGFjZXB0YWNp77+9biBkZSBlc3RlIGRvY3VtZW50byB5IGhhc3RhIGxhIGZlY2hhIHF1ZSBpbmRpcXVlIC4NCg0KRWwgYXV0b3IgYXNlZ3VyYSBxdWUgbGEgb2JyYSBubyBpbmZyaWdlIG5pbmfvv71uIGRlcmVjaG8gc29icmUgdGVyY2Vyb3MsIHlhIHNlYSBkZSBwcm9waWVkYWQgaW50ZWxlY3R1YWwgbyBjdWFscXVpZXIgb3Ryby4NCg0KRWwgYXV0b3IgZ2FyYW50aXphIHF1ZSBzaSBlbCBkb2N1bWVudG8gY29udGllbmUgbWF0ZXJpYWxlcyBkZSBsb3MgY3VhbGVzIG5vIHRpZW5lIGxvcyBkZXJlY2hvcyBkZSBhdXRvciwgIGhhIG9idGVuaWRvIGVsIHBlcm1pc28gZGVsIHByb3BpZXRhcmlvIGRlIGxvcyBkZXJlY2hvcyBkZSBhdXRvciwgeSBxdWUgZXNlIG1hdGVyaWFsIGN1eW9zIGRlcmVjaG9zIHNvbiBkZSB0ZXJjZXJvcyBlc3Tvv70gY2xhcmFtZW50ZSBpZGVudGlmaWNhZG8geSByZWNvbm9jaWRvIGVuIGVsIHRleHRvIG8gY29udGVuaWRvIGRlbCBkb2N1bWVudG8gZGVwb3NpdGFkbyBlbiBlbCBSZXBvc2l0b3Jpby4NCg0KRW4gb2JyYXMgZGUgYXV0b3Lvv71hIG3vv71sdGlwbGUgL3NlIHByZXN1bWUvIHF1ZSBlbCBhdXRvciBkZXBvc2l0YW50ZSBkZWNsYXJhIHF1ZSBoYSByZWNhYmFkbyBlbCBjb25zZW50aW1pZW50byBkZSB0b2RvcyBsb3MgYXV0b3JlcyBwYXJhIHB1YmxpY2FybGEgZW4gZWwgUmVwb3NpdG9yaW8sIHNpZW5kbyDvv71zdGUgZWwg77+9bmljbyByZXNwb25zYWJsZSBmcmVudGUgYSBjdWFscXVpZXIgdGlwbyBkZSByZWNsYW1hY2nvv71uIGRlIGxvcyBvdHJvcyBjb2F1dG9yZXMuDQoNCkVsIGF1dG9yIHNlcu+/vSByZXNwb25zYWJsZSBkZWwgY29udGVuaWRvIGRlIGxvcyBkb2N1bWVudG9zIHF1ZSBkZXBvc2l0YS4gTGEgVURFTEFSIG5vIHNlcu+/vSByZXNwb25zYWJsZSBwb3IgbGFzIGV2ZW50dWFsZXMgdmlvbGFjaW9uZXMgYWwgZGVyZWNobyBkZSBwcm9waWVkYWQgaW50ZWxlY3R1YWwgZW4gcXVlIHB1ZWRhIGluY3VycmlyIGVsIGF1dG9yLg0KDQpBbnRlIGN1YWxxdWllciBkZW51bmNpYSBkZSB2aW9sYWNp77+9biBkZSBkZXJlY2hvcyBkZSBwcm9waWVkYWQgaW50ZWxlY3R1YWwsIGxhIFVERUxBUiAgYWRvcHRhcu+/vSB0b2RhcyBsYXMgbWVkaWRhcyBuZWNlc2FyaWFzIHBhcmEgZXZpdGFyIGxhIGNvbnRpbnVhY2nvv71uIGRlIGRpY2hhIGluZnJhY2Np77+9biwgbGFzIHF1ZSBwb2Ry77+9biBpbmNsdWlyIGVsIHJldGlybyBkZWwgYWNjZXNvIGEgbG9zIGNvbnRlbmlkb3MgeS9vIG1ldGFkYXRvcyBkZWwgZG9jdW1lbnRvIHJlc3BlY3Rpdm8uDQoNCkxhIG9icmEgc2UgcG9uZHLvv70gYSBkaXNwb3NpY2nvv71uIGRlbCBw77+9YmxpY28gYSB0cmF277+9cyBkZSBsYXMgbGljZW5jaWFzIENyZWF0aXZlIENvbW1vbnMsIGVsIGF1dG9yIHBvZHLvv70gc2VsZWNjaW9uYXIgdW5hIGRlIGxhcyA2IGxpY2VuY2lhcyBkaXNwb25pYmxlczoNCg0KDQpBdHJpYnVjae+/vW4gKENDIC0gQnkpOiBQZXJtaXRlIHVzYXIgbGEgb2JyYSB5IGdlbmVyYXIgb2JyYXMgZGVyaXZhZGFzLCBpbmNsdXNvIGNvbiBmaW5lcyBjb21lcmNpYWxlcywgc2llbXByZSBxdWUgc2UgcmVjb25vemNhIGFsIGF1dG9yLg0KDQpBdHJpYnVjae+/vW4g77+9IENvbXBhcnRpciBJZ3VhbCAoQ0MgLSBCeS1TQSk6IFBlcm1pdGUgdXNhciBsYSBvYnJhIHkgZ2VuZXJhciBvYnJhcyBkZXJpdmFkYXMsIGluY2x1c28gY29uIGZpbmVzIGNvbWVyY2lhbGVzLCBwZXJvIGxhIGRpc3RyaWJ1Y2nvv71uIGRlIGxhcyBvYnJhcyBkZXJpdmFkYXMgZGViZSBoYWNlcnNlIG1lZGlhbnRlIHVuYSBsaWNlbmNpYSBpZO+/vW50aWNhIGEgbGEgZGUgbGEgb2JyYSBvcmlnaW5hbCwgcmVjb25vY2llbmRvIGEgbG9zIGF1dG9yZXMuDQoNCkF0cmlidWNp77+9biDvv70gTm8gQ29tZXJjaWFsIChDQyAtIEJ5LU5DKTogUGVybWl0ZSB1c2FyIGxhIG9icmEgeSBnZW5lcmFyIG9icmFzIGRlcml2YWRhcywgc2llbXByZSB5IGN1YW5kbyBlc29zIHVzb3Mgbm8gdGVuZ2FuIGZpbmVzIGNvbWVyY2lhbGVzLCByZWNvbm9jaWVuZG8gYWwgYXV0b3IuDQoNCkF0cmlidWNp77+9biDvv70gU2luIERlcml2YWRhcyAoQ0MgLSBCeS1ORCk6IFBlcm1pdGUgZWwgdXNvIGRlIGxhIG9icmEsIGluY2x1c28gY29uIGZpbmVzIGNvbWVyY2lhbGVzLCBwZXJvIG5vIHNlIHBlcm1pdGUgZ2VuZXJhciBvYnJhcyBkZXJpdmFkYXMsIGRlYmllbmRvIHJlY29ub2NlciBhbCBhdXRvci4NCg0KQXRyaWJ1Y2nvv71uIO+/vSBObyBDb21lcmNpYWwg77+9IENvbXBhcnRpciBJZ3VhbCAoQ0Mg77+9IEJ5LU5DLVNBKTogUGVybWl0ZSB1c2FyIGxhIG9icmEgeSBnZW5lcmFyIG9icmFzIGRlcml2YWRhcywgc2llbXByZSB5IGN1YW5kbyBlc29zIHVzb3Mgbm8gdGVuZ2FuIGZpbmVzIGNvbWVyY2lhbGVzIHkgbGEgZGlzdHJpYnVjae+/vW4gZGUgbGFzIG9icmFzIGRlcml2YWRhcyBzZSBoYWdhIG1lZGlhbnRlIGxpY2VuY2lhIGlk77+9bnRpY2EgYSBsYSBkZSBsYSBvYnJhIG9yaWdpbmFsLCByZWNvbm9jaWVuZG8gYSBsb3MgYXV0b3Jlcy4NCg0KQXRyaWJ1Y2nvv71uIO+/vSBObyBDb21lcmNpYWwg77+9IFNpbiBEZXJpdmFkYXMgKENDIC0gQnktTkMtTkQpOiBQZXJtaXRlIHVzYXIgbGEgb2JyYSwgcGVybyBubyBzZSBwZXJtaXRlIGdlbmVyYXIgb2JyYXMgZGVyaXZhZGFzIHkgbm8gc2UgcGVybWl0ZSB1c28gY29uIGZpbmVzIGNvbWVyY2lhbGVzLCBkZWJpZW5kbyByZWNvbm9jZXIgYWwgYXV0b3IuDQoNCkxvcyB1c29zIHByZXZpc3RvcyBlbiBsYXMgbGljZW5jaWFzIGluY2x1eWVuIGxhIGVuYWplbmFjae+/vW4sIHJlcHJvZHVjY2nvv71uLCBjb211bmljYWNp77+9biwgcHVibGljYWNp77+9biwgZGlzdHJpYnVjae+/vW4geSBwdWVzdGEgYSBkaXNwb3NpY2nvv71uIGRlbCBw77+9YmxpY28uIExhIGNyZWFjae+/vW4gZGUgb2JyYXMgZGVyaXZhZGFzIGluY2x1eWUgbGEgYWRhcHRhY2nvv71uLCB0cmFkdWNjae+/vW4geSBlbCByZW1peC4NCg0KQ3VhbmRvIHNlIHNlbGVjY2lvbmUgdW5hIGxpY2VuY2lhIHF1ZSBoYWJpbGl0ZSB1c29zIGNvbWVyY2lhbGVzLCBlbCBkZXDvv71zaXRvIGRlYmVy77+9IHNlciBhY29tcGHvv71hZG8gZGVsIGF2YWwgZGVsIGplcmFyY2Egbe+/vXhpbW8gZGVsIFNlcnZpY2lvIGNvcnJlc3BvbmRpZW50ZS4NCg0KDQoNCg0KDQoNCg0KDQo=Universidadhttps://udelar.edu.uy/https://www.colibri.udelar.edu.uy/oai/requestmabel.seroubian@seciu.edu.uyUruguayopendoar:47712024-07-25T14:44:22.143616COLIBRI - Universidad de la Repúblicafalse
spellingShingle Towards secure distributed computations
Zipitría, Felipe
COMPUTACION DISTRIBUIDA
TYPE SAFE
ABSTRATION SAFETY
ALGORITMO DE CERTIFICACION
PCR
MARSHALLING
status_str acceptedVersion
title Towards secure distributed computations
title_full Towards secure distributed computations
title_fullStr Towards secure distributed computations
title_full_unstemmed Towards secure distributed computations
title_short Towards secure distributed computations
title_sort Towards secure distributed computations
topic COMPUTACION DISTRIBUIDA
TYPE SAFE
ABSTRATION SAFETY
ALGORITMO DE CERTIFICACION
PCR
MARSHALLING
url http://hdl.handle.net/20.500.12008/2952