WO2007099012A1 - Universal serial bus (usb) storage device and access control method thereof - Google Patents

Universal serial bus (usb) storage device and access control method thereof Download PDF

Info

Publication number
WO2007099012A1
WO2007099012A1 PCT/EP2007/050952 EP2007050952W WO2007099012A1 WO 2007099012 A1 WO2007099012 A1 WO 2007099012A1 EP 2007050952 W EP2007050952 W EP 2007050952W WO 2007099012 A1 WO2007099012 A1 WO 2007099012A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
storage device
access
usb
data storage
Prior art date
Application number
PCT/EP2007/050952
Other languages
French (fr)
Inventor
Haixin Chai
Sheng Lu
Original Assignee
International Business Machines Corporation
Ibm United Kingdom Limited
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 International Business Machines Corporation, Ibm United Kingdom Limited filed Critical International Business Machines Corporation
Priority to EP07704275.2A priority Critical patent/EP1989653B1/en
Priority to US12/280,216 priority patent/US20090300710A1/en
Publication of WO2007099012A1 publication Critical patent/WO2007099012A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/80Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in storage media based on magnetic or optical technology, e.g. disks with sectors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Definitions

  • the present invention relates to a USB (Universal Serial Bus) storage device and an access control method thereof.
  • USB Universal Serial Bus
  • USB disks are widely used for carrying and transferring mass data between computers. Someone even uses USB disk as a primary storage. Thus, many data are stored in USB disks, and some of them are critical.
  • USB disks Users of USB disks also keep the USB disks as backup storage. A great deal of documents, programs and applications are stored in USB disks. But current USB disks do not provide an embedded access control, and they are just simple storage devices. Even the types of file systems of USB disks are determined by operating systems. Such file system types include FAT (File Allocation Table), FAT32, New Technology File System (NTFS), ext2 (Second Extended File System), ext3 (Third Extended File System), etc. Some of these file systems do not support the access control, such as FAT32. Some other file systems can provide an access control function, but when a USB disk with such a file system is mounted to another computer, a privilege user of the new host can access any data of the USB disk.
  • FAT File Allocation Table
  • NTFS New Technology File System
  • ext2 Serial Extended File System
  • ext3 Third Extended File System
  • USB disks Confidential information in USB disks may be protected by disk password and cryptographic approaches (There are many types of encryption USB disks available) . But in many cases, we do not care that others read our information stored in USB disks, and we just do not want unexpected write operations, such as virus infection. Sometimes, a USB disk stores several Gigabytes of backup data. But when the disk is connected to a friend's computer, all executable programs and office documents are infected by virus, and all of the backup data are destroyed. Occasionally, we may lend our USB disks to friends, but when we get our disks back, we find that some data we kept in the disk are lost due to careless operations.
  • USB disk level access control (encryption and w ⁇ te-protection) of USB disks is not enough in many cases.
  • File level access control may be more flexible and more useful.
  • current USB disks do not provide the file level access control because of their implementation methods. Some extensions and key components will be needed to meet such a requirement.
  • USB disks some other storage devices also support the USB as their data transferring interface, such as flash based USB keys, portable media players, MP3 players, digital still cameras, and the like. All of these devices can be named as USB storage devices.
  • USB storage devices such as digital cameras and MP3 players
  • USB storage devices use their own format to exchange data.
  • USB storage devices use mass storage device standard (USB mass storage class specification) , and their storage devices could be accessed by hosts as another hard disk or floppy disk.
  • Some types of the USB storage devices may not require the file level access control severely, such as flash based USB keys, and their disk sizes are usually less than 1 Gigabytes and they cannot keep a great deal of data.
  • some USB disks may be larger than several hundred of Gigabytes, and a file system without the access control (e.g. an old FAT and FAT32 file system) may cause a virus epidemic.
  • digital cameras may also require the access control, because the owners of the cameras may want to protect some photos stored in the cameras when they lend their camera to friends.
  • USB storage devices either do not have a mechanism of access control completely, or apply a uniform access control to entire disks (disk level access control) , but can not realize a more flexible access control in which some data are protected while accesses to the other storage spaces are permitted.
  • an access control method of a USB storage device comprising providing an access control module on said USB storage device; dividing the storage space on said USB storage device into at least one data storage entity; setting each user's access right to each data storage entity; storing said access rights on said USB storage device as an access right list; when the user issues an access request for the data storage entity on said USB storage device through a host connected with said USB storage device via a USB interface, querying said access right list by said access control module, so as to determine whether the user has an access right to the requested data storage entity; and denying the user's access request for the data storage entity when the user does not have the access right to the data storage entity, and permitting the user's access request for the data storage entity when the user has the access right to the data storage entity.
  • the process between the USB storage device's being connected with a USB host and its being disconnected from the USB host is one session; when a session is established, the user provides authentication information for the USB device to authenticate him/her and saves the user information used in the current session. Preferably, it is also determined whether the user has a right to access the USB storage device according to a valid user table on the USB storage device, and the user's access request is denied in the case that he/she does not have the access right.
  • a USB storage device comprising a data storage media; a mapping means for mapping the logical address segments on the data storage media into data storage entities; an access right setting means for setting each user's access right to each data storage entity, and storing said access rights on the data storage media as an access right list; an access control module which, when a user issues an access request for the data storage entity on said data storage media through a host connected with said USB storage device via a USB interface, queries said access right list, so as to determine whether the user has the access right to the requested data storage entity, wherein said access control module denies the access request of the user for the data storage entity when the user does not have the access right to the data storage entity, and permits the access request of the user for the data storage entity when the user has the access right to the data storage entity.
  • Fig.l is a schematic diagram showing reserving a part of sectors on a data storage media of a USB storage device for storing an access control list (ACL) ;
  • Fig.2 shows a flow chart of a basic authentication process
  • Fig. 3 shows a flow chart of a basic access control process
  • Fig. 4 is a schematic diagram showing the data storage media of the USB storage device divided into a plurality of partitions with ACL stored in one partition;
  • Fig. 5 shows a schematic diagram of a way in which the USB storage device interacts with a host computer in a third implementation method example
  • Fig. 6 shows respective components in the USB storage device of a preferred embodiment of the invention.
  • USB storage devices are those devices which store data and are connected with hosts (USB hosts) via USB interfaces. No matter what implementation methods are employed by USB storage devices, current USB storage devices follow the USB mass storage class specification. Although USB mass storage class specification defines the transferring and control methods in detail, we will only discuss the address mechanism thereof here.
  • USB storage devices can be accessed by operating systems through logical addresses.
  • the logical address consists of head, track, cylinder and sector.
  • the actual meaning of address information is related to the types of storage devices defined by Subclass codes. With the information, operating systems can access the data in USB disks as in hard disk, floppy disk, CDROM, tape, and so on, and can format the USB storage devices into any format they support.
  • USB storage access method makes it easy for operating systems to access USB storage devices with their file system sub-systems. But it is difficult to implement a standalone access control mechanism without any extension .
  • ACL Addressing and access control list
  • USB mass storage class specification exchange data address information in head, track, cylinder and sector or other structure (As for tapes, QIC-157 command block is used) .
  • Block is a logical concept in file system, but it is always related to addresses on the storage device. As for UFI, the block must be equal to or larger than a sector, because the sector is the smallest unit for calculating LBA.
  • LBA ( (Track*HeadTrk) +Head) *SecTrk) + (Sector-1)
  • HeadTrk is the number of heads on each track
  • SecTrk is the number of sectors on each track.
  • a sector based ACL can be established and stored in some special sectors.
  • a part of sectors are reserved for storing the ACL.
  • the objects in the ACL are sectors.
  • a subject table (a valid user table in which user names and their authentication information are saved) will also be kept.
  • the ACL is the relationship between the subjects and the objects.
  • the user name and password may be required to be input for authentication. If the user cannot pass the authentication, he can access nothing. If he provides correct authentication information, all continuous access actions during this session are performed as the user's actions. Then, it is judged whether the user has an access right to the requested sector. The user can access files if he has the access right. Otherwise, his access request will be denied by the storage device itself (instead of the operating system) . Such an access denial may be implemented by returning a reading or writing error.
  • the valid user table is queried based on the user information, and the valid user used during this USB access session is obtained.
  • Said access session is the process between the USB storage device being connected to a host and being disconnected from the host.
  • the user information obtained when the USB storage device is connected with the host is invalidated when the USB storage device and the host is disconnected.
  • Each user can be considered to have a full access right to all empty sectors.
  • a default access control may be set for a given user.
  • newly written user data can be read or written by other users or can be only read by the other users. If an operation is performed on a sector which has already been written, the storage device will check the ACL to determine whether the user has been authorized to perform the operation.
  • Fig. 2 shows a flow chart of a basic authentication process
  • Fig.3 shows a flow chart of a basis access control process.
  • step Sl the USB storage device is plugged into a host via a USB interface. Then, in step S2, an authentication window is popped up on the screen of the host. In step S3, a user provides his authentication information in the authentication window. In step S4, the authentication information provided by the user is submitted to the USB storage device by the authentication window. Subsequently, in step S5, the USB storage device judges whether the access request of the user should be denied or accepted based on the authentication information of the user stored on its data storage media. Further, when the access request is accepted, an internal user identifier (ID) (i.e. an access control subject identifier) for this session is assigned to the user.
  • ID internal user identifier
  • step S12 with respect to the access request issued by the user (step SIl)
  • the ACL is searched to determine whether the user has the right to access the requested sector by utilizing the user authentication information, such as the internal user ID assigned to the user. Then, in step S13, if the access request is denied, an error is returned. If the access request is accepted, the access operation is performed as usual.
  • the default user access control mechanism may be defined in some very simple ways. Role based access control may or may not be needed.
  • Such a function module may be a processor which can reside on a chip or a circuit. It may be a new chip or only a segment of codes for existing processors.
  • the access control module only knows the sector and other logical address information, and does not know the territory of files. In this example, some simple access control mechanisms can be realized. For example, only a privilege user of the USB storage device can access any data and create new users; users can not change the user policy by himself, and so on. 1.3 Setting access control
  • ACL is automatically created based on user policy profiles by the access control module, so only the subject table and the user policy profiles are needed.
  • a new interface may be defined to set the information.
  • a possible way is to extend the specification of USB mass storage class.
  • Another way is to store the subject table and the user policy profiles as files in special sectors. These sectors are locked to any user except the privilege user of the USB storage device.
  • the privilege user of the USB storage device may access the subject table and the user policy profiles as files in a special partition, or access them using a special tool.
  • USB mass storage class specification there are some choices to define new users and their policy profiles, but these choices may not break current USB mass storage class specification.
  • the most important advantage of this example is that it is compatible with the USB mass storage class specification, and new USB storage devices can be recognized by some operating systems directly.
  • Implementation method example 2 Access control of partition
  • the ACL may become very large.
  • one possible method is to use a partition as the granularity of objects instead of using a sector. Any others aspects are the same as the above example except the calculation of the access control; and the granularity of objects is a partition, instead of a sector.
  • the USB storage device When the USB storage device receives an access request, it can calculate the requested logical address, and map it from the raw format to a partition. Then, the ACL is checked to determine whether the request is permitted. If the request is denied, an error will be returned to the operating system. Partition information can be created when the first time the disk is formatted. The formatting can be performed by the storage device manufacturer .
  • the ACL may be stored in a standalone partition (ACL partition) , as shown in Fig.4, and the right to the partition is set to only permit the privilege user of the USB storage device to perform reading and writing.
  • ACL partition ACL partition
  • the access rights of respective users to the respective other partitions partition 1, partition 2, .., partition n
  • partition 1, partition 2, .., partition n are stored in the ACL standalone partition.
  • the implementation example has several advantages. First, it inherits all of the advantages of the previous example. Second, it can support larger USB disks, because the number of ACL entries will only be a few lines. Third, it can control the writing action on empty sectors, because all sectors are included in one segment, therefore the user profiles will be much simpler.
  • the disadvantages of the example include that it cannot define an access control granularity as good as the file level, and actually it is a partition level access control.
  • the USB storage device can be a standalone storage device with its own file system format. It can be any file system that supports access control, such as NTFS, ext2, etc. And, the storage device is formatted before sold to customers.
  • the operating system will exchange information with the disk through a self-defined protocol and customized device drivers.
  • Fig. 5 shows a schematic diagram of a way in which the USB storage device interacts with a host computer in this implementation method example.
  • the USB storage device is connected to the host computer via the USB interface.
  • the data from the storage media are packed on the USB storage device so as to be supplied to the host computer via the USB interface.
  • a special driver provided on the host computer unpacks the data from the USB storage device.
  • the Server Message Block (SMB) protocol can be used to transfer data and file system structures and encapsulate them in a USB protocol. After it is unpacked by the driver, the operating system can handle them with their virtual file system sub-system, because the SMB can be well supported by Windows series and LinuxTM operating systems. (Linux is a registered trademark of Linux Torvalds, in the United States and other countries) .
  • the USB storage device can know the start addresses and the end addresses (i.e. a set of physical addresses) of files stored thereon, thereby the granularity of performing the access control can be set to file.
  • the access rights of respective users to the respective files are stored on the storage device as the ACL.
  • the aspects of authentication, access control and so on are also the same as those of the first example, and just the granularity of objects is the storage area of an entire file, instead of a sector.
  • USB storage device is actually an alien computer to the host to which it is connected.
  • the host cannot handle the USB storage device as it handles other USB storage devices.
  • its requirement of a special driver is another problem.
  • none of these problems is a technical problem, in other words, these problems can be solved by those skilled in the art, and just some new elements are needed to be introduced at the time of usage.
  • Y Access control module which resides in the USB storage device, performs the access control checks, and returns results of the check to the host.
  • the module may be a standalone chip or a circuit, or just a segment of codes stored in the USB storage device and executed on a processor.
  • ACL Y Access control list
  • the host may require the user to provide authentication information while the USB storage device is plugged into the host.
  • Y Message exchange mechanism which exchanges the authentication information between the host and the USB storage device. It may be an extension of the USB storage class specification, or just use the specification directly, or use other protocols encapsulated by the USB protocol .
  • Fig. 6 shows respective components in the USB storage device of the preferred embodiment of the invention, by way of example.
  • the USB storage device includes an information storage media, an access control module, a mapping means, an access right setting means, an authentication means, a valid user managing means, an internal user identifier (ID) assigning means, a user policy profile setting means, and a special interface.
  • What is shown in Fig. 6 is an exemplary structure for implementing the access control of the invention. According to the description herein, those skilled in the art can completely think of many other implementation structures to implement the access control methods of the present invention.
  • the access control module must be provided on the USB storage device.
  • the access control module may be a standalone chip newly added to the USB storage device, or may be realized by executing corresponding codes stored in the USB storage device by an existing processor of the USB storage device .
  • the storage space of the data storage media on the USB storage device is divided into at least one data storage entity.
  • the mapping means maps logical address segments on the data storage media into data storage entities.
  • the data storage entity mentioned here may be a basic storage unit such as a sector on the data storage media of the USB storage device, as described in the above implementation method example 1; or a larger logical block divided manually, such as a partition, as described in the above implementation method example 2. That is, the mapping means maps a sector or a partition on the data storage media into the data storage entity which is the unit of performing the access control in the invention.
  • a file system operating means may be provided on the USB storage device, thereby providing a file system on said USB storage device.
  • This file system describes a set of physical addresses occupied by respective files stored in the data storage media.
  • the USB storage device can know the boundaries of the files, and accordingly, the storage space on the data storage media which is occupied by each file can be regarded as one data storage entity, as described in the above implementation method example 3.
  • the invention set some valid users firstly, and then set access rights of the respective valid users to the respective data storage entities.
  • the valid user managing means valid users who have rights to use the USB storage device can be added or deleted, and authentication information of the valid users is stored on the data storage media of the USB storage device, thereby forming a valid user table (i.e. an access control subject table) .
  • the authentication herein can have a plurality of concrete forms, such as usernames plus passwords, and so on, or other data that can represent the users.
  • the internal user ID assigning means assigns an internal user ID, i.e. an internally-used access control subject identifier, to each valid user. During the operation of the USB storage device, the valid user is represented by the internal user ID. The assignment of the internal user ID can be implemented by adding an internal user ID entry for each valid user in the valid user table.
  • the access right setting means sets the access right of each valid user to each data storage entity based on the internal user IDs of the valid users, and stores said access right in the data storage media as an access right list.
  • the access right list herein is an important component part of the access control list (ACL) mentioned in previous examples.
  • the access right includes whether it is readable, and whether it is writable. Accordingly, means for setting respectively whether a read and/or write operation can be perform on the data storage entity for each valid user may be included in the access right setting means.
  • user policy profiles can be set by the user policy profile setting means and stored in the data storage media.
  • the user policy profiles illustrate rules of setting access rights for users in various cases.
  • the user policies may include policies related to default access rights to empty data storage entities, policies related to default access rights to newly written data storage entities, and other similar policies. Accordingly, means for setting these policies (not shown in the figure) may be respectively included in the user policy profile setting means.
  • the access right setting means may also automatically set access rights of the respective valid users to the data storage entity accessed by the user who is using the USB storage device according to related operations of the user with reference to the user policy profiles and the valid user table, thereby updating the access right list.
  • a user policy it can be set that all valid users have full access rights to empty storage spaces, or only some particular valid users can access the empty storage spaces. Again, for example, it can be set that some users have access rights to read and/or write data storage entities newly written by a certain user.
  • Only the privilege user of the USB storage device can modify the valid user table (i.e. the access control subject table), the user policy profiles and the access right list. This can be achieved by storing the access right list, the valid user table and the user policy profiles in special positions on the data storage media, such as some particular sectors, one particular partition, or particular files. The access rights to such special positions are set such that only the privilege user of the USB storage device can access them to perform modifications.
  • the privilege user of the USB storage device may be provided with a special tool which interfaces with the special interface, so that the privilege user modifies the user valid table, the user policy profiles and the access right list using the special tool.
  • the access control according to the invention can be performed when a user accesses the USB storage device.
  • the user authentication is firstly performed, and then it is determined whether the user has a right to access the data storage entity.
  • the authentication means need to acquire the authentication information provided by the user.
  • an input means can be provided on the USB storage device to receive the authentication information input by the user and provide it to the authentication means.
  • the authentication means may also send interface data to the host in response to the access request issued by the user, so as to generate an authentication interface on the host for the user to input the authentication information, and return the authentication information input by the user to said authentication means.
  • the host used by a user corresponding to the user obtain certain information that is specific to the host or particular information stored in the host by the user directly from the host, and treat it as the authentication information provided by the user to represent the user.
  • the authentication information can be information like usernames, passwords, and so on, and it can also be any other information that may uniquely represent the user.
  • the authentication means After obtaining the authentication information, the authentication means queries the valid user table stored on the data storage media based on the authentication information provided by the user to determine whether the user is a valid user. When it is determined that the user is not a valid user, any access request from the user is denied.
  • the access control module queries the access right list based on the internal user identifier of the user, so as to determine whether the user has an access right to the data storage entity he or she requested. Said access control module denies the user's access request for the data storage entity when the user does not have the access right to the data storage entity, and permits the user's access request for the data storage entity when the user has the access right to the data storage entity.
  • the user right setting means can also set the access rights to the data access entities respectively for all valid users in the valid user table according to the user policy profiles, thereby updating the access right list.
  • USB storage device and the access control method thereof have been described in detail, wherein since access rights are set for respective data storage entities divided on the data storage media respectively, an access control that is finer than the disk level control access can be achieved, and even the file level access control can be achieved.
  • the respective means mentioned herein may be a chip or a circuit separately provided on USB storage devices, and they may also be integrated to one chip, alternatively, the respective means mentioned herein can be implemented by executing different code segments by a processor provided on USB storage devices.

