Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
op4 — टर्मिनल-आधारित एन्क्रिप्टेड मैसेंजर जिसमें पोस्ट-क्वांटम क्रिप्टोग्राफी, डबल रैचेट प्रोटोकॉल, और टोर गुमनामी है। इसमें ड्यूरेस पासफ़्रेज़, अस्वीकार्य प्रमाणीकरण, और seccomp-bpf और mlockall के माध्यम से OS-स्तरीय सख्तीकरण की सुविधाएँ हैं। | Kitploit
उपकरण/GitHubGitHub/opfour/op4
प्रमाणीकरण और प्राधिकरणरक्षात्मक उपकरणएन्क्रिप्शन/डिक्रिप्शन उपकरणक्रिप्टोग्राफीगोपनीयताप्रमाणीकरण
GitHubopfour/op4

op4

टर्मिनल-आधारित एन्क्रिप्टेड मैसेंजर जिसमें पोस्ट-क्वांटम क्रिप्टोग्राफी, डबल रैचेट प्रोटोकॉल, और टोर गुमनामी है। इसमें ड्यूरेस पासफ़्रेज़, अस्वीकार्य प्रमाणीकरण, और seccomp-bpf और mlockall के माध्यम से OS-स्तरीय सख्तीकरण की सुविधाएँ हैं।

रिपॉजिटरी देखें
61 महीना पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें


op4 — सुरक्षित टर्मिनल मैसेंजर

Op4 एक टर्मिनल-आधारित एन्क्रिप्टेड मैसेजिंग एप्लीकेशन है जो Rust में लिखा गया है। यह पोस्ट-क्वांटम क्रिप्टोग्राफी के साथ एंड-टू-एंड एन्क्रिप्टेड निजी मैसेजिंग प्रदान करता है, जो पूरी तरह से Tor नेटवर्क के माध्यम से रूट किया जाता है, ताकि आपके संदेशों की सामग्री और आपका IP पता किसी को भी उजागर न हो — यहां तक कि उस व्यक्ति को भी नहीं जिससे आप बात कर रहे हैं।






विषय-सूची

  1. op4 क्या करता है
  2. स्थापना
  3. किसी अन्य उपयोगकर्ता से जुड़ना
  4. सुरक्षा मॉडल
  5. आर्किटेक्चर अवलोकन
  6. प्रोजेक्ट लेआउट
  7. वर्तमान स्थिति

op4 क्या करता है

op4 दो लोगों को निजी संदेशों का आदान-प्रदान करने देता है बिना किसी पक्ष के अपना IP पता या वास्तविक पहचान प्रकट किए। हर संदेश:

  • एंड-टू-एंड एन्क्रिप्टेड होता है — यह डबल रैचेट प्रोटोकॉल का उपयोग करता है, वही मूल डिज़ाइन जो Signal द्वारा उपयोग किया जाता है।
  • पोस्ट-क्वांटम हार्डन्ड है — कुंजी विनिमय परत शास्त्रीय X25519 को ML-KEM-768 (NIST-मानकीकृत लैटिस-आधारित KEM) के साथ जोड़ती है, ताकि भविष्य का क्वांटम कंप्यूटर पूर्व में रिकॉर्ड किए गए ट्रैफ़िक को पूर्वव्यापी रूप से डिक्रिप्ट न कर सके।
  • अनामित है — सारा ट्रैफ़िक Tor हिडन सर्विसेज (.onion पतों) के ऊपर यात्रा करता है। आपका IP पता आपके संपर्क या किसी भी नेटवर्क पर्यवेक्षक के सामने कभी नहीं आता।
  • स्थानीय रूप से संग्रहीत है — कोई सर्वर नहीं है। आपके संदेश और संपर्क आपकी अपनी मशीन पर एक एन्क्रिप्टेड वॉल्ट फ़ाइल में रहते हैं, और कहीं और नहीं।

op4 पूरी तरह से टर्मिनल में चलता है। इसमें कोई GUI, कोई ब्राउज़र घटक, और कोई क्लाउड खाता नहीं है। यह केवल एक बाहरी प्रक्रिया से संपर्क करता है: आपकी अपनी मशीन पर चलने वाला Tor डेमॉन।


