Albireo.Otp.Otp.CounterToBytes C# (CSharp) Method

CounterToBytes() private static method

private static CounterToBytes ( long counter ) : byte[]
counter long
return byte[]
        private static byte[] CounterToBytes(long counter)
        {
            Contract.Requires<ArgumentOutOfRangeException>(counter >= 0);
            Contract.Ensures(Contract.Result<byte[]>() != null);

            var result = new List<byte>();

            while (counter != 0)
            {
                result.Add((byte) (counter & 0xFF));
                counter >>= 8;
            }

            for (int i = 0, j = 8 - result.Count; i < j; i++)
            {
                result.Add(0);
            }

            result.Reverse();

            return result.ToArray();
        }