2016
Authors
Almeida, J; Barbosa, M; Pacheco, H; Pereira, V;
Publication
ERCIM NEWS
Abstract
Cryptography is an inherently interdisciplinary area and the development of high-quality cryptographic software is a time-consuming task drawing on skills from mathematics, computer science and electrical engineering, only achievable by highly skilled programmers. The challenge is to map high-level cryptographic specifications phrased using mathematical abstractions into efficient implementations at the level of C or assembly that can be deployed on a target computational platform, whilst adhering to the specification both in terms of correctness and security. The High Assurance Software Laboratory at INESC-TEC maintains a domain-specific toolchain for the specification, implementation and verification of cryptographic software centred on CAO, a cryptography analyses and operations-aware language.
2013
Authors
Macedo, N; Pacheco, H; Cunha, A; Oliveira, JN;
Publication
ECEASST
Abstract
Non-trivial bidirectional transformations (BXs) are inherently ambiguous, as there are in general many different ways to consistently translate an update from one side to the other. Existing BX languages and frameworks typically satisfy fundamental first principles which ensure acceptable and stable (well-behaved) translation. Unfortunately, these give little insight about how a particular update translation is chosen among the myriad possible. From the user perspective, such unpredictability may hinder the adoption of BX frameworks. The problem can be remedied by imposing a "principle of least change" which, in a state-based framework, amounts to translating each update in a way such that its result is as close as possible to the original state, according to some distance measure. Starting by formalizing such BXs focusing on the particular framework of lenses, this paper discusses whether such least-change lenses can be defined by composition, an essential construct of BX frameworks. For sequential composition, two (dual) update translation alternatives are presented: a classical deterministic one and a nondeterministic. A key ingredient of the approach is the elegant formalization of the main concepts in relation algebra, which exposes several similarities and dualities. © Bidirectional Transformations 2013.
2013
Authors
Pacheco, Hugo; Macedo, Nuno; Cunha, Alcino; Voigtländer, Janis;
Publication
CoRR
Abstract
2017
Authors
Alonso, A; Couto, R; Pacheco, H; Bessa, R; Gouveia, C; Seca, L; Moreira, J; Nunes, P; Matos, PG; Oliveira, A;
Publication
CIRED - Open Access Proceedings Journal
Abstract
In the framework of the Horizon 2020 project UPGRID, the Portuguese demo is focused on promoting the exchange of smart metering data between the DSO and different stakeholders, guaranteeing neutrality, efficiency and transparency. The platform described in this study, named the Market Hub Platform, has two main objectives: (i) to guarantee neutral data access to all market agents and (ii) to operate as a market hub for the home energy management systems flexibility, in terms of consumption shift under dynamic retailing tariffs and contracted power limitation requests in response to technical problems. The validation results are presented and discussed in terms of scalability, availability and reliability.
2017
Authors
Almeida, JB; Barbosa, M; Barthe, G; Blot, A; Grégoire, B; Laporte, V; Oliveira, T; Pacheco, H; Schmidt, B; Strub, PY;
Publication
CCS'17: PROCEEDINGS OF THE 2017 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY
Abstract
Jasmin is a framework for developing high-speed and high-assurance cryptographic software. The framework is structured around the Jasmin programming language and its compiler. The language is designed for enhancing portability of programs and for simplifying verification tasks. The compiler is designed to achieve predictability and efficiency of the output code (currently limited to x64 platforms), and is formally verified in the Coq proof assistant. Using the SUPER COP framework, we evaluate the Jasmin compiler on representative cryptographic routines and conclude that the code generated by the compiler is as efficient as fast, hand-crafted, implementations. Moreover, the framework includes highly automated tools for proving memory safety and constant-time security (for protecting against cache-based timing attacks). We also demonstrate the effectiveness of the verification tools on a large set of cryptographic routines.
2014
Authors
Macedo, N; Pacheco, H; Sousa, NR; Cunha, A;
Publication
2014 IEEE SYMPOSIUM ON VISUAL LANGUAGES AND HUMAN-CENTRIC COMPUTING (VL/HCC 2014)
Abstract
Bidirectional transformations have potential applications in a vast number of computer science domains. Spreadsheets, on the other hand, are widely used for developing business applications, but their formulas are unidirectional, in the sense that their result can not be edited and propagated back to their input cells. In this paper, we interpret such formulas as a well-known class of bidirectional transformations that go by the name of lenses. Being aimed at users that are not proficient with programming languages, we devote particular attention to the seamless embedding of the proposed bidirectional mechanism with the typical workflow of spreadsheet environments, allowing users to have a fine control and understanding of the behavior of the derived backward transformations.
The access to the final selection minute is only available to applicants.
Please check the confirmation e-mail of your application to obtain the access code.