PassWordsCore 2.0.1
I'm no longer supporting this libary. I wrote it several years ago when I was less skilled. Use at your own risk!
If you have any questions or need help, contact me via Github
dotnet add package PassWordsCore --version 2.0.1
NuGet\Install-Package PassWordsCore -Version 2.0.1
<PackageReference Include="PassWordsCore" Version="2.0.1" />
paket add PassWordsCore --version 2.0.1
#r "nuget: PassWordsCore, 2.0.1"
// Install PassWordsCore as a Cake Addin
#addin nuget:?package=PassWordsCore&version=2.0.1
// Install PassWordsCore as a Cake Tool
#tool nuget:?package=PassWordsCore&version=2.0.1
PassWords-Core
A brand new core
Create easy a password manager
Step 1: Create database file
using PassWordsCore;
//Your code logic
//Initialize db
Database.EnsureCreated();
//Create PassWords database
Database.CreateDB("YourDBName","YourPassword");
Step 2: Login into database
static Database db = new Database();
db.Login("YourDBName","YourPassword");
Step 3: Create account
//Create account object
var account = new Account()
{
Username = "Test",
Password = "Test123",
Title = "MyAccount",
Description = "Test the account",
Type = "Email"
};
//Add account to current database
db.Add(account);
Step 4: Get accounts
List<Account> accounts = db.GetAccounts();
Step 5: Edit account
var testaccount = accounts.FirstOrDefault(a => a.Title == "MyAccount");
testaccount.Title = "HelloWorld";
db.Update(testacccount);
Step 6: Delete account
var testaccount = accounts.First(a => a.Title == "MyAccount");
db.Delete(testacccount);
Step 7: Change database password
db.UpdatePassword("oldpass","newpass");
Step 8: Backup database
db.Backup("destinationpath/database.db");
Step 9: Delete database
Database.DeleteDB("YourDBName");
Step 10: List databases
List<DB> alldatabases = Database.ListDatabases();
Step 11: Delete all databases/the databases file
Database.EnsureDeleted();
Two factor authentication
You can use 2FA for making the login to the database more secure, but you can also use PassWords to validate a 2FA login into another system.
Using 2FA in PassWords
//First, login into your database
static Database db = new Database();
db.Login("YourDBName","YourPassword");
//Second, enable 2FA login
db.Add2FA();
//Third, get your secret
//Use this secret into another 2FA app
string secret = db.Get2FA();
//Logout
db.Logout();
//When you login now,
db.Login("YourDBName","YourPassword");
//you will get
LoginResult.Needs2FA;
//Now you have to use your 2FA app and enter the code:
db.Login2FA("000000");//your code
//If returns true, you are logged in
//Remove 2FA from database: (first login() and login2fa())
db.Remove2FA();
Validating another application that uses 2FA using PassWords
//First, update an account and set the TwoFactorSecret property to your secret
var testaccount = accounts.First(a => a.Title == "MyAccount");
testaccount.TwoFactorSecret = "MYSECRET";
//Second, login into an application with MyAccount
//Generate key (remember => every 30 seconds it changes so you have to generate a new one)
string code = Database.GenerateCode("MYSECRET");
//Enter the code and log in.
For further or more detailed usage of PassWordsCore, see the wiki (that will be added in the future)
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.2 is compatible. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
-
.NETCoreApp 2.2
- Microsoft.EntityFrameworkCore.Sqlite (>= 2.2.4)
- Microsoft.EntityFrameworkCore.Sqlite.Core (>= 2.2.4)
- Microsoft.EntityFrameworkCore.Sqlite.Design (>= 1.1.6)
- TwoFactor.net (>= 1.0.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|
New version with 2FA vertification for the database and 2FA code generation for accounts.
WARNING: This version is incompatible with the old db, so please remove your old database by Database.EnsureDeleted(); and run Database.EnsureCreated();