User Tools

Site Tools


en:games:star_trek_armada_1:zone_file_system

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
en:games:star_trek_armada_1:zone_file_system [2025-05-05-00-06] – [Directories] 7saturnen:games:star_trek_armada_1:zone_file_system [2025-05-05-00-25] (current) – [Zone File System] 7saturn
Line 1: Line 1:
 ====== Zone File System ====== ====== Zone File System ======
-The //Zone File System// is a method used by //Star Trek: Armada// to store game assets in archive-like files, namely the //objtxt.zfs// and //assets.zfs//. Especially the latter contains most of the [[en:games:star_trek_armada_1:modding:ODF files]] as well as the [[en:games:star_trek_armada_1:modding:tech_tree_file|tech tree files]]. The contents are not stored in their plain format, so the whole storage method may be considered kind of a method of obfuscation of actual game assets. The format is, however not very complicated to decipher/unpack.+The //Zone File System// is a method used by //Star Trek: Armada// to store game assets in archive-like files, namely the //objtxt.zfs// and //assets.zfs//. Especially the latter contains most of the [[en:games:star_trek_armada_1:modding:ODF files]] as well as the [[en:games:star_trek_armada_1:modding:tech_tree_file|tech tree files]]. The contents are not stored in their plain format, so the whole storage method may be considered kind of a method of obfuscation of actual game assets. The format is, however not very complicated to decipher/unpack. [[en:games:star_trek_-_armada_2|Star Trek: Armada II]] did not use this method of delivering game contents any more.
 ===== ZFS File Format ===== ===== ZFS File Format =====
 A ZFS has a header as well as directory-like sections and actual file content sections. A ZFS has a header as well as directory-like sections and actual file content sections.
Line 6: Line 6:
 The header has a length of 28 byte, consisting of the following information: The header has a length of 28 byte, consisting of the following information:
 ^  Start Offset  ^  Data Type  ^  Meaning  ^ ^  Start Offset  ^  Data Type  ^  Meaning  ^
