Acaba de presentarse el KGB Archiver 2.0 beta 1. Habiéndolo probado, reconozco que a nivel de compresión ha avanzado muchísimo comparado con lo que vimos en La verdad sobre el KGB.
Como WinUDA 0.2, KGB estaba basado en el algoritmo PAQ6, pero la versión 2, soporta los algoritmos de compresión PAQ1 a PAQ7, y en breve se añadirá el PAQ8 (como UDA 0.3).
He procedido a hacer una prueba de compresión rápida con los compresores más habituales para ver como quedaba KGB.
Compresor | Tiempo (mm:ss) | Tamaño |
Original | N/A | 651.865 bytes |
WinRAR 3.70 beta 3 (ZIP Best) | 00:00 | 85.736 bytes |
7-Zip 4.44 Beta (ZIP Ultra Deflate64) | 00:02 | 75.465 bytes |
WinACE 2.65 (ACE 4096K Best) | 00:02 | 76.609 bytes |
Pimple 1.25 | 00:02 | 72.021 bytes |
UHARC 0.6b (-m3 -mm+ -md32768 -md+) | 00:01 | 66.874 bytes |
WinRAR 3.70 beta 3 (RAR Best) | 00:01 | 63.192 bytes |
7-Zip 4.44 Beta (7z Ultra -557 Mb-) | 00:01 | 59.863 bytes |
Squeez 5.5 (Ultra 32 Mb) | 00:05 | 58.576 bytes |
UHARC 0.6b (-mx -mm+ -md32768 -md+) | 00:01 | 56.637 bytes |
KGB 2 beta 1 (PAQ1 -58 Mb-) | 00:04 | 56.534 bytes |
KGB 2 beta 1 (PAQ2 -60 Mb-) | 00:05 | 51.639 bytes |
KGB 2 beta 1 (PAQ3 -201 Mb-) | 00:06 | 51.697 bytes |
KGB 2 beta 1 (PAQ4 -344 Mb-) | 00:14 | 50.414 bytes |
KGB 2 beta 1 (PAQ5 -367 Mb-) | 00:20 | 48.590 bytes |
WinRK 3.0.3 Beta (High -480 Mb-) | 00:17 | 46.056 bytes |
KGB 2 beta 1 (PAQ6 Very good -406 Mb-) | 00:37 | 45.214 bytes |
WinUDA 0.291 Classic (Mode-3 -194 Mb-) | 00:15 | 43.180 bytes |
UDA 0.301 | 00:19 | 37.932 bytes) |
WinRK 3.0.3 Beta (Maximum PWCM -500 Mb-) | 02:13 | 34.221 bytes |
KGB 2 beta 1 (PAQ7 Extreme -492 Mb-) | 01:27 | 33.527 bytes |
PAQ8D (-6 -450 Mb-) | 02:03 | 30.356 bytes |
Como se puede ver, el grado de compresión es excelente, mientras que usando PAQ1-PAQ4 los tiempos de compresión son razonables. De momento WinRK sigue siendo una mejor alternativa, pero parece que el desarrollo últimamente no es demasiado activo, así que habrá que ver como evoluciona KGB.
Hay que remarcar que los algoritmos PAQ, ofrecen tremendos grados de compresión, el precio a pagar es que compresión/descompresión es casi simétrica. Es decir, la velocidad que se tarda en descomprimir es casi la misma que se tardó en comprimir (que habitualmente es mucho tiempo). Por lo que de momento quedan fuera de los algortimos de compresión de datos de propósito general.
Por lo pronto, aunque el motor de compresión está escrito en C++, el interfaz es .NET, lo que le quita algo de agilidad, y llena de runtimes la máquina. Asímismo la falta de una versión nativa x64 impide que se aprovechen los recursos de las máquinas actuales en procesos de cálculo intensivo como es la compresión.
Personalmente me habría conformado con un IDE como el WinUDA junto a algunas optimizaciones al motor 0.301.
Hice unas pruebas con el código fuente de una versión de Notepad++:
Original: 6383KB
KGB:
PAQ1 (58MB) Crash!!!
PAQ2 (60MB) Crash!!!
PAQ3 (201MB) 96s 842KB
PAQ6 (13MB) 36s 1228KB
PAQ6 (15MB) 45s 1097KB
PAQ6 (19MB) 52s 887KB
PAQ6 (31MB) 67s 861KB
PAQ6 (70MB) 276s 776KB
PAQ6 (158MB) 537S 760KB
PAQ6 (206MB) 549s 758KB
PAQ7 (31MB) 557s 838KB
PAQ7 (145MB) 632S 690KB
PAQ:
PAQ1 (48MB) 67s 929KB
PAQ2 (50MB) 90s 893KB
PAQ3 (50MB) 63s 886KB
PAQ4 (84MB) 160s 843KB
PAQ6 -3 (18MB) 63s 860KB
PAQ605FB -3 (18MB) 56s 853KB
PAQ605FB -6 (202MB)479s 741KB
UDA:
WinUDA 0 (24MB) 69s 814KB
WinUDA 1 (46MB) 105s 774KB
WinUDA 2 (94MB) 149s 761KB
WinUDA 3 (194MB) 249s 741KB
UDA 0.301 (180MB) 267s 701KB
Otros:
CCM 1.1.1a 15s 889KB
PPMD J -m160 -o16 4s 946KB
PPMonstr -m180 -o32 54s 741KB
7z (4.44) -mx9 9s 947KB
No está relacionado pero creo que esto te va a interesar Vista Speech Recognition Vulnerability
Excelente comparativa Guillermo. Parece que el novedoso CCM es tan bueno como lo pintan. Tendré que echarle un vistazo más en profundidad.
El ataque vía comandos de voz embedidos en una página web es realmente ingenioso. Parece mentira que la gente de Symantec sea tan buena descubriendo fallos de seguridad en aplicaciones de terceros, y tan Symantec Fixes Third-Party ActiveX Bug).