Submitted by 0x41
The Nibiru EVM module incorrectly handles fee denominations during transaction validation and building, failing to convert wei amounts to the native unibi denomination. This can lead to significant discrepancies in fee calculations and potentially allow users to pay far fewer fees than intended.
The issue occurs in two locations:
In both cases, fees that are calculated in wei (1e18 units) are directly used with evm.EVMBankDenom (unibi), without converting from wei to unibi (1e6 units). This causes an undervaluation of fees by a factor of 10^12, as the system expects fees in unibi but receives them in wei.
evmante_validate_basic.go#L128
msg.go#L367
The Fee() function in tx_data_legacy.go calculates fees in wei:
To demonstrate the impact:
k-yang (Nibiru) confirmed 
Unique-Divine (Nibiru) commented:
Nibiru mitigated:
Status: Mitigation confirmed. 
