{"id":105815,"date":"2022-12-03T15:36:44","date_gmt":"2022-12-03T13:36:46","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/okolo-21-novogo-kompiliruemogo-koda-v-android-13-napisano-na-yazyke-rust"},"modified":"2022-12-03T15:36:44","modified_gmt":"2022-12-03T13:36:46","slug":"okolo-21-novogo-kompiliruemogo-koda-v-android-13-napisano-na-yazyke-rust","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sk\/blog\/news\/okolo-21-novogo-kompiliruemogo-koda-v-android-13-napisano-na-yazyke-rust","title":{"rendered":"Okolo 21 % nov\u00e9ho kompilovan\u00e9ho k\u00f3du v Android 13 je nap\u00edsan\u00e9 v jazyku Rust","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>In\u017einieri spolo\u010dnosti Google zhrnuli prv\u00e9 v\u00fdsledky implement\u00e1cie podpory v\u00fdvoja v jazyku Rust na platforme Android. V Android 13 pribli\u017ene 21 % z nov\u00e9ho prid\u00e1van\u00e9ho kompilovate\u013en\u00e9ho k\u00f3du je nap\u00edsan\u00e9ho v Rust, zatia\u013e \u010do 79 % v C\/C++. V repozit\u00e1ri AOSP (Android Open Source Project), kde sa rozv\u00edjaj\u00fa zdrojov\u00e9 texty platformy Android, sa nach\u00e1dza pribli\u017ene 1,5 mili\u00f3na riadkov k\u00f3du v Rust s\u00favisiaceho s nov\u00fdmi komponentmi, ako s\u00fa \u00falo\u017eisko kryptografick\u00fdch k\u013e\u00fa\u010dov Keystore2, z\u00e1sobn\u00edk pre UWB \u010dipy (Ultra-Wideband), implement\u00e1cia protokolu DNS-over-HTTP3, r\u00e1mec virtualiz\u00e1cie AVF (Android Virtualization Framework) a experiment\u00e1lne z\u00e1sobn\u00edky pre Bluetooth a Wi-Fi.     <center><img decoding=\"async\" alt=\"Okolo 21 % nov\u00e9ho kompilovan\u00e9ho k\u00f3du v Android 13 je nap\u00edsan\u00e9 v jazyku Rust\" src=\"\/wp-content\/uploads\/2022\/12\/6299bf41b363367229b874699034b828.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center>    <\/p>\n<p>V s\u00falade s predt\u00fdm prijatou strat\u00e9giou zn\u00ed\u017eenia rizika vzniku zranite\u013enost\u00ed sp\u00f4soben\u00fdch chybami pri pr\u00e1ci s pam\u00e4\u0165ou, sa jazyk Rust zatia\u013e pou\u017e\u00edva najm\u00e4 pri v\u00fdvoji nov\u00e9ho k\u00f3du a na postupn\u00e9 posil\u0148ovanie bezpe\u010dnosti najzranite\u013enej\u0161\u00edch a \u017eivotne d\u00f4le\u017eit\u00fdch softv\u00e9rov\u00fdch komponentov. Celkov\u00fd cie\u013e previes\u0165 cel\u00fa platformu na Rust nie je stanoven\u00fd a star\u00fd k\u00f3d ost\u00e1va na C\/C++, pri\u010dom boj s chybami v \u0148om sa uskuto\u010d\u0148uje prostredn\u00edctvom fuzzing testovania, statickej anal\u00fdzy a techn\u00edk v\u00fdvoja podobn\u00fdch typu MiraclePtr (z\u00e1bal nad raw ukazovate\u013emi, ktor\u00fd vykon\u00e1va dodato\u010dn\u00e9 kontroly pr\u00edstupu k uvo\u013enen\u00fdm oblastiam pam\u00e4te), syst\u00e9mu rozde\u013eovania pam\u00e4te Scudo (bezpe\u010dn\u00e1 n\u00e1hrada malloc\/free) a mechanizmov na odha\u013eovanie ch\u00fdb pri pr\u00e1ci s pam\u00e4\u0165ou HWAsan (Hardware-assisted AddressSanitizer), GWP-ASAN a KFENCE.           <\/p>\n<p>Pokia\u013e ide o \u0161tatistiku zranite\u013enost\u00ed v platforme Android, pozoruje sa, \u017ee s poklesom nov\u00e9ho k\u00f3du, ktor\u00fd nebezpe\u010dne manipuluje s pam\u00e4\u0165ou, kles\u00e1 aj po\u010det zranite\u013enost\u00ed sp\u00f4soben\u00fdch chybami pri pr\u00e1ci s pam\u00e4\u0165ou. Napr\u00edklad podiel zranite\u013enost\u00ed sp\u00f4soben\u00fdch probl\u00e9mami s pam\u00e4\u0165ou sa zn\u00ed\u017eil z 76 % v roku 2019 na 35 % v roku 2022. V absol\u00fatnych \u010d\u00edslach bolo v roku 2019 zisten\u00fdch 223 zranite\u013enost\u00ed s\u00favisiacich s manipul\u00e1ciou s pam\u00e4\u0165ou, v roku 2020 \u2014 150, v roku 2021 \u2014 100 a v roku 2022 \u2014 85 (v\u0161etky ozna\u010den\u00e9 zranite\u013enosti v k\u00f3de na C\/C++, v k\u00f3de na Rust podobn\u00e9 probl\u00e9my zatia\u013e neboli n\u00e1jden\u00e9). Rok 2022 sa stal prv\u00fdm rokom, v ktorom zranite\u013enosti s\u00favisiace s pam\u00e4\u0165ou prestali dominova\u0165.       <center><img decoding=\"async\" alt=\"Okolo 21 % nov\u00e9ho kompilovan\u00e9ho k\u00f3du v Android 13 je nap\u00edsan\u00e9 v jazyku Rust\" src=\"\/wp-content\/uploads\/2022\/12\/d75198f9cd7d0b5fdbaa22f56443267b.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center>      <\/p>\n<p>Preto\u017ee zranite\u013enosti s\u00favisiace s manipul\u00e1ciou s pam\u00e4\u0165ou s\u00fa obvykle najnebezpe\u010dnej\u0161ie, v\u0161eobecn\u00e9 \u0161tatistiky tie\u017e ukazuj\u00fa pokles po\u010dtu kritick\u00fdch probl\u00e9mov a probl\u00e9mov, ktor\u00e9 m\u00f4\u017eu by\u0165 zneu\u017eit\u00e9 na dia\u013eku. Pri\u010dom dynamika zis\u0165ovania zranite\u013enost\u00ed nes\u00favisiacich s manipul\u00e1ciou s pam\u00e4\u0165ou sa v posledn\u00fdch 4 rokoch udr\u017eiava na pribli\u017ene rovnakej \u00farovni \u2014 20 zranite\u013enost\u00ed mesa\u010dne. Zost\u00e1va aj podiel nebezpe\u010dn\u00fdch probl\u00e9mov medzi zranite\u013enos\u0165ami sp\u00f4soben\u00fdmi chybami pri manipul\u00e1cii s pam\u00e4\u0165ou (ale preto\u017ee sa zni\u017euje po\u010det tak\u00fdchto zranite\u013enost\u00ed, zni\u017euje sa aj po\u010det nebezpe\u010dn\u00fdch probl\u00e9mov).      <center><img decoding=\"async\" alt=\"Okolo 21 % nov\u00e9ho kompilovan\u00e9ho k\u00f3du v Android 13 je nap\u00edsan\u00e9 v jazyku Rust\" src=\"\/wp-content\/uploads\/2022\/12\/3dd83819e02c176dd56ea170513a07f4.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center>            <\/p>\n<p>V \u0161tatistike sa tie\u017e sleduje korel\u00e1cia medzi objemom nov\u00e9ho k\u00f3du, ktor\u00fd neprezrete\u013ene pracuje s pam\u00e4\u0165ou, a po\u010dtom zranite\u013enost\u00ed s\u00favisiacich s pam\u00e4\u0165ou (preplnenie z\u00e1sobn\u00edka, pr\u00edstup k u\u017e uvo\u013enenej pam\u00e4ti at\u010f.). Toto pozorovanie potvrdzuje predpoklad, \u017ee prim\u00e1rna pozornos\u0165 pri zav\u00e1dzan\u00ed techn\u00edk bezpe\u010dn\u00e9ho programovania by sa mala venova\u0165 nov\u00e9mu k\u00f3du, nie prer\u00e1baniu existuj\u00faceho, preto\u017ee v\u00e4\u010d\u0161ina zis\u0165ovan\u00fdch zranite\u013enost\u00ed sa t\u00fdka nov\u00e9ho k\u00f3du.       <center><img decoding=\"async\" alt=\"Okolo 21 % nov\u00e9ho kompilovan\u00e9ho k\u00f3du v Android 13 je nap\u00edsan\u00e9 v jazyku Rust\" src=\"\/wp-content\/uploads\/2022\/12\/754ec48c806a10ebc7dbec33c78241f1.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center><br \/>\n<br \/>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=58249\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0418\u043d\u0436\u0435\u043d\u0435\u0440\u044b \u0438\u0437 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Google \u043f\u043e\u0434\u0432\u0435\u043b\u0438 \u043f\u0435\u0440\u0432\u044b\u0435 \u0438\u0442\u043e\u0433\u0438 \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u044f \u0432 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0443 Android \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust. \u0412 Android 13 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 21% \u043e\u0442 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u043d\u0430 Rust, \u0430 79% \u043d\u0430 C\/C++. \u0412 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 AOSP (Android Open Source Project), \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u0442\u0435\u043a\u0441\u0442\u044b \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Android, \u043d\u0430\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 1.5 \u043c\u043b\u043d \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u0434\u0430 \u043d\u0430 Rust, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":105816,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-105815","post","type-post","status-publish","format-standard","has-post-thumbnail","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=\"\u0418\u043d\u0436\u0435\u043d\u0435\u0440\u044b \u0438\u0437 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Google \u043f\u043e\u0434\u0432\u0435\u043b\u0438 \u043f\u0435\u0440\u0432\u044b\u0435 \u0438\u0442\u043e\u0433\u0438 \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u044f \u0432 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0443 Android \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust. \u0412 Android 13 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 21% \u043e\u0442 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u043d\u0430 Rust, \u0430 79% \u043d\u0430 C\/C++.\" \/>\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\/sk\/blog\/news\/okolo-21-novogo-kompiliruemogo-koda-v-android-13-napisano-na-yazyke-rust\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sk_SK\" \/>\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\u041e\u043a\u043e\u043b\u043e 21% \u043d\u043e\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0432 Android 13 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0418\u043d\u0436\u0435\u043d\u0435\u0440\u044b \u0438\u0437 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Google \u043f\u043e\u0434\u0432\u0435\u043b\u0438 \u043f\u0435\u0440\u0432\u044b\u0435 \u0438\u0442\u043e\u0433\u0438 \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u044f \u0432 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0443 Android \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust. \u0412 Android 13 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 21% \u043e\u0442 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u043d\u0430 Rust, \u0430 79% \u043d\u0430 C\/C++.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sk\/blog\/news\/okolo-21-novogo-kompiliruemogo-koda-v-android-13-napisano-na-yazyke-rust\" \/>\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=\"2022-12-03T13:36:46+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2022-12-03T13:36:46+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\udd47Pribli\u017ene 21% nov\u00e9ho kompilovate\u013en\u00e9ho k\u00f3du v Android 13 je nap\u00edsan\u00e9ho v jazyku Rust | ProHoster","description":"In\u017einieri zo spolo\u010dnosti Google zhrnuli prv\u00e9 v\u00fdsledky podpory v\u00fdvoja v jazyku Rust na platforme Android. V Android 13 je pribli\u017ene 21% nov\u00e9ho kompilovate\u013en\u00e9ho k\u00f3du nap\u00edsan\u00e9ho v Rust a 79% v C\/C++.","canonical_url":"https:\/\/prohoster.info\/sk\/blog\/news\/okolo-21-novogo-kompiliruemogo-koda-v-android-13-napisano-na-yazyke-rust","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sk_SK","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\u041e\u043a\u043e\u043b\u043e 21% \u043d\u043e\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0432 Android 13 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust | ProHoster","og:description":"\u0418\u043d\u0436\u0435\u043d\u0435\u0440\u044b \u0438\u0437 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Google \u043f\u043e\u0434\u0432\u0435\u043b\u0438 \u043f\u0435\u0440\u0432\u044b\u0435 \u0438\u0442\u043e\u0433\u0438 \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u044f \u0432 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0443 Android \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust. \u0412 Android 13 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 21% \u043e\u0442 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u043d\u0430 Rust, \u0430 79% \u043d\u0430 C\/C++.","og:url":"https:\/\/prohoster.info\/sk\/blog\/news\/okolo-21-novogo-kompiliruemogo-koda-v-android-13-napisano-na-yazyke-rust","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":"2022-12-03T13:36:46+00:00","article:modified_time":"2022-12-03T13:36:46+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/105815","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/comments?post=105815"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/105815\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media\/105816"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media?parent=105815"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/categories?post=105815"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/tags?post=105815"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}