109 Commits

Author SHA1 Message Date
Rod Vagg
bf5c4806e7 add filecoin commitment merkle root codecs
These describe roots & nodes of a merkle tree, not the underlying
data. In the case of CommP and CommD they are binary merkle trees
using sha2-256-trunc2. For CommR they are novel structure merkle
trees using poseidon-bls12_381-a2-fc1.

All nodes of the respective merkle trees could also be described
using this codec if required, all the way to base data. It is
anticipated that the primary use will be restricted to the roots.

Ref: https://github.com/multiformats/multicodec/pull/161
Closes: #161
Closes: #167
2020-05-12 16:16:46 +10:00
Rod Vagg
38ef2a3373 Add two Poseidon Filecoin variant multihashes
Reserving the 0xb400 range for Poseidon variants, allowing FIL to
iterate on the `fcX` extension of the name where they stay with
BLS12-381 and arity=2. High security variant is for extra circuits
that are usable in case new attacks arise from the standard variant.

Ref: https://github.com/multiformats/multicodec/pull/161
Ref: https://eprint.iacr.org/2019/458.pdf
2020-05-12 16:05:50 +10:00
Rod Vagg
0aa8f5d132 add sha2-256-trunc2 multihash: 0x1012
SHA2-256 with the trailing 2 bits zeroed out. Primary current use is
Filecoin.

