# (solved) IP anonymization (hasing) in Ingest Pipeline

**URL:** <https://discuss.elastic.co/t/solved-ip-anonymization-hasing-in-ingest-pipeline/381329>\
**Category:** Kibana\
**Created:** [August 25, 2025, 9:46pm UTC](https://discuss.elastic.co/t/solved-ip-anonymization-hasing-in-ingest-pipeline/381329 "2025-08-25T21:46:37Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![dot-mike](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dot-mike/32/143339_2.png) [@dot-mike](https://discuss.elastic.co/u/dot-mike)\
**Post date:** [August 25, 2025, 9:46pm UTC](https://discuss.elastic.co/t/solved-ip-anonymization-hasing-in-ingest-pipeline/381329/1 "2025-08-25T21:46:37Z")

</div>

Hi community,

I'm wondering what are the possibilities of IP anonymization with Ingest Pipeline in Kibana? I'm asking because for my use case I should be able to anonymize IP address and be able to decrypt it with special key at later point if needed. So, I need a way to hash the IP and be able to decrypt it later. Is this something we can do natively in Kibana?

In logstash you have the [`Fingerprint filter` Plugin](https://www.elastic.co/docs/reference/logstash/versioned-plugins/v3-4-4-plugins-filters-fingerprint) :

> If set to `IPV4_NETWORK` the input data needs to be a IPv4 address and the hash value will be the masked-out address using the number of bits specified in the `key` option. For example, with "1.2.3.4" as the input and `key` set to 16, the hash becomes "1.2.0.0".

---

<div class="post-metadata">

**Author:** ![leandrojmp](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/leandrojmp/32/107231_2.png) [@leandrojmp](https://discuss.elastic.co/u/leandrojmp)\
**Post date:** [August 26, 2025, 1:40am UTC](https://discuss.elastic.co/t/solved-ip-anonymization-hasing-in-ingest-pipeline/381329/2 "2025-08-26T01:40:12Z")

</div>

> [@dot-mike](#):
>
> So, I need a way to hash the IP and be able to decrypt it later. Is this something we can do natively in Kibana?

No, this is not possible, you can create a hash using an ingest pipeline, but you cannot decrypt it once ingested.

---

<div class="post-metadata">

**Author:** ![dot-mike](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dot-mike/32/143339_2.png) [@dot-mike](https://discuss.elastic.co/u/dot-mike)\
**Post date:** [August 26, 2025, 11:50am UTC](https://discuss.elastic.co/t/solved-ip-anonymization-hasing-in-ingest-pipeline/381329/3 "2025-08-26T11:50:15Z")

</div>

Many thanks for the quick reply. I guess I have to look for another solution where the content is hashed at ingest time (before forwarded to ES).
