An open API service providing repository metadata for many open source software ecosystems.

GitHub topics: openpgp

Yubico/yubikey-manager

Python library and command line tool for configuring any YubiKey over all USB interfaces.

Language: Python - Size: 5.14 MB - Last synced at: about 20 hours ago - Pushed at: about 21 hours ago - Stars: 939 - Forks: 135

orhun/gpg-tui

Manage your GnuPG keys with ease! 🔐

Language: Rust - Size: 12 MB - Last synced at: about 21 hours ago - Pushed at: about 22 hours ago - Stars: 1,460 - Forks: 38

polhenarejos/pico-openpgp

OpenPGP CCID smart card for Raspberry Pico and ESP32

Language: Python - Size: 468 KB - Last synced at: about 24 hours ago - Pushed at: 1 day ago - Stars: 100 - Forks: 17

agrahn/Android-Password-Store Fork of android-password-store/Android-Password-Store

Android application compatible with ZX2C4's Pass command line application

Language: Kotlin - Size: 117 MB - Last synced at: 1 day ago - Pushed at: 1 day ago - Stars: 67 - Forks: 0

krzyzanowskim/ObjectivePGP

ObjectivePGP is an open-source library for iOS and macOS that provides developers with tools for implementing OpenPGP encryption and decryption, digital signing, and signature verification in their applications, thereby enhancing security and data integrity.

Language: Objective-C - Size: 300 MB - Last synced at: 2 days ago - Pushed at: 12 months ago - Stars: 701 - Forks: 113

chatmail/core

Chatmail Rust Core library, used by Android/iOS/desktop apps, bindings and bots 📧

Language: Rust - Size: 35 MB - Last synced at: about 19 hours ago - Pushed at: about 21 hours ago - Stars: 726 - Forks: 99

canokeys/canokey-core

Core implementations of an open-source secure key

Language: C - Size: 2.01 MB - Last synced at: 1 day ago - Pushed at: 8 days ago - Stars: 358 - Forks: 39

sschoeller/PGPResources

Resources for Pretty Good Privacy

Size: 57.6 KB - Last synced at: 4 days ago - Pushed at: 4 days ago - Stars: 0 - Forks: 0

bcgit/bc-csharp

BouncyCastle.NET Cryptography Library (Mirror)

Language: C# - Size: 435 MB - Last synced at: 4 days ago - Pushed at: about 1 month ago - Stars: 1,756 - Forks: 570

jhenstridge/pygpgme

A Python module for working with OpenPGP messages

Language: C - Size: 531 KB - Last synced at: 5 days ago - Pushed at: 5 days ago - Stars: 0 - Forks: 0

keybase/kbpgp

OpenPGP (RFC4880) Implementation in IcedCoffeeScript

Language: JavaScript - Size: 24.1 MB - Last synced at: 3 days ago - Pushed at: about 2 years ago - Stars: 535 - Forks: 75

envless/envless

OpenSource, frictionless and secure way to share and manage app secrets across teams.

Language: TypeScript - Size: 10.3 MB - Last synced at: about 2 hours ago - Pushed at: 3 months ago - Stars: 273 - Forks: 40

rpgp/rpgp

OpenPGP implemented in pure Rust, permissively licensed

Language: Rust - Size: 4.14 MB - Last synced at: 5 days ago - Pushed at: 5 days ago - Stars: 874 - Forks: 85

hockeypuck/hockeypuck

OpenPGP Key Server

Language: Go - Size: 11.8 MB - Last synced at: about 14 hours ago - Pushed at: about 14 hours ago - Stars: 327 - Forks: 62

bcgit/bc-java

Bouncy Castle Java Distribution (Mirror)

Language: Java - Size: 609 MB - Last synced at: 8 days ago - Pushed at: 19 days ago - Stars: 2,438 - Forks: 1,176

larshp/abapPGP

ABAP implementation of OpenPGP

Language: ABAP - Size: 684 KB - Last synced at: 6 days ago - Pushed at: 10 days ago - Stars: 9 - Forks: 3

rnpgp/rnp

RNP: high performance C++ OpenPGP library used by Mozilla Thunderbird

Language: C++ - Size: 20.8 MB - Last synced at: 3 days ago - Pushed at: 3 days ago - Stars: 210 - Forks: 60

android-password-store/Android-Password-Store 📦

