|
|
|
@ -186,6 +186,7 @@ public enum Service {
|
|
|
|
|
private static final ObjectMapper objectMapper = new ObjectMapper(); |
|
|
|
|
|
|
|
|
|
private static final String encryptedDataPrefix = "qortalEncryptedData"; |
|
|
|
|
private static final String encryptedGroupDataPrefix = "qortalGroupEncryptedData"; |
|
|
|
|
|
|
|
|
|
Service(int value, boolean requiresValidation, Long maxSize, boolean single, boolean isPrivate, List<String> requiredKeys) { |
|
|
|
|
this.value = value; |
|
|
|
@ -221,10 +222,10 @@ public enum Service {
|
|
|
|
|
// Validate private data for single file resources
|
|
|
|
|
if (this.single) { |
|
|
|
|
String dataString = new String(data, StandardCharsets.UTF_8); |
|
|
|
|
if (this.isPrivate && !dataString.startsWith(encryptedDataPrefix)) { |
|
|
|
|
if (this.isPrivate && !dataString.startsWith(encryptedDataPrefix) && !dataString.startsWith(encryptedGroupDataPrefix)) { |
|
|
|
|
return ValidationResult.DATA_NOT_ENCRYPTED; |
|
|
|
|
} |
|
|
|
|
if (!this.isPrivate && dataString.startsWith(encryptedDataPrefix)) { |
|
|
|
|
if (!this.isPrivate && (dataString.startsWith(encryptedDataPrefix) || dataString.startsWith(encryptedGroupDataPrefix))) { |
|
|
|
|
return ValidationResult.DATA_ENCRYPTED; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|