Jako naukowiec chciałbym zachować jakiś oficjalny zapis czasu, kiedy sprawdzę coś w moim repozytorium Git. To w celu późniejszego poparcia roszczeń osób, które wymyśliły to, co pierwsze, na przykład w sporach patentowych.Git: Czy da się sfałszować datę podpisania tagu?
W tej chwili od czasu do czasu dodać tag do mojego repozytorium tak:
git tag -s -m "`date`" 2012-08-20
i przesunąć znaczniki do centralnego serwera:
git push --tags
Ciągnięcie tag pokazuje data podpisałem go z moim kluczem:
git tag -v 2012-08-20
object 2d6f6035270e8e44c035431e99be8da3fccee095
type commit
tag 2012-08-20
tagger My Full Name <[email protected]> 1345466433 +0200
Mon Aug 20 14:40:33 CEST 2012
gpg: Signature made Mon Aug 20 14:40:37 2012 CEST using RSA key ID somekey
gpg: Good signature from "My Full Name <[email protected]>"
gpg: aka "My Full Name <personal-email>"
Moje pytanie brzmi, jak te terminy są bezpieczne? Czy można później z nimi manipulować?
EDYCJA: aby wyjaśnić, ale dalej, chciałbym być w stanie udowodnić, że byłoby bardzo mało prawdopodobne, że zmieniłem tagów później.
Podczas podpisywania kodu wykonywalnego przy użyciu podpisu Microsoft Authenticode można skorzystać z usługi "znakowania czasem", która weryfikuje czas, w którym podpis został podpisany, o ile ufasz dostawcy usług oznaczania czasu. Nie znam innego sposobu podpisywania czegoś za pomocą znacznika czasu, zwłaszcza jeśli legalnie by się trzymał, ale możesz szukać tego terminu. –