On Fri, Jul 26 2019, Philipp Huebner wrote: > Hi, > > thank you very much for this detailed bugreport! > > I have contacted upstream, and they requested sample certificates > (PEMs) for ejabberd (cert+key) and CA (without key).
Great! Did they really want the host key PEM file? Otherwise I'd send
the real-world certificates I'm using. Instead I've attached all of the
fictitious certificates and keys generated with the script from the
previous mail (four files: root CA cert, intermediate CA cert, and host
cert and key).
On a random machine running Debian buster that hadn't been running
ejabberd before, I've been able to reproduce this bug with the following
steps:
1. apt install ejabberd (debconf questions won't matter).
2. Copy the four attached certs/keys to /etc/ejabberd.
3. Edit ejabberd.yml with:
hosts:
- "jabber.example.com"
certfiles:
- "/etc/ejabberd/ejabberd-cert.pem"
- "/etc/ejabberd/ejabberd-key.pem"
- "/etc/ejabberd/private-int-cert.pem"
- "/etc/ejabberd/private-ca-cert.pem"
4. systemctl restart ejabberd
5. Examine output of the following commands:
gnutls-cli -V \
--x509cafile=/etc/ejabberd/private-ca-cert.pem \
--verify-hostname=jabber.example.com \
-p 5223 \
localhost:5223 < /dev/null
certtool --certificate-info \
--load-certificate /etc/ejabberd/ejabberd-cert.pem
The gnutls-cli command reports:
Status: The certificate is NOT trusted. The signature in the
certificate is invalid.
Earlier in the gnutls-cli output is the signature received on the wire:
sha1:647fe53a3b279f605d2ec7a572c54724f0765285
The certtool command shows a different signature:
sha1:9789b39f3b5bde6a8c5b7dd2c11c25c901199edf
So somehow ejabberd is recomputing the signature when it should match
what's in the PEM file verbatim.
> I tried running your script on Buster, but it fails:
> $ ./gen
> Password: test
> Generating private-int-key.pem...
> Assuming PKCS #8 format...
> ** Note: You may use '--sec-param High' instead of '--bits 4096'
> Generating a 4096 bit RSA private key...
> Generating private-int-req.pem...
> Generating a PKCS #10 certificate request...
> Generating private-int-cert.pem
> Generating a signed certificate...
> error importing CA certificate: public/private-ca-cert.pem: Base64
> unexpected header error.
Oops! I see, I tried this again on buster too. The newer version of
certtool seems to require that serial numbers are not zero (change
"serial = 1" in private-ca.template, and change "crl_number = 1" in
private-ca-crl.template). Another problem with the script is that if a
certtool command fails, it still touches a file with zero bytes, so the
next run doesn't retry generation (i.e. just "rm -rf private public", or
rm the specific zero byte PEM file, and try again).
> With sample PEMs I'll forward this to an issue at
> https://github.com/processone/pkix, you're welcome to do it yourself
> if you like.
Thanks. I do not have a GH account and would appreciate this very much.
> FWIW, upstream also suspects this to be a bug in Erlang itself rather
> than ejabberd, hence I'm CCing the Erlang maintainer(s).
Interesting.
The following is a bit of an anecdote (TL;DR I'm willing to rebuild
newer versions and test if that'll help): while chasing down another
problem (Debian BTS #933042, after having resorted to using a temporary
OpenSSL signed cert, bypassing this bug, and then could not get ejabberd
to accept TLSv1.0 client connections), I happened to notice that the
erlang-p1-tls repository on salsa had already been prepared for the
latest release (which has some commits mentioning more OpenSSL wrapper
code has moved into the C binding). I built erlang-p1-tls 1.1.1 but
didn't have any luck with the issue at hand, so I reverted to the buster
released versions. Perhaps it's worth another try with the newer
erlang-p1-tls package and looking at this certificate issue?
--
Gerald Turner <[email protected]> Encrypted mail preferred!
OpenPGP: 4096R / CA89 B27A 30FA 66C5 1B80 3858 EC94 2276 FDB8 716D
-----BEGIN CERTIFICATE----- MIIJxDCCBaygAwIBAgIBADANBgkqhkiG9w0BAQsFADA6MSYwJAYDVQQDEx1Qcml2 YXRlIENlcnRpZmljYXRlIEF1dGhvcml0eTEQMA4GA1UEChMHRXhhbXBsZTAeFw0x NDA0MDcxNzI3MDBaFw0zODAxMTkwMzE0MDdaMDoxJjAkBgNVBAMTHVByaXZhdGUg Q2VydGlmaWNhdGUgQXV0aG9yaXR5MRAwDgYDVQQKEwdFeGFtcGxlMIIEIjANBgkq hkiG9w0BAQEFAAOCBA8AMIIECgKCBAEA4lsl67c6lIsHKJ+KK+w5FgmGy1Hf5VVp Yx/RWfJPz8pCzdEiiDKB/KWqbQcwHrcSlzhEMQEDcC9fJDwnvWEtiQejg+qq8qIh /XWLNP95Jm9tqudgPphGI0nHwbAokk6famVDLJtntAvFfhBAjgXICjExhPSSwhSS LjLIw5DCl0sm/l6hpn4eB6SUMOZDsRcrOmTWqjjVpMbVGdc1EqudQx/rd4NPmorE a4qW71LEHRwwoKv1mpWd7l4ZThl6plg3QSS+CfwtdHfiJ2fnhQo10m7WH0Ju9QKr wmJtbeBGcoXMK0Fzo8jfcLRpvg6zhu6vh5Y2gi9MtEzHNxxPGddPnWEm4ggE0rWD 6JX2P9b6X3ephb9rAiMOSEyR6jQhIbNVLQojh2EYHVkZM/fI0noU2NtO2MaH2ggB 15wCzn2DBaA2xy7M0phvF5wWiOHyiBnIsA2PFMDD+U73nU7oARqRD1AYMqrWH3cG LGck1RP9I2DUJgToJBzSz7ovHhj11TRPe2bayC6H3wkuEl39Klx3hI81dQdmKBZn a/IoDFR8+VuuKajurVgEZ0wYqcytgY8OYW2qRo5UrDoE8vx/xEEvvxBwXafit6DF iuMsUIA1RPbFbrfpxP4T3/a63wB45dIXho0ErMhgUJTxWqTbc1tWn/FgBuMPPbDN ew0pKv2dlf9oy1jfv/JoA8bPczZWXxk1un2MX1BpIjIN2lNO2Qgzh2i9B4pOR6t7 B58DQG74xCD28JuhMMtW1jlM1B/HgAFFfxVxyCSJSEaicXsJVORRW/xahqxFErj6 fJIDGHKGi7MImf/30xdKVxx5WDbV8/9AJYmBVIYKqkes5Jt8wl7knenVyfxe0RO2 EuQMMVE4eY72kjwOsJ/7vBgYvbXVrFBhnHvx+EVKr7YlXffSfnL02WOtyO9FsnQ/ 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 buTOx0yhiRQ= -----END CERTIFICATE-----
-----BEGIN CERTIFICATE----- MIIHozCCA4ugAwIBAgIEAkoKvjANBgkqhkiG9w0BAQsFADA6MSYwJAYDVQQDEx1Q cml2YXRlIENlcnRpZmljYXRlIEF1dGhvcml0eTEQMA4GA1UEChMHRXhhbXBsZTAe Fw0xNDA0MDcxNzI3MDBaFw0zODAxMTkwMzE0MDdaMEcxMzAxBgNVBAMTKlByaXZh dGUgSW50ZXJtZWRpYXRlIENlcnRpZmljYXRlIEF1dGhvcml0eTEQMA4GA1UEChMH RXhhbXBsZTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALKqO5btbpld rYvonGG3f836j3TfRYFBk3TtGyu7AMsKEZEwLjTY5JJ9SFAHiJaNvK4D2ukYXIXV ryUCDdniPlNzLml5VBjAa58qVO+WX1P0CXv3lo1J7JWbq/u65Mg716w5AXAhF3SU NEp4n4fQmlj+J3NlkMp/RhP3fSF7XwLFgRy/yN5YGf5Kclf7DtwFb28NcC9vzVcc KWaow4SrxmrvBs/ymrn4We2hY+6N89C0B4RtxCyYklk5jT0qYtTKPsDBr+SORYV5 VH2fPdkbNFVYOsFa91ARmEvjLTUSEmAZpdWUyWKWKPaG/f49KbVp1VHdH7YE1K3a A78J3ty6d29AwCrH5uVuvLQFW94uYdMT74s7U80BQBlUbGhc4OsU11t9nvxUklZN KxWpdzUkj2H3GlwoWb2WFT53foYu5U1Lz2OoPs75HEz2VNJyXTT4uZorwRy2cwZK nl8cv6DThKwvOvSxfn2K1LEpnpBUc3IOcDEEC5e1wAD5UR0OoZ7QWZNSuGaG9qHK 7cVnWs1lf0wYcaj2mWJa6DfaEoxRCoaZxdjQHtK1RWV7C0DEdEJ8NsyFriu2BqW4 /i5day9Nw8lZpWDA8AjEZ6zZMOHVR4McWvcQzAYlm1RVAE4eIvMcYzYte4R8eE3k otNntuuPQO+ukmE+RRVk7bkQHgpH+e/TAgMBAAGjgaMwgaAwDwYDVR0TAQH/BAUw AwEB/zAPBgNVHQ8BAf8EBQMDBwQAMB0GA1UdDgQWBBQRJhK/7RDKffmAfwoqu6Hm qHkDCjAfBgNVHSMEGDAWgBSxyJEjgEH0vCGA322JViGMr7B3bzA8BgNVHR8ENTAz MDGgL6AthitodHRwczovL3d3dy5leGFtcGxlLmNvbS94NTA5L3Jldm9jYXRpb24u cGVtMA0GCSqGSIb3DQEBCwUAA4IEAQAj1cfm4RWIJS8Z8s/4BdRF35FT/E44tjtQ 3+i4RvuzbSJRWQ/U4VqQE+ZWWcL9wYV5B3TokNfzhDoQeJfrlRmMnO5Llo4ekMML UT+ZGF92QutVVvNig+kXQLJdBSAMTuHGPUHXUcSYk4wMig9voWnFxtx0wy3o89Oe wVthVeQYxsNQT+PnwFuSlCubIn911hWiTExrULPBnf+suHx+O7xYYK5K1fxu+NOv sCCkwfQmM8SSUWD+6rh38VyiLbWyRtzMglIk2fF60o//8y4H48134SsPez+QbS4Z Gj4qYMEsdUma4hpOn52yrrBdvSLlu/8AvpX47YVr/iQTFvYqSzhp4ofUSeJm/Jyn ThgM6x/BnHENYuisK+JZxnUoVQgr3dPHGIbAbEWVrzqyEjveYBmvdgV9OidJkKq3 GqWt9LK0oHphcCP6I5crKGL1N3nx0BACxq3+uYTQ4eNVzpP+woj+PizX3ycpky3d NCwnlW5lUfRROaBSE2aXlmnwRaX9gK3RlU+pm5bgZMmot38NHVNcsa850PAeKZ7T 2AfWehekvohvqma+zExEhyW958KBFfwqDSrwf/5pcNJMqRGbEzuA4d64oWuqWvJh r9qXUJnAnmz0O4WDqhMvvrP1dcBCBHZfxTbF8UozZKxNnzQGtb3mJjACvVkAMKSS iG0aqxKL0sDRpUucdF607mJQB14N0GEjxgOWuJ82crFibkshdxxdUS1PO+1FunBO IFypyCiBzgJPQuJyKdWcHZ1Op7sn98X0IItyLnCrffw10lp7juCvPPyYhULkW4YS /KGB1e28CmmqfnOyO25V6VkVsfmDtHanTCd+XYpCFi3dvKmYHLyU1dywd95heUbE G6IekIyMe3meOCquqNPMpcmfKQUeHqc3a++h/vOB6qAkoxjPWsmEcsPgYNH7Gkw5 XIJq4Wz6vjzj+nwhhmdQEFg4XTScdYTV7fcULLEUqRIzyuTk0xFPP8WT7FBbchOJ 7OEGqq/U+XT2Ep1N3Z+ilp7YG+y3BsIy5YOL9mUqa8rEYLCJG3VaFLoKd8N9HTJ0 SiNF4Mr6HinQCmxs0Yi4F5+spLL8mbX/B8CGakFfbHzqia7BAZA74ETWjyMx8In/ m9boBc49mVNCXWb8aEnAHLrOzzqeGxp49lX4SBzcDn0mRahaNdStOY29PxL5pk8+ fKXoNq7U4rjibTP8kaC+mbeh6853j7aeJNLaX9UjSQmXNr0ROFj2TKRGmEDdJ2vp XgLhrCDo/L02pNZiN6YQf/VXutG/kW6pSoltawnJePrunDIqh+ThHPMEuqJQkydi 7cLlabhwNf/1qpvKetUf+xUuKvxhDP4xZKoCjjN3uP42BmwrKuT7 -----END CERTIFICATE-----
-----BEGIN CERTIFICATE----- MIIGCDCCA/CgAwIBAgIEAkp/4jANBgkqhkiG9w0BAQsFADBHMTMwMQYDVQQDEypQ cml2YXRlIEludGVybWVkaWF0ZSBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkxEDAOBgNV BAoTB0V4YW1wbGUwHhcNMTkwNzI0MTY0NTAwWhcNMzgwMTE5MDMxNDA3WjAfMR0w GwYDVQQDExRlamFiYmVyZC5leGFtcGxlLmNvbTCCAiIwDQYJKoZIhvcNAQEBBQAD ggIPADCCAgoCggIBAKJMHRAX3IRmV8AQvcmkw6wjhRDF2JIlvJIikPgQ8cpPC5+M Lp2RIHg1UEo3PzEPwNaF1uK6wcQu1kLK6+sQRTjnun2NgkcxsLL9uCDy3kI7c8kv JgeTil25M7pSnlYeaaIIurlkVN4j0NK1puwNiirMajHTiK70BFeI/avEXyGNa5kl Q7bvLP/Bx5zUDL5aaO/bkdfiKC1VyoNDj7bxNr/kNQLy/NzU3hKZXDZ0t60tz35e eP9pmBKfn2PEOJ3ks2vIlnIw1i8Fjz2DtoM2K3WZ/IaA7IjDy7luq8oZJFx6nhyu C/takL4s9RI3hBEBJGJ1yRE5sKD/dfv82uCOGFaSw0euE29npzYL4e1aQtoNQA6K sWXb/yfuQmGygKIaCVRK6aBSegM+awI1Se/RixW5EnArvahpNzDe33CpcSbalZ7B kWiz7qRK7FK+msN7G/68E1hJKwElkEknnTL3IuIUUN9smbE9zkXT2rCZ4aBcfoDu xtjmVV3VdKebgBcaCMCJx5e9/DW/nVHugtKJ+UjcBKSV7lAt795MUDph11StY0B4 eVQ+vSmRwtxHM59SwO6yG1q0JQsxRMwVbs2McAsoo2hsTXGt7vuv3Cf4I5r2Zxcv yE5VR3QTN2JF9IZ0ROKUmpEWpRIPPKBDegBK7ik3HUf/+BCg0Ix3sNu2ApWNAgMB AAGjggEiMIIBHjAMBgNVHRMBAf8EAjAAMCcGA1UdJQQgMB4GCCsGAQUFBwMCBggr BgEFBQcDAQYIKwYBBQUHAxEwVgYDVR0RBE8wTYIUZWphYmJlcmQuZXhhbXBsZS5j b22CC2V4YW1wbGUuY29tghJqYWJiZXIuZXhhbXBsZS5jb22CFCouamFiYmVyLmV4 YW1wbGUuY29tMA8GA1UdDwEB/wQFAwMHoAAwHQYDVR0OBBYEFBAJzJv9aqC0s9NK H9Zb06BeM2+uMB8GA1UdIwQYMBaAFBEmEr/tEMp9+YB/Ciq7oeaoeQMKMDwGA1Ud HwQ1MDMwMaAvoC2GK2h0dHBzOi8vd3d3LmV4YW1wbGUuY29tL3g1MDkvcmV2b2Nh dGlvbi5wZW0wDQYJKoZIhvcNAQELBQADggIBAFEHRADXsSZSQMhKODDWmIU4WyDe WsYopwCc7W7is6EELVTNsecRz9E+jFKaYijTwoh+rieLxzTW0fYl7I6wjVNOY4O8 /RLcXh30Jw9VnHzfYQzONyKXBNbXpqKCts46edJ0QlGXen26ZtOHIGQNl8RMmE44 k6OlhHRMu0LBnz6GQJT6TLmMNnvHcBRSqqsfHN9X4F/Lvhu7Vuu3JTaesQz9tQyj mV+VXDg/ua8hBZgvDz3GupUfi6tZ7BGTnBe41aVlwcDBLgOkTU+3f7QXFO4yz/Ou WGlJucUjusDLfgIIvRsN89b1faW56XZNiE3FkpJ6HuuNZp4H1LyqKtMpGftSbCJT 4duYVBX5K8GRC3A+r2Obf29aMXFQV6MUISq9v3s8wLybiVEAInDXO42gyVdSJq+N PLT8+yQpGr2ZurNGHUcLh+wM8l+H/xLKdFpGBC3PD5SlqQyb3Bpw5dkrimD2b5Wx rlZ9suK1iurF/YQ4r/sZdnrKniLo6gTQ9/ylAxjrI0GMyuIRg3kLjQMM1knca84j bHMiHRp68eeevfwQRTCNkhpH6E93MXy+pndfWjaA/7hTYSKCJhytgrrOfLdI+C7I bH+2M0c6asOezz7jzU6/of/axi3J9DJ1yUCp7kxTkgUvi/ZsQ3bC1iKcawVueho3 x3PTdwG7E/Yt3NuV -----END CERTIFICATE-----
Public Key Info:
Public Key Algorithm: RSA
Key Security Level: High (4096 bits)
modulus:
00:a2:4c:1d:10:17:dc:84:66:57:c0:10:bd:c9:a4:c3
ac:23:85:10:c5:d8:92:25:bc:92:22:90:f8:10:f1:ca
4f:0b:9f:8c:2e:9d:91:20:78:35:50:4a:37:3f:31:0f
c0:d6:85:d6:e2:ba:c1:c4:2e:d6:42:ca:eb:eb:10:45
38:e7:ba:7d:8d:82:47:31:b0:b2:fd:b8:20:f2:de:42
3b:73:c9:2f:26:07:93:8a:5d:b9:33:ba:52:9e:56:1e
69:a2:08:ba:b9:64:54:de:23:d0:d2:b5:a6:ec:0d:8a
2a:cc:6a:31:d3:88:ae:f4:04:57:88:fd:ab:c4:5f:21
8d:6b:99:25:43:b6:ef:2c:ff:c1:c7:9c:d4:0c:be:5a
68:ef:db:91:d7:e2:28:2d:55:ca:83:43:8f:b6:f1:36
bf:e4:35:02:f2:fc:dc:d4:de:12:99:5c:36:74:b7:ad
2d:cf:7e:5e:78:ff:69:98:12:9f:9f:63:c4:38:9d:e4
b3:6b:c8:96:72:30:d6:2f:05:8f:3d:83:b6:83:36:2b
75:99:fc:86:80:ec:88:c3:cb:b9:6e:ab:ca:19:24:5c
7a:9e:1c:ae:0b:fb:5a:90:be:2c:f5:12:37:84:11:01
24:62:75:c9:11:39:b0:a0:ff:75:fb:fc:da:e0:8e:18
56:92:c3:47:ae:13:6f:67:a7:36:0b:e1:ed:5a:42:da
0d:40:0e:8a:b1:65:db:ff:27:ee:42:61:b2:80:a2:1a
09:54:4a:e9:a0:52:7a:03:3e:6b:02:35:49:ef:d1:8b
15:b9:12:70:2b:bd:a8:69:37:30:de:df:70:a9:71:26
da:95:9e:c1:91:68:b3:ee:a4:4a:ec:52:be:9a:c3:7b
1b:fe:bc:13:58:49:2b:01:25:90:49:27:9d:32:f7:22
e2:14:50:df:6c:99:b1:3d:ce:45:d3:da:b0:99:e1:a0
5c:7e:80:ee:c6:d8:e6:55:5d:d5:74:a7:9b:80:17:1a
08:c0:89:c7:97:bd:fc:35:bf:9d:51:ee:82:d2:89:f9
48:dc:04:a4:95:ee:50:2d:ef:de:4c:50:3a:61:d7:54
ad:63:40:78:79:54:3e:bd:29:91:c2:dc:47:33:9f:52
c0:ee:b2:1b:5a:b4:25:0b:31:44:cc:15:6e:cd:8c:70
0b:28:a3:68:6c:4d:71:ad:ee:fb:af:dc:27:f8:23:9a
f6:67:17:2f:c8:4e:55:47:74:13:37:62:45:f4:86:74
44:e2:94:9a:91:16:a5:12:0f:3c:a0:43:7a:00:4a:ee
29:37:1d:47:ff:f8:10:a0:d0:8c:77:b0:db:b6:02:95
8d:
public exponent:
01:00:01:
private exponent:
0b:fe:49:eb:85:87:e3:34:d8:e9:35:93:80:d2:2f:2f
8a:54:6b:ff:e2:d8:31:f7:b4:68:df:83:a5:64:e8:c9
5c:97:86:b9:6f:25:69:5b:d8:bc:bd:2f:45:f9:2f:2b
d5:ee:80:09:b3:39:5c:71:05:9e:5b:f6:81:21:6b:ac
1f:db:b5:29:7e:e6:19:f2:ef:d7:36:03:21:4f:71:5f
89:57:e5:a7:0e:ca:45:60:55:ae:4f:e7:89:11:de:1f
7a:3c:e0:e7:90:55:81:30:ee:5e:93:d3:e8:ff:bb:25
1c:84:00:78:9c:52:29:70:24:b3:d7:e3:18:98:db:16
e3:4b:a6:e8:51:1d:6d:9a:dc:cc:0e:77:d1:15:44:03
1b:2e:83:a1:8b:71:e2:9f:c3:5e:5d:e0:c1:e9:23:5d
9c:d4:9a:0a:30:cb:74:e3:90:46:4a:fd:2f:34:df:94
52:10:09:95:31:72:b1:2d:37:24:85:2f:db:eb:37:1a
57:2d:b4:88:6d:b9:76:32:17:fa:b8:c0:05:04:3c:c3
ed:04:2f:40:59:ba:65:95:a9:77:57:34:91:15:11:cc
71:e0:b6:af:e5:fc:34:54:09:68:76:d7:29:68:44:48
57:0a:53:38:75:a5:ea:cf:d5:fd:30:1b:50:9a:cf:8b
80:12:35:7c:25:0c:d0:92:99:17:27:e1:12:82:5b:a1
fc:75:77:2f:23:68:90:72:9c:2e:28:30:88:49:8c:c8
ed:03:8e:55:b3:34:ae:ac:7d:9b:7e:f5:6e:c7:66:30
82:a5:45:72:dc:2a:13:10:22:b4:e1:dd:20:b6:a5:6e
db:fd:0a:84:77:e8:dc:7e:ec:4d:00:54:99:2c:34:1c
a1:85:e2:9b:bf:8c:f2:76:70:71:3c:2f:af:f3:0a:af
6e:e3:32:85:93:73:a4:be:06:5f:ea:9b:70:58:9e:73
b2:d8:6b:64:14:d5:fd:65:96:16:0e:49:ba:37:4d:05
27:89:4d:8a:d0:3e:65:93:2a:71:f4:6a:e9:d3:26:2d
a8:ab:34:8c:5c:50:e3:9f:48:46:bf:94:e4:8e:31:fc
02:df:ee:5d:9a:20:8c:17:a4:07:c6:43:5d:f2:9d:53
21:db:c9:a0:ce:d4:64:79:ef:e0:eb:17:9f:46:5c:d4
f2:51:fe:60:fa:00:f6:c5:78:7e:43:f7:44:34:11:fa
b9:a8:b3:fb:88:81:e2:47:de:2e:b0:59:39:b0:da:55
11:9f:8f:7e:db:1f:68:3b:46:c4:40:31:19:11:34:1b
cb:08:5d:5f:e4:ee:37:0d:73:09:02:2d:dc:01:e3:95
prime1:
00:d7:c7:9c:76:84:d5:43:27:0c:64:13:ec:db:18:7b
dd:84:6e:45:1a:9e:ed:ea:31:38:bb:d1:c3:2f:24:57
f2:7e:b9:23:09:74:1f:74:b6:2f:67:16:5e:8f:bf:57
a6:4c:37:7d:b2:2d:3e:00:39:11:26:f5:67:a4:51:ce
27:66:67:46:6d:60:11:fd:00:b6:e5:a5:dd:2a:55:ea
91:f4:a5:b0:27:f1:f0:a2:e4:d0:18:35:ca:64:95:e4
34:81:9a:e5:dc:c4:de:84:aa:ca:29:97:63:0d:ba:f6
7d:90:6f:aa:70:ac:8f:ed:d7:4e:65:c4:bd:3d:44:07
0e:27:88:0c:3d:6e:b5:bf:de:12:ab:ce:5d:09:00:33
f0:4e:44:54:ab:49:ef:ac:3e:45:08:96:3d:9c:ce:46
67:b3:e8:b8:e9:dd:df:a7:b1:62:3d:4f:93:f0:25:8d
a0:39:b7:d2:e7:99:65:e8:eb:5d:f0:b5:0c:67:2e:60
61:0b:5d:ac:e8:c7:64:08:4a:95:1e:12:a9:2b:1f:08
5c:07:10:54:a7:cc:6a:8e:bc:3f:6c:3b:90:0d:5d:df
5a:47:35:de:0c:bb:dc:ea:22:03:06:c8:b8:b3:bc:30
ee:d3:54:c5:b4:af:40:93:cb:90:7f:ee:32:80:8b:4c
0b:
prime2:
00:c0:8c:79:ab:2f:9d:7e:21:08:6b:70:be:c5:7f:c8
26:f4:0e:73:55:69:39:ad:d3:34:fb:a0:8c:9a:97:8c
c8:07:eb:5a:cb:6f:7c:8d:4e:a7:55:bd:21:f0:c1:db
0e:f6:fd:4d:11:d2:1f:b5:0b:fc:3f:a0:c5:61:be:a8
7d:d3:9d:af:64:64:f6:13:44:ea:c5:e3:81:86:60:12
00:69:6b:53:82:43:d8:34:f2:f2:36:b9:d9:5a:86:87
c2:0d:6a:ff:7e:7e:a6:6a:9b:41:d6:ee:2e:0b:a5:53
88:b3:2c:e6:6e:5e:f9:33:45:02:3d:8a:a8:1b:20:14
10:9c:5d:99:17:ed:d7:f0:b2:8c:55:85:8a:27:bb:24
4a:d1:78:c8:09:77:6e:d5:bb:54:8b:92:0b:5a:0a:e0
97:26:3a:3d:64:32:70:4d:f7:77:2d:78:3c:6c:71:67
5e:2c:56:de:1d:f9:db:73:57:b2:5f:f3:4e:58:ba:fb
aa:cb:21:a5:27:d8:33:59:14:06:cd:2d:5f:49:97:32
32:93:dc:0e:f8:4e:e2:97:a4:16:0c:e1:78:00:86:ef
6a:a2:bc:b6:ff:61:29:fb:10:bf:33:83:e1:a2:b3:fe
fc:60:b5:82:c1:91:8a:c0:a7:a1:13:de:d7:9c:22:0b
c7:
coefficient:
00:a8:42:d7:7d:71:28:9f:eb:56:87:e0:5d:90:14:e7
ac:f8:ad:61:fa:79:f8:b4:8a:30:56:05:f6:13:18:19
bf:2d:76:e0:43:a7:5a:d6:65:ac:ab:c9:4f:6c:46:2e
5b:ad:11:38:16:4a:e8:61:c6:ac:e6:bf:3b:c1:93:ec
e1:88:8c:98:54:f1:f9:6d:2d:3c:85:88:ac:19:f8:fd
56:19:12:44:b7:35:be:7a:49:5c:fd:38:12:b2:64:d5
16:4c:1b:13:61:1e:a5:43:cb:b1:f3:9e:c9:a2:cc:9f
fd:0c:1c:1b:5f:fd:b1:a6:f0:22:ff:23:f9:57:dc:95
6b:21:34:3f:89:01:40:cf:37:de:c0:29:7a:ac:2c:0b
3b:b5:6a:eb:f4:35:61:8a:49:a2:af:24:a8:94:d7:e4
f7:59:56:ef:d5:40:4b:6e:9b:dd:d9:c4:e2:69:04:a6
49:67:4d:56:5e:b6:8c:d6:7c:5e:45:67:5f:d5:5a:b9
42:f1:db:e5:8b:f5:b7:43:fa:7d:18:3e:6d:4c:79:33
9b:5e:ef:09:85:fb:37:c5:2b:b0:69:d4:cc:ee:df:d2
e8:e5:c6:44:6d:fd:56:77:bd:18:49:ba:2d:dc:ce:fe
c1:86:3a:49:83:68:8f:33:d6:cf:6e:1c:b5:ad:e8:9e
ff:
exp1:
00:93:f5:31:9a:2b:17:38:c6:ab:be:6b:d3:3b:a0:9c
3e:96:b2:2d:fc:45:02:0a:55:d9:fb:1f:a8:60:c8:e0
ed:4c:6b:92:54:c7:25:52:98:22:04:e3:d7:cf:65:7a
aa:73:14:91:c1:fd:37:c8:5b:59:21:87:a0:9b:91:e4
74:2b:c9:a1:07:1a:9a:fb:0a:e4:5e:af:ce:e9:5a:a4
4f:94:9b:90:20:b3:cb:37:47:02:51:b7:80:a2:5c:0d
70:db:75:e5:2b:ee:6a:4e:39:f6:09:72:de:de:e9:56
5f:5f:0c:d2:a8:14:0b:55:21:0f:86:c4:d2:a6:11:e1
6c:99:3a:b6:79:e1:52:0a:d0:31:a9:51:05:86:48:77
54:cd:b6:19:00:a2:e0:0f:11:5b:b0:b9:a4:61:c3:27
8f:b0:53:61:88:2b:35:52:fd:54:c9:89:a9:7d:3f:a2
cf:3d:04:89:3f:79:75:e1:b2:92:65:9d:1f:76:18:dc
c9:6e:4b:bb:66:9a:62:43:35:30:ee:c0:08:f3:a2:81
ce:e8:a1:10:0b:47:25:c1:dd:de:f7:4e:18:46:b2:19
97:03:c1:32:13:35:36:13:ed:62:79:e2:64:94:09:f4
db:ae:59:30:7f:e6:b3:b7:24:1c:5f:3c:6b:b0:ac:d3
65:
exp2:
68:dc:57:ea:75:7c:f4:d2:b2:8e:28:91:8c:67:61:ae
6d:1d:6d:8c:27:49:25:34:2f:d7:95:80:dd:34:09:94
6a:53:af:57:b9:38:80:90:44:2b:3a:5c:40:8c:a2:6b
0c:f1:b7:c6:2b:c3:de:ca:4f:2e:ab:b4:b2:dd:ad:4f
11:2e:ff:f4:d1:d2:fd:7d:7b:ca:17:73:53:a6:00:47
bf:21:97:12:0b:36:b4:e7:56:27:9d:a1:14:5e:cd:92
4d:d2:66:a0:12:03:39:6d:a2:36:95:f1:f7:9f:aa:d5
78:96:cc:4b:71:67:8f:97:56:78:03:8a:37:73:89:d9
dd:fe:4f:40:ab:e3:fd:0e:8f:c4:87:7c:4c:d4:eb:17
df:ea:42:2e:7d:9f:9b:c0:70:73:ae:2e:86:74:04:09
ec:e4:ac:c8:63:7b:ab:ca:48:5a:37:ef:d8:33:0e:53
48:1c:6a:cc:b2:64:e3:f4:ef:8c:b7:a9:84:43:18:89
d4:24:57:98:52:72:ec:61:2e:af:10:b5:a3:13:37:60
3a:0c:0f:0f:05:8e:fb:7c:7e:11:b7:bc:ad:b4:ce:b0
29:3e:52:fe:d3:80:94:5d:73:73:6f:b0:32:f6:89:b8
12:46:e7:95:d9:58:52:41:38:44:e5:08:50:dc:6d:c3
Public Key ID:
sha256:5B:6C:AA:B8:06:53:8F:79:4F:B5:F7:E7:8B:83:95:6C:D5:39:6A:EE:CF:FD:7B:0B:36:78:0F:F4:F2:5B:61:1D
sha1:10:09:CC:9B:FD:6A:A0:B4:B3:D3:4A:1F:D6:5B:D3:A0:5E:33:6F:AE
Public key's random art:
+--[ RSA 4096]----+
| o.... |
| o .. |
| +. |
| o .. |
| .S |
| . .. ..o |
| ..+o.o.* . |
| .=o.oo+ =. |
| o=..o E+o |
+-----------------+
-----BEGIN RSA PRIVATE KEY-----
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
-----END RSA PRIVATE KEY-----
signature.asc
Description: PGP signature

