CN116522352B - Local encryption method, system and computer program product for CAD file - Google Patents

Local encryption method, system and computer program product for CAD file Download PDF

Info

Publication number
CN116522352B
CN116522352B CN202211253995.3A CN202211253995A CN116522352B CN 116522352 B CN116522352 B CN 116522352B CN 202211253995 A CN202211253995 A CN 202211253995A CN 116522352 B CN116522352 B CN 116522352B
Authority
CN
China
Prior art keywords
encryption
data
dictionary
state
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202211253995.3A
Other languages
Chinese (zh)
Other versions
CN116522352A (en
Inventor
李强
席辉
王伟
陆翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Gstarsoft Co ltd
Original Assignee
Suzhou Gstarsoft Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Gstarsoft Co ltd filed Critical Suzhou Gstarsoft Co ltd
Priority to CN202311677983.8A priority Critical patent/CN117668878A/en
Priority to CN202211253995.3A priority patent/CN116522352B/en
Publication of CN116522352A publication Critical patent/CN116522352A/en
Application granted granted Critical
Publication of CN116522352B publication Critical patent/CN116522352B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

The present invention relates to a local encryption method, system and computer program product for CAD files. The method comprises the following steps: providing a file comprising a plurality of physical objects; obtaining at least one encryption target to be encrypted, wherein the encryption target comprises: at least one physical object; encrypting the encryption target so that the encryption target is converted into a corresponding encryption state, wherein the encryption state comprises: a first encryption state; the step of transferring the encryption target to the first encryption state includes: establishing at least one encryption dictionary, wherein the contents in the encryption dictionary can realize data reading through decryption instructions; acquiring a non-entity object corresponding to the encryption target, wherein data for describing the encryption target is written in the non-entity object; storing the non-entity object into an encryption dictionary, and deleting the encryption target, so that the encryption target is in a first encryption state. The local encryption method can effectively improve the file delivery efficiency when the parties cooperate.

Description

Local encryption method, system and computer program product for CAD file
Technical Field
The present invention relates to the field of computer aided design (CAD, computer Aided Design), and in particular to a local encryption method, system and computer program product for CAD files.
Background
In some design companies or design houses, drawings are the most valuable important documents, and the loss of these documents once stolen or altered is very large. Thus, some encryption measures are typically taken for these precious drawing documents. In a traditional CAD drawing encryption mode, encryption is usually performed on the whole CAD drawing, so that entity graphs in the CAD drawing are not displayed, or data of the CAD drawing cannot be acquired and edited. While the speed of such encryption is generally slow.
In order to solve the above-mentioned problems, a method for performing read-only encryption on a part of a drawing is proposed in the prior art. For example, a group of entities is made into an anonymous block, so that the group of entities is set to be in a read-only state, so that the user can see the entities from the drawing, but cannot edit them (specifically, cannot obtain important data such as the type of the entity). Although the read-only encryption method can realize local encryption processing of the drawing, the function is single, and the application scene is limited.
Of course, in the prior art, another local encryption method is also proposed, for example, chinese patent application No. CN201410060364.9, which discloses a CAD model local encryption method based on sketching. According to the method, the local characteristic structure in the CAD model is converted into other forms by encrypting the two-dimensional curve, the three-dimensional curve, the local curved surface, the single characteristic or the local characteristic structure sketched by the CAD model. That is, the method realizes the local encryption of the CAD model by means of data conversion. After the partial encryption of the CAD model is realized based on the method, the encrypted CAD model can still be seen in the CAD drawing for a user, but the display graph of the CAD model is changed. Specifically, the encrypted data in the CAD model is changed on the graphic display after encryption processing, so that a user or a computer cannot view or observe the full view of the original CAD model based on the changed (encrypted) graphic, thereby realizing read-only encryption (i.e., only viewing but not editing) of the original CAD model. This way of partial encryption, while having a certain optimization in terms of flexibility, still has some drawbacks, such as a certain probability for some experienced plotters to deduce the whole information of the model from the unencrypted part, so that the confidentiality of the method is not high. Moreover, the data conversion process of the method is relatively complex.
Disclosure of Invention
The invention aims to provide a method for local encryption of CAD drawings, which aims to solve the technical problems, and specifically adopts the following technical scheme:
the first aspect of the present invention provides a local encryption method for CAD files, comprising:
providing a file, the file comprising: a plurality of entity objects;
acquiring at least one encryption target to be encrypted in response to a user operation, wherein the encryption target comprises: at least one physical object;
encrypting the encryption target in response to a user operation such that the encryption target is transitioned to a corresponding encryption state, and the encryption state includes: a first encryption state;
when the encryption state is the first encryption state, the step of converting the encryption target into the corresponding encryption state comprises the following steps:
establishing at least one encryption dictionary, wherein the contents in the encryption dictionary can realize data reading through decryption instructions;
acquiring at least one non-entity object, wherein data for describing the encryption target is written in the non-entity object;
and storing the non-entity object into the encryption dictionary, and deleting the encryption target, so that the encryption target is in the first encryption state.
In some embodiments, the step of obtaining at least one non-physical object comprises:
creating at least one non-physical object based on the encryption target;
correspondingly analyzing and reading data information of the entity object, wherein the data information comprises: first object basic data, display data, and feature data;
writing the data information into the non-entity object correspondingly, wherein the data structure of the non-entity object after finishing data writing comprises: second object basic data and second private data, and the second object basic data includes: the first object basic data, the second private data completely inherits the second object basic data, and the second private data further includes: the display data and the feature data.
In some embodiments, the encryption state further comprises: a second encryption state; and when the encryption state is the second encryption state, the step of transferring the encryption target to the corresponding encryption state includes:
acquiring the entity object in the encryption target;
the physical object is converted into a custom object, and the encryption target is in a visible state after an interpreter for displaying the custom object is provided to a user.
In some embodiments, the step of creating at least one encryption dictionary comprises:
establishing at least one dictionary on the file, wherein the dictionary is used for storing the non-entity objects;
encrypting the dictionary, and correspondingly acquiring at least one decryption instruction for decrypting the dictionary, thereby obtaining the encrypted dictionary.
In some embodiments, the decryption instructions include: the first decryption instruction, correspondingly, the method further comprises the steps of:
responding to a first decryption instruction input by a user, and enabling the non-entity objects stored in the dictionary to enter a decryption state;
reading second object basic data and second private data in the non-entity object;
and recreating the entity object on the file according to the second object basic data and the second private data so that the encryption target is in a visible state.
In some embodiments, the decryption instructions include: a second decryption instruction, correspondingly, the method further comprises the steps of:
responding to a second decryption instruction input by a user, and acquiring non-entity objects stored in the dictionary;
and creating a custom object according to the non-entity object, and setting the custom object in a corresponding drawing space on the file.
The second aspect of the present invention also provides a local encryption system for CAD files, comprising:
a file providing module configured to provide a file, the file comprising: a plurality of entity objects;
a target acquisition module configured to acquire at least one encryption target to be encrypted in response to an operation of a user, the encryption target including: at least one physical object;
an encryption module configured to encrypt the encryption target in response to an operation of a user such that the encryption target is transferred to a corresponding encryption state, and the encryption state includes: a first encryption state; wherein, the encryption module includes:
an encryption dictionary creation unit configured to create at least one encryption dictionary when the encryption state is a first encryption state, contents in the encryption dictionary being readable by decryption instructions;
a non-solid object acquisition unit configured to acquire at least one non-solid object in which data for describing the encryption target is written;
and an encryption realization unit configured to store the non-physical object into the encryption dictionary and delete the encryption target so that the encryption target is in the first encryption state.
In some embodiments, the non-physical object acquisition unit further comprises:
a first subunit configured to create at least one non-physical object based on the encryption target;
a second subunit configured to correspondingly analyze and read data information of the physical object, the data information comprising: first object basic data, display data, and feature data;
a third subunit, configured to correspondingly write the data information into the non-entity object, where the data structure of the non-entity object after completing data writing includes: second object basic data and second private data, and the second object basic data includes: the first object basic data, the second private data completely inherits the second object basic data, and the second private data further includes: the display data and the feature data.
In some embodiments, the encryption state further comprises: the second encryption state, correspondingly, the encryption module further includes:
a second encryption unit configured to acquire the physical object in the encryption target when the encryption state is the second encryption state; the physical object is converted into a custom object that is in a visible state after an interpreter for displaying the custom object is provided to a user.
In some embodiments, the encryption dictionary creation unit further includes:
a dictionary creation subunit configured to create at least one dictionary on the file, the dictionary for storing the non-physical objects;
and the dictionary encryption subunit encrypts the dictionary and correspondingly acquires at least one decryption instruction for decrypting the dictionary, thereby obtaining the encrypted dictionary.
In some embodiments, the decryption instructions include: the first decryption instruction, correspondingly, the system further comprises:
a first decryption module configured to enter a decryption state in response to a first decryption instruction input by a user, the non-physical objects stored in the dictionary; reading second object basic data and second private data in the non-entity object; and re-creating the entity object on the file according to the second object basic data and the second private data so that the encryption target is in a visible state.
In some embodiments, the decryption instructions include: a second decryption instruction, correspondingly, the system further comprising:
a second decryption module configured to obtain the non-physical objects stored in the dictionary in response to a second decryption instruction input by a user; and creating a custom object according to the non-entity object, and setting the custom object in a corresponding drawing space on the file.
In a third aspect of the invention, there is also provided a computer program product comprising computer instructions which, when executed by a processor, implement the steps of the method as in any of the embodiments described above.
The beneficial technical effects are as follows:
the invention provides a method for locally encrypting a CAD file, which enables a user to selectively encrypt different parts (such as different graphs or patterns) in the CAD file based on service requirements, thereby reducing the necessary encrypted data amount and effectively improving the encryption processing speed of the CAD graph file.
Meanwhile, the local encryption in the invention is preferably carried out by taking one or more entity objects as units, so that a user can quickly select and determine an encryption target (namely an encryption object) to be encrypted in the CAD file. For example, in a collaborative work scenario of CAD, a plurality of collaborative parties need to perform drawing work in the same CAD file, and viewing or editing rights of CAD files by different collaborative parties are not the same, so that an upstream user (a principal responsible person of a collaborative project) is often required to take charge of confidentiality work of CAD files between multi-party circulation. Specifically, each collaborator typically creates one or more new tiles on the file during the rendering process (and one tile is considered as a physical object in the CAD) to complete the corresponding rendering. Thus, when an upstream user wishes to hide (or read only) the rendering content of one (or more) collaborators from the other (or more) collaborators, the tiles created by the collaborators can be quickly selected to quickly select the target content to fulfill the encryption requirement. The local encryption method in the invention uses one or more entity objects (such as a part and the like), a block and a view port or layout space formed by the one or more entity objects as encryption units to carry out hidden or read-only encryption. Therefore, the method is beneficial to the user to encrypt part of the content in the CAD file efficiently and quickly in the scene of multiparty collaboration or in the CAD file transmission process of upstream and downstream users, and meanwhile, the viewing and editing of the rest of the content by the user are not affected.
And the dictionary encryption technology is selected, so that excessive encrypted data volume is not generated, and the problems of low transmission efficiency and excessive occupied storage space caused by overlarge CAD files are avoided. In addition, encryption realized by dictionary encryption technology, after the user encrypts the file, related data information related to confidentiality is still remained in the CAD file, so that the user can conveniently decrypt and view the CAD file.
Furthermore, the local encryption mode and the dictionary encryption technology are mutually matched, so that the file circulation requirement among multiple parties can be further met, and the file circulation efficiency is improved under the condition of meeting the service requirement. For example, when one or more downstream users need to be provided with the condition graphs, the method can directly output one or more condition graphs on the original drawing, and is simple to operate and higher in efficiency. Specifically, professional data which are not needed by downstream parties (such as other cooperators with smaller authority, clients and the like) are directly hidden on the original image, so that no fracture exists before the original image and the condition diagram, and the synchronization of design data is effectively ensured.
The local encryption method in the invention can also be applied to a scene of quick review. In particular, the user may locally conceal the encryption of the less focused region so that only the more focused region is reviewed for review.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below. Like elements or portions are generally identified by like reference numerals throughout the several figures. In the drawings, elements or portions thereof are not necessarily drawn to scale. It will be apparent to those of ordinary skill in the art that the drawings in the following description are of some embodiments of the invention and that other drawings may be derived from these drawings without inventive faculty.
FIG. 1 is a flow chart of a method of partial encryption in an exemplary embodiment of the invention;
FIG. 2 is a schematic diagram of a data structure of a CAD file;
FIG. 3a is a schematic diagram showing the contents of a CAD file in one embodiment;
FIG. 3b is a schematic view of the CAD file of FIG. 3a after the form portion is hidden and encrypted;
FIG. 4a is a schematic diagram of a first partial operation interface for partial encryption according to an exemplary embodiment of the present invention;
FIG. 4b is a diagram of a second partial operation interface for partial encryption in accordance with an exemplary embodiment of the present invention;
FIG. 4c is a diagram of a third partial operation interface for partial encryption in accordance with an exemplary embodiment of the present invention;
FIG. 5 is a schematic block diagram of a system in an exemplary embodiment of the invention;
FIG. 6a is a schematic diagram of a first operating state of partial encryption in a further exemplary embodiment of the present invention;
FIG. 6b is a second operational state diagram of partial encryption in yet another exemplary embodiment of the present invention;
fig. 6c is a schematic diagram of a third operating state of partial encryption in a further exemplary embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention more clear, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. It will be apparent that the described embodiments are some, but not all, embodiments of the invention. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
In this document, suffixes such as "module", "component", or "unit" used to represent elements are used only for facilitating the description of the present invention, and have no particular meaning in themselves. Thus, "module," "component," or "unit" may be used in combination.
The terms "upper," "lower," "inner," "outer," "front," "rear," "one end," "the other end," and the like herein refer to an orientation or positional relationship based on that shown in the drawings, merely for convenience of description and to simplify the description, and do not denote or imply that the devices or elements referred to must have a particular orientation, be constructed and operated in a particular orientation, and thus should not be construed as limiting the invention. Furthermore, the terms "first," "second," and the like, are used for descriptive purposes only and are not to be construed as indicating or implying relative importance.
The terms "mounted," "configured to," "connected," and the like, herein, are to be construed broadly as, for example, "connected," whether fixedly, detachably, or integrally connected, unless otherwise specifically defined and limited; the two components can be mechanically connected, can be directly connected or can be indirectly connected through an intermediate medium, and can be communicated with each other. The specific meaning of the above terms in the present invention will be understood in specific cases by those of ordinary skill in the art.
Herein, "and/or" includes any and all combinations of one or more of the associated listed items.
Herein, "plurality" means two or more, i.e., it includes two, three, four, five, etc.
Herein, "files" refer to various types of files that can be run in a CAD system for drawing, editing, modifying, storing, viewing CAD drawings. Common CAD file formats include, but are not limited to DWG, DXF, DWT, DWF, DWL, DWS, DWX, MNU, MNC, MNL, MNS, CUI, CUIX, SHX, PAT, LIN, CTB, STB, PLT, PC3, etc.
Herein, an "object" is a basic type of drawing data (i.e., CAD file data), in other words, a drawing is composed of a series of objects. Where "object" further includes both physical and non-physical objects.
Herein, "collaborators" refer to users who participate in a drawing item together and work in conjunction with each other. The professions between the collaborators may be the same (e.g., multiple construction professions are drawn together) or may be different (e.g., construction engineers, plumbing engineers, electrical engineers, heating and ventilation engineers are drawn together), and the collaborators refer to each other's drawings.
Herein, the "first encryption state" refers to a state in which encryption is hidden (i.e., encryption is invisible), and when the encryption target is in the first encryption state, graphics or data contents of the encryption target are invisible on the file to the user. The "second encryption state" refers to a read-only state (i.e., a state that is not editable), and when the encryption target is in the second encryption state, the graphic of the encryption target is visible on the file but cannot be edited (e.g., modified, deleted, copied, etc.) by the user.
Herein, as shown in fig. 2, a CAD drawing is a collection of objects stored in a database, wherein the basic database objects are entities (also referred to herein as entity objects), symbol tables, and dictionaries. An entity is a special database object that has a graphical representation in CAD, such as a straight line, a circle, an arc, and text, all being entities. When the CAD drawing is opened, the user can see the entity through the screen displaying the drawing, and can operate the editing entity.
In order to expand the application of CAD in various industries and improve the operation efficiency, CAD provides a secondary development interface, and a developer can develop tools and software according to the requirements of a specific industry, and can use the tools to create complex graphics composed of basic graphics or perform some special editing operations. A developer may define some parameterized objects that are similar to the basic objects, such objects being custom objects.
Professional software utilizes the technology related to the custom object and the reactor to improve drawing and modifying efficiency by times. Custom objects can also have negative effects, namely compatibility issues. If corresponding professional software or interpreter (Enabler) plug-ins are installed (i.e. the functions capable of displaying and editing the custom objects), the custom objects can be normally displayed and printed, and parametric editing can be conveniently performed. However, if the corresponding interpreter is not installed in the CAD, the CAD cannot recognize the custom objects, and not only cannot perform parametric editing, but sometimes cannot display the custom objects. The custom object in this state is the "proxy object (or proxy graphic)". Without an interpreter, the CAD does not know what type, what name, this custom object is, and therefore appears uniformly as a proxy object.
Example 1
In a first aspect of the present invention, there is provided a method for partial encryption of a CAD file, as shown in fig. 1, the method comprising the steps of:
s10, providing a file, wherein the file comprises: a plurality of entity objects;
s20, at least one encryption target to be encrypted is obtained in response to the operation of a user, wherein the encryption target comprises: at least one physical object;
s30, encrypting the encryption target in response to the operation of the user, so that the encryption target is converted into a corresponding encryption state, and the encryption state comprises: a first encryption state;
when the encryption status is the first encryption status, the step of transferring the encryption target to the corresponding encryption status in the step S30 includes:
s302, establishing at least one encryption dictionary, wherein the contents in the encryption dictionary can be read through decryption instructions;
s303, acquiring at least one non-entity object, wherein data for describing the encryption target is written in the non-entity object;
s304, storing the non-entity object into the encryption dictionary, and deleting the encryption target (namely deleting the entity object in the original encryption target), so that the encryption target is in a first encryption state.
Further, in some embodiments, the step of obtaining at least one non-physical object in S303 includes:
Creating at least one non-physical object based on the encryption target;
correspondingly analyzing and reading data information of the entity object, wherein the data information comprises: first object basic data, display data, and feature data;
correspondingly writing the data information into the non-entity object, wherein the data structure comprises: second object basic data and second private data, and the second object basic data includes: the first object basic data, the second private data completely inherits the second object basic data, and the second private data further includes: the display data and the feature data.
In this embodiment, dictionary technology is preferably applied to encryption application of CAD files (i.e., CAD drawings) to achieve partial encryption in CAD files. Specifically, when a user wishes to hide a part of content (such as one or more entity objects in a file), the user first selects the part of content that needs to be hidden to form an encryption target, and creates a non-entity object correspondingly according to all entity objects in the encryption target. And then writing the data information of all the entity objects in the encryption target into the non-entity objects. The non-physical object is then stored/added to a pre-created encryption dictionary and the physical object in the encryption target is deleted (i.e., the corresponding physical object is deleted in the drawing space of the file), so that the user cannot see the encryption target from the opened file, i.e., the encryption target is hidden.
Wherein, the inheritance structure (or data structure) of the data of the entity object is: acdbobject→acdbentity→private data (herein, the private data of an entity object is also referred to as "first private data"), wherein the private data is also referred to as private content, which includes data specific to each graphic/entity object, such as the center of a circle, radius, etc. The inheritance structure of the data of the non-entity object created in the embodiment is as follows: acdbobject→private data.
The AcDbObject layer mainly includes basic data such as an object ID, an object type, an associated object ID, a drawing version, and the like, and these basic data are also referred to herein as "object basic data".
The AcDbEntity layer data completely inherits the AcDbObject content and adds display data representing the entity. Wherein the display data includes one or more of: color, layer, line scale, print style, line width, transparency, hyperlinks, thickness, etc.
The private data then fully inherits the AcDbEntity content and adds geometric feature data (or feature data). Wherein the characteristic data is data specific to the corresponding geometric figure (such as a circle, a line). For example, when the physical object is a circle, the geometric feature data includes one or more of the following: the coordinate location of the center (center X, Y, Z coordinates), radius, diameter, circumference, area, normal coordinates (normal X, Y, Z coordinates), and so forth. For another example, when the physical object is an arc, the geometric feature data includes one or more of: start point coordinates (start point X, Y, Z coordinates), center coordinates (center X, Y, Z coordinates), end point coordinates (end point X, Y, Z coordinates), start point angle, end point angle, total angle, arc length, area, normal coordinates (normal X, Y, Z coordinates), and the like.
The physical object can be displayed completely based on the first object basic data, the display data, the geometric feature data and the like.
In this embodiment, the data information in the original entity object is completely written in the non-entity object, and in the subsequent decryption process, the original entity object can be completely reproduced (i.e. the original entity object is recreated on the drawing space based on the data information). And the inheritance structure of the non-entity object adopts the form of AcDbObject-private data and is matched with the characteristics of the encryption dictionary, so that the storage in the encryption dictionary can be smoothly realized.
Meanwhile, in this embodiment, the non-physical object is stored in the encryption dictionary, and the encryption dictionary is stored in the drawing itself, so that the encrypted data is highly bound with the drawing itself. The high binding between the encrypted data and the drawing can realize the integral reading of the drawing data (namely, the integrity of the drawing data in the drawing reading process is ensured), so that the coordination and management of the drawing data are facilitated.
For example, when the encrypted drawing is stored, the encrypted data is still stored in the drawing itself, so that a user can check all data contents of the drawing when looking up the drawing later. For example, when the drawing is transmitted, all data of the drawing is still transmitted as a whole, and when the downstream side or the cooperator side for acquiring the drawing needs to check the drawing, the unencrypted part can be checked and edited, and meanwhile, after the corresponding authority is acquired, the encrypted content can be checked conveniently.
In some embodiments, the user is the person issuing the instruction.
Alternatively, in other embodiments, the user is a computer or other electronic device that can issue corresponding instructions.
For example, in some embodiments, the encryption target is a physical object, such as a geometric figure in a drawing.
For another example, in some embodiments, the encryption target is a tile that is composed of multiple physical objects. That is, the tiles may be encrypted as a whole in this embodiment.
For another example, in some embodiments, the encryption target may be a viewport, or layout space, or the like, comprised of one or more physical objects.
It can be understood that the viewport is a physical object, so that the viewport can be directly used as an encryption target for encryption.
The direct encryption of the layout space helps the user to quickly select multiple graphical elements (e.g., viewports, layout spaces, tiles or other individual physical objects, etc.). Of course, in other embodiments, one or more physical objects in the layout space may be encrypted, so as to further improve flexibility and convenience of encryption operation.
Further, in some embodiments, the encryption state further comprises: a second encryption state; and when the encryption status is the second encryption status, as shown in fig. 1, the step of transferring the encryption target to the corresponding encryption status in step S30 includes:
s306, acquiring an entity object in the encryption target;
s307, converting the entity object into a custom object, wherein after an interpreter for displaying the custom object is provided for the user, the encryption target is in a visible state.
The second encryption state in this embodiment is a read-only encrypted state, i.e., a state in which the encryption target is made viewable but not editable.
In this embodiment, preferably, the custom technology is applied to a read-only encryption (i.e. visible but non-editable) application of the drawing, and for an encryption target that is desired to be read-only encrypted, the encryption target is converted into a custom object by the custom technology, where the custom object needs to be displayed under the cooperation of an interpreter (specifically, the interpreter interprets the custom entity so that the custom entity is displayed on the drawing). In this embodiment, the interaction of the dictionary technology and the custom technology provides a comprehensive encryption scheme, so that corresponding encryption modes can be provided for encryption targets with different security requirements, so as to provide different viewing and editing rights for different downstream users, and further improve the flexibility of the encryption modes.
In some embodiments, the interpreter may provide an interface to read special data, and as soon as an encrypted physical object is selected, the data of interest to the user may be presented in a properties box by the interpreter. It will be appreciated that this data item is not fixed, and that the data may be presented as long as it is added within the interpreter.
In some embodiments, for users who only acquire read-only rights (such as downstream users, cooperators, etc.), an interpreter with only the function of displaying custom objects may be provided, so that when the users view the drawing, only the encryption target can be seen on the drawing, but cannot be edited.
It will be appreciated that the encryption target is in a hidden state if the interpreter is not provided to the user. That is, the custom encryption method in this embodiment may be used for performing both hidden encryption and read-only encryption.
Alternatively, in other embodiments, an interpreter with dual editing and viewing functions may be provided to the user, where the interpreter may decrypt the read-only encryption target, such that the encryption target is in a viewable and editable state.
In some embodiments, when the user wants to select the custom technology to perform read-only encryption, the user may also draw the entity object in the process of designing the drawing, that is, using the custom technology. In this embodiment, the upstream user does not need to perform additional special processing on the drawing, so that the drawing can achieve the effect of read-only encryption relative to other downstream users (specifically, the downstream user cannot read or identify data without obtaining an interpreter).
Thus, for upstream users (e.g., design companies, design houses), different downstream users (e.g., collaborative clients) may also be provided with different viewing and editing rights by providing specific interpreters to the different downstream users.
Or in other embodiments, the data of the custom object may be stored in the encryption dictionary, and the custom object may be deleted from the drawing space, where the user further needs to obtain a decryption instruction of the encryption dictionary to obtain the read-only permission of the custom object, that is, to achieve read-only of the encryption target. In the embodiment, the security of drawing confidentiality is further improved.
Further, in some embodiments, step S302 includes:
establishing at least one dictionary on the file, wherein the dictionary is used for storing non-entity objects;
encrypting the dictionary, and correspondingly acquiring at least one decryption instruction for decrypting the dictionary, thereby obtaining the encrypted dictionary.
For example, in some embodiments, one or more specialized encryption dictionaries are first added at the time of creating the drawing, i.e., in the named object dictionary. Meanwhile, corresponding decryption instructions can be set for opening and closing the encryption dictionary (namely, for a channel for acquiring data in the encryption dictionary), and the functions of encryption or decryption and the like can be realized by utilizing the encryption dictionary only when a user has corresponding encryption or decryption rights.
In the embodiment, the encrypted data in the drawing is stored on the drawing, so that the data security of the drawing can be effectively protected. In addition, the security drawing obtained in the embodiment can also be used for outputting a condition drawing (the condition drawing refers to drawings corresponding to different versions of different roles, such as drawings corresponding to different downstream users providing different areas), namely, unnecessary data of downstream professions (i.e., downstream users) are directly hidden on the original drawing, so that the original drawing and the condition drawing cannot be cracked, and the design data synchronization can be effectively ensured.
For example, in a home design scenario, it is now necessary to take the designed drawings to the consumer for viewing, but it is undesirable for some sensitive data therein, such as cost tables, etc., for the consumer to see, it is generally necessary to save two or more drawings, one without a cost table and one with a cost table. The local encryption method in the embodiment can carry out local encryption on the cost table, and meanwhile, a user can assign encryption authority to the cost table, such as hiding, read-only and the like, so that two or more drawings do not need to be saved, the two or more parties can be transmitted back and forth only through one drawing, and the confidentiality and the security of data are ensured.
In some embodiments, the process of decrypting the hidden encrypted object is: and re-creating the entity object on the drawing space according to the data of the non-entity object. Therefore, the encryption method in the embodiment does not modify the graphic content of the original image, and ensures the safety and accuracy of the data.
It should be noted that, as shown in fig. 2, the symbol table and dictionary are containers for storing database objects. For example, CAD creates a dictionary called a named object dictionary for a database when creating a new graph. Named object dictionaries may be considered as "tables of contents" of all dictionaries associated with a database. The user may create a new dictionary in the named object dictionary and then add a new database object to it. Specifically, in CAD, a dictionary is often used as supplementary data of a physical object, in other words, in existing CAD software, dictionary technology is a way to expand data. For example, a plurality of lines of text with fields on a drawing sheet would require binding the fields and the lines of text together by a dictionary. For example, the extended dictionary is used to store non-graphic data (where these non-graphic data correspond to attribute information, and data that cannot be recorded by the attribute dialog box of the CAD program), so that the subsequent extraction is facilitated, specifically, some data information about construction aspects, such as a construction standard segment, a pile number range, a construction completion time, etc., may be stored in a multi-segment line (representing a pipeline, or others), and when the drawing is opened later, it is known which construction unit the pipeline is constructed, what time is completed, etc., so that the construction data information is conveniently checked and counted.
Whereas in the present embodiment the hidden encryption is preferably implemented by dictionary technology. The encryption dictionary does not extend the entity object, but is equivalent to replacing the data (storing the data information of the entity object). Thus, the use of dictionary technology (or, alternatively, the role played by the dictionary) in embodiments of the present invention is not the same as that of prior art implementations.
Further, in some embodiments, the decryption instructions include: the first decryption instruction, correspondingly, the method further comprises the steps of:
responding to a first decryption instruction input by a user, and enabling non-entity objects stored in a dictionary to enter a decryption state;
reading second object basic data and second private data in the non-entity object;
and re-creating the entity object on the file according to the second object basic data and the second private data so that the encryption target is in a visible state.
Further, in some embodiments, the decryption instructions include: the second decryption instruction, correspondingly, the method further comprises the steps of:
responding to a second decryption instruction input by a user, and acquiring non-entity objects stored in a dictionary;
and creating a custom object according to the non-entity object, and setting the custom object in a corresponding drawing space on the file.
In some embodiments, the first and second decryption instructions may be self-entered by a user viewing the drawing.
Alternatively, in other embodiments, the process of inputting/obtaining the first and second decryption instructions may be automatically implemented by a computer (or other electronic device) that reads the drawing. Specifically, when encrypting the local content of the drawing, the corresponding decryption authority may be set at the same time, for example, the authority (such as verification information) may be set so that the encrypted content in the drawing may be read by one or more computers (or other electronic devices), or one or more users. Subsequently, during the reading of the drawing, when the drawing is acquired by the computer and data is read, the computer or user authentication information (e.g., information in the reading computer that may be used to indicate the user or computer identity, such as a computer ID, a user IP address, etc.) may be read autonomously (or autonomously by the drawing party) by the system managing the drawing (e.g., CAD software for reading the drawing). And judging whether the computer or the user is granted with the viewing authority based on the verification information, and if the computer or the user is granted with the viewing authority, allowing the computer or the user to read the encrypted data of the drawing based on the corresponding viewing authority (such as read-only authority or viewing and editing authority). In this embodiment, the decryption process does not need manual operation, and can be automatically processed by the computer to simplify the operation flow of the user and optimize the user experience.
In this embodiment, the decryption instruction may be verification information of the computer or the user, or may be a preset decryption instruction sent to the encryption program after the computer acquires the corresponding verification information.
Further, in some embodiments, the unencrypted physical object is displayed in a first manner and for the encryption target of read-only encryption, a second manner is used to visually distinguish between editable content, non-editable content, to better aid the user in understanding and editing the content of the drawing (e.g., which are editable and which are non-editable). According to the situation of different application scenes, the first display mode and the second display mode can adopt different colors, different line patterns (such as virtual reality, thickness) and different highlighting modes (such as making the changing element semitransparent or in a watermark mode).
In recent years, with the continuous development of the construction industry, the manufacturing industry and other industries in which the use of drawing software is involved, the drawing information amount drawn by various types of drawing software, particularly CAD (computer aided design ) software, is larger than before, and the data amount of the file of the CAD drawing is also larger and larger, so that the encryption time required to be consumed is also longer. In particular, when encrypting a batch of related CAD drawings in one or more related items, the encryption time will be longer, which seriously affects the processing efficiency of the CAD drawings in the processes of management, storage, etc. The local encryption method provided in the embodiment can effectively improve the processing efficiency of CAD drawings in the processes of management (including encryption processing, file transmission and the like) and storage.
In addition, unlike the local encryption method in the prior art (such as a CAD model local encryption method based on sketching), the encryption method in this embodiment can implement hidden encryption on the encryption target. Therefore, the method provided by the embodiment can also meet the requirement of users for quickly looking up the drawings. Specifically, when the user only wants to pay attention to the content of some areas on the drawing, other irrelevant contents can be hidden and encrypted, so that only the content focused by the user is displayed in the drawing space, and the user can be helped to quickly view the focused content.
In the prior art, the partial encryption mode is to perform read-only encryption on the CAD model (such as one or more physical objects), so that the encrypted CAD model still occupies a certain drawing space position, and is not hidden or deleted from the drawing space. In addition, the encryption mode changes the display effect of the local structure in the CAD model, so that the CAD model cannot be completely checked and restored, and the mode is not beneficial to the user to check the drawing. Especially when the graphic content on the drawing space is more, the encryption mode easily brings the illusion of messy codes to the data on the drawing (or easily generates a space confusing feeling on the drawing space) to the user, and negative influence is brought to the viewing process of the user.
It should also be noted that this "read-only encryption" mode in the prior art is also completely different from the read-only encryption in this embodiment (e.g., the implementation method and display effect are different).
In some embodiments, a data encryption manager (or data encryption management box) may be provided in CAD software based on the above method, and as shown in fig. 4 a-4 c, a user may select any one of the physical objects, tiles, view ports, or layout windows and perform read-only encryption or hidden encryption on the selected physical object, tile, view port, or layout window.
The technical scheme of the invention is further described below in connection with some practical use scenarios:
using scenario 1:
if the upstream user/upstream designer does not want the downstream user to be able to see the private data of the drawing or does not allow the downstream user to modify the data of the drawing, the local encryption method/function may be used to encrypt the data that is desired to be protected. The encrypted data can be read and written only after decryption. Specifically, an encryption manager may be provided in CAD software based on the encryption method described above, through which downstream users may implement decryption of content). At this time, the upstream user does not need to save a drawing for the content which allows the downstream user to view or edit, thereby improving the working efficiency of the upstream user.
When the upstream user does not wish the downstream user to be able to view the contents of the underlying form area of the paper, as shown in fig. 3a, 3b, the underlying form area may be hidden from view, as shown in fig. 3 b.
Using scenario 2:
for particularly complex drawings, a large amount of content which is not concerned by some users may exist, which causes great trouble to users in browsing drawings. By using the method, the data which is not concerned can be encrypted and hidden, so that the interface is simpler. In addition, the related data are still stored on the drawing, so that the accuracy and the integrity of the drawing data are not affected.
Using scenario 3:
when an upstream user (such as a main responsible person of an item) needs to finish a drawing together with a plurality of cooperators, if the upstream user is responsible for drawing a building main body, the cooperators I are responsible for drawing a heating and ventilation part, the cooperators II are responsible for drawing a water supply and drainage part, and the cooperators III are responsible for drawing an electric part. Wherein the upstream user has the highest rights and the cooperator has only partial rights.
However, when one or more cooperators draw the respective parts, reference or reference to the drawing parts of other cooperators is needed to ensure that the parts can work cooperatively, and at this time, the upstream user can set the drawing part for reference to be read-only encryption so as to avoid the cooperators from deleting the original image carelessly in the working process. Of course, for some content with relatively high security requirements, it may be provided as hidden encryption, to which corresponding decryption instructions may be provided when one or more cooperators need to view. At this time, the encryption target is often one or more tiles, or encryption is mainly performed in units of one or more tiles. For example, the heating and ventilation part is drawn by referring to/referencing the building main body, so that the content of the heating and ventilation part and the content of the building main body belong to different blocks, when the heating and ventilation part is encrypted, the blocks drawn by the heating and ventilation part can be directly encrypted in practice, the operation is simple and convenient, and the encryption efficiency is high.
In addition, at the later stage after the project approaches, multiple rounds of modification may be required, and at this time, the above-mentioned partial encryption scheme can be used to realize the transmission of one drawing among multiple parties (without storing drawing files of different versions for different cooperators). Specifically, the security drawing is transmitted to the cooperator responsible for the part a based on the order of drawing modification (for example, the part a is modified and the part B is modified), after the part a is modified, the security drawing is transmitted to the cooperator responsible for the part B, and finally, the final drawing is perfected and audited by the main responsible person of the project. In the process, the use of local encryption can ensure the consistency of important parts in the drawing in the front-back transmission process (important contents are not modified), and can provide enough viewing and editing rights for users, and all newly added modification contents are made on the same drawing file, so that the accuracy and the cooperativity of the modification data in the modification process are ensured.
It can be understood that at least two steps are required to decrypt the encrypted object after the dictionary is encrypted, firstly, a correct decryption instruction is obtained, and secondly, the original physical object is reconstructed on the drawing space according to the data in the non-physical object. After the custom technology is encrypted, the entity object can be seen by acquiring the correct interpreter, and if the interpreter with the editing function is acquired, the entity object can be edited. In practical applications, cooperation between an upstream user (such as a design company or a design house) and a downstream user (such as a client), a cooperator, and the like may be effective for a long time, so that the upstream user, the downstream user, and the cooperator may exchange multiple drawings of multiple items. At this point, typically at a prior communication, the upstream user will provide a particular interpreter (e.g., an interpreter with only viewing capabilities) to the downstream user or to the collaborator. In the subsequent collaboration, a downstream user or a collaboration party who acquired the new file may view an encryption target set as read-only encryption in the file even if the corresponding authority is not granted in the collaboration.
Therefore, in this embodiment, hidden encryption is adopted for the encryption target with the highest encryption authority, and the dictionary technology is preferably selected to realize the hidden encryption of the encryption target. Aiming at some encryption targets with relatively low encryption rights, the read-only encryption is preferably performed by using a custom technology. For read-only encryption realized by a custom technology, an interpreter can be obtained for a downstream user or a cooperator, and an encryption target of the read-only encryption can be easily checked. No extra decryption operation is needed for the upstream user or the downstream user, and the operation is simple and convenient. That is, in this embodiment, the interaction between the dictionary technology and the custom technology coordinates the requirement of the user for the security (or security level) of confidentiality and the requirement of the operation convenience (or file viewing convenience). It will be understood, of course, that the encryption of dictionary technology and custom technology can serve to keep drawing data secret for upstream users, downstream users, and unrelated users other than collaborators.
In some embodiments, encrypting the dictionary may be implemented by a generic data encryption algorithm. For example, AES (advanced encryption standard )), DES (symmetric encryption algorithm, data Encryption Standard), RSA (RSAalgorithm, RSA encryption algorithm), SHA (secure hash algorithm ), and the like.
In the embodiment, the dictionary encryption technology and various general encryption algorithms are matched together to realize the whole or partial encryption of the drawing, and a special encryption algorithm is not required to be designed for drawing data, so that the realization mode is simple.
In this embodiment, all the data encryption and decryption information is stored in the drawing itself, and the encryption method may not depend on network implementation.
Example two
The second aspect of the present invention also provides a system for local encryption of CAD files, corresponding to the method described above, as shown in fig. 5, comprising:
a file providing module 10 configured to provide a file comprising: a plurality of entity objects;
the object obtaining module 20 is configured to obtain at least one encryption object to be encrypted in response to an operation of a user, the encryption object including: at least one physical object;
the encryption module 30 is configured to encrypt the encryption target in response to an operation of a user, so that the encryption target is transferred to a corresponding encryption state, and the encryption state includes: a first encryption state; wherein the encryption module 30 includes: the first encryption unit 31, the first encryption unit 31 further includes:
An encryption dictionary creation unit configured to create at least one encryption dictionary when the encryption state is a first encryption state, contents in the encryption dictionary being readable by decryption instructions;
a non-solid object acquisition unit configured to acquire at least one non-solid object in which data for describing the encryption target is written;
and an encryption realization unit configured to store the non-physical object into the encryption dictionary and delete the encryption target so that the encryption target is in the first encryption state.
In some embodiments, the non-physical object acquisition unit further comprises:
a first subunit configured to create at least one non-physical object based on the encryption target;
a second subunit configured to correspondingly analyze and read data information of the physical object, the data information comprising: first object basic data, display data, and feature data;
a third subunit, configured to correspondingly write the data information into the non-entity object, where the data structure of the non-entity object after completing data writing includes: second object basic data and second private data, and the second object basic data includes: the first object basic data, the second private data completely inherits the second object basic data, and the second private data further includes: the display data and the feature data.
In some embodiments, a "non-physical object" includes: and data such as a layer, a text pattern, a labeling pattern and the like. Where "style" refers to a named set of properties for classifying and defining particular geometric and textual elements (e.g., line styles or text styles), such as a text style is a set of properties that some column text needs to use. For example, a block table is recorded as a non-physical object and a quick reference is made to a physical object generated from the block table record.
In some embodiments, the encryption state further comprises: the second encryption state, correspondingly, the encryption module further includes:
a second encryption unit 32 configured to acquire the entity object in the encryption target when the encryption state is the second encryption state; the entity object is converted into a custom object, which is in a visible state after an interpreter for displaying the custom object is provided to the user.
In some embodiments, the first encryption unit further comprises:
a dictionary creation subunit configured to create at least one dictionary on the file, the dictionary being for storing non-physical objects; encrypting the dictionary, and correspondingly acquiring at least one decryption instruction for decrypting the dictionary, thereby obtaining the encrypted dictionary.
In some embodiments, the decryption instructions include: the first decryption instruction, correspondingly, the system further comprises:
a first decryption module configured to enter a decryption state for non-physical objects stored in the dictionary in response to a first decryption instruction entered by a user; reading second object basic data and second private data in the non-entity object; and re-creating the entity object on the file according to the second object basic data and the second private data so that the encryption target is in a visible state.
In some embodiments, the decryption instructions include: the second decryption instruction, correspondingly, the system further comprises:
a second decryption module configured to obtain the non-physical objects stored in the dictionary in response to a second decryption instruction input by the user;
and creating a custom object according to the non-entity object, and setting the custom object in a corresponding drawing space on the file.
Preferably, the encryption system in this embodiment provides a comprehensive encryption scheme including hidden encryption and read-only encryption through the combination of dictionary technology and custom technology, so that the advantages of the dictionary technology and custom technology are combined with the requirements of application scenarios, thereby not only meeting the use requirements of users in different application scenarios (e.g., multi-party cooperative scenarios) and different encryption purposes, but also guaranteeing the security and accuracy of encrypted data.
For example, when users involved in multiparty collaboration are respectively involved in different job types, the user (project main responsible person) at the most upstream may locally encrypt the drawing in the unit of job types. Specifically, the mapping regions of different species are individually locally encrypted.
In addition, the read-only scheme realized by the custom technology in the invention does not influence the browsing of the special data of each entity object, wherein the special data comprises the following components: entity type, some important data that constitutes an entity, such as center of circle, radius, etc. That is, the function of read-only encryption in the present invention is important to prevent modification, but is viewable (e.g., by means of an interpreter and CAD platform) for important special data.
Example III
A third aspect of the present invention further provides a method for local encryption of CAD files, based on the method provided in the first embodiment, including the steps S10, S20, and S30. Unlike the above embodiment, the specific implementation of step S30 is different.
For example, in some embodiments, the step of converting the encryption target to a corresponding encryption state in S30 includes:
Creating at least one first encryption dictionary, wherein the first encryption dictionary is used for storing identification marks (such as IDs) of the entity objects and identification marks (such as IDs) of a first layer (namely an original layer) where the entity objects are located;
creating at least one new layer on the file, setting a hidden mark on the layer, and setting the layer to be in a frozen state;
and acquiring the entity object in the encryption target, modifying the layer where the entity object is positioned into a hidden layer, and storing the identification marks of the entity object and the original layer thereof in the encryption dictionary.
In some embodiments, when the confidential content needs to be decrypted, the layer of the entity is modified to the original layer according to the identification marks of the entity object and the original layer stored in the first encryption dictionary, and the information stored in the dictionary can be deleted.
In some embodiments, the step of read-only encrypting the layer comprises:
creating at least one second encryption dictionary, wherein the second encryption dictionary is used for storing an entity ID and an original layer ID which are in a second encryption state and a new hidden layer which is in a locking state;
cloning a new layer from the original layer of the entity, setting a hidden mark and setting the hidden mark into a locking state;
And acquiring an entity corresponding to the encryption target, setting a new layer of cloning, and recording an entity ID and a new layer ID in a second encryption dictionary.
Further, in some embodiments, when decrypting the read-only content, the layer ID corresponding to the entity is restored to old and the response information is deleted.
The encryption process of the layer encryption mode in the embodiment is simple, and the size change of the CAD file in the encryption mode is not too large (the file transmission and storage are facilitated).
In this embodiment, the dictionary encryption technology is combined with the layer to realize local encryption of the CAD file. As shown in fig. 6 a-6 c, there are at least two functions in the layers, such as freezing, locking. Wherein, the object on the locking layer is only readable and not editable; objects on the frozen layer are hidden. In fig. 6b, the left circle is shown as layer 1, which is set to freeze open, the right circle is shown as layer 2, which is set to lock open. The display effect after setting is as shown in fig. 6c, where the circle on the left is in a hidden state, the circle on the right is still visible, but not editable.
Further, in some embodiments, graphics in the read-only state (visibly non-editable) may be displayed in a special style to visually facilitate distinguishing the read-only encrypted graphics from other ordinary graphics, thereby facilitating editing operations by the user.
The invention also provides an encryption system corresponding to the encryption method in any one of the third embodiments.
Example IV
In a fourth aspect, the present invention provides a computer program product embodied in a non-transitory computer readable medium, the computer program product programmed for partial encryption of CAD files, the computer program product comprising instructions for performing the operations of any of the methods of the embodiments described above.
For example, in some embodiments, the computer program product includes instructions for: providing a file, the file comprising: a plurality of entity objects; acquiring at least one encryption target to be encrypted in response to a user operation, wherein the encryption target comprises: at least one physical object; encrypting the encryption target in response to a user operation such that the encryption target is transitioned to a corresponding encryption state, and the encryption state includes: a first encryption state; when the encryption state is the first encryption state, the step of converting the encryption target into the corresponding encryption state comprises the following steps: establishing at least one encryption dictionary, wherein the encryption dictionary can realize data reading through decryption instructions; acquiring at least one non-entity object, wherein data information for describing the encryption target is written in the non-entity object; and storing the non-entity object into the encryption dictionary, and deleting the encryption target, so that the encryption target is in the first encryption state.
Exemplary hardware and software environments for implementing one or more embodiments of the invention include a computer, which may be a user/client computer, a server computer, or a database computer. The computer includes a processor and memory, such as Random Access Memory (RAM). Computers may be coupled and/or integrated with other devices, including input/output (I/O) devices such as keyboards, cursor control devices (e.g., mice, pointing devices, pens and tablet computers, touch screens, multi-touch devices, etc.), and printers. In one or more embodiments, the computer may be coupled to or constitute a portable or media viewing/listening device (e.g., MP3 player, iPod TM 、Nook TM Portable digital video player, cellular device, and personalDigital assistant, etc.). In another embodiment, the computer may include a multi-touch device, mobile phone, gaming system, internet-enabled television, television set-top box, or other internet-enabled device executing on a variety of platforms and operating systems.
In one embodiment, a computer operates through a general purpose processor to execute instructions defined by a computer program under the control of an operating system. The computer program and/or operating system may be stored in memory and may be connected to a user and/or other device to accept inputs and commands and provide outputs and results in accordance with the inputs and commands and instructions defined by the computer program and operating system.
Some or all of the operations performed by a computer according to computer program instructions may be implemented in a special purpose processor. In this embodiment, some or all of the instructions of the computer program may be implemented by firmware instructions stored in a read-only memory (ROM), programmable read-only memory (PROM), or flash memory, which is located in a dedicated processor or memory. A special purpose processor may also be hardwired to perform some or all of the operations to implement the present invention by circuit design. Furthermore, the special purpose processor may be a hybrid processor that includes special purpose circuitry for performing a subset of the functions, as well as other circuitry for performing more general-purpose functions, such as in response to computer program instructions. In one embodiment, the special purpose processor is an Application Specific Integrated Circuit (ASIC).
A computer may also implement a compiler that allows an application or computer program written in a programming language (e.g., COBOL, pascal, c ++, FORTRAN, or other language) to be translated into processor-readable code. Alternatively, the compiler may be an interpreter that directly executes the instructions/source code, converts the source code into an intermediate representation to be executed, or executes stored pre-compiled code. Such source code may be written in a variety of programming languages, such as Java TM 、Perl TM 、Basic TM Etc. After completion, the application or computer program uses the compiler-generated relationships and logic to access and manipulate data received from the I/O device and stored on the computerData in the memory.
The computer may also optionally include an external communication device such as a modem, satellite link, ethernet card, or other device for accepting input from and providing output to other computers.
In one embodiment, instructions implementing the operating system, computer program, and compiler are tangibly embodied in a non-transitory computer-readable medium, such as a data storage device, which may include one or more fixed or removable data storage devices, such as a compression drive, a floppy disk drive, a hard disk drive, a CD-ROM drive, a tape drive, and the like. Furthermore, the operating system and computer programs are comprised of computer program instructions which when accessed, read and executed by a computer cause the computer to perform the necessary steps.
Of course, those skilled in the art will recognize that any combination of the above components, or any number of different components, peripherals, and other devices, may be used with a computer.
The distributed computer system uses a network to connect client computers to server computers. Typical combinations of resources may include networks including the Internet, lan (local area network), wan (wide area network), SNA (system network architecture) networks, or similar personal computing clients.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
From the above description of the embodiments, it will be clear to those skilled in the art that the above-described embodiment method may be implemented by means of software plus a necessary general hardware platform, but of course may also be implemented by means of hardware, but in many cases the former is a preferred embodiment. Based on such understanding, the technical solution of the present invention may be embodied essentially or in a part contributing to the prior art in the form of a software product stored in a storage medium (e.g. ROM/RAM, magnetic disk, optical disk) comprising several instructions for causing a computer terminal (which may be a mobile phone, a computer, a server, or a network device, etc.) to execute the method of the embodiments of the present invention.
The embodiments of the present invention have been described above with reference to the accompanying drawings, but the present invention is not limited to the above-described embodiments, which are merely illustrative and not restrictive, and many forms may be made by those having ordinary skill in the art without departing from the spirit of the present invention and the scope of the claims, which are to be protected by the present invention.

Claims (8)

1. A method for local encryption of CAD files, comprising:
providing a file, the file comprising: a plurality of entity objects;
acquiring at least one encryption target to be encrypted in response to a user operation, wherein the encryption target comprises: at least one physical object;
encrypting the encryption target in response to a user operation such that the encryption target is transitioned to a corresponding encryption state, and the encryption state includes: a first encryption state;
when the encryption state is the first encryption state, the step of converting the encryption target into the corresponding encryption state comprises the following steps:
establishing at least one encryption dictionary, wherein the contents in the encryption dictionary can realize data reading through decryption instructions;
Acquiring at least one non-entity object, wherein data for describing the encryption target is written in the non-entity object;
storing the non-physical object into the encryption dictionary, and deleting the encryption target, so that the encryption target is in the first encryption state;
wherein the step of obtaining at least one non-physical object comprises:
creating at least one non-physical object based on the encryption target;
correspondingly analyzing and reading data information of the entity object, wherein the data information comprises: first object basic data, display data, and feature data;
writing the data information into the non-entity object correspondingly, wherein the data structure of the non-entity object after finishing data writing comprises: second object basic data and second private data, and the second object basic data includes: the first object basic data, the second private data completely inherits the second object basic data, and the second private data further includes: the display data and the feature data.
2. The method of claim 1, wherein the encryption state further comprises: a second encryption state; and when the encryption state is the second encryption state, the step of transferring the encryption target to the corresponding encryption state includes:
Acquiring the entity object in the encryption target;
the physical object is converted into a custom object, and the encryption target is in a visible state after an interpreter for displaying the custom object is provided to a user.
3. The method of claim 1, wherein the step of creating at least one encryption dictionary comprises:
establishing at least one dictionary on the file, wherein the dictionary is used for storing the non-entity objects;
encrypting the dictionary, and correspondingly acquiring at least one decryption instruction for decrypting the dictionary, thereby obtaining the encrypted dictionary.
4. The method of claim 3, wherein the decryption instruction comprises: the first decryption instruction, correspondingly, the method further comprises the steps of:
responding to a first decryption instruction input by a user, and enabling the non-entity objects stored in the dictionary to enter a decryption state;
reading second object basic data and second private data in the non-entity object;
re-creating the entity object on the file according to the second object basic data and the second private data so that the encryption target is in a visible state;
And/or the number of the groups of groups,
the decryption instruction includes: a second decryption instruction, correspondingly, the method further comprises the steps of:
responding to a second decryption instruction input by a user, and acquiring non-entity objects stored in the dictionary;
and creating a custom object according to the non-entity object, and setting the custom object in a corresponding drawing space on the file.
5. A local encryption system for CAD files, comprising:
a file providing module configured to provide a file, the file comprising: a plurality of entity objects;
a target acquisition module configured to acquire at least one encryption target to be encrypted in response to an operation of a user, the encryption target including: at least one physical object;
an encryption module configured to encrypt the encryption target in response to an operation of a user such that the encryption target is transferred to a corresponding encryption state, and the encryption state includes: a first encryption state;
wherein, the encryption module includes:
an encryption dictionary creation unit configured to create at least one encryption dictionary when the encryption state is a first encryption state, contents in the encryption dictionary being readable by decryption instructions;
A non-solid object acquisition unit configured to acquire at least one non-solid object in which data for describing the encryption target is written;
an encryption realization unit configured to store the non-physical object into the encryption dictionary and delete the encryption target so that the encryption target is in the first encryption state; wherein the non-physical object obtaining unit further includes:
a first subunit configured to create at least one non-physical object based on the encryption target;
a second subunit configured to correspondingly analyze and read data information of the physical object, the data information comprising: first object basic data, display data, and feature data;
a third subunit, configured to correspondingly write the data information into the non-entity object, where the data structure of the non-entity object after completing data writing includes: second object basic data and second private data, and the second object basic data includes: the first object basic data, the second private data completely inherits the second object basic data, and the second private data further comprises: the display data and the feature data.
6. The system of claim 5, wherein the encryption state further comprises: the second encryption state, correspondingly, the encryption module further includes:
a second encryption unit configured to acquire the physical object in the encryption target when the encryption state is the second encryption state; converting the entity object into a custom object, wherein the entity object is in a visible state after an interpreter for displaying the custom object is provided for a user;
and/or the number of the groups of groups,
the encryption dictionary creation unit further includes:
a dictionary creation subunit configured to create at least one dictionary on the file, the dictionary for storing the non-physical objects;
and the dictionary encryption subunit encrypts the dictionary and correspondingly acquires at least one decryption instruction for decrypting the dictionary, thereby obtaining the encrypted dictionary.
7. The system of claim 6, wherein the decryption instructions comprise: the first decryption instruction, correspondingly, the system further comprises:
a first decryption module configured to enter a decryption state in response to a first decryption instruction input by a user, the non-physical objects stored in the dictionary; reading second object basic data and second private data in the non-entity object; re-creating the entity object on the file according to the second object basic data and the second private data so that the encryption target is in a visible state;
And/or, the decryption instruction includes: a second decryption instruction, correspondingly, the system further comprising:
a second decryption module configured to obtain the non-physical objects stored in the dictionary in response to a second decryption instruction input by a user; and creating a custom object according to the non-entity object, and setting the custom object in a corresponding drawing space on the file.
8. A computer program product comprising computer instructions which, when executed by a processor, implement the steps of the method according to any of claims 1-4.
CN202211253995.3A 2022-10-13 2022-10-13 Local encryption method, system and computer program product for CAD file Active CN116522352B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202311677983.8A CN117668878A (en) 2022-10-13 2022-10-13 Local encryption method, system, storage medium and program product for CAD file
CN202211253995.3A CN116522352B (en) 2022-10-13 2022-10-13 Local encryption method, system and computer program product for CAD file

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211253995.3A CN116522352B (en) 2022-10-13 2022-10-13 Local encryption method, system and computer program product for CAD file

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202311677983.8A Division CN117668878A (en) 2022-10-13 2022-10-13 Local encryption method, system, storage medium and program product for CAD file

