Frequently Asked Questions

Common questions about attest.ink and how it works

How does attest.ink work offline?

attest.ink operates primarily as a client-side application, which means:

  • Embed Badge: This option generates self-contained HTML with full attestation data embedded directly in the code. These badges work completely offline and can be shared anywhere without requiring internet access.
  • Local Storage: When you create an attestation, it's stored in your browser's localStorage. This allows you to verify attestations you've created on the same device/browser without internet.
  • No Server Dependency: The core verification process happens entirely in your browser using JavaScript cryptography libraries.

Why does my short URL show "Attestation not found"?

Short URLs (like ?id=2025-01-16-abc123) currently work with these limitations:

  • The attestation must be created and verified in the same browser (localStorage is per-browser)
  • Browser storage must not be cleared
  • The ID must be correct
  • In demo/local environments, server storage isn't available

For sharing attestations across devices:

  1. Use the "Embed Badge" option (includes full attestation data)
  2. Use the full data URL instead of the short URL
  3. Save and share the attestation JSON file

Note: Short URLs with server storage are coming soon for production use.

What's the difference between badge options?

  • Embed Badge: Self-contained HTML with full attestation data embedded. Works offline, perfect for sharing.
  • Direct Link: A short URL that requires the attestation to be in localStorage or on the server.
  • Data URL: A long URL containing the entire attestation encoded in base64.
  • LaTeX Badge: Special formatting for academic papers with footnotes.
  • Markdown Badge: For README files and documentation.

Can I verify attestations from other browsers/devices?

Yes, but you need to use one of these methods:

  • Use an embed badge (contains all data)
  • Use a data URL (contains all data)
  • Share the attestation JSON file
  • Wait for server storage support (coming soon)

What happens when I refresh the Create page?

When you refresh the Create page, you'll lose any unsaved progress. That's why we've added a warning that appears when you try to leave the page with unsaved data. To avoid losing work:

  • Complete your attestation before refreshing
  • Save your content elsewhere if you need to pause
  • Use the browser's back button carefully

How do I use LaTeX badges in academic papers?

LaTeX badges are designed for academic citations:

  1. Create your attestation with the content
  2. Select "LaTeX" as the badge style
  3. Copy the generated LaTeX code
  4. Paste it into your paper where you want the badge
  5. The badge includes a footnote with the verification URL

Note about the hash validation challenge: Since the verification URL contains the attestation ID (which is based on the content hash), and you might want to include this URL in your paper, there's a circular dependency. Solutions:

  • Two-step approach: First generate the attestation without the URL in your paper to get the ID, then update your paper with the URL
  • Use placeholder: Include a placeholder like "[ATTESTATION_URL]" in your paper, generate the attestation, then replace the placeholder
  • Reference in bibliography: Don't include the URL in the main content, only in references/bibliography
  • Use data URL: Use the full data URL option which doesn't change based on content

Is my data private?

Yes, attest.ink prioritizes privacy:

  • All attestation creation happens in your browser
  • No data is sent to servers during creation
  • You can keep prompts private (only the hash is included)
  • localStorage data stays on your device
  • You control what data to share via badges/links

What's the difference between AI roles?

  • AI Generated: Content created entirely by AI (100% AI)
  • AI Assisted: Human and AI collaboration
  • AI Edited: Human-created content refined by AI
  • Other: Custom role for specific use cases