{"id":19198485,"url":"https://github.com/virgilsecurity/virgil-sdk-crypto-net","last_synced_at":"2025-10-07T16:14:55.425Z","repository":{"id":146283315,"uuid":"121364201","full_name":"VirgilSecurity/virgil-sdk-crypto-net","owner":"VirgilSecurity","description":"Virgil .NET/C# Crypto Library is a high-level cryptographic library that allows you to perform all necessary operations for secure storing and transferring data and everything required to become HIPAA and GDPR compliant.","archived":false,"fork":false,"pushed_at":"2019-05-06T09:37:37.000Z","size":33948,"stargazers_count":6,"open_issues_count":1,"forks_count":2,"subscribers_count":11,"default_branch":"develop","last_synced_at":"2025-05-09T01:17:48.073Z","etag":null,"topics":["crypto","cryptography","e2ee","encryption","end-to-end-encryption","gdpr","hipaa"],"latest_commit_sha":null,"homepage":"https://developer.virgilsecurity.com/docs/how-to#cryptography","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"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":null,"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-02-13T09:39:45.000Z","updated_at":"2024-04-28T08:07:09.000Z","dependencies_parsed_at":null,"dependency_job_id":"b22b9cb3-39c4-46a3-92b8-812cd3e4dcdb","html_url":"https://github.com/VirgilSecurity/virgil-sdk-crypto-net","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/VirgilSecurity/virgil-sdk-crypto-net","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VirgilSecurity%2Fvirgil-sdk-crypto-net","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VirgilSecurity%2Fvirgil-sdk-crypto-net/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VirgilSecurity%2Fvirgil-sdk-crypto-net/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VirgilSecurity%2Fvirgil-sdk-crypto-net/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/VirgilSecurity","download_url":"https://codeload.github.com/VirgilSecurity/virgil-sdk-crypto-net/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VirgilSecurity%2Fvirgil-sdk-crypto-net/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272828810,"owners_count":25000091,"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","status":"online","status_checked_at":"2025-08-30T02:00:09.474Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["crypto","cryptography","e2ee","encryption","end-to-end-encryption","gdpr","hipaa"],"created_at":"2024-11-09T12:22:18.253Z","updated_at":"2025-10-07T16:14:50.399Z","avatar_url":"https://github.com/VirgilSecurity.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Virgil Security .NET/C# Crypto Library\n\n[![Build status](https://ci.appveyor.com/api/projects/status/kqs4lqw426gbpccm/branch/release?svg=true)](https://ci.appveyor.com/project/unlim-it/virgil-sdk-net/branch/release) [![Nuget package](https://img.shields.io/nuget/v/Virgil.Crypto.svg)](https://www.nuget.org/packages/Virgil.Crypto/)\n[![GitHub license](https://img.shields.io/badge/license-BSD%203--Clause-blue.svg)](https://github.com/VirgilSecurity/virgil/blob/master/LICENSE)\n\n### [Introduction](#introduction) | [Library purposes](#library-purposes) | [Usage examples](#usage-examples) | [Installation](#installation) | [Docs](#docs) | [License](#license) | [Contacts](#support)\n\n## Introduction\nVirgilCrypto is a stack of security libraries (ECIES with Crypto Agility wrapped in Virgil Cryptogram) and an open-source high-level [cryptographic library](https://github.com/VirgilSecurity/virgil-crypto) that allows you to perform all necessary operations for securely storing and transferring data in your digital solutions. Crypto Library is written in C++ and is suitable for mobile and server platforms.\n\nVirgil Security, Inc., guides software developers into the forthcoming security world in which everything will be encrypted (and passwords will be eliminated). In this world, the days of developers having to raise millions of dollars to build a secure chat, secure email, secure file-sharing, or a secure anything have come to an end. Now developers can instead focus on building features that give them a competitive market advantage while end-users can enjoy the privacy and security they increasingly demand.\n\n## Library purposes\n* Asymmetric Key Generation\n* Encryption/Decryption of data and streams\n* Generation/Verification of digital signatures\n* PFS (Perfect Forward Secrecy)\n\n## Usage examples\n\n#### Generate a key pair\n\nGenerate a Private Key with the default algorithm (EC_X25519):\n```cs\nusing Virgil.Crypto;\n\nvar crypto = new VirgilCrypto();\nvar keyPair = crypto.GenerateKeys();\n```\n\n#### Generate and verify a signature\n\nGenerate signature and sign data with a private key:\n```cs\nusing Virgil.Crypto;\n\nvar crypto = new VirgilCrypto();\n\n// prepare a message\nvar messageToSign = \"Hello, Bob!\";\nvar dataToSign = Encoding.UTF8.GetBytes(messageToSign);\n\n// generate a signature\nvar signature = crypto.GenerateSignature(dataToSign, senderPrivateKey);\n```\n\nVerify a signature with a public key:\n```cs\nusing Virgil.Crypto;\n\nvar crypto = new VirgilCrypto();\n\n// verify a signature\nvar verified = crypto.VerifySignature(signature, dataToSign, senderPublicKey);\n```\n\n#### Encrypt and decrypt data\n\nEncrypt Data on a Public Key:\n\n```cs\nusing Virgil.Crypto;\n\nvar crypto = new VirgilCrypto();\n\n// prepare a message\nvar messageToEncrypt = \"Hello, Bob!\";\nvar dataToEncrypt = Encoding.UTF8.GetBytes(messageToEncrypt);\n\n// encrypt the message\nvar encryptedData = crypto.Encrypt(dataToEncrypt, receiverPublicKey);\n```\n\nDecrypt the encrypted data with a Private Key:\n```cs\nusing Virgil.Crypto;\n\nvar crypto = new VirgilCrypto();\n\n// prepare data to be decrypted\nvar decryptedData = crypto.Decrypt(encryptedData, receiverPrivateKey);\n\n// decrypt the encrypted data using a private key\nvar decryptedMessage = Encoding.UTF8.GetString(decryptedData);\n```\n\nNeed more examples? Visit our [developer documentation](https://developer.virgilsecurity.com/docs/how-to#cryptography).\n\n## Installation\n\nThe Virgil .NET Crypto is provided as a package named Virgil.SDK.Crypto. The package is distributed via NuGet package management system.\n\n  Supported Platforms:\n   - .NET Standard 1.1+\n   - .NET Framework 4.5+\n   - .NET Core 1.0+\n   - Universal Windows Platform 10\n   - Windows 8.0+\n   - Windows Phone 8.1+\n   - Xamarin.Android 7.0+\n   - Xamarin.iOS 10.0+\n   - Mono 4.6+ for x86-64(AMD64)\n\nInstalling the package using Package Manager Console:\n\n```bash\nRun PM\u003e Install-Package Virgil.Crypto\n```\n\n## Docs\n- [Crypto Core Library](https://github.com/VirgilSecurity/virgil-crypto)\n- [More usage examples](https://developer.virgilsecurity.com/docs/how-to#cryptography)\n\n## License\n\nThis library is released under the [3-clause BSD License](https://github.com/VirgilSecurity/virgil-sdk-javascript/blob/master/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-sdk-crypto-net","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvirgilsecurity%2Fvirgil-sdk-crypto-net","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvirgilsecurity%2Fvirgil-sdk-crypto-net/lists"}