Skip to content
This repository has been archived by the owner on Feb 13, 2019. It is now read-only.

Implementation of a data collection and aggregation infrastructure that supports individual data obfuscation.

Notifications You must be signed in to change notification settings

Boston-Women-Work/data-aggregator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

80 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

data-aggregator

Implementation of a data collection and aggregation infrastructure that supports individual data obfuscation.

This repository is currently being maintained primarily for archival purposes. The client interface as it appeared during its deployment in 2016 can be viewed online (it is not tied to a backend server and, thus, is non-functioning). For the latest version of the web-based MPC framework derived from the one in this repository, please visit https://github.com/multiparty/web-mpc.

Environment

It is expected that this application will operate on an Amazon Web Services EC2 instance running Amazon Linux under a security group that permits connections on port 80. The environment in which it runs is set up as follows.

  • First, install Node.js, MongoDB, and necessary modules:

yum -y update

yum -y install nodejs npm --enablerepo=epel

echo "[MongoDB]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64
gpgcheck=0
enabled=1" | sudo tee -a /etc/yum.repos.d/mongodb.repo

yum install -y gcc-c++ mongodb-org-server mongodb-org-shell mongodb-org-tools

  • Navigate to the "server/" directory and install the NPM dependencies:

npm install

  • Now install the global dependency

npm install -g forever

  • Next, set up the database file and start the MongoDB server:

mkdir -p /data/db

mongod

  • Finally, retrieve the application files and in the directory "server/" run:

forever -o log.txt -e error.txt start index.js

Original modules and third-party dependencies

Only the following original modules have been written for this application. All other modules are off-the-shelf libraries.

  • client/script/ssCreate.js
  • client/index.html
  • client/success.html
  • server/index.js
  • server/template.js
  • trusted/script/generateMasks.js
  • trusted/script/generateSession.js
  • trusted/script/ssCreate.js
  • trusted/index.html
  • trusted/session_data.html
  • trusted/keys.txt
  • unmask/index.html
  • unmask/script/unmask.js
  • shared/aggregate.js

The following are third party dependencies included in the source tree (but not automatically installed in the environment).

  • trusted/script/filesaver.js
  • shared/handsontable
  • trusted/script/jszip
  • shared/jquery-1.11.2.js
  • shared/jsencrypt.js
  • shared/md5.js
  • unmask/script/ladda.min.js
  • unmask/script/spin.min.js
  • shared/underscore.js
  • client/script/waitingDialog.js

About

Implementation of a data collection and aggregation infrastructure that supports individual data obfuscation.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published