Verifikasi bahwa relay mengembalikan respons resmi
Tempel respons API yang membawa bukti ke verifier di bawah. Verifier memeriksa tanda tangannya di browser Anda dan memberi tahu dari host upstream resmi mana respons itu berasal serta apakah relay mengubahnya. Data Anda tidak pernah meninggalkan komputer Anda.
- Tetap di browser Anda
- Verifier open source
- Gratis, tanpa daftar
Verifikasi respons dalam tiga langkah
- 1
Aktifkan verifikasi untuk key Anda
Di halaman API, aktifkan “Verifikasi resmi” untuk key tersebut. Hanya respons Claude Messages dan GPT Responses yang diteruskan apa adanya yang membawa bukti.
- 2
Simpan seluruh respons
Kirim request streaming dan tulis byte respons ke file apa adanya dengan curl -o; file itu seharusnya diakhiri event: tee.proof. Untuk request non-streaming, tambahkan header x-wokey-tee-proof-mode: multipart dan simpan seluruh respons multipart. Di Windows, gunakan curl.exe -o, bukan pengalihan > di PowerShell atau menyimpan ulang di Notepad, karena keduanya mengubah akhir baris atau encoding.
- 3
Tempel ke verifier
Tempel atau seret seluruh respons ke verifier di bawah, lalu mulai pemeriksaan. Pemeriksaan berjalan di browser Anda pada halaman ini dan tidak mengirim request jaringan apa pun.
curl -sN https://api.wokey.ai/v1/messages \
-H "x-api-key: YOUR_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{"model":"claude-sonnet-5","max_tokens":256,"stream":true,"messages":[{"role":"user","content":"Hello"}]}' \
-o captured-responseVerifier di atas dipublikasikan langsung dari repositori open source melalui GitHub Pages dan tidak pernah melewati server Wokey, sehingga Wokey tidak bisa menukarnya dengan versi yang selalu menyatakan “lolos”. Anda juga bisa menyimpan halamannya dan membukanya secara offline.
Verifier meminta Anda mencocokkan PCR0, yaitu nilai pengukuran image enclave. Gunakan nilai yang dipublikasikan di repositori open source, yang bisa direproduksi siapa pun dari kode sumber, bukan nilai yang datang bersama respons.
Cara membaca hasilnya
- Semua pemeriksaan lolos
- Atestasi terhubung berantai ke root AWS Nitro, PCR0 cocok dengan nilai yang dipublikasikan, tanda tangan valid, dan byte respons cocok dengan hash yang ditandatangani. Host upstream yang ditampilkan (misalnya api.anthropic.com) adalah asal respons, dan relay tidak mengubahnya.
- Bukti valid, isi respons tidak ada
- Anda hanya menempel event tee.proof. Bukti itu ditandatangani enclave asli, tetapi tanpa isi respons hash tidak bisa dihitung ulang, sehingga ini tidak menunjukkan bahwa konten yang Anda lihat tidak berubah. Tempel seluruh respons.
- PCR0 tidak cocok
- Atestasinya asli, tetapi enclave tidak menjalankan image yang telah diaudit. Anggap respons ini belum terbukti.
- Pemeriksaan tanda tangan atau hash gagal
- Bukti atau respons telah diubah, atau ada byte yang berubah saat disimpan atau disalin (misalnya karena konversi encoding). Simpan lagi respons mentahnya dengan curl -o; jika masih gagal, jangan percayai respons itu. Jika alat penyimpan mengubah akhir baris menjadi CRLF atau menyimpan file sebagai UTF-16, verifier mengonversinya kembali dan memberi tahu Anda; hasilnya tetap ditentukan oleh hash yang ditandatangani.
- Tidak ada tee.proof
- Respons ini belum terbukti: mungkin verifikasi belum diaktifkan untuk key, request melewati konversi format, atau enclave sedang tidak tersedia. Anggap belum terbukti.
Mengecek relay lain: apa yang terdeteksi dan terlewat oleh tiap metode
Tanpa tanda tangan upstream, hanya pengecekan tidak langsung yang mungkin dilakukan. Pengecekan itu memunculkan masalah yang jelas, tetapi hasil terbaiknya adalah “tidak ditemukan hal mencurigakan”, bukan “terkonfirmasi resmi”. Berikut metode yang umum beserta batasannya.
| Metode | Caranya | Terdeteksi | Terlewat |
|---|---|---|---|
| Jumlah token | Caranya: Kirim prompt tetap yang sama ke model yang sama di API resmi dan di relay, lalu bandingkan input_tokens di usage. | Terdeteksi: Model dari vendor lain: tokenizer tiap vendor berbeda, sehingga angkanya akan jelas tidak cocok. | Terlewat: Model dari satu vendor sering memakai tokenizer yang sama, sehingga model lebih murah dari keluarga yang sama tidak ketahuan. Anda juga memerlukan angka acuan dari API resmi. |
| Prompt caching | Caranya: Kirim prefiks yang sama, lebih panjang dari panjang minimum yang bisa di-cache oleh model, sebanyak dua kali. Periksa apakah respons kedua melaporkan cache_read_input_tokens dan ditagih dengan tarif baca cache. | Terdeteksi: Backend yang bukan upstream resmi, atau relay yang merusak caching tetapi tetap menagih harga penuh. | Terlewat: Cache hit hanya menunjukkan bahwa backend mendukung caching, bukan model mana yang dipakai. |
| Konteks panjang | Caranya: Kirim teks yang mendekati batas konteks yang diiklankan dengan satu fakta kunci disembunyikan di tengah, lalu tanyakan fakta itu. | Terdeteksi: Model dengan konteks lebih kecil yang menyamar sebagai model asli, atau relay yang diam-diam memotong riwayat. | Terlewat: Jawaban yang benar tidak membuktikan versi model, dan pengecekan ini paling banyak memakan token. |
| Detail protokol | Caranya: Bandingkan urutan event streaming (message_start sampai message_stop), format id pesan, header, dan bentuk error dengan dokumentasi resmi. | Terdeteksi: Wrapper kasar yang memaksakan output model lain ke dalam format Claude. | Terlewat: Semua field ini mudah dipalsukan; wrapper yang teliti bisa menirunya dengan persis. |
Metode yang jangan diandalkan
- Bertanya kepada model “kamu siapa” atau “kapan batas pengetahuanmu”: model resmi sendiri sering salah menjawabnya, dan relay bisa membuat model apa pun mengaku sebagai Claude lewat system prompt.
- Menilai kualitas atau kecepatan jawaban berdasarkan perasaan: prompt, beban, dan faktor acak terlalu memengaruhi keduanya; anggap sebagai petunjuk saja.
Mengapa tidak ada pemindai satu klik untuk semua relay
- Pemindaian harus mengirim request dengan API key Anda untuk relay tersebut. Merutekannya lewat server kami berarti menyerahkan key layanan lain kepada kami, dan kami tidak ingin memegangnya.
- Memanggil relay langsung dari browser gagal karena sebagian besar relay tidak mengizinkan request lintas origin.
- Pengecekan di atas hanya bisa mengatakan “mencurigakan” atau “tidak ditemukan apa-apa”. Mengemasnya sebagai skor akan terlihat berwibawa tetapi menyesatkan.
Daftar periksa mandiri untuk relay
Sebelum memilih relay, atau ketika Anda meragukan relay yang sedang dipakai, periksa dengan urutan ini:
- Apakah respons membawa bukti upstream yang bisa Anda verifikasi secara offline? Jika ya, apakah host upstream yang ditandatangani itu resmi, misalnya api.anthropic.com untuk Claude?
- Apakah input_tokens untuk prompt tetap sama dengan API resmi?
- Setelah prefiks panjang diulang, apakah respons melaporkan baca cache, dan apakah ditagih dengan tarif cache?
- Apakah konteks yang mendekati batas yang diiklankan ditangani tanpa pemotongan?
- Apakah relay menyatakan secara terbuka dari mana upstream-nya berasal dan apakah ia mencatat atau menyimpan isi request?
- Jika sebuah relay tidak bisa diverifikasi, jangan kirim rahasia, data pelanggan, atau konten sensitif lain melaluinya.
Apa yang ditunjukkan bukti dan apa yang tidak
Menunjukkan
- Dari host upstream resmi mana respons berasal.
- Byte respons persis sama dengan yang dikembalikan upstream, termasuk field model; relay tidak mengubah apa pun.
- Enclave menjalankan image yang dibangun dari kode sumber publik (PCR0 dapat direproduksi).
Tidak menunjukkan
- Kerahasiaan: relay tetap menangani plaintext saat meneruskan.
- Respons tanpa bukti, seperti request yang dikonversi formatnya dan pembuatan gambar.
- Pemutaran ulang respons lama di antara request yang identik byte demi byte.
Pertanyaan umum
Apakah respons yang saya tempel diunggah ke suatu tempat?
Tidak. Verifier adalah halaman yang sepenuhnya berjalan di front-end, memeriksa tanda tangan dengan WebCrypto bawaan browser, dan tidak mengirim request jaringan. Anda bisa memastikannya di tab jaringan pada developer tools browser, atau menyimpan verifier dan memakainya secara offline.
Apakah relay API AI legal?
Itu bergantung pada hukum di tempat Anda dan relay beroperasi serta pada ketentuan penggunaan penyedia upstream, yang berbeda menurut wilayah dan penyedia; halaman ini bukan nasihat hukum. Bacalah ketentuan upstream dan aturan setempat sebelum memakainya, terutama untuk data sensitif atau data yang diatur regulasi. Alat ini menjawab satu pertanyaan yang bisa diperiksa secara teknis: apakah respons yang Anda terima adalah respons asli dari upstream resmi.
Bagaimana cara tahu relay menyajikan model yang “diturunkan kualitasnya”?
Model yang terasa lebih buruk lewat relay biasanya disebabkan salah satu dari: penukaran diam-diam ke model lebih murah, riwayat percakapan yang dipotong, batas output yang lebih rendah, atau thinking yang dimatikan. Respons yang terbukti menyingkirkan penyebab pertama: tanda tangan mencakup byte asli dari upstream, sehingga field model berasal dari API resmi. Pemotongan dan perubahan parameter terjadi di sisi request, yang tidak dicakup bukti respons; pengecekan konteks panjang dan jumlah token di atas bisa membantu di sini.
Apa bedanya situs mirror Claude dengan situs resmi?
Produk resminya adalah claude.ai dan API Anthropic. Situs mirror adalah halaman chat pihak ketiga yang mungkin memakai API resmi, akun bersama, atau model vendor lain, dengan fitur dan kebijakan privasinya sendiri, dan pengguna biasanya tidak bisa mengetahui yang mana. Jika Anda memakai API dari tool seperti Claude Code atau Cursor, pertanyaannya adalah soal relay API, dan ujiannya sama: bisakah layanan itu memberi bukti upstream yang dapat Anda verifikasi sendiri?
Bagaimana jika respons tidak punya tee.proof?
Pastikan “Verifikasi resmi” aktif untuk key tersebut dan Anda memanggil rute yang meneruskan apa adanya, yaitu Claude Messages atau GPT Responses. Request yang dikonversi formatnya, seperti Claude melalui Chat Completions, tidak pernah membawa bukti. Jika enclave sedang tidak tersedia untuk sementara, request beralih ke jalur cadangan dan respons itu juga tidak punya bukti. Anggap setiap respons tanpa bukti sebagai belum terbukti.
Bisakah alat ini dipakai untuk memverifikasi relay lain?
Verifier hanya memeriksa respons yang membawa bukti Proof-of-Observation. Protokolnya open source dan relay mana pun bisa menerapkannya; untuk relay yang belum, hanya pengecekan tidak langsung di atas yang berlaku, dan hasil terbaiknya adalah “tidak ditemukan hal mencurigakan”.