論文の概要: The Effect of Code Obfuscation on Human Program Comprehension
- arxiv url: http://arxiv.org/abs/2603.07668v1
- Date: Sun, 08 Mar 2026 15:02:47 GMT
- ステータス: 翻訳完了
- システム内更新日: 2026-03-10 15:13:15.012936
- Title: The Effect of Code Obfuscation on Human Program Comprehension
- Title(参考訳): コード難読化がヒューマンプログラム理解に及ぼす影響
- Authors: Anh H. N. Nguyen, Jack Le, Ilse Lahnstein Coronado, Tien N. Nguyen,
- Abstract要約: コード難読化が出力予測タスクを通してプログラムの人間の理解にどのように影響するかを検討する。
難読化コードから、リネーム、逆ミスリード識別子、制御-フロー修正、これらのテクニックの組み合わせを含む変換まで、さまざまなレベルの難読化を構築します。
その結果,難読化は一般的にコードの推論に必要な時間を増やし,予測精度を低下させる傾向にあることがわかった。
- 参考スコア(独自算出の注目度): 8.277193480493327
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: We investigate how code obfuscation influences human understanding of programs through an output-prediction task. To study this effect, we construct multiple levels of obfuscation, ranging from unobfuscated code to transformations involving identifier renaming, adversarially misleading identifiers, control-flow modifications, and combinations of these techniques. These transformations are applied to function-level programs written in Python and JavaScript. Participants were asked to predict program outputs while we recorded correctness, response time, and self-reported programming experience. Our results show that obfuscation generally increases the time required to reason about code and tends to reduce prediction accuracy. However, the relationship between obfuscation strength and performance is not strictly monotonic and varies across programming languages. JavaScript exhibits the expected pattern of increasing difficulty with stronger obfuscation, whereas Python displays a more complex trend in which certain renaming transformations can perform comparably to, or occasionally better than, the unobfuscated baseline. Response-time analyses further suggest that obfuscation shifts participants away from rapid, heuristic reasoning toward slower and more deliberate reasoning processes. Performance appears highest within a moderate range of response times, indicating that careful deliberation can improve accuracy, while extremely long response times often correspond to confusion. Finally, programming experience predicts performance primarily within a given language, with limited transfer across languages, suggesting that obfuscation challenges language-specific familiarity more than general programming ability.
- Abstract(参考訳): コード難読化が出力予測タスクを通してプログラムの人間の理解にどのように影響するかを検討する。
この効果を研究するために, 難読化コードから識別子リネーム, 逆転型識別子, 制御-フロー修正, それらの組み合わせを含む変換まで, さまざまな難読化レベルを構築した。
これらの変換は、PythonとJavaScriptで書かれた関数レベルプログラムに適用される。
参加者は、正確性、応答時間、自己報告されたプログラミング経験を記録しながら、プログラムのアウトプットを予測するよう求められた。
その結果,難読化は一般的にコードの推論に必要な時間を増やし,予測精度を低下させる傾向にあることがわかった。
しかし、難読化強度と性能の関係は厳密には単調ではなく、プログラミング言語によって異なる。
JavaScriptは、強い難読化によって困難が増すと予想されるパターンを示し、一方Pythonは、あるリネーム変換が、非難読化されたベースラインに対して、互換性のある、あるいは時として優れた性能を発揮する、より複雑な傾向を示している。
反応時間分析により、難読化は参加者を急速でヒューリスティックな推論から遅く、より意図的な推論プロセスへと遠ざけることが示唆された。
パフォーマンスは適度な応答時間内で最も高く、注意深い熟考によって精度が向上するが、非常に長い応答時間はしばしば混乱に対応する。
最後に、プログラミング経験は、特定の言語内でのパフォーマンスを予測し、言語間の移動が限られており、難読化は一般的なプログラミング能力以上の言語固有の親しみに挑戦することを示している。
関連論文リスト
- Readability-Robust Code Summarization via Meta Curriculum Learning [53.44612630063336]
現実の世界では、コードが貧弱な構造や難読化され、モデルのパフォーマンスが著しく低下することが多い。
本稿では,可読性の低いコードに対するコード要約の堅牢性を向上する,新しい微調整手法であるRoFTCodeSumを提案する。
論文 参考訳(メタデータ) (2026-01-09T02:38:24Z) - Adapting Language Balance in Code-Switching Speech [60.296574524609575]
大規模な基礎モデルは、コードスイッチングテストケースといまだに苦労しています。
我々は、世代間のコンテキストバイアスを軽減するために、微分可能なサロゲートを使用します。
アラビア語と中国語による実験では、モデルの切り替え位置をより正確に予測できることが示されている。
論文 参考訳(メタデータ) (2025-10-21T15:23:55Z) - The Code Barrier: What LLMs Actually Understand? [7.407441962359689]
本研究では,言語モデルの意味理解能力を評価するために,コード難読化を構造化テストフレームワークとして利用する。
難読化の複雑さが増加するにつれて、統計的に顕著な性能低下が見られる。
本研究では,言語モデルにおけるコード理解を評価するための新しい評価手法を提案する。
論文 参考訳(メタデータ) (2025-04-14T14:11:26Z) - ObfusQate: Unveiling the First Quantum Program Obfuscation Framework [0.0]
ObfusQateは、古典的および量子的プログラムのセキュリティを強化するために、量子プリミティブを使用して難読化を行う新しいツールである。
我々は、量子回路レベルの難読化とコードレベルの難読化という2つの主要な難読化のカテゴリを設計、実装した。
論文 参考訳(メタデータ) (2025-03-31T07:02:25Z) - ObscuraCoder: Powering Efficient Code LM Pre-Training Via Obfuscation Grounding [60.37988508851391]
言語モデル(LM)は、コード記述ツールボックスのベースとなっている。
Code-LMの事前学習目標の変更を探求する研究は、データ効率の向上と構文とセマンティクスの相互接続性の向上を目的としており、顕著に不十分である。
本研究では,Code-LMが表面的な構文を超越し,事前学習したサンプルの効率を高めるために,難読化コードの基盤について検討する。
論文 参考訳(メタデータ) (2025-03-27T23:08:53Z) - Understanding Programs by Exploiting (Fuzzing) Test Cases [26.8259045248779]
プログラムのより深い意味理解を実現するために,入力と出力/振る舞いの関係を学習に取り入れることを提案する。
コードの大部分の実行をトリガーするのに十分な入力を得るために,ファズテストを採用し,ファズチューニングを提案する。
提案手法の有効性は,コードクローン検出とコード分類を含む2つのプログラム理解タスクにおいて検証され,最先端技術よりも大きなマージンで優れている。
論文 参考訳(メタデータ) (2023-05-23T01:51:46Z) - Teaching Large Language Models to Self-Debug [62.424077000154945]
大規模言語モデル(LLM)は、コード生成において素晴らしいパフォーマンスを達成した。
本稿では,大規模言語モデルで予測プログラムを数発のデモでデバッグする自己デバッグを提案する。
論文 参考訳(メタデータ) (2023-04-11T10:43:43Z) - NAPG: Non-Autoregressive Program Generation for Hybrid Tabular-Textual
Question Answering [52.10214317661547]
現在の数値推論法はプログラムシーケンスを自己回帰的にデコードする。
プログラム生成の精度は、デコードステップがエラー伝搬によって展開されるにつれて急激に低下する。
本稿では,非自己回帰型プログラム生成フレームワークを提案する。
論文 参考訳(メタデータ) (2022-11-07T11:25:21Z) - Searching for More Efficient Dynamic Programs [61.79535031840558]
本稿では,プログラム変換の集合,変換プログラムの効率を評価するための単純な指標,およびこの指標を改善するための探索手順について述べる。
実際に、自動検索は初期プログラムの大幅な改善を見出すことができることを示す。
論文 参考訳(メタデータ) (2021-09-14T20:52:55Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。