स्थापना

सभी डाउनलोड विकल्प — AppImage, स्रोत टारबॉल, क्लोन और बिल्ड, और स्वचालित इंस्टॉलर — डाउनलोड और स्थापना गाइड में प्रलेखित हैं। नवीनतम रिलीज़ रिलीज़ पृष्ठ पर उपलब्ध है।

Debian / Ubuntu (स्वचालित)

Debian और Ubuntu पर, install/setup.sh एक कमांड में सब कुछ संभालता है: Rust टूलचेन, बिल्ड निर्भरताएँ, Tor, कंट्रोल पोर्ट कॉन्फ़िगरेशन, बाइनरी संकलन, सिस्टम उपयोगकर्ता, डेटा निर्देशिका, और AppArmor प्रोफ़ाइल।

root@kitploit:~
git clone https://github.com/Opfour/op4.git
cd op4
sudo bash install/setup.sh

स्क्रिप्ट समाप्त होने के बाद, op4 चलाने से पहले आपको लॉग आउट करके फिर से लॉग इन करना होगा। इंस्टॉलर आपके उपयोगकर्ता को debian-tor समूह में जोड़ता है ताकि वह Tor कुकी फ़ाइल पढ़ सके। Linux पहले से खुले सत्रों पर समूह परिवर्तन लागू नहीं करता — एक ताज़ा लॉगिन आवश्यक है।

इस चरण को छोड़ने पर op4 आरंभ में विफल हो जाएगा: /run/tor/control.authcookie पढ़ने में अनुमति अस्वीकृत

फिर बाइनरी पर भरोसा करने से पहले स्क्रिप्ट द्वारा मुद्रित स्रोत हैश की आपके संस्करण के प्रकाशित रिलीज़ हैश से तुलना करें।

रिलीज़ हैश सत्यापन

जब op4 शुरू होता है, यह सभी Rust स्रोत फ़ाइलों, Cargo.toml, Cargo.lock, और build.rs को कवर करने वाला एक स्रोत हैश प्रिंट करता है। इसे नीचे दिए गए मान से तुलना करें आपके द्वारा स्थापित संस्करण के लिए।

आप पूर्ण ऐप लॉन्च किए बिना भी इसे जांच सकते हैं:

root@kitploit:~
op4 --print-hash

यदि हैश मेल नहीं खाता है, तो बाइनरी का उपयोग न करें — यह या तो एक अलग कमिट से बनाया गया था या छेड़छाड़ की गई है।

Fedora / Arch / अन्य डिस्ट्रोस (मैन्युअल)

पहले निर्भरताएँ स्थापित करें, फिर स्क्रिप्ट चलाएँ:

Rust टूलचेन (rust-toolchain.toml के माध्यम से 1.89.0 पर पिन किया गया):

root@kitploit:~
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source "$HOME/.cargo/env"

Tor और बिल्ड निर्भरताएँ:

root@kitploit:~
# Fedora
sudo dnf install tor gcc pkg-config openssl-devel

# Arch
sudo pacman -S tor base-devel pkg-config openssl

Tor कंट्रोल पोर्ट कॉन्फ़िगर करें — /etc/tor/torrc में जोड़ें:

root@kitploit:~
ControlPort 9051
CookieAuthentication 1
root@kitploit:~
sudo systemctl restart tor

अपने उपयोगकर्ता को Tor समूह में जोड़ें:

root@kitploit:~
sudo usermod -aG tor $USER        # Fedora / Arch

इस चरण के बाद आपको लॉग आउट करके फिर से लॉग इन करना होगा। समूह सदस्यता परिवर्तन सक्रिय सत्रों पर लागू नहीं होते। जब तक आप ऐसा नहीं करते, op4 विफल हो जाएगा /run/tor/control.authcookie पढ़ने में अनुमति अस्वीकृत के साथ।

पूर्ण लॉगआउट के बिना परिवर्तन लागू करने के लिए, चलाएँ:

root@kitploit:~
newgrp tor

बिल्ड और स्थापित करें:

root@kitploit:~
git clone https://github.com/Opfour/op4.git
cd op4
cargo build --release
sudo bash install/setup.sh

चलाएँ

root@kitploit:~
op4
# या, सिस्टम स्थापना के बिना:
./target/release/op4

पहले लॉन्च पर op4 आपको एक सामान्य पासफ़्रेज़ और एक ड्यूरेस पासफ़्रेज़ सेट करने में मार्गदर्शन करेगा, फिर आपकी पहचान कुंजियाँ उत्पन्न करेगा। आपका वॉल्ट ~/.local/share/op4/vault.op4 पर संग्रहीत है।

समर्थित प्लेटफ़ॉर्म

न्यूनतम कर्नेल: 4.15 (5.4+ अनुशंसित)। आर्किटेक्चर: x86-64 (aarch64 काम करना चाहिए लेकिन परीक्षण नहीं किया गया)।


किसी अन्य उपयोगकर्ता से जुड़ना

दो लोगों को प्रत्येक के पास op4 स्थापित, Tor चल रहा और उनका वॉल्ट अनलॉक होना चाहिए। आदान-प्रदान असममित है: एक व्यक्ति पहले अपना संपर्क कोड भेजता है, दूसरा उसे जोड़ता है, फिर अपना पहला संदेश भेजता है, जो एक लंबित अनुरोध के रूप में आता है जिसे पहला व्यक्ति स्वीकार करता है।

चरण 1 — पहला लॉन्च

पहली बार चलाने पर op4 एक सामान्य पासफ़्रेज़ और एक ड्यूरेस पासफ़्रेज़ के लिए संकेत देता है, फिर आपकी पहचान कुंजियाँ उत्पन्न करता है। ऐसा केवल एक बार होता है। आपका वॉल्ट ~/.local/share/op4/vault.op4 पर संग्रहीत है।

root@kitploit:~
$ op4

चरण 2 — अपना संपर्क कोड प्राप्त करें

आपके संपर्क कोड में आपकी पूर्ण सार्वजनिक कुंजी बंडल और आपका .onion पता होता है। दूसरे व्यक्ति को आप तक पहुँचने के लिए इसकी आवश्यकता है।

  1. Contacts टैब पर जाएँ (2 या → दबाएँ)
  2. अपना संपर्क कोड निर्यात करने के लिए e दबाएँ
  3. आपका कोड स्क्रीन पर दिखाई देता है — यह एक लंबा Base58 स्ट्रिंग है जो op4: से शुरू होता है
  4. इसे कॉपी करें और दूसरे व्यक्ति को आउट ऑफ बैंड भेजें (Signal, ईमेल, व्यक्तिगत रूप से, आदि)

आपका संपर्क कोड गुप्त नहीं है। इसे सार्वजनिक रूप से साझा करना सुरक्षित है। इसमें केवल आपकी सार्वजनिक कुंजियाँ और ओनियन पता होता है — कोई निजी सामग्री नहीं।

चरण 3 — दूसरे व्यक्ति को संपर्क के रूप में जोड़ें

एक बार आपके पास उनका संपर्क कोड हो:

  1. Contacts टैब में, a दबाएँ एक संपर्क जोड़ने के लिए
  2. उनका op4: संपर्क कोड पेस्ट करें और Enter दबाएँ
  3. उन्हें एक नाम दें और Enter दबाएँ

चरण 4 — अपना पहला संदेश भेजें

  1. अपने संपर्क सूची से संपर्क चुनें (↑/↓, फिर Enter का उपयोग करें)
  2. Messages टैब पर स्विच करें (3 या → दबाएँ)
  3. अपना संदेश टाइप करें और Enter दबाएँ

यह पहला संदेश एन्क्रिप्टेड हैंडशेक शुरू करता है और Tor के ऊपर उनके .onion पते पर वितरित किया जाता है। वे इसे एक लंबित संपर्क अनुरोध के रूप में देखेंगे।

चरण 5 — आने वाले अनुरोध को स्वीकार करें