Android application compatible with ZX2C4's Pass command line application

Language: Kotlin - Size: 116 MB - Last synced at: 6 days ago - Pushed at: 7 months ago - Stars: 2,627 - Forks: 295

pgpainless/pgpainless

Simple to use OpenPGP API based on Bouncy Castle

Language: Java - Size: 8.12 MB - Last synced at: about 22 hours ago - Pushed at: about 23 hours ago - Stars: 171 - Forks: 27

goark/gpgpdump

OpenPGP packet visualizer

Language: Go - Size: 2.24 MB - Last synced at: 6 days ago - Pushed at: 27 days ago - Stars: 23 - Forks: 0

osvauld/osvauld

FOSS: Offline first applications with peer-to-peer connectivity.

Language: Rust - Size: 15.6 MB - Last synced at: 14 days ago - Pushed at: 14 days ago - Stars: 43 - Forks: 2

saturneric/GpgFrontend

A free, open-source, robust yet user-friendly, compact and cross-platform tool for OpenPGP encryption. It stands out as an exceptional GUI frontend for the modern GnuPG (gpg).

Language: C++ - Size: 12.9 MB - Last synced at: 14 days ago - Pushed at: 14 days ago - Stars: 582 - Forks: 54

crazy-max/ghaction-import-gpg

GitHub Action to import a GPG key

Language: TypeScript - Size: 8.38 MB - Last synced at: 7 days ago - Pushed at: about 1 month ago - Stars: 341 - Forks: 82

emersion/go-pgpmail

:lock: PGP-encrypted email library for Go

Language: Go - Size: 163 KB - Last synced at: 7 days ago - Pushed at: 4 months ago - Stars: 58 - Forks: 16

neuhalje/bouncy-gpg

Make using Bouncy Castle with OpenPGP fun again!

Language: Java - Size: 5.72 MB - Last synced at: 7 days ago - Pushed at: about 1 year ago - Stars: 216 - Forks: 53

gpg/gnupg

