Entropy

Entropy

Entropy

Provably random

Fully onchain

Just because the blockchain is deterministic, doesn’t mean your app has to be. Start generating random numbers with Entropy in 5 minutes or less.

Verifiable Randomness

Verifiable Randomness

Verifiable Randomness

Uncompromising user experience

Deliver randomly generated outcomes at lightning-fast speeds. Entropy guarantees reliable, responsive callbacks to keep your app running.

Request

264562

User commitment

0x72ed66002c29e

Transaction Hash

0x558b032b2acea020

Request

264562

User commitment

0x72ed66002c29e

Transaction Hash

0x558b032b2acea020

Request

264562

User commitment

0x72ed66002c29e

Transaction Hash

0x558b032b2acea020

Request

264562

User commitment

0x72ed66002c29e

Transaction Hash

0x558b032b2acea020

Request

264562

User commitment

0x72ed66002c29e

Transaction Hash

0x558b032b2acea020

Request

264562

User commitment

0x72ed66002c29e

Transaction Hash

0x558b032b2acea020

Request

264562

User commitment

0x72ed66002c29e

Transaction Hash

0x558b032b2acea020

Request

264562

User commitment

0x72ed66002c29e

Transaction Hash

0x558b032b2acea020

Request

264562

User commitment

0x72ed66002c29e

Transaction Hash

0x558b032b2acea020

Scalability

Scalability

Scalability

Scale Fearlessly

Request one random outcome or request thousands. With fast, reliable responses, Entropy always has you covered.

Low latency

Lightning fast responses for a real-time experience.

Low latency

Lightning fast responses for a real-time experience.

Low latency

Lightning fast responses for a real-time experience.

Over 99.9% uptime

Reliable, responsive callbacks to keep your app running.

Over 99.9% uptime

Reliable, responsive callbacks to keep your app running.

Over 99.9% uptime

Reliable, responsive callbacks to keep your app running.

Cost effective

Deliver the experience your users desire.

Cost effective

Deliver the experience your users desire.

Cost effective

Deliver the experience your users desire.

Easy to integrate

Get started instantly and focus on what's important.

Easy to integrate

Get started instantly and focus on what's important.

Easy to integrate

Get started instantly and focus on what's important.

Security

Security

Security

Provably secure

With built-in security guarantees, your users get randomness they can prove.

Trustless

Give your users the peace of mind they deserve.

Trustless

Give your users the peace of mind they deserve.

Trustless

Give your users the peace of mind they deserve.

Verifiably random

Don't trust, verify.

Verifiably random

Don't trust, verify.

Verifiably random

Don't trust, verify.

Consistently audited

Provide a safe and secure user experience.

Consistently audited

Provide a safe and secure user experience.

Consistently audited

Provide a safe and secure user experience.

Secure by design

Engineered for cryptographically secure randomness.

Secure by design

Engineered for cryptographically secure randomness.

Secure by design

Engineered for cryptographically secure randomness.

developers

developers

developers

Simple integration at your fingertips

Integrating takes just a few lines of code and less than 10 minutes.

Quick start
contract Foo is IEntropyConsumer {
    // Entropy Address on Optimism
    IEntropy private entropy = IEntropy(0xdF21D137Aadc95588205586636710ca2890538d5);
    address private entropyProvider = 0x52DeaA1c84233F7bb8C8A45baeDE41091c616506;

    function requestRandomNumber(bytes32 userRandomNumber) external payable {
        uint256 fee = entropy.getFee(entropyProvider);

        uint64 sequenceNumber = entropy.requestWithCallback{value: fee}(
            entropyProvider,
            userRandomNumber
        );
    }

    function entropyCallback(
        uint64 sequenceNumber,
        address,
        bytes32 entropyRandomNumber
    ) internal override {
        // Consume entropyRandomNumber as needed
    }
}
Quick start
contract Foo is IEntropyConsumer {
    // Entropy Address on Optimism
    IEntropy private entropy = IEntropy(0xdF21D137Aadc95588205586636710ca2890538d5);
    address private entropyProvider = 0x52DeaA1c84233F7bb8C8A45baeDE41091c616506;

    function requestRandomNumber(bytes32 userRandomNumber) external payable {
        uint256 fee = entropy.getFee(entropyProvider);

        uint64 sequenceNumber = entropy.requestWithCallback{value: fee}(
            entropyProvider,
            userRandomNumber
        );
    }

    function entropyCallback(
        uint64 sequenceNumber,
        address,
        bytes32 entropyRandomNumber
    ) internal override {
        // Consume entropyRandomNumber as needed
    }
}

Built with PYTH

Built with PYTH

Disclaimer

Pyth Entropy is provided on an “AS IS,” “WITH ALL FAULTS,” and “AS AVAILABLE” basis, without any warranties or representations of any kind. Please read the following important disclaimer before using it. Read disclaimer.