Giter VIP home page Giter VIP logo

desktop-tap's Introduction

Building the TAP Adapter for Private Internet Access

The steps required to build the TAP adapter driver for the Private Internet Access desktop client have been encapsulated into a custom wrapper build script.

Note: Private Internet Access does not require any side components such as tapinstall.exe. If you need to acquire these, consult the original tap-windows6 repository.

Prerequisites

  • Python 2.7 (needs to be in your PATH)
  • Microsoft Windows 10 EWDK (Enterprise Windows Driver Kit)
  • Windows code signing EV certificate

Digitally signing the driver

In order to install drivers on modern versions Windows they need to be digitally signed with an EV (Extended Validation) certificate. To maximize compatibility with older Windows versions, the build script can double-sign the driver with both a SHA1 and a SHA256 certificate.

Additionally, for Windows 10 a properly EV-signed driver package can be submitted to Microsoft to have its signature replaced with a Microsoft certificate. This will let the driver be installed automatically without requiring an additional user authorization prompt.

Note: The build script digitally signs the drivers as a post-build step; standard tap-windows6 build outputs such as tap6.tar.gz will contain the still-unsigned versions.

Usage

The build script is configurable in a few ways using environment variables (for convenience when using CI builders):

  • If you installed the EWDK in a subfolder of C:\EWDK the build script will pick it up automatically. Otherwise, set the EWDK environment variable to point to the EWDK directory.

  • Specify the SHA256 code signing certificate thumbprint with PIA_TAP_SHA256_CERT. To double-sign, also specify the SHA1 code signing certificate with PIA_TAP_SHA1_CERT.

  • If you are using a certificate from somewhere other than DigiCert, specify the CA certificate with PIA_TAP_CROSSCERT and the timestamp server URL with PIA_TAP_TIMESTAMP.

After configuring the environment, merely execute the build script:

> build-pia.bat

Note: You may run into a certificate error if this is the first time you are building with the EWDK, if it is unable to generate a temporary test certificate while building the drivers. To resolve this, run the build script as administrator the first time (not necessary on subsequent builds).

After building, the drivers are placed in dist/i386 and dist/amd64, and signed CABs for Microsoft submission are placed in dist.

desktop-tap's People

Contributors

tdivine avatar mattock avatar jkunkee avatar cron2 avatar jamesyonan avatar chipitsine avatar sgstair avatar rozmansi avatar inhavk avatar jait avatar selvanair avatar saper avatar alcaro avatar

Watchers

James Cloos 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.