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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
tls — Zig में TLS 1.3 का QUIC के लिए कार्यान्वयन, RFC 8446/9001 अनुरूप, शून्य बाहरी निर्भरताओं के साथ, AEAD सुरक्षा, X.509 सत्यापन, और 1000+ परीक्षणों की विशेषता। | Kitploit
उपकरण/GitLabGitLab/devnw/zig/tls
नेटवर्क सुरक्षाक्रिप्टोग्राफी
GitLabdevnw/zig/tls

tls

Zig में TLS 1.3 का QUIC के लिए कार्यान्वयन, RFC 8446/9001 अनुरूप, शून्य बाहरी निर्भरताओं के साथ, AEAD सुरक्षा, X.509 सत्यापन, और 1000+ परीक्षणों की विशेषता।

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

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

सभी देखें →

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

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

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

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

ztls

Zig में लिखा गया QUIC के लिए एक TLS 1.3 कार्यान्वयन, जो RFC 8446 (TLS 1.3) और RFC 9001 (QUIC-TLS) का सख्ती से पालन करता है।

स्थिति

पहलूजानकारी
API स्थिरताउत्पादन-स्तर
Zig संस्करण0.16.0
प्लेटफ़ॉर्मLinux, macOS, Windows

प्रदर्शन नोट

<2 ms हैंडशेक लक्ष्य Ed25519 और RSA-2048 प्रमाणपत्र कॉन्फ़िगरेशन पर मान्य किया गया है। secp256r1 (P-256) कार्यभार वर्तमान में प्रति हैंडशेक 2–3 ms पर चलते हैं, यह Zig stdlib की एक ऊपर-स्तरीय सीमा के कारण है (PERF-229)। पूर्ण निर्णय रिकॉर्ड के लिए ADR-0002 देखें।

सुविधाएँ

✅ RFC अनुरूप - TLS 1.3 (RFC 8446) और QUIC-TLS (RFC 9001) को लागू करता है ✅ शून्य निर्भरताएँ - केवल Zig मानक पुस्तकालय का उपयोग करता है ✅ अंतर-संचालन परीक्षण - BoringSSL और OpenSSL के विरुद्ध अनुरूपता परीक्षण ✅ QUIC मूल - QUIC एकीकरण के लिए डिज़ाइन किया गया, कोई पारंपरिक रिकॉर्ड परत नहीं ✅ अच्छी तरह से परीक्षित - 551 इकाई परीक्षण + RFC परीक्षण वेक्टर + 449 अनुरूपता परीक्षण

त्वरित प्रारंभ

root@kitploit:~
# सब कुछ बनाएँ और परीक्षण करें
make

# या मैन्युअल रूप से
zig build
zig build test

आवश्यकताएँ

  • Zig 0.16.0 या संगत
  • OpenSSL विकास पुस्तकालय (वैकल्पिक, अनुरूपता परीक्षणों के लिए)

बनाना

यह परियोजना लचीलेपन के लिए Makefile और build.zig दोनों का उपयोग करती है:

Make का उपयोग करना (अनुशंसित)

root@kitploit:~
# सभी परीक्षण बनाएँ और चलाएँ (डिफ़ॉल्ट)
make

# केवल बनाएँ
make build

# विशिष्ट परीक्षण सूट चलाएँ
make test-unit           # इकाई परीक्षण
make test-vectors        # RFC 8446/9001 परीक्षण वेक्टर
make test-conformance    # BoringSSL/OpenSSL अनुरूपता (libssl-dev आवश्यक)

# विकास कार्यप्रवाह
make dev                 # प्रारूपण + जाँच + इकाई परीक्षण
make clean               # बिल्ड कलाकृतियाँ साफ़ करें
make help                # सभी उपलब्ध लक्ष्य दिखाएँ

zig build का उपयोग करना

root@kitploit:~
# पुस्तकालय बनाएँ
zig build

# सभी परीक्षण चलाएँ
zig build test

# विशिष्ट परीक्षण सूट चलाएँ
zig build test-vectors
zig build test-conformance  # OpenSSL dev पुस्तकालयों की आवश्यकता है

# अनुकूलन के साथ
zig build -Doptimize=ReleaseFast

परीक्षण परिणाम

root@kitploit:~
बिल्ड सारांश: सभी चरण सफल; 1000 परीक्षण पास ✅

व्यापक परीक्षण कवरेज:

  • 551 इकाई परीक्षण - RFC उप-अनुभाग संदर्भों के साथ प्रति-मॉड्यूल परीक्षण (कुल 553, 2 छोड़े गए)
  • 449 अनुरूपता परीक्षण - BoringSSL और OpenSSL समानता परीक्षण
    • क्रिप्टोग्राफ़िक संचालन (HKDF, AEAD, हस्ताक्षर)
    • X.509 प्रमाणपत्र सत्यापन और श्रृंखला निर्माण
    • उन्नत X.509 एक्सटेंशन (OCSP, CRL, AIA, नाम बाधाएँ, नीतियाँ)
    • TLS 1.3 प्रोटोकॉल अनुपालन (एक्सटेंशन, हैंडशेक प्रवाह)
    • प्रदर्शन बेंचमार्क (विलंबता <2ms, मेमोरी <100KB)
    • सुरक्षा परीक्षण (फ़ज़िंग, इनपुट सत्यापन)
    • पोस्ट-क्वांटम एल्गोरिदम तत्परता (केवल पार्सिंग)

कुल: 1000 परीक्षण RFC अनुपालन, क्रिप्टोग्राफ़िक समानता और उत्पादन तत्परता सुनिश्चित करते हैं

परियोजना संरचना

root@kitploit:~
src/
├── lib.zig               # मुख्य पुस्तकालय प्रवेश बिंदु
├── tls13/                # TLS 1.3 हैंडशेक स्थिति मशीन (मॉड्यूलरीकृत)
├── tls13_full.zig        # पूर्ण TLS 1.3 संदेश पार्सिंग
├── key_schedule.zig      # HKDF-आधारित कुंजी व्युत्पत्ति
├── record.zig            # रिकॉर्ड परत व AEAD संचालन
├── x509.zig              # प्रमाणपत्र पार्सिंग और सत्यापन
├── sig.zig               # हस्ताक्षर सत्यापन
├── asn1.zig              # ASN.1 DER डिकोडर
├── alert.zig             # TLS अलर्ट प्रोटोकॉल
├── entropy.zig           # फेल-क्लोज़ RNG सहायक (SEC-074)
├── zero_rtt.zig          # 0-RTT समर्थन
└── quic_*.zig            # QUIC एकीकरण इंटरफ़ेस

tests/
├── rfc8446_vectors.zig        # RFC परीक्षण वेक्टर
├── boringssl_conformance.zig  # BoringSSL समानता परीक्षण
└── openssl_conformance.zig    # OpenSSL अनुरूपता परीक्षण

उपयोग उदाहरण

root@kitploit:~
const std = @import("std");
const tls = @import("ztls");

pub fn main() !void {
    var gpa = std.heap.GeneralPurposeAllocator(.{}){};
    defer _ = gpa.deinit();

    // TLS संदर्भ कॉन्फ़िगर करें
    const config = tls.Config{
        .allocator = gpa.allocator(),
        .role = .client,
        .supported_cipher_suites = &.{.TLS_AES_128_GCM_SHA256},
        .supported_groups = &.{.x25519},
        .alpn_protocols = &.{"h3"},
    };

    // कॉलबैक सेट करें
    const callbacks = tls.Callbacks{
        .on_secret_available = mySecretCallback,
        .on_handshake_complete = myHandshakeCallback,
    };

    // TLS संदर्भ आरंभ करें
    var ctx = try tls.Context.init(config, callbacks);
    defer ctx.deinit();

    // QUIC से आने वाले CRYPTO फ्रेम प्रोसेस करें
    try ctx.processCrypto(crypto_data);
}

आर्किटेक्चर

डिज़ाइन सिद्धांत

  1. INTEROP FIRST - स्वचालित रूप से मानक TLS 1.3 प्रारूपों का पता लगाता है और समर्थन करता है, वास्तविक-दुनिया के QUIC कार्यान्वयनों (quic-go, quinn, msquic) के साथ संगतता के लिए
  2. RFC-संचालित विकास - प्रत्येक कार्यान्वयन खंड प्रासंगिक RFC अनुभाग का हवाला देता है
  3. शून्य बाह्य निर्भरताएँ - केवल Zig stdlib आदिम का उपयोग करता है

मुख्य घटक

  • कुंजी अनुसूची - std.crypto.kdf.hkdf का उपयोग कर HKDF-आधारित कुंजी व्युत्पत्ति
  • AEAD सुरक्षा - AES-128-GCM, AES-256-GCM, ChaCha20-Poly1305
  • प्रमाणपत्र सत्यापन - SNI मिलान और वैधता जाँच के साथ X.509 पार्सिंग
  • हस्ताक्षर सत्यापन - ECDSA (P-256, P-384), RSA-PSS, Ed25519

अनुरूपता परीक्षण

परियोजना में उद्योग-मानक TLS कार्यान्वयनों के साथ संगतता सुनिश्चित करने के लिए व्यापक अनुरूपता परीक्षण शामिल हैं:

BoringSSL अनुरूपता

  • HKDF-Extract और HKDF-Expand समानता
  • QUIC आरंभिक गुप्त व्युत्पत्ति (RFC 9001)
  • AEAD सिफर संगतता
  • अलर्ट कोड मैपिंग

OpenSSL 3.x अनुरूपता

  • EVP API संगतता
  • सिफर सूट उपलब्धता
  • हैश फ़ंक्शन समानता
  • कुंजी अद्यतन प्रक्रियाएँ

अनुरूपता परीक्षण चलाने के लिए:

root@kitploit:~
# पहले OpenSSL विकास पुस्तकालय स्थापित करें
make install-deps  # आपके OS का स्वचालित रूप से पता लगाता है

