零憶使用手冊
怎樣在 Windows 和 Android 上安裝零憶、設置好並日常使用。文中按鈕和菜單的名字和 App 的中文界面一致。English: ZeroMem user guide
只要記住三件事:口令忘了找不回,對方不在線發不出去,鎖定或退出後聊天記錄不保留。
安裝
Windows(Windows 10 或更新版本,64 位)
- 在下載區點「下載 Windows 版」,得到一個 zip 文件。
- 右鍵點這個 zip,選「全部解壓縮」,打開解壓出來的文件夾。不需要安裝,也不寫註冊表;整個文件夾都要留著,程序要用到裡面的其他文件。
- 運行 zeromem.exe。
- 程序還沒有代碼簽名,Windows SmartScreen 可能提示「Windows 已保護你的電腦」:點「更多信息」,再點「仍要運行」。
Android(Android 10 或更新版本)
- 在手機上打開下載區,點「下載 Android 版」。
- 打開下載的 APK。系統問是否允許瀏覽器安裝應用時,選允許,再返回點「安裝」。
- 有些手機會先檢查應用:Google Play 保護機制,或者很多國產手機的「純淨模式」、安全檢測。選擇繼續安裝即可,具體字眼因品牌而異。
- 第一次通話時零憶會請求麥克風權限,第一次掃碼時請求相機權限。
- 可選:想確認應用是我們簽名的,可以核對它的簽名證書 SHA-256 是否為
99:。手機上的 AppVerifier 按這個格式顯示;電腦上的4D: 41: BA: 12: 8E: 34: E0: D7: 81: 47: 0D: C0: D6: CF: B4: B3: 6E: F8: EF: 0C: AE: 62: 2D: 8F: 66: F4: D3: 74: 16: 09: 26 apksigner verify --print-certs顯示的是同一個值,只是小寫、沒有冒號。
可選:想確認文件沒有被改過,可以核對它的 SHA-256 和下載區顯示的是否一致(Windows 上用 PowerShell 的 Get-FileHash)。
從舊版升級
舊版本已經連不上:會提示「這個版本已不能連接,請更新應用。」,或者一直不在線。請按上面的方法安裝新版。身份、聯繫人和圈子都會帶過來;聊天記錄本來就不保留。
零憶 v19 或 v20
- Windows:關閉零憶,解壓新版,運行裡面的 zeromem.exe,用原來的口令就能打開你的身份。之後可以刪掉舊的文件夾。
- Android:直接覆蓋安裝新的 APK,身份保留。
Unwritten 或零界(v18 及以前的名字)
- Windows:先關閉舊版,再啟動零憶。零憶第一次啟動時會自動把舊版的身份複製過來,用原來的口令解鎖即可。舊版的文件原樣保留。
- Android:舊版和零憶在手機上是兩個不同的 App,所以要手動搬身份:
- 在舊版裡解鎖,打開「設置」,點「導出身份(換設備時使用)」,輸入口令,保存文件。
- 安裝零憶。
- 在零憶的首頁點「已有身份?從其他設備導入」,選這個文件,輸入同一個口令,點「導入」。
- 確認聯繫人都在之後,卸載舊版。
還在用舊版的聯繫人,要等對方更新後才能和你聊天。
第一次使用
第一次打開會看到建立身份的頁面,這一步只做一次;在另一台設備上使用時改為導入身份(見換設備)。
- 輸入至少 8 個字符的口令,再在「再輸入一次」裡輸一遍。點眼睛可以看到自己輸入的內容。
- 「用戶名(別人用它找到你)」:3–20 位小寫字母、數字或下劃線。已被別人用了就換一個。
- 「許可證密鑰」:我們或你所在機構的管理員發給你的密鑰。一張許可證只給一個人用。
- 點「建立身份」。
「服務器設置」不要改,地址已經填好。界面語言在這個頁面底部選(「跟隨系統」「English」「繁體中文」),之後也可以在「設置」最上面改。
口令忘了就找不回:任何人都無法重置,包括我們。請選一個自己不會忘的口令,或者寫在紙上鎖好。
以後每次啟動都要輸入口令。輸錯 5 次,這台設備上的身份會自動銷毀;輸入框下方會顯示還能嘗試幾次。
以後更改用戶名或許可證密鑰
- 用戶名:「設置」→「身份」→「用戶名」。輸入想要的名字,點右邊的勾(「更改用戶名」)。還沒有用戶名時,也在這裡設置。
- 新的許可證密鑰:「設置」→「服務器」。把「許可證密鑰」裡原來的內容換成新密鑰,點「保存並重新連接」;兩個地址不要改。你的用戶名會自動轉到新許可證下。轉不過去時,聊天列表上方會提示「你的用戶名 @名字 已不再指向你。請在設置裡重新選擇。」
本機綁定
零憶會把身份文件綁定到這台設備的安全芯片(沒有芯片時綁定到系統密鑰庫),文件被拷走也無法在別的設備上打開。這是自動完成的,可以在「設置」→「保護與解鎖」→「本機綁定」看到。
可選:安全密鑰
FIDO2 安全密鑰給身份文件加第二把鎖:之後要「口令 + 這把密鑰」才打得開。密鑰要支持 hmac-secret,例如固件 5.7 以上的 YubiKey 5,或 Nitrokey 3。電腦需要 Windows 11 或較新的 Windows 10;手機需要 NFC 或 USB-C 接口。
- 「設置」→「保護與解鎖」→「添加安全密鑰」→「開始」,然後輸入口令。
- 把密鑰插入電腦,或者貼近手機背面、插入手機的 USB-C 接口。輸入密鑰的 PIN(沒有 PIN 時會讓你設置一個)並觸摸密鑰,一共兩次。
- 用同樣的方法通過「添加備用密鑰」再加一把(最多四把),並導出一份備份(見換設備)。備份只要口令就能打開,是密鑰丟失時找回身份的辦法。
安全密鑰取代本機綁定:帶著密鑰和口令,在別的設備上也能打開身份。解鎖時輸入口令,點「解鎖」,再插入或貼近密鑰,輸入 PIN 並觸摸。「取消安全密鑰鎖」會回到本機綁定。
聯繫人
添加聯繫人
- 打開左上角的菜單(手機上也可以點右下角的筆形按鈕),選「添加聯繫人」。
- 在「對方的用戶名或識別碼」裡輸入對方的用戶名。手機上也可以點「掃描二維碼」,掃對方「我的識別碼」頁面上的碼:當面掃到的,加好後直接算已核對。對方發給你的識別碼可以貼進來,以 ZM2- 開頭。
- 需要的話填「備註名(可不填)」,點「添加」。按用戶名查找可能要幾分鐘(「可能需要幾分鐘。」),可以等,也可以點「取消」。
- 請求會在幾分鐘內送出。對方在聊天列表上方的「新的聯繫人請求」裡看到你,在線時一般十分鐘左右;不在線時請求最多等 7 天。對方同意後就能聊天。
每天大約可以添加 16 個人。你自己的用戶名和識別碼在菜單的「我的識別碼」裡;一般把用戶名告訴對方就夠了。
聯繫人請求
點「新的聯繫人請求」。每個請求都可以:「同意」加為聯繫人,「忽略」丟掉請求,點拉黑按鈕(「拉黑:以後不再收到此人的請求」)拉黑對方,點盾牌按鈕(「核對安全碼」)在答覆前先核對安全碼。請求裡的名字是對方自己填的;「不是你聯繫人裡的名字」提醒你有人用了你某個聯繫人的名字。忽略和拉黑都不會通知對方。
之後在聯繫人的「聯繫人資料」裡可以「拉黑並刪除」或「刪除聯繫人」。解除拉黑:「設置」→「黑名單」→「移除」。
當面核對聯繫人
安全碼是一個二維碼和一串 60 位的數字,你和對方各自算出來,應該一模一樣。
- 在聊天頁面點頂部對方的名字,打開「聯繫人資料」。「未核對」下面的二維碼和 60 位數字就是安全碼。
- 手機上點「掃描對方的碼」,掃對方屏幕上的碼。不能掃碼時,當面或者在零憶以外的電話、短信裡比對這 60 位數字,一致就點「數字一致」,再點「標記」。
- 核對過的聯繫人名字旁邊顯示實心盾牌。對方也要在自己那邊核對一次。
掃碼時如果不一致,App 會說明是哪一邊存的不對。自己比對數字時 App 無法判斷,數字不同要靠你自己看出來。無論哪種情況,都不要標記為已核對,先當面確認對方是誰。
聯繫人的身份變了
- 「@名字 現在指向另一個身份」:用「添加聯繫人」再次添加以前加過的用戶名時,如果這個名字現在查到的是另一個身份(對方換了手機,或者這個名字換了人),App 會停下並這樣提示。你選「保留原來的」「掃描對方的碼」或「添加為新聯繫人」之前,App 不會給它發任何東西。
- 「名字已換用新身份」:聯繫人宣布並證明了新身份。原來核對過的,盾牌變成空心的「已沿用」,再核對一次才算已核對。
- 「名字的舊身份仍在使用」:換身份之後,舊身份又發來了內容。點這一行,選「換回舊身份」或「保留新身份」;最好當面核對。
聊天與文件
- 在「輸入消息…」裡寫消息,按回車或點「發送」。點回形針(「發送文件」)發文件,最大 64 MB。
- 在消息上按右鍵(電腦)或長按(手機),可以「回覆」「複製」「保存到本機」(文件)和「從本機刪除」。
- 聊天頁面頂部顯示對方「在線」或「離線」。對方不在線時,消息不會送達,也不會留到以後再發。發文件時,對方要在整個傳送過程中都在線。
- 收到的文件只在內存裡,點「保存到本機」才會寫到磁盤。
- 什麼都不保留:鎖定、退出或重啟後,所有聊天記錄都沒了。聯繫人和圈子會保留。
自己發的消息旁邊的標記:
| 標記 | 意思 |
|---|---|
| 時鐘 | 還在本機等著發出。 |
| 單勾 | 已發出,等待確認。 |
| 雙勾 | 「已送達」:對方設備已收到,不表示已讀。通常幾秒到二十秒左右出現。 |
| 未確認 | 沒有及時等到確認,可能到了,也可能沒到。 |
| 未送達 | 沒有送到。 |
| 2/3 | 圈子裡應確認的 3 位成員中有 2 位已收到,不顯示是誰。 |
不會自動補發。自己發的一對一文字顯示「未送達」或「未確認」時,打開它的菜單選「再發一次」,對方只會看到一次。
通話
- 撥打:打開聊天,點右上角的電話圖標。對方必須在線。對方會看到「語音來電」,可以「接聽」或「拒絕」;除了系統提示音,沒有專門的鈴聲。
- 通話中有「靜音」、變聲按鈕、「掛斷」,Android 上還有「揚聲器」。左上角的箭頭(「返回聊天」)讓你回到聊天,通話繼續;點頂部的綠色條(「點擊返回通話」)回到通話。
- 在圈子裡,點圈子聊天頁面的電話圖標加入通話。成員會看到誰在通話和「加入」按鈕,隨時可以加入和「離開」。
- 每 10 分鐘整點(:00、:10、:20…)通話會停頓約 1 秒,然後自動繼續。Android 上通話時請把 App 留在前台。
變聲
變聲默認開啟:對方聽到和錄到的不是你的真實嗓音,而且每通電話都不一樣。通話中點「變聲已開」就關掉,按鈕變成「變聲已關」,再點一次重新打開。「設置」→「通話」→「通話變聲」是同一個開關,你的選擇在之後的通話裡也保留。
圈子
- 建立:菜單 →「新建圈子」,填「圈子名稱」,在聯繫人列表裡勾選要邀請的人(還沒勾選時按鈕顯示「選擇成員」),再點「建立(N 人)」;N 包括你自己。只能邀請你的聯繫人。
- 邀請:在圈子聊天頁面點頂部的圈子名稱,打開「圈子資料」,在「添加成員」下點一個聯繫人。
- 不是你聯繫人的成員會註明「不在你的聯繫人裡」。點他可以核對安全碼,或「加為聯繫人」。
- 退出:「圈子資料」→「退出圈子」→「退出」。退出的人不能再被加回來。圈子沒有管理員,沒有人能把別人踢出去。
- 和一對一聊天一樣,成員只有在線時才收得到消息。
鎖定與安全
- 「鎖定」(在菜單裡):App 先保存身份文件,再結束並重新啟動到輸入口令的頁面。本次的聊天記錄隨之消失,進行中的通話會掛斷。離開電腦時請鎖定。關閉窗口的效果一樣,只是不重新啟動。
- 解鎖狀態下,「導出身份」「添加安全密鑰」和「更改口令」都要再輸入一次口令。輸錯 3 次,App 會自動鎖定。
- 更改口令:「設置」→「保護與解鎖」→「口令」。輸入「當前口令」,再輸入兩次新口令,點「更改口令」。本次沒有用過的備用密鑰會被移除,需要時重新添加。
- 安全密鑰:見第一次使用。
- 在 Windows 和 Android 上,截屏、錄屏和共享屏幕都拍不到零憶的窗口,這一點沒有開關。Android 上其他應用錄不到你的通話。
- 「正在輸入」提示默認關閉。要讓對方看到你正在輸入:「設置」→「聊天」→「讓對方看到我正在輸入」。服務器讀不到內容,但看得出你什麼時候在寫消息。
- 從消息裡複製的文字,鎖定時會從剪貼板清掉,但 Windows 的剪貼板歷史和手機輸入法自己留的副本清不掉。Windows 上請開啟 BitLocker 或「設備加密」。
換設備
身份只在一台設備上。換設備時:
- 在舊設備上:「設置」→「導出身份(換設備時使用)」,輸入口令,保存 .zsvault 文件。它用你的口令加密,包含身份、聯繫人和圈子。
- 把文件帶到新設備:U 盤、郵件、網盤都可以,文件本身是加密的。
- 在新設備上安裝零憶,在首頁點「已有身份?從其他設備導入」,選文件,輸入同一個口令,點「導入」。
- 然後在舊設備上用「緊急銷毀」銷毀身份(不要用「刪除賬戶」,那會刪掉你的用戶名)。同一個身份同一時間只在一台設備上用。
重裝操作系統、清除 TPM、卸載 Android 應用、恢復手機出廠設置之前,一定要先導出。這些都會讓設備上的身份文件再也打不開,沒有導出過就找不回。
新版本
- 從 v21 起,零憶在解鎖幾分鐘後、之後大約每天一次,查看有沒有新版本,通話時不查。它只從本網站取一個小文件,不帶你的用戶名、許可證或設備信息。
- 有新版本時,聊天列表上方出現「零憶 版本 已發佈」。點「下載」用瀏覽器打開下載區;點右邊的 ×(「這個版本不再提示」),這個版本就不再提示,下一個版本還會提示。「設置」→「關於」顯示你現在的版本。
- 到 zeromem.site/#download 下載。Windows 上關閉零憶,解壓新版,運行裡面的 zeromem.exe;Android 上直接覆蓋安裝新的 APK。身份保留。
刪除賬戶與緊急銷毀
- 刪除賬戶:「設置」→「危險操作」→「刪除賬戶」。服務器先刪除你的用戶名、你在許可證上的席位,以及還在等你領取的好友請求,然後本機的身份、聯繫人和圈子會被銷毀。需要連網,無法恢復;連不上服務器時什麼都不會刪除。沒有 App 時,發郵件到 hello@zeromem.site,寫上你的用戶名。
- 緊急銷毀:「設置」→「危險操作」→「緊急銷毀」→「銷毀」。不連網,立刻抹掉本機的身份、聯繫人和圈子。用戶名會留在服務器上,直到管理員或我們刪除它。在輸入口令的頁面點「銷毀此身份」,不用解鎖就能做同樣的事。
機構管理
機構購買一定數量的席位,一個席位就是一張許可證,給一位成員用。機構的管理員在 zeromem.site/org 管理:
- 用我們給你的「管理密鑰」登錄。頁面不保存登錄:刷新或關閉頁面,或十分鐘沒有操作,就要重新登錄。
- 「簽發許可證」:填「數量」(不超過空餘的席位),點「簽發」。每個許可證密鑰只顯示一次,請交給對應的成員,成員第一次使用時填進「許可證密鑰」。
- 成員離開:「吊銷」他的許可證,並勾選「同時刪除這張許可證下的用戶名」。席位立刻空出來。
- 成員手機丟了:吊銷,再給他簽發一張新的。他導出過身份文件的話,在新手機上導入,再到「設置」→「服務器」→「許可證密鑰」填入新密鑰,點「保存並重新連接」(見以後更改用戶名或許可證密鑰),用戶名會跟著過去。他沒有導出過的話,要用新密鑰建立新身份:吊銷時同時刪除用戶名,他才能重新用這個名字。成員的 App 提示請聯繫管理員重置席位時,用「解除綁定(重置席位)」。
- 「刪除 @用戶名」在成員本人要求時刪除用戶名。
管理員看得到許可證、席位和用戶名,看不到消息、聯繫人、圈子或通話。
常見問題
| 你看到 | 怎麼辦 |
|---|---|
| 「正在連接…」一直不消失,或「連不上許可證服務,請檢查服務器設置」 | 檢查網絡,並確認設備時間準確。服務器地址已經填好,不要改。 |
| 「設備時間與服務器不一致,請打開自動設置時間。」 | 在系統設置裡打開自動設置時間。時間對上後,App 在一分鐘左右自動連上。 |
| 「這個版本已不能連接,請更新應用。」 | 安裝新版本(見新版本)。身份不受影響。 |
| 聯繫人顯示「離線」 | 對方要打開並解鎖零憶,而且你們要互相添加過。對方明明在用卻一直顯示離線時,打開「聯繫人資料」→「重新連接」,對方可能也要按一次。 |
| 好友請求一直沒送到 | 請求幾分鐘內送出,對方不在線時最多等 7 天。「好友請求暫時送不到對方。」說明對方還在用舊版或沒有用戶名:請對方更新並設置用戶名,或者雙方互相用識別碼添加。 |
| 「這張許可證已綁定另一個身份」 | 請管理員或我們重置席位。 |
| 「許可證無效、已過期或已被吊銷」 | 第一次使用時,核對輸入的密鑰。之後才出現的,可能是許可證換了:向管理員或我們要新密鑰,按以後更改用戶名或許可證密鑰填進去。 |
| 忘了口令 | 找不回,我們也無法恢復你的身份:服務器上沒有任何能打開它的東西,導出的文件也要同一個口令才能打開。在輸入口令的頁面點「銷毀此身份」,建立新身份,重新添加聯繫人。建立新身份需要許可證密鑰:手上還有原來的密鑰,就先請管理員或我們重置你的席位;已經沒有了,就請管理員或我們吊銷舊許可證、同時刪除它下面的用戶名,再簽發一張新的,這樣你還能用回原來的用戶名。 |
其他問題:hello@zeromem.site。