Skip to contents

Replaces observer_code and observer with a one-way salted hash. The salt is random (unless you pass salt) and is not stored on the result, so original names and user ids cannot be recovered from the table. The same person keeps the same anonymous code within one call.

Usage

obs_anonymize(x, salt = NULL)

obs_anonymise(x, salt = NULL)

Arguments

x

An obs_read() result or a data frame with observer / observer_code.

salt

Optional hex or character salt. Use the same value only when you must anonymise several files the same way. Never publish the salt: sequential Observation.org user ids can be brute-forced if it leaks. The default generates a salt and discards it.

Value

x with anonymous observer / observer_code.

Details

System accounts such as "Automatic validation" are left unchanged. Coordinates, observation ids and public Observation.org links are not modified; those can still identify a person if the record is public on the website.

Examples

obs <- obs_anonymise(obs_read(obs_example_db()))
unique(obs$observer)
#>  [1] "Observer 7480ec64" "Observer 28b76df5" "Observer bad13501"
#>  [4] "Observer 0eb1828d" "Observer df747bb1" "Observer 1229a4a3"
#>  [7] "Observer a0c6f616" "Observer 18f8febd" "Observer ce40b009"
#> [10] "Observer 108f53e2" "Observer 29e3d02d" "Observer f6b3b959"
#> [13] "Observer a8b0a05a" "Observer 22ae7986" "Observer a23991ee"
#> [16] "Observer c26298e1" "Observer 3a94839d" "Observer 03325df2"
#> [19] "Observer cf142dc5" "Observer 6103b8f9" "Observer 9751e579"
#> [22] "Observer f39d0787" "Observer 8efdbf9b" "Observer 47cec551"
#> [25] "Observer 42ceb671" "Observer 170e5234" "Observer 30eff778"
#> [28] "Observer 38d2f6ab" "Observer 19115cd6" "Observer b44a5106"
#> [31] "Observer 6191571a" "Observer 1e4de6a0" "Observer 5b8911ea"
#> [34] "Observer 5e1d592a" "Observer 0f2a9017" "Observer 66bedffd"
#> [37] "Observer d69f2ede" "Observer e0acc71a" "Observer 75967103"
#> [40] "Observer 3eb6ebef" "Observer 236ac1c5" "Observer 229d419f"
#> [43] "Observer 5accf067" "Observer 8092fe70" "Observer 6f14339e"
#> [46] "Observer 9a894a44" "Observer 383a5e18" "Observer c493bbdb"
#> [49] "Observer e8d8a596" "Observer cc1a15a4" "Observer 9a11a5af"
#> [52] "Observer 16d74d09" "Observer aa5f5d81" "Observer 8e7ff522"
#> [55] "Observer 61db47aa" "Observer d0e0f78a" "Observer 6e188929"
#> [58] "Observer b3552284" "Observer ec27767c" "Observer 8237e31e"
#> [61] "Observer b5c90486"