# Different libcrypto Requirements in Confd 8 ARM64 and AMD64

**URL:** <https://dmap-community.ductus.global/t/different-libcrypto-requirements-in-confd-8-arm64-and-amd64/5011>\
**Category:** Core Engine and APIs\
**Created:** [August 11, 2026, 10:10am UTC](https://dmap-community.ductus.global/t/different-libcrypto-requirements-in-confd-8-arm64-and-amd64/5011 "2026-08-11T10:10:46Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![ankitrathore](https://avatars.discourse-cdn.com/v4/letter/a/50afbb/32.png) [@ankitrathore](https://dmap-community.ductus.global/u/ankitrathore)\
**Post date:** [August 11, 2026, 10:10am UTC](https://dmap-community.ductus.global/t/different-libcrypto-requirements-in-confd-8-arm64-and-amd64/5011/1 "2026-08-11T10:10:46Z")

</div>

We are using the same **confd (8.0.17.1)** version for both **amd64** and **arm64**. The amd64 binary depends on **libcrypto.so.1.1** , while the arm64 binary depends on **libcrypto.so.1.0.0**. Why do these binaries have different OpenSSL library requirements despite being the same release version?

---

<div class="post-metadata">

**Author:** ![joao.freitas](https://avatars.discourse-cdn.com/v4/letter/j/6bbea6/32.png) [@joao.freitas](https://dmap-community.ductus.global/u/joao.freitas)\
**Post date:** [August 12, 2026, 5:37pm UTC](https://dmap-community.ductus.global/t/different-libcrypto-requirements-in-confd-8-arm64-and-amd64/5011/2 "2026-08-12T17:37:41Z")

</div>

Hello @ankitrathore

Interesting point. Both should point to the same libcrypto.

What is the output for the following command?

```auto
readelf -d ./lib/confd/lib/core/crypto/priv/lib/crypto.so | grep libcrypto

```

Regards,

João.

---

<div class="post-metadata">

**Author:** ![ankitrathore](https://avatars.discourse-cdn.com/v4/letter/a/50afbb/32.png) [@ankitrathore](https://dmap-community.ductus.global/u/ankitrathore)\
**Post date:** [August 13, 2026, 5:51am UTC](https://dmap-community.ductus.global/t/different-libcrypto-requirements-in-confd-8-arm64-and-amd64/5011/3 "2026-08-13T05:51:55Z")

</div>

**Below is the output from arm64:**

]$ readelf -d crypto.so | grep libcrypto  
0x0000000000000001 (NEEDED) Shared library: [libcrypto.so.1.0.0]

## [ankit@config-service-0 lib64]$ ldd /confd8/confd/lib/confd/lib/core/crypto/priv/lib/crypto.so /confd8/confd/lib/confd/lib/core/crypto/priv/lib/crypto.so: libcrypto.so.1.0.0: no version information available (required by /confd8/confd/lib/confd/lib/core/crypto/priv/lib/crypto.so) linux-vdso.so.1 (0x0000ffffb1964000) libcrypto.so.1.0.0 (0x0000ffffb16f7000) libc.so.6 (0x0000ffffb1549000) /lib/ld-linux-aarch64.so.1 (0x0000ffffb1920000) [ankit@config-service-0 lib64]$

**Below is the output from amd64:**  
[ankit@config-service-0 lib64]$ ldd /confd8/confd/lib/confd/lib/core/crypto/priv/lib/crypto.so  
linux-vdso.so.1 (0x00007ffc20ff7000)  
libcrypto.so.1.1 (0x00007f4382273000)  
libc.so.6 (0x00007f438206a000)  
libz.so.1 (0x00007f4382050000)  
/lib64/ld-linux-x86-64.so.2 (0x00007f438277e000)  
[ankit@config-service-0 lib64]$

---

<div class="post-metadata">

**Author:** ![joao.freitas](https://avatars.discourse-cdn.com/v4/letter/j/6bbea6/32.png) [@joao.freitas](https://dmap-community.ductus.global/u/joao.freitas)\
**Post date:** [August 13, 2026, 12:25pm UTC](https://dmap-community.ductus.global/t/different-libcrypto-requirements-in-confd-8-arm64-and-amd64/5011/4 "2026-08-13T12:25:23Z")

</div>

Thanks for the input.

For both platforms, does the OS provides both libcrypto.so.1.0.0 and libcrypto.so.1.1? (/usr/lib)

One more question, I’m assuming that `crypto.so` is as-is from confd package. I meant without rebuilding it, right ?

Thanks.

---

<div class="post-metadata">

**Author:** ![ankitrathore](https://avatars.discourse-cdn.com/v4/letter/a/50afbb/32.png) [@ankitrathore](https://dmap-community.ductus.global/u/ankitrathore)\
**Post date:** [August 13, 2026, 12:59pm UTC](https://dmap-community.ductus.global/t/different-libcrypto-requirements-in-confd-8-arm64-and-amd64/5011/5 "2026-08-13T12:59:22Z")

</div>

Yes, `crypto.so` is being picked up as-is from the ConfD package. We have both `libcrypto.so.1.0.0` and `libcrypto.so.1.1` available on the system but its linking to libcrypto.so.1.0.0 as its shared . We also tried using a custom OpenSSL location by setting `LD_LIBRARY_PATH`, but the behavior remains the same.

LD\_LIBRARY\_PATH=/home/rathorean/openssl-1.1.1k-build/lib:$LD\_LIBRARY\_PATH

Could you please verify on your side using the ARM64 binaries and confirm which OpenSSL library version ConfD is linking against? Specifically, is it resolving to `libcrypto.so.1.0.0` or `libcrypto.so.1.1.1`?

We suspect this might be the root cause of the issue. Since RHEL 9 and later deprecate legacy RSA algorithms and older OpenSSL dependencies, we are encountering SSL handshake failures when attempting to connect through CLI or NETCONF.

Could you please check and confirm your findings? Thanks.

---

<div class="post-metadata">

**Author:** ![joao.freitas](https://avatars.discourse-cdn.com/v4/letter/j/6bbea6/32.png) [@joao.freitas](https://dmap-community.ductus.global/u/joao.freitas)\
**Post date:** [August 14, 2026, 3:28pm UTC](https://dmap-community.ductus.global/t/different-libcrypto-requirements-in-confd-8-arm64-and-amd64/5011/6 "2026-08-14T15:28:36Z")

</div>

Hi @ankitrathore

So, here is my result:

```auto
joafreit@p1:~/old_confd/confd-8.0.17.1.linux.arm64$ readelf -d ./lib/confd/lib/core/crypto/priv/lib/crypto.so

Dynamic section at offset 0x173f0 contains 25 entries:
  Tag Type Name/Value
 0x0000000000000001 (NEEDED) Shared library: [libcrypto.so.1.0.0]
 0x0000000000000001 (NEEDED) Shared library: [libc.so.6]
 0x000000000000000c (INIT) 0x8fb0
 0x000000000000000d (FINI) 0x15de4
 0x0000000000000019 (INIT_ARRAY) 0x273d8
 0x000000000000001b (INIT_ARRAYSZ) 8 (bytes)
 0x000000000000001a (FINI_ARRAY) 0x273e0
 0x000000000000001c (FINI_ARRAYSZ) 8 (bytes)
 0x000000006ffffef5 (GNU_HASH) 0x180
 0x0000000000000005 (STRTAB) 0x3320
 0x0000000000000006 (SYMTAB) 0x710
 0x000000000000000a (STRSZ) 7785 (bytes)
 0x000000000000000b (SYMENT) 24 (bytes)
 0x0000000000000003 (PLTGOT) 0x27878
 0x0000000000000002 (PLTRELSZ) 7488 (bytes)
 0x0000000000000014 (PLTREL) RELA
 0x0000000000000017 (JMPREL) 0x7270
 0x0000000000000007 (RELA) 0x5578
 0x0000000000000008 (RELASZ) 7416 (bytes)
 0x0000000000000009 (RELAENT) 24 (bytes)
 0x000000006ffffffe (VERNEED) 0x5538
 0x000000006fffffff (VERNEEDNUM) 2
 0x000000006ffffff0 (VERSYM) 0x518a
 0x000000006ffffff9 (RELACOUNT) 123
 0x0000000000000000 (NULL) 0x0
[0.004s] --> [0]
joafreit@p1:~/old_confd/confd-8.0.17.1.linux.arm64$ cd ../confd-8.0.17.1.linux.x86_64
[0.001s] --> [0]
joafreit@p1:~/old_confd/confd-8.0.17.1.linux.x86_64$ readelf -d ./lib/confd/lib/core/crypto/priv/lib/crypto.so

Dynamic section at offset 0x19b60 contains 25 entries:
  Tag Type Name/Value
 0x0000000000000001 (NEEDED) Shared library: [libcrypto.so.1.1]
 0x0000000000000001 (NEEDED) Shared library: [libc.so.6]
 0x000000000000000c (INIT) 0x92f8
 0x000000000000000d (FINI) 0x166c8
 0x0000000000000019 (INIT_ARRAY) 0x219b48
 0x000000000000001b (INIT_ARRAYSZ) 8 (bytes)
 0x000000000000001a (FINI_ARRAY) 0x219b50
 0x000000000000001c (FINI_ARRAYSZ) 8 (bytes)
 0x000000006ffffef5 (GNU_HASH) 0x1f0
 0x0000000000000005 (STRTAB) 0x3608
 0x0000000000000006 (SYMTAB) 0x788
 0x000000000000000a (STRSZ) 8206 (bytes)
 0x000000000000000b (SYMENT) 24 (bytes)
 0x0000000000000003 (PLTGOT) 0x21a000
 0x0000000000000002 (PLTRELSZ) 6816 (bytes)
 0x0000000000000014 (PLTREL) RELA
 0x0000000000000017 (JMPREL) 0x7858
 0x0000000000000007 (RELA) 0x5a58
 0x0000000000000008 (RELASZ) 7680 (bytes)
 0x0000000000000009 (RELAENT) 24 (bytes)
 0x000000006ffffffe (VERNEED) 0x59f8
 0x000000006fffffff (VERNEEDNUM) 2
 0x000000006ffffff0 (VERSYM) 0x5616
 0x000000006ffffff9 (RELACOUNT) 123
 0x0000000000000000 (NULL) 0x0

```

I think both should use libcrypto.so.1.1. But, I don’t know if there any other technical motivation to no use the same version.

---

<div class="post-metadata">

**Author:** ![ankitrathore](https://avatars.discourse-cdn.com/v4/letter/a/50afbb/32.png) [@ankitrathore](https://dmap-community.ductus.global/u/ankitrathore)\
**Post date:** [August 17, 2026, 5:41am UTC](https://dmap-community.ductus.global/t/different-libcrypto-requirements-in-confd-8-arm64-and-amd64/5011/7 "2026-08-17T05:41:38Z")

</div>

Thanks for the confirming @joao.freitas. Is there any workaround possible to make it work? we already tried recompiling the crypto.so with openssl-1.1 but it didn’t work.
