public static ulong ToULong(string hex) { var bytes = ToBytes(hex); bytes = ByteManipulator.BigEndianTruncate(bytes, 8); if (BitConverter.IsLittleEndian) { bytes = bytes.Reverse().ToArray(); } return(BitConverter.ToUInt64(bytes)); }
public LargeInteger(byte[] bytes) { if (bytes != null) { if (bytes[0] > 127) { bytes = ByteManipulator.BigEndianTruncate(bytes, bytes.Length + 1); //add big endian padding to get only positive numbers } if (BitConverter.IsLittleEndian) { bytes = bytes.Reverse().ToArray(); } value = IntegerConverter.FromByteArray(bytes); } else { value = 0; } }