1

小さな C++ ソフトウェアを配布する必要があります。ヘッダー ファイルをいくつかの実装 (式テンプレートを使用しました) でマスクして、最終ユーザーが判読できないようにして変更できないようにしたいと考えています。コードを静的ライブラリまたは動的ライブラリに含めることはできません。ヘッダー ファイルの内容をマスクする方法はありますか?

ありがとうございました!

4

2 に答える 2

3

これがヘッダーのみの実装である場合、変数と保護/プライベート メンバー関数の名前をほとんど意味のない名前に変更する以外に、できることはあまりありません (したがって、すべてが xx、yy、aa、bb、ll l1、I と呼ばれます)。 、 など)

あなたの機能がユニークで、ソース コードとして非常に価値がある場合、誰かが「難読化を解除する」努力をします。IOCCC コードの難読化を解除するのに 30 分ほど費やして、適度に読みやすく理解しやすいものにすることができたとしても、それよりも難しくするためにどの手法を使用するのかわかりません (確かに、コードは大きくなる可能性があるため、時間がかかりますが、ほとんど無意味です)。

于 2013-05-31T10:18:42.093 に答える
1

ヘッダー ファイルをいくつかの実装 (式テンプレートを使用しました) でマスクして、最終ユーザーが判読できないようにして変更できないようにしたいと考えています。

ユーザーがコードを変更しないことが重要なのはなぜですか?

コードを静的ライブラリまたは動的ライブラリに含めることはできません。

理由の詳細を教えていただけますか?

ヘッダー ファイルの内容をマスクする方法はありますか?

あまり。ヘッダー ファイルは、コンパイル時にテキストでインクルードされます。

コードを難読化して、意味が分からないようにすることができます (各関数名を異なる数のアンダースコアに置き換えることが思い浮かびます)。 (あなたがしたことを理解するためにもっと努力するだけです)。

于 2013-05-31T10:52:28.107 に答える