只有你和你寫給的人讀得到
Cryptico 是一款匿名通訊軟體,可在網頁、Android 與 iPhone 上使用:沒有手機號碼,沒有電子郵件,沒有真實姓名。每一則訊息都經過端對端加密,而就算我們想解開,伺服器的程式碼也辦不到。
免註冊、免手機號碼,直接在瀏覽器裡開啟。


帳號是一組詞,不是一個人
註冊時你什麼都不必提供。Cryptico 會產生一個隨機身分和一組十二個字詞的復原片語,而這組片語就是帳號本身——你所有的金鑰都由它衍生而來。沒有號碼要驗證,沒有地址要確認,也沒有任何個人資料能把這一切連回你身上。使用者名稱是選用的:想讓別人找得到就設一個,不想就別設。
四件我們真的站得住腳的事
- 01
伺服器讀不到你的訊息
這是編譯結果決定的,不是一條政策。伺服器程式根本沒有把訊息內容的定義編進去,因此裡面不存在任何能解開訊息的程式路徑。我們的流程中有一項檢查:只要這一點不再成立,建置就會失敗。
check-proto-content-boundary.mjs - 02
永遠不用現實世界的識別資料
沒有手機號碼、沒有電子郵件、沒有真實姓名——應用程式裡沒有,資料庫裡沒有,通訊協定裡也沒有。有一項自動檢查會擋下任何想加進來的改動。名片草稿裡曾經混進一個手機號碼欄位;它已被移除,那個位置也永久停用。
check-forbidden-columns.mjs - 03
Signal Protocol,搭配抗量子金鑰協商
交握使用 PQXDH,訊息使用 Double Ratchet,群組使用 Sender Keys。每一次工作階段都會在傳統演算法之上再加一次抗量子的 Kyber-1024 交換——不是選項,而是每一次交握都做——因此今天被錄下的流量,不會因為未來出現量子電腦而變得可讀。交握之後的部分仍是傳統密碼學,所以我們說的是抗量子的金鑰協商,而不是宣稱全程都是。
libsignal · PQXDH · Kyber-1024 - 04
連我們自己的伺服器都聽不到的通話
一對一通話直接在裝置之間進行,沒有任何伺服器碰到媒體串流。群組通話會經過我們的媒體伺服器,但每一個畫格在抵達之前就已加密,而那台伺服器永遠拿不到金鑰。一項建置檢查會把通話媒體金鑰徹底擋在伺服器程式碼之外。
check-call-media-key-boundary.mjs
你實際能拿它做什麼
這是一款通訊軟體,不是一場示範。這份清單上的每一項都已在產品裡,而且出現在每一個用得上它的平台上。
聊天就該有的樣子
文字訊息支援提及、回覆、編輯、對所有人刪除、表情回應、轉發、多選與個人書籤。送達與已讀回條、輸入中提示、草稿、單一聊天內搜尋以及跨聊天搜尋。純文字不夠用時,還有投票、待辦清單、地圖位置與聯絡人名片。
最多 128 人的群組
建立群組、新增與移除成員、用附有效期與使用次數上限的連結邀請、提及某一個人或所有人。伺服器負責把訊息分送出去,卻始終不知道群組的名稱、簡介,也不知道你是以誰命名的。
檔案、相片與語音
八種附件,每個最大 100 MiB——相片、影片、語音訊息、影片留言、檔案、GIF、貼圖、音訊——並支援相簿與劇透遮罩。每個檔案都在你的裝置上以專屬的一次性金鑰鎖好,開啟前還會檢查是否遭到竄改。
通訊軟體內的迷你應用程式
有目錄、一鍵安裝與沙箱執行環境,另有開發者主控台和匿名檢舉按鈕。檢查碼與資訊清單對不上的應用程式,根本不會啟動。
真正擋得住的封鎖
在私人聊天中,被封鎖的人所發的訊息永遠不會送到你這裡,而對方也不會知道訊息沒送到。一次封鎖持續 180 天,對方每嘗試傳送一次就往後延一次。
一個帳號最多十台裝置
用復原片語連結新裝置、查看完整清單、隨時解除任何一台的連結——即使你手上已經沒有可用的工作階段,也能解除其中一台。聯絡人、資料夾、聊天清單、封鎖名單與設定都會加密同步過去。你的訊息封存大多不會;這一項寫在「我們不承諾的事」裡。
一對一與群組通話
語音與視訊、前後鏡頭切換、最多同時 8 格視訊畫面、舉手、分享螢幕,每一格畫面上都有麥克風與鏡頭指示。媒體串流預設走中繼,所以對方看不到你的位址。



資料夾、置頂與安靜的聊天
以規則分類的資料夾、置頂聊天、靜音聊天、共用媒體檢視,還有一條會如實告訴你連線狀況的橫幅。被靜音的聊天裡,提及仍然會通知你——這一點是刻意保留的。



它實際上是怎麼運作的
給想親自查證、而不是選擇相信的人看的簡短版本。



