diff --git a/api/src/main/java/dev/fitko/fitconnect/api/exceptions/FileHandlingException.java b/api/src/main/java/dev/fitko/fitconnect/api/exceptions/FileHandlingException.java
new file mode 100644
index 0000000000000000000000000000000000000000..dfe704d8d1b0e97e652029ba1619fa7294cade56
--- /dev/null
+++ b/api/src/main/java/dev/fitko/fitconnect/api/exceptions/FileHandlingException.java
@@ -0,0 +1,8 @@
+package dev.fitko.fitconnect.api.exceptions;
+
+public class FileHandlingException extends RuntimeException {
+
+    public FileHandlingException(Exception exception) {
+        super(exception);
+    }
+}
diff --git a/api/src/main/java/dev/fitko/fitconnect/api/exceptions/RootCertificateException.java b/api/src/main/java/dev/fitko/fitconnect/api/exceptions/RootCertificateException.java
new file mode 100644
index 0000000000000000000000000000000000000000..e7a577d2b9cd0546c627695a3732bad16398cb2c
--- /dev/null
+++ b/api/src/main/java/dev/fitko/fitconnect/api/exceptions/RootCertificateException.java
@@ -0,0 +1,8 @@
+package dev.fitko.fitconnect.api.exceptions;
+
+public class RootCertificateException extends RuntimeException {
+
+    public RootCertificateException(Exception exception) {
+        super(exception);
+    }
+}
diff --git a/core/src/main/java/dev/fitko/fitconnect/core/util/FileUtil.java b/core/src/main/java/dev/fitko/fitconnect/core/util/FileUtil.java
index bea28d98f7a58e28c8a73afd1584b44630181139..a3ee31e0c6e9ef561dfbabaa130a9992638b0c22 100644
--- a/core/src/main/java/dev/fitko/fitconnect/core/util/FileUtil.java
+++ b/core/src/main/java/dev/fitko/fitconnect/core/util/FileUtil.java
@@ -1,5 +1,8 @@
 package dev.fitko.fitconnect.core.util;
 
+import dev.fitko.fitconnect.api.exceptions.FileHandlingException;
+import dev.fitko.fitconnect.api.exceptions.RootCertificateException;
+
 import java.io.ByteArrayInputStream;
 import java.io.File;
 import java.io.IOException;
@@ -23,7 +26,7 @@ public class FileUtil {
             try {
                 return Files.readString(file.toPath());
             } catch (IOException e) {
-                throw new RuntimeException(e);
+                throw new FileHandlingException(e);
             }
         }).collect(Collectors.toList());
     }
@@ -33,7 +36,7 @@ public class FileUtil {
         try {
             return Files.readString(new File(Objects.requireNonNull(FileUtil.class.getClassLoader().getResource(filePath)).getFile()).toPath());
         } catch (IOException e) {
-            throw new RuntimeException(e);
+            throw new FileHandlingException(e);
         }
     }
 
@@ -43,7 +46,7 @@ public class FileUtil {
         try {
             return (X509Certificate) CertificateFactory.getInstance("X.509").generateCertificate(certificateInputStream);
         } catch (CertificateException e) {
-            throw new RuntimeException(e);
+            throw new RootCertificateException(e);
         }
     }
 }
diff --git a/core/src/main/java/dev/fitko/fitconnect/core/validation/DefaultValidationService.java b/core/src/main/java/dev/fitko/fitconnect/core/validation/DefaultValidationService.java
index 96cb250e085fdd76406a84351c6fdadacb01e34e..da9268e4e321e30b3e64b5f0a6a2b81f1102acae 100644
--- a/core/src/main/java/dev/fitko/fitconnect/core/validation/DefaultValidationService.java
+++ b/core/src/main/java/dev/fitko/fitconnect/core/validation/DefaultValidationService.java
@@ -15,6 +15,7 @@ import dev.fitko.fitconnect.api.domain.model.event.EventClaimFields;
 import dev.fitko.fitconnect.api.domain.model.metadata.Metadata;
 import dev.fitko.fitconnect.api.domain.validation.ValidationResult;
 import dev.fitko.fitconnect.api.exceptions.DataIntegrityException;
+import dev.fitko.fitconnect.api.exceptions.RootCertificateException;
 import dev.fitko.fitconnect.api.exceptions.SchemaNotFoundException;
 import dev.fitko.fitconnect.api.exceptions.ValidationException;
 import dev.fitko.fitconnect.api.services.crypto.MessageDigestService;
@@ -244,7 +245,7 @@ public class DefaultValidationService implements ValidationService {
             try {
                 return Base64.encode(cert.getEncoded()).toString();
             } catch (CertificateEncodingException e) {
-                throw new RuntimeException(e);
+                throw new RootCertificateException(e);
             }
         }).collect(Collectors.toList());