- blogs:
- cles::blog
2015/02/12

ソースコードから作者を特定する研究


実はプログラミングの課題程度であればサイクロマチック数やCKメトリクスなどの簡単なメトリクスと、変数やメソッドの名前程度を抽出して比較すると課題のコピペが判定できるというのは経験則で分かっていました。AST などを用いるともっと精度が上がったりするのかなとちょっと思ったりしたこともあったのですが、実際にやってみると驚異的な結果を生み出すようですね。これは面白そうなので、ちょっと読んでみようと思います。
精度95%以上! ソースコードは指紋、作者はほぼ特定できる : ギズモード・ジャパン
解析されるのは、レイアウトや語彙の特性と、「抽象構文木(AST)」です。ASTとは、「コードの書き方からまったく影響を受けずに、コードの型の特性をとらえる」もので、つまり、関数の名前、コメント、スペース入れ方などのクセ以上のものを探し出し、作者を特定するカギにする、というわけです。
研究チームが開発した機械学習ソフトウェアで、Google Code Jamに公開されているコードの分析を試しに行ってみたところ、あるひとりの人が書いた630行のコードを分析すれば、95%の精度でその作者が特定できたそうです。
オリジナルはAylin Caliskan-Islam氏の以下の論文のようです。
- Aylin Caliskan-Islam, Richard Harang, Andrew Liu, Arvind Narayanan, Clare Voss, Fabian Yamaguchi, Rachel Greenstadt, "De-anonymizing Programmers via Code Stylometry," 2015.
- Anonymous programmers can be identified by analyzing coding style
トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/7388
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
サイト内検索
検索ワードランキング
へぇが多いエントリ
閲覧数が多いエントリ
1 . アーロンチェアのポスチャーフィットを修理(112074)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(110700)
3 . 年次の人間ドックへ(110319)
4 . 2023 年分の確定申告完了!(1つめ)(109867)
5 . 三菱鉛筆がラミーを買収(109774)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(110700)
3 . 年次の人間ドックへ(110319)
4 . 2023 年分の確定申告完了!(1つめ)(109867)
5 . 三菱鉛筆がラミーを買収(109774)
cles::blogについて
Referrers