講演名 2003/3/19
データの符号化と演算の変換によるプログラムの難読化手法(モバイル環境におけるPerson to person高信頼性情報流通技術)(情報通信サブソサイエティ合同研究会)
佐藤 弘紹, 門田 暁人, 松本 健一,
PDFダウンロードページ PDFダウンロードページへ
抄録(和) 本稿では,プログラムに対する不正な解析を困難Fすることを目的として,データと演算が隠蔽されたプログラムを構成する系統的な手法を提案する.その実施手順は,3つのステップから構成される:(1)プログラム中のデータを符号化する,(2)演算結果も符号化された状態になるように,演算の置き換えを行う,(3)得られた演算結果を必要な時に復号する.そして,線形変換によるデータの符号化に対する演算子の変換規則を提案する.提案手法によって得られるプログラムは,データが符号化された状態のまま演算が行われるため,スタックメモリ上には符号化されたデータが現れることになる,したがって,実行時にスタック上に現れるデータを常に監視するような解析に対しても有効であり,復号鍵,復号アルゴリズム,認証等のセキュリティに関わるソフトウェアシステムを保護する効果が期待できる.
抄録(英) Protecting a program against illegal hacking and manipulations is a crucial problem for the software industry. For this purpose, this paper proposes a systematic method to obfuscate a program by applying a specific transformation to data and operators in the program. The proposed method consists of the following three steps: (1) encode each data (operand) appearing in a given expression, (2) replace operators in the expression, so that the evaluated value of the expression becomes an encoded value, (3) decode the encoded value when required. We present a set of operator transformation rules applied to data encoding based on linear transformation. In the program obtained by the proposed method, the operators are applieddirectly to the encoded data, and thus, the data is observed in the program stack as an "encoded" value. Therefore, the proposed method is especially effective for the program hacking based on stack monitoring at run-time. As a result, it can be applied effectively to protecting software systems with security-related components, such as decrypt keys, decoding algorithms, authentication.
キーワード(和) ソフトウェア保護 / データと演算の隠蔽 / リバースエンジニアリング
キーワード(英) Software Protection / Hiding Data and Its Operation / Reverse Engineering
資料番号 IT2002-49,ISEC2002-107,SST2002-155,ITS2002-132
発行日

研究会情報
研究会 ITS
開催期間 2003/3/19(から1日開催)
開催地(和)
開催地(英)
テーマ(和)
テーマ(英)
委員長氏名(和)
委員長氏名(英)
副委員長氏名(和)
副委員長氏名(英)
幹事氏名(和)
幹事氏名(英)
幹事補佐氏名(和)
幹事補佐氏名(英)

講演論文情報詳細
申込み研究会 Intelligent Transport Systems Technology (ITS)
本文の言語 JPN
タイトル(和) データの符号化と演算の変換によるプログラムの難読化手法(モバイル環境におけるPerson to person高信頼性情報流通技術)(情報通信サブソサイエティ合同研究会)
サブタイトル(和)
タイトル(英) Program Obfuscation by Coding Data and Its Operation
サブタイトル(和)
キーワード(1)(和/英) ソフトウェア保護 / Software Protection
キーワード(2)(和/英) データと演算の隠蔽 / Hiding Data and Its Operation
キーワード(3)(和/英) リバースエンジニアリング / Reverse Engineering
第 1 著者 氏名(和/英) 佐藤 弘紹 / Hirotsugu SATO
第 1 著者 所属(和/英) 奈良先端科学技術大学院大学情報科学研究科
Graduate School of Information Science, Nara Institute of Science and Technology
第 2 著者 氏名(和/英) 門田 暁人 / Akito MONDEN
第 2 著者 所属(和/英) 奈良先端科学技術大学院大学情報科学研究科
Graduate School of Information Science, Nara Institute of Science and Technology
第 3 著者 氏名(和/英) 松本 健一 / Ken-ich MATSUMOTO
第 3 著者 所属(和/英) 奈良先端科学技術大学院大学情報科学研究科
Graduate School of Information Science, Nara Institute of Science and Technology
発表年月日 2003/3/19
資料番号 IT2002-49,ISEC2002-107,SST2002-155,ITS2002-132
巻番号(vol) vol.102
号番号(no) 747
ページ範囲 pp.-
ページ数 6
発行日