Code Monkey home page Code Monkey logo

historyblock's Introduction

HistoryBlock

HistoryBlock is a browser extension for maintaining a blacklist of undesirable web addresses which should not be tracked by the history or the recently closed tabs/windows of the browser.

Options Page

Blacklist Encryption

SHA1 (default)

With SHA1 blacklist encryption, every entry added to the blacklist is first matched (see Address Matching) and then digested using SHA1 encryption to create a hash value which is then stored with HistoryBlock.

The same process occurs on every page visit and tab/window close to check the address against the blacklist. In this way, the blacklist remains encrypted so that no one could see, in plain text, what sites are included in the blacklist.

None

With no encryption, every entry added to the blacklist is first matched (see Address Matching) and the stored with HistoryBlock.

When a page is visited or a tab/window closed, the address is checked against the blacklist.

Storing blacklist entries in plain text is not recommended as they will be visible on the addons page (about:addons).

Address Matching

Domain (default)

Domain matching uses only the domain name portion of the web address for determining whether it is in the blacklist.

Example: Blocking https://www.google.com/ would result in google.com to be added to the blacklist. Any visit to a google.com domain would result in a block.

Domain matching is the most liberal and therefore the default matching setting. Domain matching will cover most use cases well enough.

Subdomain

Subdomain matching uses the domain in conjunction with any subdomain portion (including www.).

Example: Blocking https://www.google.com/ would result in www.google.com to be added to the blacklist. Any visit to www.google.com addresses would be blocked, but not others (docs.google.com for example).

Subdomain matching is slightly less liberal and requires more tuning by a user to get the exact coverage needed.

URL

URL matching uses the entire web address (minus the protocol).

Example: Blocking https://www.google.com/ would only block visits to www.google.com (and not www.google.com/foo).

URL matching is the most conservative matching technique and is only suitable for use cases in which only specific URLs need to be blocked, but other visits to the same domain/subdomain should not. URL matching is not recommended for most users.

Blacklist

The blacklist as it exists given the current HistoryBlock settings.

Control Buttons

Import

The Import button is only available if Blacklist Encryption is set to SHA1. This control is a legacy support for migrating a HistoryBlock v1.x blacklist to a v2.x blacklist.

Prompts the user to enter a comma-separated list of hash values to add to the current blacklist.

Migrating Legacy Blacklist

Visit about:config and search for extensions.historyblock.stringpref. Double-click the row to open the value editor, and copy the entire value (it will be a comma-separated list of hash values) suitable for entering at the import control.

Add Domain

Adds the given address to the blacklist using the current settings; this action is analogous to visiting the address and using the context menu 'Block' control.

Remove Domain

Removes the given address from the blacklist using the current settings; this action is analogous to visiting the address and using the context menu 'Unblcok' control.

Clear Blacklist

Removes all entries from the blacklist.

Note: this action cannot be undone; be very careful.

Context Menu

Both Block and Unblock are available on every page in the context menu so as not to illustrate to the user whether the current address exists in the blacklist.

Block

Blocks the current tab's address using the current settings for Address Matching and Blacklist Encryption.

Unblock

Blocks the current tab's address using the current settings for Address Matching and Blacklist Encryption.

historyblock's People

Contributors

msmith-techempower avatar kainsavage avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.