<!--
  - Copyright (c) 2022.
  - Author Peter Placzek (tada5hi)
  - For the full copyright and license information,
  - view the LICENSE file that was distributed with this source code.
  -->

<script>
import {LayoutNavigationDefaultId} from "@/config/layout";
import ContactListItem from "@/components/contact/ContactListItem";
import ContactItemEncryption from "@/components/contact/ContactItemEncryption";
import ContactEncryptionExport from "@/components/contact/encryption/ContactEncryptionExport";
import ContactEncryptionImport from "@/components/contact/encryption/ContactEncryptionImport";

export default {
    components: {ContactEncryptionExport, ContactEncryptionImport, ContactItemEncryption, ContactListItem},
    meta: {
        requireLoggedIn: true,
        navigationId: LayoutNavigationDefaultId
    },
    data() {
        return {
            tabs: [
                { name: 'Allgemein', urlSuffix: '', icon: 'fa fa-info' },
                { name: 'Export', urlSuffix: '/export', icon: 'fa fa-file-export' },
                { name: 'Import', urlSuffix: '/import', icon: 'fa fa-file-upload' }
            ]
        }
    },
}
</script>
<template>
    <div>
        <h5 class="title mb-3">
            Verschlüsselung <i class="fa fa-lock"></i>
        </h5>

        <div class="row">
            <div class="col-md-4 col-12">
                <img style="max-width: 100%;" src="~assets/img/Security On-bro.png" />
            </div>
            <div class="col-md-8  col-12">
                <h6><i class="fa fa-info"></i> Idee</h6>

                <p>
                    Neben der Verschlüsselung der Netzwerkpakete, können auch Daten wie Chat-Nachrichten, Bilder, etc. die sich innerhalb des Netzwerkpaketes
                    befinden zusätzlich <strong><i class="fa fa-desktop"></i> clientseitig</strong> (auf deinem Smartphone, PC, etc.) verschlüsselt werden.<br />
                    Solche Daten werden dann auch serverseitig verschlüsselt gespeichert und können von niemandem außer dir und deinem Kontakt auf dem jeweiligen
                    Endgerät <i class="fa fa-desktop"></i> gelesen werden! 🙉🙈<br />
                    Dafür muss für den jeweiligen Kontakt ein Schlüsselpaar (privat & öffentlich) generiert werden und der öffentliche Schlüssel an das
                    gegenüber übermittelt werden und vice versa.<br />
                    Sollte der Vorgang erfolgreich sein, könnt ihr jeweils mithilfe des eigenen privaten Schlüssel und dem
                    öffentlichen Schlüssel des Anderen, Nachrichten zwischen euch <strong>verschlüsseln</strong> und <strong>entschlüsseln</strong>.<br />
                    ( <a href="https://de.wikipedia.org/wiki/Diffie-Hellman-Schl%C3%BCsselaustausch" target="_blank">Diffie-Hellmann-Scshlüsselaustausch</a> )
                </p>
            </div>
        </div>

        <h6><i class="fa fa-sync"></i> Synchronisierung </h6>
        <p>
            Um von jedem Gerät aus die verschlüsselte Kommunikation mit deinen Kontakten nutzen zu können,
            ist es erfoderlich, dass auf jedem <strong>deiner</strong> Geräte, der jeweilig benötigte <strong>private Schlüssel</strong>
            für den jeweiligen Kontakt vorhanden ist.
        </p>

        <div class="row">
            <div class="col-md-6 col-12 mb-2 mb-md-0">
                <contact-encryption-import />
            </div>
            <div class="col-md-6 col-12">
                <contact-encryption-export />
            </div>
        </div>
    </div>
</template>
