論文の概要: Canonicalization for Unreproducible Builds in Java
- arxiv url: http://arxiv.org/abs/2504.21679v1
- Date: Wed, 30 Apr 2025 14:17:54 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-05-09 18:25:53.994083
- Title: Canonicalization for Unreproducible Builds in Java
- Title(参考訳): Javaにおける再現不可能なビルドのための標準化
- Authors: Aman Sharma, Benoit Baudry, Martin Monperrus,
- Abstract要約: 再現可能なビルドの概念フレームワークを導入し,再現可能な中央からの大きなデータセットを分析し,再現不可能な6つの根本原因の新たな分類法を開発した。
再現不可能な12,283のアーティファクトに対して、9.48%から26.89%に成功を収めるツールであるChains-Rebuildを紹介します。
- 参考スコア(独自算出の注目度): 11.367562045401554
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: The increasing complexity of software supply chains and the rise of supply chain attacks have elevated concerns around software integrity. Users and stakeholders face significant challenges in validating that a given software artifact corresponds to its declared source. Reproducible Builds address this challenge by ensuring that independently performed builds from identical source code produce identical binaries. However, achieving reproducibility at scale remains difficult, especially in Java, due to a range of non-deterministic factors and caveats in the build process. In this work, we focus on reproducibility in Java-based software, archetypal of enterprise applications. We introduce a conceptual framework for reproducible builds, we analyze a large dataset from Reproducible Central, and we develop a novel taxonomy of six root causes of unreproducibility. We study actionable mitigations: artifact and bytecode canonicalization using OSS-Rebuild and jNorm respectively. Finally, we present Chains-Rebuild, a tool that raises reproducibility success from 9.48% to 26.89% on 12,283 unreproducible artifacts. To sum up, our contributions are the first large-scale taxonomy of build unreproducibility causes in Java, a publicly available dataset of unreproducible builds, and Chains-Rebuild, a canonicalization tool for mitigating unreproducible builds in Java.
- Abstract(参考訳): ソフトウェアサプライチェーンの複雑さの増大とサプライチェーン攻撃の台頭により、ソフトウェアの完全性に関する懸念が高まっている。
ユーザとステークホルダは、あるソフトウェアアーティファクトが宣言されたソースに対応することを検証する上で、重大な課題に直面します。
Reproducible Buildsは、同じソースコードから独立して実行されたビルドが同じバイナリを生成することを保証することで、この問題に対処する。
しかしながら、大規模な再現性を実現することは、特にJavaでは、ビルドプロセスにおけるさまざまな非決定論的要因と注意点のため、依然として困難である。
本研究では、Javaベースのソフトウェアにおける再現性、エンタープライズアプリケーションのアーキティパルに焦点を当てる。
再現可能なビルドの概念的枠組みを導入し,再現可能な中央からの大きなデータセットを分析し,再現不可能な6つの根本原因の新たな分類法を開発した。
本稿では,OSS-Rebuild と jNorm を用いたアーティファクトとバイトコードの正準化について検討する。
最後に、12,283個の再現不可能なアーティファクトに対して、再現性の成功を9.48%から26.89%に上げるツールであるChains-Rebuildを紹介する。
まとめると、私たちのコントリビューションは、Javaにおけるビルドの再現不可能な原因に関する最初の大規模な分類であり、非再現不可能なビルドのデータセットとして公開され、Javaで再現不可能なビルドを緩和するための標準化ツールであるChains-Rebuildです。
関連論文リスト
- Build Code Needs Maintenance Too: A Study on Refactoring and Technical Debt in Build Systems [2.189169499230464]
現代のソフトウェアエンジニアリングでは、ビルドシステムはソースコードをソフトウェアアーティファクトに変換する上で重要な役割を担います。
最近の研究では、ビルド失敗のハイレベルな原因を調査しているが、ビルドファイルの構造的特性を概ね見落としている。
論文 参考訳(メタデータ) (2025-04-02T17:07:38Z) - Does Functional Package Management Enable Reproducible Builds at Scale? Yes [4.492444446637857]
Reproducible Builds (R-B) は、ソフトウェアパッケージをソースから再構築することを保証する。
我々は,Nix機能パッケージマネージャのコンテキストにおいて,ビットワイズに関する最初の大規模研究を行う。
非常に高いビットワイズ率、69~91%の上昇傾向、さらに高いリビルド可能性率、99%以上を得ています。
論文 参考訳(メタデータ) (2025-01-27T10:11:27Z) - CodeTree: Agent-guided Tree Search for Code Generation with Large Language Models [106.11371409170818]
大規模言語モデル(LLM)は、生成されたコードを自己定義し、自律的に改善する機能を持つエージェントとして機能する。
コード生成プロセスの異なる段階における探索空間を効率的に探索するLLMエージェントのためのフレームワークであるCodeTreeを提案する。
具体的には、異なるコーディング戦略を明示的に探求し、対応するコーディングソリューションを生成し、その後、ソリューションを洗練するために統合されたツリー構造を採用しました。
論文 参考訳(メタデータ) (2024-11-07T00:09:54Z) - Levels of Binary Equivalence for the Comparison of Binaries from Alternative Builds [1.1405827621489222]
ビルドプラットフォームの可変性は、妥協されたビルド環境の検出を容易にするため、セキュリティを強化することができる。
同じソースから構築された複数のバイナリの可用性は、新たな課題と機会を生み出します。
そのような質問に答えるためには、バイナリ間の等価性の概念が必要である。
論文 参考訳(メタデータ) (2024-10-11T00:16:26Z) - Codev-Bench: How Do LLMs Understand Developer-Centric Code Completion? [60.84912551069379]
Code-Development Benchmark (Codev-Bench)は、細粒度で現実世界、リポジトリレベル、開発者中心の評価フレームワークです。
Codev-Agentは、リポジトリのクローリングを自動化し、実行環境を構築し、既存のユニットテストから動的呼び出しチェーンを抽出し、データ漏洩を避けるために新しいテストサンプルを生成するエージェントベースのシステムである。
論文 参考訳(メタデータ) (2024-10-02T09:11:10Z) - Local Software Buildability across Java Versions (Registered Report) [0.0]
Javaのバージョン6から23をインストールしたコンテナで、すべてのプロジェクトを自動ビルドしようとします。
成功または失敗は終了コードによって決定され、標準出力とエラーストリームは保存される。
論文 参考訳(メタデータ) (2024-08-21T11:51:00Z) - CodeRAG-Bench: Can Retrieval Augment Code Generation? [78.37076502395699]
検索拡張生成を用いたコード生成の系統的,大規模な解析を行う。
まず、コード生成タスクの3つのカテゴリを含む総合的な評価ベンチマークであるCodeRAG-Benchをキュレートする。
CodeRAG-Bench上のトップパフォーマンスモデルについて、1つまたは複数のソースから検索したコンテキストを提供することにより検討する。
論文 参考訳(メタデータ) (2024-06-20T16:59:52Z) - JailbreakBench: An Open Robustness Benchmark for Jailbreaking Large Language Models [123.66104233291065]
ジェイルブレイク攻撃は、大きな言語モデル(LLM)が有害、非倫理的、またはその他の不快なコンテンツを生成する原因となる。
これらの攻撃を評価することは、現在のベンチマークと評価テクニックの収集が適切に対処していない、多くの課題を提示します。
JailbreakBenchは、以下のコンポーネントを備えたオープンソースのベンチマークである。
論文 参考訳(メタデータ) (2024-03-28T02:44:02Z) - On the Security Blind Spots of Software Composition Analysis [46.1389163921338]
Mavenリポジトリで脆弱性のあるクローンを検出するための新しいアプローチを提案する。
Maven Centralから53万以上の潜在的な脆弱性のあるクローンを検索します。
検出された727個の脆弱なクローンを検出し、それぞれに検証可能な脆弱性証明プロジェクトを合成する。
論文 参考訳(メタデータ) (2023-06-08T20:14:46Z) - Do code refactorings influence the merge effort? [80.1936417993664]
複数のコントリビュータがソースコードを並行して変更して,新機能の実装やバグの修正,既存のコードの変更などを行っている。
これらの同時変更は、ソースコードの同じバージョンにマージする必要がある。
研究によると、すべてのマージの試みの10~20%が衝突を起こしており、これはプロセスを完了するために手動開発者の介入を必要とする。
論文 参考訳(メタデータ) (2023-05-10T13:24:59Z) - Automatic Specialization of Third-Party Java Dependencies [3.7973152331947815]
大規模なコードの再利用は、開発コストと時間の両方を大幅に削減します。
ソフトウェアプロジェクトにおけるサードパーティのコードの大規模なシェアは、特にメンテナンスとセキュリティに関して、新たな課題を引き起こします。
そこで本研究では,Javaプロジェクトの実際の利用状況に基づいて,Javaプロジェクトの依存関係を専門化する新しい手法を提案する。
論文 参考訳(メタデータ) (2023-02-16T15:37:49Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。