{"id":99682,"date":"2021-04-07T16:22:45","date_gmt":"2021-04-07T14:22:46","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/rust-vklyuchyon-v-chislo-osnovnyh-yazykov-dlya-razrabotki-platformy-android"},"modified":"2021-04-07T16:22:45","modified_gmt":"2021-04-07T14:22:46","slug":"rust-vklyuchyon-v-chislo-osnovnyh-yazykov-dlya-razrabotki-platformy-android","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/news\/rust-vklyuchyon-v-chislo-osnovnyh-yazykov-dlya-razrabotki-platformy-android","title":{"rendered":"Rust se incluye entre los principales lenguajes para el desarrollo de la plataforma Android.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>La empresa Google anunci\u00f3 la inclusi\u00f3n del lenguaje de programaci\u00f3n Rust en la lista de lenguajes permitidos para el desarrollo de la plataforma Android. El compilador de Rust se incluy\u00f3 en la base de c\u00f3digo de Android en 2019, pero el soporte para este lenguaje hab\u00eda permanecido en estado experimental. Entre los primeros componentes en Rust que se planea incluir en Android est\u00e1n las nuevas implementaciones del mecanismo de comunicaci\u00f3n entre procesos Binder y la pila de Bluetooth.    <\/p>\n<p>La adopci\u00f3n de Rust se realiza en el marco de un proyecto para mejorar la seguridad, promover pr\u00e1cticas de programaci\u00f3n segura y aumentar la eficiencia en la detecci\u00f3n de problemas relacionados con la memoria en Android. Se se\u00f1ala que aproximadamente el 70% de todas las vulnerabilidades cr\u00edticas identificadas en Android son causadas por errores en la gesti\u00f3n de la memoria. La utilizaci\u00f3n del lenguaje Rust, que se centra en el manejo seguro de la memoria y proporciona gesti\u00f3n autom\u00e1tica de la misma, permitir\u00e1 reducir el riesgo de vulnerabilidades causadas por errores en la gesti\u00f3n de la memoria, tales como el acceso a \u00e1reas de memoria despu\u00e9s de haber sido liberadas o desbordamientos de b\u00fafer.    <\/p>\n<p>El manejo seguro de la memoria en Rust se garantiza durante la compilaci\u00f3n a trav\u00e9s de la verificaci\u00f3n de referencias, el seguimiento de la propiedad de los objetos y la consideraci\u00f3n del ciclo de vida de los objetos (\u00e1mbito), as\u00ed como mediante la evaluaci\u00f3n de la correcta acceso a la memoria durante la ejecuci\u00f3n del c\u00f3digo. Rust tambi\u00e9n proporciona medios para protegerse contra desbordamientos enteros, exige que las variables sean inicializadas antes de su uso y maneja mejor los errores en la biblioteca est\u00e1ndar, aplica la conceptualizaci\u00f3n de referencias y variables inmutables por defecto, y ofrece una fuerte tipificaci\u00f3n est\u00e1tica para minimizar errores l\u00f3gicos.        <\/p>\n<p>En Android, el manejo seguro de la memoria se realiza en los lenguajes ya soportados, Kotlin y Java, pero no son adecuados para el desarrollo de componentes del sistema debido a su alta sobrecarga. Rust permite lograr un rendimiento cercano al de los lenguajes C y C++, lo que lo hace id\u00f3neo para desarrollar partes de bajo nivel de la plataforma y componentes para la interacci\u00f3n con el hardware.       <\/p>\n<p>Para garantizar la seguridad del c\u00f3digo en C y C++ en Android se utilizan aislamiento sandbox, an\u00e1lisis est\u00e1tico y pruebas de fuzzing. Las capacidades de aislamiento sandbox son limitadas y han alcanzado su l\u00edmite (descomponer a\u00fan m\u00e1s en procesos no es pr\u00e1ctico en t\u00e9rminos de consumo de recursos). Entre las limitaciones del uso de sandbox se mencionan los altos costos operativos y el aumento del consumo de memoria, causado por la necesidad de generar nuevos procesos, as\u00ed como la aparici\u00f3n de retrasos adicionales relacionados con el uso de IPC.     <\/p>\n<p>Sin embargo, el sandbox no elimina las vulnerabilidades en el c\u00f3digo, sino que simplemente reduce los riesgos y dificulta la realizaci\u00f3n de un ataque, ya que para su explotaci\u00f3n se requiere identificar no una, sino varias vulnerabilidades. Los m\u00e9todos basados en pruebas de c\u00f3digo est\u00e1n limitados por el hecho de que para identificar errores es necesario crear condiciones que muestren el problema. No es posible cubrir todas las variantes, por lo que muchos errores permanecen sin ser detectados.               <\/p>\n<p>Para los procesos del sistema en Android, Google sigue la \"regla de dos\", seg\u00fan la cual cualquier c\u00f3digo a\u00f1adido no debe estar sujeto a m\u00e1s de dos de las tres condiciones: trabajar con entradas no verificadas, utilizar un lenguaje de programaci\u00f3n inseguro (C\/C++) y ejecutarse sin un aislamiento estricto de sandbox (tener privilegios elevados). De esta regla se deduce que el c\u00f3digo para manejar datos externos debe ser recortado a privilegios m\u00ednimos (aislado), o estar escrito en un lenguaje de programaci\u00f3n seguro.         <\/p>\n<p>Google no tiene como objetivo reescribir el c\u00f3digo existente en C\/C++ a Rust, sino que planea utilizar este lenguaje para el desarrollo de nuevo c\u00f3digo. Tiene sentido usar Rust para nuevo c\u00f3digo, ya que, seg\u00fan estad\u00edsticas, la mayor\u00eda de los errores surgen en el c\u00f3digo nuevo o recientemente modificado. En particular, alrededor del 50% de los errores de manejo de memoria en Android se detectan en el c\u00f3digo escrito hace menos de un a\u00f1o.      <center><img decoding=\"async\" alt=\"Rust se incluye entre los principales lenguajes para el desarrollo de la plataforma Android.\" src=\"\/wp-content\/uploads\/2021\/04\/4b33e5ecee70284872fc42dabcbfc372.png\" style=\"display:block;margin: 0 auto;\" \/><\/center><br \/>\n<br \/>Fuente: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=54918\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Rust \u0432 \u0447\u0438\u0441\u043b\u043e \u044f\u0437\u044b\u043a\u043e\u0432, \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0445 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Android. \u041a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 \u044f\u0437\u044b\u043a\u0430 Rust \u0431\u044b\u043b \u0432\u043a\u043b\u044e\u0447\u0451\u043d \u0432 \u0434\u0435\u0440\u0435\u0432\u043e \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u0442\u0435\u043a\u0441\u0442\u043e\u0432 Android \u0435\u0449\u0451 \u0432 2019 \u0433\u043e\u0434\u0443, \u043d\u043e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430 \u043e\u0441\u0442\u0430\u0432\u0430\u043b\u0430\u0441\u044c \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0439. \u041e\u0434\u043d\u0438\u043c\u0438 \u0438\u0437 \u043f\u0435\u0440\u0432\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u043d\u0430 Rust, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043b\u0430\u043d\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0432 Android, \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043d\u043e\u0432\u044b\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u043c\u0435\u0436\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043d\u043e\u0433\u043e \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f Binder \u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":99683,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-99682","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.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Rust \u0432 \u0447\u0438\u0441\u043b\u043e \u044f\u0437\u044b\u043a\u043e\u0432, \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0445 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Android.\" \/>\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\/es\/blog\/news\/rust-vklyuchyon-v-chislo-osnovnyh-yazykov-dlya-razrabotki-platformy-android\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\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\udd47Rust \u0432\u043a\u043b\u044e\u0447\u0451\u043d \u0432 \u0447\u0438\u0441\u043b\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u044f\u0437\u044b\u043a\u043e\u0432 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Android | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Rust \u0432 \u0447\u0438\u0441\u043b\u043e \u044f\u0437\u044b\u043a\u043e\u0432, \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0445 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Android.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/news\/rust-vklyuchyon-v-chislo-osnovnyh-yazykov-dlya-razrabotki-platformy-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=\"2021-04-07T14:22:46+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-04-07T14:22: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\udd47 Rust se incluye entre los lenguajes principales para el desarrollo de la plataforma Android | ProHoster","description":"Google ha anunciado la inclusi\u00f3n del lenguaje de programaci\u00f3n Rust entre los lenguajes permitidos para el desarrollo de la plataforma Android.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/news\/rust-vklyuchyon-v-chislo-osnovnyh-yazykov-dlya-razrabotki-platformy-android","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","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\udd47Rust \u0432\u043a\u043b\u044e\u0447\u0451\u043d \u0432 \u0447\u0438\u0441\u043b\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u044f\u0437\u044b\u043a\u043e\u0432 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Android | ProHoster","og:description":"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Rust \u0432 \u0447\u0438\u0441\u043b\u043e \u044f\u0437\u044b\u043a\u043e\u0432, \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0445 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Android.","og:url":"https:\/\/prohoster.info\/es\/blog\/news\/rust-vklyuchyon-v-chislo-osnovnyh-yazykov-dlya-razrabotki-platformy-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":"2021-04-07T14:22:46+00:00","article:modified_time":"2021-04-07T14:22:46+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"99682","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-04-07 15:21:42","updated":"2022-10-08 03:45:48","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/99682","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=99682"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/99682\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/99683"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=99682"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=99682"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=99682"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}