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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
halite — libsodium द्वारा संचालित उच्च-स्तरीय क्रिप्टोग्राफी इंटरफ़ेस | Kitploit
उपकरण/GitHubGitHub/paragonie/halite
एन्क्रिप्शन/डिक्रिप्शन उपकरणक्रिप्टोग्राफीप्रमाणीकरण
GitHubparagonie/halite

halite

libsodium द्वारा संचालित उच्च-स्तरीय क्रिप्टोग्राफी इंटरफ़ेस

रिपॉजिटरी देखेंवेबसाइट
1.2k917 महीने पहलेKitploit द्वारा समीक्षित

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

सभी देखें →

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

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

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

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

Halite

Build Status Static Analysis Latest Stable Version Latest Unstable Version License Downloads Coverage Status

Halite एक उच्च-स्तरीय क्रिप्टोग्राफी इंटरफ़ेस है जो अपने सभी अंतर्निहित क्रिप्टोग्राफी कार्यों के लिए libsodium पर निर्भर करता है।

Halite को Paragon Initiative Enterprises द्वारा हमारे निरंतर प्रयासों के परिणामस्वरूप बनाया गया था ताकि पारिस्थितिकी तंत्र में सुधार हो सके और PHP में क्रिप्टोग्राफी को सुरक्षित और लागू करने में आसान बनाया जा सके।

आप Halite दस्तावेज़ीकरण को ऑनलाइन पढ़ सकते हैं।

Halite को Mozilla Public License 2.0 के तहत जारी किया गया है। यदि आप Halite का विस्तार करना चाहते हैं बिना अपने व्युत्पन्न कार्यों को MPL की शर्तों के तहत उपलब्ध कराए, तो वाणिज्यिक लाइसेंस Paragon Initiative Enterprises से उपलब्ध हैं।

यदि आप बैकएंड वेब अनुप्रयोगों के लिए MPL सॉफ़्टवेयर की शर्तों से संतुष्ट हैं, लेकिन Halite का उपयोग करने वाले अपने अनुप्रयोग के लिए सहायता अनुबंध खरीदना चाहते हैं, तो वे भी Paragon Initiative Enterprises द्वारा प्रदान किए जाते हैं।

महत्वपूर्ण: Halite के पुराने संस्करण GNU Public License संस्करण 3 (GPLv3) के तहत उपलब्ध थे। केवल Halite 4.0.1 और नए संस्करण Mozilla Public License की शर्तों के तहत उपलब्ध हैं।

Halite स्थापित करना

Halite का उपयोग करने से पहले, आपको अपने प्रोजेक्ट की आवश्यकताओं के अनुरूप एक संस्करण चुनना होगा। उपलब्ध Halite संस्करणों की आवश्यकताओं के बीच अंतर नीचे संक्षेप में दर्शाए गए हैं।

नोट: Halite 5.0.x PHP 8.0 पर काम करता है, लेकिन PHP 8.1 की तुलना में प्रदर्शन खराब है।

यदि आपको Halite 5.1 से पहले के संस्करण की आवश्यकता है, तो उस विशेष शाखा से संबंधित दस्तावेज़ देखें।

Halite स्थापित करने के लिए, आपको पहले libsodium स्थापित करना होगा। आपको PHP एक्सटेंशन की आवश्यकता हो भी सकती है और नहीं भी। अधिकांश लोगों के लिए, इसका अर्थ है निम्न कमांड चलाना...

root@kitploit:~
sudo apt-get install php7.2-sodium

...या आपके ऑपरेटिंग सिस्टम और PHP संस्करण के लिए समकक्ष कमांड।

यदि आप फंस गए हैं, तो @aolko द्वारा योगदान यह चरण-दर-चरण मार्गदर्शिका सहायक हो सकती है।

एक बार जब आप आवश्यक शर्तें स्थापित कर लें, तो Composer के माध्यम से Halite स्थापित करें:

root@kitploit:~
composer require paragonie/halite:^5

पुराने Halite संस्करणों के लिए वाणिज्यिक सहायता

