Skip to main content
Home

Built and signed on GitHub Actions

Proof of concept to build a simple system Using PGP and Postgres to create a custodian wallet for Cardano.

This package works with DenoIt is unknown whether this package works with Cloudflare Workers, Node.js, Bun
It is unknown whether this package works with Cloudflare Workers
It is unknown whether this package works with Node.js
This package works with Deno
It is unknown whether this package works with Bun
JSR Score
100%
Published
10 months ago (0.0.1)

Cardano Vault

Proof of concept to build a simple system Using PGP and Postgres to create a custodian wallet for Cardano.

Report Bug ยท Request Feature


About

Objective: This is an experimental project aiming to leverage PGP for creating a simple, secure vault system as part of my learning experience.

Components:

  • Database: Postgres Database to store cardano wallets encrypted using PGP Keys.
  • Cardano Wallets: To sign transaction seamlessly from the backend. (seamless transaction signing without requiring users to interact with blockchain technology directly)
  • PGP Cold Backup Keys: To have a way in case the customer forgot the PIN associated with its PGP key.
  • PGP Hot Customer Key: To encrypt cardano wallet at rest.
  • PGP Hot Operation Key: Key to encrypt and store the Customer PGP keys at rest.

Installation and Usage

  1. Install deno: https://deno.com
  2. deno add @studiowebux/cardano-vault
  3. See the flow.test.ts test for the proposed flow to use this library.

see __tests__/*.test.ts. To run the tests, you need to copy the .env.example to .env (no need to replace the default information)


Releases and Github Actions

git tag -a X.Y.Z -m "Version X.Y.Z"
git push origin tags/X.Y.Z

Contributing

  1. Fork the project
  2. Create a Feature Branch
  3. Commit your changes
  4. Push your changes
  5. Create a PR
Working with your local branch

Branch Checkout:

git checkout -b <feature|fix|release|chore|hotfix>/prefix-name

Your branch name must starts with [feature|fix|release|chore|hotfix] and use a / before the name; Use hyphens as separator; The prefix correspond to your Kanban tool id (e.g. abc-123)

Keep your branch synced:

git fetch origin
git rebase origin/master

Commit your changes:

git add .
git commit -m "<feat|ci|test|docs|build|chore|style|refactor|perf|BREAKING CHANGE>: commit message"

Follow this convention commitlint for your commit message structure

Push your changes:

git push origin <feature|fix|release|chore|hotfix>/prefix-name

Examples:

git checkout -b release/v1.15.5
git checkout -b feature/abc-123-something-awesome
git checkout -b hotfix/abc-432-something-bad-to-fix
git commit -m "docs: added awesome documentation"
git commit -m "feat: added new feature"
git commit -m "test: added tests"

License

Distributed under the MIT License. See LICENSE for more information.

Contact

| Buy Me A Coffee | Webux Logo Webux Lab |
Built and signed on
GitHub Actions

New Ticket: Report package

Please provide a reason for reporting this package. We will review your report and take appropriate action.

Please review the JSR usage policy before submitting a report.

Add Package

deno add jsr:@studiowebux/cardano-vault

Import symbol

import * as cardano_vault from "@studiowebux/cardano-vault";
or

Import directly with a jsr specifier

import * as cardano_vault from "jsr:@studiowebux/cardano-vault";

Add Package

pnpm i jsr:@studiowebux/cardano-vault
or (using pnpm 10.8 or older)
pnpm dlx jsr add @studiowebux/cardano-vault

Import symbol

import * as cardano_vault from "@studiowebux/cardano-vault";

Add Package

yarn add jsr:@studiowebux/cardano-vault
or (using Yarn 4.8 or older)
yarn dlx jsr add @studiowebux/cardano-vault

Import symbol

import * as cardano_vault from "@studiowebux/cardano-vault";

Add Package

vlt install jsr:@studiowebux/cardano-vault

Import symbol

import * as cardano_vault from "@studiowebux/cardano-vault";

Add Package

npx jsr add @studiowebux/cardano-vault

Import symbol

import * as cardano_vault from "@studiowebux/cardano-vault";

Add Package

bunx jsr add @studiowebux/cardano-vault

Import symbol

import * as cardano_vault from "@studiowebux/cardano-vault";