Pythonフォレンジック-Pythonの概要

Pythonで記述されたコードは、CやPascalなどの他の従来のプログラミング言語で記述されたコードと非常によく似ています。Pythonの構文はCから大いに借用されているとも言われています。これには、C言語に類似したPythonキーワードの多くが含まれます。

Pythonには、フォレンジック用にデータを正確に抽出するために使用できる条件文とループ文が含まれています。フロー制御のために、それは提供しますif/elsewhile、および高レベル for 「反復可能な」オブジェクトをループするステートメント。

if a < b: 
   max = b 
else: 
   max = a

Pythonが他のプログラミング言語と異なる主な領域は、 dynamic typing。オブジェクトを参照する変数名を使用します。これらの変数を宣言する必要はありません。

データ型

Pythonには、文字列、ブール値、数値などの組み込みデータ型のセットが含まれています。不変の型もあります。これは、実行中に変更できない値を意味します。

Pythonには、次のような複合組み込みデータ型もあります。 tuples 不変の配列であり、 lists、および dictionariesハッシュテーブルです。それらはすべて、証拠を収集しながら値を保存するためにデジタルフォレンジックで使用されます。

サードパーティのモジュールとパッケージ

Pythonは、モジュールやパッケージのグループもサポートしています。 third-party modules (単一のソースファイルにグループ化された関連コード)プログラムの編成に使用されます。

Pythonには広範な標準ライブラリが含まれています。これは、計算科学捜査で人気がある主な理由の1つです。

Pythonコードのライフサイクル

  • 最初に、Pythonコードを実行すると、インタープリターはコードの構文エラーをチェックします。インタプリタが構文エラーを検出すると、エラーメッセージとしてすぐに表示されます。

  • 構文エラーがない場合、コードはコンパイルされて、 bytecode PVM(Python Virtual Machine)に送信されます。

  • PVMは、ランタイムエラーまたは論理エラーがないかバイトコードをチェックします。PVMがランタイムエラーを検出した場合、エラーメッセージとしてすぐに報告されます。

  • バイトコードにエラーがない場合、コードが処理され、その出力が得られます。

次の図は、Pythonコードが最初に解釈されてバイトコードが生成される方法と、バイトコードがPVMによって処理されて出力が生成される方法をグラフで示しています。