Encodify — ペルシャ語単語へ変換して可読性を保つメッセージ難読化ツール
概要
Encodifyは「意味のあるペルシャ語の単語」に見える文字列へテキストやリンク、設定を変換(難読化)し、元に戻せるWebベースのツールです。送信データを単純な数値列やBase64ではなく、人が読めるが意味が取りにくい形に変えることで、監視やメッセージ制限(例:SMSなど)下での送信を想定しています。オプションの鍵(キー)を使って変換の多様性と難読化のレベルを高められる点が特徴で、リポジトリは軽量なクライアント実装(index.html と script.js、資産フォルダ)で構成されています。
リポジトリの統計情報
- スター数: 21
- フォーク数: 3
- ウォッチャー数: 21
- コミット数: 2
- ファイル数: 5
- メインの言語: JavaScript
主な特徴
- ペルシャ語の「意味のある」単語列へエンコード(可読だが内容は隠蔽)
- 任意のキーを使ったオプションの難読化(キーにより変換が変化)
- ブラウザのみで完結するクライアントサイド処理(サーバ不要)
- テキスト/リンク/設定など汎用データに対応(復元可能)
技術的なポイント
Encodifyは簡潔なファイル構成(index.html + script.js + assets)から、主にクライアントサイドで動作する軽量なWebアプリであることが分かります。実装の核は「語彙リストを用いた可逆変換」で、入力データをバイトや文字列単位で語彙インデックスにマップし、対応するペルシャ語単語列へ変換する方式が採られていると推測されます。任意キーは変換表の順序を初期化またはシャッフルするためのシードとして用いられることが多く、これにより同じ入力でもキーが異なれば出力が異なる実用性が得られます。キーを用いる実装例としては、疑似乱数生成器(PRNG)にキーをシードして語リストの順序をFisher–Yatesでシャッフルする手法や、インデックスに対するXOR/加算等の簡易な可逆演算を行う手法が考えられます。
セキュリティ的には「可読だけど意味が取れない」ことを狙ったオブフスケーション(難読化)ツールであり、暗号的に強い保護を提供することが主目的ではありません。語リストとアルゴリズムが公開されている場合、十分なキー長がなければ総当たりや辞書アタックで復元されるリスクがあります。逆に、クライアント側で完結する実装はサーバにデータを送らないためプライバシー面の利点があり、署名や真の暗号化と併用すれば実用性を高められます。また、可読語を使うことでフィルタ回避や目立たない転送が可能になる一方、言語的な偏り(特定言語の単語列が不自然に多用される)や送信先の文字コードサポート、SMSやプラットフォーム上の文字長制限など運用面の配慮が必要です。
実装を確認する際は、語彙ファイルの管理(assets内)やキー生成・保管の方法、エンコード・デコード時の境界処理(語間の区切り、パディング、エスケープ)といった点をチェックすると、データの信頼性や誤復元の可能性を評価できます。
プロジェクトの構成
主要なファイルとディレクトリ:
- LICENSE: file
- README.md: file
- assets: dir
- index.html: file
- script.js: file
まとめ
クライアントサイドで動く可読性重視の難読化ツール。暗号ではなく実用的なオブフスケーション用途に向く。
リポジトリ情報:
- 名前: encodify
- 説明: یک ابزار تحت وب مناسب ارسال امنتر در شرایط شنود یا محدودیت پیامکی، که متن، لینک و کانفیگها را با کلید اختیاری به کلمات فارسی خوانا تبدیل نموده و امکان بازگردانی مجدد آنرا فراهم میکند.
- スター数: 21
- 言語: JavaScript
- URL: https://github.com/ircfspace/encodify
- オーナー: ircfspace
- アバター: https://avatars.githubusercontent.com/u/128790947?v=4
READMEの抜粋:
Encodify | مخدوشگر
یک ابزار تحت وب مناسب ارسال امنتر در شرایط شنود یا محدودیت پیامکی، که متن، لینک و کانفیگها را با کلید اختیاری به کلمات فارسی خوانا تبدیل نموده و امکان بازگردانی مجدد آنرا فراهم میکند。
این ابزار برای مواقعی طراحی شده که:
- نمیخواهید داده بهصورت عدد یا Base64 دیده شود
- میخواهید خروجی قابل خواندن、ولی غیرقابل فهم باشد
- بخواهید با یک کلید اختیاری سطح امنیت را بالاتر ببرید
✨ ویژگیها
- 🔐 رمزنگاری متن به کلمات فارسی با معنی
- 🔓 رمز…