This repository contains the official IVPN desktop client, a multi-platform VPN application supporting Windows, macOS, and Linux. It is composed of three main components: a privileged Go daemon that manages VPN connections (OpenVPN, WireGuard, V2Ray), firewall (kill switch), DNS (including DNSCrypt-proxy for DoH), split tunneling, and WiFi trusted networks; a Go CLI for command-line control; and an Electron/Vue.js UI for graphical interaction. The daemon and clients communicate over a local TCP JSON protocol with authentication and event push. The codebase demonstrates strong engineering practices: platform abstraction via build tags, a custom ICMP ping library, a reusable logger, a type-safe IPC client library documented for third-party integration, and Windows WFP wrappers for firewall and split tunneling. Build scripts and native projects (Windows kernel driver, macOS helpers) handle cross-platform packaging and signing.
This repository implements the Dilithium post-quantum cryptographic signature algorithm as a Java Cryptography Extension (JCE) provider. It provides a complete implementation of the Dilithium algorithm (version 3.1) including key pair generation, signing, and signature verification. The architecture follows standard JCE provider patterns with clean separation between the core cryptographic implementation, provider interfaces, and algorithm-specific implementations. The library passes known-answer tests from the reference implementation and includes performance benchmarks.
This repository is a curated list (awesome list) of resources about post-quantum cryptography. It is not a software application or a data research project. It aggregates links to standards, initiatives, libraries, research papers, and other resources related to PQC. The content is maintained by the community and appears to be regularly updated.