package io.airlift.airship.coordinator.auth.ssh;
import java.math.BigInteger;
import java.security.interfaces.DSAParams;
import java.security.interfaces.DSAPrivateKey;
import java.security.spec.DSAParameterSpec;
public class PemDsaPrivateKey
implements DSAPrivateKey
{
private final String pem;
private final DSAParams dsaParams;
private final BigInteger x;
public PemDsaPrivateKey(String pem, BigInteger p, BigInteger q, BigInteger g, BigInteger x)
{
this(pem, new DSAParameterSpec(p, q, g), x);
}
public PemDsaPrivateKey(String pem, DSAParams dsaParams, BigInteger x)
{
this.pem = pem;
this.dsaParams = dsaParams;
this.x = x;
}
@Override
public String getAlgorithm()
{
return "DSA";
}
@Override
public String getFormat()
{
return "pem";
}
@Override
public byte[] getEncoded()
{
return pem.getBytes();
}
@Override
public DSAParams getParams()
{
return dsaParams;
}
@Override
public BigInteger getX()
{
return x;
}
}