論文の概要: Filament: Denning-Style Information Flow Control for Rust
- arxiv url: http://arxiv.org/abs/2604.14357v1
- Date: Wed, 15 Apr 2026 19:19:05 GMT
- ステータス: 翻訳完了
- システム内更新日: 2026-04-17 21:29:31.575053
- Title: Filament: Denning-Style Information Flow Control for Rust
- Title(参考訳): フィラメント:Rustのデニングスタイル情報フロー制御
- Authors: Jeffrey C. Ching, Quan Zhou, Danfeng Zhang,
- Abstract要約: 私たちは、コンパイラの変更を必要としないRust用のDenningスタイルの静的IFCライブラリであるFilamentを紹介します。
最小限のアノテーションオーバーヘッドで、きめ細かい明示的なフローチェックを可能にする。
fcall!とmcall!マクロを提供し、標準ライブラリやサードパーティライブラリとのシームレスで安全な相互運用性をサポートする。
- 参考スコア(独自算出の注目度): 6.377116682913961
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Existing language-based information-flow control (IFC) tools face a fundamental tension: Denning-style systems that track explicit and implicit flows at the variable level typically require compiler modifications, while more coarse-grained approaches, including recent work Cocoon, avoid compiler changes but impose more restrictive programming models. We present Filament, a Denning-style static IFC library for Rust that requires no compiler modifications. Filament addresses three key challenges in building a practical IFC library for Rust. First, it enables fine-grained explicit-flow checking with minimal annotation overhead by leveraging Rust's type inference. Second, it introduces pc_block!, a lightweight construct for enforcing implicit flows via a compile-time program counter label, without requiring compiler support. Third, it provides fcall! and mcall! macros to support seamless and safe interoperability with standard and third-party libraries. Our evaluation shows that Filament incurs negligible compile-time overhead and requires only modest annotations. Moreover, compared to Cocoon, Filament offers a more permissive programming model, reducing the need for frequent escape hatches that bypass security checks.
- Abstract(参考訳): 既存の言語ベースの情報フロー制御(IFC)ツールは、基本的な緊張に直面している: 変数レベルで明示的で暗黙的なフローを追跡するデニングスタイルのシステムは通常、コンパイラの変更を必要とする。
私たちは、コンパイラの変更を必要としないRust用のDenningスタイルの静的IFCライブラリであるFilamentを紹介します。
FlamentはRust用の実用的なIFCライブラリを構築する上で,3つの重要な課題に対処する。
まず、Rustの型推論を活用することで、最小限のアノテーションオーバーヘッドできめ細かい明示的なフローチェックを可能にする。
第二に、pc_block!はコンパイル時のプログラムカウンタラベルを通じて暗黙のフローを強制する軽量なコンストラクトで、コンパイラのサポートを必要としない。
第三に、fcall!とmcall!マクロを提供し、標準ライブラリやサードパーティライブラリとのシームレスで安全な相互運用性をサポートする。
評価の結果、Filamentはコンパイル時のオーバーヘッドを無視し、控えめなアノテーションしか必要としないことがわかった。
さらに、Cocoonと比較して、Filamentはより寛容なプログラミングモデルを提供し、セキュリティチェックをバイパスする頻繁なエスケープハッチの必要性を減らす。
関連論文リスト
- WGRAMMAR: Leverage Prior Knowledge to Accelerate Structured Decoding [58.1177179119881]
我々は、ドメイン認識の単純化、制約分解、マスクキャッシングを統合した軽量デコードエンジンであるwgrammarを紹介する。
wgrammarは、既存のシステムよりも最大250倍のスピードアップを実現します。
論文 参考訳(メタデータ) (2025-07-22T17:13:47Z) - CRUST-Bench: A Comprehensive Benchmark for C-to-safe-Rust Transpilation [51.18863297461463]
CRUST-Benchは100のCリポジトリのデータセットで、それぞれが安全なRustとテストケースで手書きのインターフェースとペアリングされている。
我々は、このタスクで最先端の大規模言語モデル(LLM)を評価し、安全で慣用的なRust生成が依然として難しい問題であることを確認した。
最高のパフォーマンスモデルであるOpenAI o1は、ワンショット設定で15タスクしか解決できない。
論文 参考訳(メタデータ) (2025-04-21T17:33:33Z) - Type-Constrained Code Generation with Language Models [51.03439021895432]
本稿では,型システムを利用してコード生成を誘導する型制約デコード手法を提案する。
そこで本研究では,新しい接頭辞オートマトンと,在来型を探索する手法を開発し,LLM生成コードに適切な型付けを強制するための健全なアプローチを構築した。
提案手法は,コード合成,翻訳,修復作業において,コンパイルエラーを半分以上削減し,機能的正しさを著しく向上させる。
論文 参考訳(メタデータ) (2025-04-12T15:03:00Z) - RustMap: Towards Project-Scale C-to-Rust Migration via Program Analysis and LLM [13.584956125542396]
Rustは、Cのパフォーマンスを維持しながら、優れたメモリ安全性を提供する。
C2Rustのような既存の自動翻訳ツールは、構文的、テンプレートベースの翻訳に依存しすぎている可能性がある。
本稿では,新しい依存誘導型大規模言語モデル (LLM) をベースとしたC-to-Rust変換手法であるRustMapを提案する。
論文 参考訳(メタデータ) (2025-03-22T11:57:45Z) - ReF Decompile: Relabeling and Function Call Enhanced Decompile [50.86228893636785]
逆コンパイルの目標は、コンパイルされた低レベルコード(アセンブリコードなど)を高レベルプログラミング言語に変換することである。
このタスクは、脆弱性識別、マルウェア分析、レガシーソフトウェアマイグレーションなど、さまざまなリバースエンジニアリングアプリケーションをサポートする。
論文 参考訳(メタデータ) (2025-02-17T12:38:57Z) - RustMC: Extending the GenMC stateless model checker to Rust [0.2799243500184682]
RustMCは、並行するRustプログラムの検証を可能にするステートレスモデルチェッカーである。
本ツールでは,GenMCの拡張に対処する上で重要な課題について述べる。
論文 参考訳(メタデータ) (2025-02-10T09:33:24Z) - A Study of Undefined Behavior Across Foreign Function Boundaries in Rust Libraries [2.359557447960552]
Rustは、他の言語との相互運用に頻繁に使用される。
Miriは、これらのモデルに対してアプリケーションを検証できる唯一の動的解析ツールである。
Miriは、外部機能のバグ発見をサポートしておらず、Rustエコシステムに重大な正当性ギャップがあることを示唆している。
論文 参考訳(メタデータ) (2024-04-17T18:12:05Z) - Fixing Rust Compilation Errors using LLMs [2.1781086368581932]
Rustプログラミング言語は、C/C++のような従来の安全でない代替言語よりも、低レベルのシステムプログラミング言語に実行可能な選択肢として、自らを確立している。
本稿では,Large Language Models(LLMs)の創発的機能を活用し,Rustコンパイルエラーの修正を自動的に提案するRustAssistantというツールを提案する。
RustAssistantは、人気のあるオープンソースRustリポジトリの実際のコンパイルエラーに対して、約74%の驚くべきピーク精度を達成することができる。
論文 参考訳(メタデータ) (2023-08-09T18:30:27Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。