Qual é o significado exato dos comentários do QuickSFV no final de um arquivo SFV?

0

Quais são os comentários do QuickSFV no final de um arquivo SFV com base em?

25-Monty_Python-The_End-EOS.mp3 D387716E
;Q1-1c11727069c13b6
;Q1-///4AA==

Na versão 2, tinha mais uma linha:

cowiso-xvid-yrrol.part48.rar 60C3AB2E
cowiso-xvid-yrrol.part49.rar E50D18BC
;Q2-1c25890ae82a640
;Q2-8KmPHkmiwgE=
;Q2-////////gA==

Os arquivos SFV têm diferentes tipos de comentários dependendo da ferramenta, mas somente o QuickSFV edita o arquivo e armazena informações estranhas em o fim. Consulte as Perguntas frequentes sobre o SFV para obter mais informações sobre o formato de arquivo SFV.

O ; indica o início de uma linha comentada e Q1- e Q2- parecem se referir à versão principal do QuickSFV. Analisei o histórico de versões e estas são as minhas descobertas até agora:

v1.50b changes: A small bug was fixed when the last line of an .SFV file did not end with a CR or LF. The "Previously Checked Files" database would be tacked on to the end of that line instead of on a line by itself.

v1.51 changes: If an SFV file already has an existing DB embedded in it, QuickSFV will use it but not update it or remove it.

Ele é chamado de banco de dados "Arquivos verificados anteriormente".

v1.60 changes: A unique signature is now recorded within the Previously Checked Files database to keep track of whether the database was created by the current user or a different user. This will help when SFV file creators verify the files and leave the Previously Checked Files database in place when uploading the SFV file. This signature is simply a random number and contains no specific information to the machine it is running on. It is generated during install or if the corresponding INI setting is missing. Upgrading will maintain this signature as long as you install to the same folder as the existing version of QuickSFV. Installing to a new folder will reset this signature causing QuickSFV to ignore the Previously Checked Files database when verifying. Uninstalling QuickSFV will erase the signature.

O número aleatório está em um arquivo quicksfv.conf que pode ser encontrado em C:\Users\User\AppData\Local\QuickSFV para a versão 3 e se parece com Signature=1234567890 , um número de 10 caracteres e parece ser aleatório. A versão 2 ini está localizada em C:\Program Files (x86)\QuickSFV\QuickSFV.ini e contém uma cadeia hexadecimal de 15 caracteres. Nos exemplos acima, esta é a primeira linha. Esta linha permanecerá a mesma para um sistema e poderá identificar uma instalação.

Não estou convencido de que esta string ainda seja completamente única ou aleatória! Arquivos aleatórios SFV na Internet parecem começar com 1c ou 1d . Talvez seja baseado no timestamp da instalação? Para o meu teste, começou com 1d, enquanto todos os arquivos mais antigos parecem começar com o outro.

Depois dessa suspeita, recebi o seguinte resultado da experimentação:

Signature=1d17fc36609ef78
      ;Q2-1d17fc7bfca4eee
      ;Q2-1d17fc830b747a9

É claramente um número incremental. Como transformar isso em uma data ou é outra coisa?

v2.00 changes: Added an expiration function for the Previous Verified DB. This is an .INI setting allowing you to specify the maximum date of the DB before assuming it is old and reverifying all of the files. It defaults to no expiration, but [...] Added right-click menu option to remove all Previously Verified DB info from the current .SFV file.

O registro de data e hora de um arquivo é modificado após a alteração do banco de dados. É assim que esse recurso funciona.

E depois há mais uma ou duas linhas para explicar. O que exatamente eles representam? Como esse banco de dados funciona?

    
por Gfy 16.03.2016 / 22:54

3 respostas

1

Eu olhei para isso um pouco hoje depois de encontrar seu post.

Eu não posso comentar muito sobre a primeira linha. Como você sabe, é a assinatura escrita quando o QuickSFV é instalado. Infelizmente isso é tudo que eu sei também.

A segunda linha é um registro de data e hora FILETIME codificado por Base64 do Windows. Segundo a Microsoft, esse valor é "o número de intervalos de 100 nanossegundos desde 1º de janeiro de 1601 (UTC)". O QuickSFV escreve a hora atual do sistema quando a verificação / verificação é concluída (incluindo quando apenas verifica seu banco de dados sem verificar / verificar quaisquer arquivos).

A terceira linha, um conjunto codificado por Base64 de bits de sinalização. 0 significa ausente ou ruim e 1 significa verificado. Se houver 1 arquivo, haverá exatamente um bit de sinalização e, se houver 1000 arquivos, haverá 1000 bits de sinalização.

Espero que isso ajude qualquer um que tente usar o banco de dados Arquivo Verificado Anteriormente em arquivos .sfv.

    
por 03.06.2016 / 02:07
1

A assinatura não é aleatória. É o mesmo tipo de registro de data e hora do Windows. Eu acho que é provavelmente único o suficiente em todos, mas o caso de borda extrema, mas não inclui qualquer tipo de informação de identificação sobre o usuário ou sistema. Eu acho que é uma ótima solução de precisar de um identificador 'único-suficiente', mas não identificando verdadeiramente o usuário / computador. Legal se você me perguntar.

Também posso dizer que a assinatura é usada para determinar se o SEU sistema verificou os arquivos ou não. Se as assinaturas não corresponderem, ela ignorará os sinalizadores e verificará novamente todos os arquivos. Além disso, o motivo do timestamp provavelmente é compará-lo com os arquivos somados por cheque. Se um dos arquivos somados por verificação tiver um registro de data e hora posterior ao que está armazenado no arquivo .sfv, esse arquivo provavelmente terá sido alterado e deverá ser verificado novamente.

    
por 24.06.2016 / 17:06
0

Eu criei uma página da Web para colar em um arquivo SFV e o resultado será lançado: link

As respostas dadas estão corretas. Usando JavaScript para isso foi a parte complicada:)

  • A assinatura é um registro de data e hora FILETIME codificado como um grande número hexadecimal: os bits de alta ordem são anteriores aos bits de baixa ordem. O zero inicial do primeiro byte não é mostrado.

  • A segunda linha é um registro de data e hora FILETIME do Windows, mas a estrutura é codificado em Base64. Os primeiros 32 bits são os bytes de baixa ordem.

  • A terceira linha, um conjunto codificado por Base64 de bits de sinalização.

por 06.08.2016 / 21:00

Tags