一般的には、まだ開発中のものが実用化された場合にどのようなものになるかを示すために用いられるが、セキュリティにおいては、脆弱性のあるコードのどこに問題があるのかをはっきりと示すために用いられる。
未完成だが、機能面については、はっきりと伝えられる状態にあることを指す。
「概念実証」「コンセプト実証」と訳され、完成する以前の、開発中にある新しい機能や理論、アーキテクチャなどの有効性や意義を伝えようとすることを意味する。ソフトウェアのみならず、製品や設備など幅広い分野で用いられる。
似たような言葉に「モックアップ」があるが、こちらは形状として本物と同じように仕上げられたものを指す。それに対してPoCは、モックアップのような外見上ではなく機能面をはっきりとさせるものであるといえる。
この、モックアップとPoCの両者が用意されると、完成品の一歩手前の「試作品」(プロトタイプ)という工程に進むことになる。
一方、ITセキュリティの分野では、プログラムコードに関連して用いられ、特に、脆弱性が新たに発見された場合に、どこに欠陥があり、どういった影響を及ぼし得るのか(=概念、コンセプト)など、プログラムに潜む問題点を明確にする(=実証する)ために用意されたコードを意味する。
PoCは、防御を行う側がセキュリティ対策のために検査用として作成し公開する場合もあるが、むしろ、攻撃側が攻撃の可能性や有効性を示唆(示威)するために用いられる方が多い。脆弱性を目がけた攻撃を指す場合には「エクスプロイト(コード)」とも言い換えられる。
実際のところ、PoCとして公開されたプログラムは、攻撃側の手によって実質的な被害を与えるマルウェアへと練り上げられることがある。そのため、PoCは検証を目的としたり注意を喚起するために用いられたりもするが、取り扱いには十分な注意が必要となる。