Halite के लिए निःशुल्क (gratis) सहायता केवल सबसे हाल के प्रमुख संस्करण (वर्तमान में 5) तक ही विस्तृत है।

यदि आपकी कंपनी को Halite के पुराने संस्करण के लिए सहायता की आवश्यकता है, तो वाणिज्यिक सहायता विकल्पों के बारे में पूछताछ करने के लिए Paragon Initiative Enterprises से संपर्क करें।

यदि आपको Halite के पुराने संस्करणों से माइग्रेट करने का आसान तरीका चाहिए, तो halite-legacy देखें।

अपने प्रोजेक्ट में Halite का उपयोग करना

दस्तावेज़ देखें। बुनियादी Halite API सरलता के लिए डिज़ाइन किया गया है:

  • एन्क्रिप्शन
    • सममित
      • Symmetric\Crypto::encrypt(HiddenString, EncryptionKey): string
      • Symmetric\Crypto::encryptWithAD(HiddenString, EncryptionKey, string): string
      • Symmetric\Crypto::decrypt(string, ):

उदाहरण: संदेश को एन्क्रिप्ट और डिक्रिप्ट करना

पहले, एक कुंजी ठीक एक बार उत्पन्न करें और सहेजें:

root@kitploit:~
<?php
use ParagonIE\Halite\KeyFactory;

$encKey = KeyFactory::generateEncryptionKey();
KeyFactory::save($encKey, '/path/outside/webroot/encryption.key');

और फिर आप संदेशों को इस प्रकार एन्क्रिप्ट/डिक्रिप्ट कर सकते हैं:

root@kitploit:~
<?php
use ParagonIE\Halite\KeyFactory;
use ParagonIE\Halite\Symmetric\Crypto as Symmetric;
use ParagonIE\HiddenString\HiddenString;

$encryptionKey = KeyFactory::loadEncryptionKey('/path/outside/webroot/encryption.key');

$message = new HiddenString('This is a confidential message for your eyes only.');
$ciphertext = Symmetric::encrypt($message, $encryptionKey);

$decrypted = Symmetric::decrypt($ciphertext, $encryptionKey);

var_dump($decrypted->getString() === $message->getString()); // bool(true)

यह कुछ इस प्रकार का आउटपुट देना चाहिए:

root@kitploit:~
MUIDAEpQznohvNlQ-ZRk-ZZ59Mmox75D_FgAIrXY2cUfStoeL-GIeAe0m-uaeURQdPsVmc5XxRw3-2x5ZAsZH_es37qqFuLFjUI-XK9uG0s30YTsorWfpHdbnqzhRuUOI09c-cKrfMQkNBNm0dDDwZazjTC48zWikRHSHXg8NXerVDebzng1aufc_S-osI_zQuLbZDODujEnpbPZhMMcm4-SWuyVXcBPdGZolJyT

Halite में क्रिप्टोग्राफ़िक कुंजियाँ

महत्वपूर्ण: Halite Key ऑब्जेक्ट के साथ काम करता है, स्ट्रिंग्स के साथ नहीं।

यदि आप किसी key ऑब्जेक्ट पर echo करने का प्रयास करते हैं, तो आपको उसकी सामग्री के बजाय एक खाली स्ट्रिंग मिलेगी। यदि आप किसी key ऑब्जेक्ट पर var_dump() करने का प्रयास करते हैं, तो आपको केवल उसकी key के प्रकार के बारे में कुछ तथ्य मिलेंगे।

यदि आप किसी key की कच्ची बाइनरी सामग्री का निरीक्षण करना चाहते हैं, तो आपको स्पष्ट रूप से $obj->getRawKeyMaterial() को कॉल करना होगा। अधिकांश उपयोग मामलों के लिए यह अनुशंसित नहीं है।

उदाहरण: पासवर्ड से कुंजी उत्पन्न करना

root@kitploit:~
<?php
use ParagonIE\Halite\KeyFactory;
use ParagonIE\HiddenString\HiddenString;

