/// <summary> /// Computes the hash value of a byte array using SHA2 256 bit /// </summary> /// <param name="bytes">bytes to hash</param> /// <returns>hash digest</returns> public static byte[] Hash(byte[] bytes) => Multihash.Sum <SHA2_256>(bytes);
public static Multihash Hash(this byte[] data) => Multihash.Sum(DefaultIpfsHash, data);
public static IEnumerable <object[]> GetSupportedHashTable() => Multihash.SupportedHashCodes.Select(h => new object[] { (int)h, Multihash.GetName(h) });
public static DhtId ConvertPeerId(PeerId id) => Multihash.Sum <SHA2_256>(id).Digest;
public static DhtId ConvertKey(string id) => Multihash.Sum <SHA2_256>(Encoding.UTF8.GetBytes(id)).Digest;
public Multihash Sum <TAlgorithm>(int length = -1) where TAlgorithm : MultihashAlgorithm => Multihash.Sum <TAlgorithm>(_bytes, length);
public override void Decode(byte[] bytes) => Value = Multihash.Decode(bytes);
public override void Decode(string value) => Value = Multihash.FromB58String(value);
public P2P(Multihash address) : this() { Value = address; }
public P2P(string address) : this(Multihash.FromB58String(address)) { }