{"id":121189,"date":"2024-12-31T15:46:00","date_gmt":"2024-12-31T13:46:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/kollizii-v-sokrashhyonnyh-identifikatorah-kommitov-v-yadre-linux"},"modified":"2024-12-31T15:46:00","modified_gmt":"2024-12-31T13:46:00","slug":"kollizii-v-sokrashhyonnyh-identifikatorah-kommitov-v-yadre-linux","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/news\/kollizii-v-sokrashhyonnyh-identifikatorah-kommitov-v-yadre-linux","title":{"rendered":"Collisioni negli identificatori abbreviati dei commit nel kernel Linux","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Kees Cook, ex amministratore di sistema di kernel.org e leader del Ubuntu Security Team, ha dimostrato la possibilit\u00e0 di creare un commit il cui identificatore abbreviato coincide con quello di un commit gi\u00e0 presente nel kernel Linux. L'esperimento \u00e8 stato condotto come conferma della necessit\u00e0 di passare agli identificatori abbreviati a 16 caratteri nel kernel Linux, precedentemente discusso nell'elenco di distribuzione degli sviluppatori del kernel, ma non approvato da Linus Torvalds.    <\/p>\n<p>Gli identificatori abbreviati dei commit si formano lasciando i primi 12 caratteri dell'hash SHA-1 (48 bit su 160 bit). Poich\u00e9 il numero di oggetti nel kernel identificabili tramite hash SHA-1 ha superato i 13 milioni, il verificarsi di collisioni utilizzando un prefisso di 12 caratteri \u00e8 diventato solo una questione di tempo. Come esempio, sono stati mostrati oggetti gi\u00e0 aggiunti nel kernel che si sovrappongono nei loro identificatori di 11 caratteri. Inoltre, \u00e8 stato accennato che l'intersezione di identificatori di 12 caratteri \u00e8 gi\u00e0 stata registrata a ottobre, ma prima dell'invio della patch \u00e8 stata identificata dall'utility checkpatch.      <\/p>\n<p>Gli identificatori abbreviati vengono utilizzati per pubblicare collegamenti brevi ai commit e vengono indicati quando si inviano modifiche nel tag \u00abFixes\u00bb, come collegamento al commit in cui \u00e8 stato risolto il problema nel patch inviato (ad esempio, \u00abFixes: e21d2170f366\u00bb). Si possono verificare conflitti in cui diverse modifiche risultano associate a un unico identificatore abbreviato, il che pu\u00f2 portare a malfunzionamenti degli strumenti per l'analisi e la verifica delle modifiche che considerano il contenuto dei tag \u00abFixes\u00bb. Ad esempio, questi tag vengono presi in considerazione dal gestore check_fixes, utilizzato nel ramo linux-next, nonch\u00e9 negli script di analisi delle correzioni delle vulnerabilit\u00e0 e nel monitoraggio del ciclo di vita delle patch.      <\/p>\n<p>Linus Torvalds ha accolto con scetticismo la proposta di aumentare la dimensione minima degli identificatori abbreviati, poich\u00e9 il numero effettivo di commit nel repository \u00e8 notevolmente inferiore al numero di oggetti (circa 1\/8). \u00c8 probabile che, se si verificheranno intersezioni casuali, esse saranno tra un commit e un oggetto di un altro tipo (ad esempio, un blob o un ramo). A suo avviso, gli identificatori abbreviati sono tali per essere visibili, leggibili e facilmente citabili, e al momento non ci sono presupposti oggettivi per aumentarne le dimensioni.     <\/p>\n<p>Uno degli sviluppatori ha proposto di ridurre le dimensioni aumentando il numero di bit significativi, utilizzando un nuovo formato basato sulla codifica Base36 (simboli 0-9a-z) invece delle cifre esadecimali. Secondo Linus, una simile modifica creerebbe pi\u00f9 problemi di quanti ne risolverebbe. Ad esempio, sarebbe necessario aggiungere supporto per il nuovo formato negli strumenti esistenti e introdurre un identificatore di formato per distinguere il vecchio dal nuovo formato.       <\/p>\n<p>Per dimostrare che il problema con gli identificatori abbreviati non \u00e8 meramente teorico e che la sua soluzione non pu\u00f2 essere rinviata, Kees Cook ha redatto una modifica alla documentazione del kernel, il cui identificatore abbreviato (1da177e4c3f4) coincideva con l'identificatore del commit relativo alla creazione del ramo del kernel 2.6.12-rc2. La collisione \u00e8 stata trovata in 6 ore di calcoli su un sistema con GPU NVIDIA GeForce RTX 3080.     <\/p>\n<p>La selezione \u00e8 stata eseguita utilizzando lo strumento lucky-commit \u2014 nel testo del patch target sono stati aggiunti spazi casuali fino a quando il prefisso SHA-1 di 12 caratteri non \u00e8 coinciso con i prefissi dei commit gi\u00e0 presenti nel kernel. Secondo Case, il problema non \u00e8 tanto il rischio di incroci casuali, quanto la possibilit\u00e0 di manipolare gli identificatori abbreviati per scopi dannosi, ad esempio, per eludere determinate verifiche.<br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=62495\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u0435\u0439\u0441 \u041a\u0443\u043a (Kees Cook), \u0431\u044b\u0432\u0448\u0438\u0439 \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 kernel.org \u0438 \u043b\u0438\u0434\u0435\u0440 Ubuntu Security Team, \u043f\u0440\u043e\u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043b \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043a\u043e\u043c\u043c\u0438\u0442\u0430, \u0441\u043e\u043a\u0440\u0430\u0449\u0451\u043d\u043d\u044b\u0439 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u0435\u0442 \u0441 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u043c, \u0440\u0430\u043d\u0435\u0435 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u043c \u0432 \u044f\u0434\u0440\u043e Linux. \u042d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442 \u043f\u0440\u043e\u0432\u0435\u0434\u0451\u043d \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f \u0446\u0435\u043b\u0435\u0441\u043e\u043e\u0431\u0440\u0430\u0437\u043d\u043e\u0441\u0442\u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0430 \u043d\u0430 16-\u0441\u0438\u043c\u0432\u043e\u043b\u044c\u043d\u044b\u0435 \u0441\u043e\u043a\u0440\u0430\u0449\u0451\u043d\u043d\u044b\u0435 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u044b \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u0432 \u044f\u0434\u0440\u0435 Linux, \u0440\u0430\u043d\u0435\u0435 \u043e\u0431\u0441\u0443\u0436\u0434\u0430\u0432\u0448\u0435\u0433\u043e\u0441\u044f \u0432 \u0441\u043f\u0438\u0441\u043a\u0435 \u0440\u0430\u0441\u0441\u044b\u043b\u043a\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u044f\u0434\u0440\u0430, \u043d\u043e \u043d\u0435 \u043e\u0434\u043e\u0431\u0440\u0435\u043d\u043d\u043e\u0433\u043e \u041b\u0438\u043d\u0443\u0441\u043e\u043c [&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-121189","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=\"\u041a\u0435\u0439\u0441 \u041a\u0443\u043a (Kees Cook), \u0431\u044b\u0432\u0448\u0438\u0439 \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 kernel.org \u0438 \u043b\u0438\u0434\u0435\u0440 Ubuntu Security Team, \u043f\u0440\u043e\u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043b \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043a\u043e\u043c\u043c\u0438\u0442\u0430, \u0441\u043e\u043a\u0440\u0430\u0449\u0451\u043d\u043d\u044b\u0439 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u0435\u0442 \u0441 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u043c, \u0440\u0430\u043d\u0435\u0435.\" \/>\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\/it\/blog\/news\/kollizii-v-sokrashhyonnyh-identifikatorah-kommitov-v-yadre-linux\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\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\u041a\u043e\u043b\u043b\u0438\u0437\u0438\u0438 \u0432 \u0441\u043e\u043a\u0440\u0430\u0449\u0451\u043d\u043d\u044b\u0445 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u0430\u0445 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u0432 \u044f\u0434\u0440\u0435 Linux | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u0435\u0439\u0441 \u041a\u0443\u043a (Kees Cook), \u0431\u044b\u0432\u0448\u0438\u0439 \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 kernel.org \u0438 \u043b\u0438\u0434\u0435\u0440 Ubuntu Security Team, \u043f\u0440\u043e\u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043b \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043a\u043e\u043c\u043c\u0438\u0442\u0430, \u0441\u043e\u043a\u0440\u0430\u0449\u0451\u043d\u043d\u044b\u0439 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u0435\u0442 \u0441 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u043c, \u0440\u0430\u043d\u0435\u0435.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/news\/kollizii-v-sokrashhyonnyh-identifikatorah-kommitov-v-yadre-linux\" \/>\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=\"2024-12-31T13:46:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2024-12-31T13:46:00+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\udd47Collisioni negli identificatori abbreviati dei commit nel kernel Linux | ProHoster","description":"Kees Cook, ex principale amministratore di sistema di kernel.org e leader dell'Ubuntu Security Team, ha dimostrato la possibilit\u00e0 di creare un commit il cui identificatore abbreviato coincide con un commit precedente.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/news\/kollizii-v-sokrashhyonnyh-identifikatorah-kommitov-v-yadre-linux","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","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\u041a\u043e\u043b\u043b\u0438\u0437\u0438\u0438 \u0432 \u0441\u043e\u043a\u0440\u0430\u0449\u0451\u043d\u043d\u044b\u0445 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u0430\u0445 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u0432 \u044f\u0434\u0440\u0435 Linux | ProHoster","og:description":"\u041a\u0435\u0439\u0441 \u041a\u0443\u043a (Kees Cook), \u0431\u044b\u0432\u0448\u0438\u0439 \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 kernel.org \u0438 \u043b\u0438\u0434\u0435\u0440 Ubuntu Security Team, \u043f\u0440\u043e\u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043b \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043a\u043e\u043c\u043c\u0438\u0442\u0430, \u0441\u043e\u043a\u0440\u0430\u0449\u0451\u043d\u043d\u044b\u0439 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u0435\u0442 \u0441 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u043c, \u0440\u0430\u043d\u0435\u0435.","og:url":"https:\/\/prohoster.info\/it\/blog\/news\/kollizii-v-sokrashhyonnyh-identifikatorah-kommitov-v-yadre-linux","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":"2024-12-31T13:46:00+00:00","article:modified_time":"2024-12-31T13:46:00+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"121189","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":"2026-01-23 09:18:23","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 09:18:23","updated":"2026-01-23 09:18:23","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/121189","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=121189"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/121189\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=121189"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=121189"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=121189"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}