Upload Checksumming/Validation & Storage Region Limits

Hi all,

I have a few brief questions I was unable to find answers to in the forum, the whitepaper, or other documentation on the Storj website:

  1. While Storj offers a variety of means of ensuring file integrity once it’s been uploaded to the S3 gateway, is there any sort of validation that the data being received by the S3 gateway are identical to the source file being uploaded (and not, for example, being corrupted in transit)? For example, Amazon S3’s UploadPart request documentation states, “To ensure that data is not corrupted traversing the network, specify the ‘Content-MD5’ header in the upload part request. Amazon S3 checks the part data against the provided MD5 value. If they do not match, Amazon S3 returns an error. If the upload request is signed with Signature Version 4, then AWS S3 uses the ‘x-amz-content-sha256’ header as a checksum instead of ‘Content-MD5’.” – does this same check also occur when uploading to the Storj S3 gateway?
  2. Is there any way to exclude data from being stored in a specific geographic region (say the Western US/California)? As an example, if a user is using Storj to store data for disaster recovery, it would be valuable to specify that data should be stored in nodes distant from the user’s location to avoid a large disaster (say a large earthquake, hurricane, civil unrest or conflict, etc.) from potentially affecting storage nodes holding that data as well. (This is perhaps more of a concern with centralized data storage, but might be handy even with a decentralized set of storage nodes.)
  3. Related to the previous item, is it possible to specify that data be stored on nodes in a specific region (for example, the European Union) to comply with regulatory requirements?

Thank you.

If you uploaded files using GatewayMT, you may get checksum from ETags,

You may see implemented methods there:

Yes, it may be possible, but availability and other questions you need to discuss with sales.

Unlikely. In a Global Storj Network each piece of every segment of the file is stored on independent nodes, not in a single place, so the durability is much higher than any centralized storage solution.

Yes, it’s possible and available, however, you need to contact sales anyway.

Excellent, thank you.

For those reading this, GatewayMT is the Storj S3 gateway (took me a minute or two to recall that). In short, if you upload files using the S3 gateway then MD5 checksums will be used in the same way that they work at S3. I confirmed this by manually uploading files with specified part sizes and verified the checksums using the method described here. It’s reassuring that uploaded data is verified in transit between me and Storj.

Thank you for answering my other questions. Your answer, as well as some additional testing has me reassured that the standard methods of selecting storage nodes will be sufficient.

1 Like

Actually, you can also use your own-hosted Storj S3 gateway, so it’s not only our Gateway-MT.
In that case you will not use a server-side encryption by the way, unlike using Storj-hosted S3-compatible Gateway (Gateway-MT).

1 Like