CN105787128B - A method of restoring Java and serializes file data - Google Patents

A method of restoring Java and serializes file data Download PDF

Info

Publication number
CN105787128B
CN105787128B CN201610188809.0A CN201610188809A CN105787128B CN 105787128 B CN105787128 B CN 105787128B CN 201610188809 A CN201610188809 A CN 201610188809A CN 105787128 B CN105787128 B CN 105787128B
Authority
CN
China
Prior art keywords
data
class
java
file
identifying
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
CN201610188809.0A
Other languages
Chinese (zh)
Other versions
CN105787128A (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.)
XLY SALVATIONDATA TECHNOLOGY Inc.
Original Assignee
SICHUAN MWH INFORMATION SAFETY TECHNOLOGY 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 SICHUAN MWH INFORMATION SAFETY TECHNOLOGY Co Ltd filed Critical SICHUAN MWH INFORMATION SAFETY TECHNOLOGY Co Ltd
Priority to CN201610188809.0A priority Critical patent/CN105787128B/en
Publication of CN105787128A publication Critical patent/CN105787128A/en
Application granted granted Critical
Publication of CN105787128B publication Critical patent/CN105787128B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention discloses a kind of methods of recovery Java serializing file data, comprising the following steps: S1: analyzing and records the identifier of data type and structure;S2: definition intermediate structure is used to store the data type name of each node, domain name claims and is worth;S3: obtaining the intermediate result of top layer, safeguards that a class defines ID list;S4: expansion intermediate result is changed to json character string;S5: extracting the structure of class and generates class template restores for internal storage data;S6: restore complete serialized data into memory.Beneficial effects of the present invention are as follows: standard Java serializing document analysis can be become to the general data of JSON or XML format in the case where that can not know former data structure;On the basis of document analysis will be serialized into JSON or XML, original entity class is generated for target platform, and the data of parsing are called in the form of object for target platform;The entity class of recovery can use in the subsequent processing to data with on-the-flier compiler for .class file for target platform.

Description

A method of restoring Java and serializes file data
Technical field
The present invention relates to field of information security technology, in particular to a kind of method for restoring Java serializing file data.
Background technique
The parsing of serializing file is frequently encountered in data parsing recovery field.Java serializing is that Java itself is mentioned Supply a kind of Data Serialization mode, it allow developer by the data of the one or a series of structuring based on class with The form storage of stream is in the storage device.This mechanism greatly facilitates developer and needs to the stream transmission of complex data structures It asks.
Original Java serializing restoration methods have following obvious shortcoming and inconvenience:
It 1, can not be by the original unserializing mechanism of Java by sequence in the case that serialized data original data structure is lost The data of columnization are restored to original structure.
2, usually can be by manually being parsed in the case where that can not know former data structure, but work as data When more complex, artificial parsing is just more difficult and time consuming.
3, the identical data of structure can be parsed by writing the script to specified structure, but this method not can guarantee Parse the versatility of script.The serialized data of numerous unknown structures can not be coped with.
4, manually the data in arbitrary sequence file can not be restored to the memory of structuring by parsing and script parsing Object is called directly for system.
Summary of the invention
The present invention in view of the drawbacks of the prior art, provides a kind of method of recovery Java serializing file data, can have Solution the above-mentioned problems of the prior art of effect.
A method of restoring Java and serialize file data, comprising the following steps:
S1: analyzing and records the identifier in Java serializing file data about data type and structure;
S2: define intermediate structure for store the data type name of each node generated in resolving, domain name claims and Value;
S3: the node in parsing serializing file is traversed according to rule, the intermediate result of a top layer is obtained, parses Safeguard that a class defines ID list in the process;
S4: intermediate result is converted to json character string using the json tool that android is carried by expansion intermediate result.
S5: extracting the structure of class and generates class template restores for internal storage data;
S6: restore complete serialized data into memory.
Preferably, data type identifier shares ten, divides for identifying its data type modified in the S1 8 basic data types, java class and the array in java are not corresponded to;
Concrete meaning are as follows: 0x42 indicates byte;0x43 indicates char;0x44 indicates double;0x46 indicates float; 0x49 indicates int;0x50 indicates long;Ox4c indicates object;0x53 indicates short;0x5a indicates boolean;0x5b is indicated Array.
Preferably, in the S1 structure control mark mainly include the following types:
0x71 has been described for identifying class, with reference to the record of description list;
0x72, for identifying the beginning of generic attribute description;
0x73, for identifying the beginning of object factory;
0x74 is String for identifying the structure;
0x75, for identifying the beginning of array description;
0x77 is block number evidence for identifying next data;
0x78, for identifying the end of class formation description;
0x70, for identifying class, whether there is or not superclass.
Preferably, the detailed step of the S2 is as follows:
S201: analysis data location mode obtains data structure, for designing analytical algorithm;
Analyze class formation storage mode: the description of class formation by data type identifier in S1, structure control identifier, Data length and four part of data are completed, which is a string of byte streams, structure are as follows: 0x72, class name length, class name refer to Line and identifier, domain quantity, domain list, 0x78, reference indication;
Data meaning and data store organisation are analyzed: the end mark of data and the description of followed by class formation, is a series of numbers It is gone here and there according to end to end byte is described, structure are as follows: data type descriptor, data;
S202: intermediate structure is defined;
The intermediate structure needs to store class description number, typonym, type name, categorical data.
Preferably, the detailed step of the S3 is as follows:
S301: traversal parses entire file in a recursive manner, and classification building intermediate result finally obtains a total centre As a result;
S302: the class formation for completing description for the first time, the intermediate structure storage that such is converted in lists, from 0 is numbered, when encounter mark 0x71 has been described when, describe and load according to the digital ID retrieval class after the table;
Preferably, the detailed step of the S5 is as follows:
S501: extreme saturation intermediate result generate node and parsing;S502 is executed if outermost node layer is class description;
S503: interim .java source file is created;
S504: with class describe in class name in the entitled original of class;
S505: the nodename for reading the intermediate result got obtains nodename;
S506: the data type of the intermediate result interior joint storage got is read, variable is dynamically established;
S507: statistics number of nodes;
S508: the information in domain is written to interim .Java file according to data type and title;
S509: get and set method is written in source file;
S5010: storage source file is itself class name;
S5011: it is .class file that on-the-flier compiler, which generates source file,.
Preferably, the detailed step of the S6 is as follows:
S601: for the data for having generated class template, outermost node layer is taken;
S602: S603 is executed when needing and directly restoring full sequence data, when only needing to restore in serialized data Partial data, execute S604-S606;
S603: class object is directly generated and using java to right using the serializing class reading data interface that java is carried The access mode of elephant accesses to class object, terminates;
S604: class object is generated using reflection;
S605: the data field part in the medium object of generation is traversed;
S606: parsing the item of each data field, and the set method for reflecting call parameters is class parameter assignment or the calling side get Method gets parms value, terminates.
Compared with prior art the present invention has the advantages that
The data store organisation and data storage method of the Java serializing file of binary form storage are independently analyzed, And define the structure for being named as " intermediate data structure ", for store the data type name that must be recorded in analytic process, Domain name such as claims at the information.
On the basis of the analysis result to data store organisation and mode, intermediate data structure and algorithm are designed to sequence Change data to be converted, ignores data type, directly convert data to the JSON format as unit of intermediate data structure.
The data structure embodied in the JSON of generation is converted into java class by algorithm for design, and carries out dynamic volume to it It translates.
Realize generation and the access interface of the object to the class of on-the-flier compiler, and algorithm for design fills the data in JSON Into the memory object of dynamic generation, also in combination with the original unserializing method of Java, Java serialized data is directly turned It is changed to memory object.
Arbitrary standards Java serializing document analysis can be become into JSON in the case where that can not know former data structure Or the cross-platform general data of XML format.
For Java platform itself, on the basis of will serialize document analysis into JSON or XML, generated for target platform Original entity class, and the data of parsing are called in the form of object for target platform.
The entity class that Java platform is restored when parsing can be with on-the-flier compiler for .class file, for target platform subsequent right It is used in the processing of data.
Specific embodiment
To make the objectives, technical solutions, and advantages of the present invention more comprehensible, by the following examples, to the present invention do into One step is described in detail.
A method of restoring Java and serialize file data, comprising the following steps:
S1: analyzing and records the identifier in Java serializing file data about data type and structure;
S2: define intermediate structure for store the data type name of each node generated in resolving, domain name claims and Value;
S3: the node in parsing serializing file is traversed according to rule, the intermediate result of a top layer is obtained, parses Safeguard that a class defines ID list in the process;
S4: expansion intermediate result is converted to json format;(so far data are resumed out, can be used)
S5: extracting the structure of class and generates class template restores for internal storage data;(hereafter the step of is to realize Dynamic call in android or java system to data are restored).
S6: restore complete serialized data into memory.
It is described in detail for committed step described above:
S1: analyzing and records in Java serializing file data about data type and the identifier of structure control;
The data type identifier shares ten, respectively corresponds java for identifying its data type modified In 8 basic data types, java class and array.
Concrete meaning are as follows: 0x42 indicates byte;0x43 indicates char;0x44 indicates double;0x46 indicates float; 0x49 indicates int;0x50 indicates long;Ox4c indicates object;0x53 indicates short;0x5a indicates boolean;0x5b is indicated Array.
Structure control mark mainly include the following types:
0x71 has been described for identifying class, with reference to the record of description list;
0x72, for identifying the beginning of generic attribute description;
0x73, for identifying the beginning of object factory;
0x74 is String for identifying the structure;
0x75, for identifying the beginning of array description;
0x77 is block number evidence for identifying next data;
0x78, for identifying the end of class formation description;
0x70, for identifying class, whether there is or not superclass.
S2: define intermediate structure for store the data type name of each node generated in resolving, domain name claims and Value;
S201: analysis data location mode obtains data structure, for designing analytical algorithm;
Analyze class formation storage mode:
The description of class formation passes through data type identifier, structure control identifier, data length and data four in S1 Part is completed, which is a string of byte streams.Structure is as follows:
0x72, class name length, class name, fingerprint and identifier, domain quantity, domain list (its structure are as follows: data type mark, Domain name length, domain name), 0x78, reference indication (0x70/0x76).
Wherein 0x70 indicates no superclass without reference, and 0x76 then indicates next to describe its parent.
Data meaning and data store organisation are analyzed:
The end mark of data and the description of followed by class formation is that volume of data describes end to end byte string.Structure It is as follows:
Data type descriptor, data;
When data type descriptor is 0x71, according to the data that its latter two byte stores, retouched from the type recorded It states and directly acquires type specification in list.
S202: intermediate structure is defined;
The intermediate structure needs to store class description number, typonym, type name, categorical data;
Java serialize in file no matter domain or the data object of class or class, require with structure storage.
The rule traversal parsing that S3 is traversed according to depth of recursion serializes the node in file, obtains in a top layer Between as a result, in resolving safeguard a class define ID list;
S301: traversal parses entire file in a recursive manner, and classification building intermediate result finally obtains a total centre As a result.
S302: the class formation for completing description for the first time, the intermediate structure storage that such is converted in lists, from 0 is numbered.When encounter mark 0x71 has been described when, describe and load according to the digital ID retrieval class after the table.
S4: intermediate result is converted to json character string using the json tool that android is carried by expansion intermediate result.
S5: extracting the structure of class and generate class template for internal storage data restore (step for outermost node layer be from Class is defined, class built in system or fundamental type are skipped);
S501: extreme saturation intermediate result generate node and parsing;S502 is executed if outermost node layer is class description;
S503: interim .java source file is created;
S504: with class describe in class name in the entitled original of class;
S505: the nodename for reading the intermediate result got obtains nodename;
S506: the data type of the intermediate result interior joint storage got is read, variable is dynamically established;
S507: statistics number of nodes;
S508: the information in domain is written to interim .Java file according to data type and title;
S509: get and set method is written in source file;
S5010: storage source file is itself class name;
S5011: it is .class file that on-the-flier compiler, which generates source file,.
S6: restore complete serialized data into memory;
S601: for the data for having generated class template, outermost node layer is taken;
S602: S603 is executed when needing and directly restoring full sequence data, when only needing to restore in serialized data Partial data, execute S604-S606;
S603: class object is directly generated and using java to right using the serializing class reading data interface that java is carried The access mode of elephant accesses to class object, terminates;
S604: class object is generated using reflection;
S605: the data field part in the medium object of generation is traversed;
S606: parsing the item of each data field, and the set method for reflecting call parameters is class parameter assignment or the calling side get Method gets parms value, terminates.
Those of ordinary skill in the art will understand that the embodiments described herein, which is to help reader, understands this hair Bright implementation method, it should be understood that protection scope of the present invention is not limited to such specific embodiments and embodiments.Ability The those of ordinary skill in domain disclosed the technical disclosures can make its various for not departing from essence of the invention according to the present invention Its various specific variations and combinations, these variations and combinations are still within the scope of the present invention.

Claims (4)

1. a kind of method for restoring Java serializing file data, it is characterised in that the following steps are included:
S1: analyzing and records the identifier in Java serializing file data about data type and structure;
S2: definition intermediate structure is used to store the data type name of each node generated in resolving, domain name claims and is worth;
S3: the node in parsing serializing file is traversed according to rule, the intermediate result of a top layer is obtained, in resolving Safeguard that a class defines ID list;
S4: intermediate result is converted to json character string using the json tool that android is carried by expansion intermediate result;
S5: extracting the structure of class and generates class template restores for internal storage data;
S6: restore complete serialized data into memory;
Data type identifier shares ten, respectively corresponds java for identifying its data type modified in the S1 In 8 basic data types, java class and array;
Concrete meaning are as follows: 0x42 indicates byte;0x43 indicates char;0x44 indicates double;0x46 indicates float;0x49 table Show int;0x50 indicates long;Ox4c indicates object;0x53 indicates short;0x5a indicates boolean;0x5b indicates array;
In the S1 structure control mark mainly include the following types:
0x71 has been described for identifying class, with reference to the record of description list;
0x72, for identifying the beginning of generic attribute description;
0x73, for identifying the beginning of object factory;
0x74 is String for identifying the structure;
0x75, for identifying the beginning of array description;
0x77 is block number evidence for identifying next data;
0x78, for identifying the end of class formation description;
0x70, for identifying class, whether there is or not superclass;
The detailed step of the S2 is as follows:
S201: analysis data location mode obtains data structure, for designing analytical algorithm;
Analyze class formation storage mode: the description of class formation passes through data type identifier, structure control identifier, data in S1 Length and four part of data are completed, which is a string of byte streams, structure are as follows: 0x72, class name length, class name, fingerprint with Identifier, domain quantity, domain list, 0x78, reference indication;
Data meaning and data store organisation are analyzed: the end mark of data and the description of followed by class formation, is that volume of data is retouched State end to end byte string, structure are as follows: data type descriptor, data;
S202: intermediate structure is defined;
The intermediate structure needs to store class description number, typonym, type name, categorical data.
2. a kind of method for restoring Java serializing file data according to claim 1, it is characterised in that: the S3's Detailed step is as follows:
S301: traversal parses entire file in a recursive manner, and classification building intermediate result is final to obtain a total intermediate knot Fruit;
S302: the class formation for completing description for the first time, the intermediate structure that such is converted to are stored in lists, are opened from 0 Begin number, when encounter mark 0x71 has been described when, describe and load according to the digital ID retrieval class after the table.
3. a kind of method for restoring Java serializing file data according to claim 2, it is characterised in that: the S5's Detailed step is as follows:
S501: extreme saturation intermediate result generate node and parsing;S502 is executed if outermost node layer is class description;
S503: interim .java source file is created;
S504: with class describe in class name in the entitled original of class;
S505: the nodename for reading the intermediate result got obtains nodename;
S506: the data type of the intermediate result interior joint storage got is read, variable is dynamically established;
S507: statistics number of nodes;
S508: the information in domain is written to interim .Java file according to data type and title;
S509: get and set method is written in source file;
S5010: storage source file is itself class name;
S5011: it is .class file that on-the-flier compiler, which generates source file,.
4. a kind of method for restoring Java serializing file data according to claim 3, it is characterised in that: the S6's Detailed step is as follows:
S601: for the data for having generated class template, outermost node layer is taken;
S602: S603 is executed when needing and directly restoring full sequence data, when only needing to restore the portion in serialized data Divided data executes S604-S606;
S603: directly generating class object using the serializing class reading data interface that java is carried and uses visit of the java to object It asks that mode accesses to class object, terminates;
S604: class object is generated using reflection;
S605: the data field part in the medium object of generation is traversed;
S606: parsing the item of each data field, and the set method for reflecting call parameters is class parameter assignment or get method is called to obtain Parameter value is taken, is terminated.
CN201610188809.0A 2016-03-29 2016-03-29 A method of restoring Java and serializes file data Active CN105787128B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610188809.0A CN105787128B (en) 2016-03-29 2016-03-29 A method of restoring Java and serializes file data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610188809.0A CN105787128B (en) 2016-03-29 2016-03-29 A method of restoring Java and serializes file data

