{"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\/sv\/blog\/news\/google-perepisal-na-yazyke-rust-proshivku-pvmfm-ispolzuemuyu-v-android","title":{"rendered":"Google har skrivit om firmware pvmfm, som anv\u00e4nds i Android, p\u00e5 spr\u00e5ket Rust","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Som en del av arbetet med att \u00f6ka s\u00e4kerheten f\u00f6r kritiska programkomponenter p\u00e5 Android-plattformen har Google skrivit om pvmfm-firmwaret p\u00e5 Rust, som anv\u00e4nds f\u00f6r att organisera arbetet med virtuella maskiner som startas av hypervisorn pVM inom ramen f\u00f6r Android Virtualization Framework. Tidigare var firmwaret skrivet i C och implementerat ovanp\u00e5 U-Boot-bootloadern, d\u00e4r man tidigare uppt\u00e4ckte s\u00e5rbarheter orsakade av minnesproblem.     <\/p>\n<p>Den omarbetade Rust-firmwaret \u00e4r inkluderat i Android 14, och de universella bibliotek som skapades under utvecklingen av firmwaret \u00e4r dokumenterade som crate-paket och \u00f6verl\u00e4mnade till Rust-gemenskapen. Till exempel publicerades paketet smccc f\u00f6r st\u00f6d av ARM-gr\u00e4nssnitt PSCI (Power State Coordination Interface) och anrop av SMCCC (SMC Calling Convention), samt paketet aarch64-paging f\u00f6r hantering av minnestabeller. Det har ocks\u00e5 genomf\u00f6rts arbete f\u00f6r att \u00e5tg\u00e4rda buggar och ut\u00f6ka funktionaliteten hos det befintliga paketet virtio-drivers genom implementering av VirtIO-drivrutiner. Ut\u00f6ver Android-plattformen anv\u00e4nds dessa paket i Oak-projektet, som utvecklar komponenter f\u00f6r \u00f6verf\u00f6ring, lagring och behandling av data i skyddade milj\u00f6er (TEE, Trusted Execution Environment).        <\/p>\n<p>Hypervisorn pVM f\u00e5r kontroll tidigt under uppstarten och s\u00e4kerst\u00e4ller fullst\u00e4ndig isolering av minnet <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/sv\/vps\/\"   title=\"virtuella maskiner\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"2070\">virtuella maskiner<\/a> och v\u00e4rdmilj\u00f6n, vilket f\u00f6rhindrar att v\u00e4rdsystemet f\u00e5r \u00e5tkomst till de skyddade virtuella maskiner d\u00e4r konfidentiella data behandlas. pvmfm-firmwaret (Protected Virtual Machine Firmware) f\u00e5r kontroll direkt efter att den virtuella maskinen har startats, utf\u00f6r en kontroll av den skapade milj\u00f6n och fattar beslut om att avbryta uppstarten vid uppt\u00e4ckta problem med integriteten eller genererar ett startcertifikat f\u00f6r g\u00e4stsystemet om kedjan av f\u00f6rtroende bekr\u00e4ftas.            <\/p>\n<p>Omkodning i Rust m\u00f6jligg\u00f6r en enklare och s\u00e4krare efterlevnad av \"tv\u00e5regeln\", som Google till\u00e4mpar f\u00f6r att s\u00e4kerst\u00e4lla s\u00e4kerheten f\u00f6r systemkomponenter i Android. Enligt denna regel f\u00e5r den kod som l\u00e4ggs till inte uppfylla mer \u00e4n tv\u00e5 av tre villkor: arbete med os\u00e4krade indata, anv\u00e4ndning av os\u00e4kra programmeringsspr\u00e5k (C\/C++) och k\u00f6rning med f\u00f6rh\u00f6jda privilegier. Detta inneb\u00e4r att koden f\u00f6r att hantera externa data antingen m\u00e5ste begr\u00e4nsas till minimala privilegier (isolerad) eller skrivas p\u00e5 ett s\u00e4kert programmeringsspr\u00e5k. Statistik fr\u00e5n Google visar att cirka 70 % av alla farliga s\u00e5rbarheter som identifierades i Android orsakas av minneshanteringsfel.     <\/p>\n<p>Rust fokuserar p\u00e5 s\u00e4ker minneshantering och minskar risken f\u00f6r s\u00e5rbarheter orsakade av problem som \u00e5tkomst till minnesomr\u00e5den efter att de har frigjorts och buffert\u00f6verskridanden. S\u00e4ker minneshantering i Rust s\u00e4kerst\u00e4lls under kompilering genom referenskontroll, sp\u00e5rning av objekt\u00e4gande och objektens livscykel (synlighet), liksom genom korrekthetsbed\u00f6mning av minnes\u00e5tkomst under kodens k\u00f6rning. Rust tillhandah\u00e5ller ocks\u00e5 verktyg f\u00f6r att skydda mot heltals\u00f6verfl\u00f6d, kr\u00e4ver obligatorisk initialisering av variabelv\u00e4rden innan de anv\u00e4nds, hanterar fel b\u00e4ttre i standardbiblioteket, till\u00e4mpar konceptet av of\u00f6r\u00e4nderliga (immutable) referenser och variabler som standard och erbjuder stark statisk typning f\u00f6r att minimera logiska fel.    <\/p>\n<p>En av de utmaningar som uppst\u00e5r vid utveckling av l\u00e5gniv\u00e5komponenter i Rust, som drivrutiner, \u00e4r behovet av att arbeta med r\u00e5pekare i os\u00e4kert l\u00e4ge, eftersom Rust \u00e4r utformat med h\u00e4nsyn till minnesanv\u00e4ndning i programmet, och i kod som arbetar utan n\u00e5gra abstraktionslager \u00f6ver h\u00e5rdvaran m\u00e5ste man hantera delat minne och MMIO. F\u00f6r n\u00e4rvarande l\u00e4mnar Rusts kapacitet f\u00f6r arbete med r\u00e5pekare mycket att \u00f6nska, men situationen b\u00f6r f\u00f6rb\u00e4ttras efter stabilisering av st\u00f6d f\u00f6r makron offset_of, slice_ptr_get och slice_ptr_len.       <\/p>\n<p>Bland nackdelar finns behovet av f\u00f6rb\u00e4ttrad syntax f\u00f6r att komma \u00e5t f\u00e4lt i strukturer och index i arrayer via r\u00e5a pekare utan att skapa referenser, samt begr\u00e4nsningar vid skapandet av s\u00e4kra bindningar \u00f6ver os\u00e4kra operationer som kan orsaka of\u00f6ruts\u00e4gbart beteende och som inte kan verifieras av kompilatorn. Till exempel \u00e4r det om\u00f6jligt att skapa s\u00e5dana bindningar f\u00f6r operationer med minnessidor, eftersom mappning av sidor i en del av programmet kan p\u00e5verka andra delar.     <\/p>\n<p>N\u00e4r det g\u00e4ller storleken p\u00e5 den resulterande koden, s\u00e5 upptog den gamla versionen av pVM-firmware 220 kB, medan den nya versionen upptar 460 kB. Men i den omarbetade versionen har nya funktioner lagts till, vilket gjorde det m\u00f6jligt att bli av med vissa andra komponenter som anv\u00e4ndes vid uppstart. Resultatet \u00e4r att den totala storleken p\u00e5 alla gamla och nya uppstartskomponenter \u00e4r j\u00e4mf\u00f6rbar. Det p\u00e5pekas att n\u00e4r storlek \u00e4r viktigare \u00e4n prestanda, kan j\u00e4mf\u00f6rbara resultat med C-spr\u00e5ket uppn\u00e5s genom att inkludera ytterligare optimeringsl\u00e4gen f\u00f6r storlek i kompilatorn, rensa bort \u00f6verfl\u00f6diga beroenden och undvika att anv\u00e4nda str\u00e4ngformateringsverktyg.    <\/p>\n<p>Det n\u00e4mns dessutom att arbetet forts\u00e4tter med att implementera m\u00f6jligheten att k\u00f6ra p\u00e5litliga applikationer skrivna i Rust (Trusted Application) i operativsystemet Trusty, som tillhandah\u00e5ller en TEE-milj\u00f6 (Trusted Execution Environment) f\u00f6r Android, som k\u00f6rs parallellt med Android p\u00e5 samma processor i en separat isolerad milj\u00f6. Trusty anv\u00e4nds i Pixel-enheter och anv\u00e4nder redan Rust i bibliotek och systemkomponenter (k\u00e4rnan f\u00f6rblir p\u00e5 C).<br \/>\n<br \/>K\u00e4lla: <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.4 - 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\/sv\/blog\/news\/google-perepisal-na-yazyke-rust-proshivku-pvmfm-ispolzuemuyu-v-android\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sv_SE\" \/>\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\/sv\/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 har skrivit om pvmfm-firmware p\u00e5 Rust, som anv\u00e4nds i Android | ProHoster","description":"Som en del av arbetet f\u00f6r att \u00f6ka s\u00e4kerheten f\u00f6r kritiska programvarukomponenter p\u00e5 Android-plattformen, har Google skrivit om pvmfm-firmware p\u00e5 Rust, som anv\u00e4nds f\u00f6r att organisera arbetet med virtuella maskiner.","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/news\/google-perepisal-na-yazyke-rust-proshivku-pvmfm-ispolzuemuyu-v-android","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sv_SE","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\/sv\/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\/sv\/wp-json\/wp\/v2\/posts\/110721","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/comments?post=110721"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/110721\/revisions"}],"predecessor-version":[{"id":159314,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/110721\/revisions\/159314"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=110721"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=110721"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=110721"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}