A privacy-preserving system for storing and matching de-identified Personal Identifiable Information (PII) records.
Piipan is a reference model for program integrity initiatives that aim to prevent multiple enrollment in federally-funded, but state-managed benefit programs. It is the open-source foundation for the USDA Food and Nutrition Service National Accuracy Clearinghouse (NAC), a congressionally mandated matching system for the Supplemental Nutrition Assistance Program (SNAP).
Under this model:
- State eligibility systems share de-identified participant data to Piipan daily
- Duplicate participation is prevented by using Piipan to search for matches during eligibility (re)certification
Paramount quality attributes of this system include:
- Preserving the privacy of program participants
- Accuracy of matches
- Adaptability to multiple benefit programs
Sec. 4011 of the 2018 Farm Bill, Interstate data matching to prevent multiple issuances, further guides our work, mandating that the information made available by state agencies:
- Shall be used only for the purpose of preventing multiple enrollment
- Shall not be retained for longer than is necessary
To achieve this product vision, Piipan incorporates a Privacy-Preserving Record Linkage (PPRL) technique to de-identify the PII of program participants at the state-level. Please see our high-level treatment and our technical specification for more details.
Note: Our documentation will sometimes use the terms Piipan and NAC interchangeably. However, more precisely, Piipan is our open-source product available on GitHub, while the NAC is a deployment of that product, configured specifically for the Food and Nutrition Service, and operated under their policies and regulations.
High-level architecture, process, and (sub)system documentation, as well as Architectural Decision Records (ADRs), are organized in this index.
Piipan is implemented with .NET and Microsoft Azure, using a Platform as a Service (PaaS) and Function as a Service (FaaS) approach. Once Piipan's prerequisites are installed in a development environment, its subsystems can be built and tested by navigating to the top of its project tree and running:
./build.bash test
For more details, see Piipan's architecture and implementation notes, our team practices, and our other technical documentation.
This project is in the worldwide public domain. As stated in CONTRIBUTING:
This project is in the public domain within the United States, and copyright and related rights in the work worldwide are waived through the CC0 1.0 Universal public domain dedication.
All contributions to this project will be released under the CC0 dedication. By submitting a pull request, you are agreeing to comply with this waiver of copyright interest.