public byte[] DoFinal()
{
int neededLen = bp.GetOutputSize(0);
byte[] outp = new byte[neededLen];
int n = 0;
try {
n = bp.DoFinal(outp, 0);
}
catch {
return outp;
}
if (n != outp.Length) {
byte[] outp2 = new byte[n];
System.Array.Copy(outp, 0, outp2, 0, n);
return outp2;
}
else
return outp;
}