class KeyPair {

  public static KeyPair onlyPublic(final PublicKey publicKey) {
    return new KeyPair(Optional.empty(), publicKey, CryptoEngines.defaultEngine());
  }

  private  KeyPair(
      final Optional<PrivateKey> privateKey, final PublicKey publicKey, CryptoEngine engine);

}