TETHASHv1 vs ETHASH 개략적 설명.


  • administrators

    **추신 : TEThashV1 과 Ethash 의 차이점은 ,

    추가 : FNV 구체설명 및 EIP-1485 PR추가.

    Ethash Mix 및 DAG 생성단의 FNV Hash 를,

    FNV1A 로 업데이트 하였습니다. (기존은 현재는 depricated 된 FNV0 입니다.)

    ETHASH 블록도는 이더리움 연구회의 https://steemit.com/kr/@dongsamb/ethereum-pow-ethash 참조.

    또한, 일부 기존 ETHASH 에서 Offset 을 초기값으로 사용하는 FNV1A 의 경우 Offset 을 사용하지 않고, FNV1A 라고 주장하는데,

    이는 잘못된 주장입니다.

    FNV1A 의 Offset 은 이미 검증된 PrimeNumber (소수, 암호학에서 가장중요하게 여기는 숫자그룹) 입니다.

    이전단의 Keccak 을 거치고 나오는 값이 Random 넘버라서, Offset 이 필요없다는 주장은,

    일견 맞을듯하지만, 상당한 암호학적 오류가 있습니다.

    이유는, 랜덤넘버가 소수일 확률은 지극히 낮기 때문입니다.

    따라서, 정해진 소수를 정확히 사용하는게 해시 관점에서 보안적으로 더 강하다고 보시면 됩니다.

    이때, TETHASHV1 에서는 원 FNV1A 를 최대한 적용하여, 곱하기 연산이 두번 들어가기 때문에,

    TEthashV1 이 기존 Ethash 보다, 3~10% 정도 해시가 낮게 나오는 현상을 볼수있습니다.

    하지만, ASIC 이나, FPGA 로 갈경우는 위의 곱하기 연산은 CPU 의 기본 계산유닛으로서, 같은 조건에서는 클럭이 높은 CPU 에서 더 효율이 좋다고 보시면 됩니다.

    참고로, CPU 채굴가능한 모네로의 경우 AES (암호화 알고리즘) 이 표준 하드웨어 블록이라서, i 시리즈 CPU 안에 기본 내장되어있어서,

    이를 마이닝프로그램이 활용하면, CPU 로도 상당한 해시가 나오는것을 확인할수있습니다.

    FNV 설명.

    EIP-1485 PR 논의링크 :

    https://ethereum-magicians.org/t/anti-eth-asic-mining-eip-1485-pr/1807

    EIP-1485 PR :

    https://github.com/ethereum/EIPs/blob/7336cceac6c997252299a463ffe896a3414c479b/EIPS/eip-1485.md

    FNV-0 : (depricated)

    hash = 0
     for each byte_of_data to be hashed
     	hash = hash × FNV_prime
     	hash = hash XOR octet_of_data
     return hash
    

    이를 표준 FNV(x,y) 로 C 함수로 구현하면.

    fnv(x,y)   ((x * fnvprime) ^ y)
    

    FNV1A 는

       hash = FNV_offset_basis
       for each byte_of_data to be hashed
       	hash = hash XOR byte_of_data
       	hash = hash × FNV_prime
       return hash
    

    이를 fnv1a(x,y) 일경우, 입력은 4바이트 align 으로 정한다.

    C 로 풀어쓰면,

    fnv1a(x,y)     ( ((offset ^ x ) * fnvprime) ^ y) * fnvprime )
    

    그외, FNV 변형 테스트 및 분석 코드 링크

    https://github.com/tao-foundation/FNV-Analysis



  • ETH ASIC 채굴기 비중은 10~20% 라고 본다면, TEO TethashV1 은 약 2~30%의 hash premium 이 있다고 보면 될것 같습니다.
    (If we assume ETH-ASIC miners’ or hidden accelerated mining is around 10~20% , TEO TethashV1 is 2~30% premium compared than ethash algorithm hashrates.)