Subversion Repositories decoder

Compare Revisions

Regard whitespace Rev 114 → Rev 115

/trunk/Decoder50/DecoderEncDec.pas
1923,14 → 1923,6
{$REGION 'Generate key used by HMAC and Cipher'}
if not OnlyReadFileInfo then
begin
(* TODO: Not implemented for version 3 (actually, I don't understand this description anymore):
The "special-checksum" of a file can be used as the user password.
The formula is:
User-Password = Hash(File-Contents)
Combined formula:
Encryption-Password = Hash->KDfx(Hash(File-Contents), Seed)
What I don't understand: How should the program know if the user password or the "hash" password is used??
*)
if PasswordRBS = '' then
raise Exception.Create('An empty password is not allowed');
 
/trunk/Decoder50/Private/DC4-Format-Specification.txt
8,7 → 8,7
ViaThinkSoft (De)Coder 4.1 Beta
ViaThinkSoft (De)Coder 5.0
Author: Daniel Marschall
Last update: May, 15th 2024
Last update: May, 27th 2024
 
 
CONTENTS
350,14 → 350,6
Binary 0-255 Seed (Random data)
Binary var With DEC 5.1c encrypted data (read until file end minus the size of the checksum and the file terminus)
Encryption-Password = Hash->KDfx(User-Password, Seed); KDFx is proprietary to DEC
[I don't understand this paragraph anymore. You can probably ignore it.]
The final version of (De)Coder 4.1 can also use a 2-factor-method.
The "special-checksum" of a file can be used as the user password.
The formula is:
User-Password = Hash(File-Contents)
Combined formula:
Encryption-Password = Hash->KDfx(Hash(File-Contents), Seed)
[End]
Note that the password is treated as ANSI
Binary var Secured checksum of the data before encryption
= Hash(Hash(Original Data) & Seed & Hash(Seed & Hash(Seed & User-Password)))
371,7 → 363,7
[5.0] DC4 STANDARD 4 USED BY (DE)CODER 5.0
==========================================
 
This file format was intended to be used by (De)Coder 5.0. The file-name extension can be dc4 or dc5.
This file format is used by (De)Coder 5.0. The file-name extension can be dc4 or dc5.
 
---------------------------------------------------------------------------------------------------
Offset Type Size Content/Description
379,7 → 371,7
00h Binary 31 Magic Sequence; Hardcoded value: "[1.3.6.1.4.1.37476.2.2.1.4.4]" + CRLF
This is the OID { iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 37476 products(2) decoder(2) fileformat(1) dc4(4) std4(4) }
1Fh Byte 1 Flags
Bit 0/LSB: [Ver1+] Is packed folder (1) or a regular file (0)?
Bit 0/LSB: [Ver1+] Is 7zip-packed folder (1) or a regular file (0)?
Bit 1: [Ver2+] Additionally ZLib compressed (1) or not ZLib compressed (0)?
Bit 2: Reserved
Bit 3: Reserved
525,11 → 517,11
Latest version of this specification:
https://github.com/danielmarschall/decoder/blob/master/Decoder50/Private/DC4-Format-Specification.txt
 
Source code and program "(De)Coder" downloadable at:
Source code and program "(De)Coder" at GitHub:
https://github.com/danielmarschall/decoder/
 
OID which describes this file format:
https://hosted.oidplus.com/viathinksoft/?goto=oid%3A1.3.6.1.4.1.37476.2.2.1.4
 
Delphi Encryption Compendium (DEC) downloadable at:
Delphi Encryption Compendium (DEC) at GitHub:
https://github.com/MHumm/DelphiEncryptionCompendium