internal static byte[] BuildEccPublicBlob(string algorithm, BigInteger x, BigInteger y)
        {
            BCryptNative.KeyBlobMagicNumber number;
            int num;

            BCryptNative.MapAlgorithmIdToMagic(algorithm, out number, out num);
            byte[] src     = ReverseBytes(FillKeyParameter(x.ToByteArray(), num));
            byte[] buffer2 = ReverseBytes(FillKeyParameter(y.ToByteArray(), num));
            byte[] dst     = new byte[(8 + src.Length) + buffer2.Length];
            Buffer.BlockCopy(BitConverter.GetBytes((int)number), 0, dst, 0, 4);
            Buffer.BlockCopy(BitConverter.GetBytes(src.Length), 0, dst, 4, 4);
            Buffer.BlockCopy(src, 0, dst, 8, src.Length);
            Buffer.BlockCopy(buffer2, 0, dst, 8 + src.Length, buffer2.Length);
            return(dst);
        }