Een Data Diode garandeert dat data op een datanetwerk slechts in één richting kan vloeien. Op deze manier wordt voorkomen dat “hackers” een kritisch netwerk of object kunnen indringen en overnemen.
Een OSDD bestaat uit drie delen. Een inkomende proxy op de ‘TX’ zijde van een netwerk. Deze proxy heeft de mogelijkheid om verschillende applicatie protocollen af te handelen zoals bijvoorbeeld file transfer, video streaming en Kafka datastromen (www.kafka.apache.org).
Het tweede deel is een hardware component die de unidirectionele datastroom garandeert. Het derde component is wederom een proxy maar dan op de ‘RX’ zijde van het netwerk, die dezelfde applicatie protocollen afhandelt.
Doel
Het doel van deze opdracht is een OSDD framework te maken én op basis hiervan een OSDD demonstrator te realiseren voor het KAFKA protocol. Dit omvat naast de ontwikkeling van het framework en proxy’s ook de ontwikkeling van het hardware component op basis van een bestaand FPGA evaluatie platform.
Werkpakket verdeling
Dit project is onderverdeeld in 4 werkpakketten, waarbij wij ieder werkpakket door een stagiar willen laten realiseren, waarbij de 4 afzonderlijke taken uiteraard geïntegreerd en tot een werkende demonstrator gemaakt worden. De volgende werkpakketten (stage plaatsen) zijn gedefinieerd:
Proxy framework – basis ontwikkeling (student 1)
Het basis framework voor de proxies biedt de mogelijkheid om protocol handlers en filters te laden, deze te voorzien van een configuratie, te starten en te stoppen. Ook worden de nodige installatie tools, bouwomgeving voor de protocol handlers en het framework, frameworklibraries ontwikkeld.
Kafka handlers & demonstrator ontwikkeling (student 2)
In dit werkpakket worden de KAFKA protocol handlers ontwikkeld. Wanneer bovenstaand werkpakket gereed is, zullen de proxies worden geïntegreerd en getest. Een testomgeving is ook onderdeel van de ontwikkeling.
Low-cost 1G FPGA diode module (student 3)
In dit werkpakket ontwikkelen we een kosten geoptimaliseerde diode overgang die bestaat uit twee elektrische 1G ethernet interfaces en een FPGA. We maken hierbij gebruik van een bestaande FPGA evaluatie kit zodat er geen specifieke hardware ontwikkeld behoeft te worden.
Framework – monitoring & statistieken (student 4)
Binnen dit werkpakket realiseren we de interfaces voor statistieken en configuratie (o.a. rsyslog, SNMP en REST). Ook wordt een webinterface ontwikkeld voor management op de proxies.
Benodigde kennis en technologieën
Per werkpakket zijn de volgende kennis en technologieën benodigd:
Proxy framework
- Rust programmering
- LXC, Docker of Linux KVM (nader te bepalen)
Kafka handlers & demonstrator ontwikkeling
- Rust programmering
Low-cost 1G FPGA diode module
- FPGA’s
- VHDL programmering
- High speed datatransmissie protocollen
Framework – monitoring & statistieken
- Rust programmering
- Webinterface
Planning
De werkende OSDD demonstrator moet uiterlijk eind 2019 gereed en werkend zijn, liefst eerder.
Begeleiding
Een Technolution Architect definieert de globale architectuur en de begeleidt de stagairs tijdens het project. Wij hebben uitgebreide ervaring op het gebied van veiligheids toepassingen, protocollen en high performance systemen en stellen deze beschikbaar aan de stagairs.
Praktische informatie
Technolution is gesitueerd in Gouda naast het NS station. Student worden geacht op ons kantoor in Gouda te werken gedurende dit project. Dit garandeert focus op het project en directe toegang tot beschikbare kennis binnen Technolution.
Voor meer informatie zie: https://technolution.eu