Publications (2)

Publication Number Publication Date
CN116522352A CN116522352A (en) 2023-08-01
CN116522352B true CN116522352B (en) 2024-01-05

Family

ID=87396414

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202311677983.8A Pending CN117668878A (en) 2022-10-13 2022-10-13 Local encryption method, system, storage medium and program product for CAD file
CN202211253995.3A Active CN116522352B (en) 2022-10-13 2022-10-13 Local encryption method, system and computer program product for CAD file

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202311677983.8A Pending CN117668878A (en) 2022-10-13 2022-10-13 Local encryption method, system, storage medium and program product for CAD file

Country Status (1)

Country Link
CN (2) CN117668878A (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111814182A (en) * 2020-07-01 2020-10-23 天津联想超融合科技有限公司 File encryption method, file decryption method, file encryption equipment and file decryption equipment and storage medium
CN113836558A (en) * 2021-09-27 2021-12-24 西安万像电子科技有限公司 File encryption method, device and file decryption method

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005045656A1 (en) * 2003-11-04 2005-05-19 Think2020, Inc. Systems, methods, and computer program products for developing enterprise software applications
US8902251B2 (en) * 2009-02-10 2014-12-02 Certusview Technologies, Llc Methods, apparatus and systems for generating limited access files for searchable electronic records of underground facility locate and/or marking operations
CN105653220B (en) * 2015-12-22 2021-01-01 北京字节跳动网络技术有限公司 Screen data display method and device in remote control
JP6950162B2 (en) * 2016-10-06 2021-10-13 富士通株式会社 Cryptographic systems, cryptographic methods, cryptographic devices and cryptographic programs
CN110110299B (en) * 2019-04-28 2023-04-07 腾讯科技(上海)有限公司 Text conversion method, device and server
CN110825281A (en) * 2019-09-17 2020-02-21 五八有限公司 Method and device for selecting area on electronic map, electronic equipment and storage medium
CN112084516A (en) * 2020-09-14 2020-12-15 洛阳众智软件科技股份有限公司 Method and equipment for safely protecting CAD drawing information
CN113780791A (en) * 2021-09-03 2021-12-10 上海原构设计咨询有限公司 Comprehensive collaborative design platform
CN113946849B (en) * 2021-10-20 2023-11-03 中铁建工集团有限公司 Processing method for Revit family file

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111814182A (en) * 2020-07-01 2020-10-23 天津联想超融合科技有限公司 File encryption method, file decryption method, file encryption equipment and file decryption equipment and storage medium
CN113836558A (en) * 2021-09-27 2021-12-24 西安万像电子科技有限公司 File encryption method, device and file decryption method

Also Published As

Publication number Publication date
CN116522352A (en) 2023-08-01
CN117668878A (en) 2024-03-08

Similar Documents

Publication Publication Date Title
EP2780892B1 (en) Controlling rights to a drawing in a three-dimensional modeling environment
CN111767563A (en) Method, device, terminal and storage medium for setting authority of online document
CN109767375A (en) The method and system of image watermark insertion and retrospect
TW201525776A (en) Invocation control over keyboard user interface
EP1965327A1 (en) A document data security management method and system
JP2008294596A (en) Authenticity assurance system for spreadsheet data
CN1979511B (en) File data safety management system and method
CN106471495A (en) Content on protection mobile device is not excavated
TW201807559A (en) Information input method and device
WO2019144547A1 (en) Data entry method and apparatus, computer device and storage medium
CN114818618B (en) Document editing method and system based on signature encryption and medium
CN107408242A (en) Interactive preview to the content in communication is provided
CN110377202A (en) Image processing method, device, electronic equipment and storage medium
CN105898054A (en) Verification-based message display method and communication terminal
WO2021088571A1 (en) Data encryption method and apparatus, and device and readable storage medium
CN113177190A (en) Document content sharing method and electronic equipment
CN110162283A (en) Method, the method for shared information and the user equipment of shared external connection display equipment
CN113656815A (en) Document processing method and device, electronic equipment and storage medium
CN116522352B (en) Local encryption method, system and computer program product for CAD file
CN111831979B (en) Method and device for analyzing data privacy protection protocol
JP5157505B2 (en) Information processing apparatus, file editing method, file editing program, and recording medium
WO2024078023A1 (en) Local encryption method and system for cad file, and computer program product
US20090319468A1 (en) Information processing apparatus and information processing method
Tang et al. Design and implementation of information hiding system based on RGB
JP4081033B2 (en) Watermark information embedding method, watermark information embedding device and medium, and three-dimensional shape model display method, three-dimensional shape model display device and medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant