laatzen/Common/Hardware/WaterMeter/eRegister/Common.Hardware.WaterMeter.eRegister/Features/ChangeSensusRFEncryptionKey.cs
2025-01-24 12:10:40 +01:00

44 lines
1.0 KiB
C#

namespace Common.Hardware.WaterMeter.eRegister.Features
{
using System;
using Common.Hardware.Ports;
public class ChangeSensusRFEncryptionKey : Pam
{
public ChangeSensusRFEncryptionKey() : base(17, ChangeSensusRFEncryptionKey)
{
}
public ChangeSensusRFEncryptionKey(byte[] encryptionKey) : this()
=> encryptionKey.CopyTo(this.bytes, 1);
public byte[] Key
{
get
{
var key = new byte[16];
Array.Copy(this.bytes, 1, key, 0, 16);
return key;
}
set
{
if (value?.Length == 16)
{
value.CopyTo(this.bytes, 1);
}
}
}
public string HexKey
{
get => BitConverter
.ToString(this.Key)
.Replace("-", string.Empty);
set => this.Key = value.GetEncryptionKey();
}
}
}