Pages:
Author

Topic: [ANN] Kryptohash | Brand new PoW algo | 320bit hash | ed25519 | PID algo for dif - page 24. (Read 149454 times)

full member
Activity: 196
Merit: 100
Why the https://empoex.com/ where no trading volume, this is a good trading platform!!!

There needs to be more done, smart phone wallets, then more integration, but it looks like the algo might change.
Too bad, I dig a month, sell do not go out, a waste of electricity, I quit!!!
sr. member
Activity: 350
Merit: 250
Why the https://empoex.com/ where no trading volume, this is a good trading platform!!!

There needs to be more done, smart phone wallets, then more integration, but it looks like the algo might change.
full member
Activity: 196
Merit: 100
Why the https://empoex.com/ where no trading volume, this is a good trading platform!!!
sr. member
Activity: 329
Merit: 250
Current version of KSHAKE320 algorithm requires 64Kb per hash.  I could change it to require 128Kb+ on a dime.

But, what limits the speed of the algorithm is not the amount of RAM but, the speed you can store/read data to/from RAM.  If in the future, new RAM technology allows for very fast memory that is also affordable then, the KSHAKE320 algorithm may no longer offer an advantage over regular hashing algorithms.


Correct me if I'm wrong, but the 64 kB scratchpad looks unnecessary. OpenCL isn't exactly a native tongue to me, but from what I gather the core is roughly something like this:

Code:
initState(A);
absorbInput(A);
for( i = 0; i < 546; i++ ) {
  keccakPermutation(A);
  saveStateToScratchpad(i, A);
}

initState(A);
for( i = 0; i < 546; i++ ) {
  absorbFromScratchpad(A, i);
  keccakPermutation(A);
}

If that is correct, then you could just have two keccak states instead the current scratchpad implementation? Something like this:

Code:
initState(A);
initState(B);
absorbInput(A);
for( i = 0; i < 546; i++ ) {
  keccakPermutation(A);
  absorbFromState(B, A);
  keccakPermutation(B);
}

I might be misinterpreting the openCL kernel or overlooking something, seems too obvious of a way to get rid of the scratchpad.


The first hash is calculated using 120 bytes of data as an input. The result of this first hash (using Extendable Output Function SHAKE-320) is stored in the 64Kb scratchpad (120 * 546 to be exact).  
Then, a second hash is calculated using those 64Kb of scratchpad data as an input and the final result is a 40 bytes hash (320bits).

And that's exactly what the second code snippet does. Instead of first calculating the full output of the XOF into a scratchpad and then separately hashing the scratchpad contents into the final hash, you can do it block by block. Maintain two keccak states, calculate first 120 bytes of the XOF output using the first state, update the second hash state with those 120 bytes, then calculate the next 120 bytes of the XOF, update the second hash with that. Repeat until finished.

Unless, I feed the second hash using the first hash output in reverse order (last byte first) which I didn't do in this version of the algorithm.

Well, this is why it is good to have other people reviewing your work.  Good catch.
full member
Activity: 137
Merit: 100
Current version of KSHAKE320 algorithm requires 64Kb per hash.  I could change it to require 128Kb+ on a dime.

But, what limits the speed of the algorithm is not the amount of RAM but, the speed you can store/read data to/from RAM.  If in the future, new RAM technology allows for very fast memory that is also affordable then, the KSHAKE320 algorithm may no longer offer an advantage over regular hashing algorithms.


Correct me if I'm wrong, but the 64 kB scratchpad looks unnecessary. OpenCL isn't exactly a native tongue to me, but from what I gather the core is roughly something like this:

Code:
initState(A);
absorbInput(A);
for( i = 0; i < 546; i++ ) {
  keccakPermutation(A);
  saveStateToScratchpad(i, A);
}

initState(A);
for( i = 0; i < 546; i++ ) {
  absorbFromScratchpad(A, i);
  keccakPermutation(A);
}

If that is correct, then you could just have two keccak states instead the current scratchpad implementation? Something like this:

Code:
initState(A);
initState(B);
absorbInput(A);
for( i = 0; i < 546; i++ ) {
  keccakPermutation(A);
  absorbFromState(B, A);
  keccakPermutation(B);
}

I might be misinterpreting the openCL kernel or overlooking something, seems too obvious of a way to get rid of the scratchpad.


The first hash is calculated using 120 bytes of data as an input. The result of this first hash (using Extendable Output Function SHAKE-320) is stored in the 64Kb scratchpad (120 * 546 to be exact).  
Then, a second hash is calculated using those 64Kb of scratchpad data as an input and the final result is a 40 bytes hash (320bits).

And that's exactly what the second code snippet does. Instead of first calculating the full output of the XOF into a scratchpad and then separately hashing the scratchpad contents into the final hash, you can do it block by block. Maintain two keccak states, calculate first 120 bytes of the XOF output using the first state, update the second hash state with those 120 bytes, then calculate the next 120 bytes of the XOF, update the second hash with that. Repeat until finished.
sr. member
Activity: 329
Merit: 250
Current version of KSHAKE320 algorithm requires 64Kb per hash.  I could change it to require 128Kb+ on a dime.

But, what limits the speed of the algorithm is not the amount of RAM but, the speed you can store/read data to/from RAM.  If in the future, new RAM technology allows for very fast memory that is also affordable then, the KSHAKE320 algorithm may no longer offer an advantage over regular hashing algorithms.


Correct me if I'm wrong, but the 64 kB scratchpad looks unnecessary. OpenCL isn't exactly a native tongue to me, but from what I gather the core is roughly something like this:

Code:
initState(A);
absorbInput(A);
for( i = 0; i < 546; i++ ) {
  keccakPermutation(A);
  saveStateToScratchpad(i, A);
}

initState(A);
for( i = 0; i < 546; i++ ) {
  absorbFromScratchpad(A, i);
  keccakPermutation(A);
}

If that is correct, then you could just have two keccak states instead the current scratchpad implementation? Something like this:

Code:
initState(A);
initState(B);
absorbInput(A);
for( i = 0; i < 546; i++ ) {
  keccakPermutation(A);
  absorbFromState(B, A);
  keccakPermutation(B);
}

I might be misinterpreting the openCL kernel or overlooking something, seems too obvious of a way to get rid of the scratchpad.


The first hash is calculated using 120 bytes of data as an input. The result of this first hash (using Extendable Output Function SHAKE-320) is stored in the 64Kb scratchpad (120 * 546 to be exact).  
Then, a second hash is calculated using those 64Kb of scratchpad data as an input and the final result is a 40 bytes hash (320bits).
full member
Activity: 137
Merit: 100
Current version of KSHAKE320 algorithm requires 64Kb per hash.  I could change it to require 128Kb+ on a dime.

But, what limits the speed of the algorithm is not the amount of RAM but, the speed you can store/read data to/from RAM.  If in the future, new RAM technology allows for very fast memory that is also affordable then, the KSHAKE320 algorithm may no longer offer an advantage over regular hashing algorithms.


Correct me if I'm wrong, but the 64 kB scratchpad looks unnecessary. OpenCL isn't exactly a native tongue to me, but from what I gather the core is roughly something like this:

Code:
initState(A);
absorbInput(A);
for( i = 0; i < 546; i++ ) {
  keccakPermutation(A);
  saveStateToScratchpad(i, A);
}

initState(A);
for( i = 0; i < 546; i++ ) {
  absorbFromScratchpad(A, i);
  keccakPermutation(A);
}

If that is correct, then you could just have two keccak states instead the current scratchpad implementation? Something like this:

Code:
initState(A);
initState(B);
absorbInput(A);
for( i = 0; i < 546; i++ ) {
  keccakPermutation(A);
  absorbFromState(B, A);
  keccakPermutation(B);
}

I might be misinterpreting the openCL kernel or overlooking something, seems too obvious of a way to get rid of the scratchpad.
full member
Activity: 196
Merit: 100
The biggest threat this coin could ever face would be me losing my full time job.