$passwd = new HiddenString('correct horse battery staple');
// Use random_bytes(16); to generate the salt:
$salt = "\xdd\x7b\x1e\x38\x75\x9f\x72\x86\x0a\xe9\xc8\x58\xf6\x16\x0d\x3b";

$encryptionKey = KeyFactory::deriveEncryptionKey($passwd, $salt);

पासवर्ड से प्राप्त कुंजी का उपयोग यादृच्छिक रूप से उत्पन्न कुंजी के स्थान पर किया जा सकता है।

उदाहरण: कम मेमोरी वाले सिस्टम पर बड़ी फ़ाइल एन्क्रिप्ट करना

Halite में एक फ़ाइल क्रिप्टोग्राफी क्लास शामिल है जो स्ट्रीमिंग API का उपयोग करती है ताकि बड़ी फ़ाइलों (जैसे गीगाबाइट) को बहुत कम उपलब्ध मेमोरी (यानी 8 MB से कम) वाले सिस्टम पर एन्क्रिप्ट किया जा सके।

root@kitploit:~
<?php
use ParagonIE\Halite\File;
use ParagonIE\Halite\KeyFactory;

$encryptionKey = KeyFactory::loadEncryptionKey('/path/outside/webroot/encryption.key');

File::encrypt('input.txt', 'output.txt', $encryptionKey);

सामान्य सहायता समस्याएँ

Uncaught SodiumException: Cannot Wipe Memory

PHP Fatal error: Uncaught SodiumException: This is not implemented, as it is not possible to securely wipe memory from PHP

इसका समाधान यह सुनिश्चित करना है कि libsodium स्थापित/सक्षम है। अधिक जानकारी के लिए इस README में ऊपर देखें।

सहायता अनुबंध

यदि आपकी कंपनी अपने उत्पादों या सेवाओं में इस लाइब्रेरी का उपयोग करती है, तो आपको Paragon Initiative Enterprises से सहायता अनुबंध खरीदने में रुचि हो सकती है।

टूल डाउनलोड करें
PHPlibsodiumPECL libsodiumसमर्थन
Halite 5.1 और नए संस्करण8.1.01.0.18N/A (मानक)✔️ सक्रिय
Halite 5.0.x8.0.01.0.18N/A (मानक)✔️ सक्रिय
Halite 4.1+7.2.01.0.15N/A (मानक)❌ समर्थित नहीं
Halite 4.07.2.01.0.13N/A (मानक)❌ समर्थित नहीं
Halite 37.0.01.0.91.0.6 / 2.0.4❌ समर्थित नहीं
Halite 27.0.01.0.91.0.6❌ समर्थित नहीं
Halite 15.6.01.0.61.0.2❌ समर्थित नहीं
EncryptionKey
HiddenString
  • Symmetric\Crypto::decryptWithAD(string, EncryptionKey, string): HiddenString
  • असममित
    • अनाम
      • Asymmetric\Crypto::seal(HiddenString, EncryptionPublicKey): string
      • Asymmetric\Crypto::unseal(string, EncryptionSecretKey): HiddenString
    • प्रमाणित
      • Asymmetric\Crypto::encrypt(HiddenString, EncryptionSecretKey, EncryptionPublicKey): string
      • Asymmetric\Crypto::encryptWithAD(HiddenString, EncryptionSecretKey, EncryptionPublicKey, string): string
      • Asymmetric\Crypto::decrypt(string, EncryptionSecretKey, EncryptionPublicKey): HiddenString
      • Asymmetric\Crypto::decryptWithAD(string, EncryptionSecretKey, EncryptionPublicKey, string): HiddenString
  • प्रमाणीकरण
    • सममित
      • Symmetric\Crypto::authenticate(string, AuthenticationKey): string
      • Symmetric\Crypto::verify(string, AuthenticationKey, string): bool
    • असममित
      • Asymmetric\Crypto::sign(string, SignatureSecretKey): string
      • Asymmetric\Crypto::verify(string, SignaturePublicKey, string): bool