Pythonフォレンジック-基本的なフォレンジックアプリケーション
フォレンジックガイドラインに従ってアプリケーションを作成するには、その命名規則とパターンを理解し、それに従うことが重要です。
命名規則
Pythonフォレンジックアプリケーションの開発中、従うべきルールと規則を次の表に示します。
定数 | アンダースコア区切りの大文字 | 高温 |
ローカル変数名 | でこぼこのキャップ付き小文字(アンダースコアはオプション) | currentTemperature |
グローバル変数名 | 接頭辞gl小文字、でこぼこのキャップ(アンダースコアはオプション) | gl_maximumRecordedTemperature |
関数名 | 能動態のあるでこぼこのキャップ(アンダースコアはオプション)の大文字 | ConvertFarenheitToCentigrade(...) |
オブジェクト名 | 接頭辞ob_小文字ででこぼこのキャップ | ob_myTempRecorder |
モジュール | アンダースコアの後にでこぼこのキャップが付いた小文字 | _tempRecorder |
クラス名 | class_のプレフィックスを付けてから、でこぼこのキャップを付け、簡潔にします | class_TempSystem |
計算フォレンジックにおける命名規則の重要性を理解するためのシナリオを考えてみましょう。データの暗号化に通常使用されるハッシュアルゴリズムがあるとします。一方向ハッシュアルゴリズムは、入力をバイナリデータのストリームとして受け取ります。これは、パスワード、ファイル、バイナリデータ、または任意のデジタルデータである可能性があります。次に、ハッシュアルゴリズムはmessage digest (md)入力で受信したデータに関して。
特定のメッセージダイジェストを生成する新しいバイナリ入力を作成することは事実上不可能です。バイナリ入力データの1ビットでも変更すると、前のメッセージとは異なる一意のメッセージが生成されます。
例
上記の規則に従った次のサンプルプログラムを見てください。
import sys, string, md5 # necessary libraries
print "Please enter your full name"
line = sys.stdin.readline()
line = line.rstrip()
md5_object = md5.new()
md5_object.update(line)
print md5_object.hexdigest() # Prints the output as per the hashing algorithm i.e. md5
exit
上記のプログラムは、次の出力を生成します。
このプログラムでは、Pythonスクリプトが入力(フルネーム)を受け入れ、md5ハッシュアルゴリズムに従って変換します。必要に応じて、データを暗号化し、情報を保護します。フォレンジックガイドラインに従って、証拠の名前またはその他の証拠をこのパターンで保護できます。