{"id":97667,"date":"2020-10-20T08:42:25","date_gmt":"2020-10-20T06:42:25","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/shifrovanie-v-mysql-ispolzovanie-master-key"},"modified":"2020-10-20T08:42:25","modified_gmt":"2020-10-20T06:42:25","slug":"shifrovanie-v-mysql-ispolzovanie-master-key","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/shifrovanie-v-mysql-ispolzovanie-master-key","title":{"rendered":"Verschl\u00fcsselung in MySQL: Verwendung des Master-Schl\u00fcssels","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<h2><\/h2>\n<p><strong><em>Im Vorfeld des Starts eines neuen Kurses&nbsp;<\/em><\/strong><noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/wMyj\/\"><strong><em>\u201eDatenbanken\u201c<\/em><\/strong><\/a><\/noindex><strong><em>&nbsp;setzen wir die Ver\u00f6ffentlichung unserer Artikelreihe \u00fcber die Verschl\u00fcsselung in MySQL fort.<\/em><\/strong><\/p>\n<p><img decoding=\"async\" alt=\"Verschl\u00fcsselung in MySQL: Verwendung des Master-Schl\u00fcssels\" src=\"\/wp-content\/uploads\/2020\/10\/762866d2c321acd726e30606c9108122.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>In dem vorherigen Artikel dieser Reihe (<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/otus\/blog\/522092\/\"><u>Verschl\u00fcsselung in MySQL: Schl\u00fcsselverwaltung<\/u><\/a><\/noindex>) haben wir \u00fcber Schl\u00fcsselmanagement gesprochen. In diesem Artikel betrachten wir, wie der Master-Schl\u00fcssel verwendet wird und diskutieren die Vor- und Nachteile der Envelope-Verschl\u00fcsselung.&nbsp;<\/p>\n<p>Die Idee der Envelope-Verschl\u00fcsselung besteht darin, dass die zur Verschl\u00fcsselung verwendeten Schl\u00fcssel (Tabellenraumschl\u00fcssel) mit einem anderen Schl\u00fcssel (dem Master-Schl\u00fcssel) verschl\u00fcsselt werden. Tats\u00e4chlich werden f\u00fcr die Verschl\u00fcsselung der Daten die Tabellenraumschl\u00fcssel verwendet. Grafisch kann man sich das so vorstellen:<\/p>\n<p><img decoding=\"async\" alt=\"Verschl\u00fcsselung in MySQL: Verwendung des Master-Schl\u00fcssels\" src=\"\/wp-content\/uploads\/2020\/10\/385afda0eff739f4720f59799c35b51f.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Der Hauptschl\u00fcssel (master key) befindet sich im Schl\u00fcsselbund (keyring), w\u00e4hrend die Schl\u00fcssel f\u00fcr die Tablespaces in den Headern der verschl\u00fcsselten Tablespaces liegen (auf Seite 0 des Tablespaces).&nbsp;<\/p>\n<p>In der Abbildung oben:<\/p>\n<ul>\n<li>\n<p>Tabelle A ist mit Schl\u00fcssel 1 (Key 1) verschl\u00fcsselt. Schl\u00fcssel 1 wird mit dem Master-Schl\u00fcssel verschl\u00fcsselt und in verschl\u00fcsselter Form in der \u00dcberschrift von Tabelle A gespeichert.<\/p>\n<\/li>\n<li>\n<p>Tabelle B wird mit Schl\u00fcssel 2 (Key 2) verschl\u00fcsselt. Schl\u00fcssel 2 wird mit dem Hauptschl\u00fcssel (masker key) verschl\u00fcsselt und in verschl\u00fcsselter Form im Header von Tabelle B gespeichert.<\/p>\n<\/li>\n<li>\n<p>Und so weiter.<\/p>\n<\/li>\n<\/ul>\n<p>Wenn der Server Tabelle A entschl\u00fcsseln muss, ruft er den Hauptschl\u00fcssel aus dem Speicher ab, liest den verschl\u00fcsselten Schl\u00fcssel 1 aus dem Header von Tabelle A und entschl\u00fcsselt Schl\u00fcssel 1. Der entschl\u00fcsselte Schl\u00fcssel 1 wird im Speicher des Servers zwischengespeichert und zur Entschl\u00fcsselung von Tabelle A verwendet.<\/p>\n<h3>InnoDB<\/h3>\n<p>In InnoDB erfolgen die tats\u00e4chliche Verschl\u00fcsselung und Entschl\u00fcsselung auf der Ein-\/Ausgabe-Ebene. Das hei\u00dft, die Seite wird unmittelbar vor dem Speichern auf die Festplatte verschl\u00fcsselt und sofort nach dem Lesen von der Festplatte entschl\u00fcsselt.<\/p>\n<p>In InnoDB funktioniert die Verschl\u00fcsselung nur auf Ebene der Tablespaces. Standardm\u00e4\u00dfig werden alle Tabellen in separaten Tablespaces erstellt (<noindex><a rel=\"nofollow\" href=\"https:\/\/dev.mysql.com\/doc\/refman\/8.0\/en\/innodb-file-per-table-tablespaces.html\"><u>file-per-table tablespace<\/u><\/a><\/noindex>). Mit anderen Worten, es wird ein Tablespace erstellt, der nur eine Tabelle enthalten kann. Zwar k\u00f6nnen Sie auch Tabellen im allgemeinen Tablespace erstellen (<noindex><a rel=\"nofollow\" href=\"https:\/\/dev.mysql.com\/doc\/refman\/8.0\/en\/general-tablespaces.html\"><u>general tablespace<\/u><\/a><\/noindex>). Aber in jedem Fall befindet sich die Tabelle immer in einem bestimmten Tablespace. Und da die Verschl\u00fcsselung auf der Ebene des Tablespaces durchgef\u00fchrt wird, ist sie entweder vollst\u00e4ndig verschl\u00fcsselt oder nicht. Das bedeutet, dass es im Haupt-Tablespace nicht m\u00f6glich ist, nur einen Teil der Tabellen zu verschl\u00fcsseln.&nbsp;<\/p>\n<p>Wenn aus irgendeinem Grund file-per-table deaktiviert ist, werden alle Tabellen im systemeigenen Tablespace (system tablespace) erstellt. In <noindex><a rel=\"nofollow\" href=\"https:\/\/www.percona.com\/software\/mysql-database\/percona-server\"><u>Percona Server f\u00fcr MySQL<\/u><\/a><\/noindex> kann der systemeigenen Tablespace mit der Variablen innodb<em>sys<\/em>tablespace<em>encrypt oder unter Verwendung von Verschl\u00fcsselungsstr\u00f6men (encryption threads) verschl\u00fcsselt werden, aber dies bleibt eine experimentelle Funktion. In MySQL gibt es das nicht.<\/em><\/p>\n<p><em>Bevor wir weitergehen, m\u00fcssen wir die Struktur der Master Key ID betrachten. Sie besteht aus UUID, KEY<\/em>ID und Pr\u00e4fix \u201eINNODBKey\u201c. Es sieht so aus: INNODBKey-UUID-KEY<em>ID.<\/em><\/p>\n<p><em>UUID \u2013 das ist die UUID des Servers mit dem verschl\u00fcsselten Tablespace. KEY<\/em>ID \u2013 das ist einfach ein konstant wachsender Wert. Bei der ersten Erstellung des Hauptschl\u00fcssels KEY<em>ID 1. Bei der Schl\u00fcsselrotation, wenn ein neuer Hauptschl\u00fcssel erstellt wird, wird der KEY<\/em>ID = 2 und so weiter. Mehr Details zur Rotation der Hauptschl\u00fcssel werden wir in den folgenden Artikeln dieser Serie besprechen.<\/p>\n<p>Jetzt, da wir wissen, wie die Identifikation des Hauptschl\u00fcssels aussieht, schauen wir uns den Header des verschl\u00fcsselten Tablespaces an. Wenn der Tablespace verschl\u00fcsselt ist, wird die Verschl\u00fcsselungsinformation dem Header hinzugef\u00fcgt. Sie sieht folgenderma\u00dfen aus:<\/p>\n<p><img decoding=\"async\" alt=\"Verschl\u00fcsselung in MySQL: Verwendung des Master-Schl\u00fcssels\" src=\"\/wp-content\/uploads\/2020\/10\/0703933a85f0a106c07c0dbd6b7f4186.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>KEY ID \u2013 das ist der KEY<em>ID aus der ID des Hauptschl\u00fcssels, den wir bereits besprochen haben. UUID \u2013 das ist die UUID des Servers, der auch in der ID des Hauptschl\u00fcssels verwendet wird. TABLESPACE KEY \u2013 der Schl\u00fcssel f\u00fcr den Tablespace, der aus 256 zuf\u00e4llig vom Server generierten Bits besteht. Der Initialisierungsvektor (IV, initialization vector) besteht ebenfalls aus 256 zuf\u00e4llig generierten Bits (obwohl er 128 Bits haben sollte). IV wird zur Initialisierung der Verschl\u00fcsselung und Entschl\u00fcsselung von AES verwendet (von den 256 Bits werden nur 128 verwendet). Am Ende befindet sich eine CRC32-Pr\u00fcfziffer f\u00fcr den TABLESPACE KEY und IV.<\/em><\/p>\n<p><em>W\u00e4hrend dieser Zeit habe ich es ein wenig vereinfacht, indem ich sagte, dass im Header ein verschl\u00fcsselter Schl\u00fcssel des Tabellenspeichers vorhanden ist. Tats\u00e4chlich werden der Schl\u00fcssel des Tabellenspeichers und der Initialisierungsvektor gemeinsam mit dem Hauptschl\u00fcssel gespeichert und verschl\u00fcsselt. Denken Sie daran, dass vor der Verschl\u00fcsselung des Schl\u00fcssels des Tabellenspeichers und des Initialisierungsvektors zun\u00e4chst ein CRC32 berechnet wird.<\/em><\/p>\n<h3>Warum ist CRC32 wichtig?<\/h3>\n<p><em>Kurz gesagt, um die G\u00fcltigkeit des Hauptschl\u00fcssels sicherzustellen. Nach der Entschl\u00fcsselung des Schl\u00fcssels des Tabellenspeichers und des Initialisierungsvektors wird eine Pr\u00fcfziffer berechnet und mit dem im Header gespeicherten CRC32 verglichen. Wenn die Pr\u00fcfziffern \u00fcbereinstimmen, haben wir den korrekten Hauptschl\u00fcssel und den Schl\u00fcssel des Tabellenspeichers. Andernfalls wird der Tabellenspeicher als nicht vorhanden markiert (wir k\u00f6nnen ihn trotzdem nicht entschl\u00fcsseln).<\/em><\/p>\n<p><em>Sie fragen sich vielleicht: Wann erfolgt die \u00dcberpr\u00fcfung der Schl\u00fcssel? Die Antwort ist: beim Start des Servers. Ein Server mit verschl\u00fcsselten Tabellen&nbsp;\/ Tabellenr\u00e4umen liest beim Start die UUID, den Schl\u00fcssel.<\/em>ID aus dem Header und generiert die Hauptschl\u00fcssel-ID. Dann wird der ben\u00f6tigte Hauptschl\u00fcssel aus dem Speicher (keyring) abgerufen, der Schl\u00fcssel des Tabellenraums entschl\u00fcsselt und die Pr\u00fcfziffer \u00fcberpr\u00fcft. Wenn die Pr\u00fcfziffer erneut \u00fcbereinstimmt, ist alles in Ordnung; wenn nicht, wird der Tabellenraum als fehlend markiert.<\/p>\n<p>Falls Sie den vorherigen Artikel dieser Serie gelesen haben (<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/otus\/blog\/522092\/\"><u>Verschl\u00fcsselung in MySQL: Schl\u00fcsselverwaltung<\/u><\/a><\/noindex>), erinnern Sie sich vielleicht, dass beim Einsatz eines serverseitigen Schl\u00fcsselverzeichnisses der Server beim Start nur eine Liste von Schl\u00fcssel-IDs erh\u00e4lt, genauer gesagt, key id und user id, da dieses Paar den Schl\u00fcssel eindeutig identifiziert. Jetzt sage ich jedoch, dass der Server beim Start alle Schl\u00fcssel erh\u00e4lt, die er ben\u00f6tigt, um die M\u00f6glichkeit der Entschl\u00fcsselung der Schl\u00fcssel f\u00fcr die Tabellenr\u00e4ume zu \u00fcberpr\u00fcfen. Warum werden also beim Initialisieren im Fall des serverseitigen Schl\u00fcsselverzeichnisses nur key<em>id und user<\/em>id und nicht alle Schl\u00fcssel? Denn m\u00f6glicherweise ben\u00f6tigen Sie nicht alle Schl\u00fcssel. Grunds\u00e4tzlich h\u00e4ngt das mit der Rotation des Hauptschl\u00fcssels zusammen. Bei der Rotation des Hauptschl\u00fcssels wird im Speicher ein neuer Hauptschl\u00fcssel erstellt, w\u00e4hrend die alten Schl\u00fcssel nicht gel\u00f6scht werden. So kann es sein, dass sich viele Schl\u00fcssel im Serverspeicher befinden, die f\u00fcr den Server nicht erforderlich sind und daher beim Start des Servers nicht abgerufen werden.<\/p>\n<p>Es ist an der Zeit, ein wenig \u00fcber die Vor- und Nachteile der Verschl\u00fcsselung mit einem Hauptschl\u00fcssel zu sprechen. Der gr\u00f6\u00dfte Vorteil liegt darin, dass Sie nur einen Verschl\u00fcsselungsschl\u00fcssel (den Hauptschl\u00fcssel) ben\u00f6tigen, der getrennt von Ihren verschl\u00fcsselten Daten aufbewahrt wird. Das macht den Serverstart schnell und der Speicher klein, was das Management erleichtert. Zudem ist der einzige Hauptschl\u00fcssel leicht neu zu generieren.<\/p>\n<p>Die Verschl\u00fcsselung mit dem Hauptschl\u00fcssel hat jedoch einen gro\u00dfen Nachteil: Sobald das Tabellen-Layout mit dem tablespace_key verschl\u00fcsselt ist, bleibt es immer mit demselben Schl\u00fcssel verschl\u00fcsselt. Eine Rotation des Hauptschl\u00fcssels hilft hier nicht. Warum ist das ein Nachteil? Wir wissen, dass MySQL Bugs hat, die zu pl\u00f6tzlichen Abst\u00fcrzen f\u00fchren und eine core-Datei erzeugen k\u00f6nnen. Da die core-Datei einen Speicher-Dump des Servers enth\u00e4lt, kann es vorkommen, dass der entschl\u00fcsselte Schl\u00fcssel des Tabellen-Layouts im Dump enthalten ist. Noch schlimmer ist, dass die entschl\u00fcsselten Schl\u00fcssel des Tabellen-Layouts im Speicher gehalten werden, der auf die Festplatte gepuffert werden kann. Man k\u00f6nnte sagen, dass dies kein Nachteil ist, da man Root-Rechte ben\u00f6tigt, um auf diese Dateien und den Swap-Bereich zuzugreifen. Ja. Aber Root-Rechte sind nur kurzfristig erforderlich. Sobald jemand Zugriff auf den entschl\u00fcsselten Schl\u00fcssel des Tabellen-Layouts hat, kann er\/sie ihn weiterhin zur Entschl\u00fcsselung von Daten verwenden, selbst ohne Root-Rechte. Zudem kann die Festplatte gestohlen werden, und der Swap-Bereich\/core-Dateien k\u00f6nnen mit Drittanbieter-Tools gelesen werden. Das Ziel von TDE ist es, sie unlesbar zu machen, selbst wenn die Festplatte gestohlen wird. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.percona.com\/software\/mysql-database\/percona-server\"><u>Percona Server f\u00fcr MySQL<\/u><\/a><\/noindex> Es besteht die M\u00f6glichkeit, den Tabellenraum mit neu generierten Schl\u00fcsseln erneut zu verschl\u00fcsseln. Diese Funktion wird als Encryption Threads bezeichnet und ist zum Zeitpunkt des Schreibens dieses Artikels noch experimentell.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/wMyj\/\"><strong>Erfahren Sie mehr \u00fcber den Kurs<\/strong><\/a><\/noindex><\/p>\n<h3>Weiterlesen:<\/h3>\n<ul>\n<li>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/otus\/blog\/522092\/\">Verschl\u00fcsselung in MySQL: Schl\u00fcsselverwaltung<\/a><\/noindex><\/p>\n<\/li>\n<\/ul>\n<p>Quelle: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/otus\/blog\/524050\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043d\u043e\u0432\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u043d\u0430 \u043a\u0443\u0440\u0441&nbsp;\u00ab\u0411\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445\u00bb&nbsp;\u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u043c \u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u0442\u044c \u0441\u0435\u0440\u0438\u044e \u0441\u0442\u0430\u0442\u0435\u0439 \u043f\u0440\u043e \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432 MySQL. \u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044d\u0442\u043e\u0439 \u0441\u0435\u0440\u0438\u0438 (\u0428\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432 MySQL: \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043a\u043b\u044e\u0447\u0435\u0439) \u043c\u044b \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0438 \u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430\u0445 \u043a\u043b\u044e\u0447\u0435\u0439. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u043a\u0430\u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 (master key), \u0430 \u0442\u0430\u043a\u0436\u0435 \u043e\u0431\u0441\u0443\u0434\u0438\u043c \u0434\u043e\u0441\u0442\u043e\u0438\u043d\u0441\u0442\u0432\u0430 \u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u0438 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u043c \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u043e\u0432 (envelope encryption).&nbsp; \u0418\u0434\u0435\u044f \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u043e\u0432 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":97668,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-97667","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043d\u043e\u0432\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u043d\u0430 \u043a\u0443\u0440\u0441 \u00ab\u0411\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445\u00bb \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u043c \u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u0442\u044c \u0441\u0435\u0440\u0438\u044e \u0441\u0442\u0430\u0442\u0435\u0439 \u043f\u0440\u043e \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432 MySQL.\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044d\u0442\u043e\u0439 \u0441\u0435\u0440\u0438\u0438 (\u0428\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432 MySQL: \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043a\u043b\u044e\u0447\u0435\u0439) \u043c\u044b \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0438 \u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430\u0445 \u043a\u043b\u044e\u0447\u0435\u0439. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u043a\u0430\u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 (master key), \u0430 \u0442\u0430\u043a\u0436\u0435 \u043e\u0431\u0441\u0443\u0434\u0438\u043c \u0434\u043e\u0441\u0442\u043e\u0438\u043d\u0441\u0442\u0432\u0430 \u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u0438 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u043c \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u043e\u0432 (envelope encryption). \u0418\u0434\u0435\u044f \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u043e\u0432 \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/shifrovanie-v-mysql-ispolzovanie-master-key\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0428\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432 MySQL: \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 Master Key | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043d\u043e\u0432\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u043d\u0430 \u043a\u0443\u0440\u0441 \u00ab\u0411\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445\u00bb \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u043c \u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u0442\u044c \u0441\u0435\u0440\u0438\u044e \u0441\u0442\u0430\u0442\u0435\u0439 \u043f\u0440\u043e \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432 MySQL.\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044d\u0442\u043e\u0439 \u0441\u0435\u0440\u0438\u0438 (\u0428\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432 MySQL: \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043a\u043b\u044e\u0447\u0435\u0439) \u043c\u044b \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0438 \u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430\u0445 \u043a\u043b\u044e\u0447\u0435\u0439. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u043a\u0430\u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 (master key), \u0430 \u0442\u0430\u043a\u0436\u0435 \u043e\u0431\u0441\u0443\u0434\u0438\u043c \u0434\u043e\u0441\u0442\u043e\u0438\u043d\u0441\u0442\u0432\u0430 \u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u0438 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u043c \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u043e\u0432 (envelope encryption). \u0418\u0434\u0435\u044f \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u043e\u0432 \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/shifrovanie-v-mysql-ispolzovanie-master-key\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-10-20T06:42:25+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-10-20T06:42:25+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Verschl\u00fcsselung in MySQL: Verwendung des Master Keys | ProHoster","description":"Im Vorfeld des Starts eines neuen Kurses zu \"Datenbanken\" setzen wir unsere Reihe von Artikeln \u00fcber Verschl\u00fcsselung in MySQL fort. Im vorherigen Artikel dieser Serie (Verschl\u00fcsselung in MySQL: Schl\u00fcsselverwaltung) haben wir \u00fcber Schl\u00fcsselverwaltungssysteme gesprochen. In diesem Artikel betrachten wir, wie der Master Key verwendet wird, und diskutieren die Vor- und Nachteile der Envelope Encryption. Die Idee der Envelope Encryption besteht darin,","canonical_url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/shifrovanie-v-mysql-ispolzovanie-master-key","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0428\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432 MySQL: \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 Master Key | ProHoster","og:description":"\u0412 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043d\u043e\u0432\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u043d\u0430 \u043a\u0443\u0440\u0441 \u00ab\u0411\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445\u00bb \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u043c \u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u0442\u044c \u0441\u0435\u0440\u0438\u044e \u0441\u0442\u0430\u0442\u0435\u0439 \u043f\u0440\u043e \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432 MySQL.\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044d\u0442\u043e\u0439 \u0441\u0435\u0440\u0438\u0438 (\u0428\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432 MySQL: \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043a\u043b\u044e\u0447\u0435\u0439) \u043c\u044b \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0438 \u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430\u0445 \u043a\u043b\u044e\u0447\u0435\u0439. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u043a\u0430\u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 (master key), \u0430 \u0442\u0430\u043a\u0436\u0435 \u043e\u0431\u0441\u0443\u0434\u0438\u043c \u0434\u043e\u0441\u0442\u043e\u0438\u043d\u0441\u0442\u0432\u0430 \u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u0438 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u043c \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u043e\u0432 (envelope encryption). \u0418\u0434\u0435\u044f \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u043e\u0432 \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432","og:url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/shifrovanie-v-mysql-ispolzovanie-master-key","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-10-20T06:42:25+00:00","article:modified_time":"2020-10-20T06:42:25+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"97667","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 10:15:28","updated":"2022-10-03 07:13:51"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/97667","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=97667"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/97667\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media\/97668"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=97667"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=97667"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=97667"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}