2012-06-13 2 views
5

Мне нужно доказать, что программа VB.NET, которую я написал, была написана в определенное время.Любой способ определить, когда была скомпилирована/построена программа .net

(причина - это исследование в области академической целостности, когда кто-то скопировал мой код).

У меня есть весь код на моем диске, включая папки отладки и выпуска, с моим именем пользователя в пути сборки.

Являются ли они их дополнением, что я могу сделать, например, смотреть в двоичных файлах?

+0

Я думаю, что этот вопрос имеет смысл - но его нужно перефразировать. –

+0

Это на вашей машине или на общей? –

+0

Предположительно, каждый из файлов на вашем диске имеет временную метку? Конечно, можно изменить временную метку файлов на диске, поэтому предложите вам как можно скорее сдавать диск следователям, чтобы свести к минимуму вероятность подмены утверждений. –

ответ

1

Первое, что вам нужно сделать, это скопировать все данные, поскольку оно стоит на другом устройстве - убедитесь, что вы сохранили все даты. Не открывайте и не редактируйте какие-либо файлы.

Каждый файл будет иметь три метки времени, когда она была создана, когда она последний раз была изменена и т.д. Они могут быть найдены с помощью DIR/T

/T   Controls which time field displayed or used for sorting 
    timefield C Creation 
       A Last Access 
       W Last Written 

Получить распечатку каталога, как это:

DIR myrootdir /s /ah /as /tc > fileslist.txt 

Это сбросит все файлы с временем создания в файл с именем fileslist.txt

кроме того, как говорит @EricJ: предложить свой диск в качестве доказательства - но, как я сказал сделать скопируйте сначала. Лучше всего сначала сделать копию изображения (резервное копирование Windows) на другой диск.

3

Если вы используете IL Disassembler, чтобы открыть EXE/DLL, затем выберите пункт меню View> Header, в заголовке COFF/PE появится поле «Дата-штамп». Он находится в двоичном формате и соответствует MSDN:

Низкие 32 бита метки времени изображения. Это означает дату и время, когда изображение было создано компоновщиком. Значение представлено в количестве секунд, прошедших с полуночи (00:00:00), 1 января 1970 года, Universal Coordinated Time, согласно системным часам.

+0

+1: Хорошая находка: я быстро посмотрел в ILDASM, но ничего не увидел. –

1

Исследователи все это делают не так.

Любые данные временной метки могут быть подделаны, поэтому наилучшим способом было бы сесть и задать подробные вопросы о том, как работает код, обеим сторонам отдельно. Или попросить обе стороны завершить небольшой тестовый проект, снова отдельно - в условиях экзамена.

Тот, кто скопировал работу, не понимает, что они скопировали, скорее всего, и не сможет воспроизвести что-то на основе подобных понятий.

Тот, кто написал это - ну, если они не изменят, они поймут все это в глубину.

Смежные вопросы