diff --git a/pass/public/styles/base.less b/pass/public/styles/base.less
index 860be6fc4853452462fce0c40fd0b6f3cffa1c62..aed6245f11b4cfffa9ccf1558e69ac308b05b391 100644
--- a/pass/public/styles/base.less
+++ b/pass/public/styles/base.less
@@ -115,13 +115,19 @@ button {
   text-decoration: none;
   background-color: @color-secondary;
   width: max-content;
-
   &:hover {
     color: inherit;
     background-color: fade(@color-secondary, 70%);
     border-color: @color-main;
     color: fade(white, 90%);
   }
+  &.negative {
+    background-color: @color-negative;
+    &:hover {
+      background-color: fade(@color-negative, 70%);
+      color: white;
+    }
+  }
 }
 
 nav#primary-nav {
diff --git a/pass/public/styles/misc/vars.less b/pass/public/styles/misc/vars.less
index e8e1663baaada7f5480be21d48e34cce2e1cf780..9b39a15b2f2769de3c3220a02d982ea2826b4638 100644
--- a/pass/public/styles/misc/vars.less
+++ b/pass/public/styles/misc/vars.less
@@ -2,6 +2,7 @@
 @color-secondary: #3a3af9;
 @color-main-hover: lighten(@color-main, 5%);
 @color-main-font-color: white;
+@color-negative: rgba(255, 0, 0, 0.432);
 
 @font-color-on-white: #515151;
 
diff --git a/pass/routes/key.js b/pass/routes/key.js
index 1156cf9f002b35ea3a6f1277beba22e56a9e9e02..1852de28f052ee700dbf3acb0e70de27b2b493d2 100644
--- a/pass/routes/key.js
+++ b/pass/routes/key.js
@@ -16,6 +16,13 @@ router.get("/create", function (req, res, next) {
   });
 });
 
+router.get("/remove", (req, res) => {
+  if (req.cookies.key) {
+    res.clearCookie("key");
+  }
+  res.redirect("/");
+})
+
 router.get("/enter", function (req, res, next) {
   if (req.cookies.key) {
     res.redirect("/key/" + encodeURIComponent(req.cookies.key));
@@ -106,6 +113,7 @@ router.use("/:key", param("key").isUUID(4), async (req, res, next) => {
       settings_url: metager_url,
       qr: qr_data_uri,
     },
+    cookies: req.cookies,
     page: "fill",
     links: {
       fill_url: `/key/${req.params.key}`,
@@ -116,7 +124,9 @@ router.use("/:key", param("key").isUUID(4), async (req, res, next) => {
   });
 
   if (!req.data.admin && (!req.cookies.key || req.cookies.key !== req.data.key.key)) {
-    res.cookie("key", req.data.key.key);
+    res.cookie("key", req.data.key.key, {
+      sameSite: "lax"
+    });
   }
 
   next("route");
diff --git a/pass/views/templates/page_header.ejs b/pass/views/templates/page_header.ejs
index 80a297343780d041b48e83e1e117622674b63c02..31c7495d08275e9621d371f77fd331b43d4de07d 100644
--- a/pass/views/templates/page_header.ejs
+++ b/pass/views/templates/page_header.ejs
@@ -42,7 +42,11 @@
       <li><a href="#">Hilfe</a></li>
       <li class="whitespace"></li>
       <li><a href="/key/enter">Schlüssel verwalten</a></li>
-      <li><a href="/key/create" class="button">Starten</a></li>
+      <%_ if((typeof cookies !== "undefined" && typeof cookies.key !== "undefined") || typeof key !== "undefined") { _%>
+      <li><a href="/key/remove" class="button negative" id="key-remove">Schlüssel entfernen</a></li>
+      <%_ } else { _%>
+        <li><a href="/key/create" class="button">Starten</a></li>
+      <%_ } _%>
     </ul>
   </nav>
   <main>
\ No newline at end of file