|
@@ -26,113 +26,6 @@ import NextcloudKit
|
|
|
|
|
|
class NCEndToEndMetadata: NSObject {
|
|
|
|
|
|
- struct E2eeV1: Codable {
|
|
|
-
|
|
|
- struct Metadata: Codable {
|
|
|
- let metadataKeys: [String: String]
|
|
|
- let version: Double
|
|
|
- }
|
|
|
-
|
|
|
- struct Encrypted: Codable {
|
|
|
- let key: String
|
|
|
- let filename: String
|
|
|
- let mimetype: String
|
|
|
- }
|
|
|
-
|
|
|
- struct Files: Codable {
|
|
|
- let initializationVector: String
|
|
|
- let authenticationTag: String?
|
|
|
- let metadataKey: Int
|
|
|
- let encrypted: String
|
|
|
- }
|
|
|
-
|
|
|
- let metadata: Metadata
|
|
|
- let files: [String: Files]?
|
|
|
- }
|
|
|
-
|
|
|
- struct E2eeV12: Codable {
|
|
|
-
|
|
|
- struct Metadata: Codable {
|
|
|
- let metadataKey: String
|
|
|
- let version: Double
|
|
|
- let checksum: String?
|
|
|
- }
|
|
|
-
|
|
|
- struct Encrypted: Codable {
|
|
|
- let key: String
|
|
|
- let filename: String
|
|
|
- let mimetype: String
|
|
|
- }
|
|
|
-
|
|
|
- struct Files: Codable {
|
|
|
- let initializationVector: String
|
|
|
- let authenticationTag: String?
|
|
|
- let encrypted: String
|
|
|
- }
|
|
|
-
|
|
|
- struct Filedrop: Codable {
|
|
|
- let initializationVector: String
|
|
|
- let authenticationTag: String?
|
|
|
- let encrypted: String
|
|
|
- let encryptedKey: String?
|
|
|
- let encryptedTag: String?
|
|
|
- let encryptedInitializationVector: String?
|
|
|
- }
|
|
|
-
|
|
|
- let metadata: Metadata
|
|
|
- let files: [String: Files]?
|
|
|
- let filedrop: [String: Filedrop]?
|
|
|
- }
|
|
|
-
|
|
|
- struct E2eeV20: Codable {
|
|
|
-
|
|
|
- struct Files: Codable {
|
|
|
- let authenticationTag: String
|
|
|
- let filename: String
|
|
|
- let key: String
|
|
|
- let mimetype: String
|
|
|
- let nonce: String
|
|
|
- }
|
|
|
-
|
|
|
- struct ciphertext: Codable {
|
|
|
- let counter: Int
|
|
|
- let deleted: Bool?
|
|
|
- let keyChecksums: [String]?
|
|
|
- let files: [String: Files]?
|
|
|
- let folders: [String: String]?
|
|
|
- }
|
|
|
-
|
|
|
- struct Metadata: Codable {
|
|
|
- let ciphertext: String
|
|
|
- let nonce: String
|
|
|
- let authenticationTag: String
|
|
|
- }
|
|
|
-
|
|
|
- struct Users: Codable {
|
|
|
- let userId: String
|
|
|
- let certificate: String
|
|
|
- let encryptedMetadataKey: String?
|
|
|
- let encryptedFiledropKey: String?
|
|
|
- }
|
|
|
-
|
|
|
- struct Filedrop: Codable {
|
|
|
- let ciphertext: String?
|
|
|
- let nonce: String?
|
|
|
- let authenticationTag: String?
|
|
|
- let users: [String: UsersFiledrop]?
|
|
|
-
|
|
|
- struct UsersFiledrop: Codable {
|
|
|
- let userId: String?
|
|
|
- let encryptedFiledropKey: String?
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- let metadata: Metadata
|
|
|
- let users: [Users]?
|
|
|
- let filedrop: [String: Filedrop]?
|
|
|
- let version: String
|
|
|
- }
|
|
|
-
|
|
|
// --------------------------------------------------------------------------------------------
|
|
|
// MARK: Encode JSON Metadata Bridge
|
|
|
// --------------------------------------------------------------------------------------------
|