public abstract class S3CryptoModuleBase<T extends MultipartUploadContext> extends S3CryptoModule<T>
| 限定符和类型 | 字段和说明 |
|---|---|
protected com.ksyun.ks3.service.encryption.internal.ContentCryptoScheme |
contentCryptoScheme |
protected CryptoConfiguration |
cryptoConfig |
protected com.ksyun.ks3.service.encryption.internal.S3CryptoScheme |
cryptoScheme |
protected static int |
DEFAULT_BUFFER_SIZE |
protected EncryptionMaterialsProvider |
kekMaterialsProvider |
protected org.apache.commons.logging.Log |
log |
protected Map<String,T> |
multipartUploadContexts
Map of data about in progress encrypted multipart uploads.
|
protected S3Direct |
s3 |
| 限定符 | 构造器和说明 |
|---|---|
protected |
S3CryptoModuleBase(S3Direct s3,
EncryptionMaterialsProvider kekMaterialsProvider,
CryptoConfiguration cryptoConfig,
com.ksyun.ks3.service.encryption.internal.S3CryptoScheme cryptoScheme) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
abortMultipartUploadSecurely(AbortMultipartUploadRequest req) |
protected abstract long |
ciphertextLength(long plaintextLength)
Returns the length of the ciphertext computed from the length of the
plaintext.
|
protected com.ksyun.ks3.service.encryption.internal.ContentCryptoMaterial |
createContentCryptoMaterial(Ks3WebServiceRequest req) |
protected PutObjectRequest |
createInstructionPutRequest(String bucketName,
String key,
com.ksyun.ks3.service.encryption.internal.ContentCryptoMaterial cekMaterial) |
protected SecretKey |
generateCEK() |
com.ksyun.ks3.service.encryption.internal.S3CryptoScheme |
getS3CryptoScheme() |
protected long |
plaintextLength(PutObjectRequest request,
ObjectMetadata metadata)
Returns the plaintext length from the request and metadata; or -1 if
unknown.
|
protected com.ksyun.ks3.service.encryption.internal.S3CryptoModuleBase.SecuredCEK |
secureCEK(SecretKey toBeEncrypted,
EncryptionMaterials materials,
Provider cryptoProvider) |
protected PutObjectRequest |
upateInstructionPutRequest(PutObjectRequest request,
com.ksyun.ks3.service.encryption.internal.ContentCryptoMaterial cekMaterial)
Updates put request to store the specified instruction object in S3.
|
protected ObjectMetadata |
updateMetadataWithContentCryptoMaterial(ObjectMetadata metadata,
File file,
com.ksyun.ks3.service.encryption.internal.ContentCryptoMaterial instruction) |
protected PutObjectRequest |
wrapWithCipher(PutObjectRequest request,
com.ksyun.ks3.service.encryption.internal.ContentCryptoMaterial cekMaterial)
Returns a request that has the content as input stream wrapped with a
cipher, and configured with some meta data and user metadata.
|
completeMultipartUploadSecurely, copyPartSecurely, getObjectSecurely, getObjectSecurely, initiateMultipartUploadSecurely, putObjectSecurely, uploadPartSecurelyprotected static final int DEFAULT_BUFFER_SIZE
protected final EncryptionMaterialsProvider kekMaterialsProvider
protected final CryptoConfiguration cryptoConfig
protected final org.apache.commons.logging.Log log
protected final com.ksyun.ks3.service.encryption.internal.S3CryptoScheme cryptoScheme
protected final com.ksyun.ks3.service.encryption.internal.ContentCryptoScheme contentCryptoScheme
protected final Map<String,T extends MultipartUploadContext> multipartUploadContexts
protected final S3Direct s3
protected S3CryptoModuleBase(S3Direct s3, EncryptionMaterialsProvider kekMaterialsProvider, CryptoConfiguration cryptoConfig, com.ksyun.ks3.service.encryption.internal.S3CryptoScheme cryptoScheme)
protected abstract long ciphertextLength(long plaintextLength)
plaintextLength - a non-negative numberpublic final void abortMultipartUploadSecurely(AbortMultipartUploadRequest req)
abortMultipartUploadSecurely 在类中 S3CryptoModule<T extends MultipartUploadContext>protected final ObjectMetadata updateMetadataWithContentCryptoMaterial(ObjectMetadata metadata, File file, com.ksyun.ks3.service.encryption.internal.ContentCryptoMaterial instruction)
protected final com.ksyun.ks3.service.encryption.internal.ContentCryptoMaterial createContentCryptoMaterial(Ks3WebServiceRequest req)
protected final SecretKey generateCEK()
protected final com.ksyun.ks3.service.encryption.internal.S3CryptoModuleBase.SecuredCEK secureCEK(SecretKey toBeEncrypted, EncryptionMaterials materials, Provider cryptoProvider)
protected final PutObjectRequest wrapWithCipher(PutObjectRequest request, com.ksyun.ks3.service.encryption.internal.ContentCryptoMaterial cekMaterial)
protected final long plaintextLength(PutObjectRequest request, ObjectMetadata metadata)
public final com.ksyun.ks3.service.encryption.internal.S3CryptoScheme getS3CryptoScheme()
protected final PutObjectRequest upateInstructionPutRequest(PutObjectRequest request, com.ksyun.ks3.service.encryption.internal.ContentCryptoMaterial cekMaterial)
request - The put request for the original object to be stored in S3.cekMaterial - The instruction object to be stored in S3.protected final PutObjectRequest createInstructionPutRequest(String bucketName, String key, com.ksyun.ks3.service.encryption.internal.ContentCryptoMaterial cekMaterial)
Copyright © 2024. All rights reserved.