PrivacyFlash Proを簡単に実行するには、最新のパッケージリリースを取得します。
PrivacyFlash Proの詳細については、研究論文(BIBTEX)をご覧ください。
PrivacyFlash Proは、iOS Swiftアプリとそのライブラリのコードを分析して、プライバシーポリシーを生成します。 PrivacyFlash Proを使用すると、開発者がアプリのプライバシーポリシーを作成し、アプリのプライバシープラクティスをユーザーに対してより透明にするのを支援する予定です。
PrivacyFlash Proは、次の法律の規定をカバーしています。
PrivacyFlash Proは学術研究プロジェクトです。デビッド・バラカ(@davebaraka)、ラファエル・ゴールドスタイン(@rgoldstein01)、サラ・ジン(@sj-in)、およびプライバシー・テック・ラブのセバスチャン・ジムメック(@sebastianzimmeck)によって設計および開発されました。 Kuba Alicki(@kalicki1)はユニットテストを書きました。
1.プライバシーフラッシュProのインストール、実行、パッケージング
2。デモビデオ
3。参加してください
4。テスト
5。このレポのファイルとディレクトリ
6。サードパーティライブラリ
7。ありがとう!
パッケージ化されたリリースまたはソースファイルからPrivacyFlash Proをインストールおよび実行できます。 PrivacyFlash Proの新しいパッケージ版を作成することもできます。
リリースセクションにPrivacyFlash Proのリリースがあります(Google Chromeのダウンロード設定の下に、ブラウザ設定のZIPファイルをダウンロードできるようにする必要があります)。ダウンロードしたprivacyflash-pro.zipを解凍し、[PrivacyFlash Proアイコン]をクリックします。 MacOSセキュリティ設定でPrivacyFlash Proを開くことに同意する必要があります。数秒後、PrivacyFlash Proはデフォルトのブラウザで実行する必要があります。
Python 3がインストールされていることを確認してください。 PrivacyFlash ProはPython 2をサポートしていません。Python3を実行してpython3 3をインストールしている場合は、端末を確認できます。 Python 3を公式Python Webサイトで入手できます。
このリポジトリは、PrivacyFlash Proを保存し、 git clone [email protected]:privacy-tech-lab/privacyflash-pro.gitを実行するディレクトリにcdを作成してクローンを作成します。
強くお勧めします: python3 -m venv pfp-venv pfp-venvを使用して、Python仮想環境PFP-VENVを作成およびアクティブにし、 source pfp-venv/bin/activate (デフォルトシェルを使用していると仮定)で実行します。 Gitトラッキングを避けるために、仮想環境がprivacyflash-proディレクトリの外側にあることを確認してください。
privacyflash-pro/policygeneratorディレクトリへのcd 。 Python仮想環境を使用している場合は、 pip3 install -r requirements.txt実行します。Txt。それ以外の場合は、 pip3 install --user -r requirements.txt 。エラーが発生した場合は、 pip3 install -r requirements.txtを実行します。txt。それでもエラーが発生した場合は、 sudo pip3 install -r requirements.txtを実行します。
python3 app.pyを使用してprivacyflash proを実行します。
PrivacyFlash Proのディレクトリナビゲーションを使用して、iOS Swift Project Directory( .xcodeprojを含むディレクトリ)に移動し、[OK]をクリックして分析を開始します。コードベースのサイズに応じて、分析結果は1分以内に利用できるようにする必要があります。これで、魔法使いを通してガイドされます。 Wizardのアンケートを確定したら、アプリのプライバシーポリシーをエクスポートできます。
iOS-Sample-ProjectsのプロジェクトでPrivacyFlash Proをテストできます。たとえば、AdColonyサンプルプロジェクトを分析できます。 PrivacyFlash Proのディレクトリナビゲーションを使用して、ブラウザでPrivacyFlash Proを開始します。分析結果は1分以内に利用できるようにする必要があります。
ブラウザがLocalHostに接続していない場合は、実行している可能性のあるウイルス対策ソフトウェア(ESETなど)を無効にしてみてください。
PrivacyFlash Proは、SwiftのiOSアプリソースコードとSwiftおよびObjective-Cの統合されたサードパーティライブラリを分析します。ライブラリ分析は、コンパイルされていないライブラリとコンパイルされたライブラリで機能します。 PrivacyFlash Proは、Objective-CのiOSアプリソースコードを分析しません。
PrivacyFlash Proの新しいパッケージ版を作成することもできます。 Sourceから正常にインストールして実行した後、 python3 package.py privacyflash-pro/policygeneratorディレクトリ内で実行します。 MACOS分散アプリを含むZippedファイルはprivacyflash-pro/policygenerator/dist Directoryで生成されます。
注:Python仮想環境を使用している場合は、お勧めして、環境をアクティブにした後、 python3 package.py実行してください。
注:パッケージングの場合、 privacyflash-pro/policygenerator/interface/index.htmlおよびprivacyflash-pro/policygenerator/package.pyのバージョン番号を更新することを忘れないでください。また、バージョンをパッケージ化し、バージョンが公式ではないことをユーザーに特定してください。
パッケージングのエラーが発生したり、パッケージアプリを実行している場合は、 pip3 install pyinstaller -Uしてからパッケージスクリプトを再度実行して、依存関係のpyinstaller更新してみてください。
PrivacyFlash Proは、人々のための人々からのものです。誰もが貢献できます。特に、Pullリクエストを自由に開き、プライバシープラクティスとサードパーティライブラリを追加してください。他のアイデアやフィードバックがある場合は、お知らせください。ご連絡をお待ちしております!
プライバシー実践分析の仕様はpolicygenerator/spec/privacy_practices.yamlに含まれています。 PrivacyFlash Proは、関連するAPIの使用を識別する場合、アプリまたはライブラリでプライバシー慣行にフラグを立てます。つまり、アプリまたはライブラリには次のすべてが存在します。
NSLocationWhenInUseUsageDescription )CoreLocation )CLLocationManager )requestWhenInUseAuthorization )アプリコードを分析するために、APPコードに追加の証拠( startUpdatingLocationなど)がある限り、承認方法もライブラリにあることがあります。逆に、ライブラリの分析のために、ライブラリに追加の証拠( startUpdatingLocation )がある限り、承認方法はアプリコードにも含まれます。
また、たとえば、一部のプラクティスでは、健康(例:com.apple.developer.healthkitなど)が必要です。詳細については、privacy_practices.yamlを参照してください。
PrivacyFlash Proは、分析されたアプリに統合されたライブラリを識別します。サードパーティライブラリ分析の仕様はpolicygenerator/spec/third_parties.yamlに含まれています。 PrivacyFlash Proは、ライブラリの目的を決定するためにこの仕様を使用しています。ライブラリ名は、その名前でココアポッドに与えられます。たとえば、 AdColonyには目的Advertisingがあります。 PrivacyFlash Proは現在、次の目的カテゴリを使用して300のライブラリの目的を特定しています。
AuthenticationAdvertisingAnalyticsDeveloper SupportPayment ProcessingSocial Network Integrationライブラリがpolicygenerator/spec/third_parties.yamlに含まれていない場合でも、Privacyflash Proはプロジェクトに含まれるファイルを分析しています。ただし、生成しているプライバシーポリシーで、ライブラリの目的を手動で入力する必要があります。
PrivacyFlash Proのユニットテストは、Python Unitest Frameworkで構築されています。 PrivacyFlash Proの組み込みテストを実行するには、このリポジトリのローカルコピーのルートディレクトリ内からpython3 -m unittest使用してください。
iOS-sample-projects :PrivacyFlash Proのサンプルプロジェクトを分析およびテストします。policygenerator/ :PrivacyFlash Proのコードが含まれています。policygenerator/app.py :プライバシーポリシーを生成するためのメインエントリポイント。policygenerator/package.py :プライバシーフラッシュプロの分散パッケージを作成するスクリプト。policygenerator/interface :ユーザーにポリシーを表示するために、ユーザーインターフェイスに関連するすべてのコードが含まれています。policygenerator/spec :サードパーティとプライバシープラクティスの仕様。policygenerator/spec/privacy_practices.yaml :プライバシー慣行の使用を検出するための仕様が含まれています。policygenerator/spec/third_parties.yaml :広告ネットワークおよびその他のサードパーティライブラリの仕様が含まれています。policygenerator/src/analysis.py :プロジェクトを分析するためのモジュールは、プライバシー慣行の使用の例を探します。policygenerator/src/configure_data.py :PythonコードとUIのJavaScriptコードの間のブリッジ。 Generator Engineの結果を、UIに使用する適切なJSONファイル/オブジェクトに構成します。policygenerator/src/constants.py :定数クラスは、インデックス値でプライバシーの実践を識別するために内部的に使用されます。policygenerator/src/evidence.py :エビデンスクラスは、アプリのファイルでプライバシー実践の使用を追跡するために使用されます。policygenerator/src/privacy_practices.py :分析するアプリプロジェクトのデータをロードします。policygenerator/requirements.txt :PrivacyFlash Proの依存関係。 PrivacyFlash Proは、次のサードパーティライブラリを使用しています。開発者に感謝します。
サポーターに感謝したいと思います!
ウェスリアン大学とアニルフェルナンド基金が提供する財政支援。

到達した結論または取られたポジションは私たち自身であり、必ずしも私たちの金融支持者、その受託者、役員、またはスタッフの結論ではありません。
