Technical background
Along with the continuous development of computer technology, constantly arise towards the software of each application or industry requirement.But which kind of outstanding software no matter, the technology of its internal core is the lifeblood of this software often, in case stolen by other people or by bootlegging, the economic loss that is subjected to thus is inestimable.
The copyright protection product of software plays an important role in the software copyright protection field as a kind of information software protective device, and it protects software developer's interests, additional income, and the interests of protection validated user can also the Control Software distribution.
The major technique of software protection has hardware encryption, soft encryption and authentication permission.
The hardware encryption technology is meant that the conversion process of protected sensitive information is to finish in hardware-software protective device inside fully, can not be exposed to the software encryption technique of PC end.
The hardware encryption technology is a kind of technology of safety in theory.But also there are some problems in hardware-based cryptographic; the various safeguard ways of for example hardware encryption technology all are to make between hardware-software protective device and the protected software to carry out data interaction; in other words allow hardware become a part in the software running process; but the arithmetic speed of software protecting equipment itself itself has limitation; various algorithms also need the time to operation of data; the speed that is stored in the key code execution of the software in the hardware-software protective device will be far below the speed of software itself; therefore; by contrast, the smooth software speed of script operation that makes of the intervention of hardware and software protective device has been subjected to bigger influence.In addition, the storage space of hardware-software protective device is limited after all, and also just meaning to have very a spot of key message to preserve by the hardware-software protective device.
The utility model content
The utility model has overcome above-mentioned shortcoming, provide a kind of simple in structure, control rationally, use the load balance system in the software protection process flexibly.
The technical scheme in the invention for solving the technical problem is: comprise the computing machine and at least two software protecting equipments that link to each other with described computing machine that are used to move protected software.
Described software protecting equipment can comprise main control chip and the storer and the interface chip that link to each other with described main control chip respectively, and described interface chip links to each other with described computing machine by device interface, and described device interface comprises parallel interface, serial line interface or USB interface.
Described interface chip is or/and storer can be integrated in the described main control chip or with main control chip is discrete is connected.
Described main control chip can be microprocessor or the intelligent card chip that comprises CPU, MCU, single-chip microcomputer.
Compared with prior art the beneficial effects of the utility model are: the bigger code that needs protection can be contained in respectively in the different software protecting equipments; this result can be suitable the storage space of expansion application need; a plurality of software protecting equipments are walked abreast finish the work that a software protecting equipment needs serial to finish; accelerated the speed of software cryptography and processing; thereby make and find a best equilibrium point between the security of the travelling speed of key message that software need be preserved and software and software, satisfy the requirement of people software protecting equipment speed and capacity.
Embodiment
Below by specific embodiment the utility model content is done specific descriptions.
Load balance system in the described software protection process in the utility model comprises main frame and two software protecting equipments that include key message that are used to move protected software, device A and device B.The key message that comprises in the described software protecting equipment comprises the multinomial content that can move respectively or store, specifically as the required data of different segments, the visit of software, the sensitive information that needs protection etc.
Described software protecting equipment can comprise following three kinds of embodiments:
Embodiment 1 as shown in fig. 1; described software protecting equipment 102 comprises a main control chip 103; the CPU of described main control chip 103 storer that has been integrated and interface module; and link to each other the row data communication of going forward side by side with the computing machine of the protected software of operation by the USB interface that links to each other with described software protecting equipment or serial line interface or parallel interface 101.
Embodiment 2 as shown in Figure 2; comprise a main control chip CPU 203 and an external memory storage 204 that links to each other with described CPU who is integrated with interface module in the described software protecting equipment 202; and link to each other with the computing machine of the protected software of operation by the USB interface that links to each other with described software protecting equipment or serial line interface or parallel interface 101, carry out data communication.
Embodiment 3 as shown in Figure 3; 302 kinds of CPU 304 that comprise as main control chip of described software protecting equipment; communication module 303 that links to each other with described main control chip and outside extended memory 305 respectively; described communication module 303 is the USB interface chip; and by USB interface 301 with the operation protected software computing machine link to each other, carry out data communication.
The utility model adopts the high-performance cpu chip; the hardware supported engagement arithmetic; burned crucial function when software protecting equipment is produced; and download algorithm; provide being used for operation and storing ram space of suitable size by CPU; software calls corresponding software protecting equipment when moving to key point, carry out aforesaid operations again.Also can be according to the different content of each software protecting equipment needs storage and operation, the software protecting equipment of flexible Application different structure form.
As shown in Figure 4, the concrete course of work of the utility model is as follows:
At first; move in the process 415 of protected software in the described main frame; detection is connected to all software protecting equipments 416 of main frame; comprise device A and device B; and open the handle of software protecting equipment; communicate by letter 417,401,408 with mutually setting up between the main frame, ready for visiting each software protecting equipment, therefore in the visit of back, just cut device because and software protecting equipment connect need time.
Protected software is to the visit of each target software protective device and to call be the software protecting equipment that has specific identity respectively that just provides at the beginning of software publishing, and finishes the concrete specific function in a certain key point.Set up access list by protected software; distribution software protective device A finishes the part in the cryptographic tasks many times; B finishes remainder by software protecting equipment; simultaneously; in software protecting equipment A, download the part in the bigger key message that software need preserve, preserved another part among the software protecting equipment B.
In the implementation of protected software in the main frame; when carrying out key point A; access means A; be that main frame sends data 418 to device A; described device A receives after the described data 402; call function 403 among the corresponding actuating unit A; reading of data or file 404; write operations such as data or file 405; data of after being finished needs being returned or result send it back main frame 406; protected software receives the described data of returning 419 backs and continues normal operation 420; when carrying out key point B; access means B; be that main frame sends data 421 to device B; described device B receives after the described data 409; and the call function 410 among the corresponding actuating unit B; reading of data or file 411; write operations such as data or file 412, data of after being finished needs being returned or result send it back main frame 413, and protected software receives after the data of returning 422; software cryptography is finished and is continued normal operation 423, described device A; B waits for the order next time 407 of main frame separately; 414.
When carrying out some relatively independent two unconnected access tasks; the protected software of may command is carrying out to the visit of device A with to the visit of device B simultaneously side by side; be protected software in the process of carrying out simultaneously or successively visit or call each device; operate accordingly separately respectively by two software protecting equipments; in the assigned address that separately data returned or result is turned back to described protected software; each result that described protected software will be received is integrated into the complete file that needs and uses; the further foundation of operation of described software is provided; two software protecting equipments are parallel finishes the work that a software protecting equipment needs serial to finish thereby can make, and has accelerated the speed of software cryptography.
Wherein, write operation comprises the code snippet of writing access customer, the data that need when perhaps this segment is moved; Read operation can be to read the data file in code snippet when operation but be not this code snippet itself; Operation refers to the code snippet that writes by the function call user, allows these code snippets move in device and guarantees all data of its operation and memory information is retained in device with interior and return results only.
At every turn behind the software protecting equipment return results; protected software can also carry out necessary judgement; if software protecting equipment returns mistake; then software is thought does not have correct hardware and software protective device to exist; then finish the operation of software; otherwise software continues operation, and software protecting equipment A and B still wait for follow-up other the appearance of key point.
In the utility model protected software product is needed the data volume of computing or the size of the information that needs are preserved to be considered as load; the work that a software protecting equipment need be finished reasonably is assigned in a plurality of software protecting equipments to be finished, and makes amount that each software protecting equipment is undertaken and it time that needs of finishing the work reach the purpose that best balance has just reached load balance.But the utility model has strengthened the storage space of secret code, can improve the speed of data processing, has solved the load balance during software protecting equipment calculates, for the balance of speed, capacity, performance has been created new space.The appeal method provides a kind of possibility that realizes; but the operation that each software need carry out is different; the content of preserving is different; size of data also has very big difference; in conjunction with different protected software and claimed particular content; needs according to running software reasonably distribute, thereby reach best equilibrium point.
More than the load balance system in the software protection process provided by the utility model is described in detail, used specific case herein principle of the present utility model and embodiment are set forth, the explanation of above embodiment just is used for helping to understand method of the present utility model and core concept thereof; Simultaneously, for one of ordinary skill in the art, according to thought of the present utility model, the part that all can change in specific embodiments and applications, in sum, this description should not be construed as restriction of the present utility model.