SYSTEM AND METHOD CAPABLE OF UPLOADING DATA INTO BLOCKCHAIN

The invention provides a system capable uploading data into a blockchain, which comprises a data storage device and an electronic device. The data storage device comprises a controller, a plurality of flash memories, and a data transmission interface. The electronic device comprises a processor and a network communication component. The controller calculates a specific data stored in the flash memories by a hash algorithm to obtain a hash data corresponding to the specific data, and transmits the hash data to the electronic device. The processor of the electronic device uploads the hash data to the blockchain by a data chaining program so as to chain the hash data into the blockchain. Accordingly, the system chains the hash data corresponding to the specific data into the blockchain to ensure the security of the specific data in use.

FIELD OF THE INVENTION

The present invention relates to a data chaining system, more particularly, to a data chaining system capable of uploading data to a blockchain, and chaining data into the blockchain.

BACKGROUND

With the need for data storage, a data storage data, for example, solid state drive (SSD), often used by a computer host or an automatic device to store important data. Besides, the current Internet is flooded with malicious hackers. In order to achieve a specific purpose, some malicious hackers often invade the computer hosts of some government units or companies, and tamper with the data stored in the data storage devices of these computer hosts.

When the tampered data in the data storage device is an important commercial data (such as financial data, customer data, etc.), it will arise many problems if the tampered data is able to be not identified, and further used in transactions or personal information.

SUMMARY

It is one objective of the present invention to provide a data chaining system, which comprises a data storage device and an electronic device that is able to be connected to Internet. The electronic device may chain a data stored in the data storage device into a blockchain in cloud so that the data of the data storage device can be protected in the blockchain based on the characteristics of the blockchain data that cannot be tampered with and forged.

It is other objective of the present invention to provide a data chaining system, wherein the data storage device comprises a controller, a plurality of flash memories, and a data transmission interface, and the electronic device comprises a processor and a network communication component. The controller calculates a specific data in the flash memories by a hash algorithm to obtain a first hash data corresponding to the specific data, and transmits the first hash data to the electronic device via the data transmission interface. The processor of the electronic device uploads the first hash data to the blockchain by a data chaining program so as to chain the first hash data into the blockchain. Afterwards, when the user desires to use the specific data stored in the flash memories, the controller calculates the current specific data in the flash memories by the hash algorithm again to obtain a second hash data corresponding to the current specific data, and transmits the second hash data to the electronic device via the data transmission interface. The processor of the electronic device downloads the first hash data from the blockchain via the network communication component, and compares whether the second hash data is equal to the first hash data such that the authenticity of the specific data can be determined based on the comparison result. Accordingly, through the characteristics of blockchain data that cannot be tampered with and cannot be forged, the security of the data of the data storage device in use can be ensured.

To achieve the above objective, the present invention provides a system capable of uploading data into a blockchain, the system comprising: a data storage device comprising: a data transmission interface; a controller; and a plurality of flash memories, wherein the controller is connected to the data transmission interface and the flash memories, and calculates a specific data to be stored to the flash memories or the specific data stored in the flash memories by a hash algorithm to obtain a first hash data corresponding to the specific data; and an electronic device, comprising: a processor; and a network communication component, wherein the processor is connected to the network communication component, the electronic device is network connected to a blockchain via the network communication component; wherein the data storage device transmits the first hash data to the electronic device via the data transmission interface, when the electronic device receives the first hash data, the processor of the electronic device executes a data chaining program, and uploads the first hashed data to the blockchain by the data chaining program so as to chain the first hash data into the blockchain.

In one embodiment of the present invention, wherein the flash memories are formed with a first data storage area and a second data storage area, the first data storage area is used for storing general data, the second data storage area is used for storing the specific data.

In one embodiment of the present invention, wherein the specific data is a data in a specific file format, or a data with a specific content.

In one embodiment of the present invention, wherein the controller comprises a firmware, and the data chaining program is disposed in the firmware.

In one embodiment of the present invention, wherein the processor is configured with an embedded system, and the data chaining program is installed in the embedded system.

In one embodiment of the present invention, wherein the electronic device receives the specific data from the data storage device, and uploads the specific data to the blockchain by the data chaining program so as to chain the specific data into the blockchain.

In one embodiment of the present invention, wherein the data transmission interface is SATA transmission interface, PCIe transmission interface, or USB transmission interface.

The present invention further provides a method capable of uploading data into a blockchain, which is adapted to a data chaining system, wherein the data chaining system comprises a data storage device and an electronic device; the data storage device comprises a controller, a plurality of flash memories, and a data transmission interface; the electronic device comprises a processor and a network communication component; the data storage device and the electronic device are connected together via the data transmission interface, and the electronic device is network connected to a blockchain via the network communication component, the method comprising: calculating a specific data to be stored to the flash memories or the specific data stored in the flash memories by a hash algorithm executed by the controller of the data storage device to obtain a first hash data; transmitting the first hash data to the electronic device via the data transmission interface of the data storage device; and executing a data chaining program by the microprocessor of the data storage device to upload and chain the first hash data into the blockchain.

In one embodiment of the present invention, further comprising: uploading the specific data to the blockchain by the data chaining program to chain the specific data into the blockchain.

In one embodiment of the present invention, further comprising a data authenticity verification procedure comprising: calculating the specific data in the flash memories again by the hash algorithm executed by the controller of the data storage device to obtain a second hash data; transmitting the second hash data to the electronic device by the data transmission interface of the data storage device; downloading the first hash data corresponding to the specific data from the blockchain by the processor of the electronic device via the network communication component; and comparing whether the second hash data is equal to the first hash data to determine whether the specific data is tampered with.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring toFIG. 1, there is shown a structural view of a data chaining system of the present invention. As shown inFIG. 1, the data chaining system100comprises a data storage device10and an electronic device30. The data storage device10may be a solid state disk (SSD). The data storage device10comprises a controller11, a plurality of flash memories13, and a data transmission interface15. The controller11is connected to the flash memories13, and a data transmission interface15. The data transmission interface15is SATA transmission interface, PCIe transmission interface, or USB transmission interface. The controller11comprises a firmware111. Besides, the data storage device10further comprises a hash algorithm112. In one embodiment of the present invention, the hash algorithm112is configured in the firmware111of the controller11, and executed by the controller11. Alternatively, the flash memories13of the data storage device10is installed with an operating system, the hash algorithm112is installed in the operating system in a form of software, and is executed by the operating system.

The electronic device30comprises a processor31and a network communication component33. The processor31is connected to the network communication component33. The network communication component33is a WiFi communication component, an RJ45 communication component, or a 3G, 4G or 5G communication component. The electronic device30is connected to a blockchain50. The processor31is configured with an embedded system32that is an architecture system of Linux, RTOS, or TinyOS, and stored in non-volatile memories (NVMs). In another embodiment of the present invention, a data chaining program321is installed in the embedded system32of the microprocessor31in a form of software, and executed by the embedded system32.

A specific data12, for example, commercial data, confidential data, personal data or data in a specific format, etc., can be stored into the flash memories13via the data transmission interface15of the data storage device10. In one embodiment of the present invention, the controller11executes the hash algorithm112in advance before the specific data12is to be stored in the flash memories13. Then, the controller11calculates the specific data12by the hash algorithm112to obtain a first hash data14corresponding to the specific data12, and transmit the first hash data14to the electronic device30via the data transmission interface15.

After the electronic device30receives the first hash data14, the processor31of the electronic device30executes the data chaining program321to upload the first hash data14to the blockchain50, and therefore chain the first hash data14into the blockchain50by the data chaining program321. Accordingly, through the characteristics of blockchain data that cannot be tampered with and cannot be forged, the first hash data14can be protected in the blockchain50. After the first hash data14is chained in the blockchain50, the controller11writes the specific data12into the flash memories13.

In other embodiment of the present invention, data sectors of the flash memories113are formed with a first data storage area131and a second data storage area133. The first data storage area131is used for storing general data, for example, operating system or application program. The second data storage area133is used for storing the specific data12, for example, business document, license document, or confidential document. When the specific data12has been stored in the second data storage area133, the controller11will automatic execute the hash algorithm112to calculates each specific data12in the second data storage area133by the hash algorithm112to obtain each first hash data14corresponding to each specific data12, respectively; then, the controller11transmits each first hash data14corresponding to each specific data12to the electronic device30via the data transmission interface15. The electronic device30successively receives each first hash data14corresponding to each specific data12, and uploads each first hash data14corresponding to each specific data12to the blockchain50respectively to chain each first hash data14corresponding to each specific data12into the blockchain50respectively. Through the characteristics of blockchain data that cannot be tampered with and cannot be forged, each first hash data14corresponding to each specific data12will be protected in the blockchain50.

