Method, device and equipment for filing and stamping electronic documents in PDF (Portable Document Format) format
By defining the archived data structure of PDF electronic documents and the method of stamping the archived seal, the problem that the existing technology cannot guarantee the integrity and undeniability of PDF electronic documents is solved, and safe archiving and anti-refusal protection of PDF electronic documents is achieved.
Patent Information
- Application Number
- CN202510010530.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-03
- Publication Date
- 2025-05-06
AI Technical Summary
The existing PDF format electronic document archiving methods cannot guarantee the integrity and undeniability of the original document, and cannot prevent illegal tampering and achieve the purpose of resisting resistance.
By collecting dictionaries based on PDF electronic documents, defining the archived data structure of PDF electronic documents, and archiving the PDF electronic documents according to the data structure, stamping the archive seal with the design goal to avoid the loss of merged signature or signature information.
It realizes the complete archive and undeniability of PDF electronic documents, strengthens the protection of the original documents, prevents illegal tampering, and ensures the effectiveness and long-term effectiveness of the archive seal.
Smart Images

Figure CN119940296A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of document processing, and in particular to a method, device and equipment for archiving and stamping electronic documents in PDF format. Background Art
[0002] With the rapid development of mobile Internet and information technology and the rapid development of the electronic office wave, enterprises will generate various electronic documents in the process of operation and management, such as various business documents, purchase and sales contracts, goods receipts, quality assurance documents, etc. These electronic documents play a very important role in the orderly operation and rights protection of enterprises. Most enterprises will archive these electronic documents regularly or after a key process node is completed according to their actual situation, thus forming electronic archives. The current method of archiving electronic documents in PDF format and stamping them with an archiving stamp cannot guarantee the integrity and non-repudiation of the original document, and thus cannot prevent illegal tampering and achieve the purpose of non-repudiation. Summary of the invention
[0003] The purpose of the embodiments of the present application is to provide a method, device and equipment for archiving and stamping electronic documents in PDF format, so as to solve the problem that the existing methods cannot guarantee the integrity and non-repudiation of the original document, and thus cannot prevent illegal tampering and achieve the purpose of non-repudiation.
[0004] In a first aspect, an embodiment of the present application provides a method for archiving and stamping an electronic document in PDF format, comprising:
[0005] Gather dictionaries based on PDF electronic documents and define the archiving data structure of PDF electronic documents;
[0006] According to the archiving data structure and design objectives, archive all PDF electronic documents;
[0007] According to the signature description of the PDF electronic document and based on the set rules, the PDF electronic document is stamped with an archiving stamp.
[0008] In the above implementation process, the embodiment of the present application collects dictionaries based on PDF electronic documents and defines the archiving data structure of PDF electronic documents; according to the archiving data structure and in combination with the design goals, archiving operations are performed on all PDF electronic documents; according to the signature description of the PDF electronic document and based on the set rules, the PDF electronic document is stamped with an archiving stamp; the loss of the signature or related information of the signature after merging into a new PDF electronic document is avoided, the integrity and non-repudiation of the original document are ensured, and illegal tampering is prevented to achieve the effect of anti-repudiation.
[0009] Furthermore, the dictionary based on the PDF electronic document is collected to define the archive data structure of the PDF electronic document, including:
[0010] Portable Collection is a dictionary based on PDF electronic documents, wherein Portable Collection includes viewing and organization features;
[0011] Set the initial effect view in the content of the collection dictionary entry;
[0012] Specify the file attachment list and file index by embedding the name tree of the file collection, wherein the name tree is composed of nodes, and each node corresponds to a dictionary object;
[0013] Express each embedded file binary content and file description in the file attachment list in the form of a file reference specification dictionary;
[0014] Then, when a PDF electronic document containing a collection dictionary is opened for the first time, the content of the initial document is displayed, as well as a list of all documents contained in the name tree;
[0015] The archiving data structure of the PDF electronic document is defined, wherein the content of the document archiving operation includes the file description, the file index and the file binary content.
[0016] In the above implementation process, an archiving data structure is defined, so that the PDF electronic document can be archived according to the archiving data structure.
[0017] Furthermore, the name tree is composed of nodes, each node corresponds to a dictionary object, including:
[0018] The child node entries of the root node and the intermediate nodes define the structure of the tree through the intermediate child nodes of each node;
[0019] The name entry in the root node contains the tree's key and the key's associated value, arranged in the form of key-associated value pairs;
[0020] The keys contained in the name entries of each node are not repeated, and each name entry contains only a continuous range of all the keys in the tree;
[0021] The restriction entry of a leaf node is used to specify the minimum and maximum keys contained in the name entry. In an intermediate node, the restriction entry specifies the minimum and maximum keys contained in the name entry of any descendant node of the node.
[0022] The value associated with the given key is obtained by traversing the tree in sequence, searching for a leaf node whose name entry contains the given key.
[0023] In the above implementation process, the file attachment list is specified by embedding the name tree of the file collection, which provides a clear and hierarchical organizational structure for the file attachments, and can intuitively display the file attachment list, thereby improving the functionality and usability of the PDF electronic document.
[0024] Furthermore, the archiving operation of all PDF electronic documents is performed according to the archiving data structure and in combination with the design goal, including:
[0025] Generate a first PDF electronic document including an archiving description, wherein the first PDF electronic document includes the unit, number, personnel, time, purpose of the archiving operation and an overview of all archived PDF electronic documents;
[0026] The first PDF electronic document is used as a container PDF document, and an archiving operation is performed on all PDF electronic documents based on the container PDF document.
[0027] In the above implementation process, not only the archiving requirements of electronic documents are met, but also the original electronic documents can be guaranteed to be intact; if the original electronic document has a signature or seal operation, the signature or seal information can be permanently preserved.
[0028] Furthermore, it also includes:
[0029] The second PDF electronic document to be archived is formed into an embedded file stream and inserted into the container PDF document;
[0030] Generate a file guide specification dictionary, express the purpose description or simple file name of the second PDF electronic document through the UF value of the dictionary, and reference the object embedded in the file stream through the EF value of the dictionary;
[0031] Generate a file name tree node object, the corresponding key is the file name, where the value corresponding to the key is the object of the file guide specification dictionary;
[0032] All PDF electronic documents that need to be archived are archived like the second PDF electronic document;
[0033] After taking all the generated file name tree nodes as intermediate child nodes, a file name tree with a root node is generated, and all the intermediate child nodes are referenced in a nested manner, thereby forming a name tree embedded in the file collection;
[0034] Add a nametree key-value pair to the container PDF document's directory dictionary, where the value is an object of the nametree embedded in the document collection;
[0035] Add an object that collects dictionaries and sets the initial view effects of all embedded files after the reader is opened.
[0036] In the above implementation process, not only the archiving requirements of electronic documents are met, but also the original electronic documents can be guaranteed to be intact; if the original electronic document has a signature or seal operation, the signature or seal information can be permanently preserved.
[0037] Furthermore, the step of adding an archiving stamp to the PDF electronic document based on the signature description of the PDF electronic document and the set rules includes:
[0038] Generate a standardized archiving stamp image according to the document parameters, wherein the document parameters include archive number, institution, year, storage period, document number and number of pages;
[0039] Embed a file stream object into the archived PDF electronic document, wherein the content of the file stream object is the archived chapter image;
[0040] In the archived PDF electronic document, a composite object is generated, and the generated file stream object is set by preset rules and the width and height values of the archived chapter image are defined;
[0041] In the archived PDF electronic document, a widget-type annotation object is generated, the appearance dictionary of the annotation object is a reference to the composite object, and the archive chapter is displayed in a blank space of the document using an annotation rectangle;
[0042] Generate a signature domain object of an interactive form. In addition to conventional storage-related objects, reserve a byte string entry object for storing the signature value; wherein the reserved byte size is estimated according to the signature certificate length, the signature value length of the first standard, and the data length of the first mechanism format. In addition, the byte range entry is the byte range to be protected, which includes the original archive content of the PDF before the archive stamp operation, the embedded archive stamp image stream object, the composite object, the widget type annotation object, and all contents of the signature domain object of this interactive form except the reserved byte array;
[0043] By stamping the private key of the digital certificate of the filing stamp unit, a signature operation is performed on all byte contents of the byte range to be protected specified by the byte range entry to generate a first standard signature value;
[0044] Performing a timestamp signature on the generated first standard signature value;
[0045] The generated signature value of the first standard, the digital certificate of the archive chapter unit, the certificate revocation list file, and the generated timestamp signature value are combined to construct a signature value in a complete first mechanism format;
[0046] The generated signature value in the first mechanism format is stored in the reserved byte string entry, and the PDF electronic document is closed.
[0047] In the above implementation process, not only the requirement of stamping the archive seal is met, the integrity of the electronic file after signing, the validity and non-repudiation of the signature are guaranteed, but also the problem of long-term validity verification of the archive seal is solved through the timestamp and certificate revocation list attached to the signature.
[0048] In a second aspect, an embodiment of the present application provides a PDF format electronic document archiving and stamping device, comprising:
[0049] Define a collection module for collecting dictionaries based on PDF electronic documents and defining the archiving data structure of PDF electronic documents;
[0050] The archiving operation module is used to archive all PDF electronic documents according to the archiving data structure and the design objectives;
[0051] The filing stamping module is used to stamp the PDF electronic document with a filing stamp based on the signature description of the PDF electronic document and based on the set rules.
[0052] In a third aspect, an embodiment of the present application provides an electronic device, including:
[0053] A processor, a memory and a bus, wherein the processor is connected to the memory via the bus, and the memory stores computer-readable instructions. When the computer-readable instructions are executed by the processor, they are used to implement the PDF format electronic document archiving and stamping method as described above.
[0054] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a server, the method for archiving and stamping electronic documents in PDF format as described above is implemented.
[0055] In a fifth aspect, an embodiment of the present application provides a computer program product, which includes instructions, and when the instructions are executed by a computer, the computer implements the method as described above. BRIEF DESCRIPTION OF THE DRAWINGS
[0056] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments of the present application will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.
[0057] Figure 1 A flowchart of a method for archiving and stamping electronic documents in PDF format provided in an embodiment of the present application;
[0058] Figure 2 A schematic diagram of the initial effect of opening a reader and affixing an archiving stamp for a PDF format electronic document archiving and stamping method provided in an embodiment of the present application;
[0059] Figure 3 A schematic diagram of a design drawing and its signature in an electronic file of a PDF format electronic document archiving and stamping method provided in an embodiment of the present application;
[0060] Figure 4 It is a structural schematic diagram of a PDF format electronic document archiving and stamping device provided in an embodiment of the present application;
[0061] Figure 5 It is a structural schematic diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0062] The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application.
[0063] It should be noted that similar reference numerals and letters represent similar items in the following drawings, so once an item is defined in one drawing, it does not need to be further defined and explained in subsequent drawings. At the same time, in the description of this application, the terms "first", "second", etc. are only used to distinguish the description and cannot be understood as indicating or implying relative importance.
[0064] Electronic archives after electronic documents are archived must have the following elements: authenticity: the property that the content, logical structure and formation background of electronic files and electronic archives are consistent with the original conditions when they were formed; reliability: the content of electronic files and electronic archives fully and correctly expresses the nature of the affairs, activities or facts they reflect; integrity: the content, structure and background information of electronic files and electronic archives are complete and have not been damaged, mutated or lost; availability: the property that electronic files and electronic archives can be retrieved, presented or understood.
[0065] At present, there are two commonly used technologies in the specific practice of archiving electronic documents in PDF format and stamping them with archiving stamps. The following is a detailed description:
[0066] Technology 1, first list all the electronic documents that need to be archived, sort them according to a certain strategy, then extract the pages of each document, and construct a new PDF format document with these pages according to the set order; then insert a document receipt processing single page on the first page of this new PDF document to form the original electronic archive; finally, stamp the blank space in the upper right corner of the first page of this original electronic archive with an archive stamp that includes the six archiving elements such as the archive number, organization, year, retention period, document number, and number of pages, thus forming the final electronic archive stamped with the archive stamp.
[0067] The second technique is to directly batch-stamp an electronic seal on all electronic documents that need to be archived at fixed pages and locations, and then compress the stamped documents directly into a ZIP file, and save the compressed file as an electronic archive.
[0068] Although existing technologies and patents have solved the problem of archiving electronic documents in PDF format, they all have defects and shortcomings.
[0069] As for technology one, it merges all electronic documents that need to be archived into a new PDF document. This not only loses the inherent properties of each original document (author, subject, time, description, and some important metadata information), but also if the original document is electronically stamped or digitally signed, the relevant information of the stamp or signature will be completely lost after it is merged into a new PDF document. The integrity and non-repudiation of the original document cannot be guaranteed, and it is impossible to prevent illegal tampering and achieve the purpose of non-repudiation.
[0070] As for the second technology, it is not a technical implementation method of electronic archive standards at all, because it is just a simple compressed package, and the six elements of archiving are not reflected at all. In addition, there is no connection between the documents after each signature. If the compressed package is added or deleted, there is no trace. It is impossible to solidify the files after archiving, and it is impossible to ensure the integrity of the electronic archives, prevent illegal tampering, and achieve the purpose of non-repudiation.
[0071] The goal of the technology of the embodiment of the present application is to solve the objective shortcomings of the prior art. First, it is to ensure that the original content of all PDFs that need to be archived is not tampered with. If the original document has a seal or signature, the signature verification operation is guaranteed to be successful; second, it is to solve the archiving problem, and all PDF documents that need to be archived can be merged into one document; third, it is to solve the problem of stamping the archiving seal, which can reflect the 6 elements of archiving and ensure the success of the electronic archive verification signature operation after stamping the archiving seal. To achieve this goal, we must first conduct an in-depth study of the PDF document format specification and find inspiration and ideas for solving the problem from the specification.
[0072] Please see Figure 1 , Figure 1 A flowchart of a method for filing and stamping electronic documents in PDF format provided in an embodiment of the present application. The method for filing and stamping electronic documents in PDF format includes:
[0073] 100. Gather dictionaries based on PDF electronic documents and define the archiving data structure of PDF electronic documents.
[0074] It should be noted that a collection is a collection of file attachments that can be presented in the user interface of a reader that complies with the PDF standard. The attachments in the collection are related in structure or content. This kind of presentation is called a portable collection. The purpose of a portable collection is to display, sort, and search related document collections embedded in a PDF document, such as email archives, picture collections, and engineering bids.
[0075] Therefore, the embodiment of the present application can solve the archiving of electronic documents in PDF format by using the collection in the PDF specification, and then perform the operation of stamping the archiving stamp on this basis.
[0076] 110. Portable Collection is a dictionary based on PDF electronic documents, wherein Portable Collection includes viewing and organization features.
[0077] Among them, the collection dictionary specifies the viewing and organization characteristics of a portable collection; if this dictionary is present in a PDF electronic document, a compliant reader should display the document as a portable collection, and use the name tree of the embedded file collection to specify the list of file attachments. Optionally, the name tree of the embedded file collection can use the EmbeddedFiles name tree.
[0078] 120. Set the initial effect view in the content of the collection dictionary entry.
[0079] Specifically, the initial effect view is set in the content of the collection dictionary entry. For detailed description, please refer to the description in the following embodiment. The View key value is used to set the initial view effect when the reader is opened. The specific parameters are as follows:
[0080] D: Detailed display aggregation view, which displays all the information of the Schema dictionary in multiple columns. This method can provide the most information to the user;
[0081] T: A flat collection view is displayed, where each file in the collection is represented by a small icon and a subset of the information in the Schema dictionary. This approach provides users with top-level information about file attachments.
[0082] H: The collection view is initially hidden.
[0083] In some embodiments, for an entry of a collection dictionary, illustratively, the key is Type, the type is name, and the value is the PDF object type described by this dictionary. If present, it should be Collection for the collection dictionary.
[0084] Illustratively, the key is Schema, the type is dictionary, and the value is a collection schema dictionary. If this entry does not exist, readers conforming to this section can choose useful default values known to exist in the file directive specification dictionary, such as file name, file size, and modification date.
[0085] Exemplarily, the key is D, the type is byte string, the value is a string identifying an entry in the EmbeddedFiles name tree, which determines the document that should be initially displayed on the user interface. If the D entry is missing or incorrect, the initial document should be a document containing the collection dictionary.
[0086] For example, the key is View, the type is name, and the value is the initial view. Valid values are as follows: D should display the collection view in detail, showing all the information in the Schema dictionary in a multi-column format, which can provide the most information to the user; T should display the collection view in a flat format, with each file in the collection represented by a small icon and a subset of the information in the Schema dictionary, which can provide users with top-level information about the file attachments; H the collection view should be initially hidden, and readers that conform to this standard should provide users with a way to view the collection through some explicit actions; default value: D.
[0087] Exemplarily, the key is Sort, the type is dietionary, and the value is a collection sorting dictionary, which specifies the order in which the items in the collection should be sorted in the user interface.
[0088] 130. Specify a file attachment list and a file index by embedding a name tree of a file collection, wherein the name tree is composed of nodes, and each node corresponds to a dictionary object.
[0089] Among them, the file attachment list is displayed in the name tree of the embedded file collection (EmbeddedFiles name tree), and the name tree is composed of nodes, each node should be a dictionary object. For a detailed description of the name tree nodes, please refer to the description in the following embodiment.
[0090] Specifically, the child node entries (Kids entries) of the root node and the intermediate node define the structure of the tree through the intermediate child nodes of each node; the name entry (Names entry) in the root node (or leaf node) contains the key of the tree and the associated value of the key, arranged in the form of key-associated value pairs; the keys contained in the name entry (Names entry) of each node are not repeated, and each name entry (Names entry) only contains a continuous range of all keys in the tree; the limit entry (Limits entry) of the leaf node is used to specify the minimum key and maximum key contained in the name entry (Names entry), and in the intermediate node, the limit entry specifies the minimum key and maximum key contained in the name entry (Names entry) of any descendant node of the node; by traversing the tree in sequence, searching for the leaf node containing the given key in the name entry (Names entry), the value associated with the given key is obtained.
[0091] In some embodiments, for an entry in the name tree node dictionary, exemplarily, the key is Kids, the type is array, the value (only for root nodes and intermediate nodes, required in intermediate nodes, and should exist in the root node if and only if Names does not exist), an array of indirect references to the intermediate child nodes of this node, and the child nodes can be intermediate nodes or leaf nodes.
[0092] For example, the key is Names, the type is array, and the value (only used for root nodes and leaf nodes, required in leaf nodes, and should exist in the root node if and only if Kids does not exist) is an array of the following form: [keyl valuelkey2 value2..keyn valuen], where each keyi should be a string, and the corresponding valuei should be the object associated with the key, and the keys should be arranged in alphabetical order.
[0093] For example, the key is Names, the type is array, and the value (only for intermediate nodes and leaf nodes) should contain an array of two strings, which should specify the minimum and maximum keys (expressed in characters) in the Names array of a leaf node or any leaf node Names array under an intermediate node.
[0094] 140. Express each embedded file binary content and file description in the file attachment list in the form of a file reference specification dictionary.
[0095] Optionally, each embedded file in the file attachment list can be expressed in the form of a file guide specification dictionary. For detailed description, please refer to the description of the following embodiment; the specific description of the file is expressed by the UF key value, and the specific file content stream is expressed by the EF dictionary. The key value in the EF should be an embedded file stream containing the corresponding file. For the specific file embedded stream format dictionary, please refer to the description of the following embodiment.
[0096] In some embodiments, for the entry of the first file specification dictionary, exemplarily, the key is Type, the type is name, and the value is: (required if EF or RF entries exist, and should always be recommended), the type of PDF object described by this dictionary, for the file specification dictionary, should be Filespec.
[0097] Illustratively, the key is FS, the type is name, and the value is the file system name that should be used to interpret this file directive specification. If this entry exists, all other entries in the dictionary should be interpreted by the specified file system. PDF defines only one standard file system name URL, and applications can register other names. This entry should be independent of the F, UF, DOS, Mac, and Unix entries.
[0098] Illustratively, the key is F, the type is string, and the value is (required if none of the DOS, Mac, and Unix entries exist) a file reference specification string, or a UF entry. The UF entry is intended to provide cross-platform and cross-language compatibility, while the F entry provides backward compatibility.
[0099] For example, the key is UF, the type is text string, and the value is a Unicode text string.
[0100] In some embodiments, for the entry of the second file directive specification dictionary, exemplarily, the key is DOS, the type is byte string, and the value is a file directive specification string representing a DOS file name. This entry has been eliminated and should not be used by generators that comply with this section.
[0101] For example, the key is Mac, the type is byte string, and the value is a file reference specification string representing a Mac OS file name. This entry has been deprecated and should not be used by generators conforming to this section.
[0102] For example, the key is Unix, the type is byte string, and the value is a file reference specification string representing a UNIX file name. This entry has been deprecated and should not be used by generators conforming to this section.
[0103] Exemplarily, the key is ID, the type is array, and the value is an array of two byte strings, which should constitute a file identifier contained in the referenced file. The use of this entry improves the ability of the application to find the target file, and allows the application to alert the user if the file is changed after being linked.
[0104] Example, key is V, type is boolean, value is a flag indicating whether the file referenced by the file directive specification is volatile (changes frequently). If this value is true, applications should not cache copies of the file. For example, a movie annotation that references a URL to a live video camera could set this flag to true to inform a conforming reader that it should re-fetch the movie content each time it plays the movie. Default value: false.
[0105] For example, the key is EF, the type is dictionary, and the value is a dictionary containing a subset of the F, UF, DOS, Mac, and Unix keys, which are associated with entries in the file directive specification dictionary by their names. The value of each key should be an embedded file stream containing the corresponding file. If this entry exists, the Type entry is required and will indirectly reference the file directive specification dictionary. The F and UF entries should be used instead of the DOS, Mac, or Unix entries.
[0106] Exemplarily, the key is RF, the type is dictionary, the value is a dictionary with the same structure as the EF dictionary that should exist, each key in the RF dictionary should also exist in the E dictionary, and each value is a related file array that identifies the files related to the corresponding file in the EF dictionary. If this entry exists, the Type entry is required and should indirectly reference the file guide specification dictionary.
[0107] Illustratively, the key is Desc, the type is text string, and the value is the descriptive text associated with the file reference specification, applied to the files in the EmbeddedFiles name tree.
[0108] Exemplarily, the key is CI, the type is dictionary, and the value is a collection item dictionary, which is used to create a user interface for a portable collection.
[0109] In some embodiments, for an embedded file stream dictionary entry, illustratively, the key is Type, the type is name, and the value is the PDF object type described by this dictionary. If present, it should be EmbeddedFile for an embedded file stream.
[0110] For example, the key is Subtype, the type is name, and the value is the subtype of the embedded file. The value of this entry should be a first-level name defined in Appendix E.
[0111] For example, the key is Params, the type is dictionary, and the value is an embedded file parameter dictionary that should contain additional information specific to the file.
[0112] 150. When a PDF electronic document containing a collection dictionary is opened for the first time, the contents of the initial document are displayed, as well as a list of all documents contained in the name tree.
[0113] Specifically, when a PDF electronic document containing a collection is opened for the first time using a reader that complies with this section (complies with the PDF electronic document format), the content of the initial document will be displayed, as well as a list of all included documents that appear in the EmbeddedFiles name tree.
[0114] 160. Define the archiving data structure of the PDF electronic document, wherein the content of the document archiving operation includes the file description, the file index and the file binary content.
[0115] Specifically, the main contents of the file archiving operation include file description, file index, file binary content, etc. Based on the use of the collection specification, the embodiment of the present application defines the electronic document archiving data structure design. Please refer to the description of the following embodiment for details.
[0116] Exemplarily, the entry is a file description, the data type is a string, the key value is UF, the current node is the FileSpec dictionary, and the parent node is the Names name tree.
[0117] Exemplarily, the entry is a file index, the data type is a string, the current node is the Names name tree, and the parent node is the Catalog dictionary.
[0118] Exemplarily, the entry is file content, the data type is a stream object, the current node is EF, and the parent node is a FileSpec dictionary.
[0119] Exemplarily, the entry is a list of attachments, the data type is a dictionary, the current node is the Names name tree, and the parent node is the EmbeddedFiles dictionary.
[0120] Exemplarily, the entry is the initial view effect, the data type is name, the key value is View, the current node is the Collection dictionary, and the parent node is the Catalog dictionary.
[0121] 200. According to the archiving data structure and in combination with the design objectives, archive all PDF electronic documents.
[0122] 210. Generate a first PDF electronic document including archiving instructions, wherein the content of the first PDF electronic document includes the unit, number, person, time, purpose of the archiving operation and an overview of all archived PDF electronic documents.
[0123] 220. Use the first PDF electronic document as a container PDF document, and perform an archiving operation on all PDF electronic documents based on the container PDF document.
[0124] 230. The second PDF electronic document to be archived is formed into an embedded file stream and inserted into the container PDF document.
[0125] 240. Generate a file guide specification dictionary, express the purpose description or simple file name of the second PDF electronic document through the UF value of the dictionary, and reference the object embedded in the file stream through the EF value of the dictionary.
[0126] 250. Generate a file name tree node object, the corresponding key is the file name, and the value corresponding to the key is the object of the file guide specification dictionary.
[0127] Optionally, generate a file name tree node object, the key can be the file name or other description.
[0128] 260. Perform the archiving operation of the second PDF electronic document on all PDF electronic documents that need to be archived.
[0129] It can be understood that all PDF electronic documents that need to be archived are archived one by one according to the steps of step 230, step 240 and step 250.
[0130] 270. After taking all the generated file name tree nodes as intermediate child nodes, a file name tree with a root node is generated, and all the intermediate child nodes are referenced in a nested manner, thereby forming a name tree of an embedded file collection (EmbeddedFiles name tree).
[0131] 280. Add a name tree key-value to the catalog dictionary of the container PDF document, where the value is an object of the EmbeddedFiles name tree.
[0132] 290. Add an object that collects dictionaries and sets the initial view effect of all embedded files after the reader is opened.
[0133] Exemplarily, an object for collecting dictionaries is added, in which the key-value corresponding to View is set to set the initial view effect of all embedded files after the reader opens them. View refers to a specific view or representation of stored data.
[0134] Therefore, the embodiment of the present application not only solves the archiving requirements of electronic documents, but also can ensure that the original electronic document remains intact; if the original electronic document has a signature or seal operation, the signature or seal information can be permanently preserved.
[0135] 300. According to the signature description of the PDF electronic document and based on the set rules, an archiving stamp is stamped on the PDF electronic document.
[0136] It should be noted that, for each signature in a PDF electronic document, it is essentially a signature field in an interactive form. The signature field is described in the PDF format using a widget-type annotation dictionary. Therefore, each signature is essentially a specific type of annotation.
[0137] In PDF electronic documents, all types of annotations are represented by annotation rectangles (Rect) in their dictionaries to give the display range of the domain in the page, and the appearance dictionary (AP) is used to display its appearance. For detailed description, please refer to the description in the following embodiments. In the appearance dictionary, the appearance stream can be used as the appearance display of the annotation, and the appearance stream is described by a composite object (XObject). In the composite XObject, the rectangular frame range of the appearance is defined by BBox, and any resources (such as images) required for this appearance are specified by Resource, and various matrix conversion operations can be performed on these image resources to achieve the desired appearance effect. For detailed description, please refer to the description in the following embodiments.
[0138] Among them, BBox, the full name is Bounding Box, which is translated into Chinese as Bounding Box. In a composite XObject, BBox is used to specify a rectangular box that defines the position and size of an XObject (such as an image, a graphic, etc.) in a document.
[0139] In some embodiments, for common entries of all annotation dictionaries, illustratively, the key is Type, the type is name, and the value is the PDF object type described by this dictionary. If present, for annotation dictionaries, it should be Annot.
[0140] For example, the key is Subtype, the type is name, and the value is the annotation type described by this dictionary.
[0141] Exemplarily, the key is Rect, the type is rectangle, and the value is the annotation rectangle, which defines the position of the annotation on the page, expressed in default user space units.
[0142] Exemplarily, the key is Contents, the type is rectangle, and the value is the text displayed by the annotation or its readable alternative description (if this type of annotation does not display text). In any of the above cases, this text is useful when extracting the content of the document to support access for disabled users or other purposes.
[0143] Exemplarily, the key is P, the type is dictionary, the value is an indirect reference to a page object associated with this annotation, and the screen annotation associated with the rendering action should include this entry.
[0144] Exemplarily, the key is NM, the type is text string, and the value is the name of the annotation, which is a text string that uniquely identifies a certain annotation among all annotations on the page.
[0145] Exemplarily, the key is M, the type is date or text string, and the value is the date and time when the annotation was last modified.
[0146] For example, the key is F, the type is integer, the value is a set of flags that specify various characteristics, and the default value is 0.
[0147] For example, the key is AP, the type is dictionary, and the value is a dictionary of appearances that specifies how the annotation should be displayed on the page. Individual annotation processors may ignore this entry and provide their own appearance.
[0148] In some embodiments, for an entry in a compound XObject, illustratively, the key is Type, the type is the name, and the value is the PDF object type described by this dictionary. For a compound XObject, it should be XObject.
[0149] For example, the key is Subtype, the type is name, and the value is the XObject type described by this dictionary. For a compound XObject, it should be Form.
[0150] Exemplarily, the key is FormType, the type is an integer, the value is a code that can identify the composite XObject type described by this dictionary, the only valid value is 1, and the default value is 1.
[0151] Illustratively, the key is BBox, the type is Rectangle, and the value is an array of four values in the composite coordinate system, providing the coordinates of the left, bottom, right, and top edges of the composite XObject's bounding box. These boundaries should be used to clip the composite XObject and determine its cache size.
[0152] For example, the key is Matrix, the type is array, the value is an array of six values that specifies the composite matrix, which maps the composite space to the user space, and the default value is the identity matrix [100100].
[0153] Exemplarily, the key is Resources, the type is dictionary, and the value is a dictionary of any resources (such as fonts and images) required by the specified composite XObject. In earlier versions, all named resources used in a composite XObject should be included in the resource dictionary of each page object that displays the composite XObject, regardless of whether they also appear in the resource dictionary of the composite XObject. These resources are also specified in the resource dictionary of the composite Object to determine the resources used in the composite XObject. If a resource is included in two dictionaries, it should have the same name in both locations. In more recent PDF versions, a composite XObject may be independent of the content stream that displays it. Although this is not required, it is strongly recommended to do so. In an independent composite XObject, the resource dictionary of the composite XObject is required and should contain all named resources used by the composite XObject. Although the resource dictionary of the stream involves the composite XObject, these resources should not be promoted to the resource dictionary of the external content stream.
[0154] After completing the archiving operation of the electronic document in PDF format, follow the above-mentioned signature description to stamp the archiving stamp.
[0155] 310. Generate a standardized archiving stamp image based on document parameters, wherein the document parameters include archive number, organization, year, retention period, file number and number of pages.
[0156] 320. Embed a file stream object into the archived PDF electronic document, wherein the content of the file stream object is the archived chapter image.
[0157] 330. In the archived PDF electronic document, a composite object is generated, and the generated file stream object is set according to preset rules, and the width and height values of the archived chapter image are defined.
[0158] Optionally, in the archived PDF electronic document, generate a composite XObject object, use Resource to set the generated file stream object, and use BBox to define the width and height values of the archived chapter image.
[0159] 340. In the archived PDF electronic document, a widget-type annotation object is generated, the appearance dictionary of this annotation object is a reference to the composite object, and the archive chapter is displayed in a blank space of the document using an annotation rectangle.
[0160] Exemplarily, in an archived PDF electronic document, a widget-type annotation object is generated, the appearance dictionary (AP) of this annotation object is a reference to the generated composite XObject object, and the archive stamp is displayed with an annotation rectangle in the blank space of the document. Optionally, the archive stamp is usually stamped in the blank space in the upper right corner, so the archive stamp is displayed with an annotation rectangle in the upper right corner.
[0161] 350. Generate a signature domain object for an interactive form. In addition to conventional storage-related objects, reserve a byte string entry object for storing the signature value; wherein the reserved byte size is estimated based on the signature certificate length, the signature value length of the first standard, and the data length for constructing the first mechanism format. In addition, the byte range entry is the byte range that needs to be protected, which includes the original archive content of the PDF before the archive stamp operation, the embedded archive stamp image stream object, the composite object, the widget type annotation object, and all the contents of the signature domain object of this interactive form except the reserved byte array.
[0162] Exemplarily, a signature field object of an interactive form is generated. In addition to the conventional Filter, Subfilter, Reason, and Location objects, a Contents byte string entry object is reserved to store the signature value. The reserved byte size should be estimated based on the signature certificate length, the PKCS1 signature value length, and the necessary data length for constructing PKCS7. In addition, the ByteRange entry is the byte range that needs to be protected. This range includes the original archive content of the PDF before the archive stamp operation, the embedded archive stamp image stream object, the compound XObject object, the widget type annotation object, and all the contents of the signature field object of this interactive form except the reserved byte array.
[0163] 360. By stamping the private key of the digital certificate of the archive stamp unit, a signature operation is performed on all byte contents of the byte range that needs to be protected specified by the byte range (ByteRange) entry to generate a signature value of the first standard (PKCS1).
[0164] 370. Perform a timestamp signature on the generated first standard signature value.
[0165] Specifically, in order to ensure the long-term validity of the affixed archiving seal, the generated first standard (PKCS1) signature value needs to be timestamped.
[0166] 380. The generated first standard signature value, the digital certificate of the archived chapter unit, the certificate revocation list file, and the generated timestamp signature value are combined to construct a signature value in a complete first mechanism format.
[0167] Exemplarily, the generated PKCS1 signature value, the digital certificate of the archive chapter unit, the certificate revocation list file and other necessary information are combined with the generated timestamp signature value to construct a complete signature value in the first mechanism (PKCS7) format.
[0168] 390. Store the generated signature value in the first mechanism format into a reserved byte string entry, and close the PDF electronic document.
[0169] Exemplarily, the generated signature value in the first mechanism (PKCS7) format is stored in the byte content of the reserved byte string (Contents) entry, and then the PDF electronic document is closed.
[0170] Therefore, the embodiment of the present application not only realizes the requirement of stamping the archiving seal, ensures the integrity of the electronic file after signing, the validity and non-repudiation of the signature, but also solves the problem of long-term validity verification of the archiving seal through the timestamp and certificate revocation list attached to the signature.
[0171] As described above, the embodiment of the present application collects dictionaries based on PDF electronic documents and defines the archiving data structure of PDF electronic documents; according to the archiving data structure and in combination with the design goals, archiving operations are performed on all PDF electronic documents; according to the signature description of the PDF electronic document and based on the set rules, the PDF electronic document is stamped with an archiving stamp; the loss of the signature or signature-related information after merging into a new PDF electronic document is avoided, the integrity and non-repudiation of the original document are ensured, and illegal tampering is prevented to achieve the effect of anti-repudiation.
[0172] Specifically, the embodiment of the present application defines an electronic document archiving data structure by adopting the collection type in the PDF specification, which solves the defects and deficiencies of existing technologies and patents, and perfectly realizes the four elements of practicality, reliability, integrity, and availability of electronic archives formed after electronic documents are archived. After opening the electronic archive with a reader that complies with the PDF specification, you can see the initial view effect of all archived electronic documents, including the tiled display of all archived electronic documents (see Figure 2 The agency contract and design drawings shown in the left-hand side view of the example) are stamped with the filing stamp in the upper right margin of the filing instructions document (see Figure 2 ), when you click the verification operation, a prompt message will be displayed indicating that the signature is valid; and all electronic documents in the electronic archive retain their original information and can correctly express the nature of the affairs, activities or facts they originally reflected, see Figure 3 According to the description in the document, click the small icon corresponding to the design drawing in the collection view on the left to open the original electronic document, and the original signature information will be fully displayed. When you click the verification operation, a prompt message will be displayed indicating that the signature is valid.
[0173] The above steps are not to be performed in a strict order as described in the numbers, but should be understood as an overall solution.
[0174] In the second aspect, based on the above embodiments, Figure 4 This is a schematic diagram of the structure of a PDF format electronic document archiving and stamping device provided in an embodiment of the present application. Figure 4 The PDF format electronic document archiving and stamping device provided in this embodiment specifically includes: a definition collection module 201, an archiving operation module 202 and an archiving and stamping module 203.
[0175] Among them, the definition collection module 201 is used to collect dictionaries based on PDF electronic documents and define the archiving data structure of PDF electronic documents; the archiving operation module 202 is used to perform archiving operations on all PDF electronic documents according to the archiving data structure and in combination with the design goals; the archiving stamping module 203 is used to stamp the PDF electronic document with an archiving stamp based on the signature description of the PDF electronic document and based on the set rules.
[0176] As described above, the embodiment of the present application collects dictionaries based on PDF electronic documents and defines the archiving data structure of PDF electronic documents; according to the archiving data structure and in combination with the design goals, archiving operations are performed on all PDF electronic documents; according to the signature description of the PDF electronic document and based on the set rules, the PDF electronic document is stamped with an archiving stamp; the loss of the signature or signature-related information after merging into a new PDF electronic document is avoided, the integrity and non-repudiation of the original document are ensured, and illegal tampering is prevented to achieve the effect of anti-repudiation.
[0177] The PDF format electronic document archiving and stamping device provided in the embodiment of the present application can be used to execute the PDF format electronic document archiving and stamping method provided in the above embodiment, and has corresponding functions and beneficial effects.
[0178] In a third aspect, an embodiment of the present application further provides an electronic device, which can integrate the PDF format electronic document archiving and stamping device provided in an embodiment of the present application. Figure 5 Schematic diagram of the structure of an electronic device provided by an embodiment of the present application. Figure 5 The electronic device includes: an input device 33, an output device 34, a memory 32 and one or more processors 31; the memory 32 is used to store one or more programs; when the one or more programs are executed by the one or more processors 31, the one or more processors 31 implement the PDF format electronic document filing and stamping method provided in the above embodiment. The input device 33, the output device 34, the memory 32 and the processor 31 can be connected by a bus or other means. Figure 5The example of connecting through bus is taken in the following.
[0179] The processor 31 executes various functional applications and data processing of the device by running the software programs, instructions and modules stored in the memory 32, that is, realizes the above-mentioned PDF format electronic document archiving and stamping method.
[0180] The electronic device provided above can be used to execute the PDF format electronic document archiving and stamping method provided in the above embodiment, and has corresponding functions and beneficial effects.
[0181] In a fourth aspect, an embodiment of the present application further provides a computer-readable storage medium, the computer-readable storage medium including a stored computer program; wherein, when the computer program is running, the device where the computer-readable storage medium is located is controlled to execute the PDF format electronic document archiving and stamping method as described above, and can achieve the same beneficial effects.
[0182] Of course, the storage medium containing computer executable instructions provided in the embodiment of the present application is not limited to the PDF format electronic document archiving and stamping method described above, and can also execute related operations in the PDF format electronic document archiving and stamping method provided in any embodiment of the present application.
[0183] In a fifth aspect, the embodiments of the present application also provide a computer program product, and the methods described in the various embodiments of the present application can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer programs or instructions. When the computer program or instruction is loaded and executed on a computer, the process or function described in the various embodiments of the present application is executed in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, a network device, a user device, a core network device, an OAM (Open Application Model) or other programmable device.
[0184] The computer program or instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer program or instructions may be transmitted from one website, computer, server or data center to another website, computer, server or data center by wired or wireless means. The computer-readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server or data center that integrates one or more available media. The available medium may be a magnetic medium, such as a floppy disk, a hard disk, or a magnetic tape; it may also be an optical medium, such as a digital video disk; it may also be a semiconductor medium, such as a solid-state drive. The computer-readable storage medium may be a volatile or non-volatile storage medium, or may include both volatile and non-volatile types of storage media.
[0185] In several embodiments provided in the present application, it should be understood that the disclosed devices and methods can also be implemented in other ways. The device embodiments described above are merely schematic. For example, the flowcharts and block diagrams in the accompanying drawings show the possible architecture, functions and operations of the devices, methods and computer program products according to multiple embodiments of the present application. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of a code, and the module, a program segment or a part of a code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, and the combination of boxes in the block diagram and / or flowchart can be implemented with a dedicated hardware-based system that performs a specified function or action, or can be implemented with a combination of dedicated hardware and computer instructions.
[0186] In addition, the functional modules in the various embodiments of the present application may be integrated together to form an independent part, or each module may exist separately, or two or more modules may be integrated to form an independent part.
[0187] If the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can be essentially or partly embodied in the form of a software product that contributes to the prior art. The computer software product is stored in a storage medium, including several instructions for enabling an electronic device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0188] The above description is only an embodiment of the present application and is not intended to limit the scope of protection of the present application. For those skilled in the art, the present application may have various changes and variations. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present application should be included in the scope of protection of the present application. It should be noted that similar reference numerals and letters represent similar items in the following drawings, so once an item is defined in one drawing, it does not need to be further defined and explained in the subsequent drawings.
[0189] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
[0190] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.
Claims
1. A method for archiving and stamping electronic documents in PDF format, characterized in that: The method comprises: Gather dictionaries based on PDF electronic documents and define the archiving data structure of PDF electronic documents; According to the archiving data structure and design objectives, archive all PDF electronic documents; According to the signature description of the PDF electronic document and based on the set rules, the PDF electronic document is stamped with an archiving stamp.
2. The method for filing and stamping electronic documents in PDF format according to claim 1, characterized in that: The collection is based on a dictionary of PDF electronic documents, defining an archive data structure of the PDF electronic document, including: Portable Collection is a dictionary based on PDF electronic documents, wherein Portable Collection includes viewing and organization features; Set the initial effect view in the content of the collection dictionary entry; Specify the file attachment list and file index by embedding the name tree of the file collection, wherein the name tree is composed of nodes, and each node corresponds to a dictionary object; Express each embedded file binary content and file description in the file attachment list in the form of a file reference specification dictionary; Then, when a PDF electronic document containing a collection dictionary is opened for the first time, the content of the initial document is displayed, as well as a list of all documents contained in the name tree; The archiving data structure of the PDF electronic document is defined, wherein the content of the document archiving operation includes the file description, the file index and the file binary content.
3. The method for filing and stamping electronic documents in PDF format according to claim 1, characterized in that: The name tree is composed of nodes, each node corresponds to a dictionary object, including: The child node entries of the root node and the intermediate nodes define the structure of the tree through the intermediate child nodes of each node; The name entry in the root node contains the tree's key and the key's associated value, arranged in the form of key-associated value pairs; The keys contained in the name entries of each node are not repeated, and each name entry contains only a continuous range of all the keys in the tree; The restriction entry of a leaf node is used to specify the minimum and maximum keys contained in the name entry. In an intermediate node, the restriction entry specifies the minimum and maximum keys contained in the name entry of any descendant node of the node. The value associated with the given key is obtained by traversing the tree in sequence, searching for a leaf node whose name entry contains the given key.
4. The method for filing and stamping electronic documents in PDF format according to claim 1, characterized in that: The archiving operation of all PDF electronic documents is performed according to the archiving data structure and in combination with the design objectives, including: Generate a first PDF electronic document including an archiving description, wherein the first PDF electronic document includes the unit, number, personnel, time, purpose of the archiving operation and an overview of all archived PDF electronic documents; The first PDF electronic document is used as a container PDF document, and an archiving operation is performed on all PDF electronic documents based on the container PDF document.
5. The method for filing and stamping electronic documents in PDF format according to claim 4, characterized in that: Also includes: The second PDF electronic document to be archived is formed into an embedded file stream and inserted into the container PDF document; Generate a file guide specification dictionary, express the purpose description or simple file name of the second PDF electronic document through the UF value of the dictionary, and reference the object embedded in the file stream through the EF value of the dictionary; Generate a file name tree node object, the corresponding key is the file name, where the value corresponding to the key is the object of the file guide specification dictionary; All PDF electronic documents that need to be archived are archived like the second PDF electronic document; After taking all the generated file name tree nodes as intermediate child nodes, a file name tree with a root node is generated, and all the intermediate child nodes are referenced in a nested manner, thereby forming a name tree embedded in the file collection; Add a nametree key-value pair to the container PDF document's directory dictionary, where the value is an object of the nametree embedded in the document collection; Add an object that collects dictionaries and sets the initial view effects of all embedded files after the reader is opened.
6. The method for filing and stamping electronic documents in PDF format according to claim 1, characterized in that: The step of adding an archiving stamp to the PDF electronic document based on the signature description of the PDF electronic document and the set rules includes: Generate a standardized archiving stamp image according to the document parameters, wherein the document parameters include archive number, institution, year, storage period, document number and number of pages; Embed a file stream object into the archived PDF electronic document, wherein the content of the file stream object is the archived chapter image; In the archived PDF electronic document, a composite object is generated, and the generated file stream object is set by preset rules and the width and height values of the archived chapter image are defined; In the archived PDF electronic document, a widget-type annotation object is generated, the appearance dictionary of the annotation object is a reference to the composite object, and the archive chapter is displayed in a blank space of the document using an annotation rectangle; Generate a signature domain object of an interactive form. In addition to conventional storage-related objects, reserve a byte string entry object for storing the signature value; wherein the reserved byte size is estimated according to the signature certificate length, the signature value length of the first standard, and the data length of the first mechanism format. In addition, the byte range entry is the byte range to be protected, which includes the original archive content of the PDF before the archive stamp operation, the embedded archive stamp image stream object, the composite object, the widget type annotation object, and all contents of the signature domain object of this interactive form except the reserved byte array; By stamping the private key of the digital certificate of the filing stamp unit, a signature operation is performed on all byte contents of the byte range to be protected specified by the byte range entry to generate a first standard signature value; Performing a timestamp signature on the generated first standard signature value; The generated signature value of the first standard, the digital certificate of the archive chapter unit, the certificate revocation list file, and the generated timestamp signature value are combined to construct a signature value in a complete first mechanism format; The generated signature value in the first mechanism format is stored in the reserved byte string entry, and the PDF electronic document is closed.
7. A PDF format electronic document filing and stamping device, characterized in that: include: Define a collection module for collecting dictionaries based on PDF electronic documents and defining the archiving data structure of PDF electronic documents; The archiving operation module is used to archive all PDF electronic documents according to the archiving data structure and the design objectives; The filing stamping module is used to stamp the PDF electronic document with a filing stamp based on the signature description of the PDF electronic document and based on the set rules.
8. An electronic device, characterized in that: include: A processor, a memory and a bus, wherein the processor is connected to the memory via the bus, and the memory stores computer-readable instructions. When the computer-readable instructions are executed by the processor, the method for archiving and stamping electronic documents in PDF format is implemented as described in any one of claims 1 to 6.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, which, when executed by a server, implements the PDF format electronic document archiving and stamping method as described in any one of claims 1 to 6.
10. A computer program product, characterized in that The computer program product comprises instructions which, when executed by a computer, cause the computer to implement the method according to any one of claims 1-6.