Ref: https://github.com/multiformats/multicodec/pull/161
2020-05-12 16:04:25 +10:00
Tobias
5d3a023767 feat: add bls12-381 public keys 2020-05-12 16:00:04 +10:00
Joel Thorstensson
4422c4d685 Update code 2020-04-20 16:46:11 +02:00
Joel Thorstensson
67156283e1 Add dag-jose, -cose
See discussion here: https://github.com/ipld/specs/issues/251
2020-04-20 16:46:11 +02:00
Dmitri Zagidulin
2497c44928
Update table.csv (fix order of x25519-pub entry).
Co-Authored-By: Dave Longley <dlongley@digitalbazaar.com>
2020-03-09 11:28:11 -04:00
Dmitri Zagidulin
dfa6b42776 Add X25519 (Curve25519) pub key support 2020-03-09 11:18:09 -04:00
Oliver Terbu
8302a5fad5 added secp256k1-pub entry 2020-02-04 00:06:46 +01:00
Raúl Kripalani
06a69e5073
add 0x0301: libp2p-peer-record mapping. (#157) 2020-01-31 18:25:32 +00:00
Steven Allen
713350946b
switch blake3 to a 1 byte code
It's likely secure and people are also likely to use it in content addresses where size really matters.
2020-01-27 18:28:12 -08:00
Steven Allen
8b8161834b
table: update blake3
* Renamed from blake3-256 to blake3. We only need a single code because shorter hashes are just prefixes of longer hashes.
* Changed the code to 0x0202. This will turn into a two byte code, the previous code was 3 bytes when encoded. The other blake algorithms are in the 3 byte range because we needed _many_ codes.
2020-01-27 17:53:46 -08:00
Nikolai Vazquez
b176bbeae7 Add entry for BLAKE3 with 256-bit output (default)
BLAKE3 is a fast cryptographic hash function. It is only one algorithm
with no variants. See https://github.com/BLAKE3-team/BLAKE3 for details.
2020-01-26 02:35:45 -05:00
studyzy
0616142bce add gm sm3-256 multihash to table 2019-12-13 16:02:10 +08:00
Steven Allen
8dd1bfb9a9 add a TLS multicodec 2019-08-07 12:38:35 -07:00
Filip Š
f63573a5e4
Change ZeroNet prefix to 0xe6 2019-07-28 22:39:59 +02:00
Filip Š
7fb3c13810
Merge branch 'master' into zeronet-support 2019-07-28 21:53:01 +02:00
Filip Š
2db1aa0f55
Update ZeroNet to namespace type and reorder it 2019-07-26 23:19:25 +02:00
Kenneth Schiller
14dabd507b
Merge branch 'master' into messagepack 2019-07-24 17:45:25 -07:00
Kenneth Schiller
92eb0c5f03
Fix order 2019-07-24 15:05:08 -07:00
Kenneth Schiller
0de0bbb7d2
Merge branch 'master' into messagepack 2019-07-24 15:04:24 -07:00
Kenneth Schiller
1c023376c2
Add JSON 2019-07-24 15:02:44 -07:00
Kenneth Schiller
6b91f70c8f
Update table.csv 2019-07-24 14:58:25 -07:00
Filip Š
c404851bb2 Add ZeroNet site address 2019-07-23 11:13:56 +02:00
Kenneth Schiller
6eb8e9a3c1
Merge branch 'master' into messagepack 2019-06-19 13:28:27 -07:00
Jim McDonald
d018e29a93 Add IPNS namespace 2019-06-09 09:49:57 +01:00
Steven Allen
7b1f04ed63 multicodec: add IPLD codec for libp2p public keys
This is specifically for the protobuf-encoded libp2p key format:

```proto
enum KeyType {
	RSA = 0;
	Ed25519 = 1;
	Secp256k1 = 2;
	ECDSA = 3;
}

message PublicKey {
	required KeyType Type = 1;
	required bytes Data = 2;
}
```
2019-05-13 14:41:28 -07:00
Jakob Voss
e2df1de141 Normalize hexadecimal syntax of codes 2019-04-21 23:05:19 +02:00
idk
26ad9ab722 Briefly describe other type of b32 2019-04-05 17:12:15 -04:00
idk
2391af9de8 Further describe i2p addresses 2019-04-05 16:40:20 -04:00
idk
175ad7cf5a update fork and add base32 2019-04-05 16:19:06 -04:00
Kenneth Schiller
d6467e120d
Add MessagePack serialization format. 2019-03-25 17:13:19 -07:00
Steven Allen
56b1f8ff55 reserve 0x2f (ASCII /) as the *path* multicodec
That way, we can always tell if something is a path or something else.

We may also be able to take advantage of this later to combine a few
concepts and get rid of the "multiaddrs look like paths but are totally not"
problem. However, we can think about that later. This PR just reserves the code
so we don't run into problems later.

* Remove the distinction between string/binary multiaddrs. Instead, the "string"
  will *also* be a valid binary multiaddr.
* Define a new multipath spec to combine multiaddrs and other paths.

Related to: https://github.com/multiformats/multiaddr/issues/70
2019-03-18 09:47:06 -07:00
Elad
35cfe58432 change swarm multicodecs to ipld, add bmt 2019-03-06 13:22:08 +07:00
Elad Nachmias
84c0944192 add swarm manifests and feeds 2019-02-20 21:18:52 +07:00
Steven Allen
942b8875da chore: reformat table (#119)
* reformat table

Sort the table by code and replace the sections with tags.

Inspired by https://github.com/multiformats/multicodec/pull/116 but rebased on
master.

This version also puts the description last as it's optional.

* align table
2019-02-13 16:34:21 +01:00
Perry Kundert
644328bd48 Corrected CSV 2019-02-07 15:23:00 -07:00
Perry Kundert
f01b5ea7da Correct indetation 2019-02-07 15:13:28 -07:00
Perry Kundert
8d95841174 Update desired Holochain Varint prefixes 2019-02-07 14:52:17 -07:00
Perry Kundert
940266dea7 Confirmed Base58 "Hkey..." prefix w/ 71-octet payload; ready to merge 2019-02-04 13:09:42 -07:00
Perry Kundert
04a895ad8a Allocate several prefixes for various Holochain IDs -> Base58 encoding 2019-02-04 09:03:37 -07:00
Perry Kundert
9c00842b97 Added holochain-keys encoding, re-ordered some table entries by code 2019-01-28 06:30:24 -08:00
Perry Kundert
0ff4dee4f4 Change holochain-keys designator to 0x86; yields encoded key prefix of "hkZ..." 2019-01-25 05:21:48 -08:00
Perry Kundert
790d00b2bb
Merge branch 'master' into feature-holochain-address 2019-01-21 12:22:02 -08:00
Steven Allen
f16a0937b2 fix codec conflicts
See: https://github.com/multiformats/multicodec/pull/104#issuecomment-455499679
2019-01-18 13:02:48 +00:00
Perry Kundert
0b67cd454f Improve description of Holochain 0x1E prefix to detail its contents. 2019-01-16 13:04:48 -08:00
Perry Kundert
e6e56f5f27 Add the 0x1e prefix code for Holochain Addresses 2019-01-16 12:35:57 -08:00
Maciej Krüger
cea6e182cd
feat: Add /p2p-stardust
This is part of the endeavor to replace ws-star with the newly created stardust protocol. See libp2p/js-libp2p-websocket-star#70 for a reference

Relates to https://github.com/multiformats/multiaddr/pull/84#pullrequestreview-191887582
2019-01-12 11:00:41 +01:00
Steven Allen
2f25673b5e
Merge pull request #104 from Arachnid/master
Add CIDs for IPFS and Swarm
2019-01-09 22:46:56 -08:00
Nick Johnson
33b7b78654
Update table.csv 2019-01-10 18:56:39 +13:00