GB2483222A - Accessing a website by retrieving website data stored at separate storage locations - Google Patents

Accessing a website by retrieving website data stored at separate storage locations Download PDF

Info

Publication number
GB2483222A
GB2483222A GB1014135.6A GB201014135A GB2483222A GB 2483222 A GB2483222 A GB 2483222A GB 201014135 A GB201014135 A GB 201014135A GB 2483222 A GB2483222 A GB 2483222A
Authority
GB
United Kingdom
Prior art keywords
web site
data
portions
storage locations
site data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
GB1014135.6A
Other versions
GB201014135D0 (en
GB2483222B (en
Inventor
Iskender Syrgabekov
Yerkin Zadauly
Chokan Laumulin
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Extas Global Ltd
Original Assignee
Extas Global Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Extas Global Ltd filed Critical Extas Global Ltd
Priority to GB1805305.8A priority Critical patent/GB2560449A/en
Priority to GB1014135.6A priority patent/GB2483222B/en
Publication of GB201014135D0 publication Critical patent/GB201014135D0/en
Publication of GB2483222A publication Critical patent/GB2483222A/en
Application granted granted Critical
Publication of GB2483222B publication Critical patent/GB2483222B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • G06F17/30067
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

A method and system for retrieving a web site formed from portions of web site data stored at a plurality of separate storage locations 50 retrieves the website data from a subset of the portions of web site data. A request for web site data is received and information specifying the separate storage locations 50 storing each portion of the web site data in the subset of portions is received in response to the request. A central server 30 preferably monitors and tests the availability and connectivity of the separate storage locations 50 and records this information in a database 40, the storage locations 50 being identified by their IP addresses or other suitable identifier. A software application running on a web server 20 preferably divides any data to be stored into separate datasets which are then forwarded to the separate storage locations 50.

Description

ACCESSING A WEB SITE
Field of the Invention
The present invention relates to a system and method for providing access to a web site.
Bac)çground of the Invention The conventional method for retrieving content, such as web pages and other resources, over the Internet is to enter the uniform resource locator (URL) of that resource into a web browser. A web server mapped to the URL receives this request and provides the requested resource over the Internet to the web browser. The web page or requested resource may be stored or may be generated upon request using server-side scripting and website data stored at the web server or other locations. In any case, it is the web server that provides the requested resource to the web browser.
A web server provides information about a web site including its internal content, links with other files and resources. This information may be associated with a fixed where it is stored. A user, knowing a particular URL, makes a call to the web server and receives in response, a package of information, including details of the internal content, links and other data objects forming the web site.
Where the requested resource or website contains sensitive or secret information then this may be provided in an encrypted form and decrypted at the web browser. The web browser may also direct its requests via a proxy server.
However, even when encryption is used, receipt of data at the browser presents a security risk, especially as this data is usually provided by a third-party Internet service provider (ISP) as the conduit of the data.
Furthermore, the data forming the website or requested resource needs to be stored securely to prevent outages or attacks. Such highly reliable storage facilities may be expensive and vulnerable to data loss.
Therefore, there is required a website hosting system and method that overcomes these problems.
Summary of the Invention
In accordance with a first aspect of the present invention there is provided a method of retrieving a web site formed from portions of web site data stored at a plurality of separate storage locations, wherein the web site is retrievable from a subset of the portions of web site data, the method comprising the steps of: receiving a request for web site data; and providing in response to the request, information specifying the separate storage locations storing each portion of the web site data in the subset of portions.
This prevents third parties from eavesdropping or intercepting the data or determining what web sites a user has been browsing. As the data forming the web site, web pages or other requested resource is located across remote separate storage locations this improves data availability as missing portions of the web site data may be recovered from the available portions. Optionally, some of the requested web site data may be provided directly or conventionally and some may be provided according to the described method. Furthermore, the method provides resilience against blocking or attacks against the web site.
An attacker or blocker may visit the web site and obtain information specifying the separate storage locations of portions of the web site data. For example, this information may be in the form of a list of IP addresses.
The attacker may then attack or block these IP addresses.
S However, this attack may only result in this particular subset of portions of web site data from becoming unavailable. Other alternative subsets of portions of web site data may remain available to other users who may then receive alternative subsets in response to their own requests for the web site. Furthermore, retrieving the web site may not require all portions in the subset to be successfully retrieved (i.e. by providing additional redundancy) . Therefore, the different subsets may, for example, contain common members. The separate storage locations may be remote from one another, for example.
Information about the web site, may be located in a numerous storage locations. The storage locations may be distributed and may also be different kinds of servers across a network such as the Internet.
The information specifying the storage locations may be stored separately as a particular resource and may also be distributed.
A user may make a call to the resource in order to receive the information specifying the storage locations.
As a result, the user may make another call to the specified storage locations, optionally with a help of additional software, in order to retrieve portions of data forming the web site.
Advantageously, there may be a very large number of storage locations providing additional resilience in case of damage, destruction or attack. Therefore, the web site may be remain retrievable where a user has access to only some but not necessarily all of the storage locations. For instance, the data forming the web site may be distributed among 10,000 storing locations. In this case, it is enough for a user to have knowledge and/or access to only about 2-3 % the storage locations yet still maintain access to the web site. Therefore, for each userts request, the resource may provide in response a part or subset of the addresses or location of the separate storage locations. Furthermore, the subset of addresses may be changed in a random or other way.
The same user, having made two separate requests or calls, may receive two different subsets of storage locations but both may provide access to the same web site.
This makes it more difficult to locate all of the separate storage locations and block them to other users.
Resilience may be further increased by physically changing the separate storage locations by transferring the portions of web site data to new or different locations.
The need for additional encryption is also reduced.
A user may make the request to a web server located across a network such as the Internet. Alternatively, the request and response may be made on the same machine. This may be implemented, for example, as browser script, a Java applet or a plug-in.
Optionally, the portions of web site data may be generated by diving web site data into the portions of web site data.
Preferably, the method further comprises the step of allocating each of the portions of web site data to a different separate storage location. This further improves both security and robustness of data availability.
Preferably, the information specifying the separate storage locations is internet protocol, IP, addresses.
Other suitable identifiers or ways to locate the portions of web site data may be used.
Optionally, the request to access the web site may be received through a second web site. This provides a more S convenient portal or central information point to provide the location information to users and browsers.
Furthermore, the location of the second web site may remain static, whilst locations of the other components and storage locations may by dynamic.
Optionally, the portions of web site data may be allocated to the separate storage locations randomly. This further improves security.
Preferably, the separate storage locations are physically separate storage locations. Logically separate, but physically attached storage locations nay also be used.
These may include different portions of the same disk drive,
for example.
Optionally, the method may further comprise the step of testing a connection to each separate storage location.
This may ensure that the separate storage locations are available so that data may be moved or replicated when a storage location becomes unavailable.
Optionally, the method may further comprise the step of maintaining a list of storage identifiers corresponding to separate storage locations that pass the connection test.
Optionally, the portions of web site data may be encrypted.
Preferably, dividing web site data into portions of web site data may further comprise the steps of: a) separating the web site data into a plurality of separated subsets; b) generating parity data from the plurality of separated subsets such that any one or more of the plurality of separated subsets are recreateable from the remaining separated subsets and the parity data; and c) repeating steps a and b on each of the plurality of separated subsets and parity data providing the portions of web site data consisting of further separated subsets and further parity data. This provides an improved method of recreating missing or unavailable data.
Optionally, step c) may be repeated for each of the plurality of further separated subsets and further parity data. The division method may be repeated as many times as necessary to improve data availability or to fully utilise the separate storage locations.
Optionally, the web site data may be separated bit-wise or by a combination or groups of bits or bytes. The web site data may be HTML, database, JavaScripts, web forms, text, images, audio, video or any combinations of these data types and others, for example.
Preferably, the parity data may be generated by performing a logical function on the plurality of subsets.
Preferably, the logical function is an exclusive OR.
Optionally, the information provided in response to the communication may further comprise information specifying how to combine the portions of web site data.
Alternatively, a known scheme or format may be used.
Advantageously, the information provided in response to the communication changes at intervals or after a number of requests to specify a different subset of the portions of web site data. For example, the response may change each time a request is made, after a predetermined number of requests (e.g. 1-10, 1-100, 1-1000) or any other number.
The change may also or alternatively be timed (e.g. changing every second, minute, hour, day, etc.) According to a second aspect of the present invention there is provided a method of retrieving a web site formed from portions of web site data stored at a plurality of separate storage locations, wherein the web site is retrievable from a subset of the portions of web site data, the method comprising the steps of: sending a communication requesting the web site; receiving in response to the communication, information specifying the separate storage locations storing portions of web site data in the subset of portions; and combining the portions of web site data.
According to a third aspect of the present invention there is provided a system for providing a web site formed from portions of web site data stored at a plurality of remote separate storage locations, wherein the web site is retrievable from a subset of the portions of web site data, the system comprising: a web server or program located within or external to a user machine and arranged to receive a request for web site data, provide in response to the request, information specifying the separate storage locations storing each portion of the web site data in the subset of portions.
The methods may be executed as computer instructions on a computer, server, hardware, software, firmware, transmitted signals or other suitable means.
It should be noted that any feature described above may be used with any particular aspect or embodiment of the invention.
Brief description of the Figures
The present invention may be put into practice in a number of ways and embodiments will now be described by way S of example only and with reference to the accompanying drawings, in which: FIG. 1 shows a schematic diagram of a system for storing and retrieving web site data, given by way of
example only;
FIG. 2 shows a schematic diagram of a system used to distribute the web site data on the system of Fig. 1; FIG. 3 shows a schematic diagram of the method steps used to distribute the web site data on the system of Fig. 1; FIG. 4 shows a schematic diagram of a portion of the system of Fig. 1 in further detail; and FIG. 5 shows a flow diagram of a method used to retrieve web site data using the system of Fig. 1; It should be noted that the figures are illustrated for simplicity and are not necessarily drawn to scale.
Detailed description of the preferred embodiments
Fig. 1 is a schematic diagram of a web site hosting system 10 for storing and retrieving data and in particular, data used to host a web site. The web site hosting system allows a web server 20 to send and retrieve data to one or more remote separate storage locations 50.
A central server 30 monitors and tests the availability and connectivity of the separate storage locations 50 and records this information in a database 40. The separate storage locations 50 are identified by their Internet protocol (IP) addresses or other suitable identifier. These IP addresses may also be stored in the database 40. For instance, the central server 30 may monitor the period that a storage location 50 is available and the type and speed of connection that may be made to each storage location 50 at any particular time. The testing may be carried out at intervals.
The separate storage locations 50 may be individual and separate personal computers or any other suitable storage machine each having a hard drive 60 or other storage device.
Within each hard drive 60 there may be an allocated portion made available to the storage system 10. The allocated portion 70 may be partitioned or otherwise made separate from the remaining portion of the hard drive 60 and so unavailable for use by the particular personal computer except for the purpose of remote storage. Alternatively, all of the storage available on the hard drive 60 may be available to store web site data. Alternative storage types may include removable media, FLASH memory, tape drives or other types.
The central server 30 sends a message or communication across a network link 90 to the web server 20. The message contains a list of the IP addresses of each available separate storage location 50. Therefore, the web server 20 receives a message containing the IP addresses or other identifier of each available remote separate storage location 50 to which it may send the web site data.
A software application 99 running on the web server 20 divides any data to be stored into separate data sets. Each of these subsets of data may be transmitted across a data link 100 to the allocated portion 70 of the hard drive 60 of a particular personal computer (or other computer or server) making up the separate storage locations 50. Alternatively, -10 -the portions of web site data may be allocated by another device.
The software application running on the web server 20 may determine which particular data subsets to store on each available separate storage location SO. It may not be necessary to use all of the available separate storage locations 50 detailed in the communication sent from the central server 30, especially if the data to be stored is smaller than the available storage space from the total number of the separate storage locations 50. The data subsets may be allocated to the separate storage locations randomly, for instance. The software application may also record information identifying which data subsets were stored on which particular available remote storage locations 50. This information may be stored in the form of a File Allocation Table, FAT, file or in another suitable format. The software application may provide the central server 30 with an indication of its data requirements including size are reliability or availability level.
The data to be stored may be divided in such a way that each individual data subset or portion of web site data cannot be used to recreate the original data (e.g. web site, web page, script, audio, video, purchase information, financial data, etc.) without a minimum number of data subsets. Furthermore, the data may be divided into data subsets such that the loss of any particular data subset (portion of web site data) may be tolerated without resulting in a total loss of original data.
The network and data connections may be made across an extended network 110 such as an intranet or the Internet, for instance. The availability and reliability of each separate storage location 50 may be tested at regular intervals and as further separate storage locations 50 -11 -become available, their details and IP addresses may be added to the database 40 and updated messages may be sent to the web server 20 as this information changes. Furthermore, the integrity of the stored data does not require all S separate storage locations 50 to be available at the same time. Therefore, the reliability of the entire data storage system 10 does not require highly available storage locations, such as those provided by a data centre.
A user may visit a web site from a browsing device 15 (e.g. personal computer) by initially directing their browsing device 15 to the web server 20 using a IJRL of the web server 20 in the usual way. The web server 20 provides the browsing device 15 with the IP addresses of the separate storage devices 50 and any further information necessary to reconstruct the data stored on those separate storage devices 50 (e.g. the FAT table). Using this information, the browsing device 15 retrieves the data subsets from the separate storage devices 50 across connections 120 over the Internet and reconstructs the original data forming the requested web site.
The web server 20 is shown in dotted lines as some or all of its functions may be implemented within other physical or logical devices or may be a virtual web server running at different locations. For example, the user's own machine may contain a program such as a downloaded Java applet, script or plug-in, that responds to the browser request and provides the IP addresses.
The locations of each web site data portion may be changed at intervals (e.g. by the second, minute, hourly, daily or weekly) that may be regular intervals, to enhance security and require the browsing device 15 to query the original URL to obtain the location information each time the web site data is required by a user. Where the location -12 -remains static for longer periods then the user can avoid querying the original URL and rely on previously obtained location information.
The reconstruction procedure may be executed by a S separate software application running on the browsing device or by an applet, script or other suitable computer code provided by the web server 20 or a third party provider located on a separate web server. Should any data subsets be corrupted or otherwise unavailable then a data reconstruction routine or algorithm may be executed to regenerate the missing data. Therefore, reliability and security may be maintained within the web site hosting system 10. The FAT file or other location information package may be used to retrieve and regenerate the data.
Furthermore, the FAT file may also be stored on one or more of the remote separate storage locations 50.
The storage machines making up the remote separate storage locations 50 may be left on and connected to the Internet 110 for extended periods to maintain their availability resulting in increased availability, as monitored by the central server 30 or web server 10 where monitoring is required. Should a separate storage location SO fail an availability test a predetermined number of times or not be available for a predetermined period then testing of that particular separate storage location 50 may cease and its IP address may be removed from the database 40 or marked as unavailable. The owner or administrator of that particular removed separate storage location 50 may be notified of the situation allowing them to improve the availability of this particular location so that the particular remote separate storage location 50 may be returned to the list of available locations at a future time.
-13 -Although Fig. 1 shows a single web server 20 and three separate storage locations 50 there may be many more of each. Furthermore, there may be multiple (or none) central servers 30 each allocated to a group of web servers 20 (or scripts acting as web servers 20) and/or separate storage locations 50.
The central server 30 may allocate to each web server a subset of It' addresses relating to a subset of the available separate storage locations 50. The number of allocated IP addresses may be proportional to the storage requirements of the web server 20 or the web sites that it hosts, with more IP addresses allocated for higher usage web servers 20.
Each allocated portion 70 may be of a different size and information regarding the total capacity, the used capacity and/or the remaining capacity may be determined and stored in the database 40 of the central server 30.
Therefore, allocation of storage may also be made based on the available storage space for each remote separate storage location 50. The owners or administrator(s) of the remote separate storage locations 50 (that may include the web server 20) may change the amount of storage space allocated and these changes may be communicated to the central server or web server 20.
Fig. 2 shows schematically the procedure for uploading a file or data forming the web site. When the web server 20 attempts to upload a file, it has to indicate which file he wants to upload from his machine (or from any reachable location excluding perhaps Internet locations). A client application then starts a series of operations. The first operation may be to encrypt the file. Encryption may or may not be used.
-14 -After file selection, the client application may start to encrypt the file with a given key from the web server (for instance using a string) . Then it starts the dispersal algorithm in order to divide the data in to data subsets, S PKG1, PKG2, PKG3, etc. The dispersal algorithm provide a method to split file into several slices. The dispersal algorithm used may be that described in W02010/026366.
Alternatively, a different server to the web server 20 may upload the portions of web site data.
Fig. 3 shows schematically the operation of the example dispersal algorithm. Each file may be split into three data subsets (including one set of parity data) and each data subset nay then be split a further three times, and so on until the number of required data subsets has been reached or each data subset has reached a particular size. Greater division provides additional security and reliability for recreating the original web site data or file.
After receiving a communication containing the list of available storage locations 50 (or consulting an internal list of storage locations 50 where the communication embodiment is not used) the client application may decide where to store each data subset. If the storage locations are not sufficient to store each data subset (or perhaps if a remote separate storage location is no longer available) then a new IP address representing a further storage location SO may be required. Further separate remote storage locations may be included in a further communication received from the central server 30 or allocated by the web server 20 (or other server) . In this case, the client application may inform the central server 30 that another IP address will be used.
This operation may be considered as a single logical transaction. Therefore, when a storage location 50 (through -15 -its client application) receives a data subset or slice it may need to wait for a signal that all other slices are stored and secured. Failure to receive such a signal after a time out or predetermined period may then indicate that S the data subset should be deleted so that a further attempt may be made.
Successful completion of the logical transaction may further require generation of the FAT file. Otherwise, a complete rollback may be required, such that all data subsets may require deletion if a traceable and retrievable FAT file cannot be confirmed.
This checking procedure may not be required where the separate storage locations are controlled or administered by the web server 20 or other server.
Fig. 4 shows a schematic diagram of a data retrieval process. Data subsets are retrieved from the separate storage locations SO. The browser device 15 is provided with a list (storage list Uid/IP) of the remote storage locations SO in the form of IP addresses 1. The browser device 15 retrieves from the remote storage locations portions of data that may be combined to form the web page, web site or their components as rendered by the browser device. The retrieval of data subsets is indicated schematically by arrows 2. The data subsets are combined or consolidated using an algorithm 3 to form a complete data set and if required, regenerating any missing or damaged data subsets from retrieved parity data and available data subsets according the procedure described in WO2O1O/026366 or other suitable algorithms.
Fig. 5 shows a flow chart describing a method 200 for accessing a web site. The user enters a URL or IP address of the web site at step 210 at their browser device 15. The browser device 15 issues a request to that URL for the web -16 -site or other resource associated with the URL. In response to this request, the web server 20 provides the browser device 15 with the IP addresses of portions of web site data forming the web site or requested resource at step 220. The browser device 15 then retrieves the data subsets forming portions of the web site data at step 240.
The browser device 15 then checks if all of the data subsets or portions of website data have been successfully retrieved from the storage locations 50 identified by the received IP addresses. If there are no missing data subsets then the portions of web site data are combined at step 260.
If there are any missing, unavailable or corrupted data subsets then these may be regenerated at step 270 using a suitable algorithm and the successfully retrieved data subsets and any parity data. The algorithm for regenerating any missing data subsets is described in detail in W020l0/026366, especially in the description of Figs. 1 and 2.
Once combined, the web site may be displayed or the requested resource otherwise rendered or executed on the browser device 15 at step 280.
As will be appreciated by the skilled person, details of the above embodiment may be varied without departing from the scope of the present invention, as defined by the appended claims.
Many combinations, modifications, or alterations to the features of the above embodiments will be readily apparent to the skilled person and are intended to form part of the invention.

Claims (24)

  1. -17 -CLAIMS: 1. A method of retrieving a web site formed from portions of web site data stored at a plurality of separate storage locations, wherein the web site is retrievable from a subset of the portions of web site data, the method comprising the steps of: receiving a request for web site data; and providing in response to the request, information specifying the separate storage locations storing each portion of the web site data in the subset of portions.
  2. 2. The method of claim 1, wherein the portions of web site data are generated by diving web site data into the portions of web site data.
  3. 3. The method of claim 1 or claim 2 further comprising the step of allocating each of the portions of web site data to a different separate storage location.
  4. 4. The method according to any previous claim, wherein the information specifying the separate storage locations is internet protocol, 12, addresses.
  5. 5. The method according to any previous claim, wherein request to access the web site is received through a second web site.
  6. 6. The method of claim 3, wherein the portions of web site data are allocated to the separate storage locations randomly.
    -18 -
  7. 7. The method according to any previous claim, wherein the separate storage locations are physically separate storage locations.
  8. 8. The method according to any previous claim further comprising the step of testing a connection to each separate storage location.
  9. 9. The method of claim 8 further comprising the step of maintaining a list of storage identifiers corresponding to separate storage locations that pass the connection test.
  10. 10. The method according to any previous claim, wherein the portions of web site data are encrypted.
  11. 11. The method according to claim 2, wherein dividing web site data into portions of web site data further comprises the steps of: a) separating the web site data into a plurality of separated subsets; b) generating parity data from the plurality of separated subsets such that any one or more of the plurality of separated subsets are recreateable from the remaining separated subsets and the parity data; and c) repeating steps a and b on each of the plurality of separated subsets and parity data providing the portions of web site data consisting of further separated subsets and further parity data.
  12. 12. The method of claim 11, wherein step c) is repeated for each of the plurality of further separated subsets and further parity data.
    -19 -
  13. 13. The method to claim 11 or claim 12, wherein the web site data is separated bit-wise or separated as a combination of bits.
  14. 14. The method according to any of claim 11-13, wherein the parity data are generated by performing a logical function on the plurality of subsets.
  15. 15. The method of claim 14, wherein the logical function is an exclusive OR.
  16. 16. The method according to any previous claim, wherein the information provided in response to the communication further comprises information specifying how to combine the portions of web site data.
  17. 17. The method according to any previous claim, wherein the information provided in response to the communication changes at intervals or after a number of requests to specify a different subset of the portions of web site data.
  18. 18. A method of retrieving a web site formed from portions of web site data stored at a plurality of separate storage locations, wherein the web site is retrievable from a subset of the portions of web site data, the method comprising the steps of: sending a communication requesting the web site; receiving in response to the communication, information specifying the separate storage locations storing portions of web site data in the subset of portions; and combining the portions of web site data.
    -20 -
  19. 19. A system for providing a web site formed from portions of web site data stored at a plurality of remote separate storage locations, wherein the web site is retrievable from a subset of the portions of web site data, the system Comprising: a web server arranged to receive a request for web site data, provide in response to the request, information specifying the separate storage locations storing each portion of the web site data in the subset of portions.
  20. 20. A method as described herein with reference to any accompanying figure.
  21. 21. A system as described herein with reference to any accompanying figure.
  22. 22. A computer program comprising program instructions that, when executed on a computer cause the computer to perform the method of any of claims 1 to 18 and 20.
  23. 23. A computer-readable medium carrying a computer program according to claim 22.
  24. 24. A computer programmed to perform the method of any of claims 1 to 18 and 20.
GB1014135.6A 2010-08-24 2010-08-24 Accessing a web site Active GB2483222B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
GB1805305.8A GB2560449A (en) 2010-08-24 2010-08-24 Accessing a web site
GB1014135.6A GB2483222B (en) 2010-08-24 2010-08-24 Accessing a web site

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB1014135.6A GB2483222B (en) 2010-08-24 2010-08-24 Accessing a web site

Publications (3)

Publication Number Publication Date
GB201014135D0 GB201014135D0 (en) 2010-10-06
GB2483222A true GB2483222A (en) 2012-03-07
GB2483222B GB2483222B (en) 2018-05-09

Family

ID=42984564

Family Applications (1)

Application Number Title Priority Date Filing Date
GB1014135.6A Active GB2483222B (en) 2010-08-24 2010-08-24 Accessing a web site

Country Status (1)

Country Link
GB (1) GB2483222B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111641864A (en) * 2019-03-01 2020-09-08 腾讯科技(深圳)有限公司 Video information acquisition method, device and equipment

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116506195B (en) * 2023-05-09 2023-10-27 山东云天安全技术有限公司 Webshell file detection method, electronic equipment and medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001061491A1 (en) * 2000-02-18 2001-08-23 Avamar Technologies, Inc. System and method for data protection with multidimensional parity
US20020166079A1 (en) * 2001-01-29 2002-11-07 Ulrich Thomas R. Dynamic data recovery
WO2009048726A1 (en) * 2007-10-09 2009-04-16 Cleversafe, Inc. Ensuring data integrity on a dispersed storage grid
GB2463087A (en) * 2008-09-02 2010-03-03 Extas Global Ltd Data storage and transmission system using authentication codes and parity

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001061491A1 (en) * 2000-02-18 2001-08-23 Avamar Technologies, Inc. System and method for data protection with multidimensional parity
US20020166079A1 (en) * 2001-01-29 2002-11-07 Ulrich Thomas R. Dynamic data recovery
WO2009048726A1 (en) * 2007-10-09 2009-04-16 Cleversafe, Inc. Ensuring data integrity on a dispersed storage grid
GB2463087A (en) * 2008-09-02 2010-03-03 Extas Global Ltd Data storage and transmission system using authentication codes and parity

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111641864A (en) * 2019-03-01 2020-09-08 腾讯科技(深圳)有限公司 Video information acquisition method, device and equipment
CN111641864B (en) * 2019-03-01 2022-05-20 腾讯科技(深圳)有限公司 Video information acquisition method, device and equipment

Also Published As

Publication number Publication date
GB201014135D0 (en) 2010-10-06
GB2483222B (en) 2018-05-09

Similar Documents

Publication Publication Date Title
US10924511B2 (en) Systems and methods of chunking data for secure data storage across multiple cloud providers
US10003650B2 (en) System and method of implementing an object storage infrastructure for cloud-based services
US7953771B2 (en) Virtualized data storage vaults on a dispersed data storage network
US20240176783A1 (en) Systems and methods for secure file management via an aggregation of cloud storage services
US10846411B2 (en) Distributed database systems and methods with encrypted storage engines
US10848560B2 (en) Aggregation and management among a plurality of storage providers
US10404798B2 (en) Systems and methods for third-party policy-based file distribution in an aggregation of cloud storage services
US8171101B2 (en) Smart access to a dispersed data storage network
US20190260821A1 (en) Systems and methods for aggregation of cloud storage
US8185614B2 (en) Systems, methods, and apparatus for identifying accessible dispersed digital storage vaults utilizing a centralized registry
AU2020200461A1 (en) Storage and retrieval of crytographically-split data blocks to/from multiple storage devices
WO2001098952A2 (en) System and method of storing data to a recording medium
US20100162004A1 (en) Storage of cryptographically-split data blocks at geographically-separated locations
CN107528865A (en) The method for down loading and system of file
US20100162003A1 (en) Retrieval of cryptographically-split data blocks from fastest-responding storage devices
EP1811378A2 (en) A computer system, a computer and a method of storing a data file
JP2015511742A (en) Data distribution method on the network
CN108205468A (en) A kind of distributed system and implementation method towards massive video image
GB2483222A (en) Accessing a website by retrieving website data stored at separate storage locations
GB2560449A (en) Accessing a web site
WO2011007141A1 (en) Distributed storage
Zhang et al. A study of the use of idas in cloud storage
AU2018202563A1 (en) Data recovery using error strip identifiers
Karnakanti Reduction of spatial overhead in decentralized cloud storage using IDA

Legal Events

Date Code Title Description
COOA Change in applicant's name or ownership of the application

Owner name: EXTAS GLOBAL LTD.

Free format text: FORMER OWNER: QAZAQ GMBH

732E Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977)

Free format text: REGISTERED BETWEEN 20141016 AND 20141022