Chromium extension for bypassing censorship in Russia
Go to file
2017-10-31 21:20:56 +05:00
extensions/chromium Fix sanitizing logic to use new utils parser 2017-10-31 21:20:56 +05:00
.gitignore Add eslint w/ Google styles, restyle 2016-11-29 09:27:15 -08:00
LICENSE Add GPL license 2016-12-15 10:06:17 -08:00
package.json Almost adds dns-over-https by google 2016-05-08 21:14:08 +05:00
README.md Update generator url 2017-10-07 18:52:03 +05:00

Maintainer Needed! Нужен разработчик!

Also, if you unstar, please, leave us a note why you do so.

Russian Anti-Censorship on PAC-Scripts

This repo contains:

  1. Chrome Extension to bypass censorship in Russia: WebStore | Sources
  2. Proof of concept PAC-script generator based on https://github.com/zapret-info/z-i
  3. PAC-scripts performance analyses of scripts generated (doesn't take parse time into account)
  4. Based on the research of step 3 the final PAC-generator was written as a Google App Script in JavaScript which is triggered every two hours to generate and publish PAC-script on Google Drive (don't use direct URL without extension, please, URL will be periodically changed to counter abuse).

Why I do This

I believe information mustn't be blocked based on political or other subjective views.

My maxim is "Your freedom ends when it starts to confine the freedom of others".

See my other arguments against censorship (ru)

Looking at how Russian government distorts TV and blocks critics of Putin, I decided to write an anti-censorship extension for Chromium before they strike me first.

How it Works

  1. PAC script is a JavaScript file, triggered on every URL request, which says browser which proxy to use if any for this particular URL.
  2. The Chrome Extension sets PAC script in browser settings and keeps it synced with PAC script on the server (offering Antizapret (hosted on a dedicated server) or Anticensority (hosted on GitHub + CloudFlare)).
  3. On every request PAC script checks if host is blocked or if its IP is blocked.
  4. If address is blocked PAC script returns proxy server to the browser, both Antizapret and Anticensority use Antizapret proxy servers.
  5. PAC scripts on servers are updated periodically from https://github.com/zapret-info/z-i.