동기
개인 식별 정보 (PII)가 포함 된 데이터 세트로 작업하며 때로는 PII를 노출시키지 않고 고용주에게 책임을 부과하지 않는 방식으로 제 3 자와 데이터 세트의 일부를 공유해야합니다. 우리의 일반적인 접근 방식은 데이터를 완전히 보류하거나 경우에 따라 해상도를 낮추는 것입니다. 예를 들어, 정확한 거리 주소를 해당 카운티 또는 인구 조사로 교체하십시오.
이는 특정 유형의 분석 및 처리가 제 3 자에게 해당 작업에 더 적합한 리소스와 전문 지식이있는 경우에도 사내에서 수행되어야 함을 의미합니다. 소스 데이터는 공개되지 않았으므로이 분석 및 처리 방법은 투명성이 부족합니다. 결과적으로, QA / QC를 수행하거나, 매개 변수를 조정하거나, 개선하는 제 3 자의 능력은 매우 제한 될 수 있습니다.
기밀 데이터 익명 처리
한 가지 과제는 오류와 불일치를 고려하면서 사용자가 제출 한 데이터에서 이름으로 개인을 식별하는 것입니다. 개인은 한 곳에서 "Dave"로, 다른 곳에서 "David"로 기록 될 수 있으며, 상업 기관은 여러 가지 약어를 가질 수 있으며 항상 오타가 있습니다. 동일하지 않은 이름을 가진 두 개의 레코드가 동일한 개인을 나타내는시기를 결정하고 공통 ID를 지정하는 여러 기준을 기반으로 스크립트를 개발했습니다.
이 시점에서 이름을 보류하고이 개인 ID 번호로 바꿔서 데이터 세트를 익명으로 만들 수 있습니다. 그러나 이것은 수신자가 경기의 강도에 대한 정보가 거의 없음을 의미합니다. 우리는 정체성을 밝히지 않고 가능한 한 많은 정보를 전달할 수 있기를 원합니다.
작동하지 않는 것
예를 들어, 편집 거리를 유지하면서 문자열을 암호화 할 수 있으면 좋을 것입니다. 이러한 방식으로, 제 3자는 자체 QA / QC를 수행하거나 PII에 액세스하거나 역 엔지니어링 할 수있는 능력없이 자체적으로 추가 처리를 수행 할 수 있습니다. 아마도 우리는 편집 거리 <= 2와 사내 문자열을 일치시키고 수신자는 편집 거리 <= 1에 대한 공차를 강화하는 의미를보고 싶어합니다.
그러나 내가 알고있는 유일한 방법은 ROT13 (보다 일반적으로 모든 시프트 암호 )이며 암호화로 계산되지 않습니다. 이름을 거꾸로 쓰고 "종이를 뒤집지 않겠다"고 말하는 것과 같습니다.
또 다른 나쁜 해결책은 모든 것을 축약하는 것입니다. "Ellen Roberts"는 "ER"등이됩니다. 어떤 경우에는 공개 데이터와 관련하여 이니셜이 개인의 신원을 드러내고 다른 경우에는 너무 모호하기 때문에 이것은 좋지 않은 해결책입니다. "Benjamin Othello Ames"와 "Bank of America"는 동일한 이니셜을 갖지만 이름이 다르면 다릅니다. 그래서 우리가 원하는 일을하지 않습니다.
부적절한 대안은 이름의 특정 속성을 추적하기 위해 추가 필드를 도입하는 것입니다. 예 :
+-----+----+-------------------+-----------+--------+
| Row | ID | Name | WordChars | Origin |
+-----+----+-------------------+-----------+--------+
| 1 | 17 | "AMELIA BEDELIA" | (6, 7) | Eng |
+-----+----+-------------------+-----------+--------+
| 2 | 18 | "CHRISTOPH BAUER" | (9, 5) | Ger |
+-----+----+-------------------+-----------+--------+
| 3 | 18 | "C J BAUER" | (1, 1, 5) | Ger |
+-----+----+-------------------+-----------+--------+
| 4 | 19 | "FRANZ HELLER" | (5, 6) | Ger |
+-----+----+-------------------+-----------+--------+
나는 이것을 "무고한"이라고 부릅니다. 왜냐하면 어떤 자질이 흥미롭고 상대적으로 거칠기 때문입니다. 이름이 제거되면 행 2와 3 사이의 일치 강도 또는 행 2와 4 사이의 거리 (즉, 일치하는 거리)에 대해 합리적으로 결론을 내릴 수 없습니다.
결론
목표는 원래 문자열을 가리지 않으면 서 원래 문자열의 유용한 특성을 최대한 유지하는 방식으로 문자열을 변환하는 것입니다. 데이터 세트의 크기에 상관없이 암호 해독은 불가능하거나 사실상 불가능합니다. 특히 임의의 문자열 사이의 편집 거리를 유지하는 방법이 매우 유용합니다.
관련성이있는 몇 가지 논문을 찾았지만 제 머리 위에 약간 있습니다.