c# pow implementation work
This commit is contained in:
parent
60c1ec07e9
commit
499981ed52
5 changed files with 34 additions and 8 deletions
|
@ -1,5 +1,7 @@
|
|||
using System;
|
||||
using System.Text;
|
||||
using System.IO;
|
||||
using System.Collections.Generic;
|
||||
|
||||
using onionrpow;
|
||||
|
||||
|
@ -9,8 +11,18 @@ namespace onionrpow_cli
|
|||
{
|
||||
static void Main(string[] args)
|
||||
{
|
||||
Console.WriteLine("Hello World!");
|
||||
onionrpow.OnionrPow.compute(Encoding.UTF8.GetBytes("test"), 4);
|
||||
|
||||
using (Stream stdin = Console.OpenStandardInput())
|
||||
{
|
||||
var data = new List<byte>();
|
||||
byte[] buffer = new byte[60000];
|
||||
int bytes;
|
||||
while ((bytes = stdin.Read(buffer, 0, buffer.Length)) > 0) {
|
||||
//stdout.Write(buffer, 0, bytes);
|
||||
data.AddRange(buffer);
|
||||
}
|
||||
onionrpow.OnionrPow.compute(data.ToArray(), 3);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@ namespace onionrpow
|
|||
public static void compute(byte[] data, int difficulty){
|
||||
using (var shaAlg = SHA3.Net.Sha3.Sha3256())
|
||||
{
|
||||
// Replace beginning json with nonce
|
||||
// Replace beginning json with counter
|
||||
int counter = 0;
|
||||
var copy = new List<byte>();
|
||||
|
||||
|
@ -25,12 +25,12 @@ namespace onionrpow
|
|||
copy.Add(co);
|
||||
}
|
||||
int c = 0;
|
||||
var copy2 = new List<byte>();
|
||||
while (true){
|
||||
toploop:
|
||||
c += 1;
|
||||
var num = Encoding.UTF8.GetBytes("{\"pow\": " + c.ToString() + ",");
|
||||
var copy2 = new List<byte>();
|
||||
|
||||
copy2.Clear();
|
||||
copy2.AddRange(num);
|
||||
copy2.AddRange(copy);
|
||||
var hash = shaAlg.ComputeHash(copy2.ToArray());
|
||||
|
@ -45,7 +45,9 @@ namespace onionrpow
|
|||
break;
|
||||
}
|
||||
}
|
||||
Console.WriteLine(Encoding.UTF8.GetString(copy2.ToArray()));
|
||||
Console.WriteLine(BitConverter.ToString(hash));
|
||||
Console.WriteLine(c);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue