利用程序化 SAT 的 SHA-256 碰撞攻击

Nahiyan Alamgir, Saeed Nejati, Curtis Bright
{"title":"利用程序化 SAT 的 SHA-256 碰撞攻击","authors":"Nahiyan Alamgir, Saeed Nejati, Curtis Bright","doi":"arxiv-2406.20072","DOIUrl":null,"url":null,"abstract":"Cryptographic hash functions play a crucial role in ensuring data security,\ngenerating fixed-length hashes from variable-length inputs. The hash function\nSHA-256 is trusted for data security due to its resilience after over twenty\nyears of intense scrutiny. One of its critical properties is collision\nresistance, meaning that it is infeasible to find two different inputs with the\nsame hash. Currently, the best SHA-256 collision attacks use differential\ncryptanalysis to find collisions in simplified versions of SHA-256 that are\nreduced to have fewer steps, making it feasible to find collisions. In this paper, we use a satisfiability (SAT) solver as a tool to search for\nstep-reduced SHA-256 collisions, and dynamically guide the solver with the aid\nof a computer algebra system (CAS) used to detect inconsistencies and deduce\ninformation that the solver would otherwise not detect on its own. Our hybrid\nSAT + CAS solver significantly outperformed a pure SAT approach, enabling us to\nfind collisions in step-reduced SHA-256 with significantly more steps. Using\nSAT + CAS, we find a 38-step collision of SHA-256 with a modified\ninitialization vector -- something first found by a highly sophisticated search\ntool of Mendel, Nad, and Schl\\\"affer. Conversely, a pure SAT approach could\nfind collisions for no more than 28 steps. However, our work only uses the SAT\nsolver CaDiCaL and its programmatic interface IPASIR-UP.","PeriodicalId":501033,"journal":{"name":"arXiv - CS - Symbolic Computation","volume":"41 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2024-06-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"SHA-256 Collision Attack with Programmatic SAT\",\"authors\":\"Nahiyan Alamgir, Saeed Nejati, Curtis Bright\",\"doi\":\"arxiv-2406.20072\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Cryptographic hash functions play a crucial role in ensuring data security,\\ngenerating fixed-length hashes from variable-length inputs. The hash function\\nSHA-256 is trusted for data security due to its resilience after over twenty\\nyears of intense scrutiny. One of its critical properties is collision\\nresistance, meaning that it is infeasible to find two different inputs with the\\nsame hash. Currently, the best SHA-256 collision attacks use differential\\ncryptanalysis to find collisions in simplified versions of SHA-256 that are\\nreduced to have fewer steps, making it feasible to find collisions. In this paper, we use a satisfiability (SAT) solver as a tool to search for\\nstep-reduced SHA-256 collisions, and dynamically guide the solver with the aid\\nof a computer algebra system (CAS) used to detect inconsistencies and deduce\\ninformation that the solver would otherwise not detect on its own. Our hybrid\\nSAT + CAS solver significantly outperformed a pure SAT approach, enabling us to\\nfind collisions in step-reduced SHA-256 with significantly more steps. Using\\nSAT + CAS, we find a 38-step collision of SHA-256 with a modified\\ninitialization vector -- something first found by a highly sophisticated search\\ntool of Mendel, Nad, and Schl\\\\\\\"affer. Conversely, a pure SAT approach could\\nfind collisions for no more than 28 steps. However, our work only uses the SAT\\nsolver CaDiCaL and its programmatic interface IPASIR-UP.\",\"PeriodicalId\":501033,\"journal\":{\"name\":\"arXiv - CS - Symbolic Computation\",\"volume\":\"41 1\",\"pages\":\"\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2024-06-28\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"arXiv - CS - Symbolic Computation\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/arxiv-2406.20072\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"arXiv - CS - Symbolic Computation","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/arxiv-2406.20072","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

摘要

加密哈希函数在确保数据安全方面发挥着至关重要的作用,它能从可变长度的输入生成固定长度的哈希值。哈希函数SHA-256经过二十多年的严格审查,具有很强的适应能力,因此在数据安全方面备受信赖。其关键特性之一是抗碰撞性,这意味着不可能找到具有相同哈希值的两个不同输入。目前,最好的 SHA-256 碰撞攻击使用差分加密分析来查找简化版 SHA-256 中的碰撞,这些简化版的步骤减少,使得查找碰撞变得可行。在本文中,我们使用可满足性(SAT)求解器作为搜索步骤缩减后的 SHA-256 碰撞的工具,并借助计算机代数系统(CAS)对求解器进行动态指导,CAS 用于检测不一致之处,并推导出求解器自身无法检测到的信息。我们的混合 SAT + CAS 求解器的性能明显优于纯 SAT 方法,使我们能够在步骤缩减的 SHA-256 中以明显更多的步骤发现碰撞。使用 SAT + CAS,我们找到了 SHA-256 中修改初始化向量的 38 步碰撞--这是 Mendel、Nad 和 Schl\"affer 的高精密搜索工具首次发现的。相反,纯粹的 SAT 方法只能发现不超过 28 步的碰撞。不过,我们的工作只使用了 SAT 求解器 CaDiCaL 及其程序界面 IPASIR-UP。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
SHA-256 Collision Attack with Programmatic SAT
Cryptographic hash functions play a crucial role in ensuring data security, generating fixed-length hashes from variable-length inputs. The hash function SHA-256 is trusted for data security due to its resilience after over twenty years of intense scrutiny. One of its critical properties is collision resistance, meaning that it is infeasible to find two different inputs with the same hash. Currently, the best SHA-256 collision attacks use differential cryptanalysis to find collisions in simplified versions of SHA-256 that are reduced to have fewer steps, making it feasible to find collisions. In this paper, we use a satisfiability (SAT) solver as a tool to search for step-reduced SHA-256 collisions, and dynamically guide the solver with the aid of a computer algebra system (CAS) used to detect inconsistencies and deduce information that the solver would otherwise not detect on its own. Our hybrid SAT + CAS solver significantly outperformed a pure SAT approach, enabling us to find collisions in step-reduced SHA-256 with significantly more steps. Using SAT + CAS, we find a 38-step collision of SHA-256 with a modified initialization vector -- something first found by a highly sophisticated search tool of Mendel, Nad, and Schl\"affer. Conversely, a pure SAT approach could find collisions for no more than 28 steps. However, our work only uses the SAT solver CaDiCaL and its programmatic interface IPASIR-UP.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Synthesizing Evolving Symbolic Representations for Autonomous Systems Introducing Quantification into a Hierarchical Graph Rewriting Language Towards Verified Polynomial Factorisation Symbolic Regression with a Learned Concept Library Active Symbolic Discovery of Ordinary Differential Equations via Phase Portrait Sketching
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1