PROTOCOL SPECIFICATION V5.1.3

The Credibility Consensus

A decentralized ledger for the allocation, signaling, and exchange of cryptographic credibility scores via the SMTP transport layer.

Table of Contents

1. Abstract

The Verify.Credit protocol enables the secure, real-time signaling of value within existing email communications. By bridging the Bitcoin Mainnet with the Simple Mail Transfer Protocol (SMTP), it creates a unified environment where email addresses function as sovereign identities.

Unlike traditional financial systems that transfer currency, the protocol operates as a Credibility Consensus. Participants bind assets to the protocol to define their available score. When handling transactions, participants exchange these scores—lowering their own in the interest of another—facilitating a true, liberal, and unified exchange of value.

2. Getting Started

The protocol is permissionless software. There are no applications to install, no intermediaries to approve accounts, and no custodial prerequisites.

2.1 Identity Genesis

To establish your identity within the consensus:

  1. Send a blank email to check@verify.credit.
  2. The protocol will respond (~10 seconds) with a unique cryptographic address (Bitcoin Address).

2.2 Asset Binding

To obtain a Credit Score, you must bind cryptographic secrets (Assets) to your identity.

2.3 Signaling (Sending)

To signal value, you compose an email. The protocol redefines standard email fields to serve as ledger instructions.

Header Field Protocol Usage
To: [Amount][Currency]@verify.credit
Example: 10usd@verify.credit
Subject: [Destination Email or Bitcoin Address]
Example: friend@email.com

Note: The content (Body) of the email is optional and can be used for private notes or memos.


3. Consensus & Settlement

One must distinguish between the internal consensus (the software state) and the external world (regulated finance).

"Participants exchange their credit scores, lowering their own in the interest of another, facilitating a direct peer-to-peer consensus of credibility."

3.1 Internal Signaling (The Ledger)

When you signal credit to another participant (via Email), you are reassigning a portion of the ledger's score. This is a private consensus between sovereign entities. Because the underlying cryptographic secrets (Access Keys) do not move on the blockchain during this action, the protocol records this merely as a modification of the scoreboard.

3.2 Settlement (The Exit)

Users may choose to unbind assets at any time by signaling value to a raw Bitcoin address outside the protocol.

This marks the regulatory border. Within the consensus, participants exchange secrets (Information). Upon settlement, these secrets are converted towards financial instruments. Where Fiat currency is moved or realized, the action touches regulatory terrain that adheres to strict laws and taxation, as we no longer exchange secrets, but financial value.

Settlement Notice: Withdrawal incurs an 8% protocol contribution (subject to a minimum of 0.1g Gold value). This contribution is burned/reallocated to maintain the stability of the reserve peg. Furthermore, converting your Credit Score towards Fiat currency may constitute a realized gain/loss event in your jurisdiction.

4. Signaling Mechanics

The protocol abstracts the complexity of cryptography into natural language commands.

4.1 Addressing

The To: field defines the magnitude of the signal (e.g., 50eur). The Subject: field defines the destination. This separation allows the protocol to parse thousands of currency types automatically without ambiguity.

4.2 Balance Inquiry

To check your current score converted into a specific reference unit, send an email to that unit's handle.


5. Natural Stability

The Unified Token Layer operates on a mathematical principle that leverages the bound secrets (assets) to boost the overall credibility of the system.

By pegging the value against global Gold markets and token circulation, the formula amplifies the bound capital, creating a "Credibility Boost" where the consensus score carries greater weight and stability than the raw underlying reserves.

Mathematical Representation
Equation Token Valuation = (Currency Value in 1000 Gold Atoms) * (Tokens in Circulation)
Explanation The value is determined as the product of gold (static) and tokens in circulation (dynamic), forming a continuously increasing circulation threshold, which, amidst limited gold reserves and fluctuating exchange rates, naturally finds the balance in prevailing market dynamics.

The Consensus is built for longevity, valuing the permanence of the ledger over any fluctuation of its underlying backing. Should the reserve asset suffer an unforeseen fatal collapse, the protocol preserves the internal state by freezing the circulating supply, effectively decoupling from the underlying asset until stability returns.


6. On-Chain State

Current Peg: 1 Token ≈ 1.6053359901537456e-8g Gold

7. Supported Assets

While the ledger operates on unified tokens, users may express their Credit Score in various "Reference Units" (Currencies/Commodities) for ease of understanding. The protocol handles atomic conversion in real-time.

