public static SSHData Decode(byte[] Data) { string Tag2; var DataBuffer = new DataBuffer(Data); DataBuffer.Decode(out Tag2); if (Tag2 == SSH_RSA.TagID) { return new SSH_RSA(DataBuffer); } if (Tag2 == SSH_DSS.TagID) { return new SSH_RSA(DataBuffer); } return null; }
public SSH_DSS(DataBuffer DataBuffer) { DataBuffer.Decode(out P); DataBuffer.Decode(out Q); DataBuffer.Decode(out G); DataBuffer.Decode(out Y); }
public SSH_RSA(DataBuffer DataBuffer) { DataBuffer.Decode(out Exponent); DataBuffer.Decode(out Modulus); }
public override byte[] Encode() { var DataBuffer = new DataBuffer(); DataBuffer.Size(Tag); DataBuffer.Size(P); DataBuffer.Size(Q); DataBuffer.Size(G); DataBuffer.Size(Y); DataBuffer.Allocate(); DataBuffer.Encode(Tag); DataBuffer.Encode(P); DataBuffer.Encode(Q); DataBuffer.Encode(G); DataBuffer.Encode(Y); return DataBuffer.Data; }
public override byte[] Encode() { var DataBuffer = new DataBuffer(); DataBuffer.Size(Tag); DataBuffer.Size(Exponent); DataBuffer.Size(Modulus); DataBuffer.Allocate(); DataBuffer.Encode(Tag); DataBuffer.Encode(Exponent); DataBuffer.Encode(Modulus); return DataBuffer.Data; }