{"id":110721,"date":"2023-10-10T15:10:19","date_gmt":"2023-10-10T13:10:19","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/google-perepisal-na-yazyke-rust-proshivku-pvmfm-ispolzuemuyu-v-android"},"modified":"2023-10-10T15:10:19","modified_gmt":"2023-10-10T13:10:19","slug":"google-perepisal-na-yazyke-rust-proshivku-pvmfm-ispolzuemuyu-v-android","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/news\/google-perepisal-na-yazyke-rust-proshivku-pvmfm-ispolzuemuyu-v-android","title":{"rendered":"Google on Rusti keeles \u00fcmber kirjutanud Androidis kasutatava pvmfm p\u00fcsivara","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Androidi platvormi kriitiliselt t\u00e4htsate tarkvarakomponentide turvalisuse suurendamise raames on Google \u00fcmber kirjutanud pvmfm p\u00fcsivara Rusti keeles, mida kasutatakse virtuaalmasinate t\u00f6\u00f6 korraldamiseks, mida k\u00e4itatakse Android Virtualization Frameworki osana pVM h\u00fcperviisori poolt. Varem oli p\u00fcsivara kirjutatud C keeles ja realiseeritud U-Booti laadijale, mille koodis on varem leitud haavatavusi, mis on p\u00f5hjustatud m\u00e4luga seotud probleemidest.     <\/p>\n<p>Rustis \u00fcmber kirjutatud p\u00fcsivara on lisatud Android 14-sse, samas kui arendusprotsessi k\u00e4igus loodud universaalsed teegid on vormindatud crate-pakettideks ja edastatud Rusti kogukonnale. N\u00e4iteks on avaldatud paketid smccc, et toetada ARM-i liideseid PSCI (Power State Coordination Interface) ja SMCCC (SMC Calling Convention) kutseid, ning aarch64-paging pakett m\u00e4lu lehtede tabelite manipuleerimiseks. Samuti on v\u00e4lja t\u00f6\u00f6tatud olemasoleva virtio-drivers paketi vigu parandamise ja funktsionaalsuse suurendamise t\u00f6\u00f6, et rakendada VirtIO draivereid. Lisaks Androidi platvormile kasutatakse neid pakette ka Oak-projektis, mis arendab komponente andmete edastamiseks, salvestamiseks ja t\u00f6\u00f6tlemiseks usaldusv\u00e4\u00e4rsetes keskkondades (TEE, Trusted Execution Environment).        <\/p>\n<p>H\u00fcperviisor pVM saab juhtimise varajases laadimisetapis ja tagab m\u00e4lu t\u00e4ieliku isoleerituse <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/et\/vps\/\"   title=\"virtuaalmasinate\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"2070\">virtuaalmasinate<\/a> ja host-\u00f6kos\u00fcsteemi, takistades host-s\u00fcsteemil juurdep\u00e4\u00e4su kaitstud virtuaalmasinatele, kus t\u00f6\u00f6deldakse konfidentsiaalset teavet. pvmfm (Protected Virtual Machine Firmware) p\u00fcsivara saab juhtimise kohe p\u00e4rast virtuaalse masina k\u00e4ivitamist, kontrollib loodud keskkonda ning otsustab laadimise kriitilise peatamise v\u00f5i genereerib k\u00fclgsertifikaadi k\u00fclalis\u00fcsteemile, kui usaldusketti on kinnitatud.            <\/p>\n<p>Rust-i keelest \u00fclesehitus v\u00f5imaldab lihtsamalt ja turvalisemalt j\u00e4rgida Google'i \u201ekahte reeglit\u201d, mida rakendatakse Androidi s\u00fcsteemikomponentide turvalisuse tagamiseks. Selle reegli kohaselt peab lisatav kood vastama mitte rohkem kui kahele kolmest tingimusest: t\u00f6\u00f6tlus kontrollimata sisendandmetega, kasutamine ebaohutusse programmeerimiskeeles (C\/C++) ja k\u00f5rgete privileegidega t\u00e4itmine. Reeglist tuleneb, et v\u00e4liste andmete t\u00f6\u00f6tlemise kood peab kas olema piiratud minimaalsete privileegidega (isoleeritud) v\u00f5i olema kirjutatud ohutusse programmeerimiskeeles. Google'i andmete kohaselt p\u00f5hjustavad ligikaudu 70% Androidis tuvastatud ohtlikest haavatavustest m\u00e4luhaldusvead.     <\/p>\n<p>Rust keskendub m\u00e4lut\u00f6\u00f6 turvalisusele ning aitab v\u00e4hendada ohtu haavatavuste tekkimisele, mis on p\u00f5hjustatud probleemidest, nagu m\u00e4lu juurde p\u00e4\u00e4semine p\u00e4rast selle vabastamist ja m\u00e4lupuhvri \u00fcletamine. Rust tagab m\u00e4lut\u00f6\u00f6 turvalisuse kompilatsiooni ajal, kontrollides viiteid, j\u00e4lgides objektide omandi\u00f5igust ja arvestades objektide eluts\u00fcklit (nende n\u00e4htavuse perioodi) ning hindab ka m\u00e4lule juurdep\u00e4\u00e4su \u00f5igsust koodi t\u00e4itmise ajal. Rust pakub samuti vahendeid t\u00e4isarvude \u00fclet\u00e4itumise kaitsmiseks, n\u00f5uab muutuja v\u00e4\u00e4rtuste kohustuslikku initsialiseerimist enne kasutamist, k\u00e4sitleb vigu paremini standardraamatukogus, rakendab muutumatute (immutable) viidete ja muutujate kontseptsiooni vaikimisi ning pakub tugevat staatilist t\u00fc\u00fcpimist loogiliste vigade minimeerimiseks.    <\/p>\n<p>Rust-keeles madala taseme komponentide, nagu draiverite, arendamisel esinevad raskused h\u00f5lmavad vajadust t\u00f6\u00f6tada paljade viidete (bare pointers) kasutamisega unsafe-re\u017eiimis, kuna Rust on loodud silmas pidades programmi m\u00e4lu kasutamist, ning koodis, mis t\u00f6\u00f6tab otse riistvaral, tuleb tegeleda jagatud m\u00e4lu ja MMIO-ga. Praegu on Rusti v\u00f5imalused paljude viidete kasutamiseks veel arendamisel, kuid olukord peaks paranema p\u00e4rast makrode offset_of, slice_ptr_get ja slice_ptr_len stabiliseerimist.       <\/p>\n<p>Puudustena v\u00e4\u00e4rib t\u00e4helepanu vajadus parandada s\u00fcntaksit struktuuriv\u00e4ljade ja massiivide indeksite juurde p\u00e4\u00e4semiseks paljaste n\u00e4idikute kaudu, ilma linkide loomise vajaduseta, samuti piirangud ohutute m\u00e4histe loomisel unsafe-operatsioonide \u00fcle, mis v\u00f5ivad p\u00f5hjustada m\u00e4\u00e4ramatut k\u00e4itumist ja mida kompilaator ei saa kontrollida. N\u00e4iteks ei saa selliseid m\u00e4hiseid luua m\u00e4lu lehek\u00fclgede toimingute jaoks, kuna lehek\u00fclgede kaardistamine \u00fche osa programmist v\u00f5ib m\u00f5jutada teisi osi.     <\/p>\n<p>Mis puudutab tulemuskoodi suurust, siis vana pVM-i tarkvara versioon oli 220 kB, uus aga 460 kB, kuid lisatud uute funktsioonide t\u00f5ttu \u00f5nnestus m\u00f5ned teised iga\u00fche k\u00e4ivitamiseks vajalikud komponendid k\u00f5rvaldada. L\u00f5pptulemuseks on, et vanade ja uute k\u00e4ivitamise komponentide kogusuurus oli v\u00f5rdne. Toodud on v\u00e4lja, et kui suurus on t\u00f5hususe k\u00f5rval t\u00e4htsam, saab C keelega sarnaseid tulemusi saavutada, kui l\u00fclitada kompilaatorisse sisse t\u00e4iendavad optimeerimisre\u017eiimid suuruse osas, eemaldada tarbetud s\u00f5ltuvused ja mitte kasutada stringide vormindamise vahendeid.    <\/p>\n<p>Lisaks mainitakse, et j\u00e4tkatakse usaldusv\u00e4\u00e4rsete rakenduste (Trusted Application) k\u00e4ivitamise v\u00f5imaluse rakendamist Rust keeles Trusty operatsioonis\u00fcsteemis, mis pakub TEE-keskkonda (Trusted Execution Environment) Androidile, mis t\u00f6\u00f6tavad sama protsessori isolatsioonis eraldi keskkonnas paralleelselt Androidiga. Trusty kasutatakse Pixel-seadmetes ja juba kasutatakse Rusti raamatukogudes ja s\u00fcsteemi komponentides (tuum j\u00e4\u00e4b C keeles).<br \/>\n<br \/>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=59900\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u0440\u0430\u043c\u043a\u0430\u0445 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u0443\u0441\u0438\u043b\u0435\u043d\u0438\u044e \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0430\u0436\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Android \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u043b\u0430 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0443 pvmfm, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0443\u044e \u0434\u043b\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c\u044b\u0445 \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440\u043e\u043c pVM \u0438\u0437 \u0441\u043e\u0441\u0442\u0430\u0432\u0430 Android Virtualization Framework. \u0420\u0430\u043d\u0435\u0435 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0430 \u0431\u044b\u043b\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u0421\u0438 \u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u043f\u043e\u0432\u0435\u0440\u0445 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0430 U-Boot, \u0432 \u043a\u043e\u0434\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0440\u0430\u043d\u0435\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u043b\u0438 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438, \u0432\u044b\u0437\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430\u043c\u0438 \u043f\u0440\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-110721","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u0440\u0430\u043c\u043a\u0430\u0445 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u0443\u0441\u0438\u043b\u0435\u043d\u0438\u044e \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0430\u0436\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Android \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u043b\u0430 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0443 pvmfm, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0443\u044e \u0434\u043b\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d.\" \/>\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\/news\/google-perepisal-na-yazyke-rust-proshivku-pvmfm-ispolzuemuyu-v-android\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\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\udd47Google \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u043b \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0443 pvmfm, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0443\u044e \u0432 Android | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u0440\u0430\u043c\u043a\u0430\u0445 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u0443\u0441\u0438\u043b\u0435\u043d\u0438\u044e \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0430\u0436\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Android \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u043b\u0430 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0443 pvmfm, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0443\u044e \u0434\u043b\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/news\/google-perepisal-na-yazyke-rust-proshivku-pvmfm-ispolzuemuyu-v-android\" \/>\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=\"2023-10-10T13:10:19+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2023-10-10T13:10:19+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\udd47Google on \u00fcmber kirjutanud pvmfm-firmware\u2019i Rust keeles, mida kasutatakse Androidis | ProHoster","description":"Google on Androidi platvormi kriitiliselt oluliste tarkvarakomponentide turvalisuse suurendamise raames \u00fcmber kirjutanud pvmfm-firmware\u2019i Rust keeles, mida kasutatakse virtuaalmasinate haldamiseks.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/news\/google-perepisal-na-yazyke-rust-proshivku-pvmfm-ispolzuemuyu-v-android","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\udd47Google \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u043b \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0443 pvmfm, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0443\u044e \u0432 Android | ProHoster","og:description":"\u0412 \u0440\u0430\u043c\u043a\u0430\u0445 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u0443\u0441\u0438\u043b\u0435\u043d\u0438\u044e \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0430\u0436\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Android \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u043b\u0430 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0443 pvmfm, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0443\u044e \u0434\u043b\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d.","og:url":"https:\/\/prohoster.info\/et\/blog\/news\/google-perepisal-na-yazyke-rust-proshivku-pvmfm-ispolzuemuyu-v-android","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":"2023-10-10T13:10:19+00:00","article:modified_time":"2023-10-10T13:10:19+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"110721","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":"default","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":"2026-02-09 17:11:16","updated":"2026-02-09 17:11:16","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/110721","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=110721"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/110721\/revisions"}],"predecessor-version":[{"id":159314,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/110721\/revisions\/159314"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=110721"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=110721"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=110721"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}