IBM zegt in twee gevallen FHE geïmplementeerd te hebben. Een keer in 2019 bij de Braziliaanse bank Banco Bradesco1 en een tweede keer bij een Europese bank2 (hiervan is het onderzoekspaper nog niet gepubliceerd). Bij de Banco Bradesco was de wens om een machine learning model te hebben wat veilig kon werken met financiële gegevens van hun klanten. Deze gegevens moesten gebruikt worden om te kunnen voorspellen of een specifieke klant in de komende drie maanden een lening aan ging vragen. FHE kan goed helpen bij dit vraagstuk, omdat het de bank toestaat om de privacy van hun klanten te waarborgen, terwijl ze nuttige inzichten verkrijgen over de gesteldheid van de klant. Vervolgens kan de klant een mooi aanbod krijgen of op een andere manier geholpen worden.
Om dit te realiseren zijn allereerst alle financiële gegevens en het machine learning model homomorf versleuteld3. Vervolgens wist IBM aan te tonen dat het mogelijk was om voorspellingen uit te voeren met dezelfde nauwkeurigheid als zonder versleuteling. Tot slot is het model ook nog eens getraind met versleutelde gegevens, waarmee aangetoond kon worden dat het mogelijk is om in dit geval FHE te gebruiken voor het waarborgen van privacy. Dit betekent dus dat het goed mogelijk lijkt voor banken om deze technologie echt te gaan gebruiken. Hierdoor kunnen ze het uitvoeren van voorspellingen veilig uitbesteden aan een niet-vertrouwde omgeving.
De meest gebruikte toepassing van FHE is momenteel waarschijnlijk de wachtwoordmonitoring functie van Microsoft Edge4 en Google Chrome5. De webbrowsers bieden de functionaliteit van een wachtwoordkluis aan, waardoor er belang is bij het goed beschermen van informatie binnen deze functie. Om wachtwoorden te versleutelen, met behoud van de mogelijkheid om ze te vergelijken met een database van gelekte wachtwoorden, wordt homomorfe versleuteling gebruikt. Microsoft gebruikt in Edge een aangepaste versie van hun SEAL FHE-pakket. Alle wachtwoorden (en gebruikersnamen) worden gehasht en met een traditionele encryptievorm onleesbaar gemaakt (zie Figuur 1)4. Vervolgens wordt de informatie homomorf versleuteld. De sterk versleutelde informatie wordt naar de cloud gestuurd om vergeleken te worden met enorme wachtwoorddatabases. De resultaten hiervan, worden lokaal verwerkt door de gebruiker om te kunnen bepalen of de gecontroleerde gebruikersnaam en wachtwoordcombinatie daadwerkelijk voorkomen in de database. Als dit het geval is, krijgt de gebruiker een waarschuwing te zien (zie Figuur 2)6. De implementatie in Google Chrome werkt op een soortgelijke manier.
Een laatste voorbeeld van FHE in de praktijk, is het product ElectionGuard van Microsoft7. Het levert een manier om te controleren of verkiezingsuitslagen juist zijn, en of stemmen op geen enkele manier zijn gewijzigd, onderdrukt of anderszins mee geknoeid. Individuele kiezers kunnen zien dat hun stem is geregistreerd en dat hun keuze correct is toegevoegd aan de uiteindelijke telling. Iedereen die de verkiezingen wil volgen, kan controleren of alle stemmen correct zijn opgeteld om een nauwkeurig en eerlijk resultaat te verkrijgen. Het principe van geheime stembiljetten houdt niet alleen in dat de stem van elke persoon privé zou moeten zijn, maar privé moet zijn, zodat stemmen niet kunnen worden gekocht, verkocht of afgedwongen.
ElectionGuard gebruikt FHE om dit te waarborgen. Elke stemmer krijgt een tracking code, om te kunnen controleren of hun stem ongewijzigd door het systeem gaat en in de uiteindelijke telling terechtkomt. Deze code kan echter niet gebruikt worden om te bewijzen hoe er gestemd is, er kan alleen bewezen worden dat de stem niet is gewijzigd. Tijdens de telling kunnen alle versleutelde stemmen simpelweg bij elkaar opgeteld worden, zonder dat ooit iemand de inhoud van de stem heeft kunnen zien.
FHE wordt dus al op een aantal manieren toegepast in de praktijk, maar welke toepassingen zijn er nog meer mogelijk?
Iconen gemaakt door Good Ware, photo3idea_studio, srip, Freepik, dDara en Eucalyp van www.flaticon.com