I'm working on the To Do list.  Android Wallet is the next item on the list.

That's really a bad news~
without further development,this coin may go dead. Angry
A detailed plan of time? You love this coin? Why should we give up it!
newbie
Activity: 45
Merit: 0
The biggest threat this coin could ever face would be me losing my full time job.

I'm working on the To Do list.  Android Wallet is the next item on the list.

BTW : thanks for your honesty.
newbie
Activity: 45
Merit: 0
The biggest threat this coin could ever face would be me losing my full time job.

I'm working on the To Do list.  Android Wallet is the next item on the list.

That's really a bad news~
without further development,this coin may go dead. Angry
sr. member
Activity: 329
Merit: 250
The biggest threat this coin could ever face would be me losing my full time job.

I'm working on the To Do list.  Android Wallet is the next item on the list.
newbie
Activity: 45
Merit: 0
the info showed on nonce-pool dashboard is not correct . Sad
sr. member
Activity: 350
Merit: 250
haven't seen dev here for days Angry

I know he's got a day job, so I know he is busy.  He's probably busy building/testing wallets too.
newbie
Activity: 45
Merit: 0
haven't seen dev here for days Angry
sr. member
Activity: 350
Merit: 250
if the coin (and the dev) can take all the shit falling down and continue good work..
maybe then..

I'm thinking that is why he is taking it one code base at a time.  It is not falling down, the current released wallets are functioning as designed.  Once there is a stable cross platform code base then marketing can happen, more features can be added.  Technical ability and the drive to play it straight is hard to contend with when compared to a lot of other coins out there.
legendary
Activity: 910
Merit: 1000
there's a buy order for 0.3btc at 0.0000039
way too cheap,nobody is willing to sell at that price. Grin

wow first valid order with some real money, maybe we see 0.5btc order someday
full member
Activity: 196
Merit: 100
Develop a detailed plan to roll out time?
newbie
Activity: 45
Merit: 0
plz don't spoil this thread,we are lucky to have a dedicated dev here who obviously has the technical knowledge to create something innovative.
calm down and waiting for dev's next masterpiece. Wink
sr. member
Activity: 350
Merit: 250
no, waiting buyers to dump. there is absolutely no support to dump any coins now.
makes more easy to just delete wallet than sell them.
so i will wait bigger buy orders.

Do you mean that the price is OK for you to dump, just not enough buy orders? Wow, you must have like half a million or more then. And you mined it in 2 past weeks? Because earlier you said that you already dumped all your coins.
marketing and promotion is badly needed,otherwise this coin will get  more and more centralized. not a good sign~  Angry

Marketing before the product is completed?   Still needs Android/IOS/Windows Phone wallets, maybe POS integration?  Cart/Horse?
I am expecting the smart phone wallets with some fancy features.

Anything else dev can do specifically and just for you?  Maybe he can have your mom buy you a nice new video adapter?
WTF with you,WHORE,you mother fucker!!! how about buying a wild dog for your mom and to born a little brother for you? Grin Grin Grin Grin Grin

Heh, got ya!  Grin

Dev is doing for everyone here, and at a pace that a stable product can be created.
member
Activity: 62
Merit: 10
no, waiting buyers to dump. there is absolutely no support to dump any coins now.
makes more easy to just delete wallet than sell them.
so i will wait bigger buy orders.

Do you mean that the price is OK for you to dump, just not enough buy orders? Wow, you must have like half a million or more then. And you mined it in 2 past weeks? Because earlier you said that you already dumped all your coins.
marketing and promotion is badly needed,otherwise this coin will get  more and more centralized. not a good sign~  Angry

Marketing before the product is completed?   Still needs Android/IOS/Windows Phone wallets, maybe POS integration?  Cart/Horse?
I am expecting the smart phone wallets with some fancy features.

Anything else dev can do specifically and just for you?  Maybe he can have your mom buy you a nice new video adapter?
WTF with you,WHORE,you mother fucker!!! how about buying a wild dog for your mom and to born a little brother for you? Grin Grin Grin Grin Grin
Pages:
Jump to: