mirror of
https://github.com/esiur/esiur-dotnet.git
synced 2025-05-06 19:42:58 +00:00
25 lines
485 B
C#
25 lines
485 B
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Text;
|
|
|
|
namespace Esiur.Security.Integrity;
|
|
|
|
public class NMEA0183
|
|
{
|
|
public static byte Compute(string data)
|
|
{
|
|
return Compute(data, 0, (uint)data.Length);
|
|
}
|
|
|
|
public static byte Compute(string data, uint offset, uint length)
|
|
{
|
|
byte rt = 0;
|
|
var ends = offset + length;
|
|
for (int i = (int)offset; i < ends; i++)
|
|
rt ^= (byte)data[i];
|
|
|
|
return rt;
|
|
}
|
|
}
|
|
|