示例#1
0
// --------------------------------------------------------------------------
void
der::encode (
 io::output& output,
 integer const& value
)
// --------------------------------------------------------------------------
{
  std::string contents;

  contents.resize( value.MinEncodedSize(CryptoPP::Integer::SIGNED) );
  value.Encode(
   reinterpret_cast<byte*>(const_cast<char*>(contents.data())),
   contents.size(),
   CryptoPP::Integer::SIGNED
  );

  ber::encode_tag(output, value.tag(), false);
  ber::encode_length(output, contents.size());
  output.write(contents);
}