質問: maven central など nexus repository を利用することで、いろいろな jar ファイルを依存関係として追加できます。ふと、ここでアップロードされている jar ファイルが、対象のソースコードからビルドされているのかを確かめる方法があるのか、と疑問に思いました。というのも、ソースコードをビルドしてデプロイする間に、悪意の第三者が入りこんで、 jar の成果物を置き換えることが、できてしまうのではないか、と考えたからです。 質問: * ビルドされたであろうソースコードがわかっている場合に、対象の jar ファイルが、確かにそのソースコードをビルドした結果得られるものであると検証することはできますか?
回答: JD-GUIなどのデコンパイラを利用して、クラスファイルを一括で逆コンパイルして、ソースコードと比較するというのはどうでしょうか?もしくは逆にソースコードをコンパイルして比較するとか。