RAPPOR is a novel privacy technology that allows inferring statistics about populations while preserving the privacy of individual users.
This repository contains simulation and analysis code in Python and R.
For a detailed description of the algorithms, see the paper and links below.
Feel free to send feedback to rappor-discuss@googlegroups.com.
Although the Python and R libraries should be portable to any platform, our end-to-end demo has only been tested on Linux.
If you don't have a Linux box handy, you can view the generated output.
To setup your enviroment there are some packages and R dependencies. There is a setup script to install them: $ ./setup.sh Then to build the native components run: $ ./build.sh This compiles and tests the fastrand
C extension module for Python, which speeds up the simulation.
Finally to run the demo run: $ ./demo.sh
The demo strings together the Python and R code. It:
The output is written to _tmp/regtest/results.html
, and can be opened with a browser.
R analysis (analysis/R
):
Demo dependencies (demo.sh
):
These are necessary if you want to test changes to the code.
Python client (client/python
):
rappor.py
file.Platform:
To run tests:
$ ./test.sh
This currently runs Python unit tests, lints Python source files, and runs R unit tests.
rappor.py
is a tiny standalone Python file, and you can easily copy it into a Python program.
NOTE: Its interface is subject to change. We are in the demo stage now, but if there's demand, we will document and publish the interface.
The R interface is also subject to change.
The fastrand
C module is optional. It‘s likely only useful for simulation of thousands of clients. It doesn’t use cryptographically strong randomness, and thus should not be used in production.
analysis/ R/ # R code for analysis cpp/ # Fast reimplementations of certain analysis # algorithms apps/ # Web apps to help you use RAPPOR (using Shiny) bin/ # Command line tools for analysis. client/ # Client libraries python/ # Python client library rappor.py ... cpp/ # C++ client library encoder.cc ... doc/ # Documentation tests/ # Tools for regression tests compare_dist.R # Test helper for single variable analysis gen_true_values.R # Generate test input make_summary.py # Generate an HTML report for the regtest rappor_sim.py # RAPPOR client simulation regtest_spec.py # Specification of test cases ... build.sh # Build scripts (docs, C extension, etc.) demo.sh # Quick demonstration docs.sh # Generate docs form the markdown in doc/ gh-pages/ # Where generated docs go. (A subtree of the branch gh-pages) pipeline/ # Analysis pipeline code. regtest.sh # End-to-end regression tests, including client # libraries and analysis setup.sh # Install dependencies (for Linux) test.sh # Test runner
口腔溃疡什么症状 | 牙齿贴片是什么意思 | 险象环生是什么意思 | 薄荷叶有什么功效 | 飞蚊症是什么原因 |
女性尿臭味重是什么病 | 梦见买馒头是什么意思 | 鱼油功效和作用是什么 | 味精和鸡精有什么区别 | 辣皮子是什么 |
省委组织部部长什么级别 | 什么是对的人 | Lady什么意思 | 乙肝核心抗体是什么意思 | 达人是什么意思 |
富甲一方什么意思 | 成是什么生肖 | 嚼槟榔为什么上瘾 | 什么的梨花 | 八0年属什么生肖 |
两肺少许纤维灶是什么意思xscnpatent.com | 3月4号是什么星座hcv9jop7ns4r.cn | 圣诞节送女生什么礼物好tiangongnft.com | 口幼读什么hcv7jop9ns4r.cn | 什么叫外阴白斑jingluanji.com |
七匹狼属于什么档次hcv9jop2ns9r.cn | 身上老出汗是什么原因引起的hcv8jop5ns2r.cn | 指甲盖凹凸不平是什么原因hcv8jop5ns5r.cn | 腮边长痘是什么原因hcv9jop7ns3r.cn | 男人为什么喜欢大胸fenrenren.com |
做爱时间短吃什么药hcv8jop8ns1r.cn | 夕火念什么hcv7jop6ns5r.cn | 蓝色配什么颜色最好看mmeoe.com | 拔完罐需要注意什么hcv8jop2ns7r.cn | 女性气血不足吃什么调理hcv7jop6ns5r.cn |
尹什么意思hcv9jop0ns7r.cn | 肌酸激酶偏低说明什么bjcbxg.com | simon是什么意思tiangongnft.com | 荷尔蒙是什么东西hcv9jop1ns2r.cn | 红花配绿叶是什么意思hcv9jop6ns3r.cn |