{"id":97664,"date":"2020-10-20T08:42:20","date_gmt":"2020-10-20T06:42:20","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/shifrovanie-v-mysql-hranilishhe-klyuchej"},"modified":"2020-10-20T08:42:20","modified_gmt":"2020-10-20T06:42:20","slug":"shifrovanie-v-mysql-hranilishhe-klyuchej","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/shifrovanie-v-mysql-hranilishhe-klyuchej","title":{"rendered":"Kr\u00fcptimine MySQL-is: v\u00f5tmehoidla","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><b><i>Uue kursuse alguse eel\u00f5htul <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/luFp\/\">Andmebaasid<\/a><\/noindex> oleme teie jaoks t\u00f5lkinud kasuliku artikli.<\/i><\/b><\/p>\n<p><img decoding=\"async\" alt=\"Kr\u00fcptimine MySQL-is: v\u00f5tmehoidla\" src=\"\/wp-content\/uploads\/2020\/10\/aeca40f53fe6bdf2a9897aa835ff597d.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Andmete l\u00e4bipaistev kr\u00fcpteerimine (Transparent Data Encryption, TDE) ilmus <noindex><a rel=\"nofollow\" href=\"https:\/\/www.percona.com\/software\/mysql-database\/percona-server\">Percona Server for MySQL<\/a><\/noindex> ja MySQL juba m\u00f5nda aega tagasi. Kuid kas olete kunagi m\u00f5elnud, kuidas see t\u00f6\u00f6tab ning millist m\u00f5ju TDE v\u00f5ib teie serverile avaldada? Selles artiklisarjas vaatleme, kuidas TDE t\u00f6\u00f6tab seestpoolt. Alustame v\u00f5tmete salvestamisest, kuna see on vajalik iga kr\u00fcpteerimise jaoks. Seej\u00e4rel uurime p\u00f5hjalikult, kuidas kr\u00fcpteerimine Percona Server for MySQL\/MySQL-s toimib ja millised t\u00e4iendavad funktsioonid on Percona Server for MySQL-l.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>MySQL Keyring<\/h3>\n<p>\nKeyring on pistikprogrammid, mis v\u00f5imaldavad serveril p\u00e4rida, luua ja kustutada v\u00f5tmeid kohalikus failis (keyring_file) v\u00f5i eemalserveris (n\u00e4iteks HashiCorp Vaultis). V\u00f5tmed vahetatakse alati kohalikult, et kiirendada nende saamist. <\/p>\n<p>Pistikprogramme saab jagada kahte kategooriasse:<\/p>\n<ul>\n<li>Kohalik salvestamine. N\u00e4iteks kohalik fail (me nimetame seda failip\u00f5hiseks v\u00f5tmehoidjaks, file-based keyring).<\/li>\n<li>Kaugsalvestamine. N\u00e4iteks Vault Server (me nimetame seda serverip\u00f5hiseks v\u00f5tmehoidjaks, server-based keyring).<\/li>\n<\/ul>\n<p>\nSee jaotamine on oluline, kuna erinevat t\u00fc\u00fcpi salvestuslahendused k\u00e4ituvad veidi erinevalt, mitte ainult v\u00f5tmete salvestamisel ja saamisel, vaid ka nende k\u00e4ivitamisel.<\/p>\n<p>Failide salvestamise korral laetakse k\u00e4ivitamisel k\u00f5ik salvestuse sisu vahem\u00e4llu: key id, key user, key type ja ise v\u00f5tmed.<\/p>\n<p>Serveri salvestamise korral (n\u00e4iteks Vault server) laetakse k\u00e4ivitamisel ainult key id ja key user, seet\u00f5ttu ei aeglusta v\u00f5tmete saamine k\u00e4ivitamist. V\u00f5tmed laaditakse laiskalt, see t\u00e4hendab, et v\u00f5tme sisu laetakse Vaultist alles siis, kui see tegelikult on vajalik. P\u00e4rast laadimist salvestatakse v\u00f5tme sisu m\u00e4llu, et tulevikus ei oleks vaja selle j\u00e4rele p\u00f6\u00f6rduda Vault Serveri kaudu TLS-\u00fchenduste kaudu. Vaatame l\u00e4hemalt, millist teavet salvestuses on.<\/p>\n<p>V\u00f5tme teave sisaldab j\u00e4rgmist:<\/p>\n<ul>\n<li><b>key id<\/b> \u2014 v\u00f5tme identifikaator, n\u00e4iteks: <br \/>\n <code>INNODBKey-764d382a-7324-11e9-ad8f-9cb6d0d5dc99-1<\/code><\/li>\n<li><b>key type<\/b> \u2014 v\u00f5tme t\u00fc\u00fcp, mis p\u00f5hineb kasutataval kr\u00fcptimisalgoritmil, v\u00f5imalikud v\u00e4\u00e4rtused: \u201eAES\u201d, \u201eRSA\u201d v\u00f5i \u201eDSA\u201d.<\/li>\n<li><b>key length<\/b> \u2014 v\u00f5tme pikkus baitides, AES: 16, 24 v\u00f5i 32, RSA: 128, 256, 512 ja DSA: 128, 256 v\u00f5i 384.<\/li>\n<li><b>kasutaja<\/b> \u2014 v\u00f5tme omanik. Kui v\u00f5ti on s\u00fcsteemi oma, n\u00e4iteks Master Key, siis see v\u00e4li on t\u00fchi. Kui v\u00f5ti luuakse keyring_udf abil, siis see v\u00e4li t\u00e4histab v\u00f5tme omanikku.<\/li>\n<li><b>ise v\u00f5tme<\/b><\/li>\n<\/ul>\n<p>\nV\u00f5ti on unikaalselt tuvastatav paari abil: key_id, user.<\/p>\n<p>Samuti on erinevusi v\u00f5tmete hoidmise ja kustutamise osas.<\/p>\n<p>Failihaldus t\u00f6\u00f6tab kiiremini. V\u00f5ib arvata, et v\u00f5tmete hoidmine on lihtsalt v\u00f5tme \u00fchekordne salvestamine faili, kuid see pole nii \u2014 siin toimub rohkem toiminguid. Iga kord, kui failihalduses toimub muudatus, luuakse esmalt varukoopia kogu sisust. Oletame, et fail kannab nime my_biggest_secrets, siis varukoopia nimetatakse my_biggest_secrets.backup. Edasi muudetakse vahem\u00e4lu (lisatakse v\u00f5i eemaldatakse v\u00f5tmeid) ja kui k\u00f5ik \u00f5nnestub, siis vahem\u00e4lu kirjutatakse faili tagasi. Harvadel juhtudel, nagu serveri eba\u00f5nnestumine, v\u00f5ite n\u00e4ha seda varukoopia faili. Varukoopia faili kustutatakse j\u00e4rgmise v\u00f5tmete laadimise k\u00e4igus (tavaliselt p\u00e4rast serveri taask\u00e4ivitamist).<\/p>\n<p>Klavi s\u00e4ilitamisel v\u00f5i kustutamisel peab serveri salvestus \u00fchenduma MySQL serveriga, kasutades k\u00e4ske \"saada v\u00f5ti\" \/ \"taotleda v\u00f5tme kustutamist\".<\/p>\n<p>Naaseme serveri k\u00e4ivitamise kiiruseni. Lisaks sellele, et k\u00e4ivitamise kiirus s\u00f5ltub salvestusest, on ka oluline k\u00fcsimus, kui palju v\u00f5tmeid salvestusest tuleb k\u00e4ivitamisel v\u00f5tta. See on loomulikult eriti t\u00e4htis serveri salvestuste puhul. K\u00e4ivitamisel kontrollib server, milline v\u00f5ti on vajalik kr\u00fcptitud tabelite \/ tabeli ruumide jaoks ja k\u00fcsib v\u00f5tme salvestusest. \"Puhta\" serveri puhul, kus on Master Key - kr\u00fcptimine peab olema \u00fcks Master Key, mis tuleb salvestusest v\u00e4lja v\u00f5tta. Kuid v\u00f5ib olla vajalik ka rohkem v\u00f5tmeid, n\u00e4iteks kui varu serverile taastatakse varukoopia p\u00f5hiserverilt. Sellistes olukordades tuleks ette n\u00e4ha Master Key rotatsioon. Selle kohta k\u00e4sitletakse rohkem tulevikes artiklites, kuigi ma tahaksin siin m\u00e4rkida, et server, mis kasutab mitmeid Master Key, v\u00f5ib k\u00e4ivituda veidi kauem, eriti v\u00f5tme salvestuse kasutamisel.<\/p>\n<p>N\u00fc\u00fcd r\u00e4\u00e4gime natuke l\u00e4hemalt keyring_file'ist. Kui ma keyring_file'i arendasin, muretsesin ka selle \u00fcle, kuidas kontrollida keyring_file'i muudatusi serveri t\u00f6\u00f6 ajal. Versioonis 5.7 tehti kontroll failistatistika alusel, mis ei olnud ideaalne lahendus, ja versioonis 8.0 asendati see SHA256 kontrollsummaga.<\/p>\n<p>Esimese k\u00e4ivitamise ajal arvutatakse keyring_file'i statistika ja kontrollsumma, mis salvestatakse serverisse, ning muudatusi rakendatakse ainult siis, kui need vastavad. Faili muutmisel uuendatakse kontrollsummat.<\/p>\n<p>Oleme juba k\u00e4sitlenud paljusid teemasid v\u00f5tmehoidlate kohta. Kuid on veel \u00fcks oluline teema, mida sageli unustatakse v\u00f5i valesti m\u00f5istetakse \u2014 v\u00f5tmete jagamine serverite vahel. <\/p>\n<p>Mida ma silmas pean? Igal serveril (nt Percona Server) klastris peab olema Vault serveris eraldi koht, kus Percona Server peab oma v\u00f5tmed hoidma. Igas Vaultis talletatud Master Key sisaldab GUID'i Percona Serveri identifikaatori sees. Miks see oluline on? Kujutage ette, et teil on ainult \u00fcks Vault Server ja k\u00f5ik Percona Serverid klastris kasutavad seda \u00fchte Vault Serverit. Probleem tundub olevat ilmne. Kui k\u00f5ik Percona Serverid kasutaksid Master Keyd ilma ainulaadsete identifikaatoriteta, n\u00e4iteks id = 1, id = 2 jne, kasutaksid k\u00f5ik klastris olevad serverid sama Master Keyd. Mis tagabki GUID \u2014 eristuse serverite vahel. Miks siis r\u00e4\u00e4kida v\u00f5tmete jagamisest serverite vahel, kui juba eksisteerib ainulaadne GUID? On veel \u00fcks pistikprogramm \u2014 keyring_udf. Selle pistikprogrammi abil v\u00f5ib teie serveri kasutaja hoida oma v\u00f5tmeid Vault serveris. Probleem tekib siis, kui kasutaja loob v\u00f5tme, n\u00e4iteks serveris server1, ja seej\u00e4rel p\u00fc\u00fcab luua v\u00f5tme sama identifikaatoriga serveris server2, n\u00e4iteks:<\/p>\n<pre><code class=\"sql\">--server1:\nselect keyring_key_store('ROB_1','AES',\"123456789012345\");\n1\n--1 t\u00e4hendab edukat t\u00e4itmist\n--server2:\nselect keyring_key_store('ROB_1','AES',\"543210987654321\");\n1<\/code><\/pre>\n<p>\nPalun oodake. M\u00f5lemad serverid kasutavad sama Vault Serverit, kas keyring_key_store funktsioon ei tohiks serveris server2 l\u00f5petada t\u00f5rget? Huvitav, et kui proovite sama teha \u00fchel serveril, siis saate t\u00f5rke:<\/p>\n<pre><code class=\"sql\">--server1:\nselect keyring_key_store('ROB_1','AES',\"123456789012345\");\n1\nselect keyring_key_store('ROB_1','AES',\"543210987654321\");\n0<\/code><\/pre>\n<p>\n\u00d5ige, ROB_1 juba eksisteerib.<\/p>\n<p>Arutame k\u00f5igepealt teist n\u00e4idet. Nagu me varem mainisime, cached keyring_vault v\u00f5i m\u00f5ni muu salvestuspesa (keyring) k\u00f5ik v\u00f5tmeidentifikaatorid m\u00e4llu. Nii et p\u00e4rast uue v\u00f5tme loomist lisatakse ROB_1 serverisse server1, ja lisaks sellele, et saata see v\u00f5ti Vault'i, lisatakse v\u00f5tme ka cache'i. N\u00fc\u00fcd, kui \u00fcritame sama v\u00f5tit teist korda lisada, kontrollib keyring_vault, kas see v\u00f5ti on cache'is olemas, ning tagastab t\u00f5rke. <\/p>\n<p>Esimeses olukorras on olukord teine. Serveritel server1 ja server2 on eraldi vahem\u00e4lud. P\u00e4rast ROB_1 klahvi lisamist serveri server1 ja Vault'i v\u00f5tme vahem\u00e4llu pole serveri server2 v\u00f5tme vahem\u00e4lu s\u00fcnkroonitud. Serveri server2 vahem\u00e4lus ei ole klahvi ROB_1. Seega salvestatakse klahv ROB_1 keyring_key_store'isse ja Vault'is, mis t\u00f5epoolest kirjutab (!) \u00fcle eelneva v\u00e4\u00e4rtuse. N\u00fc\u00fcd on klahv ROB_1 Vault'is v\u00f5rdne 543210987654321. Huvitav, et Vault ei blokeeri selliseid toiminguid ja kirjutab vanad v\u00e4\u00e4rtused lihtsalt \u00fcle.<\/p>\n<p>N\u00fc\u00fcd n\u00e4eme, miks serverite kaupa eraldamine Vault'is v\u00f5ib olla oluline \u2014 kui kasutate keyring_udf-d ja soovite klahve Vault'is salvestada. Kuidas tagada selline eraldamine Vault'i serveris? <\/p>\n<p>Vault'i eraldamiseks on kaks v\u00f5imalust. Saate iga serveri jaoks luua erinevad montaa\u017eipunktid v\u00f5i kasutada erinevaid teid \u00fches montaa\u017eipunktis. Parim on seda n\u00e4idata n\u00e4idete kaudu. Alustame aga eraldi montaa\u017eipunktidest: <\/p>\n<pre><code class=\"sql\">--server1:\nvault_url = http:\/\/127.0.0.1:8200\nsecret_mount_point = server1_mount\ntoken = (...)\nvault_ca = (...)\n\n--server2:\nvault_url = http:\/\/127.0.0.1:8200\nsecret_mount_point = server2_mount\ntoken = (...)\nvault_ca = (...)<\/code><\/pre>\n<p>\nSiit on n\u00e4ha, et server1 ja server2 kasutavad erinevaid mount-punkte. Tee jagamisel n\u00e4eb konfiguratsioon v\u00e4lja j\u00e4rgmine:<\/p>\n<pre><code class=\"sql\">--server1:\nvault_url = http:\/\/127.0.0.1:8200\nsecret_mount_point = mount_point\/server1\ntoken = (...)\nvault_ca = (...)\n--server2:\nvault_url = http:\/\/127.0.0.1:8200\nsecret_mount_point = mount_point\/server2\ntoken = (...)\nvault_ca = (...)<\/code><\/pre>\n<p>\nSelles olukorras kasutavad m\u00f5lemad serverid \u00fchte ja sama mount-punkti \u201emount_point\u201c, kuid erinevaid teid. Kui serveris server1 luuakse esimene saladus sellel teel, loob Vaulti server automaatselt katalooge \u201eserver1\u201c. Server2 puhul on k\u00f5ik samamoodi. Kui kustutate viimase saladuse mount_point\/server1 v\u00f5i mount_point\/server2, kustutab Vaulti server samuti need kataloogid. Kui kasutate teede jagamist, peate looma ainult \u00fche mount-punkti ja muutma konfiguratsioonifailid nii, et serverid kasutaksid eraldi teid. Mount-punkti saab luua HTTP-p\u00e4ringu kaudu. CURL-iga saab seda teha j\u00e4rgmiselt:<\/p>\n<pre><code class=\"sql\">curl -L -H \"X-Vault-Token: TOKEN\" \u2013cacert VAULT_CA\n--data '{\"type\":\"generic\"}' --request POST VAULT_URL\/v1\/sys\/mounts\/SECRET_MOUNT_POINT<\/code><\/pre>\n<p>\nK\u00f5ik v\u00e4ljad (TOKEN, VAULT_CA, VAULT_URL, SECRET_MOUNT_POINT) vastavad konfiguratsioonifaili n\u00f5uetele. Loomulikult on v\u00f5imalik kasutada Vault utiliite samu asju teha. Kuid nii on lihtsam automatiseerida montaa\u017eikoha loomist. Loodan, et see teave on teile kasulik ja n\u00e4eme j\u00e4rgmistes artiklites sellest sarjast.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/luFp\/\"><img decoding=\"async\" alt=\"Kr\u00fcptimine MySQL-is: v\u00f5tmehoidla\" src=\"\/wp-content\/uploads\/2020\/10\/291dcdd68660bfc312021582baa628ab.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<blockquote>\n<h4>Loe edasi:<\/h4>\n<p><\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/otus\/blog\/497466\/\">Sysbench ja juhuslike suuruste jaotumine<\/a><\/noindex><\/li>\n<\/ul>\n<\/blockquote>\n<p>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/otus\/blog\/522092\/\">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 \u00ab\u0411\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445\u00bb \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b\u0438 \u0434\u043b\u044f \u0432\u0430\u0441 \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438. \u041f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0435 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 (Transparent Data Encryption, TDE) \u043f\u043e\u044f\u0432\u0438\u043b\u043e\u0441\u044c \u0432 Percona Server for MySQL \u0438 MySQL \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0434\u0430\u0432\u043d\u043e. \u041d\u043e \u0437\u0430\u0434\u0443\u043c\u044b\u0432\u0430\u043b\u0438\u0441\u044c \u043b\u0438 \u0432\u044b \u043a\u043e\u0433\u0434\u0430-\u043d\u0438\u0431\u0443\u0434\u044c \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043e\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u043e\u0434 \u043a\u0430\u043f\u043e\u0442\u043e\u043c \u0438 \u043a\u0430\u043a\u043e\u0435 \u0432\u043b\u0438\u044f\u043d\u0438\u0435 TDE \u043c\u043e\u0436\u0435\u0442 \u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043d\u0430 \u0432\u0430\u0448 \u0441\u0435\u0440\u0432\u0435\u0440? \u0412 \u044d\u0442\u043e\u0439 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":97665,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-97664","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\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b\u0438 \u0434\u043b\u044f \u0432\u0430\u0441 \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438. \u041f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0435 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 (Transparent Data Encryption, TDE) \u043f\u043e\u044f\u0432\u0438\u043b\u043e\u0441\u044c \u0432 Percona Server for MySQL \u0438 MySQL \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0434\u0430\u0432\u043d\u043e. \u041d\u043e \u0437\u0430\u0434\u0443\u043c\u044b\u0432\u0430\u043b\u0438\u0441\u044c \u043b\u0438 \u0432\u044b \u043a\u043e\u0433\u0434\u0430-\u043d\u0438\u0431\u0443\u0434\u044c \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043e\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u043e\u0434 \u043a\u0430\u043f\u043e\u0442\u043e\u043c \u0438 \u043a\u0430\u043a\u043e\u0435 \u0432\u043b\u0438\u044f\u043d\u0438\u0435 TDE \u043c\u043e\u0436\u0435\u0442 \u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043d\u0430 \u0432\u0430\u0448 \u0441\u0435\u0440\u0432\u0435\u0440? \u0412 \u044d\u0442\u043e\u0439\" \/>\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\/et\/blog\/administrirovanie\/shifrovanie-v-mysql-hranilishhe-klyuchej\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\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: \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043a\u043b\u044e\u0447\u0435\u0439 | 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\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b\u0438 \u0434\u043b\u044f \u0432\u0430\u0441 \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438. \u041f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0435 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 (Transparent Data Encryption, TDE) \u043f\u043e\u044f\u0432\u0438\u043b\u043e\u0441\u044c \u0432 Percona Server for MySQL \u0438 MySQL \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0434\u0430\u0432\u043d\u043e. \u041d\u043e \u0437\u0430\u0434\u0443\u043c\u044b\u0432\u0430\u043b\u0438\u0441\u044c \u043b\u0438 \u0432\u044b \u043a\u043e\u0433\u0434\u0430-\u043d\u0438\u0431\u0443\u0434\u044c \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043e\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u043e\u0434 \u043a\u0430\u043f\u043e\u0442\u043e\u043c \u0438 \u043a\u0430\u043a\u043e\u0435 \u0432\u043b\u0438\u044f\u043d\u0438\u0435 TDE \u043c\u043e\u0436\u0435\u0442 \u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043d\u0430 \u0432\u0430\u0448 \u0441\u0435\u0440\u0432\u0435\u0440? \u0412 \u044d\u0442\u043e\u0439\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/shifrovanie-v-mysql-hranilishhe-klyuchej\" \/>\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:20+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-10-20T06:42:20+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\udd47Kr\u00fcptimine MySQL-is: v\u00f5tmehoidla | ProHoster","description":"Uue kursuse \u201eAndmebaasid\u201d k\u00e4ivitamise eel oleme valmistanud teile kasuliku artikli t\u00f5lke. L\u00e4bipaistev andmete kr\u00fcptimine (Transparent Data Encryption, TDE) on Percona Server for MySQL ja MySQL-is olnud juba m\u00f5nda aega. Kuid kas olete kunagi m\u00f5elnud, kuidas see t\u00f6\u00f6d teeb ja millist m\u00f5ju TDE v\u00f5ib teie serverile avaldada? Selles","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/shifrovanie-v-mysql-hranilishhe-klyuchej","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","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: \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043a\u043b\u044e\u0447\u0435\u0439 | 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\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b\u0438 \u0434\u043b\u044f \u0432\u0430\u0441 \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438. \u041f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0435 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 (Transparent Data Encryption, TDE) \u043f\u043e\u044f\u0432\u0438\u043b\u043e\u0441\u044c \u0432 Percona Server for MySQL \u0438 MySQL \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0434\u0430\u0432\u043d\u043e. \u041d\u043e \u0437\u0430\u0434\u0443\u043c\u044b\u0432\u0430\u043b\u0438\u0441\u044c \u043b\u0438 \u0432\u044b \u043a\u043e\u0433\u0434\u0430-\u043d\u0438\u0431\u0443\u0434\u044c \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043e\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u043e\u0434 \u043a\u0430\u043f\u043e\u0442\u043e\u043c \u0438 \u043a\u0430\u043a\u043e\u0435 \u0432\u043b\u0438\u044f\u043d\u0438\u0435 TDE \u043c\u043e\u0436\u0435\u0442 \u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043d\u0430 \u0432\u0430\u0448 \u0441\u0435\u0440\u0432\u0435\u0440? \u0412 \u044d\u0442\u043e\u0439","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/shifrovanie-v-mysql-hranilishhe-klyuchej","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:20+00:00","article:modified_time":"2020-10-20T06:42:20+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"97664","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:50"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/97664","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=97664"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/97664\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/97665"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=97664"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=97664"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=97664"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}