Qubic bxid arkiveringstjeneste
En unik bxid-hash repræsenterer bekræftede Qubic-transaktioner, hvilket forenkler integrationen i traditionelle kryptosystemer, såsom wallets og børser, via en API indekseret af bxid.
Qsilver - 6. januar 2024.
Introduktion
Qubics unikke egenskaber gør det udfordrende at interagere direkte med eksisterende krypto-infrastruktur. Dette forslag definerer en unik hash, bxid, der repræsenterer et bekræftet og øjeblikkeligt endeligt bevis på værdioverførsel. En API indekseret af bxid vil forenkle integrationen af Qubic i systemer, der forventer traditionelle bekræftede txid.
Definition af bxid
Bxid (Balance Transfer ID) kan beregnes lokalt, før det inkluderes i et kryds, så wallets kan vise bxid til brugere og forespørge en API-tjeneste. Hvis bxid ikke er til stede efter det angivne kryds, indikerer det en transaktionsfejl.
For normale QU-overførsler er bxid defineret af K12-hash af epoch + tick + srcpubkey + destpubkey + amount, i et byteformat, der matcher logfilposten. For andre transaktionstyper følger bxid den samme konvention ved at hashe logfilposten direkte og springe datofelter over.
Håndtering af transaktionsløse SC-saldoændringer kræver et unikt bxid pr. saldoændring. Ved at beregne SC-saldoændringer med et beløb på 0 returnerer forespørgslen for det pågældende bxid summen af alle saldoændringer for den pågældende destination i krydset.
Brug af bxid
1. Beregning af bxid
./bxid calcbxid epoch tick source dest amount
2. Hentning af bxid-data
curl 93.190.139.223:9200/txid/_doc/(txid)
curl 93.190.139.223:9200/bxid/_doc/(bxid)
3. Validering af bxid-information
- Hvis bxid findes, kan det matchende txid findes i det inkluderede kryds og valideres.
- Hvis txid er inkluderet, men bxid mangler, skal du validere enhedsoplysningerne for at få den aktuelle saldo. Summér alle bxid for epoken for den specifikke adresse, træk fra baseret på kilde eller destination, og tilføj nettoændringen til begyndelsen af epokens spektrumfil. Hvis det matcher saldoen ved hjælp af kryptografisk validerede enhedsdata, bekræftes bxid'en.
Implementering
1. Opsætning af bxid-arkiveringstjeneste
Klon og opbyg depotet:
git clone <https://github.com/Qsilver97/qubic-cli>
cd qubic-cli
mkdir build
cd build
cmake ..
make
g++ -I.. ../bxid.cpp ../connection.cpp -o bxid
2. Oprettelse af JSON-output
Eksempel på JSON fra en logfil:
{ "index": { "_index": "bxid", "_id": "397e947847ada93de80907d88a835419fb532b3ca1fd68b3c95ebab11cd24190" } }
{
"utime": "1707059413",
"epoch": "90",
"tick": "11867469",
"type": "1",
"src": "LZLDOEIBQWIUGGMZGOISLOAACDGAFVAMAYXSSJMLQBHSHWDBPMSDFTGAYRMN",
"dest": "QHQPMJVNGZJGZDSQREFXHHAZFYPBIYDOTFAOTTWGYCWGTIRNGBVMKBGGNDDA",
"amount": "1521139"
}
Brug Charmed OpenSearch-systemet til at behandle disse JSON-linjer:
curl --cacert demo-ca.pem -XGET https://<username>:<password>@<ipaddr>:9200/bxid/_doc/397e947847ada93de80907d88a835419fb532b3ca1fd68b3c95ebab11cd24190
{
"_index": "bxid",
"_id": "397e947847ada93de80907d88a835419fb532b3ca1fd68b3c95ebab11cd24190",
"_version": 2,
"_seq_no": 32754,
"_primary_term": 1,
"found": true,
"_source": {
"utime": "1707059413",
"epoch": "90",
"tick": "11867469",
"type": "1",
"src": "LZLDOEIBQWIUGGMZGOISLOAACDGAFVAMAYXSSJMLQBHSHWDBPMSDFTGAYRMN",
"dest": "QHQPMJVNGZJGZDSQREFXHHAZFYPBIYDOTFAOTTWGYCWGTIRNGBVMKBGGNDDA",
"amount": "1521139"
}
}
3. Opsætning af logbehandlingsloop
Opret et logbehandlingsloop for at vedligeholde arkiveringstjenesten og REST API:
while true; do
./bxid processlog
done
Konklusion
Implementering af en bxid-arkiveringstjeneste forenkler integrationen af Qubic i eksisterende kryptotjenester ved at give et bekræftet og øjeblikkeligt endeligt bevis på værdioverførsel. Ved at udnytte bxid og bxid-arkiveringstjenesten kan Qubic-transaktioner problemfrit indarbejdes i traditionel krypto-infrastruktur.
For de seneste opdateringer, slut dig til Valis Discord, følg os på X, og bogmærk vores blog.
← Forrige
Næste →
På denne side
- Qubic bxid arkiveringstjeneste
- Introduktion
- Definition af bxid
- Brug af bxid
- 1. Beregning af bxid
- 2. Hentning af bxid-data
- 3. Validering af bxid-information
- Implementering
- 1. Opsætning af bxid-arkiveringstjeneste
- 2. Oprettelse af JSON-output
- 3. Opsætning af logbehandlingsloop
- Konklusion
Relaterede opslag