- 交握
- PQXDH:Curve25519 加上一把 Kyber-1024 預先金鑰,每一次工作階段都用,因此從第一則訊息開始,金鑰協商就是抗量子的。
- 訊息
- Double Ratchet:每傳一則訊息,金鑰就往前推進一步,所以事後取得的金鑰打不開先前的內容。
- 群組
- Sender Keys,最多 128 名成員。伺服器知道成員名單,因為它得據此分送訊息;但它不知道群組的名稱。
- 群組通話
- 畫格在抵達我們的媒體伺服器之前就已加密。金鑰由發起通話的那台裝置產生,透過通訊軟體本身分送,並在有人加入或離開時輪替。
- 檔案與相片
- AES-256-GCM,每個檔案一把新金鑰,隨加密信封一起送出,解密前還要通過一次 SHA-256 檢查。儲存端握有的只是它讀不懂的位元組。
- 在你的裝置上
- 本機訊息資料庫靜態加密——Android 與 iPhone 上使用 SQLCipher,瀏覽器裡使用 AES-256-GCM。
- 你的復原片語
- 十二個字詞。帳號的每一把金鑰都由它衍生:先 BIP39,再用 Argon2id,每猜一次都得花 64 MiB 記憶體與三輪運算,暴力破解因此划不來。伺服器不保留任何能反推它的東西。
- 驗證對方是誰
- 每個對話有一組 60 位數字的安全碼,通話中還會顯示一組 6 位數字的驗證碼,由你們其中一人念出來。通話驗證碼只由這一次連線算出,因此每次都不一樣。
- 應用程式鎖
- 一組 4 位數 PIN 碼,外面包著 Argon2id 與 AES-256-GCM,最多 5 次嘗試,裝置支援時可用生物辨識,閒置後自動鎖定。PIN 碼開的是裝置;帳號屬於那組片語。
- 設定與聯絡人
- 以密文同步,金鑰由你的復原片語衍生——連每筆紀錄的名稱都是帶金鑰的雜湊,而不是文字。伺服器存的是看不懂的資料塊,不是欄位。
- 使用的函式庫
- Android 與 iPhone 使用 Signal 的官方函式庫。Signal 根本沒有為瀏覽器發布任何版本,所以我們自己從 Signal 的原始碼編譯網頁端引擎,並鎖定在確切的版本——只改了一行讓它能在這裡編譯成功,密碼學的部分一處未動。
我們不承諾的事
每一款通訊軟體的首頁都會告訴你它保護了什麼。這一頁還會告訴你它沒保護到什麼,因為我們修不掉的那部分,正是你最需要知道的。

我們看得到誰在跟誰說話
端對端加密藏住的是你說了什麼,而不是你說過話這件事。為了把訊息送到,伺服器必須知道由誰接收、何時接收。它也會保存群組成員名單,因為沒有名單就無法分送。我們沒辦法誠實地宣稱自己不知道誰在跟誰說話。我們能宣稱的是:我們從不接觸內容,而且伺服器的程式碼連解析都做不到。
推播通知會把時間資訊洩漏給 Google 與 Apple
Android 的通知經由 Firebase Cloud Messaging,iPhone 的則經由 Apple 的服務。推播本身不帶文字、也不帶寄件者——但傳送方看得到哪一台裝置在什麼時間被喚醒,光靠時間對照就足以還原出誰在跟誰說話。只要喚醒的通道還握在別人的服務手上,帳號的匿名性就涵蓋不到「通訊發生過、發生在何時」這件事。
你的歷史紀錄幾乎跟不上你
在新裝置上登入,會還原你的身分、個人檔案、聯絡人、資料夾、聊天清單、封鎖名單與部分設定——但不包含訊息封存。跟你聊天的人會重新傳來薄薄的一層,最多回溯 30 天,就這樣而已。伺服器端不存在你的歷史備份,這是刻意的設計。
弄丟片語,誰也幫不上忙
客服無法讓你重新登入,因為我們這邊根本沒有可以憑藉的東西——沒有號碼、沒有地址、沒有密碼提示。十二個字詞就是帳號的全部。這是這一頁其餘內容的代價,我們寧願你在註冊前就知道,而不是之後才知道。
我們保留紀錄,只是裡面沒有你
我們保留維運服務紀錄,其中沒有訊息內容、沒有密文本體、沒有金鑰,也沒有復原片語。說「完全不留任何紀錄」是假的;說「紀錄裡沒有內容」是真的,我們承諾的正是後者。
可以在哪裡使用




大家真的會問的問題

要花多少錢?
不用錢。沒有付費方案、沒有廣告、也沒有加購推銷——限制只有技術上的,例如每個檔案 100 MiB、單一檔案保存 30 天。如果哪天真的推出付費方案,我們會在那之前先說,而不是事後才說。
程式碼是公開的嗎?
還沒有。等開發穩定下來就會公開。在那一天到來之前,我們不會自稱 open source——你無從查證這個說法,我們也不打算請你憑信任接受。等程式庫公開,網址就會寫在這裡。
如果我弄丟復原片語會怎樣?
帳號就沒了。沒有重設連結,客服也沒辦法讓你重新登入——一條由我們掌握的復原路徑,同樣會是別人進來的路徑。
誰可以傳訊息給我?
對方需要你的使用者名稱、你給出去的邀請連結,或是你的 QR code。如果你根本不想被找到,那就別設使用者名稱。你可以封鎖任何人,被封鎖的人就再也聯絡不到你。
我能確認自己是在跟正確的人說話嗎?
可以,有兩種方式。每個對話都有一組 60 位數字的安全碼,雙方可以核對一次;通話時兩邊螢幕會顯示同一組 6 位數字的驗證碼——一人念出來,另一人核對。通話驗證碼每通電話都是新的。
我可以在多台裝置上使用嗎?
可以,最多十台。每一台都用復原片語連結,也都能從清單中解除連結。聯絡人、資料夾、聊天清單與設定會加密同步過去;你的訊息封存大多不會。
你們會分析我或販售資料嗎?
沒有廣告,也不販售資料。這個頁面完全沒有分析追蹤,也沒有任何第三方指令碼——沒有一個請求會送往別人的伺服器。
好了再通知我
等到真的有值得安裝的東西那天,我們只寄一封信。沒有電子報、沒有連環信件,也不經過第三方寄信服務——地址留在我們自己的資料庫裡,不會流到別處。
我們不會寄確認信,所以打錯了就只會是一片安靜。送出前請再看一次地址。