जब कोई आपको पहला संदेश भेजता है, तो Contacts टैब पर एक बैज दिखाई देता है जो दर्शाता है कि कितने अनुरोध प्रतीक्षा कर रहे हैं।

  1. Contacts टैब पर जाएँ (2 दबाएँ)
  2. लंबित अनुरोधों की समीक्षा करने के लिए p दबाएँ
  3. आप प्रेषक का फिंगरप्रिंट और उनका पहला संदेश देखेंगे
  4. इस संपर्क के लिए एक नाम टाइप करें और स्वीकार करने के लिए Enter दबाएँ (अस्वीकार और त्यागने के लिए Esc दबाएँ)

एक बार स्वीकार करने पर, डबल रैचेट प्रारंभ हो जाता है और बातचीत Messages टैब में तुरंत उपलब्ध हो जाती है।

चरण 6 — फिंगरप्रिंट सत्यापित करें (अनुशंसित)

किसी संपर्क पर भरोसा करने से पहले, पुष्टि करें कि उनका फिंगरप्रिंट वही है जो वे अपनी स्क्रीन पर दिखाते हैं। यह प्रारंभिक संपर्क आदान-प्रदान के दौरान मैन-इन-द-मिडिल हमले को रोकता है।

  1. Contacts टैब में, संपर्क चुनें
  2. दाईं ओर फिंगरप्रिंट पैनल एक 16-समूह हेक्स स्ट्रिंग दिखाता है, जैसे A3F2:91BC:…
  3. दूसरे व्यक्ति से कहें कि वे आपकी प्रविष्टि के लिए अपना फिंगरप्रिंट पढ़ें — यह बिल्कुल मेल खाना चाहिए
  4. सत्यापन वॉयस कॉल, व्यक्तिगत रूप से, या किसी अन्य चैनल पर किया जा सकता है जहाँ आप उनकी पहचान की पुष्टि कर सकते हैं

नेविगेशन संदर्भ

कुंजी रोटेशन

यदि आपको लगता है कि आपकी पहचान कुंजियों से समझौता हो सकता है:

  1. Settings टैब पर जाएँ (4 दबाएँ या दाईं ओर नेविगेट करें)
  2. कुंजियाँ घुमाने के लिए r दबाएँ
  3. op4 एक नई कुंजी जोड़ी उत्पन्न करता है, आपकी पुरानी कुंजी के साथ एक रिवोकेशन प्रमाणपत्र पर हस्ताक्षर करता है, और इसे Tor के माध्यम से आपके सभी संपर्कों को प्रसारित करता है
  4. आपका संपर्क कोड बदल जाता है — नया कोड अपने संपर्कों के साथ साझा करें

सुरक्षा मॉडल

क्रिप्टोग्राफिक प्रिमिटिव्स (सभी RustCrypto पारिस्थितिकी तंत्र से)

डबल रैचेट

op4 फॉरवर्ड सीक्रेसी के लिए डबल रैचेट प्रोटोकॉल (Signal प्रोटोकॉल के समान) का उपयोग करता है। इसका अर्थ है:

  • प्रत्येक संदेश एक रैचेट श्रृंखला से व्युत्पन्न एक अद्वितीय कुंजी के साथ एन्क्रिप्ट किया जाता है।
  • एक संदेश कुंजी से समझौता होने पर कोई अन्य संदेश उजागर नहीं होता।
  • यदि आपका उपकरण जब्त कर लिया जाता है, तो पिछले संदेश जो पहले ही हटा दिए गए हैं, उन्हें डिक्रिप्ट नहीं किया जा सकता, भले ही हमलावर आपका वॉल्ट पासफ़्रेज़ जान जाए।

हाइब्रिड पोस्ट-क्वांटम कुंजी विनिमय

KEM चरण X25519 और ML-KEM-768 को इस प्रकार जोड़ता है:

root@kitploit:~
shared_secret = HKDF(X25519_ss || MLKEM_ss)

एक हमलावर को कुंजी विनिमय से समझौता करने के लिए दोनों एल्गोरिदम को तोड़ना होगा। यह एक क्वांटम प्रतिद्वंदी (ML-KEM-768) से बचाता है जबकि शास्त्रीय हमलों के खिलाफ सुरक्षित रहता है यदि ML-KEM-768 में कोई अज्ञात दोष है (X25519 बैकअप)।