Abstract

The invention provides a USB storage device and an access control method thereof. An access control module is provided on the USB storage device. The storage space is divided into at least one data storage entity. Each user's access right to each data storage entity is set and stored in the USB storage device as an access control list. The process between the USB storage device's being connected with a USB host and its being disconnected from the USB host is one session. When a session is established, the user provides authentication information for the USB device to authenticate him/her, and saves the user information used in the current session. In the current session, when the host of the user issues an access request for the data storage entity on the USB storage device, the access control module queries the access right list based on the user information in the current session to determine whether the user has an access right to the requested data storage entity. When the user does not have the access right to the data storage entity, the access control module denies the user's access request for the data storage entity.

Description

UNIVERSAL SERIAL BUS (USB) STORAGE DEVICE AND ACCESS CONTROL METHOD THEREOF
FIELD OF THE INVENTION
The present invention relates to a USB (Universal Serial Bus) storage device and an access control method thereof.
DESCRIPTION OF THE RELATED ART
Today, USB disks are widely used for carrying and transferring mass data between computers. Someone even uses USB disk as a primary storage. Thus, many data are stored in USB disks, and some of them are critical.
Users of USB disks also keep the USB disks as backup storage. A great deal of documents, programs and applications are stored in USB disks. But current USB disks do not provide an embedded access control, and they are just simple storage devices. Even the types of file systems of USB disks are determined by operating systems. Such file system types include FAT (File Allocation Table), FAT32, New Technology File System (NTFS), ext2 (Second Extended File System), ext3 (Third Extended File System), etc. Some of these file systems do not support the access control, such as FAT32. Some other file systems can provide an access control function, but when a USB disk with such a file system is mounted to another computer, a privilege user of the new host can access any data of the USB disk.
Confidential information in USB disks may be protected by disk password and cryptographic approaches (There are many types of encryption USB disks available) . But in many cases, we do not care that others read our information stored in USB disks, and we just do not want unexpected write operations, such as virus infection. Sometimes, a USB disk stores several Gigabytes of backup data. But when the disk is connected to a friend's computer, all executable programs and office documents are infected by virus, and all of the backup data are destroyed. Occasionally, we may lend our USB disks to friends, but when we get our disks back, we find that some data we kept in the disk are lost due to careless operations.
Thus, disk level access control (encryption and wπte-protection) of USB disks is not enough in many cases. File level access control may be more flexible and more useful. However, current USB disks do not provide the file level access control because of their implementation methods. Some extensions and key components will be needed to meet such a requirement.
Beside USB disks, some other storage devices also support the USB as their data transferring interface, such as flash based USB keys, portable media players, MP3 players, digital still cameras, and the like. All of these devices can be named as USB storage devices.
Some earlier USB storage devices, such as digital cameras and MP3 players, use their own format to exchange data. But now, many USB storage devices use mass storage device standard (USB mass storage class specification) , and their storage devices could be accessed by hosts as another hard disk or floppy disk. Some types of the USB storage devices may not require the file level access control severely, such as flash based USB keys, and their disk sizes are usually less than 1 Gigabytes and they cannot keep a great deal of data. But some USB disks may be larger than several hundred of Gigabytes, and a file system without the access control (e.g. an old FAT and FAT32 file system) may cause a virus epidemic. Furthermore, digital cameras may also require the access control, because the owners of the cameras may want to protect some photos stored in the cameras when they lend their camera to friends.
It can be seen that, current USB storage devices either do not have a mechanism of access control completely, or apply a uniform access control to entire disks (disk level access control) , but can not realize a more flexible access control in which some data are protected while accesses to the other storage spaces are permitted.
SUMMARY OF THE INVENTION
It is an object of the invention to provide a USB storage device and an access control method thereof capable of performing an access control in a finer granularity than disk level access control.
According to an aspect of the invention, there is provided an access control method of a USB storage device comprising providing an access control module on said USB storage device; dividing the storage space on said USB storage device into at least one data storage entity; setting each user's access right to each data storage entity; storing said access rights on said USB storage device as an access right list; when the user issues an access request for the data storage entity on said USB storage device through a host connected with said USB storage device via a USB interface, querying said access right list by said access control module, so as to determine whether the user has an access right to the requested data storage entity; and denying the user's access request for the data storage entity when the user does not have the access right to the data storage entity, and permitting the user's access request for the data storage entity when the user has the access right to the data storage entity.
The process between the USB storage device's being connected with a USB host and its being disconnected from the USB host is one session; when a session is established, the user provides authentication information for the USB device to authenticate him/her and saves the user information used in the current session. Preferably, it is also determined whether the user has a right to access the USB storage device according to a valid user table on the USB storage device, and the user's access request is denied in the case that he/she does not have the access right.
According to another aspect of the invention, there is provided a USB storage device comprising a data storage media; a mapping means for mapping the logical address segments on the data storage media into data storage entities; an access right setting means for setting each user's access right to each data storage entity, and storing said access rights on the data storage media as an access right list; an access control module which, when a user issues an access request for the data storage entity on said data storage media through a host connected with said USB storage device via a USB interface, queries said access right list, so as to determine whether the user has the access right to the requested data storage entity, wherein said access control module denies the access request of the user for the data storage entity when the user does not have the access right to the data storage entity, and permits the access request of the user for the data storage entity when the user has the access right to the data storage entity.
Since the access rights are set for the respective data storage entities divided on the data storage media respectively, a finer access control than the disk level access control can be achieved, and even a file level access control can be achieved. Thus, different access controls can be employed for different files and storage spaces on the USB storage device. BRIEF DESCRIPTION OF THE DRAWINGS
Fig.l is a schematic diagram showing reserving a part of sectors on a data storage media of a USB storage device for storing an access control list (ACL) ;
Fig.2 shows a flow chart of a basic authentication process;
Fig. 3 shows a flow chart of a basic access control process;
Fig. 4 is a schematic diagram showing the data storage media of the USB storage device divided into a plurality of partitions with ACL stored in one partition;
Fig. 5 shows a schematic diagram of a way in which the USB storage device interacts with a host computer in a third implementation method example; and
Fig. 6 shows respective components in the USB storage device of a preferred embodiment of the invention.
DESCRIPTION OF THE PREFERRED EMBODIMENTS
In this disclosure, we will give some key components for implementing a file level access control in a USB storage device. These component extensions do not need users to pay attention to the management of USB disks management. Users only need to set an authentication method for the USB storage device, and pass the authentication when the USB storage device is connected to a computer. Some access control methods of operating systems may be employed directly, and users do not need to know that the USB storage device is a standalone portable disk. This mechanism of file level access control for USB storage devices may work in Microsoft™ Windows™ series and UNIX™ based operating systems, as well as other operating systems, such as MacOS . (Microsoft and Windows are registered trademarks of Microsoft Corporation in the United States, other countries, or both. Unix is a registered trademark of The Open Group, in the United States and other countries) .
An access control method of the USB storage device according to a preferred embodiment of the invention will be described below with reference to the attached drawings. USB storage devices are those devices which store data and are connected with hosts (USB hosts) via USB interfaces. No matter what implementation methods are employed by USB storage devices, current USB storage devices follow the USB mass storage class specification. Although USB mass storage class specification defines the transferring and control methods in detail, we will only discuss the address mechanism thereof here.
Data in USB storage devices can be accessed by operating systems through logical addresses. The logical address consists of head, track, cylinder and sector. The actual meaning of address information is related to the types of storage devices defined by Subclass codes. With the information, operating systems can access the data in USB disks as in hard disk, floppy disk, CDROM, tape, and so on, and can format the USB storage devices into any format they support.
Such a USB storage access method makes it easy for operating systems to access USB storage devices with their file system sub-systems. But it is difficult to implement a standalone access control mechanism without any extension .
First, several possible ways of providing file level access control in USB storage devices are described.
Implementation method example 1: Sector based access control
1.1 Addressing and access control list (ACL) storing
Devices and operating systems which support the USB mass storage class specification exchange data address information in head, track, cylinder and sector or other structure (As for tapes, QIC-157 command block is used) .
Here, we employ head, track, sector as an example of the logical address. Such an address is defined for UFI (USB Floppy Interface) to calculate LBA (Logical Block Address) . Addresses for other specifications will be different, but the basic concept will not change.
No matter how the storage device is formatted, the file system will be constructed into multiple blocks. Block is a logical concept in file system, but it is always related to addresses on the storage device. As for UFI, the block must be equal to or larger than a sector, because the sector is the smallest unit for calculating LBA. LBA= ( ( (Track*HeadTrk) +Head) *SecTrk) + (Sector-1)
HeadTrk is the number of heads on each track, and SecTrk is the number of sectors on each track.
So, in the USB storage device, a sector based ACL can be established and stored in some special sectors. As shown in Fig. 1, on the data storage media, in addition to the sectors for storing data, a part of sectors are reserved for storing the ACL.
In this example, the objects in the ACL are sectors. A subject table (a valid user table in which user names and their authentication information are saved) will also be kept. For each of the objects (sectors), each subject's right of accessing the object will also be stored. The ACL is the relationship between the subjects and the objects.
1.2 Authentication and access control
When a USB storage device is connected to a computer, the user name and password may be required to be input for authentication. If the user cannot pass the authentication, he can access nothing. If he provides correct authentication information, all continuous access actions during this session are performed as the user's actions. Then, it is judged whether the user has an access right to the requested sector. The user can access files if he has the access right. Otherwise, his access request will be denied by the storage device itself (instead of the operating system) . Such an access denial may be implemented by returning a reading or writing error.
Moreover, in the judgment process described above, the valid user table is queried based on the user information, and the valid user used during this USB access session is obtained. Said access session is the process between the USB storage device being connected to a host and being disconnected from the host. The user information obtained when the USB storage device is connected with the host is invalidated when the USB storage device and the host is disconnected.
Each user can be considered to have a full access right to all empty sectors. For newly written sectors, a default access control may be set for a given user. For example, newly written user data can be read or written by other users or can be only read by the other users. If an operation is performed on a sector which has already been written, the storage device will check the ACL to determine whether the user has been authorized to perform the operation. Fig. 2 shows a flow chart of a basic authentication process, and Fig.3 shows a flow chart of a basis access control process.
The authentication process shown in Fig.2 is described below. First, in step Sl, the USB storage device is plugged into a host via a USB interface. Then, in step S2, an authentication window is popped up on the screen of the host. In step S3, a user provides his authentication information in the authentication window. In step S4, the authentication information provided by the user is submitted to the USB storage device by the authentication window. Subsequently, in step S5, the USB storage device judges whether the access request of the user should be denied or accepted based on the authentication information of the user stored on its data storage media. Further, when the access request is accepted, an internal user identifier (ID) (i.e. an access control subject identifier) for this session is assigned to the user.
In the access control process shown in Fig.3, after determining that the user has passed the authentication process shown in Fig.2, in step S12, with respect to the access request issued by the user (step SIl), the ACL is searched to determine whether the user has the right to access the requested sector by utilizing the user authentication information, such as the internal user ID assigned to the user. Then, in step S13, if the access request is denied, an error is returned. If the access request is accepted, the access operation is performed as usual.
The default user access control mechanism may be defined in some very simple ways. Role based access control may or may not be needed.
Because the USB storage device must handle the access control by itself, there must be a function module to handle the access control check, so as to decide whether this user action has been granted. Such a function module may be a processor which can reside on a chip or a circuit. It may be a new chip or only a segment of codes for existing processors.
The access control module only knows the sector and other logical address information, and does not know the territory of files. In this example, some simple access control mechanisms can be realized. For example, only a privilege user of the USB storage device can access any data and create new users; users can not change the user policy by himself, and so on. 1.3 Setting access control
As described hereinbefore, only a simple access control mechanism is needed. ACL is automatically created based on user policy profiles by the access control module, so only the subject table and the user policy profiles are needed.
In order to store the subject table and the user policy profiles in the USB storage device to avoid operating system decoys, a new interface may be defined to set the information. A possible way is to extend the specification of USB mass storage class. Another way is to store the subject table and the user policy profiles as files in special sectors. These sectors are locked to any user except the privilege user of the USB storage device. The privilege user of the USB storage device may access the subject table and the user policy profiles as files in a special partition, or access them using a special tool.
In a short term, there are some choices to define new users and their policy profiles, but these choices may not break current USB mass storage class specification.
The most important advantage of this example is that it is compatible with the USB mass storage class specification, and new USB storage devices can be recognized by some operating systems directly.
Other advantages include: it also supports any file system format; operating systems do not need to take care of the implementation of the ACL.
Implementation method example 2: Access control of partition In the previous example, the ACL may become very large. To reduce the size of the ACL, one possible method is to use a partition as the granularity of objects instead of using a sector. Any others aspects are the same as the above example except the calculation of the access control; and the granularity of objects is a partition, instead of a sector.
When the USB storage device receives an access request, it can calculate the requested logical address, and map it from the raw format to a partition. Then, the ACL is checked to determine whether the request is permitted. If the request is denied, an error will be returned to the operating system. Partition information can be created when the first time the disk is formatted. The formatting can be performed by the storage device manufacturer .
The ACL may be stored in a standalone partition (ACL partition) , as shown in Fig.4, and the right to the partition is set to only permit the privilege user of the USB storage device to perform reading and writing. At the same time, the access rights of respective users to the respective other partitions (partition 1, partition 2, .., partition n) are stored in the ACL standalone partition.
The implementation example has several advantages. First, it inherits all of the advantages of the previous example. Second, it can support larger USB disks, because the number of ACL entries will only be a few lines. Third, it can control the writing action on empty sectors, because all sectors are included in one segment, therefore the user profiles will be much simpler.
The disadvantages of the example include that it cannot define an access control granularity as good as the file level, and actually it is a partition level access control.
Implementation method example 3: Encapsulated access control Both of the previous two examples are compatible with the current USB mass storage class specification, but they both map files to logical addresses (blocks or sectors) . Neither of them knows the boundary of a given file, because they just interpret action requests from the operating system. If we need semantic information of files, the USB mass storage class specification and the USB storage device itself need to be extended.
In this example, the USB storage device can be a standalone storage device with its own file system format. It can be any file system that supports access control, such as NTFS, ext2, etc. And, the storage device is formatted before sold to customers.
After the storage device is connected to a computer via a USB interface, the operating system will exchange information with the disk through a self-defined protocol and customized device drivers.
Fig. 5 shows a schematic diagram of a way in which the USB storage device interacts with a host computer in this implementation method example. The USB storage device is connected to the host computer via the USB interface. The data from the storage media are packed on the USB storage device so as to be supplied to the host computer via the USB interface. A special driver provided on the host computer unpacks the data from the USB storage device.
For example, the Server Message Block (SMB) protocol can be used to transfer data and file system structures and encapsulate them in a USB protocol. After it is unpacked by the driver, the operating system can handle them with their virtual file system sub-system, because the SMB can be well supported by Windows series and Linux™ operating systems. (Linux is a registered trademark of Linux Torvalds, in the United States and other countries) .
In this example, since a file system is provided on the USB storage device, the USB storage device can know the start addresses and the end addresses (i.e. a set of physical addresses) of files stored thereon, thereby the granularity of performing the access control can be set to file. The access rights of respective users to the respective files are stored on the storage device as the ACL. The aspects of authentication, access control and so on are also the same as those of the first example, and just the granularity of objects is the storage area of an entire file, instead of a sector.
An advantage of the example is that it can support more complex access control policies, such as the role based access control policy. But the USB storage device is actually an alien computer to the host to which it is connected. The host cannot handle the USB storage device as it handles other USB storage devices. And, its requirement of a special driver is another problem. However, none of these problems is a technical problem, in other words, these problems can be solved by those skilled in the art, and just some new elements are needed to be introduced at the time of usage. These contents will not be described in detail here, since they do not relate to the essence of the invention.
Although the detailed embodiments of the invention are given in the above examples with reference to attached drawings, it's still possible for those skilled in the art to mkae various changes or modifications without departing from the essence and the scope of the invention. For example, one may use a challenge-response mechanism for authentication, instead of the user-password scheme. Several key points as follows in the concept of the invention are described in the above examples :
Y Access control module, which resides in the USB storage device, performs the access control checks, and returns results of the check to the host. The module may be a standalone chip or a circuit, or just a segment of codes stored in the USB storage device and executed on a processor.
Y Access control list (ACL) , which is stored in some particular position in the USB storage device, and can be in any format.
Y Authentication, the host may require the user to provide authentication information while the USB storage device is plugged into the host.
Y Message exchange mechanism, which exchanges the authentication information between the host and the USB storage device. It may be an extension of the USB storage class specification, or just use the specification directly, or use other protocols encapsulated by the USB protocol .
Three examples of implementing the invention have been described hereinbefore. In the following, a more systematic and thorough description is made to the USB storage device and the access control method thereof of the preferred embodiment of invention with reference to Fig. 6.
Fig. 6 shows respective components in the USB storage device of the preferred embodiment of the invention, by way of example. As shown in Fig. 6, the USB storage device according to the embodiment includes an information storage media, an access control module, a mapping means, an access right setting means, an authentication means, a valid user managing means, an internal user identifier (ID) assigning means, a user policy profile setting means, and a special interface. What is shown in Fig. 6 is an exemplary structure for implementing the access control of the invention. According to the description herein, those skilled in the art can completely think of many other implementation structures to implement the access control methods of the present invention. As described above, to perform the access control, the access control module must be provided on the USB storage device. In this way, the access control can be performed independent of the operating system of the host. The access control module may be a standalone chip newly added to the USB storage device, or may be realized by executing corresponding codes stored in the USB storage device by an existing processor of the USB storage device .
In order to facilitate the access control management, the storage space of the data storage media on the USB storage device is divided into at least one data storage entity. This can be achieved by providing the mapping means on the USB storage device. The mapping means maps logical address segments on the data storage media into data storage entities. The data storage entity mentioned here may be a basic storage unit such as a sector on the data storage media of the USB storage device, as described in the above implementation method example 1; or a larger logical block divided manually, such as a partition, as described in the above implementation method example 2. That is, the mapping means maps a sector or a partition on the data storage media into the data storage entity which is the unit of performing the access control in the invention. Alternatively, a file system operating means (not shown in the figure) may be provided on the USB storage device, thereby providing a file system on said USB storage device. This file system describes a set of physical addresses occupied by respective files stored in the data storage media. Thus, the USB storage device can know the boundaries of the files, and accordingly, the storage space on the data storage media which is occupied by each file can be regarded as one data storage entity, as described in the above implementation method example 3.
To control users' access to the USB storage device, the invention set some valid users firstly, and then set access rights of the respective valid users to the respective data storage entities.
By the valid user managing means, valid users who have rights to use the USB storage device can be added or deleted, and authentication information of the valid users is stored on the data storage media of the USB storage device, thereby forming a valid user table (i.e. an access control subject table) . The authentication herein can have a plurality of concrete forms, such as usernames plus passwords, and so on, or other data that can represent the users. The internal user ID assigning means assigns an internal user ID, i.e. an internally-used access control subject identifier, to each valid user. During the operation of the USB storage device, the valid user is represented by the internal user ID. The assignment of the internal user ID can be implemented by adding an internal user ID entry for each valid user in the valid user table.
The access right setting means sets the access right of each valid user to each data storage entity based on the internal user IDs of the valid users, and stores said access right in the data storage media as an access right list. The access right list herein is an important component part of the access control list (ACL) mentioned in previous examples. The access right includes whether it is readable, and whether it is writable. Accordingly, means for setting respectively whether a read and/or write operation can be perform on the data storage entity for each valid user may be included in the access right setting means.
Furthermore, user policy profiles can be set by the user policy profile setting means and stored in the data storage media. Here, the user policy profiles illustrate rules of setting access rights for users in various cases. The user policies may include policies related to default access rights to empty data storage entities, policies related to default access rights to newly written data storage entities, and other similar policies. Accordingly, means for setting these policies (not shown in the figure) may be respectively included in the user policy profile setting means.
Thus, in addition to directly setting the access rights by a privilege user through the access right setting means, in the process that a valid user uses the USB disk, the access right setting means may also automatically set access rights of the respective valid users to the data storage entity accessed by the user who is using the USB storage device according to related operations of the user with reference to the user policy profiles and the valid user table, thereby updating the access right list. For example, as a user policy, it can be set that all valid users have full access rights to empty storage spaces, or only some particular valid users can access the empty storage spaces. Again, for example, it can be set that some users have access rights to read and/or write data storage entities newly written by a certain user.
It can be seen from the above description that, all of the valid user managing means, the user policy profile setting means and the access right setting means need to interact with users to form a corresponding valid user table (i.e. an access control subject table), user policy profiles and an access right list. Interfaces may be provided for them respectively, and their interfaces may also be integrated. In the figure, one special interface is provided for them uniformly by way of example.
Only the privilege user of the USB storage device can modify the valid user table (i.e. the access control subject table), the user policy profiles and the access right list. This can be achieved by storing the access right list, the valid user table and the user policy profiles in special positions on the data storage media, such as some particular sectors, one particular partition, or particular files. The access rights to such special positions are set such that only the privilege user of the USB storage device can access them to perform modifications. Alternatively, the privilege user of the USB storage device may be provided with a special tool which interfaces with the special interface, so that the privilege user modifies the user valid table, the user policy profiles and the access right list using the special tool.
In the case that the valid user table (i.e. the access control subject table) , the user policy profiles and the access right list have been stored in the data storage media of the USB storage device, the access control according to the invention can be performed when a user accesses the USB storage device.
When a user connects the USB storage device to the host via the USB interface and issues an access request for the data storage entity on the data storage media of the USB storage device through the host, the user authentication is firstly performed, and then it is determined whether the user has a right to access the data storage entity.
To perform the user authentication, the authentication means need to acquire the authentication information provided by the user. There are many ways to acquire the authentication information. For example, an input means can be provided on the USB storage device to receive the authentication information input by the user and provide it to the authentication means. The authentication means may also send interface data to the host in response to the access request issued by the user, so as to generate an authentication interface on the host for the user to input the authentication information, and return the authentication information input by the user to said authentication means. Alternatively, it is also possible to make the host used by a user corresponding to the user, obtain certain information that is specific to the host or particular information stored in the host by the user directly from the host, and treat it as the authentication information provided by the user to represent the user. Here, the authentication information can be information like usernames, passwords, and so on, and it can also be any other information that may uniquely represent the user.
After obtaining the authentication information, the authentication means queries the valid user table stored on the data storage media based on the authentication information provided by the user to determine whether the user is a valid user. When it is determined that the user is not a valid user, any access request from the user is denied.
After the user passes the authentication, the access control module queries the access right list based on the internal user identifier of the user, so as to determine whether the user has an access right to the data storage entity he or she requested. Said access control module denies the user's access request for the data storage entity when the user does not have the access right to the data storage entity, and permits the user's access request for the data storage entity when the user has the access right to the data storage entity.
As described above, when the user accesses the data storage entity, the user right setting means can also set the access rights to the data access entities respectively for all valid users in the valid user table according to the user policy profiles, thereby updating the access right list.
So far, the USB storage device and the access control method thereof have been described in detail, wherein since access rights are set for respective data storage entities divided on the data storage media respectively, an access control that is finer than the disk level control access can be achieved, and even the file level access control can be achieved.
The respective means mentioned herein may be a chip or a circuit separately provided on USB storage devices, and they may also be integrated to one chip, alternatively, the respective means mentioned herein can be implemented by executing different code segments by a processor provided on USB storage devices. Although the invention has been shown and described above in detail with reference to its preferred embodiments, those skilled in the art should understand that various modifications can be made in form and detail therein without departing from the spirit and scope of the invention as defined by the following claims.
The scope of the present disclosure includes any novel feature or combination of features disclosed herein. The applicant hereby gives notice that new claims may be formulated to such features or combination of features during prosecution of this application or of any such further applications derived therefrom. In particular, with reference to the appended claims, features from dependent claims may be combined with those of the independent claims and features from respective independent claims may be combined in any appropriate manner and not merely in the specific combinations enumerated in the claims .
For the avoidance of doubt, the term "comprising", as used herein throughout the description and claims is not to be construed as meaning "consisting only of".

Claims

1. An access control method of a Universal Serial Bus (USB) storage device, comprising: providing an access control module on said USB storage device; dividing the storage space on said USB storage device into at least one data storage entity; setting each user's access right to each data storage entity; storing said access right on said USB storage device as an access right list; when the user issues an access request for the data storage entity on said USB storage device through a host connected with said USB storage device via a USB interface, querying said access right list by said access control module, so as to determine whether the user has an access right to the requested data storage entity; and denying the user's access request for the data storage entity by said access control module when the user does not have the access right to the data storage entity, and permitting the user's access request for the data storage entity when the user has the access right to the data storage entity.
2. The access control method of claim 1, further comprising: when the USB storage device is connected with the host, sending interface data from the USB storage device to the host to generate an authentication interface on the host for the user to input authentication information, and providing the authentication information input by the user to said USB storage device, so that said USB storage device determines whether the user has a right to use the USB storage device.
3. The access control method of claim 2, characterized in that, the user information obtained when the USB storage device is connected with the host is invalidated when the USB storage device and the host is disconnected.
4. The access control method of any preceding claim, further comprising: storing the authentication information of valid users that have rights to use the USB storage device on the USB storage device, thereby forming a valid user table; before querying said access right list, querying said valid user table by the USB storage device based on the authentication information provided by the user issuing said access request, so as to determine whether the user is a valid user; and when it is determined that the user is not a valid user, denying any access request of the user by said USB storage device.
5. The access control method of claim 4, further comprising: assigning an internal user identifier to each valid user, wherein said access control module queries the access right list based on the internal user identifier of the user.
6. The access control method of claim 4 or 5, further comprising: storing user policy profiles in said USB storage device, said user policy profiles illustrating the rules of setting access rights for users in various cases.
7. The access control method of claim 6, said user policy profiles comprise at least one of policies related to default access rights to empty data storage entities and policies related to default access rights to newly written data storage entities.
8. The access control method of claim 6 or 7, characterized in that, during the process of using said USB storage device, automatically setting the access rights of the respective valid users to the accessed data storage entity based on the valid user table and the user policy profiles.
9. The access control method of claim 6, characterized in that, the access right list, the valid user table and the user policy profiles are stored in special positions of the USB storage device, and the access rights to said special positions are set to be that only the privilege user of the USB storage device can modify the valid user table, the user policy profiles and the access right list.
10. The access control method of claim 6, characterized in that, a privilege user of the USB storage device modifies the valid user table, the user policy profiles and the access right list through a special tool.
11. The access control method of any preceding claim, further comprising : defining at least one valid user on said USB storage device; saving the information of said valid user in said USB storage device as a valid user table; and determining whether the current user is a valid user according to the valid user table, and denying the user's access request in the case that the user is not a valid user.
12. The access control method of claim 11, further comprising: querying the valid user table based on the information of the user, and obtaining the valid user used during the current USB access session.
13. The access control method of claim 12, said access session is a process between the USB storage device's being connected to the host and its being disconnected from the host.
14. The access control method of any preceding claim, characterized in that, said data storage entities are sectors or partitions on said USB storage device.
15. The access control method of any preceding claim, further comprising : providing a file system on said USB storage device, said file system describing a set of physical addresses of respective files stored on said USB storage device, thereby respectively determining the storage spaces occupied by each file on said USB storage device as different data storage entities .
16. A Universal Serial Bus (USB) storage device, comprising: a data storage media; a mapping means for mapping the logical address segments on the data storage media into data storage entities; an access right setting means for setting each user's access right to each data storage entity, and storing said access right in said data storage media as an access right list; and an access control module which, when the user issues an access request for the data storage entity on said data storage media through a host connected with said USB storage device via a USB interface, queries said access right list, so as to determine whether the user has an access right to the requested data storage entity, wherein said access control module denies the user's access request for the data storage entity when the user does not have the access right to the data storage entity, and permits the user's access request for the data storage entity when the user has the access right to the data storage entity.
17. The USB storage device of claim 16, further comprising: an authentication means for sending interface data to the host in response to the access request issued by the user so as to generate an authentication interface on the host for the user to input authentication information, and returning the authentication information input by the user to said authentication means, wherein said authentication means determines whether the user has a right to use the USB storage device based on said authentication information.
18. The USB storage device of claim 16 or 17, further comprising: a valid user managing means for adding or deleting valid users that have rights to use the USB storage device, and storing the authentication information of the valid users on said data storage media as a valid user table; an authentication means which queries said valid user table based on the authentication information provided by the user issuing said access request to determine whether the user is a valid user, and denies any access request of the user when it is determined that the user is not a valid user.
19. The USB storage device of claim 16, 17 or 18, further comprising: an internal user identifier assigning means for assigning an internal user identifier to each valid user, wherein said access control module queries the access right list based on the internal user identifier of the user.
20. The USB storage device of claim 16, 17, 18 or 19, further comprising: a user policy profile setting means for setting user policy profiles and storing the user policy profiles in said data storage media, said user policy profiles illustrating the rules of setting the access rights for users in various cases.
21. The USB storage device of claim 20, wherein said user policy profile setting means comprises at least one of the following: a means for setting policies related to default access rights to empty data storage entities; a means for setting policies related to default access rights to newly written data storage entities.
22. The USB storage device of claim 20 or 21, characterized in that, during the process of using said USB storage device, said access right setting means automatically sets the access rights of the respective valid users to the accessed data storage entity based on the valid user table and the user policy profiles.
23. The USB storage device of claim 20, 21 or 22, characterized in that, the access right list, the valid user table and the user policy profiles are stored in special positions of the data storage media, and the access rights to said special positions are set to be that only the privilege user of the USB storage devices can modify the valid user table, the user policy profiles and the access right list.
24. The USB storage device of claim 20, 21, 22 or 23, further comprising : a special interface for interfacing with a special tool, so that the privilege user of the USB storage device modifies the valid user table, the user policy profiles and the access right list utilizing said special tool.
25. The USB storage device of any of claims 16 to 24, characterized in that, said mapping means maps the sectors or the partitions on said data storage media into said data storage entities.
26. The USB storage device of any of claims 16 to 25, further comprising : a file system operating means for providing a file system on said USB storage device, said file system describing a set of physical addresses of respective files stored on said data storage media, thus said mapping means mapping the storage spaces occupied by each file on said data storage media into different data storage entities.
PCT/EP2007/050952 2006-02-28 2007-01-31 Universal serial bus (usb) storage device and access control method thereof WO2007099012A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP07704275.2A EP1989653B1 (en) 2006-02-28 2007-01-31 Universal serial bus (usb) storage device and access control method thereof
US12/280,216 US20090300710A1 (en) 2006-02-28 2007-01-31 Universal serial bus (usb) storage device and access control method thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200610051481A CN100580642C (en) 2006-02-28 2006-02-28 Universal serial bus storage device and access control method thereof
CN200610051481.4 2006-02-28

Publications (1)

Publication Number Publication Date
WO2007099012A1 true WO2007099012A1 (en) 2007-09-07

Family

ID=38265144

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2007/050952 WO2007099012A1 (en) 2006-02-28 2007-01-31 Universal serial bus (usb) storage device and access control method thereof

Country Status (5)

Country Link
US (1) US20090300710A1 (en)
EP (1) EP1989653B1 (en)
CN (1) CN100580642C (en)
TW (1) TW200830167A (en)
WO (1) WO2007099012A1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010074817A1 (en) * 2008-12-26 2010-07-01 Sandisk Il Ltd. Method and apparatus for providing access to files based on user identity
US8156297B2 (en) 2008-04-15 2012-04-10 Microsoft Corporation Smart device recordation
US8239395B2 (en) 2008-12-26 2012-08-07 Sandisk Il Ltd. Storage device presenting to hosts only files compatible with a defined host capability
US8239955B2 (en) 2008-03-31 2012-08-07 International Business Machines Corporation System and method for adjusting the security level of a removable medium
CN101520854B (en) * 2008-02-29 2012-12-05 锐迪科微电子(上海)有限公司 Smart memory card, data safety control system and method thereof
GB2515736A (en) * 2013-07-01 2015-01-07 Ibm Controlling access to one or more datasets of an operating system in use
US8943409B2 (en) 2008-12-26 2015-01-27 Sandisk Il Ltd. Storage device managing playable content
WO2021064037A1 (en) * 2019-10-04 2021-04-08 Robert Bosch Gmbh Method, computer program, storage medium, storage means, and system for the use of a shared storage means.

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8117651B2 (en) 2004-04-27 2012-02-14 Apple Inc. Method and system for authenticating an accessory
US7823214B2 (en) 2005-01-07 2010-10-26 Apple Inc. Accessory authentication for electronic devices
US20070067620A1 (en) * 2005-09-06 2007-03-22 Ironkey, Inc. Systems and methods for third-party authentication
US8434127B2 (en) * 2007-02-08 2013-04-30 Nec Corporation Access control system, access control method, electronic device and control program
US10783232B2 (en) 2007-09-27 2020-09-22 Clevx, Llc Management system for self-encrypting managed devices with embedded wireless user authentication
US11190936B2 (en) 2007-09-27 2021-11-30 Clevx, Llc Wireless authentication system
US10181055B2 (en) 2007-09-27 2019-01-15 Clevx, Llc Data security system with encryption
US10778417B2 (en) * 2007-09-27 2020-09-15 Clevx, Llc Self-encrypting module with embedded wireless user authentication
CN101414253B (en) * 2007-10-17 2011-11-23 华为技术有限公司 Method and system for managing authority
US8307131B2 (en) * 2007-11-12 2012-11-06 Gemalto Sa System and method for drive resizing and partition size exchange between a flash memory controller and a smart card
WO2009137371A2 (en) 2008-05-02 2009-11-12 Ironkey, Inc. Enterprise device recovery
US20100077458A1 (en) * 2008-09-25 2010-03-25 Card Access, Inc. Apparatus, System, and Method for Responsibility-Based Data Management
CN101685665B (en) * 2008-09-28 2013-07-10 北京华旗资讯数码科技有限公司 Mobile storage device and connector thereof
US9667257B2 (en) * 2008-09-30 2017-05-30 Infineon Technologies Ag Secure manufacturing of programmable devices
US20100087947A1 (en) * 2008-10-07 2010-04-08 Bor-Yann Chuang Electric control device in an engraving marchine with a usb interface
US20100169395A1 (en) * 2008-12-26 2010-07-01 Sandisk Il Ltd. Device and method for filtering a file system
US9215279B1 (en) 2009-02-17 2015-12-15 Netapp, Inc. Servicing of storage device software components of nodes of a cluster storage system
US8296564B2 (en) * 2009-02-17 2012-10-23 Microsoft Corporation Communication channel access based on channel identifier and use policy
US8914874B2 (en) * 2009-07-21 2014-12-16 Microsoft Corporation Communication channel claim dependent security precautions
US8745365B2 (en) 2009-08-06 2014-06-03 Imation Corp. Method and system for secure booting a computer by booting a first operating system from a secure peripheral device and launching a second operating system stored a secure area in the secure peripheral device on the first operating system
US8683088B2 (en) * 2009-08-06 2014-03-25 Imation Corp. Peripheral device data integrity
WO2011022887A1 (en) * 2009-08-27 2011-03-03 华为终端有限公司 Method and equipment for implementing terminal accessing universal serial bus (usb) devices remotely
US8516236B2 (en) 2009-09-30 2013-08-20 Imation Corp. Portable desktop device and method of host computer system hardware recognition and configuration
US8555376B2 (en) * 2009-09-30 2013-10-08 Imation Corp. Method and system for supporting portable desktop with enhanced functionality
US8266350B2 (en) * 2009-09-30 2012-09-11 Imation Corp. Method and system for supporting portable desktop
US8601532B2 (en) * 2009-09-30 2013-12-03 Imation Corp. Method and system for provisioning portable desktops
JP2013511078A (en) * 2009-11-13 2013-03-28 イメーション コーポレイション Device and method for connection verification
KR101833464B1 (en) * 2010-02-02 2018-02-28 시게이트 테크놀로지 인터내셔날 Method for transferring data between disk device and external storage device and system using the method
GB2479916A (en) * 2010-04-29 2011-11-02 Nec Corp Access rights management of locally held data based on network connection status of mobile device
US8789146B2 (en) * 2011-04-14 2014-07-22 Yubico Inc. Dual interface device for access control and a method therefor
CN102750230B (en) * 2011-04-19 2014-11-12 中国科学院数据与通信保护研究教育中心 Access control system and method of universal serial bus (USB) storage equipment
CN102184143B (en) * 2011-04-25 2013-08-14 深圳市江波龙电子有限公司 Data protection method, device and system for storage device
KR20120123885A (en) * 2011-05-02 2012-11-12 삼성전자주식회사 Storage device authentication apparatus and Storage device comprising authentication apparatus connection means
CN102622311B (en) * 2011-12-29 2015-03-25 北京神州绿盟信息安全科技股份有限公司 USB (universal serial bus) mobile memory device access control method, USB mobile memory device access control device and USB mobile memory device access control system
US20140095822A1 (en) * 2012-10-01 2014-04-03 Trend Micro Incorporated Secure removable mass storage devices
CN103179126A (en) * 2013-03-26 2013-06-26 山东中创软件商用中间件股份有限公司 Access control method and device
CN103246850A (en) * 2013-05-23 2013-08-14 福建伊时代信息科技股份有限公司 Method and device for processing file
CN103716412A (en) * 2014-01-03 2014-04-09 汉柏科技有限公司 Cloud computing system and method and device for controlling user permission through quadratic mapping of cloud computing system
CN104063641B (en) * 2014-06-23 2017-11-24 华为技术有限公司 Hard disk secure access control method and hard disk
CN104410644A (en) * 2014-12-15 2015-03-11 北京国双科技有限公司 Data configuration method and device
US10095875B2 (en) * 2015-08-28 2018-10-09 Vmware, Inc. Multi-level access control for distributed storage systems
CN105447368B (en) * 2015-11-13 2018-09-04 广东欧珀移动通信有限公司 A kind of control method and user terminal of user terminal access permission
CN105516136B (en) * 2015-12-08 2019-05-24 深圳市口袋网络科技有限公司 Right management method, device and system
KR101856930B1 (en) * 2016-08-29 2018-05-11 현대자동차주식회사 Usb communication control method of usb accessory
CN108345782B (en) * 2017-01-25 2021-02-12 杨建纲 Intelligent hardware safety carrier
US10841079B1 (en) * 2017-07-26 2020-11-17 EMC IP Holding Company LLC Data registration-aware storage systems
CN107657152A (en) * 2017-08-21 2018-02-02 深圳市江波龙电子有限公司 A kind of copyright protection method and storage device
CN107358086B (en) * 2017-08-25 2022-05-31 成都悍力鼎科技有限公司 U shield safety management system
CN109756446B (en) * 2017-11-01 2021-07-30 中车株洲电力机车研究所有限公司 Access method and system for vehicle-mounted equipment
FR3081575A1 (en) * 2018-06-21 2019-11-29 Orange PILOTAGE OF A DATA STORAGE DEVICE
CN109002730A (en) * 2018-07-26 2018-12-14 郑州云海信息技术有限公司 A kind of file system directories right management method, device, equipment and storage medium
CN109033775A (en) * 2018-09-03 2018-12-18 东莞华贝电子科技有限公司 A kind of long-range control method and system of access authority
CN109885511A (en) * 2019-01-24 2019-06-14 苏州随闻智能科技有限公司 A kind of method and UVC equipment of UVC device pairing
CN110020549B (en) * 2019-02-19 2020-04-07 阿里巴巴集团控股有限公司 Method, node and storage medium for implementing privacy protection in block chain
CN111737291B (en) * 2020-06-11 2023-07-21 青岛海尔科技有限公司 Method, device and database for inquiring equipment information
CN112565209B (en) * 2020-11-24 2022-04-08 浪潮思科网络科技有限公司 Network element equipment access control method and equipment
CN113127402A (en) * 2021-04-29 2021-07-16 广东湾区智能终端工业设计研究院有限公司 SPI (Serial peripheral interface) access control method, system, computing equipment and storage medium
CN115118736A (en) * 2022-06-27 2022-09-27 西安万像电子科技有限公司 Authority management method and system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050216639A1 (en) 2003-07-24 2005-09-29 Craig Sparer Mobile memory device with integrated applications and online services

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5414852A (en) * 1992-10-30 1995-05-09 International Business Machines Corporation Method for protecting data in a computer system
US7178031B1 (en) * 1999-11-08 2007-02-13 International Business Machines Corporation Wireless security access management for a portable data storage cartridge
US7467290B2 (en) * 2001-10-19 2008-12-16 Kingston Technology Corporation Method and system for providing a modular server on USB flash storage
US6904493B2 (en) * 2002-07-11 2005-06-07 Animeta Systems, Inc. Secure flash memory device and method of operation
SG113483A1 (en) * 2003-10-30 2005-08-29 Ritronics Components S Pte Ltd A biometrics parameters protected usb interface portable data storage device with usb interface accessible biometrics processor
JP4701615B2 (en) * 2004-01-23 2011-06-15 ソニー株式会社 Information storage device
CA2558309A1 (en) * 2004-03-05 2005-09-15 Secure Systems Limited Partition access control system and method for controlling partition access
WO2006021962A2 (en) * 2004-08-27 2006-03-02 Medic4All A.G System of medical information through mobile device
US20060069819A1 (en) * 2004-09-28 2006-03-30 Microsoft Corporation Universal serial bus device
TW200622626A (en) * 2004-12-16 2006-07-01 Genesys Logic Inc Portable digital data storage device
TWI265712B (en) * 2004-12-17 2006-11-01 Carry Computer Eng Co Ltd Storage device having independent storage areas and password protection method thereof
US7721115B2 (en) * 2005-02-16 2010-05-18 Cypress Semiconductor Corporation USB secure storage apparatus and method
JP4704780B2 (en) * 2005-03-24 2011-06-22 株式会社日立製作所 Computer system, storage device, computer software, and administrator authentication method in storage control
JP2006293834A (en) * 2005-04-13 2006-10-26 Hitachi Ltd Storage system, storage device, and log recording method
US20060272027A1 (en) * 2005-05-26 2006-11-30 Finisar Corporation Secure access to segment of data storage device and analyzer
US20060282900A1 (en) * 2005-06-10 2006-12-14 Microsoft Corporation Managing access with resource control lists and resource replication
US7748031B2 (en) * 2005-07-08 2010-06-29 Sandisk Corporation Mass storage device with automated credentials loading
US8528096B2 (en) * 2005-10-07 2013-09-03 Stmicroelectronics, Inc. Secure universal serial bus (USB) storage device and method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050216639A1 (en) 2003-07-24 2005-09-29 Craig Sparer Mobile memory device with integrated applications and online services

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101520854B (en) * 2008-02-29 2012-12-05 锐迪科微电子(上海)有限公司 Smart memory card, data safety control system and method thereof
US8239955B2 (en) 2008-03-31 2012-08-07 International Business Machines Corporation System and method for adjusting the security level of a removable medium
US8156297B2 (en) 2008-04-15 2012-04-10 Microsoft Corporation Smart device recordation
US8166067B2 (en) 2008-12-26 2012-04-24 Sandisk Il Ltd. Method and apparatus for providing access to files based on user identity
US8239395B2 (en) 2008-12-26 2012-08-07 Sandisk Il Ltd. Storage device presenting to hosts only files compatible with a defined host capability
WO2010074817A1 (en) * 2008-12-26 2010-07-01 Sandisk Il Ltd. Method and apparatus for providing access to files based on user identity
CN102227733A (en) * 2008-12-26 2011-10-26 桑迪士克以色列有限公司 Method and apparatus for providing access to files based on user identity
US8943409B2 (en) 2008-12-26 2015-01-27 Sandisk Il Ltd. Storage device managing playable content
US8972426B2 (en) 2008-12-26 2015-03-03 Sandisk Il Ltd. Storage device presenting to hosts only files compatible with a defined host capability
GB2515736A (en) * 2013-07-01 2015-01-07 Ibm Controlling access to one or more datasets of an operating system in use
US9953104B2 (en) 2013-07-01 2018-04-24 International Business Machines Corporation Controlling access to one or more datasets of an operating system in use
US10628489B2 (en) 2013-07-01 2020-04-21 International Business Machines Corporation Controlling access to one or more datasets of an operating system in use
WO2021064037A1 (en) * 2019-10-04 2021-04-08 Robert Bosch Gmbh Method, computer program, storage medium, storage means, and system for the use of a shared storage means.

Also Published As

Publication number Publication date
CN101030175A (en) 2007-09-05
US20090300710A1 (en) 2009-12-03
CN100580642C (en) 2010-01-13
TW200830167A (en) 2008-07-16
EP1989653A1 (en) 2008-11-12
EP1989653B1 (en) 2013-07-31

Similar Documents

Publication Publication Date Title
EP1989653B1 (en) Universal serial bus (usb) storage device and access control method thereof
EP2377063B1 (en) Method and apparatus for providing access to files based on user identity
KR101608110B1 (en) Managing access to an address range in a storage device
EP1946238B1 (en) Operating system independent data management
US9075851B2 (en) Method and apparatus for data retention in a storage system
US8301909B2 (en) System and method for managing external storage devices
US20110246715A1 (en) Method to qualify access to a block storage device via augmentation of the device's controller and firmware flow
JP4521865B2 (en) Storage system, computer system, or storage area attribute setting method
WO2012055966A1 (en) Protecting data integrity with storage leases
US20070271472A1 (en) Secure Portable File Storage Device
US8001357B2 (en) Providing a single drive letter user experience and regional based access control with respect to a storage device
WO2009134934A2 (en) Provisioning data storage entities with authorization settings
US10169605B2 (en) Implementing block device extent granularity authorization model processing in CAPI adapters
JP2003345658A (en) Storage centralized management method
JPH10293749A (en) Computer system and access management method therefor
KR101041367B1 (en) Method and apparatus of accessing file or directory in file system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2007704275

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 12280216

Country of ref document: US