Esempio n. 1
0
EC2N::Point EC2N::BERDecodePoint(BufferedTransformation &bt) const
{
	SecByteBlock str;
	BERDecodeOctetString(bt, str);
	Point P;
	if (!DecodePoint(P, str, str.size))
		BERDecodeError();
	return P;
}
Esempio n. 2
0
EC2N::EC2N(BufferedTransformation &bt)
	: m_field(BERDecodeGF2NP(bt))
{
	BERSequenceDecoder seq(bt);
	m_field->BERDecodeElement(seq, m_a);
	m_field->BERDecodeElement(seq, m_b);
	// skip optional seed
	if (!seq.EndReached())
		BERDecodeOctetString(seq, g_bitBucket);
	seq.MessageEnd();
}
Esempio n. 3
0
ECP::ECP(BufferedTransformation &bt)
	: m_fieldPtr(new Field(bt))
{
	BERSequenceDecoder seq(bt);
	GetField().BERDecodeElement(seq, m_a);
	GetField().BERDecodeElement(seq, m_b);
	// skip optional seed
	if (!seq.EndReached())
		BERDecodeOctetString(seq, TheBitBucket());
	seq.MessageEnd();
}
Esempio n. 4
0
File: ecp.cpp Progetto: mentat/nnim
NAMESPACE_END

ECP::ECP(BufferedTransformation &bt)
	: m_fieldPtr(new Field(bt)), m_field(*m_fieldPtr)
{
	BERSequenceDecoder seq(bt);
	m_field.BERDecodeElement(seq, m_a);
	m_field.BERDecodeElement(seq, m_b);
	// skip optional seed
	if (!seq.EndReached())
		BERDecodeOctetString(seq, g_bitBucket);
	seq.MessageEnd();
}