अस्वीकार्य प्रमाणीकरण

संदेशों को साझा रैचेट स्थिति से व्युत्पन्न कुंजी का उपयोग करके HMAC-SHA256 के साथ प्रमाणित किया जाता है। चूंकि दोनों पक्षों के पास एक ही HMAC कुंजी होती है, कोई भी पक्ष किसी भी दिए गए MAC का उत्पादन कर सकता है। यह वही अस्वीकार्यता गुण है जो OTR और Signal द्वारा उपयोग किया जाता है: संदेशों को न्यायिक कार्यवाही में क्रिप्टोग्राफिक रूप से किसी विशिष्ट प्रेषक के लिए जिम्मेदार नहीं ठहराया जा सकता।

वॉल्ट और ड्यूरेस पासफ़्रेज़

वॉल्ट फ़ाइल ~/.local/share/op4/vault.op4 पर सभी संपर्क, वार्तालाप और पहचान कुंजियाँ संग्रहीत करती है। यह दो स्वतंत्र Argon2id-व्युत्पन्न कुंजियों से सुरक्षित है:

  • सामान्य पासफ़्रेज़ — आपके वास्तविक संपर्कों और संदेशों को अनलॉक करता है।
  • ड्यूरेस पासफ़्रेज़ — एक दृष्टिगत रूप से समान लेकिन खाली डिकॉय इनबॉक्स अनलॉक करता है। यदि आपको ऐप अनलॉक करने के लिए मजबूर किया जाए तो इसका उपयोग करें। बाहर से दोनों पासफ़्रेज़ अप्रभेद्य हैं।

नेटवर्क गुमनामी

op4 आपके इनबॉक्स के लिए एक Tor v3 हिडन सर्विस बनाता है। आपका .onion पता आपकी पहचान कुंजी से नियतात्मक रूप से (HKDF के माध्यम से) व्युत्पन्न होता है, इसलिए यह एक अलग कुंजी संग्रहीत करने की आवश्यकता के बिना पुनरारंभ पर स्थिर रहता है। बाहर जाने वाले संदेश Tor SOCKS5 प्रॉक्सी के माध्यम से भेजे जाते हैं। आपका वास्तविक IP पता कभी भी op4 से संबंधित किसी नेटवर्क पैकेट में प्रकट नहीं होता।

कवर ट्रैफ़िक (पॉइसन-वितरित डमी संदेश स्वयं को भेजे जाते हैं, औसत अंतराल 30 सेकंड) एक नेटवर्क पर्यवेक्षक को ट्रैफ़िक वॉल्यूम देखकर यह जानने से रोकता है कि आप सक्रिय रूप से किसी को संदेश भेज रहे हैं या नहीं।

OS-स्तरीय हार्डनिंग

  • mlockall — वॉल्ट कुंजियों और प्लेनटेक्स्ट को स्वैप में लिखे जाने से रोकता है।
  • RLIMIT_CORE = 0 — कोर डंप को अक्षम करता है जो मेमोरी उजागर कर सकते हैं।
  • PR_SET_DUMPABLE = 0 — अन्य प्रक्रियाओं को डिबगर संलग्न करने से रोकता है।
  • seccomp-bpf — एक syscall अनुमति सूची स्थापित करता है। सूची में नहीं कोई भी syscall प्रक्रिया को तुरंत मार दिया जाता है।
  • AppArmor प्रोफ़ाइल (apparmor/op4.profile) — फ़ाइलसिस्टम एक्सेस को केवल वॉल्ट निर्देशिका, टर्मिनल डिवाइस और Tor तक सीमित करता है।

आर्किटेक्चर अवलोकन

