A community specification for an open 3D file wrapper.
This page is for anyone with an interest in the matter to set out a specification that is a wrapper around file formats such as STL files.
The goal should be an open file format which is as extensible as possible and be able to stand the test of time. In contrast to the proposal under "A community specification for an improvement to STL files." this format should be a wrapper allowing additional information such as
- The ability to contain one or many 3D files (different formats, such as STL or collada): that way many components of the finished object can be contained in one file.
- The ability to add a PDF/RTF file with instructions on how to build the final object given the subparts.
- The ability to encrypt/sign the files: the creator might not want someone else to copy/print his personal files.
This way the whole RepRap could be distributed in one big file containing all components and instructions.
- Contain many 3D files: any file archive format can handle this, such as ".tbz".
- contain files of other types: any file archive format can handle this, such as ".tbz".
- encrypt files: any reasonable encryption algorithm can handle this, such as "AES".
- sign the files: typically a small summary text file with each line containing a file name and a message digest of that file (perhaps generated and later verified using "sha256sum"). That message digest file is either downloaded from a trusted source using TLS/HTTPS independently of the archive file, or alternately that file is digitally signed and bundled inside the archive file next to all the files in that list. The archive file can hold many such signed summary files, each one signed by a different person.
This looks like something beyond the scope of RepRap. Surely the RepRap project isn't the only place a person might want to bundle a collection of diverse files together in this way. Is there something special about RepRap files that requires something that the standard file archive tools don't provide?