Exemplo n.º 1
0
    public void Digest(ReadOnlySpan <byte> data, Span <byte> result, params object[] extra)
    {
        Contract.Requires <ArgumentException>(data.Length == 80);
        Contract.Requires <ArgumentException>(result.Length >= 32);

        var sw = Stopwatch.StartNew();

        fixed(byte *input = data)
        {
            fixed(byte *output = result)
            {
                Multihash.verthash(input, output, data.Length);
            }
        }

        messageBus?.SendTelemetry("Verthash", TelemetryCategory.Hash, sw.Elapsed);
    }