BiomapperLogLib

Git Source

A utility library for the BiomapperLog contract.

Functions

isUniqueInLastGeneration

Determines the uniqueness status of a given address in the current biomapper generation.

This call does not guarantee uniqueness across generations, meaning the same person can pass this check more than once (perform a Sybil-attack): with same biometrics but different account after each generation change. Ensure you are fully understand the implications of generations and the security guarantees they provide, and consider explicitly scoping your uniqueness check by a particular generation.

function isUniqueInLastGeneration(IBiomapperLogRead biomapperLog, address who) external view returns (bool);

Parameters

NameTypeDescription
biomapperLogIBiomapperLogReadThe BiomapperLog contract.
whoaddressThe address to check for uniqueness.

Returns

NameTypeDescription
<none>boolA boolean value indicating whether the address is biomapped (true) or not (false).

countBiomappedBlocks

Counts the number of blocks a user has been biomapped for.

function countBiomappedBlocks(IBiomapperLogRead biomapperLog, address who, uint256 fromBlock)
    public
    view
    returns (uint256 blocks);

Parameters

NameTypeDescription
biomapperLogIBiomapperLogReadThe BiomapperLog contract.
whoaddressThe address to count.
fromBlockuint256The starting block number.

Returns

NameTypeDescription
blocksuint256The number of blocks the user has been biomapped for.

firstBiomappedGeneration

Finds the first generation a user was biomapped in.

function firstBiomappedGeneration(IBiomapperLogRead biomapperLog, address who) external view returns (uint256);

Parameters

NameTypeDescription
biomapperLogIBiomapperLogReadThe BiomapperLog contract.
whoaddressThe address to check.

Returns

NameTypeDescription
<none>uint256The block number of the first biomapping for the user, or 0 if never biomapped.

firstSequentialBiomappedGeneration

Finds the block number of the oldest sequential biomapping for a user.

function firstSequentialBiomappedGeneration(IBiomapperLogRead biomapperLog, address who)
    external
    view
    returns (uint256);

Parameters

NameTypeDescription
biomapperLogIBiomapperLogReadThe BiomapperLog contract.
whoaddressThe address of the user to check.

Returns

NameTypeDescription
<none>uint256The block number of the oldest sequential biomapping for the user, or 0 if not biomapped in the current generation.