# अनुरूपता परीक्षण चलाएँ
make test-conformance

प्रेक्षणीयता

ztls एक वैकल्पिक OpenTelemetry सीम के साथ आता है। जब -Dwith_otel=true बिल्ड फ़्लैग सेट होता है, तो पुस्तकालय प्रति TLS हैंडशेक एक स्पैन उत्सर्जित करता है (स्पैन नाम: "TLS handshake") जिसमें पूर्ण होने पर निम्नलिखित शब्दार्थ-सम्मेलन विशेषताएँ जुड़ी होती हैं:

  • tls.role -- "client" या "server"
  • tls.protocol.version -- "1.3" (हमेशा ztls के लिए)
  • tls.cipher_suite -- बातचीत किया गया सिफर (जैसे TLS_AES_128_GCM_SHA256)
  • network.protocol.name -- "tls"
root@kitploit:~
# डिफ़ॉल्ट बिल्ड: कोई otel प्रतीक नहीं, शून्य ओवरहेड।
zig build test

# सक्षम बिल्ड: प्रति हैंडशेक एक स्पैन, OTLP डिफ़ॉल्ट (http://localhost:4318) या जो भी OTEL_* env वेरिएबल निर्दिष्ट करें, के माध्यम से निर्यात किया गया।
zig build test -Dwith_otel=true

यह सीम आलसी निर्भरता के पीछे गेटेड है, इसलिए otel पैकेज केवल तब लाया जाता है जब फ़्लैग चालू हो। एप्लिकेशन प्रवेश-बिंदु कोड जो TracerProvider स्थापित करना चाहता है, उसे ztls.observability_init.Otel.init फिर installGlobals() कॉल करना चाहिए; पूर्ण होस्ट-एप्लिकेशन बूटस्ट्रैप के लिए ऊपरी otel एकीकरण रेसिपी (otel/docs/integration/RECIPE.md) से परामर्श करें।

दस्तावेज़ीकरण

  • BUILD_SYSTEM.md - विस्तृत बिल्ड सिस्टम दस्तावेज़ीकरण
  • CONFORMANCE_TESTS.md - BoringSSL/OpenSSL संगतता परीक्षण दस्तावेज़ीकरण
  • CLAUDE.md - परियोजना अवलोकन और AI सहायता संदर्भ
  • RFC संदर्भ - सभी कोड में RFC अनुभाग उद्धरण शामिल हैं

विकास

root@kitploit:~
# त्वरित विकास पुनरावृत्ति
make dev

# कोड प्रारूपित करें
make fmt
# या
zig fmt src/ tests/

# वाक्यविन्यास जाँचें
make check

# साफ़ बिल्ड
make clean build

कार्यान्वयन स्थिति

✅ पूर्ण

  • TLS 1.3 हैंडशेक स्थिति मशीन
  • HKDF कुंजी अनुसूची (RFC 8446 §7, RFC 9001 §5.1)
  • AEAD रिकॉर्ड सुरक्षा (AES-GCM, ChaCha20-Poly1305)
  • X.509 प्रमाणपत्र पार्सिंग और सत्यापन
  • हस्ताक्षर सत्यापन (ECDSA, RSA-PSS, Ed25519)
  • अलर्ट प्रोटोकॉल
  • 0-RTT एंटी-रीप्ले
  • QUIC एकीकरण इंटरफ़ेस

🚧 भविष्य का कार्य

  • HKDF-Expand-Label रैपर (परीक्षण वेक्टर में ट्रैक किया गया)
  • OCSP स्टेपलिंग और SCT समर्थन
  • पूर्ण प्रमाणपत्र श्रृंखला सत्यापन
  • अतिरिक्त सिफर सूट (AES-256-GCM-SHA384, AES-CCM)
  • पोस्ट-हैंडशेक प्रमाणीकरण
  • स्थिर होने पर stdlib X.509 में स्थानांतरण

योगदान

सुविधाएँ जोड़ते समय:

  1. स्रोत फ़ाइलों में इकाई परीक्षण शामिल करें
  2. सभी प्रोटोकॉल तर्क में RFC अनुभाग उद्धरण जोड़ें
  3. यदि RFC अनुपालन प्रभावित होता है तो एकीकरण परीक्षण अद्यतन करें
  4. क्रिप्टोग्राफ़िक संचालन के लिए अनुरूपता परीक्षण जोड़ें
  5. दस्तावेज़ीकरण अद्यतन करें

लाइसेंस

Apache-2.0 लाइसेंस - विवरण के लिए LICENSE देखें।

सन्दर्भ

  • RFC 8446 - TLS 1.3
  • RFC 9001 - QUIC Transport TLS
  • RFC 9369 - QUIC Version 2
  • RFC 5280 - X.509 Certificates
  • RFC 7301 - ALPN

Zig 0.16.0 के साथ निर्मित | TLS 1.3 | QUIC-मूल | RFC-अनुरूप

टूल डाउनलोड करें