unsafe static bool CalcDiff(byte[] target )
{
UInt64 m_target = 0;
if (target.Length <= 8)
{
uint tmp = 0;
byte[] str = target;
fixed (byte* in_char = str)
{
if (!fromHex(in_char, 8, (byte*)&tmp))
{
return false;
}
}
m_target = (0xFFFFFFFF/Convert.ToUInt64(tmp));
diff = m_target;
}
else if (target.Length <= 16)
{
m_target = 0;
byte[] str = target;
fixed (byte* in_char = str)
{
if (!fromHex(in_char, 16, (byte*)&m_target) || m_target == 0)
{
return false;
}
diff = m_target;
}
}
else
{
return false;
}
return true;
}