Python 取证 - 取证应用程序基本规范

  • 简述

    要根据取证指南创建应用程序,了解并遵循其命名约定和模式非常重要。
  • 命名约定

    在 Python 取证应用开发过程中,需要遵循的规则和约定如下表所示。
    常数 大写,下划线分隔 HIGH_TEMPERATURE
    局部变量名 带有凹凸大写的小写字母(下划线是可选的) currentTemperature
    全局变量名 带有颠簸大写的前缀 gl 小写(下划线是可选的) gl_maximumRecordedTemperature
    函数名称 带有凹凸大写的大写字母(下划线可选),带有主动语态 ConvertFarenheitToCentigrade(...)
    对象名称 带有颠簸大写的前缀 ob_ 小写 ob_myTempRecorder
    模块 下划线后跟带有凹凸大写的小写字母 _tempRecorder
    类名 前缀 class_ 然后颠簸大写并保持简短 class_TempSystem
    让我们通过一个场景来了解计算取证中命名约定的重要性。假设我们有一个通常用于加密数据的哈希算法。单向哈希算法将输入作为二进制数据流;这可以是密码、文件、二进制数据或任何数字数据。然后哈希算法产生一个message digest(md) 关于输入中接收到的数据。
    实际上不可能创建一个新的二进制输入来生成给定的消息摘要。即使是二进制输入数据的单个位,如果发生更改,也会生成一个唯一的消息,该消息与之前的消息不同。

    例子

    看看以下遵循上述约定的示例程序。
    
    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 哈希算法对其进行转换。如果需要,它会加密数据并保护信息。根据取证指南,证据的名称或任何其他证据的名称都可以在这种模式下得到保护。