In another embodiment of the present invention, the specific data12is a data in a specific file format of, for example, data in WORD file format, PDF file format, PPT file format, JPG file format, EXCEL file format, DWG file format, or other file format. When the controller11knows that the data12in the specific file format is to be stored to the flash memories13, or has stored in the flash memories13according to the analyzation of the file extension of the data12, the hash algorithm112will be automatically executed by the controller11. The controller11calculates the data12in the specific file format by the hash algorithm112to obtain the first hash data14corresponding to the data12in the specific file format, and then transmits the first hash data14corresponding to the data12in the specific file format to the electronic device30. Afterwards, the electronic device30uploads the first hash data14corresponding to the data12in the specific file format to the blockchain50by the data chaining program321so as to chain the first hash data14corresponding to the data12in the specific file format into the blockchain50. Through the characteristics of blockchain data that cannot be tampered with and cannot be forged, the first hash data14corresponding to the data12in the specific file format will be protected in the blockchain50.

In yet another embodiment of the present invention, the specific data12is a data with a specific content, for example, business contract data, license document data or basic personal data. When the controller11knows that the data12with the specific content is to be stored to the flash memories13, or has stored in the flash memories13by analyzing the content of the data12according to one or more key words, the hash algorithm112will be automatically executed by the controller11. The controller11calculates the data12with the specific content by the hash algorithm112to obtain the first hash data14corresponding to the data12with the specific content, and then transmits the first hash data14corresponding to the data12with the specific content to the electronic device30. Afterwards, the electronic device30uploads the first hash data14corresponding to the data12with the specific content to the blockchain50by the data chaining program321so as to chain the first hash data14corresponding to the data12with the specific content into the blockchain50. Through the characteristics of blockchain data that cannot be tampered with and cannot be forged, the first hash data14corresponding to the data12with the specific content will be protected in the blockchain50.

Before the specific data12stored in the flash memory13wants to be used as a proof, a transaction or other specific requirements, the data chaining system100will execute a data authenticity verification procedure. In the data authenticity verification procedure, the controller11of the data storage device10calculates the current specific data12in the flash memories13by the hash algorithm112again to obtain a second hash data16, and transmits the second hash data16to the electronic device30. After the processor31of the electronic device30receives the second hash data16, the data chaining program321downloads the first hash data14corresponding to the specific data12from the blockchain15via the network communication component33, and then compares whether the second hash data16is equal to the first hash data14. If the data chaining program321determines that the second hash data16is equal to the first hash data14, the specific data12is an original data that does not tampered with. On the contrary, if the data chaining program321determines that the second hash data16is not equal to the first hash data14, the specific data12is a data tampered with.

Referring toFIG. 2, there is shown a flow chart of a method capable of uploading data into blockchain of the present invention. As shown inFIG. 2, firstly, in Step S701, the controller11of the data storage device10calculates a specific data12to be stored to the flash memories13or a specific data12stored in the flash memories13by a hash algorithm to obtain the first hash data14. In Step S702, the data storage device10transmits the first hash data14to the electronic device30via the data transmission interface15. In Step S703, after the electronic device30receives the first hash data14, the processor31uploads the first hash data14to the blockchain50by the data chaining program321so as to chain the first hash data14into the blockchain50. In one embodiment of the present invention, the electronic device30can also receive the specific data12from the data storage device10, and upload the specific data12and the first hash data14corresponding to the specific data12at the same time to the blockchain50.

Afterwards, a data authenticity verification procedure S71will be executed by the data chaining system100before the user wants to use the specific data12in the flash memory13. In the Step S711of the data authenticity verification procedure S71, the controller11of the data storage device10calculates the current specific data12in the flash memories13by the hash algorithm112again to obtain a second hash data16. In the Step S712, the data storage device10transmits the second hash data16to the electronic device30via the data transmission interface15. In the Step S713, after the processor31of the electronic device30receives the second hash data16, the data chaining program321downloads the first hash data14corresponding to the specific data12from the blockchain15via the network communication component33. In the Step S714, the data chaining program321compares whether the second hash data16is equal to the first hash data14; if yes, performing to Step S715, the data chaining program321determines that the specific data12is an original data that does not tampered with; if not, performing to step S716, the data chaining program321determines that the specific data12is a data that has been tampered with.

The above disclosure is only the preferred embodiment of the present invention, and not used for limiting the scope of the present invention. All equivalent variations and modifications on the basis of shapes, structures, features and spirits described in claims of the present invention should be included in the claims of the present invention.