My research theme is sustainable digitalisation. This includes both research on energy consumption of software, and inclusion/privacy research. Read more on my profile on my about page.
Download my PhD thesis about sustainable software (2016)
Publiciations
Jordy Aaldering, Sven-Bodo Scholz, Bernard van Gastel: Type Patterns: Pattern Matching on Shape-Carrying Array Types. 2024. In IFL'23: Proceedings of the 35th Symposium on Implementation and Application of Functional Languages: 11:1-11:14.
Miriam Fahimi, Petter Falk, Jonathan W. Y. Gray, Juliane Jarke, Katharina Kinder-Kurlanda, Evan Light, Ellouise McGeachey, Itzelle Medina Perea, Nikolaus Poechhacker, Lindsay Poirier, Theo Röhle, Tamar Sharon, Marthe Stevens, Bernard van Gastel, Quinn White and Irina Zakharova: In/visibilities in Data Studies: Methods, Tools and Interventions. 2024. In Dialogues in Data Power: Shifting Response-abilities in a Datafied World.
Roy van der Steen, Bernard van Gastel: The organizational hurdles of structurally reducing the energy consumption of software. 2023. In Proceedings of BENEVOL 2023, 2023. web version
Bernard van Gastel, Bart Jacobs, Jean Popma: Data Protection Using Polymorphic Pseudonymisation in a Large-Scale Parkinson's Disease Study (PDF). In Journal of Parkinson's Disease, 2021. web version
AS Hoffman, B Jacobs, B van Gastel, H Schraffenberger, T Sharon, B Pas: Towards a seamful ethics of Covid-19 contact tracing apps? Ethics and Information Technology 23 (1), 105-115, 2020.
Markus Klinik, Bernard van Gastel, Cynthia Kop, Marko van Eekelen: Skylines for Symbolic Energy Consumption Analysis (PDF). FMICS 2020: 93-112.
Carlo Meijer, Bernard van Gastel: Self-Encrypting Deception: Weaknesses in the Encryption of Solid State Drives. IEEE Symposium on Security and Privacy 2019: 72-87
Pascal van Gastel, Bernard van Gastel, Marko van Eekelen: Detecting energy bugs and hotspots in control software using model checking. Programming 2018: 93-98
Bernard van Gastel: Analysing energy consumption of systems controlled by software. Programming 2017: 19:1-19:2.
Bernard van Gastel, Marko van Eekelen: Towards Practical, Precise and Parametric Energy Analysis of IT Controlled Systems. DICE-FOPARA@ETAPS 2017: 24-37
Bernard van Gastel: Assessing sustainability of software - Analysing Correctness, Memory and Energy Consumption (PDF). Open University, 2016
Bernard van Gastel, Rody Kersten, Marko van Eekelen: Using Dependent Types to Define Energy Augmented Semantics of Programs. FOPARA 2015: 20-39
Rody Kersten, Bernard van Gastel, Olha Shkaravska, Manuel Montenegro, Marko van Eekelen: ResAna: a resource analysis toolset for (real-time) JAVA. In: Concurrency and Computation: practice and experience 26(14): 2432-2455 (2014)
Sylvia Stuurman, Bernard van Gastel, Harrie Passier: The design of mobile apps: what and how to teach? CSERC 2014: 93-100
Daniel J. Bernstein, Bernard van Gastel, Wesley Janssen, Tanja Lange, Peter Schwabe, Sjaak Smetsers: TweetNaCl: A Crypto Library in 100 Tweets (PDF). LATINCRYPT 2014: 64-83.
Bernard van Gastel, Freek Verbeek, Julien Schmaltz: Inference of channel types in micro-architectural models of on-chip communication networks. VLSI-SoC 2014: 1-6.
Rody Kersten, Paolo Parisen Toldin, Bernard van Gastel, Marko van Eekelen: A Hoare Logic for Energy Consumption Analysis. FOPARA 2013: 93-109.
Abdulaziz Alhussien, Freek Verbeek, Bernard van Gastel, Nader Bagherzadeh, Julien Schmaltz: Fully reliable dynamic routing logic for a fault-tolerant NoC architecture. In Journal of integrated circuits and systems 8.1 (2013), pages 43–53.
Rody Kersten, Bernard van Gastel, Manu Drijvers, Sjaak Smetsers, Marko van Eekelen: Using Model-Checking to Reveal a Vulnerability of Tamper-Evident Pairing. NASA Formal Methods 2013: 63-77.
Sebastiaan J. C. Joosten, Bernard van Gastel, Julien Schmaltz: A Macro for Reusing Abstract Functions and Theorems. ACL2 2013: 29-41.
Bernard van Gastel, Julien Schmaltz: A formalisation of XMAS. ACL2 2013: 111-126.
Rody Kersten, Olha Shkaravska, Bernard van Gastel, Manuel Montenegro, Marko van Eekelen: Making resource analysis practical for real-time Java. JTRES 2012: 135-144.
Abdulaziz Alhussien, Nader Bagherzadeh, Freek Verbeek, Bernard van Gastel, Julien Schmaltz: A formally verified deadlock-free routing function in a fault-tolerant NoC architecture. SBCCI 2012: 1-6.
Bernard van Gastel, Leonard Lensink, Sjaak Smetsers, Marko van Eekelen: Deadlock and starvation free reentrant readers-writers: A case study combining model checking with theorem proving. Sci. Comput. Program. 76(2): 82-99 (2011).
Bernard van Gastel, Leonard Lensink, Sjaak Smetsers, Marko van Eekelen: Reentrant Readers-Writers: A Case Study Combining Model Checking with Theorem Proving. FMICS 2008: 85-102. Best paper award.
Projects
Currently:
Lifecycle assessements of software (funded by TNO; started in 2024).
Choosing the most energy efficient algorithm at runtime (internally funded; started in 2023).
NOLAI Sustainable data lead (together with Erik Poll), including supervising a PhD project on Assuring Privacy and Security of Research Data (€ 270k), part of the larger National Education Lab AI (called NOLAI). PhD project started in 2023;
Trade offs between public values in the data driven energy transition (internally funded, started in 2023).
ERC proof-of-concept project (€ 150k): creating a privacy impact assessment dashboard for metal health apps (together with TILT, Tilburg, started in 2022).
Past (obtained, or took part in):
CHARTER (EU Artemis project);
Formally verified Network-on-chips (funded by Intel);
Resident participation ('burgerparticipatie') with IRMA (funded by the Dutch minstery of interior affairs).
Twid (50k, funded by SIDN Fonds): introducing authenticity on the Twitter platform to battle misinformation.
PEP-NOLAI project (~2100k): creating the digital infrastruce for the National Education Lab AI.
REACT project (300k): Extending PEP: instead of bringing the data to the algorithms (as is the case with PEP), the algorithms can be computed at the storage location of the data.
PEP project (~1700k, funded by EU EFRO): a privacy-friendly data repository for medical data research.
ERC Proof of concept (150k): privacy in mental health apps, together with Tilburg University.
Proof-of-provenance;
Bootstrapping PubHubs.net;
C4Yourself (introducting pseudonyms for small scale medical research).
Current PhD students
Alireza Soltani Nezhad, energy consumption of software (started 2024).
Job Doesburg, safely reuse a system to store privacy-sensitive data in a new and changing context (started November 2023).
Jordy Aaldering, saving energy by adjusting software behaviour to dynamic conditions (started Oct 2023).
Kyra de Korte, digital technology for the energy transition (started Jan 2023).
Graduated students
Roy van der Steen (MSc, RU, 2023): The organizational hurdles of structurally reducing the energy consumption of software.
Stefan Weijers (BSc, RU, 2023): A feasibility study on analyzing and predicting client-side energy consumption of web browsing.
Max Philipsen (MSc, RU, 2023): Evaluating the validity of an advisory tool on accessibility measures.
Jarno Alberts (BSc, RU, 2023): Integrating energy consumption feedback in agile development processes.
Koen Verdenius (MSc, RU, 2023): How do authenticity methods affect perceptions of tweets? (PDF).
Dirk Doesburg (BSc, RU, 2023): Signatures in IRMAseal.
Luuk Godtschalk (MSc, TU/e, 2022): Accountability and Access Control using Anonymous Credentials.
Tea Coros (BSc, RU, 2022): The security risks of unverified and recycled email addresses.
Shravan Sukumar (Internship, RU, 2022): Threat Analysis of Current Build System and CI/CD System for eduVPN Apps.
Randy Putgens (Internship, OU, 2022).
Hans Lous (BSc, RU, 2022): The Influence of Graph Metrics on the Performance of Pathfinding Algorithms.
Martijn Heitkönig (Internship, RU, 2022): Protecting immutable software from anonymous attackers.
Steven Wallis de Vries (Internship, RU, 2022): eduVPN internship report.
Jos Craaijo (MSc, RU, 2021): libLISA: Learning Instruction Set Architectures from scratch.
Marc Verwoert (MSc, RU, 2021): Cyberattack scenarios for remote electronic voting consultations using IRMA.
Fu-Rianne Veens (MSc, RU, 2021): Online voting and the secret ballot in the Netherlands exploring citizens’ perceptions in local consultations.
Willem van Oort (Master stage, RU, 2020): ECA: creating a case study.
Matthijs Spaans (Master, OU, 2020).
Gunnar Noordbruis (Bachelor, RU, 2020): Energy efficient WLAN using WiFi standards b/a/g/n/ac on an Archer C7 AC1750 access point.
Tom Nikken (Master stage, RU, 2019).
Robert Buitendijk (second supervisor, Master, OU, 2018).
Robbin van den Berg (Master, OU, 2019).
Mitchell Duim (Master, OU, 2019).
Mark Westenberg (Master, OU, 2019).
Hans van de Pol (second supervisor, MSc, OU, 2018).
Erik de Brouwer (Master, OU, 2019).
Erin van der Veen (Master stage, RU, 2018).
Pascal van Gastel (no family ties, Master, OU, 2017).
Sven van Valburg (Master stage, RU, 2016).
Roel Heirman (Bachelor, OU, 2016).
Koen Buitenhuis (Master stage, RU, 2016).
Jelle De Laender (Bachelor, OU, 2016).
Stefan Versluys (Bachelor, OU, 2015).
Jeroen Kleijn (Bachelor, OU, 2015).
Guus Bonnema (Bachelor, OU, 2015).
Stijn Keijzers (Master, RU, 2014).
Student project ideas
Energy analysis of the AEOS access control system of NEDAP (together with Artur van Leeuwen of NEDAP).
Implementing symbolic execution visualize energy consumption of external devices for Rust;
Carbon assessments of software;
Compare energy consumption of Bw-Trees with B-Trees and other data structures (LSM Tree?), using the test set up in our Software Energy Lab;
Adding energy consumption to tracing frameworks for anaylsing production deployments;
Extending GitLab to enable teams to save energy in their IT products;
Creating a test framework for Rust energy testing, based on criterion;
Using snapshots of production data to energy profile IT applications;
How to specify sustainability requirements during insourcing ('inkoop') of IT products;
Energy consumption of different GUI frameworks (intermediate-mode, retained, etc);
Comparison of async runtimes in Rust and C++, on properties such as memory usage, energy consumption, kernel calls, etc;
Microservice architecture using pseudonimization for central identifiers (using libpep);