{"id":17814,"date":"2024-07-25T16:46:26","date_gmt":"2024-07-25T20:46:26","guid":{"rendered":"https:\/\/www.iri.com\/blog\/?p=17814"},"modified":"2025-12-29T15:37:33","modified_gmt":"2025-12-29T20:37:33","slug":"masking-phi-in-x12-edi-files-with-darkshield","status":"publish","type":"post","link":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/","title":{"rendered":"Masking PHI in X12 EDI Files with DarkShield"},"content":{"rendered":"<h5><b>Introduction<\/b><\/h5>\n<p><span style=\"font-weight: 400;\">The <\/span><a href=\"https:\/\/www.iri.com\/products\/darkshield\"><span style=\"font-weight: 400;\">IRI DarkShield<\/span><\/a><span style=\"font-weight: 400;\"> data masking tool includes fit-for-purpose wizards in its <\/span><a href=\"https:\/\/www.iri.com\/products\/workbench\/darkshield-gui\"><span style=\"font-weight: 400;\">IRI Workbench<\/span><\/a><span style=\"font-weight: 400;\"> GUI to search (classify) and mask (remediate) sensitive \u201ddark data\u201d (as defined by Gartner) in many semi, unstructured, and structured file, NoSQL, and relational database (RDB) sources.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">This article focuses on a wizard that can discover and de-identify PHI in healthcare documents in <\/span><i><span style=\"font-weight: 400;\">X12 <\/span><\/i><span style=\"font-weight: 400;\">electronic data interchange (EDI) format; see <\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-hl7-edi-files-with-darkshield\/\"><span style=\"font-weight: 400;\">this article<\/span><\/a><span style=\"font-weight: 400;\"> if you have <\/span><i><span style=\"font-weight: 400;\">HL7<\/span><\/i><span style=\"font-weight: 400;\"> files to mask.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Though not discussed in this article, DarkShield also includes wizards for other data sources, too, like the <\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-files-with-the-darkshield-files-wizard\/\"><i><span style=\"font-weight: 400;\">New File Search\/Masking Job<\/span><\/i><\/a><span style=\"font-weight: 400;\"> \u2026 wizard for sensitive data in files, the <\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/finding-and-masking-nosql-dbs-with-the-darkshield-gui\/\"><i><span style=\"font-weight: 400;\">New NoSQL DB Search\/Masking Job\u2026<\/span><\/i><\/a><span style=\"font-weight: 400;\"> wizard for sensitive data in various NoSQL databases, and the <\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/\"><i><span style=\"font-weight: 400;\">New Relational DB Search\/Masking Job\u2026<\/span><\/i><\/a><span style=\"font-weight: 400;\"> wizard for sensitive data inside RDB schemas.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone  wp-image-18975\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Architecture-V6-731x1024.png\" alt=\"\" width=\"450\" height=\"630\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Architecture-V6.png 731w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Architecture-V6-214x300.png 214w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Architecture-V6-768x1075.png 768w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Architecture-V6-1097x1536.png 1097w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Architecture-V6-1463x2048.png 1463w\" sizes=\"(max-width: 450px) 100vw, 450px\" \/><\/p>\n<h5><b>What the DarkShield Healthcare Wizard Does<\/b><\/h5>\n<p><span style=\"font-weight: 400;\">The \u201c<\/span><i><span style=\"font-weight: 400;\">New Healthcare Search\/Masking Job \u2026<\/span><\/i><span style=\"font-weight: 400;\">\u201d wizard in the IRI Workbench GUI for DarkShield creates a DarkShield Job (.dsc file) with the Search and Mask Contexts applicable to your job.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Search Contexts contain instructions on how to search for PII in its source. Mask Contexts contain instructions on masking the PII found during the search, and how to access the target where the masked version of data will be sent.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The searching and masking of data in X12 documents is based on Data Classes you pre-define and store in an <\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/iri-data-classification\/\"><span style=\"font-weight: 400;\">IRI Data Class and Rule Library<\/span><\/a><span style=\"font-weight: 400;\">, or create directly from this wizard. Each Data Class contains one or more search methods called Search Matchers to find PII\/PHI values.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">X12 documents specifically use search matchers based on the location (path metadata) matchers, but you can also combine those with content-based data matchers as well to increase your search range (and time). For more information on the various search methods available, read about <\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/location-matchers\/\"><span style=\"font-weight: 400;\">Location Matchers<\/span><\/a><span style=\"font-weight: 400;\"> and <\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/data-matchers\/\"><span style=\"font-weight: 400;\">Data Matchers<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">While DarkShield previously supported X12 documents, this wizard provides a user-friendly front-end to configure the jobs. DarkShield has other improvements within it, too, including support for sub-fields and repeating segments, topics we will delve into later in this article.<\/span><\/p>\n<h5><b>Prerequisites<\/b><\/h5>\n<p><span style=\"font-weight: 400;\">You may need to update your DarkShield API and Workbench IDE; see <\/span><a href=\"https:\/\/www.youtube.com\/watch?v=kP-UYws5k6s\"><span style=\"font-weight: 400;\">this YouTube video<\/span><\/a><span style=\"font-weight: 400;\"> for instructions, and email <\/span><a href=\"mailto:darkshield@iri.com\"><span style=\"font-weight: 400;\">darkshield@iri.com<\/span><\/a><span style=\"font-weight: 400;\"> if you need help or have any questions. Before launching the DarkShield Healthcare wizard, ensure these preliminary steps are completed:<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17822\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/preliminary-step-wizard-300x243.png\" alt=\"\" width=\"587\" height=\"475\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/preliminary-step-wizard-300x243.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/preliminary-step-wizard.png 768w\" sizes=\"(max-width: 587px) 100vw, 587px\" \/><\/p>\n<ol>\n<li><span style=\"font-weight: 400;\"> First, verify that the DarkShield API distribution directory is specified in the IRI Workbench <img decoding=\"async\" title=\"\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXdXhOhZmCSCEg2wddSrYAjLHncFBoxjcK6ufCg0i4VGUijhxt_aFpb6MGXyE2I-5cN6tYGKO25qIbkcPBw0szYPzwfpJ0kiPc51rQCg-h_B25oYxlmDPmdAOjpGZskCaxaztraA2EQZ2qJeTox0pFy9mgSK?key=N7g_PQ2yoSdjWTnjJ4_FnQ\" alt=\"\" \/><\/span> <i><span style=\"font-weight: 400;\">Preferences &gt; IRI &gt; DarkShield<\/span><\/i><span style=\"font-weight: 400;\">. From here, you can configure DarkShield GUI and API preferences, including the host, port, and directory holding the DarkShield API. If the DarkShield API distribution (Plankton) is empty or if you are using a different distribution, you will need to manually update the specified folder to reflect the location of the DarkShield API.<\/span><\/li>\n<\/ol>\n<ol start=\"2\">\n<li><span style=\"font-weight: 400;\"> Second, all DarkShield Wizards require a project possessing an IRI Data Class and Rule Library. The library can be empty, as this wizard can create data classes and rules for you. Learn about data classes and rules from <\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/location-matchers\/\"><span style=\"font-weight: 400;\">this article<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/li>\n<\/ol>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17824\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/IRI-project-with-data-class-and-rule-library-300x55.png\" alt=\"\" width=\"583\" height=\"107\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/IRI-project-with-data-class-and-rule-library-300x55.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/IRI-project-with-data-class-and-rule-library.png 687w\" sizes=\"(max-width: 583px) 100vw, 583px\" \/><\/p>\n<p style=\"text-align: center;\"><i><span style=\"font-weight: 400;\">IRI Project Containing an IRI Data Class and Rule Library<\/span><\/i><\/p>\n<ol start=\"3\">\n<li><span style=\"font-weight: 400;\"> Finally, verify that the Plankton (DarkShield API) server is running. The DarkShield API Status view (bottom of the screen) displays whether the API server is running.<\/span><\/li>\n<\/ol>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17825\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/DarkShield-API-Status-view-300x145.png\" alt=\"\" width=\"569\" height=\"275\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/DarkShield-API-Status-view-300x145.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/DarkShield-API-Status-view.png 557w\" sizes=\"(max-width: 569px) 100vw, 569px\" \/><\/p>\n<h5><b>Using the Wizard<\/b><\/h5>\n<p><span style=\"font-weight: 400;\">To access the wizard, navigate to the DarkShield menu dropdown from the top toolbar menu in <\/span><a href=\"https:\/\/www.iri.com\/products\/workbench\/darkshield-gui\"><span style=\"font-weight: 400;\">IRI Workbench<\/span><\/a><span style=\"font-weight: 400;\"> and choose &#8216;New Healthcare Search\/Masking Job\u2026&#8217;.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17827\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/New-Healthcare-Search-Masking-Job-300x200.png\" alt=\"\" width=\"341\" height=\"227\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/New-Healthcare-Search-Masking-Job-300x200.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/New-Healthcare-Search-Masking-Job.png 313w\" sizes=\"(max-width: 341px) 100vw, 341px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">This action opens the first page, where you will specify the source type, in this case, X12. Wizards for a variety of common FHIR formats will be added here shortly.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17829\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/source-type-wizard-1-300x127.png\" alt=\"\" width=\"447\" height=\"189\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/source-type-wizard-1-300x127.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/source-type-wizard-1.png 519w\" sizes=\"(max-width: 447px) 100vw, 447px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">After selecting the source type, click Next. The next page will prompt you to specify the name and location of the DarkShield job you are building.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">You also have the option to use previously created Data Classes or Data Class Groups. If you do, this streamlines the process of setting up the job without more steps because you will be using data classes that were defined or modified in the library or previous use of this wizard.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">If this is your first time defining a DarkShield job for X12 however, we recommend you to not use this option. That is because the next pages of the wizard will take you through the very specific types of X12 data segments you need to classify.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17830\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/specify-job-name_location_type-300x149.png\" alt=\"\" width=\"571\" height=\"284\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/specify-job-name_location_type-300x149.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/specify-job-name_location_type.png 657w\" sizes=\"(max-width: 571px) 100vw, 571px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">After the setup page is the PII General and Advanced Selection Page. Here, predefined \u201cgroupings\u201d<\/span><span style=\"font-weight: 400;\"> <span id='easy-footnote-1-17814' class='easy-footnote-margin-adjust'><\/span><span class='easy-footnote'><a href='https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#easy-footnote-bottom-1-17814' title='We define groupings as general categories of PII \/ PHI that reflect information related to that group name. The X12 groupings are conceptually similar to a Data Class Group but are statically predefined.'><sup>1<\/sup><\/a><\/span> <\/span><span style=\"font-weight: 400;\">of common Personally Identifiable Information (PII) or Protected Health Information (PHI) types found within healthcare documents are presented.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">It&#8217;s important to note that while these groupings cover many PII instances, they may not encompass all of them within a document. Therefore, you should carefully review all information during job creation to ensure the accuracy of your data discovery and de-identification results.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">On this page, we can select these groupings for easier searching and masking of PII \/ PHI:<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17831\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/PII-selection-300x186.png\" alt=\"\" width=\"629\" height=\"390\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/PII-selection-300x186.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/PII-selection.png 655w\" sizes=\"(max-width: 629px) 100vw, 629px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">The \u201cAdvanced\u201d section of the wizard gives you more granular control over the segments, fields, and sub-fields to define for searching and masking purposes. For this example, we will be using both a general selection (Street Address) and a few advanced selections.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17832\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/advanced-289x300.png\" alt=\"\" width=\"619\" height=\"642\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/advanced-289x300.png 289w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/advanced.png 655w\" sizes=\"(max-width: 619px) 100vw, 619px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">This next wizard page lets you filter out any unnecessary information from the general grouping selection made on the previous page. Filtering of this kind can improve job speed.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">In this example, you&#8217;re presented with a list comprising the &#8216;Street Address&#8217; general selection. If your documents don&#8217;t contain any segments from this list, there&#8217;s no need for filtering, as they will be automatically skipped.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">However, if you prefer not to mask any of this information, you can simply deselect it from the table. For the sake of this example, we&#8217;ll keep all the information selected.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17834\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/filtering-option-291x300.png\" alt=\"\" width=\"619\" height=\"638\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/filtering-option-291x300.png 291w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/filtering-option.png 658w\" sizes=\"(max-width: 619px) 100vw, 619px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">The next wizard page is the &#8216;Rule Selection Wizard Page,&#8217; where you associate the information selected in previous wizard pages with masking rules. Note that any information lacking a rule will be skipped during the search and masking process.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">On this page, you&#8217;ll find a dropdown menu for selecting groupings defined in an earlier wizard, including information from the advanced selections. Once you\u2019ve selected a grouping, you can apply a rule to it by selecting it from the Select Rule menu and clicking on &#8216;Add Group Rule.\u2019<\/span><\/p>\n<p><span style=\"font-weight: 400;\">There is also an optional dropdown menu labeled Segment. This permits the application of a rule solely to the selected segment within the grouping.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Within the table, you can also click on, and directly modify the rule cell using a dropdown menu to select a rule for a specific item. This provides even more granular control of the masking job.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17835\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/masking_rule_selection-289x300.png\" alt=\"\" width=\"562\" height=\"584\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/masking_rule_selection-289x300.png 289w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/masking_rule_selection.png 654w\" sizes=\"(max-width: 562px) 100vw, 562px\" \/><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17836\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/masking_rule_selection_advanced-300x142.png\" alt=\"\" width=\"646\" height=\"306\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/masking_rule_selection_advanced-300x142.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/masking_rule_selection_advanced.png 649w\" sizes=\"(max-width: 646px) 100vw, 646px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">The \u201cCreate Rule\u201d button allows you to create a rule directly from this wizard. For more information about creating a rule, or what the masking rules are, refer to <\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/iri-data-classification\/\"><span style=\"font-weight: 400;\">this article<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Note that if you also have <\/span><b>HL7<\/b><span style=\"font-weight: 400;\"> documents and ran the DarkShield search\/mask wizard covered <\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-hl7-edi-files-with-darkshield\/\"><span style=\"font-weight: 400;\">in this article<\/span><\/a><span style=\"font-weight: 400;\">, the segments (and thus data classes) are different from X12; therefore they are not interchangeable. However, if you want to apply the same masking functions to similar groupings, you can at least refer to the saved data class rules from your HL7 wizard when selecting rules for your X12 grouping and segments.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The final option on this page is the \u201cRepeating Segment #\u201d column in the table. This is designed to be used with documents that contain duplicate segments. If there are duplicate segments, you may need to represent them within the table.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The \u201cRepeating Segment #\u201d defaults to the first occurrence of the segment. Below is an example of a document containing two N1 segments. If we wanted to only grab the second repeating segment, we would place a 2 inside the \u201cRepeating Segment #\u201d column.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17837\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/repeating-segment-300x80.png\" alt=\"\" width=\"405\" height=\"108\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/repeating-segment-300x80.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/repeating-segment.png 340w\" sizes=\"(max-width: 405px) 100vw, 405px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">The last two wizard pages are used to define or modify the locations of your unmasked file sources and masked targets, respectively. You can specify local PC or LAN file system paths or cloud buckets.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">By default, each target file will have the same name as the source. If you specify more than one target, the masked files will be copied into every defined folder.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17839\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/data_location_file_system-300x123.png\" alt=\"\" width=\"661\" height=\"271\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/data_location_file_system-300x123.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/data_location_file_system.png 656w\" sizes=\"(max-width: 661px) 100vw, 661px\" \/><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17840\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/data_location_file_x12out-300x81.png\" alt=\"\" width=\"666\" height=\"180\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/data_location_file_x12out-300x81.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/data_location_file_x12out.png 655w\" sizes=\"(max-width: 666px) 100vw, 666px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">When you click Finish, a DarkShield job configuration (.dsc) file is created in the \u201cProject Explorer\u201d folder you specified on the first wizard page. A new X12 data class group will also be created inside the \u201ciriLibrary.dcrlib\u201d in your project, which contains the data classes you just defined in the wizard.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17841\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/iriLibrary_dcrlib.png\" alt=\"\" width=\"324\" height=\"186\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Within these Data Classes, every detail can be altered without the need to revisit the wizard. This flexibility enables you to modify, add, or remove any Data Classes, significantly reducing setup time for future jobs, especially if requirements change.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17842\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/data_class_matcher_details-300x157.png\" alt=\"\" width=\"863\" height=\"452\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/data_class_matcher_details-300x157.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/data_class_matcher_details-1024x535.png 1024w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/data_class_matcher_details-768x401.png 768w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/data_class_matcher_details.png 1074w\" sizes=\"(max-width: 863px) 100vw, 863px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Double-click on your .dsc file to see the &#8216;DarkShield Job Details Page&#8217;. Review the source, target, and data class information. It&#8217;s important to note that any changes made to items in the .dcrlib file require selecting the &#8216;Modify&#8217; button and completing the wizard to ensure those changes are reflected in the .dsc file.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17843\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/data_class_rule_mappings-300x155.png\" alt=\"\" width=\"813\" height=\"420\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/data_class_rule_mappings-300x155.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/data_class_rule_mappings-1024x529.png 1024w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/data_class_rule_mappings-768x397.png 768w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/data_class_rule_mappings.png 1080w\" sizes=\"(max-width: 813px) 100vw, 813px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">To run your job, right-click on the .dsc file and select the type of job you want. In this case, I am choosing a combined search and masking job.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17844\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/combined-search-masking-wizard-280x300.png\" alt=\"\" width=\"526\" height=\"564\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/combined-search-masking-wizard-280x300.png 280w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/combined-search-masking-wizard.png 717w\" sizes=\"(max-width: 526px) 100vw, 526px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Upon examining the sample X12 source and target file below, we can see the PII masked in various ways, including pseudonymization and format-preserving encryption (FPE) for realism. Many masking (and synthesis) functions are supported; see <\/span><a href=\"https:\/\/www.iri.com\/solutions\/data-masking\/static-data-masking\"><span style=\"font-weight: 400;\">this page<\/span><\/a><span style=\"font-weight: 400;\"> and its links for details.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">In the example below we chose to encrypt the street address, pseudonymize the name, and redact the phone number. Note there are other PHI elements still visible in the document; we left them alone to showcase the granularity and control you have over masking this document.<\/span><\/p>\n<p><b>Sample X12 Source File:<\/b><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17845\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/Sample-X12-Source-File-300x104.png\" alt=\"\" width=\"455\" height=\"158\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/Sample-X12-Source-File-300x104.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/Sample-X12-Source-File.png 414w\" sizes=\"(max-width: 455px) 100vw, 455px\" \/><\/p>\n<p><b>Masked Target:<\/b><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-17846\" src=\"\/blog\/wp-content\/uploads\/2024\/07\/masked-target-300x113.png\" alt=\"\" width=\"443\" height=\"167\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/masked-target-300x113.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/masked-target.png 376w\" sizes=\"(max-width: 443px) 100vw, 443px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">In addition to the masked files, an audit log file called<\/span><i><span style=\"font-weight: 400;\"> results.json<\/span><\/i><span style=\"font-weight: 400;\"> is generated. It details which data classes matched on information in the X12 file(s). and the corresponding rules used to mask it.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">It is also possible to generate aggregate visualization of the discovered PII and whether it was masked in built-in dashboard charts per <\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/darkshield-pii-discovery-masking-charts\/\"><span style=\"font-weight: 400;\">this article<\/span><\/a><span style=\"font-weight: 400;\">. For help using this wizard to scan and\/or mask X12 data \u2013 or data in any other source(s) \u2013 send an email to <\/span><a href=\"mailto:darkshield@iri.com\"><span style=\"font-weight: 400;\">darkshield@iri.com<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\n<section>\n<div class=\"container plain-width\">\n<div class=\"faq-section\">\n<h3>Frequently Asked Questions (FAQs)<\/h3>\n<div class=\"faq-item\">\n<div class=\"faq-question\">1. What is X12 EDI and why should PHI in X12 documents be masked? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">X12 EDI is a standard for exchanging healthcare and insurance transactions like eligibility, claims, and remittance. Masking PHI in X12 files protects patient privacy, reduces breach risk, and supports HIPAA compliance during sharing, analytics, QA, and migrations.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">2. How does DarkShield help mask PHI in X12 files? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\"><a href=\"https:\/\/www.iri.com\/products\/darkshield\">IRI DarkShield<\/a> provides a Healthcare Search and Masking Job wizard in IRI Workbench that builds a .dsc job to find PHI using matchers and then apply masking rules. It guides you to select X12 segments and fields, choose rules, and set source and target locations.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">3. What are Search and Mask Contexts in an X12 job? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">Search Contexts define how PHI is found in X12 using location matchers and optional content matchers. Mask Contexts define which masking functions to apply to found values and where to write masked outputs.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">4. How do I prepare IRI Workbench to run the X12 wizard? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">Confirm the DarkShield API path in Preferences, ensure the Plankton API server is running, and include an <a href=\"https:\/\/www.iri.com\/blog\/data-protection\/iri-data-classification\/\">IRI Data Class and Rule Library<\/a> in your project so the wizard can use or create classes and rules.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">5. What PHI can DarkShield detect in X12 documents? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">DarkShield can detect names, addresses, phone numbers, IDs, and other PHI across X12 segments. You can pick predefined groupings and add advanced selections down to segment, element, and subelement levels.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">6. How do location matchers work for X12? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">Location matchers use X12 path metadata to target specific segments and elements, which avoids full content scans and speeds discovery. You can combine location and data matchers for broader coverage if needed.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">7. Can I reuse masking rules across multiple X12 documents? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">Yes. Data Classes and rules are saved in the library and can be reused across jobs so the same PHI types get the same function consistently for accuracy and integrity.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">8. How are repeating segments handled in X12? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">The wizard includes a Repeating Segment number that lets you specify which occurrence of a repeated segment to search and mask. This is useful when segments like N1 or NM1 appear more than once.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">9. What masking functions can I apply to X12 PHI? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">You can use format preserving encryption, pseudonymization, redaction, hashing, randomization, and other functions. Choose functions that fit your need for realism, reversibility, and security.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">10. Can I filter which X12 fields get masked to improve speed? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">Yes. After selecting general PHI groupings you can filter out unneeded segments and elements so scans skip irrelevant paths and run faster.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">11. What outputs does an X12 job produce? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">The job writes masked files to the targets you specify and also creates a results.json audit log that records which data classes matched and which masking rules were applied.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">12. How do I run and modify an X12 masking job? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">Right click the .dsc file and choose Run As &gt; IRI Search and Masking Job. To change sources, targets, or rules, open the job details, update the Data Class and Rule Library if needed, then rerun.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">13. Can DarkShield handle X12 along with HL7 or FHIR in the same environment? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">Yes. DarkShield supports wizards for X12, HL7, and FHIR. Data Classes and rules can be reused where appropriate, but segment paths differ by standard so you configure each format with its own wizard.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">14. How does DarkShield support compliance and auditing for X12 masking? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">Jobs run self hosted, produce human and machine readable logs, and preserve consistent rule use. This supports HIPAA documentation needs and internal audits while keeping PHI under your control.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">15. What if I need to mask X12 files stored in the cloud? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">You can point the wizard to cloud buckets or mounted cloud storage for sources and targets. Masking occurs within your infrastructure and the masked outputs are written to the locations you define.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">16. Can developers automate X12 masking outside the GUI? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">Yes. You can export the same job specs for the command line and API. This enables scheduling, CI or CD integration, and custom applications that call DarkShield for discovery and masking.<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/section>\n","protected":false},"excerpt":{"rendered":"<p>Introduction The IRI DarkShield data masking tool includes fit-for-purpose wizards in its IRI Workbench GUI to search (classify) and mask (remediate) sensitive \u201ddark data\u201d (as defined by Gartner) in many semi, unstructured, and structured file, NoSQL, and relational database (RDB) sources.\u00a0 This article focuses on a wizard that can discover and de-identify PHI in healthcare<\/p>\n<div><a class=\"btn-filled btn\" href=\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/\" title=\"Masking PHI in X12 EDI Files with DarkShield\">Read More<\/a><\/div>\n","protected":false},"author":204,"featured_media":17852,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[8],"tags":[1881,1882,14,1880,1884,1885,1879,1388,807,1812,1886,1878,1549,1887,1883,1750,1877],"class_list":["post-17814","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-data-protection","tag-darkshield-healthcare-wizard","tag-data-class-and-rule-library","tag-data-masking","tag-data-masking-wizard","tag-data-privacy-compliance","tag-electronic-data-interchange","tag-healthcare-data-privacy","tag-iri-darkshield","tag-iri-workbench-ide","tag-masking-rules","tag-nosql-database-masking","tag-phi-de-identification","tag-phi-masking","tag-relational-database-masking","tag-search-matchers","tag-sensitive-data-protection","tag-x12-edi"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v23.4 (Yoast SEO v23.4) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Masking PHI in X12 EDI Files with DarkShield - IRI<\/title>\n<meta name=\"description\" content=\"Learn to find, anonymize (mask) and audit PHI in X12 EDI files using the fit-for-purpose X12 data masking tool in IRI DarkShield.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Masking PHI in X12 EDI Files with DarkShield\" \/>\n<meta property=\"og:description\" content=\"Learn to find, anonymize (mask) and audit PHI in X12 EDI files using the fit-for-purpose X12 data masking tool in IRI DarkShield.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/\" \/>\n<meta property=\"og:site_name\" content=\"IRI\" \/>\n<meta property=\"article:published_time\" content=\"2024-07-25T20:46:26+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-29T20:37:33+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/Featured-Image_Masking-PHI-in-X12-EDI-Files.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1110\" \/>\n\t<meta property=\"og:image:height\" content=\"532\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Tylor Quinley\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@tylorq@iri.com\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Tylor Quinley\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"16 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/\"},\"author\":{\"name\":\"Tylor Quinley\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/287497b6de7a30d7c674b81c7cbdbbb1\"},\"headline\":\"Masking PHI in X12 EDI Files with DarkShield\",\"datePublished\":\"2024-07-25T20:46:26+00:00\",\"dateModified\":\"2025-12-29T20:37:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/\"},\"wordCount\":2414,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/Featured-Image_Masking-PHI-in-X12-EDI-Files.png\",\"keywords\":[\"DarkShield Healthcare Wizard\",\"Data Class and Rule Library\",\"data masking\",\"Data Masking Wizard\",\"Data Privacy Compliance\",\"Electronic Data Interchange\",\"Healthcare Data Privacy\",\"IRI DarkShield\",\"IRI workbench IDE\",\"Masking Rules\",\"NoSQL Database Masking\",\"PHI De-identification\",\"PHI masking\",\"Relational Database Masking\",\"Search Matchers\",\"sensitive data protection\",\"X12 EDI\"],\"articleSection\":[\"Data Masking\/Protection\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/\",\"url\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/\",\"name\":\"Masking PHI in X12 EDI Files with DarkShield - IRI\",\"isPartOf\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/Featured-Image_Masking-PHI-in-X12-EDI-Files.png\",\"datePublished\":\"2024-07-25T20:46:26+00:00\",\"dateModified\":\"2025-12-29T20:37:33+00:00\",\"description\":\"Learn to find, anonymize (mask) and audit PHI in X12 EDI files using the fit-for-purpose X12 data masking tool in IRI DarkShield.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#primaryimage\",\"url\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/Featured-Image_Masking-PHI-in-X12-EDI-Files.png\",\"contentUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/Featured-Image_Masking-PHI-in-X12-EDI-Files.png\",\"width\":1110,\"height\":532},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.iri.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Masking PHI in X12 EDI Files with DarkShield\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.iri.com\/blog\/#website\",\"url\":\"https:\/\/www.iri.com\/blog\/\",\"name\":\"IRI\",\"description\":\"Total Data Management Blog\",\"publisher\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.iri.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\",\"name\":\"IRI\",\"url\":\"https:\/\/www.iri.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png\",\"contentUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png\",\"width\":750,\"height\":206,\"caption\":\"IRI\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/287497b6de7a30d7c674b81c7cbdbbb1\",\"name\":\"Tylor Quinley\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/103619c915af89371c31a18efe3ece45?s=96&d=blank&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/103619c915af89371c31a18efe3ece45?s=96&d=blank&r=g\",\"caption\":\"Tylor Quinley\"},\"sameAs\":[\"https:\/\/www.iri.com\/blog\/wp-admin\",\"https:\/\/x.com\/tylorq@iri.com\"],\"url\":\"https:\/\/www.iri.com\/blog\/author\/tylorq\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Masking PHI in X12 EDI Files with DarkShield - IRI","description":"Learn to find, anonymize (mask) and audit PHI in X12 EDI files using the fit-for-purpose X12 data masking tool in IRI DarkShield.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/","og_locale":"en_US","og_type":"article","og_title":"Masking PHI in X12 EDI Files with DarkShield","og_description":"Learn to find, anonymize (mask) and audit PHI in X12 EDI files using the fit-for-purpose X12 data masking tool in IRI DarkShield.","og_url":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/","og_site_name":"IRI","article_published_time":"2024-07-25T20:46:26+00:00","article_modified_time":"2025-12-29T20:37:33+00:00","og_image":[{"width":1110,"height":532,"url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/Featured-Image_Masking-PHI-in-X12-EDI-Files.png","type":"image\/png"}],"author":"Tylor Quinley","twitter_card":"summary_large_image","twitter_creator":"@tylorq@iri.com","twitter_misc":{"Written by":"Tylor Quinley","Est. reading time":"16 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#article","isPartOf":{"@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/"},"author":{"name":"Tylor Quinley","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/287497b6de7a30d7c674b81c7cbdbbb1"},"headline":"Masking PHI in X12 EDI Files with DarkShield","datePublished":"2024-07-25T20:46:26+00:00","dateModified":"2025-12-29T20:37:33+00:00","mainEntityOfPage":{"@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/"},"wordCount":2414,"commentCount":0,"publisher":{"@id":"https:\/\/www.iri.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#primaryimage"},"thumbnailUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/Featured-Image_Masking-PHI-in-X12-EDI-Files.png","keywords":["DarkShield Healthcare Wizard","Data Class and Rule Library","data masking","Data Masking Wizard","Data Privacy Compliance","Electronic Data Interchange","Healthcare Data Privacy","IRI DarkShield","IRI workbench IDE","Masking Rules","NoSQL Database Masking","PHI De-identification","PHI masking","Relational Database Masking","Search Matchers","sensitive data protection","X12 EDI"],"articleSection":["Data Masking\/Protection"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/","url":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/","name":"Masking PHI in X12 EDI Files with DarkShield - IRI","isPartOf":{"@id":"https:\/\/www.iri.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#primaryimage"},"image":{"@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#primaryimage"},"thumbnailUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/Featured-Image_Masking-PHI-in-X12-EDI-Files.png","datePublished":"2024-07-25T20:46:26+00:00","dateModified":"2025-12-29T20:37:33+00:00","description":"Learn to find, anonymize (mask) and audit PHI in X12 EDI files using the fit-for-purpose X12 data masking tool in IRI DarkShield.","breadcrumb":{"@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#primaryimage","url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/Featured-Image_Masking-PHI-in-X12-EDI-Files.png","contentUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/Featured-Image_Masking-PHI-in-X12-EDI-Files.png","width":1110,"height":532},{"@type":"BreadcrumbList","@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.iri.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Masking PHI in X12 EDI Files with DarkShield"}]},{"@type":"WebSite","@id":"https:\/\/www.iri.com\/blog\/#website","url":"https:\/\/www.iri.com\/blog\/","name":"IRI","description":"Total Data Management Blog","publisher":{"@id":"https:\/\/www.iri.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.iri.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.iri.com\/blog\/#organization","name":"IRI","url":"https:\/\/www.iri.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png","contentUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png","width":750,"height":206,"caption":"IRI"},"image":{"@id":"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/287497b6de7a30d7c674b81c7cbdbbb1","name":"Tylor Quinley","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/103619c915af89371c31a18efe3ece45?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/103619c915af89371c31a18efe3ece45?s=96&d=blank&r=g","caption":"Tylor Quinley"},"sameAs":["https:\/\/www.iri.com\/blog\/wp-admin","https:\/\/x.com\/tylorq@iri.com"],"url":"https:\/\/www.iri.com\/blog\/author\/tylorq\/"}]}},"jetpack_featured_media_url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/07\/Featured-Image_Masking-PHI-in-X12-EDI-Files.png","_links":{"self":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/17814"}],"collection":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/users\/204"}],"replies":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/comments?post=17814"}],"version-history":[{"count":18,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/17814\/revisions"}],"predecessor-version":[{"id":18977,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/17814\/revisions\/18977"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/media\/17852"}],"wp:attachment":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/media?parent=17814"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/categories?post=17814"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/tags?post=17814"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}