From 1b9f0171575c15c4872629d2d9ccc51fbc600355 Mon Sep 17 00:00:00 2001 From: Jonas Leder <jonas@jonasled.de> Date: Sat, 14 Aug 2021 20:00:32 +0200 Subject: [PATCH] add privateNote --- public/API/mainMenu.json | 5 ++++ public/Projekte/privateNote.html | 46 ++++++++++++++++++++++++++++++++ 2 files changed, 51 insertions(+) create mode 100644 public/Projekte/privateNote.html diff --git a/public/API/mainMenu.json b/public/API/mainMenu.json index 99b6ee3..192821f 100644 --- a/public/API/mainMenu.json +++ b/public/API/mainMenu.json @@ -9,6 +9,11 @@ "url": "#", "type": "dropdown", "childElements": [ + { + "name": "Private Note", + "url": "/Projekte/privateNote.html", + "type": "link" + }, { "name": "Proxdroid - Proxmox Android App", "url": "/Projekte/proxdroid.html", diff --git a/public/Projekte/privateNote.html b/public/Projekte/privateNote.html new file mode 100644 index 0000000..d150b8b --- /dev/null +++ b/public/Projekte/privateNote.html @@ -0,0 +1,46 @@ +<!DOCTYPE html> +<html lang="de"> + +<head> + <meta charset="UTF-8"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <title></title> + <link href="/css/style.css" rel="stylesheet"> +</head> + +<body> + <jl-header data-title="Private Note"></jl-header> + <div id="content"> + <p>Ich habe in der Vergangenheit regelmäßig Dienste wie <a href="https://privnote.com/#">Privnote</a> verwendet + um Sichere Notizen wie zum Beispiel Passwörter zu teilen. Der Vorteil dieser Dienste gegenüber einer + normalen <a href="//paste.jonasled.de">Pastebin</a> ist, dass die Informationen verschlüsselt in der + datenbank gespeichert werden und nachdem sie aufgerufen wurden wieder gelöscht werden. Obwohl ich diesen + Seiten eigentlich soweit vertraut habe, wollte ich einen eigenen Dienst hosten, damit ich mir zu 100% sicher + sein kann. Problem war aber, dass es OpenSource bisher eigentlich keine Lösung gab. Um dieses Problem zu + lösen habe ich mich entschieden eine eigene Lösung zu schreiben. Diese sollte sowohl einfach aufzusetzen + sein, als auch sicher. Als Backend habe ich mich hierbei für PHP mit einem MySQL / MariaDB Server für die + Daten entschieden. Alle Daten werden AES256 verschlüsselt in der Datenbank abgelegt und das Passwort, + welches zum Entschlüsseln vonnöten ist, wird über den URL an den Server übergeben. Dadurch ist es so gut wie + unmöglich die Notes zu entschlüsseln, wenn man Zugriff auf die Datenbank bekommen sollte. Im Backend wurde + desweiteren für den HTTP-Router <a href="https://www.slimframework.com/">Slim PHP</a> verwendet. Das + Frontend besteht aus einem statischen HTML Theme, in das verschiedene JavaScript Dateien geladen werden. In + diesen Dateien sind Web-Komponenten definiert. Diese erzeugen dann das Frontend. Desweiteren wurde im + Frontend als erweiterten Texteditor <a href="https://simplemde.com/">SimpleMDE</a> als Editor verwendet. + Dieser dient dazu, dass die Notes in Markdown geschrieben werden können um einfache Formatierungen + vorzunehmen. Wenn eine Notiz angezeigt wird, kommt markdown-it zum Einsatz, diese Bibliothek erzeugt aus dem + Markdown HTML Code, welcher dann angezeigt werden kann.</p> + <p>Meine Instanz kann unter folgendem URL aufgerufen werden: <a href="https://privnote.jonasled.de/">privnote.jonasled.de</a><br> + Der Quellcode ist unter <a href="https://gitlab.jonasled.de/jonasled/privatenote">gitlab.jonasled.de/jonasled/privatenote</a> zu finden.</p> + + + <h2>Kommentare:</h2> + <jl-comments_display></jl-comments_display> + <jl-new_comment id="newComment"></jl-new_comment> + </div> + <jl-footer></jl-footer> + + <script src='https://www.hCaptcha.com/1/api.js' async defer></script> + <script src="/js/script.js"></script> +</body> + +</html> \ No newline at end of file -- GitLab