root@kitploit:~
┌─────────────────────────────────────────────────────────────┐
│                        op4 प्रक्रिया                        │
│                                                             │
│  ┌──────────┐   ┌──────────────────┐   ┌────────────────┐  │
│  │   TUI    │   │  डबल रैचेट      │   │  Tor परिवहन   │  │
│  │ (ratatui)│──▶│  + हाइब्रिड PQ  │──▶│  nym_client.rs │  │
│  │          │   │  क्रिप्टो        │   │                │  │
│  └──────────┘   └──────────────────┘   └───────┬────────┘  │
│                                                │           │
│  ┌──────────────────────────────┐              │           │
│  │  एन्क्रिप्टेड वॉल्ट         │    SOCKS5 / कंट्रोल पोर्ट│
│  │  ~/.local/share/op4/vault.op4│              │           │
│  └──────────────────────────────┘              │           │
└────────────────────────────────────────────────┼───────────┘
                                                 │
                                    ┌────────────▼────────────┐
                                    │      Tor डेमॉन         │
                                    │  127.0.0.1:9050 (SOCKS) │
                                    │  127.0.0.1:9051 (ctrl)  │
                                    └────────────┬────────────┘
                                                 │
                                         Tor नेटवर्क
                                                 │
                                    ┌────────────▼────────────┐
                                    │  साथी का .onion पता   │
                                    │  (उनकी हिडन सर्विस)   │
                                    └─────────────────────────┘

प्रोजेक्ट लेआउट

root@kitploit:~
op4/
├── src/
│   ├── main.rs                  प्रवेश बिंदु, स्टार्टअप अनुक्रम
│   ├── error.rs                 एकीकृत त्रुटि प्रकार
│   ├── crypto/
│   │   ├── keys.rs              हाइब्रिड KEM + हस्ताक्षर कुंजी जोड़े
│   │   ├── primitives.rs        AEAD, HKDF, HMAC, Argon2id
│   │   ├── ratchet.rs           डबल रैचेट कार्यान्वयन
│   │   ├── hmac_auth.rs         अस्वीकार्य प्रमाणीकरण टैग
│   │   └── handshake.rs         प्रारंभिक कुंजी समझौता (X3DH-शैली)
│   ├── network/
│   │   ├── nym_client.rs        Tor हिडन-सर्विस परिवहन
│   │   └── message.rs           वायर संदेश प्रारूप + पैडिंग
│   ├── storage/
│   │   └── vault.rs             एन्क्रिप्टेड वॉल्ट (Argon2id + AEAD)
│   ├── identity/
│   │   ├── profile.rs           संपर्क कोड, संग्रहीत संपर्क
│   │   └── revocation.rs        कुंजी रिवोकेशन रिकॉर्ड
│   ├── hardening/
│   │   ├── memory.rs            mlockall, RLIMIT_CORE, dumpable
│   │   └── seccomp.rs           seccomp-bpf syscall फ़िल्टर
│   └── ui/
│       ├── app.rs               TUI इवेंट लूप और स्टेट मशीन
│       ├── contacts.rs          Contacts टैब रेंडरिंग
│       ├── conversation.rs      Messages टैब रेंडरिंग
│       ├── settings.rs          Settings टैब रेंडरिंग
│       ├── duress.rs            ड्यूरेस इनबॉक्स रेंडरिंग
│       ├── input.rs             इनपुट स्वच्छता (CSI/OSC स्ट्रिप)
│       └── passphrase.rs        सुरक्षित पासफ़्रेज़ संकेत
├── apparmor/
│   └── op4.profile              AppArmor MAC प्रोफ़ाइल
├── install/
│   └── setup.sh                 सिस्टम स्थापना स्क्रिप्ट
├── build.rs                     संकलन समय पर स्रोत हैश एम्बेड करता है
├── deny.toml                    cargo-deny लाइसेंस + सलाह नियम
├── rust-toolchain.toml          Rust 1.89.0 पिन करता है
└── docs/                        यह दस्तावेज़ीकरण

वर्तमान स्थिति

संस्करण: 0.2.0-dev (पूर्व-रिलीज़)

op4 सक्रिय विकास के अधीन है। निम्नलिखित परतें पूर्ण और परीक्षित हैं:

  • वॉल्ट (बनाएँ, अनलॉक करें, सहेजें, ड्यूरेस मोड)
  • सभी क्रिप्टोग्राफ़िक प्रिमिटिव्स (12/12 यूनिट परीक्षण पास)
  • Tor हिडन-सर्विस परिवहन (कनेक्ट करें, भेजें, प्राप्त करें, कवर ट्रैफ़िक)
  • टर्मिनल UI (नेविगेशन, संपर्क प्रबंधन, वार्तालाप दृश्य)
  • OS हार्डनिंग (मेमोरी, seccomp, AppArmor)

सभी परतें अब एंड-टू-एंड जुड़ी हुई हैं:

  • पहचान कुंजी जोड़े (X25519+ML-KEM-768, Ed25519+ML-DSA-65) पहले रन पर उत्पन्न होते हैं और वॉल्ट में एन्क्रिप्टेड संग्रहीत होते हैं।
  • संपर्क कोड निर्यात एक वास्तविक Base58-एन्कोडेड PublicKeyBundle उत्पन्न करता है (आपका पूर्ण सार्वजनिक कुंजी सेट + ओनियन पता)।
  • संदेश भेजने पर किसी संपर्क को पहले संदेश पर पूर्ण X3DH-शैली हैंडशेक होता है, फिर बाद के संदेशों पर डबल रैचेट एन्क्रिप्शन, Tor के ऊपर प्रेषित।
  • आने वाले संदेश TUI इवेंट लूप में Tor परिवहन से पोल किए जाते हैं और वार्तालाप दृश्य में प्रदर्शित होते हैं (सील्ड-सेंडर पैटर्न: रूटिंग लेयर कभी प्रकट नहीं करती कि संदेश किसने भेजा)।

सभी ज्ञात सीमाएँ हल कर ली गई हैं। एप्लिकेशन अब 0.2.0-dev के लिए फीचर-पूर्ण स्थिति में है:

  • HMAC अस्वीकार्य प्रमाणीकरण पूरी तरह से जुड़ा हुआ है। प्रत्येक बाहर जाने वाला डेटा संदेश प्रति-संदेश रैचेट कुंजी से (conversation_id || message_counter || ciphertext) पर गणना किया गया एक HMAC-SHA256 टैग रखता है। आने वाले संदेश स्वीकार किए जाने से पहले सत्यापित किए जाते हैं; पुराने साथियों से शून्य-भरे टैग को पिछड़े संगतता के लिए सहन किया जाता है।

  • संदेश इतिहास पुनरारंभ पर बना रहता है। पूर्ण वार्तालाप लॉग प्रति-वार्तालाप HKDF-व्युत्पन्न कुंजी के साथ एन्क्रिप्ट किया जाता है और वॉल्ट के message_log_ct फ़ील्ड में संग्रहीत होता है। वार्तालाप खोलने पर संदेश वॉल्ट से लोड किए जाते हैं और प्रत्येक भेजने या प्राप्त करने के बाद वापस लिखे जाते हैं।

  • अज्ञात पक्षों से आने वाले संपर्क अनुरोध गिराए जाने के बजाय कतारबद्ध किए जाते हैं। Contacts टैब एक बैज दिखाता है जब अनुरोध प्रतीक्षा कर रहे हों। समीक्षा करने के लिए [p] दबाएँ: आप प्रेषक का फिंगरप्रिंट और उनका पहला संदेश देखते हैं, एक नाम टाइप करते हैं, और स्वीकार करने के लिए Enter दबाते हैं (या अस्वीकार करने के लिए Esc)। स्वीकार करने पर संपर्क जोड़ा जाता है, डबल रैचेट प्रारंभ किया जाता है, और प्रारंभिक संदेश वॉल्ट में सहेजा जाता है।

  • ड्यूरेस वॉल्ट सहेजने पर संरक्षित रहता है। वॉल्ट फ़ाइल प्रारूप (v2) हेडर में सटीक सिफरटेक्स्ट लंबाई संग्रहीत करता है ताकि AEAD डिक्रिप्शन शून्य-पैडेड अनुभागों के बजाय वास्तविक बाइट्स पर काम करे। प्रत्येक save() कॉल पर एन्क्रिप्टेड ड्यूरेस अनुभाग शब्दशः संग्रहीत होता है, जो ड्यूरेस पासफ़्रेज़ को अनिश्चित काल तक मान्य रखता है।

  • समर्पित डबल रैचेट बूटस्ट्रैप कुंजी। पहले रन पर एक अलग X25519 कुंजी जोड़ी (identity_ratchet_secret) उत्पन्न होती है और संपर्क कोड में ratchet_pub के रूप में शामिल होती है। एलिस का रैचेट बॉब के KEM पहचान कुंजी के बजाय उसके के साथ प्रारंभ किया जाता है, जिससे कुंजी भूमिकाएँ अलग हो जाती हैं।

टूल डाउनलोड करें
संस्करणस्रोत हैश
0.3.080820cb41a63575d2c139dadd425d13d1e87e62a9d60200ae7b894ae2e9ad8ed
0.3.148115efb12747fa78b627ddbf7a56c46169f59e777d7d7508941bf89e4fe7521
0.2.0-dev35740577f6c4a4f19c5a08fe85b1f78a10347f2ba9dd7642d126552266bfa5a5
0.1.0e1a94761c7d3fa589ba892b47d5295aa417f95aee126809d51a7e7fb7e78982c
डिस्ट्रोस्थिति
Ubuntu 22.04 / 24.04समर्थित
Debian 12समर्थित
Fedora 39+समर्थित
Arch Linux (वर्तमान)समर्थित
Tails OSसमर्थित (सेटअप गाइड)
macOS / Windows / WSL1समर्थित नहीं
कुंजीक्रिया
1 / ← →टैब स्विच करें (Contacts / Messages / Settings)
↑ ↓चयन स्थानांतरित करें
Enterवार्तालाप खोलें / पुष्टि करें
Escरद्द करें / वापस जाएँ
eअपना संपर्क कोड निर्यात करें (Contacts टैब)
aसंपर्क जोड़ें (Contacts टैब)
pलंबित अनुरोधों की समीक्षा करें (Contacts टैब)
dचयनित संपर्क हटाएँ (Contacts टैब)
rअपनी कुंजियाँ घुमाएँ (Settings टैब)
qबाहर निकलें
उद्देश्यएल्गोरिदम
वॉल्ट कुंजी व्युत्पत्तिArgon2id (m=64 MiB, t=3, p=1)
वॉल्ट एन्क्रिप्शनChaCha20-Poly1305 (256-बिट कुंजी, 96-बिट नॉन्स)
संदेश एन्क्रिप्शनChaCha20-Poly1305 (रैचेट से प्रति-संदेश कुंजी)
कुंजी व्युत्पत्ति (रैचेट)HKDF-SHA256
अस्वीकार्य प्रमाणीकरणHMAC-SHA256
शास्त्रीय कुंजी विनिमयX25519
पोस्ट-क्वांटम कुंजी विनिमयML-KEM-768 (FIPS 203)
शास्त्रीय हस्ताक्षरEd25519
पोस्ट-क्वांटम हस्ताक्षरML-DSA-65 (FIPS 204)
परिवहन गुमनामीTor v3 हिडन सर्विसेज (.onion)
ratchet_pub
  • Settings टैब पूरी तरह कार्यात्मक है। Tor SOCKS5 पता और ऑटो-डिलीट थ्रेशोल्ड इनलाइन संपादित किए जा सकते हैं। कुंजी रोटेशन (नई कुंजी जोड़ी उत्पन्न करता है, सभी संपर्कों को एक हस्ताक्षरित रिवोकेशन प्रमाणपत्र प्रसारित करता है, निर्यात कोड को ताज़ा करता है) और कुंजी सेवानिवृत्ति रिवोकेशन दोनों जुड़े और परिचालनशील हैं।

  • कुंजी रिवोकेशन एंड-टू-एंड जुड़ा हुआ है। RevocationCertificate संरचनाओं पर हाइब्रिड Ed25519+ML-DSA-65 कुंजी जोड़ी के साथ हस्ताक्षर किए जाते हैं और सभी संपर्कों को Tor के ऊपर WireMessageType::Revocation संदेशों के रूप में भेजा जाता है।