Publications (2)

Publication Number Publication Date
CN105787128A CN105787128A (en) 2016-07-20
CN105787128B true CN105787128B (en) 2019-04-23

Family

ID=56391366

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610188809.0A Active CN105787128B (en) 2016-03-29 2016-03-29 A method of restoring Java and serializes file data

Country Status (1)

Country Link
CN (1) CN105787128B (en)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106775638B (en) * 2016-11-22 2020-04-21 北京皮尔布莱尼软件有限公司 Object serialization method and device and computing equipment
CN107479875B (en) * 2017-07-19 2020-10-30 广州慧睿思通信息科技有限公司 Convenient method for Java to call DLL
CN107368320B (en) * 2017-07-25 2020-06-26 南京林业大学 Simple early exercise data statistical system
CN109684607B (en) * 2017-10-19 2022-04-08 腾讯科技(深圳)有限公司 JSON data analysis method and device, computer equipment and storage medium
CN108052551B (en) * 2017-11-28 2021-04-30 北京航天云路有限公司 Method for storing large amount of time sequence data realized on REDIS
CN107992624B (en) * 2017-12-22 2020-08-04 百度在线网络技术(北京)有限公司 Method, device, storage medium and terminal equipment for analyzing serialized data
CN108415741B (en) * 2018-02-13 2020-08-04 腾讯科技(深圳)有限公司 Object serialization and deserialization method and related device
CN109298954B (en) * 2018-09-14 2019-10-25 北京数聚鑫云信息技术有限公司 A kind of intelligence calls the method and device of Dubbo remote service
CN109388402A (en) * 2018-09-26 2019-02-26 杭州米加科技股份有限公司 Lightweight Josn format analytical tool based on Android platform
CN110162480B (en) * 2019-05-31 2023-02-24 泛升云微电子(苏州)有限公司 Automatic analysis method for structured diagnosis object
CN110909523B (en) * 2019-12-02 2023-10-27 中国银行股份有限公司 Data processing method and device
CN111240761B (en) * 2020-01-08 2023-05-30 郑州阿帕斯数云信息科技有限公司 Configuration file loading method and device
CN112651214B (en) * 2020-08-28 2023-03-28 成都格斗科技有限公司 Method for converting data table plaintext into binary ciphertext convenient for program to read
CN116126429B (en) * 2022-12-06 2023-11-17 谷斗科技(上海)有限公司 Method for persistence and recovery of reference of non-data type object

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103019689A (en) * 2012-11-21 2013-04-03 上海富欣智能交通控制有限公司 Universal object serialization realizing method
CN103593194A (en) * 2013-11-21 2014-02-19 北京国双科技有限公司 Object serialization method and device
CN103970737A (en) * 2013-01-24 2014-08-06 腾讯科技(深圳)有限公司 Data constitution method and device

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040015840A1 (en) * 2001-04-19 2004-01-22 Avaya, Inc. Mechanism for converting between JAVA classes and XML
US7693955B2 (en) * 2002-02-22 2010-04-06 Bea Systems, Inc. System and method for deploying a web service

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103019689A (en) * 2012-11-21 2013-04-03 上海富欣智能交通控制有限公司 Universal object serialization realizing method
CN103970737A (en) * 2013-01-24 2014-08-06 腾讯科技(深圳)有限公司 Data constitution method and device
CN103593194A (en) * 2013-11-21 2014-02-19 北京国双科技有限公司 Object serialization method and device

