<title>community.crypto.openssl_privatekey_info module – Provide information for OpenSSL private keys — Community.Crypto Collection documentation</title>
<linkrel="next"title="community.crypto.openssl_privatekey_pipe module – Generate OpenSSL private keys without disk access"href="openssl_privatekey_pipe_module.html"/>
<linkrel="prev"title="community.crypto.openssl_privatekey_convert module – Convert OpenSSL private keys"href="openssl_privatekey_convert_module.html"/><!-- extra head elements for Ansible beyond RTD Sphinx Theme -->
</head>
<bodyclass="wy-body-for-nav"><!-- extra body elements for Ansible beyond RTD Sphinx Theme -->
<liclass="toctree-l1"><aclass="reference internal"href="docsite/guide_selfsigned.html">How to create self-signed certificates</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="docsite/guide_ownca.html">How to create a small CA</a></li>
</ul>
<ulclass="current">
<liclass="toctree-l1"><aclass="reference internal"href="acme_account_module.html">community.crypto.acme_account module – Create, modify or delete ACME accounts</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="acme_account_info_module.html">community.crypto.acme_account_info module – Retrieves information on ACME accounts</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="acme_ari_info_module.html">community.crypto.acme_ari_info module – Retrieves ACME Renewal Information (ARI) for a certificate</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="acme_certificate_module.html">community.crypto.acme_certificate module – Create SSL/TLS certificates with the ACME protocol</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="acme_certificate_deactivate_authz_module.html">community.crypto.acme_certificate_deactivate_authz module – Deactivate all authz for an ACME v2 order</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="acme_certificate_renewal_info_module.html">community.crypto.acme_certificate_renewal_info module – Determine whether a certificate should be renewed or not</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="acme_certificate_revoke_module.html">community.crypto.acme_certificate_revoke module – Revoke certificates with the ACME protocol</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="acme_challenge_cert_helper_module.html">community.crypto.acme_challenge_cert_helper module – Prepare certificates required for ACME challenges such as <codeclass="docutils literal notranslate"><spanclass="pre">tls-alpn-01</span></code></a></li>
<liclass="toctree-l1"><aclass="reference internal"href="acme_inspect_module.html">community.crypto.acme_inspect module – Send direct requests to an ACME server</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="certificate_complete_chain_module.html">community.crypto.certificate_complete_chain module – Complete certificate chain given a set of untrusted and root certificates</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="ecs_certificate_module.html">community.crypto.ecs_certificate module – Request SSL/TLS certificates with the Entrust Certificate Services (ECS) API</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="ecs_domain_module.html">community.crypto.ecs_domain module – Request validation of a domain with the Entrust Certificate Services (ECS) API</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="get_certificate_module.html">community.crypto.get_certificate module – Get a certificate from a host:port</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="gpg_keypair_module.html">community.crypto.gpg_keypair module – Generate or delete GPG private and public keys</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="openssh_cert_module.html">community.crypto.openssh_cert module – Generate OpenSSH host or user certificates.</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="openssh_keypair_module.html">community.crypto.openssh_keypair module – Generate OpenSSH private and public keys</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="openssl_csr_info_module.html">community.crypto.openssl_csr_info module – Provide information of OpenSSL Certificate Signing Requests (CSR)</a></li>
<liclass="toctree-l1 current"><aclass="current reference internal"href="#">community.crypto.openssl_privatekey_info module – Provide information for OpenSSL private keys</a><ul>
<liclass="toctree-l1"><aclass="reference internal"href="openssl_privatekey_pipe_module.html">community.crypto.openssl_privatekey_pipe module – Generate OpenSSL private keys without disk access</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="openssl_publickey_module.html">community.crypto.openssl_publickey module – Generate an OpenSSL public key from its private key.</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="openssl_publickey_info_module.html">community.crypto.openssl_publickey_info module – Provide information for OpenSSL public keys</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="openssl_signature_module.html">community.crypto.openssl_signature module – Sign data with openssl</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="openssl_signature_info_module.html">community.crypto.openssl_signature_info module – Verify signatures with openssl</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="x509_certificate_info_module.html">community.crypto.x509_certificate_info module – Provide information of OpenSSL X.509 certificates</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="x509_crl_info_module.html">community.crypto.x509_crl_info module – Retrieve information on Certificate Revocation Lists (CRLs)</a></li>
</ul>
<ul>
<liclass="toctree-l1"><aclass="reference internal"href="gpg_fingerprint_filter.html">community.crypto.gpg_fingerprint filter – Retrieve a GPG fingerprint from a GPG public or private key</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="openssl_csr_info_filter.html">community.crypto.openssl_csr_info filter – Retrieve information from OpenSSL Certificate Signing Requests (CSR)</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="openssl_privatekey_info_filter.html">community.crypto.openssl_privatekey_info filter – Retrieve information from OpenSSL private keys</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="openssl_publickey_info_filter.html">community.crypto.openssl_publickey_info filter – Retrieve information from OpenSSL public keys in PEM format</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="parse_serial_filter.html">community.crypto.parse_serial filter – Convert a serial number as a colon-separated list of hex numbers to an integer</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="to_serial_filter.html">community.crypto.to_serial filter – Convert an integer to a colon-separated list of hex numbers</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="x509_certificate_info_filter.html">community.crypto.x509_certificate_info filter – Retrieve information from X.509 certificates in PEM format</a></li>
<liclass="toctree-l1"><aclass="reference internal"href="x509_crl_info_filter.html">community.crypto.x509_crl_info filter – Retrieve information from X.509 CRLs in PEM format</a></li>
</ul>
<ul>
<liclass="toctree-l1"><aclass="reference internal"href="gpg_fingerprint_lookup.html">community.crypto.gpg_fingerprint lookup – Retrieve a GPG fingerprint from a GPG public or private key file</a></li>
</ul>
<!-- extra nav elements for Ansible beyond RTD Sphinx Theme -->
<liclass="breadcrumb-item active">community.crypto.openssl_privatekey_info module – Provide information for OpenSSL private keys</li>
<liclass="wy-breadcrumbs-aside">
<!-- User defined GitHub URL -->
<ahref="https://github.com/ansible-collections/community.crypto/edit/main/plugins/modules/openssl_privatekey_info.py?description=%23%23%23%23%23%20SUMMARY%0A%3C!—%20Your%20description%20here%20–%3E%0A%0A%0A%23%23%23%23%23%20ISSUE%20TYPE%0A-%20Docs%20Pull%20Request%0A%0A%2Blabel:%20docsite_pr"class="fa fa-github"> Edit on GitHub</a>
<h1>community.crypto.openssl_privatekey_info module – Provide information for OpenSSL private keys<aclass="headerlink"href="#community-crypto-openssl-privatekey-info-module-provide-information-for-openssl-private-keys"title="Link to this heading"></a></h1>
<p>This module is part of the <aclass="reference external"href="https://galaxy.ansible.com/ui/repo/published/community/crypto/">community.crypto collection</a> (version 2.21.0).</p>
<p>It is not included in <codeclass="docutils literal notranslate"><spanclass="pre">ansible-core</span></code>.
To check whether it is installed, run <codeclass="code docutils literal notranslate"><spanclass="pre">ansible-galaxy</span><spanclass="pre">collection</span><spanclass="pre">list</span></code>.</p>
You need further requirements to be able to use this module,
see <aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-requirements"><spanclass="std std-ref">Requirements</span></a> for details.</p>
<p>To use it in a playbook, specify: <codeclass="code docutils literal notranslate"><spanclass="pre">community.crypto.openssl_privatekey_info</span></code>.</p>
<h2><aclass="toc-backref"href="#id1"role="doc-backlink">Synopsis</a><aclass="headerlink"href="#synopsis"title="Link to this heading"></a></h2>
<ulclass="simple">
<li><p>This module allows one to query information on OpenSSL private keys.</p></li>
<li><p>In case the key consistency checks fail, the module will fail as this indicates a faked private key. In this case, all return variables are still returned. Note that key consistency checks are not available all key types; if none is available, <codeclass="ansible-value docutils literal notranslate"><spanclass="pre">none</span></code> is returned for <codeclass="ansible-return-value docutils literal notranslate"><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-return-key-is-consistent"><spanclass="std std-ref"><spanclass="pre">key_is_consistent</span></span></a></code>.</p></li>
<li><p>It uses the cryptography python library to interact with OpenSSL.</p></li>
</ul>
</section>
<sectionid="requirements">
<spanid="ansible-collections-community-crypto-openssl-privatekey-info-module-requirements"></span><h2><aclass="toc-backref"href="#id2"role="doc-backlink">Requirements</a><aclass="headerlink"href="#requirements"title="Link to this heading"></a></h2>
<p>The below requirements are needed on the host that executes this module.</p>
<ulclass="simple">
<li><p>cryptography >= 1.2.3</p></li>
</ul>
</section>
<sectionid="parameters">
<h2><aclass="toc-backref"href="#id3"role="doc-backlink">Parameters</a><aclass="headerlink"href="#parameters"title="Link to this heading"></a></h2>
<aclass="ansibleOptionLink"href="#parameter-check_consistency"title="Permalink to this option"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">boolean</span></p>
<p><emclass="ansible-option-versionadded">added in community.crypto 2.0.0</em></p>
</div></td>
<td><divclass="ansible-option-cell"><p>Whether to check consistency of the private key.</p>
<p>In community.crypto < 2.0.0, consistency was always checked.</p>
<p>Since community.crypto 2.0.0, the consistency check has been disabled by default to avoid private key material to be transported around and computed with, and only do so when requested explicitly. This can potentially prevent <aclass="reference external"href="https://en.wikipedia.org/wiki/Side-channel_attack">side-channel attacks</a>.</p>
<p>Note that consistency checks only work for certain key types, and might depend on the version of the cryptography library. For example, with cryptography 42.0.0 and newer consistency of RSA keys can no longer be checked.</p>
<aclass="ansibleOptionLink"href="#parameter-content"title="Permalink to this option"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">string</span></p>
<p><emclass="ansible-option-versionadded">added in community.crypto 1.0.0</em></p>
</div></td>
<td><divclass="ansible-option-cell"><p>Content of the private key file.</p>
<p>Either <codeclass="ansible-option docutils literal notranslate"><strong><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-parameter-path"><spanclass="std std-ref"><spanclass="pre">path</span></span></a></strong></code> or <codeclass="ansible-option docutils literal notranslate"><strong><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-parameter-content"><spanclass="std std-ref"><spanclass="pre">content</span></span></a></strong></code> must be specified, but not both.</p>
<aclass="ansibleOptionLink"href="#parameter-passphrase"title="Permalink to this option"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">string</span></p>
</div></td>
<td><divclass="ansible-option-cell"><p>The passphrase for the private key.</p>
<aclass="ansibleOptionLink"href="#parameter-path"title="Permalink to this option"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">path</span></p>
</div></td>
<td><divclass="ansible-option-cell"><p>Remote absolute path where the private key file is loaded from.</p>
<aclass="ansibleOptionLink"href="#parameter-return_private_key_data"title="Permalink to this option"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">boolean</span></p>
</div></td>
<td><divclass="ansible-option-cell"><p>Whether to return private key data.</p>
<p>Only set this to <codeclass="ansible-value docutils literal notranslate"><spanclass="pre">true</span></code> when you want private information about this key to leave the remote machine.</p>
<p><strong>WARNING:</strong> you have to make sure that private key data is not accidentally logged!</p>
<aclass="ansibleOptionLink"href="#parameter-select_crypto_backend"title="Permalink to this option"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">string</span></p>
</div></td>
<td><divclass="ansible-option-cell"><p>Determines which crypto backend to use.</p>
<p>The default choice is <codeclass="ansible-value docutils literal notranslate"><spanclass="pre">auto</span></code>, which tries to use <codeclass="docutils literal notranslate"><spanclass="pre">cryptography</span></code> if available.</p>
<p>If set to <codeclass="ansible-value docutils literal notranslate"><spanclass="pre">cryptography</span></code>, will try to use the <aclass="reference external"href="https://cryptography.io/">cryptography</a> library.</p>
<td><divclass="ansible-option-cell"><p>Can run in <codeclass="docutils literal notranslate"><spanclass="pre">check_mode</span></code> and return changed status prediction without modifying target.</p>
<td><divclass="ansible-option-cell"><p>Will return details on what has changed (or possibly needs changing in <codeclass="docutils literal notranslate"><spanclass="pre">check_mode</span></code>), when in diff mode.</p>
</div></td>
</tr>
</tbody>
</table>
</section>
<sectionid="see-also">
<h2><aclass="toc-backref"href="#id5"role="doc-backlink">See Also</a><aclass="headerlink"href="#see-also"title="Link to this heading"></a></h2>
<dt><aclass="reference internal"href="openssl_privatekey_pipe_module.html#ansible-collections-community-crypto-openssl-privatekey-pipe-module"><spanclass="std std-ref">community.crypto.openssl_privatekey_pipe</span></a></dt><dd><p>Generate OpenSSL private keys without disk access.</p>
</dd>
<dt><aclass="reference internal"href="openssl_privatekey_info_filter.html#ansible-collections-community-crypto-openssl-privatekey-info-filter"><spanclass="std std-ref">community.crypto.openssl_privatekey_info</span></a> filter plugin</dt><dd><p>A filter variant of this module.</p>
</dd>
</dl>
</div>
</section>
<sectionid="examples">
<h2><aclass="toc-backref"href="#id6"role="doc-backlink">Examples</a><aclass="headerlink"href="#examples"title="Link to this heading"></a></h2>
<divclass="highlight-yaml+jinja notranslate"><divclass="highlight"><pre><span></span><spanclass="p p-Indicator">-</span><spanclass="w"></span><spanclass="nt">name</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">Generate an OpenSSL private key with the default values (4096 bits, RSA)</span>
<spanclass="p p-Indicator">-</span><spanclass="w"></span><spanclass="nt">name</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">Get information on generated key</span>
<h2><aclass="toc-backref"href="#id7"role="doc-backlink">Return Values</a><aclass="headerlink"href="#return-values"title="Link to this heading"></a></h2>
<p>Common return values are documented <aclass="reference external"href="https://docs.ansible.com/ansible/devel/reference_appendices/common_return_values.html#common-return-values"title="(in Ansible vdevel)"><spanclass="xref std std-ref">here</span></a>, the following are the fields unique to this module:</p>
<aclass="ansibleOptionLink"href="#return-can_load_key"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">boolean</span></p>
</div></td>
<td><divclass="ansible-option-cell"><p>Whether the module was able to load the private key from disk.</p>
<aclass="ansibleOptionLink"href="#return-can_parse_key"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">boolean</span></p>
</div></td>
<td><divclass="ansible-option-cell"><p>Whether the module was able to parse the private key.</p>
<aclass="ansibleOptionLink"href="#return-key_is_consistent"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">boolean</span></p>
</div></td>
<td><divclass="ansible-option-cell"><p>Whether the key is consistent. Can also return <codeclass="ansible-value docutils literal notranslate"><spanclass="pre">none</span></code> next to <codeclass="ansible-value docutils literal notranslate"><spanclass="pre">true</span></code> and <codeclass="ansible-value docutils literal notranslate"><spanclass="pre">false</span></code>, to indicate that consistency could not be checked.</p>
<p>In case the check returns <codeclass="ansible-value docutils literal notranslate"><spanclass="pre">false</span></code>, the module will fail.</p>
<pclass="ansible-option-line"><strongclass="ansible-option-returned-bold">Returned:</strong> when <codeclass="ansible-option-value docutils literal notranslate"><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-parameter-check-consistency"><spanclass="std std-ref"><spanclass="pre">check_consistency=true</span></span></a></code></p>
<aclass="ansibleOptionLink"href="#return-private_data"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">dictionary</span></p>
</div></td>
<td><divclass="ansible-option-cell"><p>Private key data. Depends on key type.</p>
<pclass="ansible-option-line"><strongclass="ansible-option-returned-bold">Returned:</strong> success and when <codeclass="ansible-option docutils literal notranslate"><strong><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-parameter-return-private-key-data"><spanclass="std std-ref"><spanclass="pre">return_private_key_data</span></span></a></strong></code> is set to <codeclass="ansible-value docutils literal notranslate"><spanclass="pre">true</span></code></p>
<aclass="ansibleOptionLink"href="#return-public_data"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">dictionary</span></p>
</div></td>
<td><divclass="ansible-option-cell"><p>Public key data. Depends on key type.</p>
<aclass="ansibleOptionLink"href="#return-public_data/curve"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">string</span></p>
</div></td>
<td><divclass="ansible-option-indent-desc"></div><divclass="ansible-option-cell"><p>The curve’s name for ECC.</p>
<pclass="ansible-option-line"><strongclass="ansible-option-returned-bold">Returned:</strong> When <codeclass="ansible-return-value docutils literal notranslate"><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-return-type"><spanclass="std std-ref"><spanclass="pre">type=ECC</span></span></a></code></p>
<aclass="ansibleOptionLink"href="#return-public_data/exponent"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">integer</span></p>
</div></td>
<td><divclass="ansible-option-indent-desc"></div><divclass="ansible-option-cell"><p>The RSA key’s public exponent.</p>
<pclass="ansible-option-line"><strongclass="ansible-option-returned-bold">Returned:</strong> When <codeclass="ansible-return-value docutils literal notranslate"><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-return-type"><spanclass="std std-ref"><spanclass="pre">type=RSA</span></span></a></code></p>
<aclass="ansibleOptionLink"href="#return-public_data/exponent_size"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">integer</span></p>
</div></td>
<td><divclass="ansible-option-indent-desc"></div><divclass="ansible-option-cell"><p>The maximum number of bits of a private key. This is basically the bit size of the subgroup used.</p>
<pclass="ansible-option-line"><strongclass="ansible-option-returned-bold">Returned:</strong> When <codeclass="ansible-return-value docutils literal notranslate"><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-return-type"><spanclass="std std-ref"><spanclass="pre">type=ECC</span></span></a></code></p>
<aclass="ansibleOptionLink"href="#return-public_data/g"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">integer</span></p>
</div></td>
<td><divclass="ansible-option-indent-desc"></div><divclass="ansible-option-cell"><p>The <codeclass="docutils literal notranslate"><spanclass="pre">g</span></code> value for DSA.</p>
<p>This is the element spanning the subgroup of the multiplicative group of the prime field used.</p>
<pclass="ansible-option-line"><strongclass="ansible-option-returned-bold">Returned:</strong> When <codeclass="ansible-return-value docutils literal notranslate"><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-return-type"><spanclass="std std-ref"><spanclass="pre">type=DSA</span></span></a></code></p>
<aclass="ansibleOptionLink"href="#return-public_data/modulus"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">integer</span></p>
<aclass="ansibleOptionLink"href="#return-public_data/p"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">integer</span></p>
</div></td>
<td><divclass="ansible-option-indent-desc"></div><divclass="ansible-option-cell"><p>The <codeclass="docutils literal notranslate"><spanclass="pre">p</span></code> value for DSA.</p>
<p>This is the prime modulus upon which arithmetic takes place.</p>
<pclass="ansible-option-line"><strongclass="ansible-option-returned-bold">Returned:</strong> When <codeclass="ansible-return-value docutils literal notranslate"><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-return-type"><spanclass="std std-ref"><spanclass="pre">type=DSA</span></span></a></code></p>
<aclass="ansibleOptionLink"href="#return-public_data/q"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">integer</span></p>
</div></td>
<td><divclass="ansible-option-indent-desc"></div><divclass="ansible-option-cell"><p>The <codeclass="docutils literal notranslate"><spanclass="pre">q</span></code> value for DSA.</p>
<p>This is a prime that divides <codeclass="docutils literal notranslate"><spanclass="pre">p</span><spanclass="pre">-</span><spanclass="pre">1</span></code>, and at the same time the order of the subgroup of the multiplicative group of the prime field used.</p>
<pclass="ansible-option-line"><strongclass="ansible-option-returned-bold">Returned:</strong> When <codeclass="ansible-return-value docutils literal notranslate"><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-return-type"><spanclass="std std-ref"><spanclass="pre">type=DSA</span></span></a></code></p>
<aclass="ansibleOptionLink"href="#return-public_data/size"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">integer</span></p>
</div></td>
<td><divclass="ansible-option-indent-desc"></div><divclass="ansible-option-cell"><p>Bit size of modulus (RSA) or prime number (DSA).</p>
<pclass="ansible-option-line"><strongclass="ansible-option-returned-bold">Returned:</strong> When <codeclass="ansible-return-value docutils literal notranslate"><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-return-type"><spanclass="std std-ref"><spanclass="pre">type=RSA</span></span></a></code> or <codeclass="ansible-return-value docutils literal notranslate"><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-return-type"><spanclass="std std-ref"><spanclass="pre">type=DSA</span></span></a></code></p>
<aclass="ansibleOptionLink"href="#return-public_data/x"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">integer</span></p>
</div></td>
<td><divclass="ansible-option-indent-desc"></div><divclass="ansible-option-cell"><p>The <codeclass="docutils literal notranslate"><spanclass="pre">x</span></code> coordinate for the public point on the elliptic curve.</p>
<pclass="ansible-option-line"><strongclass="ansible-option-returned-bold">Returned:</strong> When <codeclass="ansible-return-value docutils literal notranslate"><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-return-type"><spanclass="std std-ref"><spanclass="pre">type=ECC</span></span></a></code></p>
<aclass="ansibleOptionLink"href="#return-public_data/y"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">integer</span></p>
</div></td>
<td><divclass="ansible-option-indent-desc"></div><divclass="ansible-option-cell"><p>For <codeclass="ansible-return-value docutils literal notranslate"><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-return-type"><spanclass="std std-ref"><spanclass="pre">type=ECC</span></span></a></code>, this is the <codeclass="docutils literal notranslate"><spanclass="pre">y</span></code> coordinate for the public point on the elliptic curve.</p>
<p>For <codeclass="ansible-return-value docutils literal notranslate"><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-return-type"><spanclass="std std-ref"><spanclass="pre">type=DSA</span></span></a></code>, this is the publicly known group element whose discrete logarithm w.r.t. <codeclass="docutils literal notranslate"><spanclass="pre">g</span></code> is the private key.</p>
<pclass="ansible-option-line"><strongclass="ansible-option-returned-bold">Returned:</strong> When <codeclass="ansible-return-value docutils literal notranslate"><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-return-type"><spanclass="std std-ref"><spanclass="pre">type=DSA</span></span></a></code> or <codeclass="ansible-return-value docutils literal notranslate"><aclass="reference internal"href="#ansible-collections-community-crypto-openssl-privatekey-info-module-return-type"><spanclass="std std-ref"><spanclass="pre">type=ECC</span></span></a></code></p>
<aclass="ansibleOptionLink"href="#return-public_key"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">string</span></p>
</div></td>
<td><divclass="ansible-option-cell"><p>Private key’s public key in PEM format.</p>
<aclass="ansibleOptionLink"href="#return-public_key_fingerprints"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">dictionary</span></p>
</div></td>
<td><divclass="ansible-option-cell"><p>Fingerprints of private key’s public key.</p>
<p>For every hash algorithm available, the fingerprint is computed.</p>
<aclass="ansibleOptionLink"href="#return-type"title="Permalink to this return value"></a><pclass="ansible-option-type-line"><spanclass="ansible-option-type">string</span></p>
<p>Will start with <codeclass="ansible-value docutils literal notranslate"><spanclass="pre">unknown</span></code> if the key type cannot be determined.</p>