論文の概要: Decompiling Smart Contracts with a Large Language Model
- arxiv url: http://arxiv.org/abs/2506.19624v1
- Date: Tue, 24 Jun 2025 13:42:59 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-06-25 19:48:23.652351
- Title: Decompiling Smart Contracts with a Large Language Model
- Title(参考訳): 大規模言語モデルによるスマートコントラクトのデコンパイル
- Authors: Isaac David, Liyi Zhou, Dawn Song, Arthur Gervais, Kaihua Qin,
- Abstract要約: Etherscanの78,047,845のスマートコントラクトがデプロイされているにも関わらず(2025年5月26日現在)、わずか767,520 (1%)がオープンソースである。
この不透明さは、オンチェーンスマートコントラクトバイトコードの自動意味解析を必要とする。
バイトコードを可読でセマンティックに忠実なSolidityコードに変換する,先駆的な逆コンパイルパイプラインを導入する。
- 参考スコア(独自算出の注目度): 51.49197239479266
- License: http://creativecommons.org/licenses/by-nc-nd/4.0/
- Abstract: The widespread lack of broad source code verification on blockchain explorers such as Etherscan, where despite 78,047,845 smart contracts deployed on Ethereum (as of May 26, 2025), a mere 767,520 (< 1%) are open source, presents a severe impediment to blockchain security. This opacity necessitates the automated semantic analysis of on-chain smart contract bytecode, a fundamental research challenge with direct implications for identifying vulnerabilities and understanding malicious behavior. Prevailing decompilers struggle to reverse bytecode in a readable manner, often yielding convoluted code that critically hampers vulnerability analysis and thwarts efforts to dissect contract functionalities for security auditing. This paper addresses this challenge by introducing a pioneering decompilation pipeline that, for the first time, successfully leverages Large Language Models (LLMs) to transform Ethereum Virtual Machine (EVM) bytecode into human-readable and semantically faithful Solidity code. Our novel methodology first employs rigorous static program analysis to convert bytecode into a structured three-address code (TAC) representation. This intermediate representation then guides a Llama-3.2-3B model, specifically fine-tuned on a comprehensive dataset of 238,446 TAC-to-Solidity function pairs, to generate high-quality Solidity. This approach uniquely recovers meaningful variable names, intricate control flow, and precise function signatures. Our extensive empirical evaluation demonstrates a significant leap beyond traditional decompilers, achieving an average semantic similarity of 0.82 with original source and markedly superior readability. The practical viability and effectiveness of our research are demonstrated through its implementation in a publicly accessible system, available at https://evmdecompiler.com.
- Abstract(参考訳): Ethereumにデプロイされた78,047,845のスマートコントラクト(2025年5月26日現在)にもかかわらず、わずか767,520 (< 1%)がオープンソースであるため、Etherscanのようなブロックチェーンエクスプローラーに対する広範なソースコード検証の欠如は、ブロックチェーンセキュリティに深刻な障害をもたらしている。
この不透明さは、脆弱性の特定と悪意のある振る舞いの理解に直接的な意味を持つ基本的な研究課題である、オンチェーンスマートコントラクトバイトコードの自動セマンティック分析を必要とする。
一般的な逆コンパイラは、可読性のある方法でバイトコードを逆転させるのに苦労し、しばしば脆弱性分析を著しく妨げ、セキュリティ監査のためのコントラクト機能を見失うような複雑なコードを生成する。
本稿では,Large Language Models(LLM)を初めて活用してEthereum Virtual Machine(EVM)バイトコードを人間可読でセマンティックに忠実なSolidityコードに変換する,先駆的な逆コンパイルパイプラインを導入することで,この問題に対処する。
我々の新しい手法は、まず厳密な静的プログラム解析を用いてバイトコードを構造化された3アドレスコード(TAC)表現に変換する。
この中間表現は、Llama-3.2-3Bモデル、特に238,446 TAC-to-Solidity関数対の包括的なデータセットに微調整され、高品質なソリデーティを生成する。
このアプローチは、意味のある変数名、複雑な制御フロー、正確な関数シグネチャをユニークに復元する。
我々の広範な経験的評価は、従来の逆コンパイラを超える大きな飛躍を示し、元のソースとの平均的な意味的類似性は0.82で、読みやすさは著しく優れている。
本研究の実用性と有効性は, https://evmdecompiler.com.comで公開されている公開アクセスシステムの実装を通じて実証される。
関連論文リスト
- CodeBC: A More Secure Large Language Model for Smart Contract Code Generation in Blockchain [6.7475904578675285]
大きな言語モデル(LLM)は、自然言語命令からコードを生成するのに優れていますが、セキュリティ上の脆弱性に対する理解が欠如しています。
この制限により、特にブロックチェーンのスマートコントラクト開発のような高セキュリティプログラミングタスクにおいて、LLMが生成したコードのセキュリティリスクを回避することが難しくなる。
ブロックチェーンでセキュアなスマートコントラクトを生成するように設計されたコード生成モデルであるCodeBCを紹介します。
論文 参考訳(メタデータ) (2025-04-28T14:14:16Z) - Simplicity by Obfuscation: Evaluating LLM-Driven Code Transformation with Semantic Elasticity [4.458584890504334]
コードの難読化は、リバースエンジニアリングと知的財産の盗難を防ぐことを目的としている。
近年の大規模言語モデルの発展は、様々な分野における実践的応用の道を開いた。
この研究は、LLMがPythonのソースコードを難読化する能力について実証的研究を行った。
論文 参考訳(メタデータ) (2025-04-18T18:29:23Z) - The Code Barrier: What LLMs Actually Understand? [7.407441962359689]
本研究では,言語モデルの意味理解能力を評価するために,コード難読化を構造化テストフレームワークとして利用する。
難読化の複雑さが増加するにつれて、統計的に顕著な性能低下が見られる。
本研究では,言語モデルにおけるコード理解を評価するための新しい評価手法を提案する。
論文 参考訳(メタデータ) (2025-04-14T14:11:26Z) - Combining GPT and Code-Based Similarity Checking for Effective Smart Contract Vulnerability Detection [0.0]
スマートコントラクトの脆弱性識別ツールであるSimisaryGPTを提案する。
similarGPTの主な概念は、検査中のコードとサードパーティのライブラリのセキュアなコードとの類似度を測定することである。
本稿では, トポロジカルオーダを用いた検出シーケンスの最適化により, 論理的コヒーレンスを高め, 検出時の偽陽性を低減することを提案する。
論文 参考訳(メタデータ) (2024-12-24T07:15:48Z) - HexaCoder: Secure Code Generation via Oracle-Guided Synthetic Training Data [60.75578581719921]
大規模言語モデル(LLM)は、自動コード生成に大きな可能性を示している。
最近の研究は、多くのLLM生成コードが深刻なセキュリティ脆弱性を含んでいることを強調している。
我々は,LLMがセキュアなコードを生成する能力を高めるための新しいアプローチであるHexaCoderを紹介する。
論文 参考訳(メタデータ) (2024-09-10T12:01:43Z) - FoC: Figure out the Cryptographic Functions in Stripped Binaries with LLMs [51.898805184427545]
削除されたバイナリの暗号関数を抽出するFoCと呼ばれる新しいフレームワークを提案する。
まず、自然言語における暗号関数のセマンティクスを要約するために、バイナリ大言語モデル(FoC-BinLLM)を構築した。
次に、FoC-BinLLM上にバイナリコード類似モデル(FoC-Sim)を構築し、変更に敏感な表現を作成し、データベース内の未知の暗号関数の類似実装を検索する。
論文 参考訳(メタデータ) (2024-03-27T09:45:33Z) - CodeAttack: Revealing Safety Generalization Challenges of Large Language Models via Code Completion [117.178835165855]
本稿では,自然言語入力をコード入力に変換するフレームワークであるCodeAttackを紹介する。
我々の研究は、コード入力に対するこれらのモデルの新たな、普遍的な安全性の脆弱性を明らかにした。
CodeAttackと自然言語の分布ギャップが大きくなると、安全性の一般化が弱くなる。
論文 参考訳(メタデータ) (2024-03-12T17:55:38Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。