The GNU Privacy Guard. NOTE: Maintainers are not tracking this mirror. Do not make pull requests here, nor comment any commits, submit them usual way to bug tracker (https://www.gnupg.org/documentation/bts.html) or to the mailing list (https://www.gnupg.org/documentation/mailing-lists.html).

Language: C - Size: 93.8 MB - Last synced at: 14 days ago - Pushed at: 19 days ago - Stars: 787 - Forks: 170

OpenPGP/openpgp.org

OpenPGP.org website

Language: HTML - Size: 55.2 MB - Last synced at: 20 days ago - Pushed at: 20 days ago - Stars: 318 - Forks: 126

jahed/webverify

Verify Authorship of Webpages. Includes a Web Extension as a proof-of-concept using PGP.

Language: JavaScript - Size: 295 KB - Last synced at: 7 days ago - Pushed at: over 2 years ago - Stars: 19 - Forks: 1

jerson/openpgp-mobile

Native code used in react-native-fast-openpgp and flutter-openpgp

Language: TypeScript - Size: 28 MB - Last synced at: 22 days ago - Pushed at: 22 days ago - Stars: 26 - Forks: 10

psi-im/plugins

Officially supported Psi plugins

Language: C++ - Size: 4.05 MB - Last synced at: 5 days ago - Pushed at: 3 months ago - Stars: 58 - Forks: 25

ProtonMail/gosop

Stateless CLI for GopenPGP

Language: Go - Size: 124 KB - Last synced at: 20 days ago - Pushed at: 20 days ago - Stars: 38 - Forks: 10

alainwolf/openwrt-backup

A backup script for your OpenWrt (or Turris) router.

Language: Shell - Size: 36.1 KB - Last synced at: 3 days ago - Pushed at: 5 months ago - Stars: 8 - Forks: 2

jerson/flutter-openpgp

OpenPGP for flutter made with golang for fast performance with support for android, ios, macos, linux, windows and web

Language: Dart - Size: 397 MB - Last synced at: 26 days ago - Pushed at: 26 days ago - Stars: 70 - Forks: 24

wneessen/go-mail-middleware

A collection of message middlewares for go-mail

Language: Go - Size: 246 KB - Last synced at: 28 days ago - Pushed at: 28 days ago - Stars: 20 - Forks: 3

google/end-to-end 📦

End-To-End is a crypto library to encrypt, decrypt, digital sign, and verify signed messages (implementing OpenPGP)

Language: JavaScript - Size: 7.88 MB - Last synced at: 23 days ago - Pushed at: about 2 years ago - Stars: 4,134 - Forks: 299

cunicu/go-openpgp-card

A Go implementation for talking to an OpenPGP smartcard application

Language: Go - Size: 221 KB - Last synced at: 29 days ago - Pushed at: 29 days ago - Stars: 1 - Forks: 0

pgpainless/sop-java

Stateless OpenPGP Protocol API and CLI for Java

Language: Java - Size: 1.08 MB - Last synced at: 7 days ago - Pushed at: 7 days ago - Stars: 12 - Forks: 1

open-keychain/open-keychain

OpenKeychain is an OpenPGP implementation for Android.

Language: Java - Size: 77.3 MB - Last synced at: 30 days ago - Pushed at: 12 months ago - Stars: 2,347 - Forks: 503

jerson/react-native-fast-openpgp

OpenPGP for react native made with golang for fast performance

Language: TypeScript - Size: 340 MB - Last synced at: 24 days ago - Pushed at: about 2 months ago - Stars: 50 - Forks: 20

web-of-trust/dart-pg

Dart PG - The OpenPGP library in Dart language

Language: Dart - Size: 1.5 MB - Last synced at: about 1 month ago - Pushed at: about 1 month ago - Stars: 19 - Forks: 2

maximbaz/yubikey-touch-detector

A tool to detect when your YubiKey is waiting for a touch (to send notification or display a visual indicator on the screen)

Language: Go - Size: 242 KB - Last synced at: 29 days ago - Pushed at: 4 months ago - Stars: 448 - Forks: 35

tasn/webext-signed-pages

A browser extension to verify the authenticity (PGP signature) of web pages

Language: JavaScript - Size: 253 KB - Last synced at: about 18 hours ago - Pushed at: about 2 months ago - Stars: 191 - Forks: 13

calccrypto/OpenPGP

A C++ Implementation of RFC 4880

Language: C++ - Size: 26 MB - Last synced at: about 1 month ago - Pushed at: over 5 years ago - Stars: 115 - Forks: 34

clach04/puren_tonbo

Plain text notes Tombo (chi) alternative, also supports; age, ccrypt, GnuPG (OpenPGP, gpg), jenc (Markor), OpenSSL AES-256-CBC, AES-256 ZIP AE-1/AE-2 and VimCrypt1-3 encrypted files. Integrates with VIM. WIP

Language: Python - Size: 989 KB - Last synced at: 30 days ago - Pushed at: about 1 month ago - Stars: 1 - Forks: 0

MarinX/yap

YAP! - Yet Another PGP Tool

Language: Dart - Size: 53.1 MB - Last synced at: about 1 month ago - Pushed at: about 4 years ago - Stars: 18 - Forks: 3

themartiancompany/evm-gpg-key-address-check

Checks whether an OpenPGP key has its user set appropriately for an Ethereum Virtual Machine-compatible blockchain network account.

Language: Shell - Size: 16.6 KB - Last synced at: about 1 month ago - Pushed at: about 1 month ago - Stars: 1 - Forks: 0

zunda/mitome.in

Explore OpenPGP and other cryptography as an alternative for seals (mitome-in)

Size: 9.55 MB - Last synced at: about 2 months ago - Pushed at: about 2 months ago - Stars: 39 - Forks: 7

open-keychain/openpgp-api

OpenPGP API library

Language: Java - Size: 567 KB - Last synced at: about 1 month ago - Pushed at: 9 months ago - Stars: 140 - Forks: 53

jocover/esp32_u2f

Create a FIDO2/U2F token using ESP32

Language: C - Size: 366 KB - Last synced at: about 1 month ago - Pushed at: 11 months ago - Stars: 123 - Forks: 20

Tlaster/KotlinPGP

Kotlin library for OpenPGP using bouncycastle

Language: Kotlin - Size: 138 KB - Last synced at: 6 days ago - Pushed at: over 2 years ago - Stars: 10 - Forks: 2

SimonPrinz/pgpql

GraphQL API that provides OpenPGP functionality.

Language: TypeScript - Size: 73.2 KB - Last synced at: about 2 months ago - Pushed at: about 2 months ago - Stars: 0 - Forks: 0

das-labor/neopg

The multiversal cryptoengine!

Language: C++ - Size: 16.8 MB - Last synced at: 21 days ago - Pushed at: about 6 years ago - Stars: 215 - Forks: 16

bitlogik/uniblow

UNIversal BLOckchain Wallet

Language: Python - Size: 5.76 MB - Last synced at: about 2 months ago - Pushed at: about 2 months ago - Stars: 19 - Forks: 13

Olivr/terraform-provider-gpg

Terraform provider to generate a PGP key pair just like GPG would 🔐

Language: Go - Size: 160 KB - Last synced at: about 1 month ago - Pushed at: about 2 years ago - Stars: 8 - Forks: 3

vhscom/oathqr

:iphone: Turn your secrets into scannable QR codes. Mirror of OATHqr on Codeberg. :point_down:

Language: Svelte - Size: 1.41 MB - Last synced at: 2 months ago - Pushed at: 2 months ago - Stars: 1 - Forks: 0

kushaldas/johnnycanencrypt

Python module for OpenPGP written in Rust.

Language: Rust - Size: 1.1 MB - Last synced at: 3 days ago - Pushed at: about 1 month ago - Stars: 54 - Forks: 8

sniptt-official/snip 📦

🔐 A simple developer-friendly CLI for managing secrets

Language: TypeScript - Size: 500 KB - Last synced at: 6 days ago - Pushed at: over 2 years ago - Stars: 223 - Forks: 9

bndw/pick 📦

A secure and easy-to-use CLI password manager for macOS and Linux

Language: Go - Size: 16.1 MB - Last synced at: about 2 months ago - Pushed at: about 6 years ago - Stars: 368 - Forks: 27

RandyMcMillan/nostr-gpg-keys

nostr-gpg-keys

Size: 1.81 MB - Last synced at: 6 days ago - Pushed at: over 2 years ago - Stars: 10 - Forks: 0

firstlookmedia/gpgsync 📦

:lock: GPG Sync is designed to let users always have up-to-date public keys for other members of their organization

Language: Python - Size: 1.26 MB - Last synced at: about 1 month ago - Pushed at: over 2 years ago - Stars: 348 - Forks: 30

athanasiosem/pgpkeygenerator.com

PGPkeygenerator.com is an Open Source, free, online and secure PGP key generator.

Language: HTML - Size: 126 KB - Last synced at: 3 months ago - Pushed at: 3 months ago - Stars: 1 - Forks: 1

decentralized-identity/github-did 📦

Decentralized Identity with Github

Language: JavaScript - Size: 15.4 MB - Last synced at: 8 days ago - Pushed at: over 2 years ago - Stars: 142 - Forks: 32

whitesmith/hawkpost

Generate links that users can use to submit messages encrypted with your public key.

Language: Python - Size: 5.68 MB - Last synced at: about 2 months ago - Pushed at: 5 months ago - Stars: 953 - Forks: 45

noomorph/p2p

Browser-based end-to-end encrypted message exchange using PGP, with no server storage

Language: HTML - Size: 0 Bytes - Last synced at: 3 months ago - Pushed at: 3 months ago - Stars: 0 - Forks: 0

singpolyma/openpgp-php Fork of dryphp/openpgp.php

OpenPGP.php is a pure-PHP implementation of the OpenPGP Message Format (RFC 4880).

Language: PHP - Size: 699 KB - Last synced at: about 2 hours ago - Pushed at: 9 months ago - Stars: 181 - Forks: 70

sileneundula/libsumatracrypt-rs

A Rust Library For Dealing With Cryptography. Supports RSA4096-OAEP/ECIES-CURVE25519 for encryption, various hash digests, and ED25519/Schnorr for signatures, and X448 for DH (Key-Exchange)

Language: Rust - Size: 154 KB - Last synced at: about 1 month ago - Pushed at: 4 months ago - Stars: 2 - Forks: 1

Anish-M-code/simple-gpg

A simple Commandline Program Developed Using Python3 to make GNU Privacy Guard Program easy to use for beginners.

Language: Python - Size: 1.8 MB - Last synced at: about 1 month ago - Pushed at: 4 months ago - Stars: 10 - Forks: 3

DivvyPayHQ/open_pgp

Implementation of OpenPGP Message Format as desrcibed in RFC4880

Language: Elixir - Size: 94.7 KB - Last synced at: about 1 month ago - Pushed at: 3 months ago - Stars: 10 - Forks: 2

aartoni/sixdegreesofpgp

Traversing the web of trust to get the shortest path between two fingerprints.

Language: Rust - Size: 587 KB - Last synced at: 5 days ago - Pushed at: 3 months ago - Stars: 2 - Forks: 0

PennockTech/openpgpkey-control

OpenPGP keys published on your website (WKD)

Language: Shell - Size: 377 KB - Last synced at: 3 months ago - Pushed at: 3 months ago - Stars: 50 - Forks: 4

Yengas/openpgp-did

A CLI tool enabling DID/SSI operations with your OpenPGP smart card

Language: Rust - Size: 64.5 KB - Last synced at: 3 months ago - Pushed at: about 2 years ago - Stars: 4 - Forks: 1

gnome-keysign/gnome-keysign

An easier way to sign OpenPGP keys over the local network. A GTK/GNOME application to use GnuPG for signing other peoples' keys. Quickly, easily, and securely.

Language: Python - Size: 1.9 MB - Last synced at: 3 days ago - Pushed at: over 1 year ago - Stars: 54 - Forks: 21

vletoux/OpenPGP-CSP

A CSP for the OpenPGP card - goal: add write support for certificate enrollment

Language: C++ - Size: 1.84 MB - Last synced at: about 1 month ago - Pushed at: about 6 years ago - Stars: 41 - Forks: 13

keiji/openpgp

OpenPGP packet decoder/encoder for Kotlin

Language: Kotlin - Size: 2.1 MB - Last synced at: 4 months ago - Pushed at: 4 months ago - Stars: 0 - Forks: 0

envkey/envkey-app

Secure, human-friendly, cross-platform secrets and config.

Language: JavaScript - Size: 6.74 MB - Last synced at: about 1 month ago - Pushed at: almost 2 years ago - Stars: 96 - Forks: 9

DroidPulkit/open-keychain Fork of open-keychain/open-keychain

OpenKeychain is an OpenPGP implementation for Android.

Language: Java - Size: 70.8 MB - Last synced at: about 3 hours ago - Pushed at: about 8 years ago - Stars: 1 - Forks: 0

The-Sad-Zewalian/OpenPGP-En-garde

An Attack on CFB Mode Encryption As Used By OpenPGP

Language: Jupyter Notebook - Size: 11.7 KB - Last synced at: 5 months ago - Pushed at: 5 months ago - Stars: 0 - Forks: 0

web-of-trust/php-privacy

PHP Privacy - The OpenPGP library in PHP language

Language: PHP - Size: 2.52 MB - Last synced at: 4 months ago - Pushed at: 4 months ago - Stars: 3 - Forks: 4

santiago-mooser/yubikey-provisioning-scripts

A set of scripts to automate the provisioning of yubikey's openPGP applet.They set up your yubikey for git commit signing and SSH so you don't have to!

Language: Shell - Size: 85.9 KB - Last synced at: about 1 month ago - Pushed at: 6 months ago - Stars: 59 - Forks: 9

onryo/vervet

Vault YubiKey OpenPGP unseal utility

Language: Go - Size: 160 KB - Last synced at: 5 months ago - Pushed at: 5 months ago - Stars: 19 - Forks: 0

Logicwax/gpg-hd

A BIP-39 / seed-phrase / brain-wallet based Hierarchical Deterministic GPG / SSH key generator that also provisions OpenPGP smartcards for easy key backup and recovery.

Language: Python - Size: 38.1 KB - Last synced at: about 2 months ago - Pushed at: about 2 years ago - Stars: 39 - Forks: 9

tumpaproject/tumpa

The usability minded OpenPGP application making PGP usage with smartcards like Yubikey super simple

Language: QML - Size: 1.01 MB - Last synced at: 3 months ago - Pushed at: 3 months ago - Stars: 80 - Forks: 4

Nitrokey/nitrokey-encryption-tool

Command line interface application which uses on-device RSA keys (through OpenSC and PKCS#11) to encrypt/decrypt AES key used in turn to perform operation on user data

Language: Python - Size: 26.4 KB - Last synced at: 5 days ago - Pushed at: almost 6 years ago - Stars: 33 - Forks: 4

sib-swiss/sendcrypt

Modern and easy to use client to securely send encrypted sensitive data by SFTP. Linux, MacOS, and Windows.

Language: TypeScript - Size: 1.44 MB - Last synced at: about 2 months ago - Pushed at: 6 months ago - Stars: 1 - Forks: 0

autocrypt/autocrypt

Convenient End-to-End Encryption for E-Mail

Language: Shell - Size: 5.78 MB - Last synced at: 6 months ago - Pushed at: 6 months ago - Stars: 196 - Forks: 27

frankwei98/PGP-Online

PGP Online, a helper made with modern Front End Technology

Language: JavaScript - Size: 1.44 MB - Last synced at: 1 day ago - Pushed at: 6 months ago - Stars: 1 - Forks: 0

emersion/klaes

An OpenPGP keyserver

Language: Go - Size: 16.6 KB - Last synced at: 7 days ago - Pushed at: about 5 years ago - Stars: 18 - Forks: 1

looserouting/yawks

YAWKS (Yet Another Web Key Service) is an open-source web key service and directory for managing OpenPGP keys. It aims to simplify the process of storing and validating keys for email encryption and signature verification. Users can easily add their OpenPGP keys to the service by validating their email addresses through a simple key submission proc

Language: JavaScript - Size: 106 KB - Last synced at: 7 months ago - Pushed at: 7 months ago - Stars: 0 - Forks: 0

saifazmi/BlockVerify

A file verification system which checks a file's integrity and ownership using Blockchain and OpenPGP

Language: Python - Size: 92.8 KB - Last synced at: 5 months ago - Pushed at: about 2 years ago - Stars: 6 - Forks: 2

fernzi/jekyll-wkd

Jekyll plugin to generate an OpenPGP Web Key Directory

Language: Ruby - Size: 40 KB - Last synced at: 24 days ago - Pushed at: almost 2 years ago - Stars: 3 - Forks: 0

ecopque/gpg_pub_key

Repository with some data for sending files. GPG 4096.

Size: 12.7 KB - Last synced at: about 2 months ago - Pushed at: 8 months ago - Stars: 0 - Forks: 0

ahf/passphrase-identity

Regenerable ed25519 keys for OpenSSH and OpenPGP.

Language: C - Size: 82 KB - Last synced at: 28 days ago - Pushed at: over 5 years ago - Stars: 36 - Forks: 5

wiktor-k/openpgp-proofs

Like Keybase but distributed

Language: JavaScript - Size: 43 KB - Last synced at: 7 months ago - Pushed at: over 1 year ago - Stars: 54 - Forks: 4

raresgoidescu/passman

Language: Rust - Size: 26.4 KB - Last synced at: 8 months ago - Pushed at: 8 months ago - Stars: 0 - Forks: 0

dd9jn/rfc4880bis

LibrePGP specification

Language: XSLT - Size: 2.37 MB - Last synced at: 8 months ago - Pushed at: 8 months ago - Stars: 1 - Forks: 0

marcobellaccini/openpgp_tools 📦

An Elixir library to inspect the OpenPGP file format

Language: Elixir - Size: 22.5 KB - Last synced at: 8 months ago - Pushed at: over 6 years ago - Stars: 4 - Forks: 0

nikos-k97/UP-Mail

Email client in Node.js / Electron.js, with OpenPGP support and focus on security

Language: JavaScript - Size: 5.61 MB - Last synced at: 9 months ago - Pushed at: 9 months ago - Stars: 0 - Forks: 0

andOTP/andOTP 📦

[Unmaintained] Open source two-factor authentication for Android

Language: Java - Size: 13.2 MB - Last synced at: 10 months ago - Pushed at: almost 3 years ago - Stars: 3,757 - Forks: 358

706f6c6c7578/crc24

Compute crc24 checksums of messages and files, either in hex or OpenPGP notation.

Language: Go - Size: 1.95 KB - Last synced at: 8 months ago - Pushed at: 10 months ago - Stars: 0 - Forks: 0

706f6c6c7578/armor

Fun with OpenPGP. Armor your messages, so that they look like encrypted OpenPGP messages.

Language: Go - Size: 9.77 KB - Last synced at: 8 months ago - Pushed at: 10 months ago - Stars: 0 - Forks: 0