-| 0 | uint32 | ID of the File, usually ''ZFSF'' |+| 0 | uint32 | ID of the File, Usually ''ZFSF'' |
 | 4 | uint32 | Version of the Format of the File, for Armada That is 1. | | 4 | uint32 | Version of the Format of the File, for Armada That is 1. |
 | 8 | uint32 | Maximum length of a File Name in Directories (//max. file name length//). | | 8 | uint32 | Maximum length of a File Name in Directories (//max. file name length//). |
Line 40: Line 40:
  
 If the //Next Directory Block Offset// is zero it implies that no more directory blocks follow, marking the block the last one of the directory. If the //Next Directory Block Offset// is zero it implies that no more directory blocks follow, marking the block the last one of the directory.
 +
 +==== Encryption/File Contents ====
 +The file content itself is not stored in plain in the ZFS files, while the file names and metadata of directories are. The >>encryption<< of the file contents is actually very simple: Each file is stored in chunks of 4 bytes, each being xor-ed with the //Cypher Key// taken from the header. So in essence the >>password<< is provided along with the encrypted file contents. This is why this method of storage cannot seriously be considered proper encryption. Neither is the algorithm strong, nor is an already provided password any serious blockage from reading the file. It's at best a method of obfuscating things.
 +
 +
 +
 +===== assets.zfs =====
 +This file contains almost all the [[.modding:ODF files]] as well as [[.modding:Tech Tree File|tech tree files]]:
 +==== ODF Files ====
 +This is the list of ODF files provided in the //assest.zfs// file:
 +++++ (click to expand) |
 +  * //alien.odf//,
 +  * //amine.odf//,
 +  * //artlphot.odf//,
 +  * //artrphot.odf//,
 +  * //aster.odf//,
 +  * //asteroid.odf//,
 +  * //audio.odf//,
 +  * //battle.odf//,
 +  * //battphys.odf//,
 +  * //bbase.odf//,
 +  * //bbatphys.odf//,
 +  * //bbattle.odf//,
 +  * //bbphas.odf//,
 +  * //bbphaso.odf//,
 +  * //bbphot.odf//,
 +  * //bbpulse.odf//,
 +  * //bbpulseo.odf//,
 +  * //bc1phas.odf//,
 +  * //bc1phaso.odf//,
 +  * //bc1phot.odf//,
 +  * //bc2phas.odf//,
 +  * //bc2phaso.odf//,
 +  * //bc2phot.odf//,
 +  * //bcnsphys.odf//,
 +  * //bcolect1.odf//,
 +  * //bcolect2.odf//,
 +  * //bcolect3.odf//,
 +  * //bconst.odf//,
 +  * //bcruise1.odf//,
 +  * //bcruise2.odf//,
 +  * //bdestroy.odf//,
 +  * //bdphot.odf//,
 +  * //bdpulse.odf//,
 +  * //bdpulseo.odf//,
 +  * //bfreight.odf//,
 +  * //bholeg.odf//,
 +  * //blocutus.odf//,
 +  * //bmining.odf//,
 +  * //bomega.odf//,
 +  * //borg.odf//,
 +  * //borgbor.odf//,
 +  * //borgoff.odf//,
 +  * //borpod1.odf//,
 +  * //borpod2.odf//,
 +  * //borpod3.odf//,
 +  * //borpod4.odf//,
 +  * //borpod5.odf//,
 +  * //borpod6.odf//,
 +  * //borpod7.odf//,
 +  * //borpod8.odf//,
 +  * //borpod9.odf//,
 +  * //bphotono.odf//,
 +  * //breen.odf//,
 +  * //bresear.odf//,
 +  * //bresear2.odf//,
 +  * //bscout.odf//,
 +  * //bsensor.odf//,
 +  * //bspecial.odf//,
 +  * //bspphas.odf//,
 +  * //bspphaso.odf//,
 +  * //bspphot.odf//,
 +  * //bspulse.odf//,
 +  * //bspulseo.odf//,
 +  * //bsuperbl.odf//,
 +  * //btphot.odf//,
 +  * //btpulse.odf//,
 +  * //btpulseo.odf//,
 +  * //bturret.odf//,
 +  * //bturret2.odf//,
 +  * //bupgrade.odf//,
 +  * //button.odf//,
 +  * //byard.odf//,
 +  * //byard2.odf//,
 +  * //b_list0.odf//,
 +  * //b_list1.odf//,
 +  * //b_list10.odf//,
 +  * //b_list11.odf//,
 +  * //b_list2.odf//,
 +  * //b_list3.odf//,
 +  * //b_list4.odf//,
 +  * //b_list5.odf//,
 +  * //b_list6.odf//,
 +  * //b_list7.odf//,
 +  * //b_list8.odf//,
 +  * //b_list9.odf//,
 +  * //card.odf//,
 +  * //cbltphot.odf//,
 +  * //cbreach.odf//,
 +  * //chainp.odf//,
 +  * //chunk.odf//,
 +  * //cnstphys.odf//,
 +  * //component.odf//,
 +  * //const.odf//,
 +  * //craft.odf//,
 +  * //cruise1.odf//,
 +  * //cruise2.odf//,
 +  * //dchant.odf//,
 +  * //destphys.odf//,
 +  * //destroy.odf//,
 +  * //dlight.odf//,
 +  * //dom.odf//,
 +  * //dpulse.odf//,
 +  * //dpulseo.odf//,
 +  * //esconv.odf//,
 +  * //f6bconst.odf//,
 +  * //f6bsuper.odf//,
 +  * //f6ente.odf//,
 +  * //fastphys.odf//,
 +  * //favenger.odf//,
 +  * //fbase.odf//,
 +  * //fbasehq.odf//,
 +  * //fbattle.odf//,
 +  * //fbphas.odf//,
 +  * //fbphaso.odf//,
 +  * //fbphot.odf//,
 +  * //fbpulse.odf//,
 +  * //fbpulseo.odf//,
 +  * //fc1phas.odf//,
 +  * //fc1phaso.odf//,
 +  * //fc1phot.odf//,
 +  * //fc2phas.odf//,
 +  * //fc2phaso.odf//,
 +  * //fc2phot.odf//,
 +  * //fconst.odf//,
 +  * //fcruise1.odf//,
 +  * //fcruise2.odf//,
 +  * //fdestroy.odf//,
 +  * //fdphot.odf//,
 +  * //fed.odf//,
 +  * //fedoff.odf//,
 +  * //fedpod1.odf//,
 +  * //fedpod2.odf//,
 +  * //fedpod2s.odf//,
 +  * //fedpod3.odf//,
 +  * //fedpod4.odf//,
 +  * //fedpod5.odf//,
 +  * //fedpod6.odf//,
 +  * //fedpod7.odf//,
 +  * //fedpod8.odf//,
 +  * //fedpod9.odf//,
 +  * //fedrep.odf//,
 +  * //fentd.odf//,
 +  * //fente.odf//,
 +  * //fer.odf//,
 +  * //ffreight.odf//,
 +  * //fgalaxy.odf//,
 +  * //fmining.odf//,
 +  * //fprem.odf//,
 +  * //fpremnew.odf//,
 +  * //freight.odf//,
 +  * //fresear.odf//,
 +  * //fresear2.odf//,
 +  * //fscout.odf//,
 +  * //fsensor.odf//,
 +  * //fspecial.odf//,
 +  * //fspphas.odf//,
 +  * //fspphaso.odf//,
 +  * //fspphot.odf//,
 +  * //fsuperbl.odf//,
 +  * //ftphot.odf//,
 +  * //ftpulse.odf//,
 +  * //ftpulseo.odf//,
 +  * //fturret.odf//,
 +  * //fturret2.odf//,
 +  * //fyard.odf//,
 +  * //fyard2.odf//,
 +  * //gamine.odf//,
 +  * //gbholeg.odf//,
 +  * //gborgbor.odf//,
 +  * //gcbreach.odf//,
 +  * //gchainp.odf//,
 +  * //gcloak.odf//,
 +  * //gcorbom.odf//,
 +  * //gdchant.odf//,
 +  * //gdetect1.odf//,
 +  * //gdetect2.odf//,
 +  * //gdetect3.odf//,
 +  * //gdetectb.odf//,
 +  * //gdetectf.odf//,
 +  * //gdetectk.odf//,
 +  * //gdetectr.odf//,
 +  * //gesconv.odf//,
 +  * //gf6trans.odf//,
 +  * //gfedrep.odf//,
 +  * //ggrvmine.odf//,
 +  * //gholdbm.odf//,
 +  * //gholoemt.odf//,
 +  * //gionstm.odf//,
 +  * //gkcloak.odf//,
 +  * //gkcteam.odf//,
 +  * //gmanheim.odf//,
 +  * //gmastran.odf//,
 +  * //gmicro.odf//,
 +  * //gminebm.odf//,
 +  * //gmyotron.odf//,
 +  * //gnanites.odf//,
 +  * //gnttblst.odf//,
 +  * //goverrid.odf//,
 +  * //gpcloak.odf//,
 +  * //gpdlaser.odf//,
 +  * //gphaser.odf//,
 +  * //gphoton.odf//,
 +  * //gplasmac.odf//,
 +  * //gpoleron.odf//,
 +  * //gposijam.odf//,
 +  * //gpsyblst.odf//,
 +  * //gpulse.odf//,
 +  * //grcloak.odf//,
 +  * //gregen.odf//,
 +  * //gremod.odf//,
 +  * //grfield.odf//,
 +  * //gripple.odf//,
 +  * //gromspy.odf//,
 +  * //grvmine.odf//,
 +  * //grwave.odf//,
 +  * //gschainp.odf//,
 +  * //gselfdes.odf//,
 +  * //gshieldh.odf//,
 +  * //gshieldi.odf//,
 +  * //gtempor.odf//,
 +  * //gtracbm.odf//,
 +  * //gtracbmo.odf//,
 +  * //gtwarpd.odf//,
 +  * //guballbm.odf//,
 +  * //gutribm.odf//,
 +  * //gwcover.odf//,
 +  * //hamine.odf//,
 +  * //hcloak.odf//,
 +  * //hcorbom.odf//,
 +  * //hholdbm.odf//,
 +  * //hmanheim.odf//,
 +  * //hmicro.odf//,
 +  * //holdbm.odf//,
 +  * //holoemt.odf//,
 +  * //hplasma2.odf//,
 +  * //hplasmac.odf//,
 +  * //hpoleron.odf//,
 +  * //hshieldh.odf//,
 +  * //hshieldi.odf//,
 +  * //hwcover.odf//,
 +  * //ionstm.odf//,
 +  * //jmphot.odf//,
 +  * //jphotono.odf//,
 +  * //kbase.odf//,
 +  * //kbattle.odf//,
 +  * //kbphas.odf//,
 +  * //kbphaso.odf//,
 +  * //kbphot.odf//,
 +  * //kbpulse.odf//,
 +  * //kbpulseo.odf//,
 +  * //kc1phas.odf//,
 +  * //kc1phaso.odf//,
 +  * //kc1phot.odf//,
 +  * //kc2phas.odf//,
 +  * //kc2phaso.odf//,
 +  * //kc2phot.odf//,
 +  * //kconst.odf//,
 +  * //kconvoy.odf//,
 +  * //kcruise1.odf//,
 +  * //kcruise2.odf//,
 +  * //kcteam.odf//,
 +  * //kdestroy.odf//,
 +  * //kdphot.odf//,
 +  * //kdpulse.odf//,
 +  * //kdpulseo.odf//,
 +  * //kfreight.odf//,
 +  * //kling.odf//,
 +  * //klingoff.odf//,
 +  * //klipod1.odf//,
 +  * //klipod2.odf//,
 +  * //klipod3.odf//,
 +  * //klipod4.odf//,
 +  * //klipod5.odf//,
 +  * //klipod6.odf//,
 +  * //klipod7.odf//,
 +  * //klipod8.odf//,
 +  * //klipod9.odf//,
 +  * //kmarbase.odf//,
 +  * //kmartok.odf//,
 +  * //kmining.odf//,
 +  * //kphotono.odf//,
 +  * //kprison.odf//,
 +  * //kresear.odf//,
 +  * //kresear2.odf//,
 +  * //kscout.odf//,
 +  * //ksensor.odf//,
 +  * //kspecial.odf//,
 +  * //kspphas.odf//,
 +  * //kspphaso.odf//,
 +  * //kspphot.odf//,
 +  * //kspulse.odf//,
 +  * //kspulseo.odf//,
 +  * //ksuper.odf//,
 +  * //ksuperbl.odf//,
 +  * //ktoral.odf//,
 +  * //ktphot.odf//,
 +  * //ktpulse.odf//,
 +  * //ktpulseo.odf//,
 +  * //kturret.odf//,
 +  * //kturret2.odf//,
 +  * //kyard.odf//,
 +  * //kyard2.odf//,
 +  * //light.odf//,
 +  * //mafield.odf//,
 +  * //manheim.odf//,
 +  * //master1.odf//,
 +  * //mbaku.odf//,
 +  * //mbarisa.odf//,
 +  * //mblkhole.odf//,
 +  * //mborgpl.odf//,
 +  * //mcomet.odf//,
 +  * //mconstph.odf//,
 +  * //mdmoon.odf//,
 +  * //mdmoon1.odf//,
 +  * //mdmoon2.odf//,
 +  * //mdmoon3.odf//,
 +  * //mearth.odf//,
 +  * //mearthbg.odf//,
 +  * //meridon.odf//,
 +  * //mgate.odf//,
 +  * //micro.odf//,
 +  * //minebm.odf//,
 +  * //mionstm.odf//,
 +  * //mkrios.odf//,
 +  * //mlankal.odf//,
 +  * //mmoon.odf//,
 +  * //mmooninf.odf//,
 +  * //mnebula.odf//,
 +  * //mnebula1.odf//,
 +  * //mnebula2.odf//,
 +  * //mnebula3.odf//,
 +  * //mnebula4.odf//,
 +  * //mnebula5.odf//,
 +  * //momega.odf//,
 +  * //mplanet.odf//,
 +  * //mprmgate.odf//,
 +  * //mqonos.odf//,
 +  * //mremus.odf//,
 +  * //mromulus.odf//,
 +  * //msun1.odf//,
 +  * //msun2.odf//,
 +  * //msun3.odf//,
 +  * //mtest.odf//,
 +  * //muball.odf//,
 +  * //mwreck.odf//,
 +  * //mwrmhole.odf//,
 +  * //myotron.odf//,
 +  * //nanites.odf//,
 +  * //nttblst.odf//,
 +  * //overrid.odf//,
 +  * //particle.odf//,
 +  * //pdlaser.odf//,
 +  * //phaser.odf//,
 +  * //phasero.odf//,
 +  * //photon.odf//,
 +  * //photono.odf//,
 +  * //plasmac.odf//,
 +  * //player.odf//,
 +  * //pod.odf//,
 +  * //poleron.odf//,
 +  * //posijam.odf//,
 +  * //psyblst.odf//,
 +  * //pulse.odf//,
 +  * //pulseo.odf//,
 +  * //races.odf//,
 +  * //rbase.odf//,
 +  * //rbattle.odf//,
 +  * //rbphas.odf//,
 +  * //rbphaso.odf//,
 +  * //rbphot.odf//,
 +  * //rbpulse.odf//,
 +  * //rbpulseo.odf//,
 +  * //rc1phas.odf//,
 +  * //rc1phaso.odf//,
 +  * //rc1phot.odf//,
 +  * //rc2phas.odf//,
 +  * //rc2phaso.odf//,
 +  * //rc2phot.odf//,
 +  * //rconst.odf//,
 +  * //rcruise1.odf//,
 +  * //rcruise2.odf//,
 +  * //rdestroy.odf//,
 +  * //rdphot.odf//,
 +  * //rdpulse.odf//,
 +  * //rdpulseo.odf//,
 +  * //remod.odf//,
 +  * //research.odf//,
 +  * //rfield.odf//,
 +  * //rfreight.odf//,
 +  * //rmining.odf//,
 +  * //rom.odf//,
 +  * //romega.odf//,
 +  * //romegaon.odf//,
 +  * //romoff.odf//,
 +  * //rompod1.odf//,
 +  * //rompod2.odf//,
 +  * //rompod3.odf//,
 +  * //rompod4.odf//,
 +  * //rompod5.odf//,
 +  * //rompod6.odf//,
 +  * //rompod7.odf//,
 +  * //rompod8.odf//,
 +  * //rompod9.odf//,
 +  * //romspy.odf//,
 +  * //rphotono.odf//,
 +  * //rresear.odf//,
 +  * //rresear2.odf//,
 +  * //rscout.odf//,
 +  * //rsela.odf//,
 +  * //rsensor.odf//,
 +  * //rspecial.odf//,
 +  * //rspphas.odf//,
 +  * //rspphaso.odf//,
 +  * //rspphot.odf//,
 +  * //rspulse.odf//,
 +  * //rspulseo.odf//,
 +  * //rsuper.odf//,
 +  * //rsuperbl.odf//,
 +  * //rtphot.odf//,
 +  * //rtpulse.odf//,
 +  * //rtpulseo.odf//,
 +  * //rturret.odf//,
 +  * //rturret2.odf//,
 +  * //rwave.odf//,
 +  * //ryard.odf//,
 +  * //ryard2.odf//,
 +  * //scout.odf//,
 +  * //shell.odf//,
 +  * //shieldh.odf//,
 +  * //shieldi.odf//,
 +  * //smoke.odf//,
 +  * //sona.odf//,
 +  * //special.odf//,
 +  * //spulse.odf//,
 +  * //spulseo.odf//,
 +  * //sscr_1.odf//,
 +  * //station.odf//,
 +  * //teamcolor.odf//,
 +  * //techlvl.odf//,
 +  * //tempor.odf//,
 +  * //tracbm.odf//,
 +  * //tracbmo.odf//,
 +  * //turret.odf//,
 +  * //twarpd.odf//,
 +  * //uballbm.odf//,
 +  * //usrmsn01.odf//,
 +  * //utribm.odf//,
 +  * //wborgate.odf//,
 +  * //wcover.odf//,
 +  * //wholowav.odf//,
 +  * //wposiwav.odf//,
 +  * //wrwave.odf//,
 +  * //xartil.odf//,
 +  * //xfirebal.odf//,
 +  * //xfireblg.odf//,
 +  * //xfirebmd.odf//,
 +  * //xfirebsm.odf//,
 +  * //xfirebtu.odf//,
 +  * //xomega.odf//,
 +  * //xomgbal.odf//,
 +  * //xselfbal.odf//,
 +  * //xselfd.odf//,
 +  * //xshock.odf//,
 +  * //zbphas.odf//,
 +  * //zbphaso.odf//,
 +  * //zbphot.odf//,
 +  * //zbreen.odf//,
 +  * //zcardbat.odf//,
 +  * //zcarddes.odf//,
 +  * //zcaryard.odf//,
 +  * //zclonfac.odf//,
 +  * //zdpulse.odf//,
 +  * //zdpulseo.odf//,
 +  * //zentity.odf//,
 +  * //zferengi.odf//,
 +  * //zferscav.odf//,
 +  * //zferyard.odf//,
 +  * //zjembat.odf//,
 +  * //zjemdest.odf//,
 +  * //zjemyard.odf//,
 +  * //zjmphas.odf//,
 +  * //zjmphaso.odf//,
 +  * //zkahless.odf//,
 +  * //zmama.odf//,
 +  * //zmltmama.odf//,
 +  * //zneubase.odf//,
 +  * //zphotono.odf//,
 +  * //zsonbat.odf// and
 +  * //zsondest.odf//.
 +
 +++++
 +
 +The following ODF files are replaced by stock patch files in the //addon// folder:
 +
 +  * //borg.odf//,
 +  * //chainp.odf//,
 +  * //fed.odf//,
 +  * //kling.odf// and
 +  * //rom.odf//.
 +
 +This means, these particular files will (effectively) **not** be taken from the ZFS file but from the file placed by the 1.2 patch in folder //addon//. The unpatched files in the ZFS are still present, but the //addon// folder mechanism overriding them makes it possible to deliver only a few patched files, instead of re-distributing ~800 kB of ODF data and tech tree files.
 +==== Tech Tree Files ====
 +This is the list of tech tree files provided in the //assest.zfs// file:
 +
 +++++ (click to expand) |
 +
 +  * //borg4.tt//,
 +  * //borg5.tt//,
 +  * //fed1.tt//,
 +  * //fed2.tt//,
 +  * //fed3.tt//,
 +  * //fed4.tt//,
 +  * //fed5.tt//,
 +  * //fin1.tt//,
 +  * //fin2.tt//,
 +  * //fin5.tt//,
 +  * //finale4.tt//,
 +  * //finale6.tt//,
 +  * //freetech.tt//,
 +  * //fulltech.tt//,
 +  * //kling1.tt//,
 +  * //kling2.tt//,
 +  * //kling3.tt//,
 +  * //kling4.tt//,
 +  * //nosci.tt//,
 +  * //nospweap.tt//,
 +  * //nosuper.tt//,
 +  * //rom2.tt//,
 +  * //rom3.tt//,
 +  * //sales.tt//,
 +  * //scionly.tt//,
 +  * //supersid.tt// and
 +  * //tech1.tt//.
 +
 +++++
 +
 ===== objtxt.zfs ===== ===== objtxt.zfs =====
 The stock game file //objtxt.zfs// contains mostly mission objective texts as well as one //testobjectives.t// file: The stock game file //objtxt.zfs// contains mostly mission objective texts as well as one //testobjectives.t// file:
 +
 +++++ (click to expand) |
  
   * //b1ob1.txt//,   * //b1ob1.txt//,
Line 125: Line 674:
   * //testobjectives.t//.   * //testobjectives.t//.
  
-===== assets.zfs ===== +++++
-This file contains almost all the [[.modding:ODF files]] as well as [[.modding:Tech Tree File|tech tree files]]: +
-==== ODF Files ==== +
- +
-==== Tech Tree Files ==== +
-  * //borg4.tt//, +
-  * //borg5.tt//, +
-  * //fed1.tt//, +
-  * //fed2.tt//, +
-  * //fed3.tt//, +
-  * //fed4.tt//, +
-  * //fed5.tt//, +
-  * //fin1.tt//, +
-  * //fin2.tt//, +
-  * //fin5.tt//, +
-  * //finale4.tt//, +
-  * //finale6.tt//, +
-  * //freetech.tt//, +
-  * //fulltech.tt//, +
-  * //kling1.tt//, +
-  * //kling2.tt//, +
-  * //kling3.tt//, +
-  * //kling4.tt//, +
-  * //nosci.tt//, +
-  * //nospweap.tt//, +
-  * //nosuper.tt//, +
-  * //rom2.tt//, +
-  * //rom3.tt//, +
-  * //sales.tt//, +
-  * //scionly.tt//, +
-  * //supersid.tt// and +
-  * //tech1.tt//+
- +
-The following file is overridden by stock patch files placed inside the //addon// folder: +
-  * //tech1.tt//+
-==== Encryption/File Contents ==== +
-The file content itself is not stored in plain in the ZFS files, while the file names and metadata of directories are. The >>encryption<< of the file contents is actually very simple: Each file is stored in chunks of 4 bytes, each being xor-ed with the //Cypher Key// taken from the header. So in essence the >>password<< is provided along with the encrypted file contents. This is why this method of storage cannot seriously be considered proper encryption. Neither is the algorithm strong, nor is an already provided password any serious blockage from reading the file. It's at best a method of obfuscating things.+
  
 {{page>footer&nofooter}} {{page>footer&nofooter}}
en/games/star_trek_armada_1/zone_file_system.1746403592.txt.gz · Last modified: 2025-05-05-00-06 by 7saturn

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki