Documents: issue and verify
Register a certificate in 3 clicks (small fee in BDAG, paid from your wallet), see the documents that come out (sealed PDF, seal image and receipt) and check an original and an altered copy — checking is always free.
DagSeal proves that a document, a game result or a piece of work is original and unchanged, with its registration date. The file's fingerprint is written to the BlockDAG blockchain, and anyone can check it with a QR code, for free.
Who are you?
No account, wallet or money needed. Works on any phone or computer, in 18 languages.
Point your phone camera at the QR on the document. The DagSeal page opens and checks it by itself. No QR? Open the DagSeal page and type the verification code printed under it, for example DS-8AE3-986E-6A07-CF6B.
If you received the document as a PDF or another file, choose it under Document file. The page compares fingerprints and detects any change, even a single comma.
The name appears as Name declared by whoever registered: it is written by whoever registered the document and is not confirmed by DagSeal. The Transaction line links to the public BlockDAG explorer, where anyone can see when the record was written and by which wallet.
For schools, training centres, companies, landlords and tournament organisers. Choose how you pay: with a prepaid balance (no crypto) or with your own wallet.
Without crypto: a balance in euros or dollars, topped up in advance. You need an API key from DagSeal and nothing else. With a wallet: you pay in BDAG from your own wallet, for example MetaMask.
On the DagSeal page, open Issue and choose Without crypto (balance in € or $). Paste your key and press Connect. Your balance appears. To get a key, write to dagseal.doc@gmail.com.
Install MetaMask, get some BDAG on the BlockDAG network (chain 1404), then in Issue press Connect wallet. No account or sign-up: your profile is created automatically with your first registration, and the organisation name is optional.
Choose the file (for example the certificate PDF), the type and, if you like, an expiry date. Before paying you always see the price: in BDAG with a wallet, in BDAG, € and $ without crypto. Without crypto, press Confirm and pay: you are never charged more than the price shown. With a wallet, press Register and create QR: the site shows the maximum price (DagSeal fee + network fee) and you confirm in your wallet. Right after, the site shows the exact amount paid, which is never more than that maximum (often slightly less).
With DagSeal Stamp (on by default for PDFs) you download a sealed PDF: the original plus a certificate page with the QR, the DS-… code and how to verify, and a small footer on every page. Send that file to the holder: it verifies as original by code, by QR and by file. For other files, download the seal image with the QR and code. You also see what you paid and the transaction hash, and can download the PDF receipt.
If a document stops being valid, use Revoke with its code. Without crypto you see the price first; with a wallet there is no DagSeal fee, only the network fee, which your wallet shows before you approve. You get the transaction hash after. Anyone who checks it will see "Document revoked".
Whenever you connect your wallet, the page remembers it on your next visits and shows My records: every record your wallet made, with its status, date and transaction, and the downloads of the seal image and the PDF receipt for each one. You can also download the whole list (CSV). The sealed PDF is not stored anywhere, so keep your copy.
| On your own (your wallet) | Organizations (DagSeal Cloud) | |
|---|---|---|
| Needs crypto? | Yes — BDAG in your wallet (MetaMask, another wallet app or QR code) | No — pays in euros or dollars; DagSeal pays the network |
| Who pays | You, per document (a plan is optional) | The organization, from a prepaid balance (real cost + 50%) |
| How | dagseal.com → Issue → choose the file | API key: straight from your own system, without a wallet |
| What you receive | DS-… code, QR, sealed PDF, seal image and receipt | DS-… code, verification link and fingerprint for each document |
| What it proves | The document is original and unchanged, with its date | The document is original and unchanged, with its date |
| What it does not prove | Who issued it — the name is declared, not confirmed by DagSeal | Who issued it — the name is declared, not confirmed by DagSeal |
| Checking a document | Free, no account | Free, no account |
There are two ways. The first is worth much more than the second.
The game registers your result and shows the DS-… code on your profile and on the leaderboard. Share the code or link: anyone who checks sees the record registered through the game's DagSeal account, with its date. If the game offers it, you can also download the proof file (.json) from your profile.
Record the video or take the screenshot right after the result. Register the file with the type Game record, on the DagSeal page or with /seal in a Discord server that uses DagSeal. You see the price first and confirm. Share the original video and the DS-… code.
The proof works with the exact file you registered. Re-encoding, trimming or sending it through an app that changes it (some social networks do) changes the fingerprint. Always keep the original.
| Player on their own | Studio or tournament (DagSeal Cloud) | |
|---|---|---|
| Needs crypto? | Yes — a little BDAG in their own wallet | No — pays in euros or dollars; DagSeal pays the network |
| Who pays | The player, in BDAG, when registering | The studio, from a prepaid balance (real cost + 50%) |
| How | dagseal.com/games → Register a result → wallet | Discord bot, Unity, Godot, REST API or ranking seal |
| What it proves | The file is original and unchanged, with its date | The file is original and unchanged, with its date, registered through the studio's DagSeal Cloud account |
| What it does not prove | That the play was fair | Who the studio is — the name is declared, not confirmed by DagSeal |
| Checking a code | Free, no account | Free, no account |
Players don't need a wallet. Your server, or DagSeal Cloud, registers the results. The kit (the sdk folder) includes JavaScript, a Godot 4 addon, a Unity client and an example server.
The easiest way is a DagSeal Cloud API key: no crypto, a prepaid balance in € or $, charged at the real cost + 50%, and a free test balance for 10 records. Write to dagseal.doc@gmail.com. If you prefer your own wallet, create one just for your server and keep a little BDAG in it for the fees.
Ask for the price with GET /v1/quote and show it to the player in BDAG, € and $. Then register with POST /v1/results and send maxPrice: if the price went up, nothing is charged.
GET /v1/quote → { maxPrice, price: { EUR, USD, BDAG, text } }
POST /v1/results
{ "game": "Race X", "player": "account-8841",
"score": { "time": 61.204 }, "maxPrice": "0.000000011" }
→ { code: "DS-…", txHash, txUrl, charged, balance }In Godot 4, enable the DagSeal addon. In Unity, use DagSealClient.cs. Any other stack sends { game, player, score, replaySha256 } over HTTP.
# Godot 4
DagSeal.configure("https://cloud.example", "dsk_…")
DagSeal.quoted.connect(func(q): price_label.text = q.price.text)
DagSeal.quote()
DagSeal.register_result("Race X", player_id, {"time": 61.2}, "", "", [], max_price)Show the DS-… code and the "✓ Original · DagSeal" seal next to the score, on profiles and leaderboards. Every answer includes the transaction hash (txHash, txUrl). Store the manifest on the player's account and let them download it.
Never put emails or real names in player: use an internal ID or gamertag. Keep the API key on your server, not inside the game. The kit works only with the official DagSeal contract, under the included licence.
| Player on their own | Studio or tournament (DagSeal Cloud) | |
|---|---|---|
| Needs crypto? | Yes — a little BDAG in their own wallet | No — pays in euros or dollars; DagSeal pays the network |
| Who pays | The player, in BDAG, when registering | The studio, from a prepaid balance (real cost + 50%) |
| How | dagseal.com/games → Register a result → wallet | Discord bot, Unity, Godot, REST API or ranking seal |
| What it proves | The file is original and unchanged, with its date | The file is original and unchanged, with its date, registered through the studio's DagSeal Cloud account |
| What it does not prove | That the play was fair | Who the studio is — the name is declared, not confirmed by DagSeal |
| Checking a code | Free, no account | Free, no account |
Short videos in English, with subtitles in 18 languages. The subtitles follow the site language; change them with the CC button.
Register a certificate in 3 clicks (small fee in BDAG, paid from your wallet), see the documents that come out (sealed PDF, seal image and receipt) and check an original and an altered copy — checking is always free.
A player registers their own result (small fee in BDAG, paid from their wallet), shares the seal image and sees what it proves — and what it does not.
Link the server once, seal files with /seal and check codes with /verify. No crypto for the server.
Register results with POST /v1/results from any engine, server or website, and check codes with GET /v1/verify.
Register race times from a Unity game with DagSealClient.cs and show the code on the leaderboard.
The same in GDScript: enable the addon, connect the signal and call register_result.
Add one line with badge.js and show ✓ Original next to each score, in the visitor's language.
Verifying is always free. With your own wallet you pay the DagSeal fee (0.0005 BDAG) + the network fee. Without crypto (DagSeal Cloud), during the testing phase each registration costs only its BlockDAG transaction fee + 50%, at the current BDAG price, with no minimum. After the testing phase it costs the real BlockDAG cost (DagSeal fee + transaction fee) + 50%, minimum €0.01 / $0.01, and each optional backup network (such as Bitcoin) adds €0.01 / $0.01. Prices may change at any time, including after the testing phase; what you already bought is kept (plans keep their records and period, and a prepaid balance keeps its value). You always see the price before you confirm. With your own wallet, the site shows the maximum price before you confirm and the exact amount paid right after, also on the receipt. Buying a plan is optional: without one you pay per document; a plan only lowers the price per document if you register many.
It is the public receipt of the registration on BlockDAG. Anyone can open it on the BlockDAG explorer and see when it was written. It contains no personal data.
No. The file stays on your device. Only its fingerprint (a 64-character code) goes on the blockchain, and the document cannot be rebuilt from it.
Records live on the public BlockDAG blockchain. Any developer can keep verifying them directly against the contract, without the website.
No, and that is what makes it trustworthy. Whoever registered it can revoke it, and anyone who checks will see it was revoked.
The pages work in 18 languages. They open in English; choose your language in the menu and it stays while you move between pages.
Yes. When you verify a record, open See all records from this wallet. The list is public, read directly from the BlockDAG blockchain, and you can share its link (dagseal.com/#issuer=0x…).
Organisations and studios that use DagSeal Cloud can add a backup proof on Bitcoin. Every hour, the records that chose it are grouped in a batch file, and the fingerprint of that file is sent to Bitcoin through OpenTimestamps. The confirmation in a Bitcoin block takes a few hours. When you verify one of these records you see its status and can download the batch file (.txt) and the proof (.ots), and check them yourself at opentimestamps.org.