[Ethereum] Solidity Bytes Comparison

bytessolidity

I was going through the Create Your Own CryptoCurrency documentation and got stuck at the proofOfWork section. In this, they try to do a check i.e.

require(n >= bytes(difficulty)) //Check if its under difficulty

I wanted to understand, what kind of comparison is being done here?

  1. Is is byte-to-byte comparison?
  2. Is there some conversion happening before the check?
  3. Or, its just a length check (which I think isn't the case, but just to be sure, I added it here).

If someone can point me to the right resource on the same.

Best Answer

if n is greater then or equals to the number of bytes in the difficulty then it will be TRUE statement.

Bytes function in python explained:

Return a new “bytes” object, which is an immutable sequence of integers in the range 0 <= x < 256. bytes

ex:

var n = 16
var difficulty = 0x10

var bytes = bytes(difficulty) // 16
n >= bytes is true
Related Topic