マルチファクター・オープンソース検出

Black Duck®の多元的なオープンソース・スキャニング技術は、アプリケーションやコンテナに含まれているオープンソースの最も包括的で正確なビューを提供します。当社のオープンソース検出では、ビルド・プロセスの監視とファイル・システム・スキャニングを組み合わせることで、多くのソリューションが見逃してしまうコンポーネントを含む使用中のすべてのオープンソースのトラッキングが可能です。

依存関係の解析
依存関係の解析

MavenやGradleなどのビルド・ツールと統合して、JavaやC#などの言語でビルドされたアプリケーション内のオープンソースの宣言された依存関係と推移的な依存関係の両方を追跡します。

コードプリント解析
Codeprint解析

文字列、ファイル、およびディレクトリ情報をBlack Duck KnowledgeBaseにマップして、CやC++などの言語を使用してビルドされたアプリケーションのオープンソースおよびサードパーティーのコンポーネントを識別します。

バイナリ解析
バイナリ解析

コンパイル済みアプリケーション・ライブラリおよび実行可能ファイル内のオープンソースを識別します。ソースコードやビルド・システムにアクセスする必要はありません。

スニペット解析
スニペット解析

独自開発コード内でコピーされたオープンソース・コードの一部を検索します。これにより、ライセンス違反や競合が発生する可能性があります。

package宣言だけでは不十分な理由

他の多くのソリューションは、パッケージ・マネージャの宣言のみを頼りにオープンソース・コンポーネントを識別しています。しかしこれらのソリューションは、次のような場合にコードに紛れ込んでいる可能性がある多数のオープンソースを見逃しています。

  • オープンソースの開発者が追加したコードをパッケージ・マニフェストで宣言していない
  • CやC++などの言語で記述されたオープンソースで、パッケージ・マネージャーを使用していない
  • コンテナ内部に構築されたオープンソースで、パッケージ・マネージャーを使用していない
  • すでにコンパイルされたバイナリ内のオープンソースで、宣言されていないもの

さらに、これらのソリューションは、package宣言で構築物に含まれる単一のバージョンを指定していない場合に、推移的な依存関係およびコンポーネントについて不正確な結果を出すことがあります。

Black Duckは、コードプリント解析と依存関係解析を組み合わせることで、パッケージ・マネージャーがトラッキングしていないオープンソース・コンポーネントを可視化し、動的および推移的な依存関係についてはコンポーネントおよびバージョン情報を提供します。  

CI/CDパイプラインに簡単に統合

オープンソース・ディスカバリ・クライアントであるBlack Duck Detectを利用することにより、既存の開発ツールおよびプロセスへのオープンソースの統合が容易になります。Black Duck Detectは、使われている言語やパッケージ・マネージャを自動的に識別し、ディスカバリに適した統合を設定して、最も効果的にコードを解析する方法を見つけます。

Black Duck統合の詳細はこちら