All Projects → ipfs → go-ipns

ipfs / go-ipns

Licence: MIT license
Utilities for creating, parsing, and validating IPNS records

Programming Languages

go
31211 projects - #10 most used programming language
Makefile
30231 projects

Labels

Projects that are alternatives of or similar to go-ipns

ipns-link
Expose local http-server (web-app) through IPNS
Stars: ✭ 18 (-48.57%)
Mutual labels:  ipfs, ipns
peer-id-generator
Vanity public key generator for use with IPFS and IPNS
Stars: ✭ 27 (-22.86%)
Mutual labels:  ipfs, ipns
Agregore Browser
A minimal browser for the distributed web
Stars: ✭ 229 (+554.29%)
Mutual labels:  ipfs
geesome-node
🦈 Your self-hosted decentralized Messenger, Social network, Media file storage on top of IPFS! Freely communicate in encrypted chat groups, share images, video, text or any data without a risk of censorship or blocking.
Stars: ✭ 90 (+157.14%)
Mutual labels:  ipfs
piratcloud
an ipfs-based encrypted backup solution
Stars: ✭ 20 (-42.86%)
Mutual labels:  ipfs
Dweb.page
Your Gateway to the Distributed Web
Stars: ✭ 239 (+582.86%)
Mutual labels:  ipfs
insta-share
Instant File Sharing powered by IPFS Networks. Build with Vue 3 and ViteJS
Stars: ✭ 53 (+51.43%)
Mutual labels:  ipfs
Orbit Web
Orbit Web Application
Stars: ✭ 215 (+514.29%)
Mutual labels:  ipfs
ipfs-api-mount
Mount IPFS directory as local FS.
Stars: ✭ 16 (-54.29%)
Mutual labels:  ipfs
go-ipfs
Ungx-ed fork of go-ipfs
Stars: ✭ 31 (-11.43%)
Mutual labels:  ipfs
.com
Digital garden built using Next13, Typescript, and a bunch of goodies
Stars: ✭ 186 (+431.43%)
Mutual labels:  ipfs
metabin
Advanced data sharing ecosystem - main repo
Stars: ✭ 15 (-57.14%)
Mutual labels:  ipfs
Pathephone Desktop
Distributed audio player
Stars: ✭ 240 (+585.71%)
Mutual labels:  ipfs
photos
"Fx Fotos" is an opensource gallery app in react native with the same smoothness and features of Google Photos and Apple Photos. It is backend gnostic and connects to decentralized backends like "box", "Dfinity", "Filecoin" and "Crust".
Stars: ✭ 620 (+1671.43%)
Mutual labels:  ipfs
Photos
[DEPRECATED] Encrypted, secure, decentralized personal data wallet -- technology behind textile.photos
Stars: ✭ 236 (+574.29%)
Mutual labels:  ipfs
qd-messages-ts
No ads, no tracking. Just a lightning fast peer-to-peer cross-platform messenger that doesn’t sell you out.
Stars: ✭ 22 (-37.14%)
Mutual labels:  ipfs
Ipfs Pubsub Room
IPFS Pubsub room
Stars: ✭ 229 (+554.29%)
Mutual labels:  ipfs
trystero
🤝 Serverless WebRTC matchmaking for painless P2P — Make any site multiplayer in a few lines — Use BitTorrent, IPFS, or Firebase
Stars: ✭ 512 (+1362.86%)
Mutual labels:  ipfs
go-ipfs-plugin-i2p-gateway
A plugin for presenting an IPFS gateway over i2p
Stars: ✭ 14 (-60%)
Mutual labels:  ipfs
prometheus-spec
Censorship-resistant trustless protocols for smart contract, generic & high-load computing & machine learning on top of Bitcoin
Stars: ✭ 24 (-31.43%)
Mutual labels:  ipfs

go-ipns

standard-readme compliant GoDoc

ipns record definitions

This package contains all of the components necessary to create, understand, and validate IPNS records. It does not publish or resolve those records. Kubo uses this package internally to manipulate records.

Lead Maintainer

Adin Schmahmann

Usage

To create a new IPNS record:

import (
	"time"

	ipns "github.com/ipfs/go-ipns"
	crypto "github.com/libp2p/go-libp2p-crypto"
)

// Generate a private key to sign the IPNS record with. Most of the time, 
// however, you'll want to retrieve an already-existing key from IPFS using the
// go-ipfs/core/coreapi CoreAPI.KeyAPI() interface.
privateKey, publicKey, err := crypto.GenerateKeyPair(crypto.RSA, 2048)
if err != nil {
  panic(err)
}

// Create an IPNS record that expires in one hour and points to the IPFS address
// /ipfs/Qme1knMqwt1hKZbc1BmQFmnm9f36nyQGwXxPGVpVJ9rMK5
ipnsRecord, err := ipns.Create(privateKey, []byte("/ipfs/Qme1knMqwt1hKZbc1BmQFmnm9f36nyQGwXxPGVpVJ9rMK5"), 0, time.Now().Add(1*time.Hour))
if err != nil {
	panic(err)
}

Once you have the record, you’ll need to use IPFS to publish it.

There are several other major operations you can do with go-ipns. Check out the API docs or look at the tests in this repo for examples.

Documentation

https://godoc.org/github.com/ipfs/go-ipns

Contribute

Feel free to join in. All welcome. Open an issue!

This repository falls under the IPFS Code of Conduct.

Want to hack on IPFS?

License

Copyright (c) Protocol Labs, Inc. under the MIT license. See LICENSE file for details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].