{"id":19198483,"url":"https://github.com/virgilsecurity/virgil-pythia","last_synced_at":"2025-04-10T10:13:42.842Z","repository":{"id":93435565,"uuid":"124801411","full_name":"VirgilSecurity/virgil-pythia","owner":"VirgilSecurity","description":"Virgil Pythia Library ","archived":false,"fork":false,"pushed_at":"2019-02-28T09:40:41.000Z","size":245,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-24T09:05:19.845Z","etag":null,"topics":["library","password-protection","pythia","pythia-library","virgil-pythia"],"latest_commit_sha":null,"homepage":"https://virgilsecurity.com/","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/VirgilSecurity.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-03-11T21:31:39.000Z","updated_at":"2021-08-02T14:09:59.000Z","dependencies_parsed_at":"2023-04-02T12:47:59.802Z","dependency_job_id":null,"html_url":"https://github.com/VirgilSecurity/virgil-pythia","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VirgilSecurity%2Fvirgil-pythia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VirgilSecurity%2Fvirgil-pythia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VirgilSecurity%2Fvirgil-pythia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VirgilSecurity%2Fvirgil-pythia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/VirgilSecurity","download_url":"https://codeload.github.com/VirgilSecurity/virgil-pythia/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248198889,"owners_count":21063628,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["library","password-protection","pythia","pythia-library","virgil-pythia"],"created_at":"2024-11-09T12:22:17.901Z","updated_at":"2025-04-10T10:13:42.822Z","avatar_url":"https://github.com/VirgilSecurity.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pythia Library\n[![Build Status](https://travis-ci.org/VirgilSecurity/pythia.svg?branch=master)](https://travis-ci.org/VirgilSecurity/pythia)\n[![GitHub license](https://img.shields.io/badge/license-AGPL--3.0-blue.svg)](https://github.com/VirgilSecurity/virgil/blob/master/LICENSE)\n\n[Introduction](#introduction) | [Library purposes](#library-purposes) | [Dependencies](#dependencies) | [Deterministic RNG](#deterministic-rng)| [Support](#support) | [License](#license)\n\n## Introduction\n\n\u003ca href=\"https://developer.virgilsecurity.com/docs\"\u003e\u003cimg width=\"230px\" src=\"https://cdn.virgilsecurity.com/assets/images/github/logos/virgil-logo-red.png\" align=\"left\" hspace=\"10\" vspace=\"6\"\u003e\u003c/a\u003e Welcome to Virgil Pythia Library! \n\n**Virgil Pythia** is a C library which implements all required cryptographic functions and primitives to perform an implementation of [Pythia](http://pages.cs.wisc.edu/~ace/papers/pythia-full.pdf), the most **advanced protocol** of protecting passwords and generating keys based on passwords.\n\nPythia’s originators are: Adam Everspaugh and Rahul Chaterjee, University of\nWisconsin—Madison; Samuel Scott, University of London; Ari Juels and Thomas Ristenpart,\nCornell Tech.\n\n## Library purposes\n\nPythia Library allows developers to implement Pythia service and client flows using the supplied functions.\n\n\n## Dependencies\n\n### Libraries\n\n  - Multithread:\n      - openmp (optional)\n      - pthread (optional)\n\n### Platform dependent features\n\n  - when *TIMER* eqals *CYCLE* (optional)\n      - intitialization occurs within function `arch_init()`\n\n  - random number generator\n      - `CryptGenRandom` on Windows\n      - `/dev/random` on Unix/Linux\n      - `/dev/urandom`  on Unix/Linux\n      - `libc rand()/random()` is crossplatform (insecure!)\n      - `zero seed` is a crossplatform (insecure!)\n      - `custom` can be defined on a client side for any platform\n\n## License\n\nThis library is released under the [AGPL-3.0 license](LICENSE).\n\n## Support\nOur developer support team is here to help you. Find out more information on our [Help Center](https://help.virgilsecurity.com/).\n\nYou can find us on [Twitter](https://twitter.com/VirgilSecurity) or send us email support@VirgilSecurity.com.\n\nAlso, get extra help from our support team on [Slack](https://virgilsecurity.com/join-community).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvirgilsecurity%2Fvirgil-pythia","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvirgilsecurity%2Fvirgil-pythia","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvirgilsecurity%2Fvirgil-pythia/lists"}