Also Published As

Publication number Publication date
CN105787128A (en) 2016-07-20

Similar Documents

Publication Publication Date Title
CN105787128B (en) A method of restoring Java and serializes file data
Küster et al. Detecting and resolving process model differences in the absence of a change log
US8190633B2 (en) Enabling provenance management for pre-existing applications
Howar Active learning of interface programs
Calvanese et al. Verification of evolving graph-structured data under expressive path constraints
Zeng et al. EtherGIS: a vulnerability detection framework for ethereum smart contracts based on graph learning features
Vujović et al. Comparative analysis of DSM graphical editor frameworks: Graphiti vs. Sirius
Beutner et al. AutoHyper: Explicit-state model checking for HyperLTL
Stelly et al. Nugget: A digital forensics language
Ding et al. Numerically representing stochastic process algebra models
Zhu et al. A neural network architecture for program understanding inspired by human behaviors
CN110362792A (en) RN file is converted to the method, apparatus and conversion equipment of small routine file
Wu et al. Metamodel instance generation: A systematic literature review
CN105824647A (en) Form page generating method and device
Cohen et al. Uniform inductive reasoning in transitive closure logic via infinite descent
CN101162480A (en) Schedule drawing automatic recognition and comprehend method
Oliveira et al. ETL standard processes modelling-a novel BPMN approach
Šimůnek LISp-Miner Control Language–description of scripting language implementation
Kosikov et al. Data enrichment in the information graphs environment based on a specialized architecture of information channels
US20140067874A1 (en) Performing predictive analysis
US8010572B1 (en) Kstore scenario simulator processor and XML file
Guédi et al. A Practical Application of Relational Concept Analysis to Class Model Factorization: Lessons Learned from a Thematic Information System.
Touili Computing transitive closures of hedge transformations
KR100319776B1 (en) Apparatus and method for software process modeling
Baker et al. Computational advances and data analytics to reduce subsurface uncertainty

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: No. 183 Songshan Road, Neijiang, Sichuan, Sichuan

Patentee after: Sichuan Miwu Traceless Science and Technology Co.,Ltd.

Address before: No. 183 Songshan Road, Neijiang, Sichuan, Sichuan

Patentee before: SICHUAN MWH INFORMATION SECURITY TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20211013

Address after: 641100 No.1 Hanyu Avenue, Shizhong District, Neijiang City, Sichuan Province

Patentee after: XLY SALVATIONDATA TECHNOLOGY Inc.

Address before: No. 183 Songshan Road, Neijiang, Sichuan, Sichuan

Patentee before: Sichuan Miwu Traceless Science and Technology Co.,Ltd.