There are several ways to serialize EC public keys, as specified by the
SEC specification. A summary:
*
0x00: The point at infinity
*
0x02 + x_coord: Compressed representation of a point with an even y_coord
*
0x03 + x_coord: Compressed representation of a point with an odd y_coord
*
0x04 + x_coord + y_coord: Uncompressed representation of a point
Up to 0.5.x, bitcoin always used uncompressed EC points (=public keys). Starting with 0.6.0, compressed public keys will be used for new or upgraded wallets.