Replace anonymized data in string

From: Patrick FICHE <Patrick(dot)Fiche(at)aqsacom(dot)com>
To: "pgsql-general(at)lists(dot)postgresql(dot)org" <pgsql-general(at)lists(dot)postgresql(dot)org>
Subject: Replace anonymized data in string
Date: 2021-11-12 14:12:33
Message-ID: VI1PR05MB5917D508CAA017AB9FF70890EF959@VI1PR05MB5917.eurprd05.prod.outlook.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi Team,

I have some data that has been anonymized and I would like to generate some test data from this. In some way, I would like to deanonymize this data with random data.

For example, phone numbers have been anonymized with changing the 5 right digits with the 8 digit (preserving length).
Applying this, the number 390694802756 was changed to 3906948088888.

I would like to get random digits at the end of the phone number knowing that anonymized data can be a variable length.
So, I would like to change every sequence (at least 2) of 8 by random value of same length (I don't worry if phone number contains 88 in the middle and this sequence is changed to random data)...

I tried to do this with replace / regexp_replace functions but could not achieve what I wanted to do.
I don't want these digits to be changed with a single one (88888 by 111111 or 99999 but something like 42384)...
Ideally, the new string would be different if multiple sequences of 8 appear in a string and would be different from one record to the other when applied to a full table...

Is there any way to do this ?

Thanks,
Patrick

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Daniel Gustafsson 2021-11-12 14:15:07 Re: Replace anonymized data in string
Previous Message Michael Lewis 2021-11-12 14:00:42 Re: Are all unlogged tables in any case truncated after a server-using