/trunk/CHANGELOG.md |
---|
6,6 → 6,7 |
- `map(i,n)` now works like in Filter Factory and not like GIMP User Filter v0.8. |
- `val(i,a,b)` now returns the same value like Filter Factory for illegal values of `i`. |
- Windows: Standalone filters containing a `&` in Name or Category now have the correct "Visual Themes", as the Manifest XML is not broken anymore. |
- Introduced obfuscation version 7, which is more secure. |
(*) This bug/solution was tested on Windows but needs to be verified and/or implemented on Mac. |
/trunk/Obfuscation.md |
---|
14,15 → 14,26 |
Defined in **ff.h**, implemented in **obfusc.c**: |
// Implements Obfusc V6. |
// Returns a seed that needs to be stored in the executable code. |
uint64_t obfusc(PARM_T* pparm); |
// Implements Obfusc V7. |
// Returns a seed1 and seed2 which need to be stored in the executable code. |
obfusc(PARM_T* pparm, uint64_t* out_initial_seed, uint64_t* out_initial_seed2); |
// In V1+V2: Seed is hardcoded |
// In V3: Seed is in PARM (field "unknown2") |
// In V4-V6: Seed is in the program code and will me modified with a binary search+replace |
// In V4-V7: Seed is in the program code and will me modified with a binary search+replace |
void deobfusc(PARM_T* pparm); |
### Obfuscation "Version 7" |
Introduced in **Filter Foundry 1.7.0.17** |
Now, there are two 64-bit seeds: |
Initial seed 1: `0x7416972a52830517` (is in the code segment) |
Initial seed 2: `0xEF87A2F13E1F2186` (is in the data segment) |
First, XOR-Shift64 using seed 2, then ROL shift, then XOR-Shift32 like in Obfusc V6. |
### Obfuscation "Version 6" |
Introduced in **Filter Foundry 1.7.0.10** |
/trunk/README.md |
---|
29,7 → 29,7 |
Filter Foundry works with nearly all programs that can handle ".8bf" Photoshop filters. Following hosts have been tested with Filter Foundry 1.7: |
- Photoshop 3.0.0 (32 bit) through Photoshop CC 2019 (64 bit) |
- Photoshop 3.0.0 (32 bit) through Photoshop CC 2022 (64 bit) |
- IrfanView 4.53 (32/64 bit) |
- JASC PSP 9, Corel's Paint Shop Pro XI |
- The Gimp 2.2 with [PSPI.exe](https://www.chip.de/downloads/PSPI-fuer-GIMP_37803068.html) extension to run Photoshop .8bf files |
/trunk/RELEASE.md |
---|
23,6 → 23,7 |
- LICENSE_GPLv2.txt => LICENSE_GPLv2.txt |
- LICENSE_GPLv3.html => LICENSE_GPLv3.html |
3. Verify that each 8BF files contains the hex sequence `17 05 83 52 2a 97 16 74` exactly three times (1 time in the code sequence, 2 times in the 32/64 template resources) |
4. Commit to SVN with commit message `=== RELEASE 1.7.0.x ===` |
5. Sync SVN with GitHub |
6. Release release.zip to [ViaThinkSoft](https://www.viathinksoft.com/projects/filter_foundry) |
4. Verify that each 8BF files contains the hex sequence `86 21 1f 3e f1 a2 87 ef` exactly three times (1 time in the code sequence, 2 times in the 32/64 template resources) |
5. Commit to SVN with commit message `=== RELEASE 1.7.0.x ===` |
6. Sync SVN with GitHub |
7. Release release.zip to [ViaThinkSoft](https://www.viathinksoft.com/projects/filter_foundry) |
/trunk/doc/The Filter Foundry.docx |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/trunk/doc/The Filter Foundry.pdf |
---|
10,50 → 10,46 |
<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R/F3 11 0 R/F4 16 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 18 0 R 20 0 R 22 0 R 23 0 R 24 0 R 25 0 R 26 0 R 27 0 R 29 0 R 30 0 R 31 0 R 33 0 R 34 0 R 36 0 R 37 0 R 38 0 R 39 0 R 40 0 R 43 0 R 48 0 R 53 0 R 54 0 R 56 0 R 57 0 R 58 0 R 59 0 R 60 0 R 62 0 R 63 0 R 64 0 R 66 0 R 67 0 R 68 0 R 69 0 R 71 0 R] /MediaBox[ 0 0 595.32 841.92] /Contents 4 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 0>> |
endobj |
4 0 obj |
<</Filter/FlateDecode/Length 4523>> |
<</Filter/FlateDecode/Length 4534>> |
stream |
xÍmoÛ8ÇßÈwÐKû°aÄ'<, |
-/½¹½«Õ³gÙW/³ÿä$?Z+å4piAaÙª:=ùãÙòôäÅ»Óó74£ä"{wuzWçͤÈÎhN}õÆ^óÝ[]¯í¯Í®Ýwºýî»Ó?'Ùô¯ìÝ¿NO^ÛßöËéÉÎÖk Lgö2D/[×Ú%' Ø\ȵ&Å.l|g!¦xàºàP±(ݸï¼:ûËÆA4Û6΢Gàn?!}kƤý-} ´§p{,£¢gO |
-»`%J'¶R:Iù3ª@bÑHë$%ú>ðq0/"0¾ý¾<îÍ>aEX;ÌêÒ¶0F |
-Á¿]9] '±Laß·¢£,pÅ!*±câþ«¿:ÙïJh¶EMÍäÚñ*{9ÕöKÛî5ü¬Ò¼ýrý¤&õI§ aØáòwhuÐêuD¡l´Úh¿_ÚÆ«W·Ð/mgýhÿÎê9´ãmÓEK<4·=9¨õicÛkWÌo/; ÑìÝìÏ ø¯Ìh¢TÊV$7)*ãÊ¢§¨LÜ.c¢]ä,()ÆP\Z/Jh1óó=c |
-Læ`£t¡ûyW0ùÁø÷ra Î&å%$ùkûEV./íÙ|¹®ËÅÂ~ÙþÚ½/ì%uSë*{3¥¬`RXÚ¿0A¬¾ÏÏQf?\Åï¦`ÏF^{G¦³hÊ-æ)*dÐ{)Ú±zpZ¿=> |