mirror of
https://github.com/bitwarden/mobile
synced 2026-01-09 03:53:15 +00:00
* PM-115 Added new cipher key and encryption/decryption mechanisms on cipher * PM-115 fix format * PM-115 removed ForceKeyRotation from new cipher encryption model given that another approach will be taken * [PM-1690] Added minimum server version restriction to cipher key encryption (#2463) * PM-1690 added minimum server version restriction to cipher key encryption and also change the force key rotation flag * PM-1690 Updated min server version for new cipher encryption key and fixed configService registration * PM-1690 removed forcekeyrotation * PM-115 Temporarily Changed cipher key new encryption config to help testing (this change should be reseted eventually) * PM-2456 Fix attachment encryption on new cipher item encryption model (#2556) * PM-2531 Fix new cipher encryption on adding attachments on ciphers with no item level key (#2559) * PM-115 Changed temporarily cipher key encryption min server version to 2023.6.0 to test * PM-115 Reseted cipher key encryption minimum server version to 2023.5.0 and disable new cipher key on local cipher creation * Added Key value to the cipher export model (#2628) * Update Constants.cs Updated minimum encryption server version to 2023.9.0 so QA can test its behavior * PM-115 Fix file format * PM-115 Changed new encryption off and minimum new encryption server version to 2023.8.0 for testing purposes * PM-115 Changed CIpher key encryption minimum server version to 2023.9.0 * PM-3737 Remove suffix on client version sent to server (#2779) * PM-115 QA testing server min version and enable new cipher key encryption * PM-115 Disable new cipher encryption creation and change minimum server encryption version to 2023.9.1 --------- Co-authored-by: aj-rosado <109146700+aj-rosado@users.noreply.github.com>
54 lines
1.3 KiB
C#
54 lines
1.3 KiB
C#
using System.Collections.Generic;
|
|
using System.Threading.Tasks;
|
|
using Bit.Core.Enums;
|
|
using Bit.Core.Models.Data;
|
|
using Bit.Core.Models.View;
|
|
|
|
namespace Bit.Core.Models.Domain
|
|
{
|
|
public class Field : Domain
|
|
{
|
|
private HashSet<string> _map = new HashSet<string>
|
|
{
|
|
"Name",
|
|
"Value"
|
|
};
|
|
|
|
public Field() { }
|
|
|
|
public Field(FieldData obj, bool alreadyEncrypted = false)
|
|
{
|
|
Type = obj.Type;
|
|
LinkedId = obj.LinkedId;
|
|
BuildDomainModel(this, obj, _map, alreadyEncrypted);
|
|
}
|
|
|
|
public EncString Name { get; set; }
|
|
public EncString Value { get; set; }
|
|
public FieldType Type { get; set; }
|
|
public LinkedIdType? LinkedId { get; set; }
|
|
|
|
public Task<FieldView> DecryptAsync(string orgId, SymmetricCryptoKey key = null)
|
|
{
|
|
return DecryptObjAsync(new FieldView(this), this, _map, orgId, key);
|
|
}
|
|
|
|
public FieldData ToFieldData()
|
|
{
|
|
var f = new FieldData();
|
|
BuildDataModel(this, f, new HashSet<string>
|
|
{
|
|
"Name",
|
|
"Value",
|
|
"Type",
|
|
"LinkedId"
|
|
}, new HashSet<string>
|
|
{
|
|
"Type",
|
|
"LinkedId"
|
|
});
|
|
return f;
|
|
}
|
|
}
|
|
}
|