Wat is het JSXBIN-bestandsformaat?
Ondanks de naam is een .jsxbin-bestand een ASCII-tekstbestand - geen echt binair bestand. Het is de gecompileerde uitvoer van Adobe ExtendScript Toolkit (ESTK), geproduceerd wanneer een ontwikkelaar een .jsx-script in gecodeerde vorm exporteert. De codering serialiseert de geparseerde abstract syntax tree (AST) van de ExtendScript-bron naar een base64-achtige ASCII-representatie die bedoeld is om eenvoudige inspectie te ontmoedigen.
Elk .jsxbin-bestand begint met de platte tekst-header @JSXBIN@[email protected]@ (of @JSXBIN@[email protected]@ voor scripts gecompileerd in CS4 en eerder), gevolgd door één gecodeerde AST-node per regel. Het formaat biedt versluiering (obfuscation), geen echte versleuteling - decompilers van derden kunnen de broncode bijna volledig reconstrueren, hoewel variabelenamen meestal verminkt zijn.
.jsxbin-scripts draaien systeemeigen binnen Adobe Creative Cloud-applicaties, waaronder Photoshop, Illustrator, InDesign en After Effects. Ontwikkelaars gebruiken dit formaat om automatiseringsscripts commercieel te distribueren en tegelijkertijd intellectueel eigendom te beschermen tegen eenvoudig kopiëren.
Adobe ExtendScript en ESTK worden beschouwd als verouderde technologie. De moderne vervanger is het UXP (Unified Extensibility Platform), dat gebruikmaakt van HTML, CSS en standaard JavaScript. UXP-plug-ins zijn gericht op Photoshop 2021+, InDesign 2022+ en later. Ondanks deze overgang blijven veel productieworkflows in de uitgeverij, omroep en prepress vertrouwen op ExtendScript-automatisering, waardoor .jsxbin-bestanden in actief gebruik blijven.
Beveiliging & veiligheid
RISICO: MEDIUMJSXBIN-scripts worden uitgevoerd met de rechten van de Adobe-hostapplicatie en kunnen bestandssysteembewerkingen uitvoeren, shell-commando's uitvoeren (via system.callSystem in ExtendScript) en toegang krijgen tot netwerkbronnen. Kwaadaardige JSXBIN-scripts zijn in het wild waargenomen (Hexacorn documenteerde JSX/JSXBIN-misbruik in 2022). Verkrijg scripts altijd van vertrouwde leveranciers. De VS Code ExtendScript Debugger kan helpen bij het controleren van scripts voor uitvoering.
Formaatdetails
in een notendopProgramma's die JSXBIN-bestanden openen
Technische details
diepe specificaties| Bestandsheader | `@JSXBIN@[email protected]@` (ASCII-tekst, eerste regel) of `@JSXBIN@[email protected]@` voor scripts uit het CS4-tijdperk |
| Codering | ASCII - base64-achtige serialisatie van de gecompileerde abstract syntax tree |
| Formaatversies | 1.0 (CS4 en eerder), 2.0 (CS5 en later); versie gedeclareerd in de headerregel |
| Container | Plat tekstbestand met ASCII-gecodeerde payload; één AST-node per regel na de header |
| Versleuteling | Geen - alleen versluiering (obfuscation); omkeerbaar door decompilers van derden |
| Typische bestandsgrootte | 5 KB - 500 KB afhankelijk van de complexiteit van het script |
| OS-ondersteuning | Windows, macOS |
| MIME-type | application/octet-stream (ook herkend als text/plain) |
| Decompileerbaarheid | Ja - tools van derden kunnen de bijna-originele JSX-bron herstellen met verminkte variabelenamen |
| SDK-status | Adobe ExtendScript Toolkit (ESTK) stopgezet; Photoshop, Illustrator, InDesign en After Effects voeren JSXBIN nog steeds systeemeigen uit |
| Opvolgend platform | UXP (Unified Extensibility Platform) met .js/.ts broncode - Photoshop 2021+, InDesign 2022+ |
| Ontwikkelaar | Adobe Systems Incorporated |
| Geïntroduceerd | 2004 met Adobe Creative Suite en ExtendScript Toolkit |
| Uitgebracht | 2004 (Adobe Creative Suite CS, ExtendScript Toolkit) |
| Laatste versie | JSXBIN version 2.0 (ES / ExtendScript) |
| Specificatie | extendscript.docsforadobe.dev |
JSXBIN conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over JSXBIN-bestanden.