bytes() :: non_neg_integer()
scalarbytes() :: non_neg_integer()
scalarmult(binary(), binary()) :: {:ok, binary()} | {:error, atom()}
scalarmult_base(binary()) :: {:ok, binary()} | {:error, atom()}