question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Key Management - Multiwriter

See original GitHub issue

How do we want to manage keys for multiwriter?

Recently, we added the dat keys command for import & export (#828), multiwriter key management can build on that.


Old Issue

We need some basic key management in the CLI. Right now its very hard to transfer ownership of a dat.

Add a dat keys command with some subcommands for importing/exporting keys:

  • Export secret key
  • Import secret key to another dat and make it writable

Issue Analytics

  • State:open
  • Created 6 years ago
  • Reactions:12
  • Comments:9 (1 by maintainers)

github_iconTop GitHub Comments

10reactions
maxogdencommented, Jul 27, 2017

After multiwriter lands:

  • We should try to ensure that a private key is never being used in two places at once
  • We should encourage provisioning of new keys when transferring devices (to avoid o/)
  • We need a basic key management API for this, e.g.:
    • dat keys generate - adds a new keypair to the global key store, prints out the public key
    • dat owners add <key> [path-to-dat(default-cwd)] - adds a public key as an authorized writer to the current dat
    • dat keys ls - print out list of keypairs stored in global key store
    • dat keys rm <key> - delete a key from the global keystore
    • dat keys get <key> - print the keypair
    • dat keys add <pubkey> <privatekey> - add a keypair manually

So the workflow to transfer a dat between two machines (A to B) would be:

  • On B, do dat keys generate. This places a private key in the global store. You copy paste the public key
  • On A, do dat owners add <B's Pubkey> in the dat dir
  • On B, clone the dat. You notice you own the private key for one of the owner pubkeys, so you flip the .ogd to true
  • On A, run dat keys rm <key> to revoke your own ability to write (optional)

You can also transfer the original key (not recommended) by doing dat keys get <key> on A and then dat keys add on B

5reactions
genecybercommented, Dec 31, 2018

Answered my own question. Yes I can. I did it! I can predict every future Dat address of mine now. Think… zipFs 😃

Read more comments on GitHub >

github_iconTop Results From Across the Web

Multi-Writer Searchable Encryption | Proceedings of the 2019 ...
It allows users to search over encrypted data encrypted via different keys. However, most of the existing PEKS schemes are built on classic ......
Read more >
Omnes pro uno: Practical Multi-Writer Encrypted Database
Multi-writer encrypted databases allow a reader to search over data contributed by multiple ... dundant key management of DSSE instances (whose number.
Read more >
Multi-Writer Searchable Encryption: An LWE-based ...
This scheme solves the complex key management problem caused by multiple data owners encrypting data with different encryption keys and realizes the searchable ......
Read more >
Multi-Writer Searchable Encryption: an LWE-based realization ...
Multi-Writer Searchable Encryption, also known as public-key encryption with keyword search(PEKS), serves a wide spectrum of data sharing applications.
Read more >
Working with Aurora multi-master clusters - AWS Documentation
With a multi-master cluster, you examine metrics related to DML throughput, latency, and deadlocks for all DB instances instead of a single primary...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found