CodeReference Standard
XAU*Gold (Gram)
USDUnited States Dollar
EUREuro Member Countries
GBPUnited Kingdom Pound
BTCBitcoin
JPYJapan Yen
CNYChina Yuan Renminbi
CHFSwitzerland Franc
ALLAlbania Lek
DZDAlgeria Dinar
AOAAngola Kwanza
ARSArgentina Peso
AMDArmenia Dram
AUDAustralia Dollar
AZNAzerbaijan Manat
BSDBahamas Dollar
BHDBahrain Dinar
BDTBangladesh Taka
BBDBarbados Dollar
BYNBelarus Ruble
BZDBelize Dollar
BMDBermuda Dollar
BTNBhutan Ngultrum
BOBBolivia Bolíviano
BAMBosnia and Herzegovina Convertible Marka
BWPBotswana Pula
BRLBrazil Real
BNDBrunei Darussalam Dollar
BGNBulgaria Lev
BIFBurundi Franc
KHRCambodia Riel
CADCanada Dollar
CVECape Verde Escudo
KYDCayman Islands Dollar
CLPChile Peso
COPColombia Peso
XOFCFA Franc (BCEAO)
XAFCFA Franc (BEAC)
KMFComorian Franc
XPFCFP Franc
CDFCongo/Kinshasa Franc
CRCCosta Rica Colon
HRKCroatia Kuna
CUPCuba Peso
CZKCzech Republic Koruna
DKKDenmark Krone
DJFDjibouti Franc
DOPDominican Republic Peso
XCDEast Caribbean Dollar
EGPEgypt Pound
SVCEl Salvador Colon
ETBEthiopia Birr
FJDFiji Dollar
GMDGambia Dalasi
GELGeorgia Lari
GHSGhana Cedi
GTQGuatemala Quetzal
GNFGuinea Franc
GYDGuyana Dollar
HTGHaiti Gourde
HNLHonduras Lempira
HKDHong Kong Dollar
HUFHungary Forint
ISKIceland Krona
INRIndia Rupee
IDRIndonesia Rupiah
IRRIran Rial
IQDIraq Dinar
ILSIsrael Shekel
JMDJamaica Dollar
JODJordan Dinar
KZTKazakhstan Tenge
KESKenya Shilling
KRWKorea (South) Won
KWDKuwait Dinar
KGSKyrgyzstan Som
LAKLaos Kip
LBPLebanon Pound
LSLLesotho Loti
LRDLiberia Dollar
LYDLibya Dinar
MOPMacau Pataca
MKDMacedonia Denar
MGAMadagascar Ariary
MWKMalawi Kwacha
MYRMalaysia Ringgit
MVRMaldives Rufiyaa
MURMauritius Rupee
MXNMexico Peso
MDLMoldova Leu
MADMorocco Dirham
MZNMozambique Metical
MMKMyanmar Kyat
NADNamibia Dollar
NPRNepal Rupee
ANGNetherlands Antilles Guilder
NZDNew Zealand Dollar
NIONicaragua Cordoba
NGNNigeria Naira
NOKNorway Krone
OMROman Rial
PKRPakistan Rupee
PA*Palladium
PABPanama Balboa
PGKPapua New Guinea Kina
PYGParaguay Guarani
PENPeru Sol
PHPPhilippines Peso
PL*Platinum
PLNPoland Zloty
QARQatar Riyal
RONRomania Leu
RUBRussia Ruble
RWFRwanda Franc
SARSaudi Arabia Riyal
RSDSerbia Dinar
SCRSeychelles Rupee
SLLSierra Leone Leone
XAG*Silver
SGDSingapore Dollar
SBDSolomon Islands Dollar
SOSSomalia Shilling
ZARSouth Africa Rand
LKRSri Lanka Rupee
SDGSudan Pound
SRDSuriname Dollar
SZLSwaziland Lilangeni
SEKSweden Krona
TWDTaiwan New Dollar
TJSTajikistan Somoni
TZSTanzania Shilling
THBThailand Baht
TOPTonga Pa’anga
TTDTrinidad and Tobago Dollar
TNDTunisia Dinar
TRYTurkey Lira
TMTTurkmenistan Manat
UGXUganda Shilling
UAHUkraine Hryvnia
AEDUAE Dirham
UYUUruguay Peso
UZSUzbekistan Som
VNDViet Nam Dong
YERYemen Rial
ZMWZambia Kwacha

* Weight-based assets are calculated per gram.


8. Developer Integration

The protocol adheres to standard mailto: URI schemes, allowing for deep integration into web and mobile applications without proprietary SDKs. It is designed to be friendly to both human users and programmatic systems (backends, bots, etc.).

8.1 The Request Structure

To initiate a transaction, generate a URI with the following format:

mailto:{amount}{currency}@verify.credit?subject={recipient}&body={reference_id}
Pro Tip: Reconciliation
When generating payment requests, include a unique Transaction ID (UUID) in the email body. Because the protocol echoes the body content back in its confirmation, your backend can parse this ID to automatically reconcile specific user actions or orders.

8.2 The Response (JSON)

The protocol responds to every interaction with a multipart email. While humans see a styled HTML receipt, automated systems should parse the plaintext version of the reply.

The plaintext body contains a strict JSON Object. Note that the content field will contain the raw data you passed in the email Body (e.g., your Tracking ID).

{
  "type": "transaction",
  "success": true,
  "from": "sender@example.com",
  "score": 617283,
  "content": "ORDER-A93K-22",

  // added when specific currency conversion was applied:
  "value": 10,
  "currency": "USD",
  "rate": 0.0000162...
}

8.3 Implementation Example

The following JavaScript generates a QR code that, when scanned, pre-fills the user's email client with the transaction details and a unique reference code.

<script>
    function generatePaymentQR() {
        // 1. Define Transaction Details
        const amount = "10";
        const currency = "usd";
        const recipient = "donation@nature.org";

        // 2. Create a Unique Reference ID for your backend to track
        // (This ensures you know WHICH user paid)
        const referenceId = "ORDER-" + crypto.randomUUID().split('-')[0].toUpperCase();

        // 3. Construct the Protocol URI
        // We encode the body to ensure special characters don't break the link
        const uri = `mailto:${amount}${currency}@verify.credit` +
                    `?subject=${encodeURIComponent(recipient)}` +
                    `&body=${encodeURIComponent(referenceId)}`;

        // 4. Generate QR Code (using a standard API)
        const qrUrl = `https://api.qrserver.com/v1/create-qr-code/?size=300x300&data=${encodeURIComponent(uri)}`;

        // 5. Render
        console.log("Tracking ID:", referenceId);
        window.open(qrUrl, "_blank");
    }
</script>