Memory storage device and memory controller and virus scanning method thereof
First Claim
1. A virus scanning method, adapted to a memory storage device coupled to a host system, wherein the memory storage device comprises a rewritable non-volatile memory chip, the rewritable non-volatile memory chip has a plurality of physical blocks, and each of the physical blocks has a plurality of physical addresses, the virus scanning method comprising:
- providing a virus signature database, wherein the virus signature database records at least one predetermined file segment and at least one virus signature corresponding to the at least one predetermined file segment;
configuring a plurality of logical addresses to be mapped to a part of the physical addresses, wherein the host system accesses the logical addresses by using a file system, and the file system comprises a file allocation table (FAT);
receiving at least one binary code, wherein the at least one binary code comprises a binary code to be written by the host system or a binary code to be read by the host system and corresponding to an excess address range;
analyzing the FAT to identify a file segment containing the at least one binary code;
identifying the file segment containing the at least one binary code in a logical address linked list;
determining whether the file segment matches any one of the at least one predetermined file segment;
when the file segment matches one of the at least one predetermined file segment, determining whether the at least one binary code matches any one of the at least one virus signature corresponding to the matched predetermined file segment; and
when the at least one binary code matches one of the at least one virus signature corresponding to the matched predetermined file segment, not writing the at least one binary code into the memory storage device or not transmitting the at least one binary code back to the host system.
1 Assignment
0 Petitions
Accused Products
Abstract
A memory storage device, a memory controller, and a virus scanning method are provided. In the method, a virus signature database recording a predetermined file segment and a corresponding virus signature is provided. A plurality of logical addresses is mapped to a part of a plurality of physical addresses in a rewritable non-volatile memory chip of the memory storage device, a host system accesses the logical addresses by using a file system including a file allocation table (FAT). At lease one binary code is received. The FAT is analyzed to identify a file segment containing the at least one binary code. If the file segment matches the predetermined file segment, the at least one binary code is not written into the memory storage device or transmitted back to the host system when the at least one binary code matches the virus signature corresponding to the predetermined file segment.
-
Citations
24 Claims
-
1. A virus scanning method, adapted to a memory storage device coupled to a host system, wherein the memory storage device comprises a rewritable non-volatile memory chip, the rewritable non-volatile memory chip has a plurality of physical blocks, and each of the physical blocks has a plurality of physical addresses, the virus scanning method comprising:
-
providing a virus signature database, wherein the virus signature database records at least one predetermined file segment and at least one virus signature corresponding to the at least one predetermined file segment; configuring a plurality of logical addresses to be mapped to a part of the physical addresses, wherein the host system accesses the logical addresses by using a file system, and the file system comprises a file allocation table (FAT); receiving at least one binary code, wherein the at least one binary code comprises a binary code to be written by the host system or a binary code to be read by the host system and corresponding to an excess address range; analyzing the FAT to identify a file segment containing the at least one binary code; identifying the file segment containing the at least one binary code in a logical address linked list; determining whether the file segment matches any one of the at least one predetermined file segment; when the file segment matches one of the at least one predetermined file segment, determining whether the at least one binary code matches any one of the at least one virus signature corresponding to the matched predetermined file segment; and when the at least one binary code matches one of the at least one virus signature corresponding to the matched predetermined file segment, not writing the at least one binary code into the memory storage device or not transmitting the at least one binary code back to the host system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A memory controller, for managing a rewritable non-volatile memory chip in a memory storage device, the memory controller comprising:
-
a host system interface, configured to couple a host system; a memory interface, configured to couple the rewritable non-volatile memory chip, wherein the rewritable non-volatile memory chip has a plurality of physical blocks, and each of the physical blocks has a plurality of physical addresses; and a memory management circuit, coupled to the host system interface and the memory interface, for providing a virus signature database, wherein the virus signature database records at least one predetermined file segment and at least one virus signature corresponding to the at least one predetermined file segment, wherein the memory management circuit further configures a plurality of logical addresses to be mapped to a part of the physical addresses, the host system accesses the logical addresses by using a file system, and the file system comprises a FAT, wherein when the memory management circuit receives at least one binary code, the memory management circuit further analyzes the FAT to identify a file segment containing the at least one binary code and identifies the file segment containing the at least one binary code in a logical address linked list, wherein the at least one binary code comprises a binary code to be written by the host system or a binary code to be read by the host system and corresponding to an excess address range, the memory management circuit further determines whether the file segment matches any one of the at least one predetermined file segment, and when the file segment matches one of the at least one predetermined file segment, the memory management circuit determines whether the at least one binary code matches any one of the at least one virus signature corresponding to the matched predetermined file segment, when the at least one binary code matches one of the at least one virus signature corresponding to the matched predetermined file segment, the memory management circuit does not write the at least one binary code into the memory storage device or transmit the at least one binary code back to the host system. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A memory storage device, comprising:
-
a rewritable non-volatile memory chip, having a plurality of physical blocks, wherein each of the physical blocks has a plurality of physical addresses; a connector, configured to couple a host system; and a memory controller, coupled to the rewritable non-volatile memory chip and the connector, for providing a virus signature database, wherein the virus signature database records at least one predetermined file segment and at least one virus signature corresponding to the at least one predetermined file segment, wherein the memory controller further configures a plurality of logical addresses to be mapped to a part of the physical addresses, wherein the host system accesses the logical addresses by using a file system, and the file system comprises a FAT, when the memory controller receives at least one binary code, the memory controller further analyzes the FAT to identify a file segment containing the at least one binary code and identifies the file segment containing the at least one binary code in a logical address linked list, wherein the at least one binary code comprises a binary code to be written by the host system or a binary code to be read by the host system and corresponding to an excess address range, the memory controller further determines whether the file segment matches any one of the at least one predetermined file segment, and when the file segment matches one of the at least one predetermined file segment, the memory controller determines whether the at least one binary code matches the virus signature corresponding to the matched predetermined file segment, when the at least one binary code matches one of the at least one virus signature corresponding to the matched predetermined file segment, the memory controller does not write the at least one binary code into the memory storage device or transmit the at least one binary code back to the host system. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
-
Specification