4

アイデアを探しています。何らかの形で、Perl コードに削除が難しい著作権コメントを随所に追加して、ほとんど判読できず、正規表現を使用して削除するのが困難になるようにすることができます。実行可能。


コメンターの1人が以下で指摘しているように、次のトリックはそのような通常のテクニックに適用できます。

perl -MO=Deparse obfuscated.pl > plaintext.pl

おそらく、ここの誰かが回避策を見つけることができます。

4

3 に答える 3

7

私の貢献は簡単に回避できますが、ずさんなコード スティーラーにつまずく可能性があります。著作権表示が改ざんされている場合、コードに微妙なバグを導入します。

例:

sub square_root {
    my $arg = shift;
    return sqrt($arg + 0.1 * apply_fudge_factor());
}

sub apply_fudge_factor {
    return 8410 != unpack("%32W*", ($::D//=join'',<DATA>));
}

print "sqrt(9)=",square_root(9);

__END__
=head1 NAME

my_program.pl - a program by me, and not by you

=head1 AUTHOR

Copyright (c) 2014 by Me

=cut

Pod のチェックサムは 8410 です。__END__トークンの後に変更を加えると、プログラムの出力は次のようになります。

sqrt(9)=3.01662062579967
于 2014-03-03T17:51:44.520 に答える
1

あなたの作品の功績を故意に認めようとする人は、あなたがどのように追加したとしても、あなたの著作権表示を削除することについて二度考えないでしょう. 実際には、コードでは簡単に解決できない、より大きな問題があります。

そうは言っても、私がかつて使用したトリックの 1 つは、16 進エディターを使用して、アプリケーションで使用される JPEG 画像の末尾にテキストを追加することでした。多くのプログラムはこの追加情報を単純に無視します。また、通常の EXIF フィールドの外に追加されるため、イメージ エディターだけを使用して検出するのは難しい場合があります。詳細については、次のリンクを参照してください...

http://en.wikipedia.org/wiki/ステガノグラフィー

もう 1 つのオプションは、Windows システムを使用している場合、「代替データ ストリーム」と呼ばれるものにデータをロードする古いトリックです。

于 2014-03-03T18:01:30.267 に答える