WO2012145916A1 - 数据安全存储方法及装置 - Google Patents
数据安全存储方法及装置 Download PDFInfo
- Publication number
- WO2012145916A1 WO2012145916A1 PCT/CN2011/073493 CN2011073493W WO2012145916A1 WO 2012145916 A1 WO2012145916 A1 WO 2012145916A1 CN 2011073493 W CN2011073493 W CN 2011073493W WO 2012145916 A1 WO2012145916 A1 WO 2012145916A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- instruction
- address
- storage device
- hardware
- data
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 132
- 238000013500 data storage Methods 0.000 title abstract 3
- 238000013507 mapping Methods 0.000 claims description 95
- 230000004048 modification Effects 0.000 claims description 25
- 238000012986 modification Methods 0.000 claims description 25
- 238000004891 communication Methods 0.000 claims description 9
- 230000001360 synchronised effect Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 2
- 230000002688 persistence Effects 0.000 abstract 1
- 239000012634 fragment Substances 0.000 description 63
- 230000008521 reorganization Effects 0.000 description 54
- 230000008569 process Effects 0.000 description 31
- 230000005540 biological transmission Effects 0.000 description 29
- 238000005516 engineering process Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 10
- 230000000903 blocking effect Effects 0.000 description 8
- 238000012546 transfer Methods 0.000 description 8
- 230000006798 recombination Effects 0.000 description 7
- 238000005215 recombination Methods 0.000 description 7
- ZXQYGBMAQZUVMI-GCMPRSNUSA-N gamma-cyhalothrin Chemical compound CC1(C)[C@@H](\C=C(/Cl)C(F)(F)F)[C@H]1C(=O)O[C@H](C#N)C1=CC=CC(OC=2C=CC=CC=2)=C1 ZXQYGBMAQZUVMI-GCMPRSNUSA-N 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000000149 penetrating effect Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
Definitions
- the present invention relates to the field of data security, and in particular, to a data security storage method and apparatus.
- the existing electronic information security areas include three sub-areas of system security, data security and device security.
- Data content security technologies including data encryption and decryption technology and end-to-end data encryption technology, to ensure that data is not illegally read during storage and transmission.
- Data security transfer technology including preventing illegal copying, printing or other output, ensuring the security of data during use and transfer;
- Network blocking technology including network physical blocking and setting network barrier technologies .
- any computing device such as a computer
- the total effective detection capability of all hazards for computers is currently around 50%. Due to the lack of hazard detection capability, in fact, malicious code may exist on any computer. Once the malicious code enters the terminal system, the above encryption technology, copy prevention technology and network blocking technology will be ineffective in this case.
- Hacking techniques make it easy to exploit system vulnerabilities, system backdoors to penetrate the aforementioned security technologies, embed malicious code, and exploit malicious code to obtain user data.
- the above technology is even more incapable of preventing active or passive disclosure of confidential personnel. For example, internal personnel can carry storage devices, download required data from internal networks or terminals, and take away storage devices, resulting in internal leakage.
- FIG. 1 is a schematic diagram of a computer terminal system in the prior art, including: a user interface layer 101, an application layer 102, an operating system kernel layer 103, a hardware mapping layer 104, and a hardware layer 105.
- the terminal gets graphical or non-graphical feedback. Take the save data operation as an example:
- the application layer 102 calls the corresponding code, and converts the save instruction into one or more interface functions provided by the operating system, that is, the save operation becomes a call to an interface function provided by a series of operating systems;
- the operating system kernel layer 103 receives the interface function call of the above operating system, and converts each operating system interface function into an interface function provided by one or more hardware mapping layers 104; that is, the save operation becomes a series of hardware mappings.
- the hardware at the hardware layer 105 such as a CPU, receives the above hardware instruction call and executes the hardware instruction.
- the behavior pattern of malicious code is: (1) Storage behavior: Save the target data content to a storage location; (2) Transmission behavior: The stolen data is directly transmitted to the specified destination address through the network.
- the behavior patterns of internal leakage using the above-mentioned computing device or information device include: (1) Active disclosure: The confidential person directly obtains the confidential data through active copying, through the malicious tool to penetrate the security system, and placing the Trojan. And leaking secrets; (2) leaking confidential information caused by direct access to the Internet.
- the application of the above data security method in the computer terminal system still cannot be solved: 1.
- the anti-copy technology based on device filtering cannot ensure that the confidential information is not illegally stored in the terminal; 2.
- the network filtering cannot ensure that the confidential information is not out of control; 3.
- the secret person may be leaked through malicious code or malicious tools; 4.
- the secret person is leaked due to loss of control of the confidential device or storage medium.
- the prior art still lacks a method for ensuring data security even after the terminal system is invaded by malicious code.
- the problem solved by the present invention is to provide a method for ensuring data security after the terminal system is invaded by malicious code, thereby improving data security.
- an embodiment of the present invention provides a data security storage method, including: receiving a hardware instruction; analyzing the hardware instruction; modifying the target address in the storage instruction if the hardware instruction is a storage instruction The corresponding storage address on the secure storage device; the modified storage instruction is sent to the hardware layer.
- the method further includes: updating a bit corresponding to the target address in the mapping bitmap; the mapping bitmap is used to represent Whether the data of the local storage address is dumped to the secure storage device.
- the method further includes: synchronizing the updated mapping bitmap to the secure storage device, and saving the second mapping bitmap.
- the method before receiving the hardware instruction, further includes: establishing communication between the computing terminal system and the secure storage device; synchronizing the second mapping bitmap on the secure storage device to the computing terminal system, and saving the mapping bit Figure.
- mapping the local storage space in the computing terminal system to the secure storage device if the synchronizing the second mapping bitmap on the secure storage device to the computing terminal system fails, mapping the local storage space in the computing terminal system to the secure storage device, and establishing a mapping Bitmap and second map bitmap.
- the hardware instruction is a hardware port I/O instruction.
- the secure storage device is a remote storage device, and the remote storage device is shared by multiple computing terminal systems.
- the hardware instruction is from a hardware mapping layer.
- an embodiment of the present invention provides a data security storage device, including: a receiving unit, configured to receive a hardware instruction; an instruction analyzing unit, configured to analyze the hardware instruction and determine whether the hardware instruction is a storage instruction
- the instruction modification unit is adapted to modify the target address in the storage instruction to be a corresponding storage address on the secure storage device; and the sending unit is adapted to send the modified storage instruction to the hardware layer.
- the method further includes: an update unit, coupled to the instruction modification unit, configured to: after the instruction modification unit modifies the storage instruction, update a bit corresponding to the target address in the mapping bitmap; the mapping bitmap is used to Indicates whether data representing the local storage address is dumped to the secure storage device.
- an update unit coupled to the instruction modification unit, configured to: after the instruction modification unit modifies the storage instruction, update a bit corresponding to the target address in the mapping bitmap; the mapping bitmap is used to Indicates whether data representing the local storage address is dumped to the secure storage device.
- a synchronization unit is further coupled to the update unit, and is adapted to establish communication between the computing terminal system and the secure storage device, and map the bitmap to the computing terminal system and the secure storage device. Synchronize between.
- the hardware instruction is from a hardware mapping layer.
- the secure storage device is a remote storage device, and the remote storage device is shared by multiple computing terminal systems.
- a computer program product including a computer readable medium, where the computer readable program code is stored in the readable medium, and the program code is used in the data security storage method. step.
- the present invention has the following advantages:
- the data security storage method implements instruction-level data dumping, that is, full data dumping, based on this, A data security storage method for calculating the full operation cycle of the terminal system is realized.
- the Trojan or the malicious tool cannot save the obtained information even if the confidential information is obtained, so that the data always exists within the controllable security range;
- local data is no longer stored locally, thus preventing the active disclosure and passive disclosure of secret persons;
- FIG. 1 is a hierarchical diagram of a computer terminal system including software and hardware in the prior art
- FIG. 2 is a flowchart of a method for reorganizing a runtime command provided in the first embodiment of the present invention
- FIG. 3 is a first embodiment of the present invention
- FIG. 4 is a flowchart of a method for reorganizing a runtime instruction provided in a second embodiment of the present invention
- FIG. 5 is a flowchart of a third embodiment of the present invention.
- Figure 6 is a block diagram of a runtime instruction recombining apparatus provided in a seventh embodiment of the present invention
- Figure 7 is a runtime instruction recombining apparatus provided in an eighth embodiment of the present invention
- Figure 8 is a block diagram of an instruction reassembly unit of a runtime instruction recombining apparatus provided in a ninth embodiment of the present invention
- FIG. 9 is a hierarchical structural block diagram of a computer terminal system provided in a tenth embodiment of the present invention.
- FIG. 10 is an overall flowchart of a data dumping process provided in a tenth embodiment of the present invention;
- Figure 12 is a schematic diagram of a Bitmap provided in a tenth embodiment of the present invention.
- FIG. 13 is a flowchart of a data security storage method provided in a tenth embodiment of the present invention
- Figure 14 is a flowchart of a data security reading method provided in a tenth embodiment of the present invention
- FIG. 16 is a schematic diagram of a network structure provided in an eleventh embodiment of the present invention
- Figure 17 is a block diagram showing the structure of a data security storage device provided in a twelfth embodiment of the present invention.
- Figure 18 is a block diagram showing the structure of a data security reading device according to a thirteenth embodiment of the present invention. detailed description
- the CPU address register stores the address of the next machine instruction to be run; in order to implement runtime machine instruction monitoring, in some embodiments of the present invention, the data in the register is obtained and read according to the address pointed to by the data. Removing one or more machine instructions to be executed; and modifying the instruction segments to be scheduled by the one or more machine instructions, thereby obtaining control before each machine instruction runs, and continuously performing subsequent instructions analysis. Further, in some embodiments of the present invention, after acquiring the machine instruction segment to be scheduled, the step of processing the target instruction therein is further included, so that not only the runtime instruction is reorganized to monitor the runtime instruction, but also The modification and update of the target instruction is completed.
- a first embodiment of the present invention provides a runtime instruction recombination method. As shown in Figure 2, the method includes:
- S102 Obtain a machine instruction segment to be scheduled. Before the last instruction of the acquired machine instruction segment, insert a second jump instruction, where the second jump instruction points to an entry address of the instruction reorganization platform, and generates an address A. Reorganizing the instruction fragment; modifying the value A of the address register in the cached instruction execution environment to address A";
- the method acquires a CPU execution right or a control right.
- the CPU executes the steps of the method, it first caches the instruction execution environment (ie, step S101), that is, caches the result of the newly executed monitored instruction.
- the CPU is an X86 architecture central processor in this embodiment; in other embodiments of the present invention, it may also be a MIPS processor or an ARM architecture based processor, and those skilled in the art may understand that the CPU It can also be an instruction processing unit in any other type of computing device.
- the cache instruction execution environment includes: pushing the register data related to the instruction operation into the cache stack.
- the cache or save instruction runtime environment may also be performed in a specified, default other cache data structure, address.
- step S102 acquiring a machine instruction segment to be scheduled includes:
- S1022 Searching for a machine instruction corresponding to the machine instruction address by using a jump instruction as a retrieval target until a first jump instruction is found; the jump instruction includes a Jump instruction and a Call instruction; S1023, using the first jump instruction and all previous machine instructions as a segment of the machine instruction to be scheduled; saving the machine instruction fragment in the instruction reorganization platform, or another storage location that the instruction reorganization platform can read .
- the machine instruction segment to be scheduled may also be a non-jump instruction, such as a write instruction, a read instruction, etc., for the retrieval target, and the machine instruction segment is segmented;
- the instruction reorganization platform can still acquire the CPU control right, so the jump instruction needs to be a supplementary retrieval target or a second retrieval target, that is, a machine instruction fragment with a smaller granularity is obtained.
- the method provided in this embodiment may further include:
- the instruction set includes an X86, MIPS, and ARM instruction set;
- the steps S1025 to S1026 are not performed in the embodiment, and the steps are directly performed: before the last instruction of the machine instruction segment (ie, the jump instruction JP1), Inserting a second jump instruction JP2, the JP2 pointing to the entry address of the instruction reorganization platform, generating a reassembly instruction fragment having the address A"; modifying the value A of the address register in the cached instruction execution environment to the address A".
- the instruction reorganization platform is the execution platform of the instruction reorganization method provided in this embodiment.
- Inserting JP2 is to restart the operation of the instruction reorganization platform before the operation of JP1 when the CPU runs the segment of the machine instruction to be scheduled, and the instruction reorganization platform will continue to analyze the next segment of the machine instruction to be scheduled, and repeat the method. The steps in turn complete the reorganization of all run instructions. For a more specific description, see the analysis of step S103 below.
- restoring the instruction execution environment includes: popping an instruction from the cache stack to run related register data; wherein the destination address of the jump instruction saved by the address register has been modified to a new machine instruction with an A" as an entry address
- the instruction reorganization platform completes the operation, and the CPU continues to execute the last instruction of the previous machine instruction segment, that is, the jump instruction, whose target address becomes A" as described above, and the CPU will execute A" as the entry.
- a new machine instruction fragment of the address is: popping an instruction from the cache stack to run related register data; wherein the destination address of the jump instruction saved by the address register has been modified to a new machine instruction with an A" as an entry address
- the instruction fragment with A" as the entry address is executed to the penultimate jump instruction (ie, the second jump instruction JP2) Then, the instruction reorganization platform regains control of the CPU; and the instruction reorganization platform restarts to perform steps S101 to S103.
- the penultimate jump instruction ie, the second jump instruction JP2
- FIG. 3 includes: a machine instruction set 401 to be scheduled, wherein the first jump instruction is 4012, also referred to as a first jump instruction 4012; Assuming that the first jump instruction 4012 points to the machine instruction 4013, if the target address of the instruction 4012 is a variable before the end of the instruction before the instruction 4012, the pointing address is agnostic, so it is assumed here that the first jump instruction 4012 points.
- Machine instruction 4013; machine instruction segment 4011 is formed from all machine instructions including first jump instruction 4012 prior to first jump instruction 4012.
- the instruction execution environment is first cached; then the machine instruction segment 4011 is obtained; the instruction reorganization platform inserts the second jump instruction 4113 before the first jump instruction 4012, and the second jump
- the instruction 4113 points to the instruction reorganization platform 411 itself, thereby generating a reassembly instruction fragment 4111, and the address of the reassembly instruction fragment is A"; the value A of the address register in the cache instruction execution environment is modified to the address A";
- the instruction execution environment is first cached; then the machine instruction segment 4011 is obtained; the instruction reorganization platform inserts the second jump instruction 4113 before the first jump instruction 4012, and the second jump
- the instruction 4113 points to the instruction reorganization platform 411 itself, thereby generating a reassembly instruction fragment 4111, and the address of the reassembly instruction fragment is A"; the value A of the address register in the cache instruction execution environment is modified to the address A";
- the instruction execution environment is first cached; then
- the instruction reorganization platform 411 After the instruction reorganization platform 411 finishes running, the CPU continues to execute the last jump instruction of the last reassembly instruction fragment, wherein the value of the address register has been changed to A". After the reassembly instruction fragment with the address of A" is run, when executed When the second jump instruction 4113, the instruction reorganization platform 411 regains control of the CPU and continues to analyze subsequent machine instructions to be scheduled, thereby completing the method of reorganizing the runtime instructions.
- a runtime instruction reorganization method includes:
- the address correspondence table is searched for by the value A of the address register in the cached instruction execution environment; the address correspondence table is used to indicate whether the machine instruction segment to be recombined corresponding to the address A has a saved reassembled instruction fragment.
- the saved reassembled instruction fragment has an address A
- step S204 further includes: the using the address A" and the address A to establish a record in the address correspondence table.
- the address A" reassembly instruction fragment is saved in the reorganization instruction platform for reuse.
- This method utilizes the address correspondence table, which greatly saves computing resources and improves the efficiency of runtime instruction reassembly.
- the machine instruction is directly operated, that is, the binary machine code.
- the machine instruction segment to be scheduled may be generated by disassembly due to further instruction processing and instruction modification operations. Assemble the code snippet for use in subsequent operations, then assemble the assembly snippet before restoring the instruction runtime environment, and then get the binary machine code.
- a third embodiment of the present invention provides a runtime instruction recombination method.
- the specific process includes:
- the method for generating the reorganization instruction includes:
- Steps S3042 and S3045 are corresponding disassembly and assembly steps. After disassembling a machine instruction fragment into an assembly instruction fragment using disassembly techniques, it is easy to do other subsequent steps of matching, analyzing, and modifying. The specific content of the remaining steps is the same as or substantially the same as that in the foregoing embodiment, and details are not described herein again.
- the above described runtime instruction reorganization method provides the basis for further application.
- the following embodiments provide various runtime instruction reassembly methods for processing different machine instructions, including store/read instructions, I/O instructions, and network transfer instructions.
- a fourth embodiment of the present invention provides a runtime instruction reassembly method.
- the specific process includes:
- the method for generating the reorganization instruction includes:
- the target instruction is a storage/read instruction
- the assembly instruction includes a store/read instruction, modifying the storage and read address therein to an address on the secure storage device;
- This embodiment performs instruction processing after the disassembly step; in other embodiments, the disassembly and corresponding assembly steps can also be omitted to directly process the machine instructions.
- step S4044 operations are performed on the storage and read instructions, the target and source addresses therein are modified to implement transfer storage, and data security is achieved by transferring the storage to the secure storage device.
- a fifth embodiment of the present invention provides a runtime instruction recombination method. Specific processes include:
- the method for generating the reorganization instruction includes:
- the target instruction is an I/O instruction
- This embodiment performs instruction processing after the disassembly step; in other embodiments, the disassembly and corresponding assembly steps can also be omitted to directly process the machine instructions.
- step S5044 an operation is performed on the I/O instruction, and all the input instructions in the I/O instruction are blocked to completely block the writing operation to the local hardware device; in combination with the storage instruction processing in the previous embodiment
- the process can also implement blocking of input instructions other than storage instructions, which can improve data security in the computing device.
- a sixth embodiment of the present invention provides a runtime instruction reassembly method.
- the specific process includes:
- the method for generating the reorganization instruction includes: 56041, obtaining a machine instruction segment to be scheduled;
- the target instruction is a network transmission instruction
- the assembly instruction includes a network transmission instruction, verifying whether the remote computing device corresponding to the target address in the network transmission instruction is a secure address; if not, blocking the network transmission instruction;
- This embodiment performs instruction processing after the disassembly step; in other embodiments, the disassembly and corresponding assembly steps can also be omitted to directly process the machine instructions.
- step S6044 the network transmission instruction is operated to check whether the remote computing device corresponding to the target address in the network transmission instruction is a secure address; if not, the network transmission instruction is blocked to implement data security transmission.
- the address correspondence table in the foregoing multiple embodiments is established and maintained by the instruction reorganization platform, and may be a fixed length array structure, a variable length linked list structure, or other suitable data for storing two bits of data. structure. Preferably, its length is adjustable and its footprint is releasable. The operation of releasing the address correspondence table may be performed randomly or periodically.
- the address correspondence table may further include a record creation time field for deleting the record according to the length of the setup time when the space is deleted.
- the address correspondence table may further include a record usage count field. In the search address correspondence table step, if found, the value of the field is changed; the record usage count field is also used to release the space. When you delete a record, the record is deleted according to the number of uses.
- the runtime instruction full monitoring is implemented in the operation phase of the computing device.
- the load instruction at the time of starting the computer is modified, and is called before the load instruction is executed.
- the instruction reorganization platform provided by the present invention executes the above-mentioned runtime instruction recombination method. Since the load instruction jump address is a known fixed address, the instruction reorganization platform can The address correspondence table and the first record are established in advance, and the first reassembly instruction fragment is established.
- the present invention further provides a computer readable medium, wherein the readable medium stores computer executable program code, and the program code is used to execute the runtime instruction recombining method provided in the foregoing embodiment. step.
- a seventh embodiment of the present invention provides a runtime instruction recombining apparatus.
- the instruction reorganization device 500 includes:
- the instruction execution environment cache/restore unit 501 is adapted to cache and restore the instruction execution environment;
- the instruction acquisition unit 502 is adapted to obtain the machine instruction segment to be scheduled after the instruction execution environment cache/release unit cache instruction execution environment;
- An instruction reassembly unit 503, configured to parse and modify the segment of the machine instruction to be scheduled to generate a reassembly instruction fragment having an address A";
- the instruction replacement unit 504 is adapted to modify the value of the address register in the cached instruction execution environment to the address of the reassembly instruction fragment.
- the instruction execution environment cache/restore unit 501 is coupled to the instruction acquisition unit 502 and the instruction replacement unit 504, respectively.
- the instruction acquisition unit 502, the instruction reassembly unit 503 and the instruction replacement unit 504 are coupled in sequence.
- the instruction execution environment cache/restore unit 501 caches the instruction execution environment, that is, pushes the instruction to run the relevant register data into the cache stack;
- the instruction acquisition unit 502 reads the machine instruction address to be scheduled from the CPU address register, and reads the machine instruction fragment from the machine instruction address, and the last instruction of the machine instruction segment is a jump instruction.
- the instruction obtaining unit 502 reads the machine instruction address to be scheduled from the CPU address register 511; retrieves the machine instruction corresponding to the machine instruction address by using the jump instruction as a retrieval target, until the first jump instruction is found;
- the jump instruction includes a Jump instruction and a Call instruction; the first jump instruction and all previous machine instructions are used as a segment of the machine instruction to be scheduled; the machine instruction fragment is saved in the instruction reorganization device 500, or a storage location that the other instruction reorganization device 500 can read;
- the instruction reorganizing unit 503 inserts a second jump instruction, which is directed to the entry address of the instruction reorganizing device, to generate a recombination instruction having the address A" before the last instruction of the acquired machine instruction segment. Fragment Then, the instruction replacement unit 504 changes the value of the address register in the cached instruction execution environment to the address ⁇ ";
- the instruction execution environment cache/restore unit 501 restores the instruction execution environment, that is, pops up the instruction from the cache stack to run the relevant register data.
- a runtime instruction recombining apparatus which fully utilizes the repeatability of the runtime instructions, improves the reorganization efficiency, and saves computing resources of the computing device.
- the instruction reorganization device 600 includes:
- the instruction execution environment cache/restore unit 601 is adapted to cache and restore the instruction execution environment;
- the instruction acquisition unit 602 is adapted to obtain the machine instruction segment to be scheduled after the instruction execution environment cache/release unit cache instruction execution environment;
- the instruction reorganization unit 603 is adapted to parse and modify the machine instruction segment to be scheduled to generate a reassembly instruction segment having an address ⁇ ";
- An instruction replacement unit 604 adapted to modify a value of an address register in the cached instruction execution environment to an address of a reassembly instruction fragment;
- the instruction retrieval unit 605 is adapted to use the value of the address register in the cached instruction execution environment to search the address correspondence table; the address correspondence table is used to indicate whether the machine instruction segment to be recombined corresponding to the address A has saved a reassembled instruction fragment, the saved reassembled instruction fragment having an address A; if the corresponding record is found, the instruction retrieval unit is adapted to invoke the instruction replacement unit to modify the value A of the address register to be in the record Value A,; If no corresponding record is found, the instruction retrieval unit is adapted to create a record in the address correspondence table with address A using address A".
- the instruction execution environment cache/restore unit 601 is coupled to the instruction retrieval unit 605 and the instruction replacement unit 604, respectively, and the instruction retrieval unit 605 is coupled to the instruction acquisition unit 602, the instruction reorganization unit 603, and the instruction replacement unit 604, respectively.
- the instruction acquisition unit 602, the instruction reassembly unit 603 and the instruction replacement unit 604 are coupled in sequence.
- the instruction execution environment cache/restore unit 601 caches the instruction execution environment, that is, pushes the instruction to run the relevant register data into the cache stack;
- the instruction retrieval unit 605 searches for the address correspondence table by using the value A of the address register in the cached instruction execution environment;
- the instruction retrieval unit 605 calls the instruction replacement unit 604, which modifies the value A of the address register to the value A in the record, the instruction replacement unit 604 Calling the instruction execution environment cache/restore unit 602 to restore the instruction execution environment, that is, popping the instruction from the cache stack to run the relevant register data, and the reorganization ends;
- the instruction acquisition unit 602 reads the machine instruction address to be scheduled from the CPU address register, and reads the machine instruction fragment from the machine instruction address, and the last instruction of the machine instruction segment is a jump instruction. Specifically, the instruction acquiring unit 602 reads the machine instruction address to be scheduled from the CPU address register 611; retrieves the machine instruction corresponding to the machine instruction address by using the jump instruction as a retrieval target, until the first jump instruction is found; The jump instruction includes a Jump instruction and a Call instruction; the first jump instruction and all previous machine instructions are used as a segment of the machine instruction to be scheduled; the machine instruction fragment is saved in the instruction reassembly device 600, or a storage location that the other instruction reorganization device 600 can read;
- the instruction recomposing unit 603 inserts a second jump instruction, which is directed to the entry address of the instruction reorganization device, to generate a reassembly instruction having the address A" before the last instruction of the acquired machine instruction segment.
- the instruction reorganizing unit 603 sends the address A" to the instruction retrieval unit 605, and the instruction retrieval unit 605 creates a record in the address correspondence table in which the address A is located with the address A; for subsequent instruction re-use;
- the instruction replacement unit 604 changes the value A of the address register in the cached instruction execution environment to the address A";
- the instruction execution environment cache/restore unit 501 restores the instruction execution environment, that is, pops up the instruction from the cache stack to run the relevant register data.
- the instruction reorganization unit 603 further includes:
- the instruction parsing unit 6031 is adapted to match the machine instruction segment with the instruction set to obtain a target machine instruction to be processed; the instruction set includes an X86, MIPS and ARM instruction set;
- the instruction modification unit 6032 is adapted to modify the target machine instruction in a predetermined manner. If the target instruction is a store/read instruction, the instruction parsing unit 6031 will be responsible for acquiring a store/read instruction in the machine instruction segment to be scheduled, and the instruction modification unit 6032 modifies the storage and read address therein as The address on the secure storage device. The functions and effects thereof are the same as those of the corresponding method embodiments described above, and are not described herein again.
- the instruction parsing unit 6031 will be responsible for acquiring an I/O instruction in a machine instruction segment to be scheduled, and the instruction modification unit 6032 will input an input instruction in the I/O instruction. Block all. The functions and effects thereof are the same as those of the corresponding method embodiments described above, and are not described herein again.
- the instruction parsing unit 6031 is responsible for acquiring a network transmission instruction in a machine instruction segment to be scheduled, and the instruction modification unit 6032 verifies that the target address in the network transmission instruction corresponds to a far Whether the end computing device is a secure address; if not, the instruction modifying unit is adapted to block the network from transmitting instructions. The functions and effects thereof are the same as those of the corresponding method embodiments described above, and are not described herein again.
- the instruction recombining unit 703 may further include a disassembly unit 7031 and an assembly unit 7034.
- the disassembly unit 7031, the instruction parsing unit 7032, the instruction modification unit 7033, and the assembly unit 7034 are coupled in sequence.
- Other units of the present embodiment are the same as those of the eighth embodiment described above, and are not described herein again.
- the disassembly unit 7031 is adapted to disassemble the segment of the machine instruction to be scheduled, and generate an assembly instruction segment to be scheduled before parsing and modifying the segment of the machine instruction to be scheduled; and send the instruction to the instruction parsing unit 7032.
- the assembly unit 7034 is adapted to assemble the reassembled assembly instruction fragment after parsing and modifying the machine instruction segment to be scheduled, to obtain a reassembly instruction fragment represented by the machine code, and send the instruction replacement unit.
- the instruction parsing unit 7032 and the instruction modification unit 7033 will operate the assembly instruction segments to be scheduled, the process of which is the same as the corresponding method embodiment described above.
- the behavior pattern of malicious code is: (1) Storage behavior: save the target data content to a storage location; (2) Transmission behavior: The stolen data is directly transmitted to the specified destination address through the network.
- the behavior patterns of the internal leakage using the above-mentioned computing device or information device include: (1) active disclosure: the secret person directly obtains the information through active copying, penetrating the security system through malicious tools, placing the Trojan, and the like. Confidential data, and leaks; for example, leaking secret equipment directly connected to the Internet.
- the computer terminal system 200 includes a user interface layer 201, an application layer 202, an operating system kernel layer 203, a hardware mapping layer 204, a security layer 205, and a hardware layer 206.
- the computer terminal system 200 is coupled to the storage device 100 (secure storage device).
- the hardware layer 206 includes a CPU 2061, a hard disk 2062 (i.e., a local storage device), and a network card 2063.
- the storage device 100 is a remote disk array, and the network card 2063 of the hardware layer 206 is connected to the network to exchange data with the computer terminal system 200.
- the storage device 100 may be other known or Unknown type of storage device.
- the data dump process provided by this embodiment is:
- the above data writing, reading process, and initialization process need not be performed in full, and the required processes or steps may be performed.
- the foregoing initialization process S1000 includes:
- the initialization process S1000 also includes:
- the local storage space in the computer terminal system is first mapped to the storage device 100, and the specific mapping relationship is: one-to-one mapping in units of 1 sector (or other stored basic units), and mapping bitmaps are established at the same time. ( Bitmap ).
- Bitmap Bitmaps on the local storage space to the storage device 100 may also be established using other base capacity units.
- FIG. 12 is a schematic diagram of a Bitmap in the embodiment; the figure includes a storage medium 3000 on a local storage device (ie, a hard disk 2062), and a storage medium 4000 on a storage device 100 connected to a local storage device network.
- a storage space 4010 of the same size as the storage medium 4000 is created as a mapping space.
- Bitmap 4020 is a bitmap in which 1 bit represents 1 sector, and the data (0 or 1) of each bit identifies whether the corresponding sector on the storage medium 3000 is dumped in the storage space 4010 on the storage medium 4000.
- the dumped sector is marked as 1 and the non-dumped sector is marked as 0.
- the Bitmap 4020 is established, it is synchronized to the computer terminal system 200.
- an application or operating system saves a data, such as a file
- the file system inside the operating system will open a certain amount of storage space on the storage medium 3000 of the local storage device, such as sector 3040 and sector 3050, and assign it to the file.
- the file is used, and the local file allocation table is overwritten.
- the bit data corresponding to the corresponding sector 3040 and sector 3050 recorded in Bitmap 4020 will be rewritten to 1.
- the allocation sectors 4040 and 4050 are used to hold the dump data.
- the computer terminal system 200 and the storage device 100 respectively store Bitmap data with the same content.
- the foregoing data writing process S2000 includes:
- the application layer 202 issues a write file operation request through the file system of the operating system kernel layer 203 or the operating system kernel layer 203 directly issues a write file operation request; or the application layer 202 directly issues a write data operation request to the hardware mapping layer 204; or The system kernel layer 203 issues a write data operation request directly to the hardware mapping layer 204;
- the operating system kernel layer 203 parses the write file request into a hardware port instruction (ie, a hardware instruction), and sends it to the hardware mapping layer 204, where the port instruction includes a location (ie, a sector) where the storage device needs to be written;
- the hardware mapping layer 204 issues a write data operation request, and the request is already hard.
- the security layer 205 rewrites the write location (ie, the sector) in the port instruction to the storage address on the storage device 100, updates the first mapping bitmap, and modifies the bit data corresponding to the sector to 1, indicating The sector has been dumped; the security layer 205 sends the modified port command to the hardware layer 206.
- the writing process S2000 may further include:
- S2040 Synchronize the first mapping bitmap to the storage device 100 and save the second mapping bitmap to ensure that the first mapping bitmap on the computer terminal system 200 is consistent with the second mapping bitmap on the storage device.
- the synchronization operation may also be performed at the end, i.e., prior to the local computer terminal system 200 shutting down.
- the computer terminal system 200 After the execution of the writing process is completed, the computer terminal system 200 does not store the written data, and the corresponding data has been transferred to the storage device 100.
- the above data reading process S3000 includes:
- S3010 Synchronize the second mapping bitmap on the storage device 100 to the computer terminal system 200, and save the first mapping bitmap.
- the application layer 202 issues a read file operation request through the file system of the operating system kernel layer 203, or the operating system kernel layer 203 directly issues a read file operation request; or the application layer 202 directly issues a read data operation request to the hardware mapping layer 204; or The operating system kernel layer 203 issues a read data operation request directly to the hardware mapping layer 204;
- the security layer 205 receives the data read instruction from the hardware mapping layer 204, obtains the read address (source address) therein, and if the address is not the address on the storage device 100, searches for the first mapping bitmap, if the first mapping The bit data in the bitmap indicates that the read address is a dump address, the security layer 205 modifies the read address of the port instruction to be the read address on the storage device 100; the security layer 205 sends the modified port command to the hardware layer. 206.
- step S3010 the process of synchronizing the second mapping bitmap from the storage device 100 to the local is to maintain the consistency of the local data with the data on the secure storage device after the computer terminal system 200 is restarted.
- the above reading process does not affect the user's existing mode of operation and enables reading of the data that has been dumped on the secure storage device, i.e., storage device 100.
- the data security storage method provided in this embodiment includes the following steps:
- the computer terminal system runs a Windows operating system
- the hardware abstraction layer HAL in the Windows system is a hardware mapping layer.
- the computer terminal can also run other operating systems, such as Linux, Unix or embedded operating systems, etc.
- the hardware mapping layer is a hardware mapping layer corresponding to Linux or Unix or embedded operating systems.
- the hardware instructions are hardware instructions from a hardware mapping layer. Receive hardware instructions from the hardware mapping layer to 100% screen all hardware instructions sent to the processor such as the CPU
- the hardware instructions may also come from a unit corresponding to an operating system kernel layer or other computer hierarchy.
- the process of receiving the hardware instruction may include: acquiring the hardware instruction by using a method of reorganization of the runtime instruction.
- step S4020 a plurality of instruction analysis mechanisms are built in the security layer 205, including an analysis mechanism for an instruction set such as an X86 instruction, an ARM instruction, and a MIPS instruction to process different types of CPU instructions.
- an instruction set such as an X86 instruction, an ARM instruction, and a MIPS instruction to process different types of CPU instructions.
- the method further includes: updating the first mapping bitmap, and corresponding the target address (sector) in the first mapping bitmap. "Bit" is set to 1.
- mapping bitmap that has been updated may be synchronized to the secure storage device and saved as a second mapping bitmap.
- step S4050 the security layer 205 forwards the modified or unmodified hardware instructions to the hardware layer 206.
- the dumping work of the security layer 205 is completely transparent to the upper layer application and the user, and does not affect the workflow of the existing computer operation and application system.
- the foregoing method provided in this embodiment can be used not only in a computer terminal system, but also on any computing device and an intelligent terminal including an application layer, an operating system kernel layer, and a hardware layer, and implements an instruction level before executing instructions in the hardware layer.
- Transfer storage that is, transfer storage based on hardware storage instructions).
- a data security reading method is provided in this embodiment.
- the method includes:
- S5050 If the source address is not an address on the storage device 100, look up the first mapping bitmap, and modify the read address in the read instruction according to the data of the mapping bitmap;
- the method may further include: S5000: synchronizing the second mapping bitmap on the storage device 100 to the computer terminal system 200, and saving the first mapping bitmap.
- the hardware instruction is from a hardware mapping layer.
- the process of receiving the hardware instruction may include: acquiring the hardware instruction by using a method of reorganization of the runtime instruction.
- step S5030 if the hardware instruction is not a read instruction, the security layer 205 directly sends the hardware instruction to the hardware layer for execution.
- step S5040 if the source address of the read instruction is already an address on the storage device 100, the security layer 205 does not need to look up the data in the first mapped bitmap again, and directly sends the hardware instruction to the hardware layer for execution.
- the storage device 100 can serve as a shared resource of a plurality of terminal systems.
- the eleventh embodiment of the present invention provides a data security transmission method. As shown in FIG. 15, the method includes the following steps: S7010, receiving from a hardware mapping Layer hardware instructions;
- the hardware layer sends a transmission instruction and data to the terminal system of the target address
- the terminal system of the target address receives and uses the data security storage method to save the data.
- step S7060 if it is determined that the target address is not a secure address, that is, the computing terminal of the target address The data secure storage and the data security read method provided in the present invention are not applied, and then the network transmission operation is not allowed as the target address.
- step S7050 it is determined whether the target address is a secure address.
- the security server 820 is connected to the terminal systems 800 and 810 through a network, and the terminal systems 800 and 810 automatically perform the data security transmission method provided in the above embodiment of the present invention to the security server 820.
- the security server 820 In the registration operation, the security server 820 internally maintains a secure address table that records all terminal systems that have been registered. When the security address table is changed, the security server 820 automatically sends the updated security address table to each terminal.
- the architecture of the terminal system 800 includes an application layer 801, an operating system kernel layer 802, a security layer 803, and a hardware layer 804, and a security layer. 803 is responsible for maintaining the secure address table.
- the security layer 803 determines whether the target address is a secure address based on whether the target address is in the secure address table. That is, in step S7050, if the target address is included in the secure address table, the target address is a secure address.
- the implementation of the above secure transmission method makes it impossible for a Trojan or a malicious tool to transmit the obtained information even if it obtains the confidential information.
- the computer terminal system is the main body of the method provided by the present invention in the above embodiments of the present invention
- any electronic device capable of providing file or data editing, saving or transmission such as a handheld device, an intelligent terminal, etc.
- a computing terminal system Both can be a terminal system to which the data security preservation and transmission method provided by the present invention is applied.
- the above data security storage method, reading method and transmission method may also be implemented by using software or hardware methods. If implemented by software, the corresponding steps of the above method are stored in the form of computer code. On a computer readable medium, become a software product.
- the data secure storage device 7100 includes a receiving unit 7110, an instruction analyzing unit 7120, an instruction modifying unit 7130, and a transmitting unit 7140.
- the receiving unit 7110 is coupled to the command analyzing unit 7120
- the sending unit 7140 is coupled to the command modifying unit 7130 and the hardware layer 7200, respectively.
- the receiving unit 7110 is adapted to receive a hardware instruction.
- the hardware instruction is from a hardware mapping layer;
- the instruction analyzing unit 7120 is adapted to analyze the hardware instruction and determine whether the hardware instruction is a storage instruction; if it is a storage instruction,
- the instruction modification unit 7130 modifies the target address in the storage instruction to a corresponding storage address on the secure storage device, and then sends the modified storage instruction to the sending Unit 7140; if not a store instruction, the instruction analysis unit 7120 directly transmits the hardware instruction to the transmitting unit 7140; the transmitting unit 7150 is adapted to transmit the received instruction to the hardware layer 7200.
- the data secure storage device may further include an update unit 7150 and a synchronization unit 7160.
- the update unit 7150 is coupled to the instruction modification unit 7130; the synchronization unit 7160 is coupled to the update unit 7150.
- the update unit 7150 is adapted to update the bit corresponding to the target address in the bitmap after the instruction modification unit 7130 modifies the store instruction.
- the sector included in the storage instruction target address is set to " ⁇ " in the first mapping bitmap, indicating that the sector has been dumped.
- the synchronization unit 7160 is adapted to establish communication between the computing terminal system and the secure storage device and to synchronize the mapping bitmap between the computing terminal system and the secure storage device. Specifically, when the computing terminal system is started, the synchronization unit 7160 establishes communication between the computing terminal system and the secure storage device, and synchronizes the second mapping bitmap on the secure storage device to the computing terminal system, and saves as The first mapped bitmap.
- the synchronization unit 7160 maps the local storage space in the computer terminal system. Go to the secure storage device and establish a mapping bitmap and a second mapping bitmap.
- the second mapping bitmap is first established on the secure storage device, and then synchronized to the local to become the first mapping bitmap.
- mapping bitmap When the update unit 7150 updates the bit corresponding to the target address in the first mapping bitmap (ie, mapping bitmap), the synchronization unit 7160 will send the updated first mapping bitmap to the secure storage device, and in the secure storage device. Saved as a second map bitmap.
- the secure storage device is a remote storage device, and the remote storage device is shared by multiple computing terminal systems.
- the hardware instructions are hardware port I/O instructions.
- the data security reading apparatus 8100 includes: a receiving unit 8110, an instruction analyzing unit 8120, an instruction modifying unit 8130, and a transmitting unit 8140.
- the receiving unit 8110 is coupled to the command analyzing unit 8120
- the command analyzing unit 8120 is coupled to the command modifying unit 8130 and the transmitting unit 8140, respectively.
- the command modifying unit 8130 is also coupled to the transmitting unit 8140.
- the transmitting unit 8140 is coupled to the hardware layer 8200.
- the receiving unit 8110 is adapted to receive a hardware instruction.
- the hardware instruction is from a hardware mapping layer.
- the instruction analyzing unit 8120 is adapted to analyze the hardware instruction and determine the hardware instruction Whether it is a read instruction, if the hardware instruction is a read instruction, obtain a source address of the read instruction and determine whether the source address is an address on the secure storage device. If the hardware instruction is not a read instruction, or the source address is an address on a secure storage device, the instruction analysis unit 8120 transmits the hardware instruction to the transmitting unit 8140. If the source address is not an address on the secure storage device, the instruction modification unit 8130 looks up the mapped bitmap and modifies the read address in the read instruction based on the data of the mapped bitmap.
- the mapping bitmap is used to indicate whether the data of the local storage address is dumped to the secure storage device, as in the above mapping bitmap.
- the instruction modification unit 8130 searches for a bit corresponding to the sector included in the source address in the first mapping bitmap. If the "bit" data is displayed as 1, it means that a dump has occurred, and if the "bit" data is displayed as 0, it means that no dump has occurred. If the dump has occurred, the instruction modification unit 8130 changes the source address (read address) to the corresponding dump address, and transmits the modified hardware instruction to the transmitting unit 8140.
- the data security reading device may further include a synchronization unit 8150.
- the synchronization unit 8150 is coupled to the instruction modification unit 8130.
- the synchronization unit 8150 is adapted to establish communication between the computing terminal system and the secure storage device and to synchronize the mapping bitmap between the computing terminal system and the secure storage device.
- the synchronization unit 8150 establishes communication between the computing terminal system and the secure storage device when the computing terminal system is started, and synchronizes the second mapping bitmap on the secure storage device to the computing terminal system, and saves as The first mapping bitmap is provided for use by the instruction modification unit 8130.
- the secure storage device is a remote storage device, and the remote storage device is shared by multiple computing terminal systems.
- the secure storage device may also be a local storage device.
- security layer can also be done in various layers in the operating system kernel layer to the hardware layer.
- the implementation of specific functions does not depart from the spirit and scope of the invention.
- the foregoing embodiment provides a detailed description of the secure storage method and apparatus provided by the present invention.
- the method has the following advantages: 1.
- the data security storage method implements instruction-level data dumping, that is, full data dumping. Based on the data security storage method for calculating the full operation cycle of the terminal system, on the one hand, the Trojan or malicious tool cannot save the obtained information even if it obtains the confidential information, so that the data always exists within the controllable security scope. On the other hand, the local will no longer store any data in the confidential state, thus preventing the active leakage and passive leakage of the secret person; 2.
- Receiving hardware instructions from the hardware mapping layer can 100% screen all instructions , further improve data security.
- the security reading method and device provided by the present invention are also described in detail in the above embodiments. Compared with the prior art, the following advantages are obtained: 1.
- the data security reading method and the data security storage method enable the data to always exist. Within the security scope of the control, and to ensure that the dump data can be read out after safely storing the data (dump); since the local will no longer store any data in the confidential state, the active leakage of the secret person is prevented. And passive leakage; 2.
- the secure storage device is a remote storage device, it can be shared by multiple terminals to improve the space utilization efficiency of the secure storage device.
- the implementation method of the security layer may also be completed in each layer in the uppermost layer of the operating system to the uppermost layer of the hardware layer. It will be apparent to those skilled in the art that the specific function is achieved without departing from the spirit and scope of the invention.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Debugging And Monitoring (AREA)
Description
Claims
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014506714A JP6255336B2 (ja) | 2011-04-29 | 2011-04-29 | 安全なデータ格納方法およびデバイス |
CN201180064966.6A CN103329141B (zh) | 2011-04-29 | 2011-04-29 | 数据安全存储方法及装置 |
PCT/CN2011/073493 WO2012145916A1 (zh) | 2011-04-29 | 2011-04-29 | 数据安全存储方法及装置 |
US14/113,565 US9330266B2 (en) | 2011-04-29 | 2011-04-29 | Safe data storage method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2011/073493 WO2012145916A1 (zh) | 2011-04-29 | 2011-04-29 | 数据安全存储方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2012145916A1 true WO2012145916A1 (zh) | 2012-11-01 |
Family
ID=47071568
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2011/073493 WO2012145916A1 (zh) | 2011-04-29 | 2011-04-29 | 数据安全存储方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9330266B2 (zh) |
JP (1) | JP6255336B2 (zh) |
CN (1) | CN103329141B (zh) |
WO (1) | WO2012145916A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103235917A (zh) * | 2013-03-28 | 2013-08-07 | 东莞宇龙通信科技有限公司 | 应用保护的方法及装置 |
JP2014068289A (ja) * | 2012-09-27 | 2014-04-17 | Kddi Corp | 記憶装置、アクセスパターンの秘匿方法およびプログラム |
CN103942492A (zh) * | 2014-03-04 | 2014-07-23 | 北京中天安泰信息科技有限公司 | 单机版数据黑洞处理方法及计算设备 |
CN103942499A (zh) * | 2014-03-04 | 2014-07-23 | 北京中天安泰信息科技有限公司 | 基于移动存储器的数据黑洞处理方法及移动存储器 |
JP2014171005A (ja) * | 2013-03-01 | 2014-09-18 | Kddi R & D Laboratories Inc | 記憶装置、アクセスパターンの秘匿方法およびプログラム |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103679039B (zh) * | 2012-09-06 | 2016-11-09 | 中天安泰(北京)信息技术有限公司 | 数据安全存储方法及装置 |
JP6745174B2 (ja) * | 2016-09-09 | 2020-08-26 | 株式会社日立産機システム | コントローラ及びコントロール管理システム |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101082886A (zh) * | 2006-05-30 | 2007-12-05 | 松下电器产业株式会社 | 存储器数据保护装置及ic卡用lsi |
US20080127338A1 (en) * | 2006-09-26 | 2008-05-29 | Korea Information Security Agency | System and method for preventing malicious code spread using web technology |
Family Cites Families (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU601328B2 (en) * | 1988-05-26 | 1990-09-06 | Digital Equipment Corporation | Temporary state preservation for a distributed file service |
JPH02146625A (ja) * | 1988-11-29 | 1990-06-05 | Nec Corp | レジスタ個数の拡張方式 |
JPH04168546A (ja) * | 1990-10-31 | 1992-06-16 | Hokkaido Nippon Denki Software Kk | 計算機システムにおけるメモリ制御方式 |
US6735631B1 (en) * | 1998-02-10 | 2004-05-11 | Sprint Communications Company, L.P. | Method and system for networking redirecting |
US6990481B1 (en) * | 2000-02-25 | 2006-01-24 | Coraid, Inc. | System and method for content management over network storage devices |
US6725394B1 (en) * | 2000-10-02 | 2004-04-20 | Quantum Corporation | Media library with failover capability |
JP4723077B2 (ja) * | 2000-11-13 | 2011-07-13 | 沖電気工業株式会社 | アドレス変換機能付き通信装置およびマルチメディア通信方法 |
CN1373402A (zh) | 2001-02-28 | 2002-10-09 | 廖瑞民 | 硬盘数据保全复原装置 |
US20020194378A1 (en) * | 2001-04-05 | 2002-12-19 | George Foti | System and method of hiding an internet protocol (IP) address of an IP terminal during a multimedia session |
TWI308306B (en) * | 2001-07-09 | 2009-04-01 | Matsushita Electric Ind Co Ltd | Digital work protection system, record/playback device, recording medium device, and model change device |
US20030149755A1 (en) * | 2002-02-06 | 2003-08-07 | Emek Sadot | Client-controlled load balancer |
US6842446B2 (en) * | 2002-04-19 | 2005-01-11 | Sprint Communications Company L.P. | Method and system for increasing data rate in wireless communications through aggregation of data sessions |
CN1230744C (zh) | 2002-08-16 | 2005-12-07 | 华为技术有限公司 | 一种嵌入式系统软件补丁的实现和控制方法 |
US7441046B2 (en) * | 2003-03-03 | 2008-10-21 | Siemens Medical Solutions Usa, Inc. | System enabling server progressive workload reduction to support server maintenance |
US7886287B1 (en) | 2003-08-27 | 2011-02-08 | Avaya Inc. | Method and apparatus for hot updating of running processes |
US7792300B1 (en) * | 2003-09-30 | 2010-09-07 | Oracle America, Inc. | Method and apparatus for re-encrypting data in a transaction-based secure storage system |
JP2005122474A (ja) * | 2003-10-16 | 2005-05-12 | Fujitsu Ltd | 情報漏洩防止プログラムおよびその記録媒体並びに情報漏洩防止装置 |
JP4385215B2 (ja) * | 2003-10-21 | 2009-12-16 | 日本電気株式会社 | スナップショットシミュレーション機能を有するディスクアレイ装置 |
US20050261857A1 (en) * | 2004-05-21 | 2005-11-24 | Clark Jones | System and method for linking and loading compiled pattern data |
JP2005352535A (ja) * | 2004-06-08 | 2005-12-22 | Ark Joho Systems:Kk | データを保護する方法 |
US7730482B2 (en) * | 2004-06-08 | 2010-06-01 | Covia Labs, Inc. | Method and system for customized programmatic dynamic creation of interoperability content |
EP1684151A1 (en) * | 2005-01-20 | 2006-07-26 | Grant Rothwell William | Computer protection against malware affection |
WO2006123416A1 (ja) * | 2005-05-19 | 2006-11-23 | Fujitsu Limited | ディスク故障復旧方法及びディスクアレイ装置 |
US20070016637A1 (en) * | 2005-07-18 | 2007-01-18 | Brawn John M | Bitmap network masks |
JP2007104137A (ja) * | 2005-09-30 | 2007-04-19 | Matsushita Electric Ind Co Ltd | データ通信装置 |
CN100507864C (zh) | 2006-01-19 | 2009-07-01 | 刘文斌 | 基于立即还原型硬盘保护卡的数据保护及还原方法 |
US7941129B2 (en) * | 2007-01-11 | 2011-05-10 | At&T Mobility Ii Llc | Multi-way messaging with forwarding |
US20080222659A1 (en) | 2007-03-09 | 2008-09-11 | Microsoft Corporation | Abstracting operating environment from operating system |
JP2008243138A (ja) * | 2007-03-29 | 2008-10-09 | Hitachi Ltd | ストレージシステム及びデータ復元方法 |
JP2009199266A (ja) * | 2008-02-20 | 2009-09-03 | Hitachi Ltd | データ転送制御装置、データ整合性判定方法及び記憶制御装置 |
GB2460393B (en) * | 2008-02-29 | 2012-03-28 | Advanced Risc Mach Ltd | A data processing apparatus and method for controlling access to secure memory by virtual machines executing on processing circuitry |
JP5156518B2 (ja) * | 2008-07-23 | 2013-03-06 | 株式会社日立製作所 | 記憶制御装置及び方法 |
CN101477444B (zh) * | 2008-12-29 | 2011-04-20 | 成都市华为赛门铁克科技有限公司 | 一种虚拟存储方法和设备 |
US8037113B2 (en) * | 2009-01-20 | 2011-10-11 | Novell, Inc. | Techniques for file system searching |
JP4707748B2 (ja) * | 2009-03-31 | 2011-06-22 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 外部記憶デバイス、外部記憶デバイスに記憶されたデータを処理するための方法、プログラムおよび情報処理装置 |
CN101872400B (zh) | 2009-04-24 | 2012-10-17 | 北京中天安泰信息科技有限公司 | 建立根据计算系统操作请求关联关系判断计算机操作请求安全性的计算机信息安全防护方法 |
US8140821B1 (en) * | 2009-12-18 | 2012-03-20 | Emc Corporation | Efficient read/write algorithms and associated mapping for block-level data reduction processes |
US8156306B1 (en) * | 2009-12-18 | 2012-04-10 | Emc Corporation | Systems and methods for using thin provisioning to reclaim space identified by data reduction processes |
NO332162B1 (no) * | 2009-12-21 | 2012-07-09 | Cisco Systems Int Sarl | Anordning og fremgangsmate for a filtrere mediapakker |
US8627000B2 (en) * | 2010-02-08 | 2014-01-07 | Microsoft Corporation | Virtual disk manipulation operations |
US9519569B2 (en) * | 2010-09-26 | 2016-12-13 | Antaios (Beijing) Information Technology Co., Ltd. | Method for constructing data structures and method for describing running states of computer and state transitions thereof |
WO2012145915A1 (zh) * | 2011-04-29 | 2012-11-01 | 北京中天安泰信息科技有限公司 | 数据安全读取方法及装置 |
KR101659922B1 (ko) * | 2012-07-30 | 2016-09-26 | 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 | 솔리드 스테이트 저장 장치를 위한 배드 블록 보상 |
-
2011
- 2011-04-29 WO PCT/CN2011/073493 patent/WO2012145916A1/zh active Application Filing
- 2011-04-29 JP JP2014506714A patent/JP6255336B2/ja not_active Expired - Fee Related
- 2011-04-29 CN CN201180064966.6A patent/CN103329141B/zh not_active Expired - Fee Related
- 2011-04-29 US US14/113,565 patent/US9330266B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101082886A (zh) * | 2006-05-30 | 2007-12-05 | 松下电器产业株式会社 | 存储器数据保护装置及ic卡用lsi |
US20080127338A1 (en) * | 2006-09-26 | 2008-05-29 | Korea Information Security Agency | System and method for preventing malicious code spread using web technology |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014068289A (ja) * | 2012-09-27 | 2014-04-17 | Kddi Corp | 記憶装置、アクセスパターンの秘匿方法およびプログラム |
JP2014171005A (ja) * | 2013-03-01 | 2014-09-18 | Kddi R & D Laboratories Inc | 記憶装置、アクセスパターンの秘匿方法およびプログラム |
CN103235917A (zh) * | 2013-03-28 | 2013-08-07 | 东莞宇龙通信科技有限公司 | 应用保护的方法及装置 |
CN103942492A (zh) * | 2014-03-04 | 2014-07-23 | 北京中天安泰信息科技有限公司 | 单机版数据黑洞处理方法及计算设备 |
CN103942499A (zh) * | 2014-03-04 | 2014-07-23 | 北京中天安泰信息科技有限公司 | 基于移动存储器的数据黑洞处理方法及移动存储器 |
WO2015131800A1 (zh) * | 2014-03-04 | 2015-09-11 | 北京中天安泰信息技术有限公司 | 基于移动存储器的数据黑洞处理方法及移动存储器 |
CN103942492B (zh) * | 2014-03-04 | 2016-09-21 | 中天安泰(北京)信息技术有限公司 | 单机版数据黑洞处理方法及计算设备 |
Also Published As
Publication number | Publication date |
---|---|
JP6255336B2 (ja) | 2017-12-27 |
CN103329141A (zh) | 2013-09-25 |
US20140053276A1 (en) | 2014-02-20 |
JP2014517376A (ja) | 2014-07-17 |
CN103329141B (zh) | 2017-05-03 |
US9330266B2 (en) | 2016-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2012145915A1 (zh) | 数据安全读取方法及装置 | |
WO2012145917A1 (zh) | 运行时指令重组方法及装置 | |
KR102419574B1 (ko) | 컴퓨터 애플리케이션에서 메모리 손상을 교정하기 위한 시스템 및 방법 | |
WO2015131800A1 (zh) | 基于移动存储器的数据黑洞处理方法及移动存储器 | |
WO2012145916A1 (zh) | 数据安全存储方法及装置 | |
CN107977573B (zh) | 用于安全的盘访问控制的方法和系统 | |
US8612398B2 (en) | Clean store for operating system and software recovery | |
US9230100B2 (en) | Securing anti-virus software with virtualization | |
US10402378B2 (en) | Method and system for executing an executable file | |
US8630418B2 (en) | Secure management of keys in a key repository | |
US20190238560A1 (en) | Systems and methods to provide secure storage | |
JP6965184B2 (ja) | データを暗号化するための分散データ方法 | |
BR112014031586B1 (pt) | Sistema para emular um ambiente de execução confiável e midia de armazenamento de computador | |
WO2015131801A1 (zh) | 数据黑洞处理方法 | |
WO2015131799A1 (zh) | 单机版数据黑洞处理方法及计算设备 | |
CN114969772B (zh) | 加密文件的恢复方法、装置、电子设备和存储介质 | |
Mellberg | Secure Updating of Configurations in a System of Devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 11864152 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 14113565 Country of ref document: US |
|
ENP | Entry into the national phase |
Ref document number: 2014506714 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 07/02/14) |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 11864152 Country of ref document: EP Kind code of ref document: A1 |