By George Curta · Last updated 2026-04-07
インフラストラクチャのアップグレード
最大467倍高速化2026年3月、共有VPSから専用サーバーへの移行を実施しました。RAM 16倍増、5つの並列アナライザーワーカー、48の言語モデルすべてがプリロード済み。コールドスタートを排除。すべての言語がミリ秒で応答します。
同時実行パフォーマンス
新サーバーはすべてのサービス間で数百の同時リクエストをゼロの障害で処理します。
| サービス | 同時実行 | 成功 | 平均 | RPS |
|---|---|---|---|---|
| Analyzer (spaCy) | 500 | 100% | 331 ms | 634 |
| Analyzer (12-lang mix) | 120 | 100% | 114 ms | 515 |
| Anonymizer | 1,000 | 100% | 8 ms | 1,501 |
| Structured Data | 100 | 100% | 331 ms | 144 |
| Frontend (Next.js) | 200 | 100% | 979 ms | 104 |
| Mixed Workload | 110 | 100% | 56 ms | 536 |
完全パイプライン速度
新サーバーでのエンドツーエンド分析+匿名化レイテンシー。すべての言語モデルがウォーム状態で測定。
| 言語 | エンジン | パイプライン平均 | エンティティ |
|---|---|---|---|
| English | spaCy | 10.2 ms | 9 |
| German | spaCy | 13.4 ms | 9 |
| French | spaCy | 10.5 ms | 10 |
| Spanish | spaCy | 7.8 ms | 9 |
| Japanese | spaCy | 9.9 ms | 6 |
| Chinese | spaCy | 13.6 ms | 5 |
| Arabic | Transformer | 12.7 ms | 7 |
| Hebrew | Stanza | 117.3 ms | 6 |
旧サーバーの時間はGUIテストパイプライン全体(Playwright + API)を含みます。新サーバーの時間はすべてのモデルがウォーム状態のAPIのみベンチマークです。改善は実際のインフラストラクチャゲインを反映します。コールドスタートの排除、5倍の並列化、NVMeストレージ。
13 テスト マイルストーン
各マイルストーンはプラットフォームの個別の機能領域をカバーしています (認証からクロスブラウザー互換性まで)。
Authentication & Session
22/22 テスト
ログイン、セッション永続性、プロフィール、ヘルス チェック、認証ガード、ログアウト/再ログイン
PII Detection (Analyzer)
62/62 テスト
GUI 経由の 48 言語分析、エンティティ フィルター、スコア しきい値、エッジ ケース、キーボード ショートカット
Anonymizer (5 Operators)
40/40 テスト
Replace、Redact、Hash、Mask、Encrypt 演算子 (API および GUI 経由)、クイック アクション、多言語対応
Decrypt (Roundtrip)
22/22 テスト
AES-256/128/192 の暗号化後復号化ラウンド、多言語対応、キー検証、大きなテキスト
Batch & File Upload
20/20 テスト
バッチ テキスト処理、ファイル アップロード UI、タブ切り替え、処理ステータス
Entity Management
28/28 テスト
3 つのタブでのエンティティ CRUD、AI Creator、検証ルール、クリーンアップ検証
Preset Management
28/28 テスト
3 つのタブでのプリセット CRUD、アプリケーション フロー、検証ルール、クリーンアップ検証
Settings (10 Tabs)
42/42 テスト
すべての 10 つの設定タブ: アカウント、請求、トークン、セキュリティ、履歴、言語、暗号化キー、サービス、開発者
API Security
35/35 テスト
コア エンドポイント、セキュリティ ヘッダー、CORS ポリシー、入力検証、認証セキュリティ、レート制限
Token Usage Monitoring
24/24 テスト
テキスト サイズ、演算子、言語、エンティティ フィルター、復号化、バッチ、CSV エクスポート別のトークン消費
Lighthouse & Quality
20/20 テスト
8 ページでの Lighthouse スコア、ビューポート応答性、アクセシビリティ、SEO、コンソール エラー、リンク切れ
48 Languages + RTL
56/56 テスト
48 言語全体での分析、4 つの RTL レイアウト チェック、言語切り替え、セレクター検証
Cross-Browser
20/20 テスト
Chromium、Firefox、WebKit、Mobile Chrome での 5 ページ — コンソール エラーなし
48 言語カバレッジ
サポートされているすべての言語は実際の PII サンプルでテストされます。3 つの NLP エンジン タイプが言語ごとに最適な精度を確保します。
| 言語 | コード | エンジン | エンティティ | 旧サーバー | 新サーバー | スピードアップ | ステータス |
|---|---|---|---|---|---|---|---|
| English | en | spacy | 113 | 270 ミリ秒 | 8 ミリ秒 | 34× | |
| German | de | spacy | 148 | 313 ミリ秒 | 7 ミリ秒 | 45× | |
| Spanish | es | spacy | 104 | 1,841 ミリ秒 | 6 ミリ秒 | 307× | |
| French | fr | spacy | 133 | 2,327 ミリ秒 | 8 ミリ秒 | 291× | |
| Italian | it | spacy | 97 | 1,787 ミリ秒 | 7 ミリ秒 | 255× | |
| Portuguese | pt | spacy | 61 | 1,764 ミリ秒 | 6 ミリ秒 | 294× | |
| Dutch | nl | spacy | 122 | 2,486 ミリ秒 | 6 ミリ秒 | 414× | |
| Polish | pl | spacy | 70 | 1,726 ミリ秒 | 8 ミリ秒 | 216× | |
| Russian | ru | spacy | 41 | 2,226 ミリ秒 | 6 ミリ秒 | 371× | |
| Japanese | ja | spacy | 23 | 1,436 ミリ秒 | 6 ミリ秒 | 239× | |
| Chinese | zh | spacy | 24 | 2,554 ミリ秒 | 7 ミリ秒 | 365× | |
| Korean | ko | spacy | 16 | 1,305 ミリ秒 | 6 ミリ秒 | 218× | |
| Arabic | ar | transformer | 20 | 554 ミリ秒 | 8 ミリ秒 | 69× | |
| Hindi | hi | transformer | 22 | 486 ミリ秒 | 7 ミリ秒 | 69× | |
| Turkish | tr | spacy | 112 | 504 ミリ秒 | 6 ミリ秒 | 84× | |
| Romanian | ro | spacy | 122 | 1,730 ミリ秒 | 6 ミリ秒 | 288× | |
| Greek | el | spacy | 29 | 1,822 ミリ秒 | 7 ミリ秒 | 260× | |
| Croatian | hr | spacy | 67 | 989 ミリ秒 | 7 ミリ秒 | 141× | |
| Slovenian | sl | spacy | 64 | 1,264 ミリ秒 | 7 ミリ秒 | 181× | |
| Macedonian | mk | spacy | 24 | 1,259 ミリ秒 | 7 ミリ秒 | 180× | |
| Swedish | sv | spacy | 140 | 1,002 ミリ秒 | 6 ミリ秒 | 167× | |
| Danish | da | spacy | 107 | 1,910 ミリ秒 | 7 ミリ秒 | 273× | |
| Norwegian | nb | spacy | 109 | 1,606 ミリ秒 | 7 ミリ秒 | 229× | |
| Finnish | fi | spacy | 118 | 1,229 ミリ秒 | 7 ミリ秒 | 176× | |
| Icelandic | is | transformer | 73 | 559 ミリ秒 | 8 ミリ秒 | 70× | |
| Ukrainian | uk | spacy | 25 | 1,434 ミリ秒 | 9 ミリ秒 | 159× | |
| Lithuanian | lt | spacy | 86 | 1,601 ミリ秒 | 7 ミリ秒 | 229× | |
| Bulgarian | bg | stanza | 24 | 8,735 ミリ秒 | 98 ミリ秒 | 89× | |
| Serbian | sr | transformer | 24 | 519 ミリ秒 | 8 ミリ秒 | 65× | |
| Hungarian | hu | stanza | 82 | 8,141 ミリ秒 | 39 ミリ秒 | 209× | |
| Czech | cs | transformer | 81 | 562 ミリ秒 | 8 ミリ秒 | 70× | |
| Slovak | sk | transformer | 70 | 577 ミリ秒 | 8 ミリ秒 | 72× | |
| Latvian | lv | transformer | 83 | 526 ミリ秒 | 8 ミリ秒 | 66× | |
| Estonian | et | transformer | 79 | 531 ミリ秒 | 8 ミリ秒 | 66× | |
| Hebrew | he | stanza | 17 | 8,850 ミリ秒 | 101 ミリ秒 | 88× | |
| Persian | fa | transformer | 12 | 439 ミリ秒 | 7 ミリ秒 | 63× | |
| Vietnamese | vi | stanza | 74 | 11,282 ミリ秒 | 99 ミリ秒 | 114× | |
| Indonesian | id | transformer | 79 | 524 ミリ秒 | 7 ミリ秒 | 75× | |
| Thai | th | transformer | 20 | 521 ミリ秒 | 5 ミリ秒 | 104× | |
| Malay | ms | transformer | 87 | 510 ミリ秒 | 7 ミリ秒 | 73× | |
| Filipino | tl | transformer | 75 | 501 ミリ秒 | 7 ミリ秒 | 72× | |
| Bengali | bn | transformer | 18 | 455 ミリ秒 | 7 ミリ秒 | 65× | |
| Urdu | ur | transformer | 12 | 445 ミリ秒 | 7 ミリ秒 | 64× | |
| Afrikaans | af | stanza | 119 | 7,867 ミリ秒 | 55 ミリ秒 | 143× | |
| Swahili | sw | transformer | 68 | 526 ミリ秒 | 7 ミリ秒 | 75× | |
| Armenian | hy | stanza | 69 | 19,643 ミリ秒 | 85 ミリ秒 | 231× | |
| Catalan | ca | spacy | 100 | 3,267 ミリ秒 | 7 ミリ秒 | 467× | |
| Basque | eu | stanza | 82 | 783 ミリ秒 | 40 ミリ秒 | 20× |
クロスブラウザー互換性
5 つの重要なページが 4 つのブラウザー エンジンでテストされています (コンソール エラーなし、水平スクロールなし)。
Chromium
5 5 ページ中
すべて成功Firefox
5 5 ページ中
すべて成功WebKit
5 5 ページ中
すべて成功Mobile Chrome
5 5 ページ中
すべて成功セキュリティ テスト
35 テストAPI エンドポイント、ヘッダー、CORS、入力検証、認証、レート制限をカバーする 35 個の専用セキュリティ テスト。
コア エンドポイント
8 testsAPI エンドポイント アクセシビリティと応答コードを検証する 8 つのテスト
セキュリティ ヘッダー
6 testsCSP、X-Frame-Options、HSTS などの 6 つのテスト
CORS ポリシー
5 testsクロスオリジン リクエスト処理の 5 つのテスト
入力検証
6 testsXSS、SQL インジェクション、不正な入力の 6 つのテスト
認証セキュリティ
5 tests認証バイパスとセッション セキュリティの 5 つのテスト
レート制限
5 testsAPI レート制限適用と Retry-After ヘッダーの 5 つのテスト
トークン使用分析
使用されたトークンの合計: 761操作、テキスト サイズ、言語、演算子全体のコスト効率を測定する 22 個のトークン消費テスト。
| 操作 | 文字 | 言語 | エンティティ | 演算子 | トークン | 応答時間 |
|---|---|---|---|---|---|---|
| analyze | 50 | en | 44 | N/A | 4 | 220 ミリ秒 |
| analyze | 200 | en | 140 | N/A | 9 | 276 ミリ秒 |
| analyze | 500 | en | 387 | N/A | 21 | 367 ミリ秒 |
| analyze | 1,000 | en | 745 | N/A | 39 | 542 ミリ秒 |
| analyze | 5,000 | en | 3776 | N/A | 193 | 4,398 ミリ秒 |
| analyze | 10,000 | en | 7566 | N/A | 385 | 14,494 ミリ秒 |
| anonymize | 160 | en | 113 | replace | 7 | 291 ミリ秒 |
| anonymize | 160 | en | 113 | redact | 7 | 236 ミリ秒 |
| anonymize | 160 | en | 113 | hash | 7 | 243 ミリ秒 |
| anonymize | 160 | en | 113 | mask | 7 | 276 ミリ秒 |
| anonymize | 160 | en | 113 | encrypt | 7 | 242 ミリ秒 |
| analyze | 148 | en | 4 | lang-compare | 2 | 0 ミリ秒 |
| analyze | 145 | de | 3 | lang-compare | 2 | 0 ミリ秒 |
| analyze | 144 | es | 3 | lang-compare | 2 | 0 ミリ秒 |
| analyze | 145 | fr | 4 | lang-compare | 2 | 0 ミリ秒 |
| analyze | 136 | it | 3 | lang-compare | 2 | 0 ミリ秒 |
| analyze | 145 | pt | 3 | lang-compare | 2 | 0 ミリ秒 |
| analyze | 137 | nl | 3 | lang-compare | 2 | 0 ミリ秒 |
| analyze | 137 | pl | 2 | lang-compare | 2 | 0 ミリ秒 |
| analyze | 132 | ru | 3 | lang-compare | 2 | 0 ミリ秒 |
| analyze | 84 | ja | 2 | lang-compare | 2 | 0 ミリ秒 |
| analyze | 70 | zh | 2 | lang-compare | 2 | 0 ミリ秒 |
| analyze | 123 | ar | 4 | lang-compare | 2 | 0 ミリ秒 |
| analyze | 160 | en | 106 | PERSON only | 7 | 258 ミリ秒 |
| analyze | 160 | en | 108 | PERSON+EMAIL+PHONE | 8 | 266 ミリ秒 |
| analyze | 160 | en | 113 | All entities | 8 | 264 ミリ秒 |
| decrypt | 342 | en | 37 | decrypt | 2 | 188 ミリ秒 |
| batch-analyze | 476 | en,de,fr | 394 | N/A | 26 | 5,278 ミリ秒 |
テスト方法論
テスト スイートは GUI レベルの Playwright テストと直接的な API 検証を組み合わせて、包括的なカバレッジを実現します。
GUI テスト
Playwright ブラウザー オートメーションは実際のユーザー ワークフローをテストします (ボタン クリック、フォーム入力、ページ間ナビゲーション、視覚的出力検証)。
API テスト
直接 HTTP リクエストは、エッジ ケース、不正な入力、GUI テストのみでは対応できない境界条件を使用して各エンドポイントを検証します。
セッション キャッシング
認証済みセッションはマイルストーン間でキャッシュおよび再利用され、テスト実行時を短縮しながら現実的なユーザー動作を維持します。
CRUD クリーンアップ
テスト中に作成されたすべてのエンティティ、プリセット、暗号化キーが事後にクリーンアップされ、テストが べき等で反復可能であることを保証します。
About this page
We update this page when our platform or the law changes.
Read our founder note for how we work.
Each change shows up in the timestamp at the top.
Related reading
- Common questions
- Glossary
- How tokens work
- Security posture
- Where we comply
- What we detect
- Case studies
- Release notes
We follow these rules
- GDPR (EU 2016/679).
- ISO/IEC 27001:2022.
- NIS2 (EU 2022/2555).
- HIPAA safe harbor under 45 CFR § 164.514(b)(2).
Our promise
We do not sell your data.
We do not train models on your text.
We store your files in Germany.
You can delete your account at any time.
You own your work.
Where we run
Our servers live in Falkenstein, Germany.
We use Hetzner. They hold ISO 27001 certification.
All data stays in the EU.
Backups run every day.
Need help?
Email support@anonym.legal.
We reply within one business day.
How we test
We run a full check suite on every release.
Each surface gets its own sweep script and report.
Human reviewers spot-check the output each week.
We track recall and precision on a labelled set.
Bad runs block the deploy.
What we never do
- We never sell your information to third parties.
- We never train models on what you upload.
- We never keep your work after you delete it.
- We never share keys with any outside firm.
- We never run ads inside the product.
Plans in plain words
We sell credits, not seats.
One credit covers one short job.
Long jobs use a few credits each.
You can top up at any time.
Unused credits roll over each month.
Read the plans page for current rates.
Who built this
A small team of engineers and lawyers built this.
We ship from Europe and work in the open.
Our founder note spells out why we started.
Where to start
- Open the web app and try a sample file.
- Learn how credits get counted.
- See current plans and limits.
- Meet the team behind the product.
How the parts fit
A browser add-on cleans text inside Chrome.
A Word plug-in handles drafts in Office.
A small desktop tool works on whole folders.
An agent protocol link feeds large models safely.
All four share one core engine and one rule set.
Words from our team
We started this work after a lunch about cookies.
One friend kept getting odd ads on her phone.
We asked why a court file leaked through a draft.
We sketched the first build on a napkin that week.
By month three we had a tiny demo for a friend.
She used it on her first case the next day.
Common questions we hear
Can the tool read scanned PDFs? Yes, with OCR.
Does it work on long files? Yes, in small chunks.
Can I roll my own rule set? Yes, save it as a preset.
Does it run offline? The desktop build runs offline.
Do you keep my files? No, the cloud build wipes after each run.
Will it learn from my work? No, we never train on inputs.
A short tour of the workflow
Upload a file or paste a snippet of prose.
Pick the entities you want gone from the draft.
Choose a method: replace, mask, hash, encrypt, or redact.
Press run and watch the side panel show each hit.
Skim the result and tweak any rule that misfired.
Save the cleaned file or send it to a teammate.