習慣的にファイル名にファイル形式を表す拡張子を含むシステムでは、拡張子 ".png" が PNG ファイルに推奨されています。大文字小文字を区別するファイル名のときは小文字で ".png" が望ましいでしょう。
Internet Assigned Numbers Authority (IANA) は PNG に対するインターネットメディアタイプとして "image/png" を登録しました [RFC-2045], [RFC-2048]。デコーダは登録が完了するまで暫定的に使われていたメディアタイプ "image/x-png" もサポートすることを選択できます。
Apple の Macintosh システムでは、以下の慣例が推奨されます:
PNG ファイルに対する 4-byte のファイル形式コードは "PNGf" です。(このコードは Apple によって PNG ファイルに登録されました)。クリエーターコードは生成したアプリケーションによって変化します。
データフォークの内容はこの仕様書に記述されているとおりの PNG ファイルである必要があります。
リソースフォークの内容は明記しません。それは空、もしくは、アプリケーションに依存したリソースを格納します。
Macintosh の PNG ファイルを非 Macintosh システムに移動するときは、データフォークのみを転送するべきでしょう。
PNG それ自体は厳密に単一画像のフォーマットです。しかし、複数の画像をひとつのファイルに保存する必要があるかもしれません。たとえば、GIF のアニメーションファイルを変換する必要があるとき。PNG Development Group は PNG を元にし、"Multiple-image Network Graphics (MNG)" [MNG] と呼ばれる複数画像のフォーマットを定義し認可しています。これは別個のファイルフォーマットであると考え、異なるシグネチャを持ちます。PNG をサポートするアプリケーションは複数画像のフォーマットをサポートすることを選択することもしないこともできます。
論拠は:Why not these features? を参照してください。
PNG ファイルもしくはデータストリームははっきりと形式づけられた「チャンク」の集まりとして構成されます。仕様書によって内容が定義されたチャンクは、実際には悪意のあるコードを含むあらゆるものを格納できます。しかし、PNG イメージをデコードすることによって受け手側のコンピュータ上でそのような悪意のあるコードが実行できる危険は知られていません。
プライベートチャンク形式や将来のチャンク形式と関連するセキュリティ上の危険は現在特定することはできません。セキュリティの問題点は公開チャンクとして登録するように提案されたチャンクを評価するときに考慮されるでしょう。未知の、もしくは実行できないチャンク形式に関するさらなるセキュリティ上の危険はありません。なぜなら、そのようなチャンクは無視されるか、せいぜい、他の PNG ファイルにコピーされるだけです。
text チャンクはキーワードとプレーンテキストとして表示されるデータを格納します。iCCP, sPLT といくつかの公開「拡張」チャンクはプレーンテキストとして表示されるキーワードを格納します。デコーダがコントロール文字、とくに ESC (エスケープ) 文字を削除することなくそのような文字を表示したなら、いくつかのシステムもしくは端末は望ましくなく、不安定な挙動をするかもしれません。デコーダはこの危険を回避するためにコントロール文字を削除することを推奨されます。デコーダに対する勧告: Text chunk processing を参照してください。
すべてのチャンクは長さフィールドで始まりますので、バッファをあふれさせるような意図を持った不正なチャンクに対して堅牢なデコーダを書くことは簡単です。すべてのチャンクの最後の CRC は偶発的な不正データに対して頑丈な防御となります。また、PNG のシグネチャバイトは一般的なファイル転送エラーを早期検出します。
CRC のチェックに失敗したデコーダはデータを不正だと見なすことができます。ありそなこのような不正の結果は、イメージ中のピクセルが間違って表示されることです。IHDR チャンクの CRC がチェックされずに幅や高さのフィールドが不正だったとき、より悪いことが起こるかもしれません。デコーダに対する勧告は: Error checking を参照してください。
不十分に書かれたデコーダはバッファをあふれさせることを受け入れるかもしれません。なぜなら、チャンクは バイト長までなら、非常に大きくなるためです。しかし、適切に書かれたデコーダは難なく巨大なチャンクを扱うでしょう。