To the English version

TETRA RustIEC

RustIEC is een VLAIO TETRA project (grant HBC.2021.0066) met als doel Vlaamse bedrijven de Rust programmeertaal te doen beheersen. Het project legt specifiek de focus op veiligheid in IoT systemen, veiligheid in edge computing en veiligheid in cloud computing.

Het RustIEC project wordt geleid door het Smartnets lab van de Vrije Universiteit Brussel en het DistriNet lab van de KU Leuven. Ontmoet het team!

Projectdoel

Problemen met geheugen, zoals geheugenlekken, buffer overflows en memory dumps, zijn heel gekende softwareproblemen die kunnen uitgebuit worden door aanvallers. Het aantal cyberaanvallen neemt jaar na jaar toe. Niet alleen grote bedrijven, maar ook kleine bedrijven worden steeds vaker het doelwit en kunnen hiervan heel nefaste gevolgen ondervinden.

Bij de meeste programmeertalen, zoals bijvoorbeeld C en C++, worden deze geheugenproblemen pas laattijdig opgemerkt, meestal wanneer ze tijdens het uitvoeren sporadisch optreden omdat ze bij compilatie of debuggen niet opvallen. Wanneer de problemen pas in productie optreden, kan er grote schade ondervonden worden. Het zoekproces naar de oorzaak kan trouwens zeer tijdrovend zijn.

De programmeertaal Rust biedt hierop een adequaat antwoord. De compiler laat de programmeur niet toe om onveilige code neer te schrijven. Inherent door ontwerp ligt het aantal softwarefouten in Rust geschreven programmeercode veel lager. Bijgevolg worden fouten reeds van in het begin van het proces vermeden, hetgeen het onderhoud van code veel doeltreffender maakt. Tevens laat Rust ook toe om performante code te genereren. De programmeertaal beschikt globaal gezien over goede documentatie en er zijn reeds veel bibliotheken ter beschikking, zowel voor ingebedde als niet ingebedde systemen.

De belangrijkste doelstelling van dit project is bedrijven kennis te laten maken met de voordelen die de Rust programmeertaal kan opleveren, zodat ze zelf een afweging kunnen maken voor toekomstige ontwikkelingen.

We hebben de volgende resultaten voor ogen:

  • Twee uitgewerkte, gedocumenteerde gevalstudies, waarbij opstelling en code open beschikbaar worden gesteld.
  • Benchmarks opgesteld voor het vergelijken van prestatie tussen Rust en gangbare programmeercode zoals C, C++, Python voor een aantal veel voorkomende en representatieve algoritmes in de domeinen van IoT-gedreven veilige webapplicaties.
  • Uitgewerkt onderzoek naar de interoperabiliteit van Rust met andere programmeertalen en de overdraagbaarheid naar verschillende platformen.
  • Onderzoek naar efficiëntie van C naar Rust conversietools zoals C2Rust en CRUST.
  • Organisatie van één inleidende en één meer geavanceerde hands-on workshop om met Rust aan de slag te gaan en het ter beschikking stellen van het workshopmateriaal.
  • Het integreren van de opgedane kennis in minstens drie cursussen voor beide onderzoeksinstellingen.

Projectdeelnemers

Ausy Digazu LSEC OTN Systems Sky Hero Barco Gemone Lumency Quicksand Verhaert Digital COMmeto MatchID Shayp

Vrije Universiteit Brussel Vlaio KU Leuven